ImGui FreePascal Binding with the latest version with docking lazarus / 39-Graphics ---------------------------------------------------------------------- Coldzer0 · 2023-11-12 07:17 Hello All, I just finished the first version of Pascal ImGui binding, and It looks perfect.  Check out the source code for testing, etc... https://github.com/Coldzer0/ImGui-Pascal I have a TODO list in the readme so any contribution would be great. ---------------------------------------------------------------------- nouzi · 2023-11-12 09:21 Hi @Coldzer0 Welcome to back after long time . After run demo , show this err ---------------------------------------------------------------------- PierceNg · 2023-11-12 10:27 Quote from: Coldzer0 on November 12, 2023, 08:17:47 amHello All, I just finished the first version of Pascal ImGui binding, and It looks perfect.  Check out the source code for testing, etc... https://github.com/Coldzer0/ImGui-Pascal I have a TODO list in the readme so any contribution would be great.  Nice! As a programming library which source files will be compiled together with application source files into the final executable, kindly consider licensing it under LGPL. ---------------------------------------------------------------------- PierceNg · 2023-11-12 10:29 Quote from: nouzi on November 12, 2023, 10:21:31 amAfter run demo , show this err Try this: Code: Text  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i LD_LIBRARY_PATH= ./ImGuiDemo ---------------------------------------------------------------------- Coldzer0 · 2023-11-12 12:57 Quote from: nouzi on November 12, 2023, 10:21:31 amHi @Coldzer0 Welcome to back after long time . After run demo , show this err Thanks ^_^ As @PierceNg says, you can use Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i LD_LIBRARY_PATH=. for current dir I'll change the code to make it load the cimgui dynamically Quote from: PierceNg on November 12, 2023, 11:27:03 amNice! As a programming library which source files will be compiled together with application source files into the final executable, kindly consider licensing it under LGPL. What do you mean by which source files will be compiled? I did license it with AGPL-3, so if anyone makes changes or improvements to the library, they should make these changes open- source. ---------------------------------------------------------------------- nouzi · 2023-11-12 14:11 Thanks  PierceNg , Thanks Coldzer0 ---------------------------------------------------------------------- PierceNg · 2023-11-13 01:07 Quote from: Coldzer0 on November 12, 2023, 01:57:25 pmQuote from: PierceNg on November 12, 2023, 11:27:03 amAs a programming library which source files will be compiled together with application source files into the final executable, kindly consider licensing it under LGPL. What do you mean by which source files will be compiled? I did license it with AGPL-3, so if anyone makes changes or improvements to the library, they should make these changes open- source. By the nature of ImGui, any application program will look like ImGuiDemo.pas: - uses PasImGui.impl.pas and CImGui.impl.OpenGL3.pas, which are compiled into the application executable - make the same SDL_XXX and ImGui_Impl_XXX startup and shutdown calls The application main loop is different and specific to the application, of course. Under (A)GPL, the source of the application program itself is required to be under (A)GPL too. In particular, to comply with AGPL, the application source files are required to be published. In contrast, with LGPL (possibly with a static linking exception as with Free Pascal), - the source files of the application program can be under another license, meaning, no requirement to publish source code - improvements to the library, e.g. implementing a new widget, are under LGPL, meaning, source code needs to be published See Free Pascal's home page: QuoteThe packages and runtime library come under a modified Library GNU Public License to allow the use of static libraries when creating applications. The compiler source itself comes under the GNU General Public License. ---------------------------------------------------------------------- Coldzer0 · 2023-11-13 02:26 Quote from: PierceNg on November 13, 2023, 02:07:07 amQuote from: Coldzer0 on November 12, 2023, 01:57:25 pmQuote from: PierceNg on November 12, 2023, 11:27:03 amAs a programming library which source files will be compiled together with application source files into the final executable, kindly consider licensing it under LGPL. What do you mean by which source files will be compiled? I did license it with AGPL-3, so if anyone makes changes or improvements to the library, they should make these changes open- source. By the nature of ImGui, any application program will look like ImGuiDemo.pas: - uses PasImGui.impl.pas and CImGui.impl.OpenGL3.pas, which are compiled into the application executable - make the same SDL_XXX and ImGui_Impl_XXX startup and shutdown calls The application main loop is different and specific to the application, of course. Under (A)GPL, the source of the application program itself is required to be under (A)GPL too. In particular, to comply with AGPL, the application source files are required to be published. In contrast, with LGPL (possibly with a static linking exception as with Free Pascal), - the source files of the application program can be under another license, meaning, no requirement to publish source code - improvements to the library, e.g. implementing a new widget, are under LGPL, meaning, source code needs to be published See Free Pascal's home page: QuoteThe packages and runtime library come under a modified Library GNU Public License to allow the use of static libraries when creating applications. The compiler source itself comes under the GNU General Public License. That's a fair point, I've changed the license to MIT. ---------------------------------------------------------------------- Coldzer0 · 2023-11-17 09:45 I updated the project (Big update) - Allow static linking on Windows with FPC (no static for Delphi  ) - And wrote the entire OpenGL3 renderer in Pure-Pascal  - Fixing a bug if you try to compile on Linux  Now the license is MIT ---------------------------------------------------------------------- Coldzer0 · 2023-11-29 16:28 New update  https://github.com/Coldzer0/ImGui-Pascal Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i - A Full rework for the APIs- Adding ImPlot Support ( APIs Still in progress )- Support windows 32bit ---------------------------------------------------------------------- nouzi · 2023-11-30 07:50 Can't find demo for test compile on linux ! Is it done Deleted demo folder ? ---------------------------------------------------------------------- Coldzer0 · 2023-11-30 11:44 Quote from: nouzi on November 30, 2023, 08:50:54 amCan't find demo for test compile on linux ! Is it done Deleted demo folder ? It's still there under this folder ImGui_SDL2_OpenGL3_Demo