Tutorial Step 8
This sample builds on tutorial step 7 , and also demonstrates the use of a WEL_OPEN_FILE_DIALOG and a WEL_SAVE_FILE_DIALOG . The output is shown below:
Compiling
- Launch EiffelStudio.
- Click Add project
- Browse to $ISE_EIFFEL\examples\wel\tutorial\step8\.
- Choose tutorial_step8.ecf
- Choose the location where the project will be compiled, by default the same directory containing the configuration file.
- Click OK.
Running
After launching the sample, you will see a WEL_FRAME_WINDOW displayed. By holding down the left mouse button, and moving the mouse (Within the client area of the window), you will be able to draw on the client are of the window. Selecting "Line_thickness" from the "Line" menu, will display a WEL_MODAL_DIALOG which allows you to change the thickness of the line that is drawn. If you select "Exit" from the "File" menu, you will be prompted if you wish to exit the application. Selecting "New" from the "File" menu will clear the window. Selecting "Save" from the "File" menu will display a WEL_SAVE_FILE_DIALOG which allows you to specify the filename and location of the picture you have drawn. Selecting "Open" from the "File" menu will display a WEL_OPEN_FILE_DIALOG which allows you to specify a previously saved drawing to open.
Under the Hood
The WEL_OPEN_FILE_DIALOG and the WEL_SAVE_FILE_DIALOG are both activated from the redefinition of on_menu_command
. A new class, LINES
is now used to store the lines drawn by the user and this inherits STORABLE which allows it to be easily stored and retrieved. This sample contains the following classes:
-
TUTORIAL_STEP6
-
MAIN_WINDOW
-
LINE_THICKNESS_DIALOG_CHART
-
APPLICATION_IDS
-
POINT
-
LINES
-
LINE