you scared me. So I checked https://www.fltk.org/COPYING.php and find FLTK uses LGPL, I understand that it is ok to use FLTK dynamic file(i.e. DLL on windows) even in commercial, close-source app. In fact, FLTK uses a modified LGPL, so if I use only official FLTK without modification, I can do static linking even in commercial, close-source app.

As for your fltk*.bi, if you choose GPL, it could be a disaster for me because any app uses GPLed library must open the source to the client.

@D.J.PetersI am still waiting for your declaration on the license of your fltk*.bi

If I use a lib who has GPL license, then GPL requires me to open all of my code

If I use a lib who has LGPL license, then I can closesource my code when I use the lib as DLL; but if I try to do static link, I have to open all my source. However since your fltk*.bi are all code, I think LGPL can't apply to it

English is not my native language, so correct me if there is something wrong

COPYING wrote:4. You do not have to provide a copy of the FLTK license with programs that are linked to the FLTK library, nor do you have to identify the FLTK license in your program or documentation as required by section 6 of the LGPL.

However, programs must still identify their use of FLTK. The following example statement can be included in user documentation to satisfy this requirement:

' C++ library Fast Light Tool Kit (FLTK)' Copyright 1998-2010 by Bill Spitzak and others.' ' This library is free software. Distribution and use rights are outlined in' the file "COPYING" which should have been included with this file. If this' file is missing or damaged, see the license at:' ' http://www.fltk.org/COPYING.php

Clicking on the menu items brings up another widget window from the callbacksubroutines.

However if I go back to the above menu window, and click on thesame menu item it generates another instance of the same widgetwindow. How can I prevent another instance of the widget windowfrom starting? Do I use Fl_WidgetDeactivate in the subroutine thatstarts the new widget window? Is there a way to deactivate just that particular menu item?

There is this: declare sub Fl_Menu_ItemDeactivate(byval it as Fl_Menu_Item ptr);but I don't know how to get that particular pointer or how to use it at all.

I have started with Joshy's example code below. Is it possible or reasonable to deactivateany or all the main menu bar items from within the callback subroutines ("NewFile(),...) oris there a better, more logical approach?

Hello,Here is most of the code. It is just a beginning. I need to determine if the Test_Menu window can be deactivated, otherwise I might have to re-think how to get the inputs into the program. The basic idea of the program is an easy gui to enter the general information and individual channel configurations. Then the code will eventually dump all this information into a csv file. That csv file is used with another program to actually make the hardware calls to start the data acquisition system and save the data to file.

I downloaded the FLTK library and have been testing it out on my linux mint laptop. I am impressed with the work done here. A small issue with the install though. The instructions to copy the shared objects to my lib folder balked as written:

ubuntu: sudo cp libflt-c*.so /usr/lib

I simply changed it to the following and all is well:ubuntu: sudo cp libfltk-c*.so /usr/lib