Below is code produced by the near deprecated GUI tool. Each class is well documented. Good luck!
Declarations in header -
std::unique_ptr<TextButton> textButton;
std::unique_ptr<ToggleButton> toggleButton;
std::unique_ptr<Slider> slider;
std::unique_ptr<Slider> slider2;
std::unique_ptr<Slider> slider3;
std::unique_ptr<Slider> slider4;
std::unique_ptr<ComboBox> comboBox;
std::unique_ptr<TextEditor> textEditor;
std::unique_ptr<GroupComponent> groupComponent;
std::unique_ptr<HyperlinkButton> hyperlinkButton;
std::unique_ptr<TabbedComponent> tabbedComponent;
std::unique_ptr<TreeView> treeView;
In component’s constructor -
textButton.reset (new TextButton ("new button"));
addAndMakeVisible (textButton.get());
textButton->addListener (this);
textButton->setBounds (32, 32, 150, 24);
toggleButton.reset (new ToggleButton ("new toggle button"));
addAndMakeVisible (toggleButton.get());
toggleButton->addListener (this);
toggleButton->setBounds (32, 80, 150, 24);
slider.reset (new Slider ("new slider"));
addAndMakeVisible (slider.get());
slider->setRange (0, 10, 0);
slider->setSliderStyle (Slider::LinearHorizontal);
slider->setTextBoxStyle (Slider::NoTextBox, false, 80, 20);
slider->addListener (this);
slider->setBounds (32, 128, 150, 24);
slider2.reset (new Slider ("new slider"));
addAndMakeVisible (slider2.get());
slider2->setRange (0, 10, 0);
slider2->setSliderStyle (Slider::RotaryVerticalDrag);
slider2->setTextBoxStyle (Slider::TextBoxLeft, false, 80, 20);
slider2->addListener (this);
slider2->setBounds (32, 176, 190, 80);
slider3.reset (new Slider ("new slider"));
addAndMakeVisible (slider3.get());
slider3->setRange (0, 10, 0);
slider3->setSliderStyle (Slider::IncDecButtons);
slider3->setTextBoxStyle (Slider::TextBoxLeft, false, 80, 20);
slider3->addListener (this);
slider3->setBounds (24, 280, 190, 80);
slider4.reset (new Slider ("new slider"));
addAndMakeVisible (slider4.get());
slider4->setRange (0, 10, 0);
slider4->setSliderStyle (Slider::LinearHorizontal);
slider4->setTextBoxStyle (Slider::TextBoxBelow, false, 80, 20);
slider4->addListener (this);
slider4->setBounds (32, 392, 190, 80);
comboBox.reset (new ComboBox ("new combo box"));
addAndMakeVisible (comboBox.get());
comboBox->setEditableText (false);
comboBox->setJustificationType (Justification::centredLeft);
comboBox->setTextWhenNothingSelected (TRANS("nothing...."));
comboBox->setTextWhenNoChoicesAvailable (TRANS("(no choices)"));
comboBox->addItem (TRANS("item 1"), 1);
comboBox->addItem (TRANS("item 2"), 2);
comboBox->addItem (TRANS("item 3"), 3);
comboBox->addListener (this);
comboBox->setBounds (352, 32, 150, 24);
textEditor.reset (new TextEditor ("new text editor"));
addAndMakeVisible (textEditor.get());
textEditor->setMultiLine (false);
textEditor->setReturnKeyStartsNewLine (false);
textEditor->setReadOnly (false);
textEditor->setScrollbarsShown (true);
textEditor->setCaretVisible (true);
textEditor->setPopupMenuEnabled (true);
textEditor->setColour (TextEditor::backgroundColourId, Colour (0xff178dc8));
textEditor->setText (String());
textEditor->setBounds (40, 512, 190, 80);
groupComponent.reset (new GroupComponent ("new group",
TRANS("group")));
addAndMakeVisible (groupComponent.get());
groupComponent->setColour (GroupComponent::outlineColourId, Colour (0xff16adda));
groupComponent->setBounds (336, 104, 200, 150);
hyperlinkButton.reset (new HyperlinkButton (TRANS("new hyperlink"),
URL ("http://www.juce.com")));
addAndMakeVisible (hyperlinkButton.get());
hyperlinkButton->setTooltip (TRANS("http://www.juce.com"));
hyperlinkButton->setBounds (352, 288, 150, 24);
tabbedComponent.reset (new TabbedComponent (TabbedButtonBar::TabsAtTop));
addAndMakeVisible (tabbedComponent.get());
tabbedComponent->setTabBarDepth (30);
tabbedComponent->addTab (TRANS("Tab 0"), Colours::lightgrey, 0, false);
tabbedComponent->addTab (TRANS("Tab 1"), Colours::lightgrey, 0, false);
tabbedComponent->addTab (TRANS("Tab 2"), Colours::lightgrey, 0, false);
tabbedComponent->setCurrentTabIndex (0);
tabbedComponent->setBounds (344, 360, 200, 150);
treeView.reset (new TreeView ("new treeview"));
addAndMakeVisible (treeView.get());
treeView->setTooltip (TRANS("putz"));
treeView->setColour (TreeView::backgroundColourId, Colour (0xffeebfe4));
treeView->setBounds (576, 56, 150, 150);