in GUI Development by

I am developing debug screens, where the four arrow keys are used, the UP/DOWN keys change the test type and the LEFT/RIGHT keys change the data type within that particular test. If you see first image, titled 'model info' and has the data S and AU, if the user presses RIGHT key the data should change to as shown in second image.



The second image is:


When right arrow on the screen is pressed, the data changes to FU and frequency of the hardware in operation.

Now if user press down arrow key on screen:


The test type changes from 'model info' to 'input test'.


For now I am just designing the screens individually and inheriting the property of parent class which are the arrows.

My question is can I get an idea on how to link all this together and how can it be implemented on EmWiz?




1 Answer

0 votes

Hello MO,
When I understand correctly, you want to present different screens based on pressing buttons represented by arrow icons.
There are different ways how you can realize this.
One approach can be to have different 'debug screens' based on the same base class and a container which can handle the changes from one to another 'debug screen'. This way each 'debug screen' can contain it's caption and it's content area. For naming conventions lets call your screens dialogs.
1) Create a new class DialogBase', which contains the caption and the four buttons.
2) Create each of your dialogs derived from the DialogBase, overwrite the caption and the button action and add your dedicated content.
3) Create a call DialogManager which allows to handle the dialogs as abstract data type
4) Connect the DialogManager within your application and instanciate the related DebugDialog then the related abstract dialog type changes.
5) Change the dialog type on button press within your debug dialogs to change to the related dialog on the screen.

See the attached example:here

Ask Embedded Wizard

Welcome to the question and answer site for Embedded Wizard users and UI developers.

Ask your question and receive answers from the Embedded Wizard support team or from other members of the community!

Embedded Wizard Website | Privacy Policy | Imprint