Introduction
In this training, you will construct a BoxSizer class to position child widgets with a horizontal orientation on the window of the WVGA Display.
Steps:
- Create a New Source File
- Construct a BoxSizer
Prerequisites
You have prepared the Host PC with all the development software tools and Ensemble Graphics Toolkit source code as explained in:
You have installed and prepared the Eclipse IDE for C/C++ Developers as explained in:
Create a New Source File
In this section you will be creating a new sizer.cpp source file that you will build in later sections demonstrating the BoxSizer class.
You will use EgtProject and its settings you entered in the training: Ensemble Graphics Toolkit -- First Application using Eclipse IDE
2
You will be adding a new source file with the name: sizer.cpp. If you have a *.cpp source file from a previous Ensemble Graphics Toolkit training, perform the following steps:
b
Select Debug and Release and click on the OK button.
The selected *.cpp will be excluded from the build.
3
Right click on EgtProject and select Clean Project.
5
Enter sizer.cpp into the Source file: text box. Click on the Finish button.
A new source file tab sizer.cpp is created within the EgtProject.
6
Enter the following source code to the sizer.cpp window pane:
7
Save your program by selecting File > Save. You may also save by pressing CTRL + S.
You have completed adding a new source file to EgtProject.
Construct a BoxSizer
1
To build the project, hover over EgtProject, right-click and select Build Project from the menu. Or you can click on the Build icon.
The Console window (bottom pane) will display the build progress.
2
To set run properties, hover over EgtProject, right-click and select Run As > Run Configurations… from the menu.
4
In the Run Configurations window, enter the following in the Remote Absolute File Path for C/C++ Application: text box:
/root/sizer
You may see the previous program /root/???? here. Replace with /root/sizer.
This is the location the sizer.cpp executable will be loaded and run on the target.
5
Click on the Apply button.
6
Click on the Run button.
7
Observe the WVGA Display on the target:
The sizer.cpp executable is running remotely on the target.
Observe the child widgets with a horizontal orientation.
BoxSizer class
From ~/egt/docs/html/annotated.html, click on the BoxSizer class. All the functions, attributes, and the constructor associated with the class are documented here.
HorizontalBoxSizer and VerticalBoxSizer class
The HorizontalBoxSizer and VerticalBoxSizer classes are helper variations for the BoxSizer class.
From ~/egt/docs/html/annotated.html, click on the HorizontalBoxSizer and VerticalBoxSizer class. All the functions, attributes, and the constructor associated with these classes are documented here.
Icons
The EGT library comes with a set of icons and images installed by default. Their location is /usr/share/libegt/icons.
To access these icons and images, the scheme uses icon like so:
auto play_button = egt::Image(“icon:play.png”);
These icons are available in different size; 16px, 32px, 64px and 128px. Unless specified, the default icon size is 32px.
8
To stop the program, press the Stop button (upper left hand, just below the menu bar).
Before you start another session, be sure to Stop the current session.
Summary
In this training, you explored the construction of the BoxSizer class to position child widgets with a horizontal orientation on the window of the WVGA Display.
What’s Next?
There’s plenty more to learn. Here are some additional Ensemble Graphics Toolkit training resources to help you gain more knowledge and skills: