Difference between revisions of "Smart Terminal GUI"

From OpenCircuits
Jump to navigation Jump to search
Line 56: Line 56:
 
* <Close Button> Close the communications port. No error if it is not open. Parameters show to the right, port status to right of button.
 
* <Close Button> Close the communications port. No error if it is not open. Parameters show to the right, port status to right of button.
 
* <Parameters to right of open and close buttons> Parameters from the parameter file(s), not editable on the GUI.
 
* <Parameters to right of open and close buttons> Parameters from the parameter file(s), not editable on the GUI.
 
 
* <Row of Buttons>
 
** <Start Auto> starts auto run mode of terminal if so configured, this is still alpha and in any case will not have much success unless connected to a compatible serial device ( typically an Arduino ).
 
** <Stop Auto> stops auto run mode of terminal. Also still alpha, but generally harmless.
 
 
** <Edit Log> opens an editor on the system ( needs to be configured in parameter file self.ex_editor = <name of executable or link> ) to view the python logging file for the app.
 
** <Edit Log> opens an editor on the system ( needs to be configured in parameter file self.ex_editor = <name of executable or link> ) to view the python logging file for the app.
 
** <Edit Parms > opens an editor on the system to edit the parameters.py file. See <Edit Log>.
 
** <Edit Parms > opens an editor on the system to edit the parameters.py file. See <Edit Log>.
 
** <Edit Parms X > opens an editor on the system to edit the extended parameter file if used on the command line. Not visible if no extended parameter file used. See <Edit Log>.
 
** <Edit Parms X > opens an editor on the system to edit the extended parameter file if used on the command line. Not visible if no extended parameter file used. See <Edit Log>.
** <Ports > List available ports in the receive area, working under windows until upgraded from 7 to 10, Linux ??
+
** <SendParms>
 +
** <Ports> List available ports in the receive area, working under windows until upgraded from 7 to 10, Linux ??
 +
** <Restart> Restarts the application ( usually fast ) using new values ( if any ) in the parameter files.
 +
** <Test> May not be present, for debugging, not generally useful or predictable, you would need to look through the code to see what it might be doing, press at your own risk.
 +
 
 +
=== Buttons from Extensions ===
 +
If you have extended the terminal with an xxx_processing module, its GUI will appear here.  In this screen shot we see the GUI from the greenhouse extension ( note this is the mode in the window title ).  The actual labels are something still in flux, the functions are more fixed.
 +
 
 +
** <Helper: > starts auto run mode of terminal if so configured, this is still alpha and in any case will not have much success unless connected to a compatible serial device ( typically an Arduino ).
 +
** <Helper: Find Arduino > T
 +
** <Interrupt Helpe> stops auto run mode of terminal. Also still alpha, but generally harmless.
  
 +
=== Send Area ===
  
 
*<Send Buttons> and <Text Entry> to right of each button. Each button sends the text to the right of the button, text is not erased after transmission.  Lots of parameters in the parameter file determine the details.  Number of send buttons... also in parameter file(s).
 
*<Send Buttons> and <Text Entry> to right of each button. Each button sends the text to the right of the button, text is not erased after transmission.  Lots of parameters in the parameter file determine the details.  Number of send buttons... also in parameter file(s).
  
 +
=== Receive Area ===
  
 
* <Column of Buttons and Text Panel>  The Panel shows terminal activity and some other info ( like Ports above ) the buttons act on this data in some way.  You can type in the text panel, to no particular effect, perhaps could use this to make notes.  Text is partly erased from time to time depending on settings in parameter file(s)
 
* <Column of Buttons and Text Panel>  The Panel shows terminal activity and some other info ( like Ports above ) the buttons act on this data in some way.  You can type in the text panel, to no particular effect, perhaps could use this to make notes.  Text is partly erased from time to time depending on settings in parameter file(s)

Revision as of 05:51, 28 February 2017

Overview

The GUI or graphical user interface is the key to using the SmartTerminal. In addition, but not discussed here, you can use the command line and the parameter file ( see: Smart Terminal Parameter Examples ). This page is the documentation for the GUI.

Screen Shot

This is what it looks like, details on each part below. Still working on it, mostly to clean up the details. Note that this screen shot was taken during a debugging session and has a bunch of artifacts that will soon disappear, then a new screen shot will be placed here.


ScreenShot 1.png


What Does What

Control is mostly through buttons, sometimes supplemented by text fields. Outside of the GUI there is also a parameter file which controls start up and item like communications setting. The large rectangle at the bottom left, a text area, is where data sent, received, and some information messages are displayed. It is referred to as the receive area.

The Controls

Working from top to bottom:

Top Row of Labels

  • <Window title> Program name and some additional info including version, mode, and the name of any "extra" parameter file ( see Smart Terminal Parameter Examples ).
  • <Double Row of Labels, Starting with the Communications>> > Managed by the parameter file ( see Smart Terminal Parameter Examples ).
    • <Port:xxx> Status of comm port, open, closed or failed to open.
    • <Type:xxx> Type of comm port, so far only RS232
    • <PortID:xxx> Name of port used by the operating system. This may be changed if some of the "auto open" features are used.
    • <Baud:xxx> Baud Rate of comm port.
    • <StopBits:xxx>
    • <Parity:xxx> Parity of comm port.
  • <Additional Labels in First Row, Starting with the Database>> > Also managed by the parameter file.
    • <Status:xxx> This and following are used for the database connection ( not always used )
    • <connect??>
    • <Host:xxx> Host name of database
    • <DB:xxx> Database name
    • <User:xxx> Database user
    • <:xxx>

First Button

Next row:

  • <auto Button>

Next Button Row

  • <Open Button> Opens the communications port ( if configuration in parameter file(s) allow ) Parameters show to the right, port status to right of button.
  • <Close Button> Close the communications port. No error if it is not open. Parameters show to the right, port status to right of button.
  • <Parameters to right of open and close buttons> Parameters from the parameter file(s), not editable on the GUI.
    • <Edit Log> opens an editor on the system ( needs to be configured in parameter file self.ex_editor = <name of executable or link> ) to view the python logging file for the app.
    • <Edit Parms > opens an editor on the system to edit the parameters.py file. See <Edit Log>.
    • <Edit Parms X > opens an editor on the system to edit the extended parameter file if used on the command line. Not visible if no extended parameter file used. See <Edit Log>.
    • <SendParms>
    • <Ports> List available ports in the receive area, working under windows until upgraded from 7 to 10, Linux ??
    • <Restart> Restarts the application ( usually fast ) using new values ( if any ) in the parameter files.
    • <Test> May not be present, for debugging, not generally useful or predictable, you would need to look through the code to see what it might be doing, press at your own risk.

Buttons from Extensions

If you have extended the terminal with an xxx_processing module, its GUI will appear here. In this screen shot we see the GUI from the greenhouse extension ( note this is the mode in the window title ). The actual labels are something still in flux, the functions are more fixed.

    • <Helper: > starts auto run mode of terminal if so configured, this is still alpha and in any case will not have much success unless connected to a compatible serial device ( typically an Arduino ).
    • <Helper: Find Arduino > T
    • <Interrupt Helpe> stops auto run mode of terminal. Also still alpha, but generally harmless.

Send Area

  • <Send Buttons> and <Text Entry> to right of each button. Each button sends the text to the right of the button, text is not erased after transmission. Lots of parameters in the parameter file determine the details. Number of send buttons... also in parameter file(s).

Receive Area

  • <Column of Buttons and Text Panel> The Panel shows terminal activity and some other info ( like Ports above ) the buttons act on this data in some way. You can type in the text panel, to no particular effect, perhaps could use this to make notes. Text is partly erased from time to time depending on settings in parameter file(s)
    • <Clear> Clears text panel.
    • <Copy Sel> Copies all selected text.
    • <Copy All> Copies all text selected or not.
    • <A Scroll> When checked text panel automatically scrolls to the most recent data, else not.