Search code examples
adagnat

GUI in Ada programming language


How to make/create a GUI (Graphical User Interface) in Ada programming language? It is possible?

In Python, you can use tkinter to make a window form.


Solution

  • I know of 5 GUI frameworks for Ada (see the Awesome Ada List for some of them)

    1. GtkAda
    2. Gnavi
    3. Claw
    4. Gnoga
    5. QtAda

    GtkAda you can get for free from AdaCore. Claw can be purchased. I'm not familiar with Gnavi so I cannot comment on it much. I've spent more time working with Gnoga and like both it and GtkAda. GtkAda is a native framework, but I like Gnoga because you can provide the GUI via webbrowser (so more easily cross platform) or you can integrate it with a native platform (including GtkAda, Electron, etc.). I'm not familiar much with QtAda

    Also note, that if you can find another C or C++ GUI library, you can write bindings for it in Ada (it has a very good external language interface).