## Contributions

We would like to thank all the contributions and bug reports. They are very valuable to us.

Particularly we would like to thank some contributors that sent us source code that we incorporated in IUP:

- Chris Matzenbach
- Danny Reinhold
- Eric Wing
- Heesob Park
- Marian Trifon
- Nicolas Noble
- Otfried Cheong
- Ranier Vilela
- Steve Donovan
- Warren Music

Here are some additional contributions that were shared with us but have their own pages. All the following use the same license terms of the IUP license. Thank you all too.

Please let us know if something is missing from this page.

### Distribution

#### Debian Packages by Matthew Kennedy

> > Build scripts to create Debian packages for IUP, CD and IM.

> > Releases can be found here: https://github.com/lispnik/tecgraf-docker/releases/

### Drivers

#### IUP WebBrowser Driver by Eric Wing & Chris Matzenbach

> > A native driver for Web browser using Emscripten, a C/C++ to JavaScript compiler. On going work. Help needed!!!!!

#### IUP Android Driver by Eric Wing & Chris Matzenbach

> > A native driver for Andoid. On going work. Help needed!!!!!

#### IUP iOS Driver by Eric Wing & Chris Matzenbach

> > A native driver for iOS using Cocoa Touch. On going work. Help needed!!!!!

#### IUP MacOSX Driver by Eric Wing & Chris Matzenbach

> > A native driver for MacOSX using Cocoa. Current initiative. On going work. Help needed!!!!!

> > NOTE: in IUP 3.28 we added all the Eric and Chris contributions to the IUP SVN hoping more people can notice them and also contribute. Thanks!

#### IUP MacOSX Driver by Heesob Park

> > A native driver for MacOSX using Cocoa. Old initiative.

### Language Bindings

#### A Basic Guide to using IupLua by Steve Donovan

> > A very nice introductory tutorial for IupLua.

#### Ruby-IUP by Heesob Park

> > ruby-iup is an extension module for Ruby that provides an interface to the IUP GUI toolkit. The source is hosted on github.com at http://github.com/phasis68/ruby-iup.

#### EuIup by Jeremy Cowgar

> > IUP wrapped for Euphoria.

#### FreeBasic Binding by AGS

> > The first release of FreeBASIC bindings for IUP 3. See the Forum post Portable GUI toolkit (IUP) version 3.0 (RC2)

#### Perl Binding by Kmx

> > Perl binding for IUP and related libraries.

#### Go-iup by Jeremy Cowgar

> > IUP wrapped for Go.

#### ScriptBasic Binding by John Spikowski

> > ScriptBasic binding for IUP. See the Forum posts about the Extension Module at IUP.

#### Component Pascal Binding by Boris Ilov

> > Component Pascal binding for IUP and CD, part of the BlackBox Framework.

#### Iup4D - D Language Binding by Heromyth

> > A D binding library for IUP with OOP style. Its API is similar to WinForms.

#### Common Lisp Bindings by Matthew Kennedy

> > Portable Common Lisp bindings for IUP. Featuring:

> > - interactive development is supported (e.g. replacing/modifying callbacks at time to get immediate feedback on changes)
> > - bindings generated automatically from IUP's introspection functionality (little change in the bindings from release to release)
> > - attributes and callbacks carried through to the arg lists (helpful during development to know what attributes and callbacks are applicable)

> > There are also bindings for IM and CD here:

> > https://github.com/lispnik/im
> > https://github.com/lispnik/cd

### Localization Strings

> > Czech - Jiří Klimeš
> > Russian - Alexey Bogdanov

### C++ Wrappers

#### RSSGui by Danny Reinhold. (RSS_GUI_0_5.zip)

> > Described by his words:
> > - It works fine with the C++ STL and doesn't define a set of own string, list, vector etc. classes like many other toolkits do (for example wxWidgets).
> > - It has a really simple event handling mechanism that is much simpler than the system that is used in MFC or in wxWidgets and that doesn't require a preprocessor like Qt. (It could be done type safe using templates as in a signal and slot library but the current way is really, really simple to understand and to write.)
> > - It has a Widget type for creating wizards.
> > - It is not complete, some things are missing. It was tested only on the Windows platform.

#### IupTreeUtil by Sergio Maffra and Frederico Abraham. (IupTreeUtil3.zip or IupTreeUtil3.tar.gz)

> > It is an utility wrapper for the IupTree control. It has several limitations, including to add leaves only after all branches inside a branch. It uses STL.

#### IUP with C++ 11 and variadic templates (IUP++) by PulkoMandy

> > The IUP++ class registers itself as an IUP callback (with any arguments) and forwards the call to a C++ object and method.

### Tools

#### IupAsync by Ross Berteig

> > Described by his words:
> > IUP is not designed to be accessed from multiple threads, but occasionally there is a need (especially in a multi-threaded application) for the UI to update a display or dispatch an action in response to messages from other threads or from an OS component. To address this need, we designed an IUP control that translates calls from any application thread into a callback function guaranteed to be running in IUP's thread.
> > The IupAsync control is presently an alpha release proving the concept for the Windows platform only. It is intended that it be ported to the other platforms supported by IUP (GTK and Motif for Linux and OSX).