TGuiBuilder -- reopening file changes variable names


Please find attached 3 files. The first file (gui1_test.C) is a simple project with two TGTextButton entries (*fTextButton560 and *fTextButton565) created using TGuiBuilder (I like it :slight_smile:. Following this, I opened the same file and saved with different name - gui2_test.C. Then I opened gui2_test.C and saved with name - gui3_test.C. In doing this, I noticed the following two issues:

[1] Every time I open & save the project, one “composite frame” is added to the project. As you can see: 1 in gui2_test.C and 2 in gui3_test.C. This changes name and pointer to TGMainFrame.

[2] The second one is more annoying. The pointer names to TGTextButton created in the first file (*fTextButton560 and *fTextButton565) keep changing every time I open and save the project. This happens not only to TGTextButton class but also for all available classes in TGuiBuilder. As I mentioned, this is annoying since I have to modify my big project as I test it. So, when I start writing GUI, I would start with some meaningful names e.g. *fTBStart, *fTBStop etc. But I cannot do this for obvious reason explained above.

Am I missing something OR this is the normal behavior of TGuiBuilder? I am using ROOT 5.28/00 on 2.6.9-89.35.1.EL Linux kernel.

Thanks and regards,

gui3_test.C (3.91 KB)
gui2_test.C (3.55 KB)
gui1_test.C (3.2 KB)

Hi Ajay,

These are unfortunately known issues with the gui builder, and we’ll try to improve it, but this will take some time, and it is not a top priority right now.
Thanks anyway for the feedback!

Cheers, Bertrand.

Hi Bellenot,

I am back after 7 years!

Are the issues with the TGuiBuilder resolved in the latest version of ROOT? Please let me know.

With best regards,



No, the development of the Gui builder has been frozen… (you can still try a more recent version to see if it’s better than the one you have…)

Cheers, Bertrand.

Thank you very much for your reply. I will certainly try with ROOT 6.14 and 6.15

But that is a sad news for me at least!

Well, it’s not very complicated to create a GUI application with ROOT…

No, no…not at all. I had said in the first post of this thread that I enjoyed, and like its simplicity. But the problem is with multiple “save” add frames and change names of the frames.

I was talking about developing a GUI application without the Gui builder…

I am sorry, but can you be more specific and tell me how to do that, please.

Simply write the code yourself, there are several examples in $(ROOTSYS)/tutorials/gui

Okay. Thank you for your suggestion and help.

You’re very welcome

Cheers, Bertrand.