Skip to content

matwachich/iup

Folders and files

NameName
Last commit message
Last commit date

Latest commit

5525dc6 · Mar 6, 2023

History

17 Commits
Apr 1, 2016
Mar 25, 2016
Apr 1, 2016
Apr 1, 2016
Apr 1, 2016
Apr 1, 2016
Apr 1, 2016
Apr 1, 2016
Apr 1, 2016
Apr 1, 2016
Apr 1, 2016
Mar 25, 2016
Mar 6, 2023
Apr 6, 2016
Mar 31, 2016
Apr 21, 2016
Apr 1, 2016
May 1, 2016
Mar 30, 2016

Repository files navigation

IUP

GoLang wrapper for IUP GUI library (3.18)

This is a work in progress, but since it's a simple wrapper, I think it is ready for reasonably serious work.

It is only tested and developped for windows (actually on a 64bits Windows 7) since I have absolutly no experience with linux.

Installation

To install and use this wrapper, you first need to download it

go get github.com/matwachich/iup

Then, you must create a directory inside the iup folder called "lib" and put in it the static IUP libraries. You also can if you want/need to use IM or CD create the folders "im" and "cd" inside the "lib" folder and put in it the IM and CD static libraries.

Download links:

Please download Mingw GCC static or dynamic libraries (Win32_mingw4, Win64_mingw4, Win32_dllw4, Win64_dllw4).

Then you can test this hello world example:

package main

import "github.com/matwachich/iup"

func main() {
    iup.Open()
    defer iup.Close()

    dlg := iup.Dialog(iup.Vbox(
        iup.Label("Hello, world!"),
        iup.Button("Click me").SetCallback("ACTION", func(ih iup.Ihandle) int {
            return iup.CLOSE
        }),
    ).SetAttributes(`MARGIN=10x10,GAP=10`))

    iup.Show(dlg)
    iup.MainLoop()
}

Additional libraries

The sub folders in the IUP folder are additional libraries of IUP. They all depend on the main iup lib.

They must be subfolders in order to be able to find the static libs.

Known issues

  • iupweb doesn't work because it needs MS Visual C++ compiler (OLE...).
  • I don't think it's really an issue when using Go, but Lua stuff is not (and will not be) implemented.

Todo

  • Find a way to compile the IUP lib from source (as I said, absolutly no experience with unix tools (make, configure...)) to include directly the source code of IUP to this wrapper.
  • Make wrappers for CD and IM (other TECGRAF's libraries) to use them with IUP.

About

GoLang wrapper for IUP GUI library (3.18)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published