Help for a GUI software



Hi everybody,

I am doing an Internship and my supervisor wants (he doesn’t knows how to use JUCE ) me to creat a GUI for his new software which will be compose of:

A Main Window with a Menu on the left side, inside this menu you can choose differents products from my company’s supervisor.

When you chose your product that’s show you always in the main window another page wich composed
theoretically of an infinity of windows that you can make floatable or unfloatable on this page.
Because the products made by my supervisor needed to be connect to this software and if the customer buy an infinity of products the software is supposed to open an infinty of windows.

My solution:

For the 1
I created a ListBox exactly like the JUCE demo but with product A, product B etc…

For the 2 I tried to create new DocumentWindows for each products but I have a pointer problem, if I close the main window before the document window.
And I don’t know how to make the DocumentWindow unfloatable or floatable.

If you remember the Juce Demo I tried to do exactly the same thing that the MDI page not with MultiDocumentPanel, but with a DocumentWindow.

Now, I am creating FlexBoxes for each products to replace DocumentWindow but I don’t know how to see more than 6 FlexBoxes.

My questions:

Do you think that it’s a good Idea to use DocumentWindow?
Do you know how to make a DocumentWindow floatable or unfloatable?
Do you know how to create ScrollBar to display more than 6 FlexBoxes on my page? or how to add FlexBoxes to a StrechableLayoutManager or something like that?

I hope my questions are understable

Thank You very much


I’m not really following what you’re trying to do here… any examples of other applications with the behaviors you’re trying to implement?

You might want to ask your boss - are you sure JUCE is the right tool for this project?

While JUCE can totally do what you’re trying to do, a native desktop program for a document-based (assuming non-multimedia from your post) application mostly populated by lists, buttons, fields, etc. can be built MUCH more quickly and efficiently with a web-based framework like jQuery UI, Angular JS, or the like .


…or Electron + React/VueJS.

If I was gonna build a non performance-critical app like this I might also look into Smalltalk using Pharo. Lots of options these days. I would only use C++ when necessary!


Thank you for your answers Adamski and Jonathonracz

Ok, I will check that you said.

For example:
In JuceDemo.jucer you have a ListBox and when you click on compenents: MDI, you have a new page with MultiDocumentPanel which will open.

I try to do the same thing but with a DocumentWindow not a MultiDocumentPanel.
If I connect 3 products to my computer I want to display 3 DocumentWindow.
It would be nice if I can switch between a floatable or unfloatable DocumentWindow.

Actually, the software already exist and my main aim was to move from VSTGUI to JUCE.

It’s done but the first developer use dlls.
Which means that when you connected one product to your computer the main window (from the software) detect the product and call the dll.

The problem is that if you have 10 products you have 10 windows, and that’s not really ergonimic…

My second aim is to find a solution more ergonomic but I need to use JUCE because the first software is in VST and VSTGUI.

That why I am trying to do everything without dlls and VSTGUI.

do you understand now? or do you want pictures from the JuceDemo?

Thank you