ver. 1.5.6.5
- merged the bug fix from 2.6 branch gmoccapy 1.5.6.2.2

ver. 1.5.6.4
- bugfix: if toggle button user tabs was active and the user changed the mode
  (Manual,MDI or AUTO) the user tabs button staid active, but the screen
  layout changed to the corresponding mode, letting the button pressed.
- if embedded tabs was set in the INI file, the toggle button user tabs 
  got active, even if no tab was configured for "ntb_user_tabs", changed this
  and sorted the code to be together with the rest of user tabs

ver. 1.5.6.3
- bugfix: In _init_IconFileSelection the icon size was fixed with 48 
  so changes the user makes to the glade file was not been taken care of
- In glade file a signal on_btn_load_state_changed was set, but no handler present, 
  leading to a error message on start in the terminal, erased the signal

ver. 1.5.6.2.2
- halui spindle override bug, caused by a race conflict
  Thanks to pippin88 and dinkata to help solving his one

ver. 1.5.6.2.1
- bug in initialize optional stops

ver. 1.5.6.2
- bugfix: run from line was trying to set an entry in the alarm page, whitch
  I drobed in 1.5.6 
  I cleared the code from unneeded imports and comments

ver. 1.5.6.1
- bugfix: If a user did jog with keyboard and while jogging changed the increments
  pressing "i" on the keyboard the jog move would never stop. I do check now for
  self.stat.state and do avoid that way the increment changes
  if the user changes the jog-increment using the hal pin, the increment will change
  to the new value, but the jog command will be aborted.
- corrected some typos 

ver. 1.5.6
- deleted the alarm_entry log page, as it has not been used by users
  to report bugs, and therefor it was designed.
- changing DRO mode by click can be disabled on settings page
- corercted and added information to the docs
- added a new property to combi_dro to disable readout toggling

ver. 1.5.5.5
- if using gmoccapy jog hal pin in MDI mode a error was thrown on button release
- Typo in settings page, corrected also the translation files

ver. 1.5.5.4
- corrected a error shown on start up, because I used greeen instead of green
- glade file did contain a signal "on_gremlin_clicked", but gmoccapy did not offer a handler,
  resulting in error messages in the terminal on start up. the unneeded signal has been errased
- The horizontal buttons of gmoccapy will stay synconized with the iconview widget
 
ver. 1.5.5.3
- deleted the working area limit pin, as this can be realized better
  with standard hal pin and did not work well with gmoccapy
- settings page, all previes settings are now in one frame
- updated the documentation
- new serbian translation files, and corrected the language code 
  was rs.po instead sr.po

ver. 1.5.5.2
- unloading a tool with M61 Q0 did not reset the tool information 
  because the tool number changed to "-1" and I tested only for "0"
  To unload the tool with M61 Q0 the command has to be executed twice
  because of a linuxcnc bug (IMHO)

ver. 1.5.5.1
- corrected the step by step behavior

ver. 1.5.5
- gmoccapy will take notice of the settings 
  "DISPLAY", "POSITION_FEEDBACK" in the INI File and 
  set the DRO accordingly (Code basis from Steffen)
- Added keyboard shortcut F3 to change to manual mode
- Added keyboard shortcut F5 to change to MDI Mode
- Added keyboard shortcut "Enter" for MDI Mode to 
  submit the selected command
- Added keyboard shortcut "i" and "I" to switch 
  jog increments forward and backwards like in axis

ver. 1.5.4.1
- changed fullsize preview button in manual mode to new position
  to be the same place in auto and manual mode.

ver. 1.5.4
- changing in auto mode, being in fullsize preview to edit page leaded
  to blank screen, I corrected that bug.

ver. 1.5.3.1
- solved a bug in widget handling, not enabling the ignore limits checkbox,
  being on a limit switch

ver. 1.5.3
- added a gscreen patch to search also in the user dir for themes

ver. 1.5.2.2
- if a user did reduce spindle override to zero and switched on the 
  spindle, gmoccapy produced a division by zero error. Fixed!
  reported by "tekmobile"

ver. 1.5.2.1
- corrected a bug on btn_brake_macro, not beeing active if no virtual
  keyboard has been installed
  Thanks to Frans (franstrein) for reporting

ver. 1.5.2
- In Lathe mode and with startcode G7 the DRO has not been set
  correctly, while starting in G8 was OK.
- Some code clearance 

ver. 1.5.1.4
- Two missing self. leaded to errors if logging was active, 
  Thanks to Frans (franstrein) for reporting

ver. 1.5.1.3
- As in full screen mode the GUI covers also the clock, I added a clock
  and date label under the right buttons. 

ver. 1.5.1.2
- The handler from glade_status <on_change_line> got lost somehow, so 
  some hal pin has not been updated correctly  
- in the glade file the spindle at speed led changed its color to red,
  I don't know how, I think glade is comming to its limit ;-)
- changed spindle label handling, now the labels display actual values, 
  not the read values.
- The spindle buttons will now be sensitive in auto mode, but only the
  one witch is active, so spindle direction is displayed clearly  

ver. 1.5.1.1
- some print commands has been commented out to avoid to much condole infos
- there was a limit of 100 for tool sensor height, I extended to 999 mm

ver. 1.5.1
- solved a bug in counts handling, if only one MPG was used for 
  all sliders and axis, there was a jump after changing the selection
  Now it does not matter, if the user connect only one MPG or use for
  each slider an own MPG 

ver. 1.5.0
- new hal pin, and some renaming of hal pin to reflect the
  same names and behavior as halui-pin

  * gmoccapy.jog-speed.counts
  * gmoccapy.jog-speed.analog-enable
  * gmoccapy.jog-speed.count-enable
  * gmoccapy.jog-speed.direct-value

  * gmoccapy.feed-override.counts
  * gmoccapy.feed-override.analog-enable
  * gmoccapy.feed-override.count-enable
  * gmoccapy.feed-override.direct-value

  * gmoccapy.spindle-override.counts
  * gmoccapy.spindle-override.analog-enable
  * gmoccapy.spindle-override.count-enable
  * gmoccapy.spindle-override.direct-value

  * gmoccapy.max-velocity.counts
  * gmoccapy.max-velocity.count-enable
  * gmoccapy.max-velocity.analog-enable
  * gmoccapy.max-velocity.direct-value

- gmoccapy will now react to some halui pin as counts or direct value
  Be aware, that some of this may have side affects, it is strongly 
  recomended to use the corresponding gmoccapy hal pin. 

  * halui.spindle-override.counts
  * halui.feed-override.counts
  * halui.max-velocity.counts
  * halui.abort
  * halui.spindle.start
  * halui.spindle.stop
  * halui.spindle.reverse
  * halui.spindle.increase
  * halui.spindle.decrease
  * halui.program.run
  * halui.program.stop
  * halui.program.pause
  * halui.mode.manual
  * halui.mode.mdi
  * halui.mode.auto
  * halui.mist.on
  * halui.mist.off
  * halui.flood.on
  * halui.flood.off
  * halui.machine.on
  * halui.machine.off
  * halui.home-all
  * halui.estop.activate
  * halui.estop.reset

- to reflect the new hal pin connections I introduced a new sim config 
  gmoccapy_pendant.ini, demonstrating the connection of a remote pendant 
  with selection switches

- deleted gmoccapy_jog_wheels.ini, as pendant.ini demonstrates it better

ver. 1.4.2
- removed the save and run button from the edit page, 
  because of security reasons
- removed the integrated terminal, as it was not real usefull
  and all terminal work can be done from normal terminal
- translations for German and Spanish has been updated

ver. 1.4.1
- corrected brocken layout style, as the jog-increment buttons has not 
  been modified to change there background color, getting only dark grey 
  instead of yellow, if they where active. No the follow the gmoccapy style.
- the number of digits of the DRO can now be set on the settings page, so 
  users of fragil machines can reduce the digits.

ver. 1.4.0
- introduced turtle jog, allowing two scales for the 
  jog vel adjustment
- new hal pin "gmoccapy.turtle-jog" to switch from rabbit-jog 
  (fast mode) to turtle-jog (slow mode) using a hardware switch
- new hal pin for analog input 
  * gmoccapy.analog-enable (must be True to activate the analog inputs)
  * gmoccapy.spindle-override-value
  * gmoccapy.max-vel-value
  * gmoccapy.jog-speed-value
  * gmoccapy.feed-override-value
  all four taking a float input as percentage, 
  meaning a value from 0.0 to 1.0, setting the corresponding slider
  directly to the given value
- some code rework, mainly in the _init_hal_pin section and on 
  encoder counts handling 

ver. 1.3.5.1
- forgot to reset the gcode error, resulting in showing it only once,
  it ws not shown again if a good file was loaded and than again the 
  wrong one, now the load and edit button do reset the error code. 

ver. 1.3.5
- added the new signal from hal_gremlin to gmoccapy so we do get 
  a message of gcode errors when loading a file and not only when
  the interpreter does read the wrong line. A warning box will inform 
  about the error details.

ver. 1.3.4
- if no virtual keyboard was installed (nor onboard or matchbox),
  the checkboxes on the settings page has not been sensitized and the
  settings has not been reseted correctly from the preference file
  Thanks to Roland (concierge) for finding this one

ver. 1.3.3
- the combobox for the mouse button mode has not been initialized
  correct, if it had the default value of the glade file. It is a 
  bug in glade. The work around is not to set a default value in glade
  but in the python code.

ver. 1.3.2
- fixed a small bug PAUSE button did not get active on M01
  Thanks to Rick (LAIR82) for pointing on it.

ver. 1.3.1
- fixed very serious bug PAUSE / RESUME / STOP issue
  Program jumped to strange positions if STOP has been pressed 
  while PAUSE was active.
  Thanks to Mael (papaours) for finding it.

ver. 1.3.0.1
- corrected a bug, toolchange velocity hal pin have not been
  preseted with values, if the user worked with the
  default values, so a probing with vel = 0 was posible, 
  resulting in an error
- correctet an error in notifications.py, as the text to be
  displayed has not been checked for correct pango format, a
  message like "vel <= 0" resulted in an error. Now the necessary 
  check is done

ver. 1.3.0
- added replace function to the edit page
- added ignore case to allow case sensitive search
- added reload button on edit page, so if you 
  mixed up to much, you are able to reload the
  original file
- corrected an error at start up, giving a button
  a label, conflicting with a button label
- changed a wrong icon on the button go up one directory

ver. 1.2.2
- changed the way the window size and position is 
  handled, as bevore the default values did apear 
  several times in the code
- If no virtual keyboard could be initialized, we 
  disable now the coresponding part on the settings
  page and the related button. Check will be done
  for <onboard> and <matchbox-keyboard>
- starting gmoccapy did throw an error to the terminal
  that a widget could not get default. Finally I found 
  the reason, the glade file did contain a property
  "has_default" and that is not allowed by builder.

ver. 1.2.1
- due to the behavior of XFCE of the new hybrid.iso I 
  had to change the width settings of several button
  to stretch them to fit some text and images
- The same reason forced to set new default startposition
  of the main window and the notification messages.

ver. 1.2.0
- changed GetIniInfo to return also user message setups
- notification now supports pango markup in the messages
- added hal user messages similar to gsreeen to gmoccapy
  see gmoccapy_messages.ini for usage information
- updated the translation files for German and Spanish 

ver. 1.1.5.9
- prepared yesno_dialog for user message, 
  it does accept now pango markup
- wrong values in axis offset didn't show a message
  to the user, I fixed that

ver. 1.1.5.8
- message at start because of
  return(PlasmaClass(halcomp, builder, useropts))
  instedt off
  return[PlasmaClass(halcomp, builder, useropts)]
  resulting in iteration over none object

ver. 1.1.5.7
- init dynamic tab now in try except to avoid python exception
  on user typos in ini file
- loading a tool using remap, leaded to an error if no file has been 
  loaded before the change, we do check for that now to avoid the error

ver. 1.1.5.6
- introduced three new hal-pin to signal program progress informations
  gmoccapy.program.length = S32, OUT (total number of program lines)
  gmoccapy.program.current-line =S32, OUT (current executed line)
  gmoccapy.program.progress = FLOAT, OUT (progress in %)

  This pin do not work very perfect when using subroutines or remap procedures

ver. 1.1.5.5
- if using remap, an error has been launched, if the user used the buttons of 
  the tool edit widget to change the tools (not posible to change to auto mode)
  I moved the resting procedure of self.tool_change to hal_status_intp_idle
  to solve the wrong behavior

ver. 1.1.5.4
- solved a bug showing screen2 at start up. Screen2 was initialized to early
  resulting in a runtime error

ver. 1.1.5.3
- solved a bug if the user have NO_FORCE_HOMING in his INI and did a homing
  of an axis, resulting in some widgets being unsensitive.
  Thanks to Marius for reportinmg that one
- after a tool touch off no G43 was commited even if that code was active 
  so I added that command to be executed
  Thanks to Rene to report that one
- some minor changes to lathe.ini, having HOME two times in the AXIS config

ver. 1.1.5.2
- solved a bug, on clear G92 offsets handling, switching the GUI to MDI Mode,
  due to a strange behavior of the offsetpage widget, not going back to the 
  previous mode.

ver. 1.1.5.1
- solved a bug related to the gmoccapy error pin. This pin has not been reseted
  if the user used the mouse or touch screen and errased the message by clicking
  the message button. It was only done right if the delete-message pin was used.
  I modified notification.py to emit a signal if a message has been deleted and 
  conected this signal to gmoccapy. 
- corrected also a small mistake in _show_errors, it was posible to get messages
  without text, added a default text. 

ver. 1.1.5
- added a option to hide the 4'th axis, this is useful if that axis is used
  to control a tool changer, as than the axis DRO and jog button are not needed.
  This has to be activated on the settings page, axis 4 is shown by default.
  This needed some code rework (moving code around)
- solved the problem of pin_value changes on start up / initializing, because I
  introduced a new intern variable self.initialized, leaving defs if not True
- introduced a adjustment widget on the settings page to allow the user to set
  the font size of the DRO, it will be reduced by 3/4 if 4 axis are used

ver. 1.1.4
- added again the gcode.lang file, it got lost, after changing gmoccapy to be
  stand alone
- the show screen2 button is now only sensitive if a file gmoccapy2.glade does
  exist in the config dir. 

ver. 1.1.3
- it was possible to push btn_set_selected on offset page to set a coordinate
  system with G92 selected, or being in edit offset mode, this is now avoided.

ver. 1.1.2
- after changing units according to G20 / G21 the scales to be applied to
  the jog wheel pin (jog_vel and max_vel has not been changed, resulting in
  very large jumps after changing from metric to imperial, i.e. one count
  should move the slider 100 increments in metric, but did that amount also 
  in imperial, insteadt only advancing 4 steps.
- all sliders and vel infos are now changing according to G20/G21 beeing active.
- There is still work to do on the offsetpage widget, IMHO it is buggy

ver. 1.1.1
- small bug in macro button handling, if a macro was not found, gmoccapy
  raised an exception, because wrong variable name.

ver. 1.1
- this is the "final" version, ready to be included in a release candidate
  I did not change anything related to the last push, but after 1.10.2, I 
  made a mistake with the release number, this push correct the error.

ver. 1.0.3.2
- includes version number also in settings page as label in the botton button bar

ver. 1.0.3.1
- previous changes to NO_FORCE_HOMING resulted in automatic starting from
  line if a line has been selected in preview, I changed that so the line
  is just presetted, but not taken in care if run is pressed. The other way
  was to dangerous.

ver. 1.0.3
- solved some bugs in NO_FORCE_HOMING not handled the correct way
  with start button and mode changes after setup page
- get rid of hal_toggleaction_run and hal_action_stop, as the run widget
  caused one of the problems

ver. 1.0.2.1
- spindle feedback bar changes will not effect any more the
  speed label value. It was doble information and at the same
  time confusing for users. The spindle feedback bar will 
  indicate the real spindle speed and the feed label will show 
  the programmed value.

ver. 1.0.2
- solved a bug in getting active gcodes, because I took also the first 
  element of linuxcnc.stat.gcodes, but that seems not to be a gcode, but 
  some kind of control number or something like that, so it causes wrong 
  code and changed gmoccapy behavior in an erroneous way
- In this bug finding I also needed to change the gladevcp widget combiDRO
  to get the correct results

ver. 1.0.10.2
- solved a smal bug with _set_spindle in auto mode

ver. 1.0.10.1
- gremlin mouse button mode has not been initialized at start up

ver. 1.0.10
- changed the behavior of the spindle feedback bar and the speed labels
  we do not change the bar limits from negative to positive, we use
  from now on only abs values! That is the reason I did include a additional 
  abs in the postgui hal file
- corrected an error, not allowing to switch spindle on / off while program paused

ver. 1.0.9
- the ignore limits has not been called, due to a missing signal from the
  glade file, also the checkbox was hidden if machine off, so it could
  not be activated after hitting a limit switch.

ver. 1.0.8
- Thanks to Steffen Noack we got new gremlin function for the mouse button 
  behavior. Gmoccapy allows selecting the button mode from the settings page

ver. 1.0.7.1
- when a external ESTOP was active and the tbtn_estop has been clicked 
  it changed its color, but should not do so, solved
- when external estop was active, it was possible to click the on button
  and the GUI changed state making several widgets sensitive, that behavior
  was wrong, solved that.
- If you feed override has been changed and the machine went into estop, 
  a estop reset also reseted feed override to 100 % , now it will remain with 
  the value it had bevore estop.
- If a user activate logging actions, the logging was lost after shutting
  down the GUI, now the conmtent of alarm_history will be written to a 
  file called gmoccapy.log in your config dir. The file will be overwritten 
  on each shutdown of gmoccapy with the new content.
- EXIT Button is now only sensitive, when machine is switched off, so it is
  not longer possible to accidently shut down the machine.
- pressing estop from MDI mode with spindle on, resulted in an error, solved.

ver. 1.0.7
- Reworked the emergency button behavior as well as the 
  on/off button, as it was possible to set the GUI in an ESTOP_RESET
  state, even if an external SWITCH was in ESTOP State. The important
  bug has been found by Steffen, he also suplied the initial patch,
  witch has been adapted to my coding style ;-)
- Next changed the error handling, separated the error reporting from
  periodic to an own function, so we are able to lauch also our own 
  errors over the same chanel, and get error pin height and also 
  the sound will be played.
- Deleted some unneeded or doble code.

ver. 1.0.6.3
- Bug turning on flood with M8 and logging actions on,
  found by Stephen, solved that one

ver. 1.0.6.2
- changed the standard setting of box_custom_? from
  expand = True to expand=False, so the panel will fit better
  found from verser building Z_compensation

ver. 1.0.6.1
- forgot to set error pin height if an error ocures ;-)

ver. 1.0.6
- Stefan found an error in getiniinfo, getting the PROGRAM_PREFIX from 
  INI file, if the entry does not exist. Solved!

ver. 1.0.6
- introduced new locations for EMBEDDED_TABS, it is possible to use 
  in addition to the previous ones now also:

  * box_cooling (will hide the cooling frame and introduce your glade file)
  * box_spindle (will hide the spindle frame and introduce your glade file)
  * box_vel_info  (will hide the velocity frames and introduce your glade file)
  * box_custom_1 (will introduce your glade file left of vel_frame)
  * box_custom_2 (will introduce your glade file left of cooling_frame)
  * box_custom_3 (will introduce your glade file left of spindle_frame)
  * box_custom_4 (will introduce your glade file right of spindle_frame)

  requested from verser

ver. 1.0.5 
- because of wrong steps in initializing the increment pins
  has not been made, I changed the init order and now they 
  are there again ;-)

ver. 1.0.4 - only plasma
- make the gmoccapy_plasma glade pannels react to theme changes
  after the theme change, a restart of the GUI is necessary

ver. 1.0.4
- corrected the way of excecuting a program step by step 

ver. 1.0.3
- pressing the OFF button will bring you back to manual
  mode, because there is the "EXIT" button

ver. 1.0.2
- solved a spindle button issue and included a check so it
  is no possible to exceed the limits of the spindle with 
  override values. i.e. a spindle has a max of 6000 rpm and
  the user enters S 5500 M3 now he can increase the spindle 
  override, but it will be limited by 109 %, because otherwise
  he would ask the spindle to run faster than allowed.

ver. 1.0.1
- solved a bug, because I forgot to include some signals 
  in glade file, so no jogging with button was possible

ver. 1.0
- we reached the stable state! 
  gmoccapy get completely separated from gsvreen, resultng 
  in a faster reaction and easieer support and maintanance,
  as there is now less influence from the other gui.

ver. 0.9.9.9.16
- a manual entry in the preference file logo = True in
  combination with logofile = "absolute path to logofile"
  will hide the jog button, jog increments and ignore limits
  and display the logo instead.

ver. 0.9.9.9.15
- new hal pin gscreen.error as bit out, to show an error to the
  hardware, so a light can lit or even stop the machine. It will
  reseted with the pin gscreen.delete-message. This command will
  delete the first error and reset the gscreen.error pin to False 
  after the last error has been cleared. Messages or user infos
  will not affect this pin!  

ver. 0.9.9.9.14
- The usage of  "EMBED_TAB_LOCATION = box_coolant_and_spindle"
  will not hide the velocity widgets any more, plasma handles
  that one now over tool_info_panel 

ver. 0.9.9.9.13
- solved a bug switching on/off the spindle if also log_actions
  was active, 

ver. 0.9.9.9.12
- added two hal pin to reset feed and spindle override
  gscreen.reset-feed-override
  gscreen.reset-spindle-override 

ver. 0.9.9.9.11
- solved startup bug, window not starting in position and 
  dimensions as set in settings page
- set new limits to size adjustments

ver. 0.9.9.9.10
- added a refresh command to iconview, otherwise adding a file
  and reopeninmg the view, would not refresh the view, so the 
  added file could not be selected

ver. 0.9.9.9.9
- I added three new hal pin. This pin do allow to reduce or 
  enlarge the soft limits, so a pin is able to protect your 
  rotary table from colision, because if you do not use it, 
  you just reduce your soft limits, or you got a tool changer
  in the working area, you do not want a collision during normal
  work, but you are forced to enter the tool change area to change 
  a tool, so during tool change you enlarge the soft limits.
  The pins are documented in the WIKI. You will get an error if you
  reduce the limits and you are outside the area!

ver. 0.9.9.9.8
- toggle button setup was not handled correct by hardware 
  momentary switches, fixed that

ver. 0.9.9.9.7
- add gcode highlight by clicking in the preview
  clicking a line in the preview will highlight the
  corresponding line in gcode listing

ver. 0.9.9.9.6
- solved show tool edit after program run
  after running a program and changing back to manual mode it was not 
  possible to enter again the tool edit tab, as we where taken to MDI mode
  this was mainly caused by the check for G43 beeing active.

ver. 0.9.9.9.5
- changed override behavior:
  feed override reduce the max velocity and the feed velocity, 
  but the jog vel slider will remain with it's value, 
  the override value will reduce the jog vel also!

ver. 0.9.9.9.4
- added a new pin to delete the last message

ver. 0.9.9.9.3
- scl_feed_override bug at start up,
  did not handle G0 Override correct, 
  thanks to Marius for reporting that bug 

ver. 0.9.9.9.2
- scl_feed_override did not take influence on G0 velocities
  now it will take influence G1 and G0 velocities

ver. 0.9.9.9.1
- there was a bug in tool touch off, discovered by Jim
  solved that

ver. 0.9.9.9
- gmoccapy is now able to do auto tool measurement after an manual tool change
- introduced a ini config to simulate that
- still to do: If user clickes on aboart while the tool change message window is still open
  or he closes the window with the small X on the right upper corner, the hal pin will
  not be reste propery

ver. 0.9.9.8.2
- gmoccapy_plasma, changed pin names to follow the pin naming convention
- included THC Button state in persistaence (plasma.var)

ver. 0.9.9.8.1
- self.data.jog_increments now is self.jog_increments
  changed the increments handling a little bit
  so there is no need any more for self.no_increments
- changed code from self.gscreen.halcomp to self.halcomp, because it is the same ;-)
- prepared to be able to get an gmoccapy hal component

ver. 0.9.9.8
- bug in jogging with buttons and SHIFT hold down, as that would
  result in a move at max velocity, not taking in care the max vel slider
- renamed self.data.ob to self.onboard_kb to make code clearer
- self.data.plot_view was a relict from gscreen, because gscreen needs to toggle 
  through the views, we can select them directly, so this data is gone now
- self.data.hide_cursor is now self.hide_cursor so this is different to gscreen, so 
  both GUI should not influence each other
- self.data.key_event_last changed to self.last_key_event (distinguish from gscreen)
- corrected some typo in release notes
- self.data.file replaced with self.stat.file, as it is not necessary to hold that on data
- self.data.estopped replaced with self.stat.task_state
- self.data.machine_on replaced with self.stat.task_state
- self.data.all_homed is now self.all_homed so I know that this value is not set from gscreen
- self.data.spindle_speed and self.data.spindle_direction replaced with self.stat statemenets
- self.data.flood and self.data.mist replaced with stat statements
- self.data.active_feed replaced with stat statements, resulting in auto units change also for
  the speed labels
- self.data.diameter_mode is now self.diameter_mode so its clear it come from gmoccapy
- gremlin does react now on auto_units behavior of Combi_DRO
- all sliders (scales) change according to active Gcode G20 / G21
- executing an MDI command will change the keyboard button to allow linuxcnc.aboart()

ver. 0.9.9.7.6
- solved the bug wrong units on start up without the preference file
  I needed to replace gscreen.status with my my own status, because gscreen 
  does deliver wrong values!
- changed some more gscreen.data stuff to self.stat..., 
  because IMHO it is not necessary to use data to store something what is available
  through stat module
- replaced the preference file handling from gscreen to an own one, expecting that
  gscreen does not mess my files up, if no preference file will be given in the INI,
  we will use gmoccapy.pref stored in the config folder, so there could be different 
  configs with different settings 
- don't need gscreen.emc any more, all is done now directly with the linuxcnc python bindings
- I do not use any more the gscreen.ini, we use now the linuxcnc.ini version from the python module

ver. 0.9.9.7.5
- typo in initialize_preferences 
- deleted the statusbar widget
- no more option to use gscreen error handling
- no more option to use desktop notify
- the optional stops button worked opposite it should
- renamed some stuff from emc to linuxcnc or shortened the names
- onboard keyboard showing in edit mode corrected
- plasma.py changed order of getting widgets from builder, 
  to avoid errors at load time
- notification change line wrap mode to character, 
  so longer file names will not be cut

ver. 0.9.9.7.4
- the default tool change dialog now shows 
  the tool number and the tool description
- after deleting the preferences file you get an error starting the GUI, 
  because it tried to load a file " ", I deleted the SPACE to solve that

ver. 0.9.9.7.3
- plasma screen now hide also the vel_info_box
- minimal changes on the glade files
- modified the plasma.py file to support persistence variables
  the settings will be stored in plasma.var in your config dir
- I set the plasma.py file under GPL license

ver. 0.9.9.7.2
- introduced an better gcode highlight for sourceview

ver. 0.9.9.7.1
- replaced the hal_scale_jog_vel with a normal scale,
  as there is no need for a additional hal pin
- renamed hal pin 
  gscreen.hal_hbar_spindle_feedback to be gscreen.spindle_feedback_bar
  gscreen.hal_led_spindle_at_speed to be gscreen.spindle_at_speed_led
  This way all spindle pins are together in halshow 

ver. 0.9.9.7
- make gmoccapy react to external mode changes, i.e. start program with
  net start halui.mode.auto => halui.program.run <= hardware.button

ver. 0.9.9.6.3
- changed again the plasma layout, as Marius still want more widgets
- most hal labels are not needed any more, so I changed them to gtk.label

ver- 0.9.9.6.2
- added a lot of hal pin to gmoccapy_plasma, with the new 
  plasma.py file 
- reworked the plasma.glade file to fit Marius needs
- new order of configs, many files have been moved by Dewey Garret

ver. 0.9.9.6.1
- solved a bug in plasma.py, having a call without function

ver. 0.9.9.6
- made a new config folder to show gmoccapy as plasma screen
- included some minor changes to be able to place user glade panels 
  over the coolant and spindle frame, hiding the original widgets
  so plasma screen can easy be realized
  This will hide also the spindle speed label in gcode info frame.
- the tool info frame can also be hidden by a user glade file, because tool
  info is not needed for plasma.
- corrected an error in handling python calls in / for user glade screens,
  as example introduced plasma.glade plasma.hal and plasma.py demonstrating
  all possible communications

ver. 0.9.9.5
- added color chooser for homed and unhomed colors, as recommended
  by BigJohnT to help people suffering from protanopia (red/green weakness)
- corrected an error updating the DRO colors in lathe mode

ver. 0.9.9.4
- initializing some warnings at start up, corrected that
- deleted some unneeded print messages

ver. 0.9.9.3
- if the user tried to make a new file and there where no 
  RS274NGC_STARTUP_CODE in the INI file, an exception has been thrown
  fixed that bug
- if the user tried to make a new file, after he made already one,
  an exception has been thrown, because the file was loaded already
  fixed that bug

ver. 0.9.9.2
- solved a bug, entering the edit mode from auto mode, caused by 
  a typo in a widget name

ver. 0.9.9.1
- solved a bug showing the gremlin DRO, caused by a typo in a widget name
- some buttons and widgets did not have tooltip text, added that ones
- corrected German translation
- corrected Spanish translation

ver. 0.9.9
- introduced a new DRO, showing all three positions (Abs, Rel, DTG) at ones
  user can toggle the DRO by clicking on them
- The new DRO also indicates the actual coordinate system
- The new DRO will change its units according to the active gcode (G20 / G21)
- There are still the three buttons, but they are hidden by default,
  this can be changed on the settings page, but when the buttons are visible,
  the user looses the auto units feature of the DRO
  Hope too get the permission from the users to delete that button as soon as possible
- made the documentation for IconViewFileSelection
- made the documentation for Combi_DRO
- This change saved some lines of code in gmoccapy.py and made the code
  a lot easier to understand
- updated German translation
- updated Spanish translation

ver. 0.9.8.4
- diameter dro does not show imperial units, even if machine units are imperial, fixed.
- tool info only with three digits in imperial mode, now 4 digits
- active feed and active vel label not in machine units, if in imperial mode, fixed
- cosmetic changes to gmoccapy_lathe.ini
- introduced a imperial lathe ini

ver 0.9.8.3
- BUG: forget to update the coordinate system after changing the error system,
  causing the ABS/REL button not showing the correct label, fixed
- BUG: inserted Jog Increment continuous instead of 0, so could cause an exception
  on translated GUI, fixed
- BUG: when changing the mode from outside, i.e. starting a program with an external button, 
  the GUI did not change the style to auto mode, so it was not consistent, fixed
- deleted unnecessary icon and introduced new icon for machine on off and for the
  mode button (Thanks to Dejan/probamo)

ver. 0.9.8.2
- make the design from spindle and coolant frames more beautiful
- added both to a hbox, so later this box may be replaced by user controls,
  i.e. plasma cutters

ver. 0.9.8.1
- introduced new Serbian translation

ver. 0.9.8
- introduced notification as gmoccapy error messaging system
- rebuild the settings page to make the message system settings available
- new default startup position
- changed DRO textcolor label to DRO background color label, because that is what you change
- jogging with keyboard will jog full speed if SHIFT is hold down
- <Super_L> key will delete the last message of gmoccapy message system
- <STRG>+<SPACE> delete all gmoccapy messages at once
- switching on the machine will reset the GUI to manual mode
- the setup button is no longer a member of the mode radiobuttons
  it is now a toggle button, so pressing it twice will bring
  you to manual mode

ver. 0.9.7.5.1
- missed to change the version number in gmoccapy_handler.py
  corrected that

ver. 0.9.7.5
- translation of the Continuous Jog Button now possible
- solved a bug, when selecting the continuous jog button when it was translated
- added ABS, DTG and GTD to translation file
- added "show or hide tool path" to translation
- corrected a bug changing spindle bar min and max values changed the widget only on restart
- added to translation the complete gscreen.py file, even if there are a lot of things 
  nobody need to translate, but that gives the possibility to translate the entry dialogs 
  and some button labels

ver. 0.9.7.4
- added the Serbian translation
- corrected some mistakes in Spanish translation
- moved some files to get them in the corresponding locale folder
- modified .gitignore files so my locale folder will not be ignored any more

ver. 0.9.7.3.1
- removed some print/debug lines
- new order of the button in Auto Mode (requested from svenakela)
- corrected some translation errors
- changed the order of the jog button and the DRO, now when jogging on a touch screen, the
  right hand will not cover the DRO. Better handling?!
- deleted the button reload from auto to get space for fullsize_preview, so the user can switch to
  fullsize preview, while the program runs.
- errased the close button in bottom button list edit, because the back button does the same 
- corrected the hardware button behavior, was needed because of the new order and 
  the reason that not "clicked" is emitted, but "pressed"
- button edit offsets now shows automatically the offset page
- the buttons for fullsize preview on auto and edit offsets getting yellow when active
- pressing the button new in edit mode will make a new file in /tmp with the content from
  [RS274NGC] "RS274NGC_STARTUP_CODE" followed by 3 linefeed and an M2

ver. 0.9.7.3
- the buttons tbtn_view_dimension and tbtn_view_tool_path of the gremlin view
  was in an undefined state after the start of gmoccapy. Now the state will be 
  set according to the state when leaving the GUI, default is show both
- the state view of gremlin was by default "p" no the state on leaving the gui 
  will be restored after restarting the GUI
- corrected an error entering the settings page, and aborting the dialog, then the
  message appears two times, because the signal used was clicked and that is emitted twice
  on a rbt when changing the state of the buttons in the group

ver. 0.9.7.2
- check for NO_FORCE_HOMING included

ver. 0.9.7.1
- changed the structure of the files, so the user do not need to copy files after an update
  he only needs to adapt his config files, this follows the new gscreen structure and 
  all files should be present after installing linuxcnc
- corrected some typos in code
- changed my way to show the entry dialog as integer only to the gscreen way
- added a file chooser to settings page to select the jump to dir for IconFileSelection
- file extensions are now taken from INI file and converted from raw data to correct
  format in an own function, taken in care in IconFileSelection and file to load chooser
- solved an error in IconFileSelection, crashing the GUI if button up was pressed being in the root dir

ver. 0.9.7
- added a file selection dialog, for touch screen use
- in MDI mode it is now possible to add more commands, even if the interpreter is running
- do not block any more the spindle buttons while the interpreter is running,
  so spindle can be switched on and of at any time
- added a selection for show keyboard on file selection in settings page
- changes button home_4 to show different icon, depending on INI settings of 4th axis
- moved some code "G95 related" from periodic to _update_vel
- corrected some align values in glade file
- removed units from max_vel_label (glade file)
- corrected hardware button behavior
- added again a sim hardware ini file
- uniform usage of "" instead of sometime '' (just to clear python style)
- user can select on settings page, if he want the offsettab or the preview tab 
  to be displayed as default, the ntb_tabs are shown, so changing is possible at any time
- prepared to get later our own error handling, introduced Notification Class, at the moment disabled
- corrected an error if setting the coordinate system after setting axis values in touch off dialog

ver. 0.9.6.1
- fixed a bug editing a tool while G43 is active!
- added a feature, that will update G43 after a toolchange if it was active on toolchange start
- tooloffset in Information frame does now show the real pin values motion.tooloffset.z if
  connected to gscreen.tooloffset_z in postgui.hal file (for lathe also x values)
- cleared the code from some unnecessary ".gscreen." 

ver. 0.9.6
- included the 4-th axis, buttons will change according to INI file settings
- corrected not taken care of PROGRAM_PREFIX path set in the INI file
- G95 Bug solved, it was caused from sim_spindle_encoder.hal, using now a modificated hal from axis
- cleared a warning of missing handler

ver. 0.9.5.1
- bug in spindle switching while in LOG Mode
- ESC and F1 keys will work now, even if use Keyboard shortcuts is not activated
- solved a bug in run_from_line, the start line was not reseted after program stop, 
  and I missed to reset self.data.restart_dialog to None

ver. 0.9.5
- Keyboard shortcuts, now ESCAPE only aborts and F1 emit estop
- spindle can be switched on and off while program is paused, without getting an error
- sourceview now with search and do / redo, while in edit mode
- added an offset page in ntb_preview with the possibility 
  * to select directly an coordinate system
  * edit the coordinates of every system
  * give the systems human names
- fixed a bug in tooledit, trying to touch of a tool not in spindle, I must check if this should be allowed
  or if it better only allowing touch off with the tool in spindle
- changed gmoccapy keyboard to "onboard", if the layout is not correct, the following command will correct it
  setxkbmap -layout <your contry letters>       
  gb for Great Britan, de for germany, etc.
- changes in gscreen broke gmoccapy cycle start seems that hal_action run is not any longer permitted,
  now hal toggle action is needed, corrected this
- changed the entry dialog, so in some cases it is only possible to enter integer values
- added a button to select a tool by its number, it is easier, if you have a lot of tools
- cleared the code a lot
- settings page, it is possible to select if you want to use the onbord keyboard also in tooledit page 
  and in offset page editing
- deleted the hardware button simulation ini, because it will not work as it should and I was not able
  to find a solution. 

ver. 0.9.4
- corrected a lot of typo, thanks to David for his help
- renamed some widgets from "cero" to "zero"
- deleted one increment in every INI file, so the GUI fits better to smalest screen size
- translation to german included and prepared for more langauges
- there was still an error in key handling with incremental jogging, hope I solved it now for final
- changed the dialog "run_from_line" to use gscreens default, resulting in the need to rename
  "hal_sourceview" to "gcode_view"
- renamed all pins and definitions from "overide" to "override" because of typo
- avoid getting to the touch off button, while the machine is not homed
- hide Y touch off buttons in lathe mode
- solved a bug executing a command constantly related with feed and periodic
- Tool change from tool editor now works like it should even with T1 M6 as with M61 Q1
- the tool in spindle will be checkt if you enter the tool editor.

ver. 0.9.3.2
- alligned the jog_button and jog_rates frame on the top (just cosmetic)
- The Page-up and Page_Down keyboard keys moved the Z axis in oposide directions
- Feed values will only be shown with digit if G95 is active
- added classicladder button to the list of buttons to be able to handle it with hardware button
- changed hardware button handling to fit also to lathe mode
- included a test to avoid speeding the spindle over its limit using the spindle speed overide
  i.e. max = 6000 but S = 5500 and overide = 120 % would result in 6600, but only 6000 is possible
- also check spindle speed if the commands are given trough MDI and overide is to high will reduce
  the overide value to max allowed

ver. 0.9.3.1
- A message window will warn the user in case he try to use G95
- Changed the requiered screen size to fit on 979 x 750 

ver. 0.9.3
- included the patch for key_jogging from Chris
- support now also back tool lathes
- after M61 Q tool change, the Gui didn't leave the MDI modem resulting in problems
- the btn_view_Y2 has now a yellow background
- changing the max vel slider had no efekt, I fixed this

ver. 0.9.2
- added lathe mode
- added classicladder button
- added button for tool touchoff in X and Z axis
- corrected the key handling, now also F1 and F2 works and ESC emit emc.aboart()

ver. 0.9.1.2
- trying to jog the machine with the keyboard
  a python error was lauched, because Chris renamed the
  data.event_up to data.event_last
  solved this renaming the data also in gmoccapy

ver. 0.9.1.2
- missed renaming one widget in code, due to the changes
  on the settings page, resulting in an exception
  solved this renaming the widget in gmoccapy

ver. 0.9.1
- show offsets and show dtg for gremlin are only sensitive if show gremlin DRO 
  is actice, other behavior makes no sense
- settings page can be reached now also in estop state
- desktop notify can be disabled in settings page, makes the gui faster
- file to load on start up can be selected on settings page
- in init_file_to_load added a selection of filters given in INI File
- button save and run has now a tool tip text, it wasn't shown, because it was set
  translatable and no translation was availible
- check on macro excecution for errors before starting the macro
- added a checkbox to select the use of keyboard shortcuts
- reconnected the sim spindle to gmoccapy
- in MDI Mode giving S0 now switch the spindle off
- from INI [DISPLAY] min_spindle_overide is used to set the slider limits
- spindle settings moved from INI to the settings page and preference file
- def init_gremlin now in gmoccapy, to avoid widget name conflicts
- DRO settings changed in settings page, checkboxes instead of toggle button
  and all settings related to DRO in one frame
- added scale settings for the hardware mpg encoders to move the sliders,
  otherwise for max vel beeing 14000 the changes was to small, counting one by one
- hardware keyboard now works also in settings page and debug page
- Screen2 can be shown now, but I noticed, that if the screen is very complax, 
  the application will crash!

ver. 0.9.01
- fixed a bug in keyhandling mentioned by Chris
  * changing the jog velocity while jogging in continious caused by focus 
    jumping from widget to widget when holding down a key
  * Keyboard autorepeat caused moving the machine by several 
    increments insteat of only one. 

ver. 0.9.0
- unlock settings now with tool tip text
- I forgot an letter in hal pin feed-overide-counts
- The button Rel/Abs changes its label according to the active coordinate system
  and its background color does change if G54 is not active
- solved the estop error not showing the correct sate on start up
- solved a bug giving value 0 to macro, the entry widget checkt this value as False
- merged with new master and also with gscreen with new widget names
- gscreen fired a error when there is no keyhandling in gmoccapy, 
  i introduced a dummy
- after start some buttons wasn't set in correct state, 
  it was possible to eneter MDI Mode without homing before.
- avoid switching screens to MDI and back to manual on tool change
- cooling mist and lube can be switched on and off everytime you want
- you can jog the machine in 3 axis with the keyboard button, but only in manual mode
  this is just a test, I don't now if I leave this feature in gmoccapy
- as run from line is not very secure and also not working yet correctly,
  I made it selectable in the settings page
- in settings you can select now qwertz or qwerty keyboard layout
- in settings you can select whether the On Screen keyboard are shown by default or not
  for mode MDI and mode EDIT separetly

ver. 0.8.9
- new icon for btn_user_tabs
- new icon for btn_fullsize_preview
- all dialogs do react to keyboard input now
- System theme has not been set properly on start up, fixed this.
- added a new place for user tabs, within ntb_preview, showing then the tabs
- added a test to show actual velocity in machine units.
- added hal pins to be able to connect a hardware selection switch to jog_increment radio button
- entering the edit mode sets the focus in the hal_sourceview widget, so working with keyboard
  is possible without any cklick
- After edditing the tool offsets in table, the button "Apply" will not only aply the changes to
  tool table, but also to the tool in spindle, but only if G43 is in active g-codes
- speeded up the tool change screen refresh, by adding self.on_hal_status_interp_idle(self)
  in the button press event
- added hal pins for joging the axis with hardware buttons for each axis in self.data.axis_list
- deleted the metric button from settings page
- changed hal_pin_names to use "-" insteadt of "_"
- on tool table page I missed to add tool tip text to the buttons, I added them now
- added a hal pin to unlock the settings page, so a key-switch can be used to unlock the page

ver. 0.8.8
- there was an error getting the increments from the INI file
  I begin counting from 1 instead of 0, that is why the first increment was missing
- solved a problem while switching flood or mist on/off with MDI commands, the buttons got active
  like they should, but the icon didn't change from on/off, solved that changin _update_coolant
- when the tool was changed using M61Q, the screen has not been set back to manual mode properly,
  this was caused by asking if tool:, but as at the beginning toolnumber is cero, this decision was 
  taken wrong, after changing it to if tool or tool == 0: it does work
- running a macro changed the image and function of the keyboard button, 
  but the tool tip text didn't change, I fixed this.
- it was possible to reduce the max_vel of the machine less than the jog_velocity,
  so it was possible to jog faster than the max velocity you set with the corresponding slider
  I fixed this, if you reduce max-vel lower than jog_vel, jog vel will be reduced too
- spindle bar won't grow with negative values (spindle reverse); I know it worked allready, why
  did I have to fix this again?
- entereing the MDI Mode sets the focus directly to the enty of hal_mdihistory
 
ver. 0.8.7
- changed the button to delete status bar messages from text to icon
- changed the INI files to display the side panels viceversa
- made vcp_box.glade fit better in the screen

ver. 0.8.6
- all buttons on settings now with active back color "yellow"
- added a button to set logging or not, will add later a option to 
  store the logging in a hidden file
- solved a bug switching fullscreen views, I missed to add 
  a size request to window1 in glade file, 
  smalest window possible = 979 x 782 
- added a button to clear the statusbar information
- new hal-pin jog_increment as float out pin
- copied init increments from gscreen to gmoccapy and modified it
  to not get added an contious at the end, I want it with first upper
  letter and as first position, to not get problems while creating the 
  buttons dynamecaly
- removed some print commands
- changed the test for gremlin DRO from preferences file to button state
- made hal pins to conect MPG Wheels to the sliders
	* gscreen.spindle_overide_counts
	* gscreen.feed_overide_counts
	* gscreen.max_vel_counts
	* gscreen.jog_speed_counts
  Does anyone know, why the connection in postgui hal change the jog counts by one and 
  modify this way the scale from 100 to 101?

ver. 0.8.5
- included a button to toggle gremlin fullview
  but getting out of the fullscreen mode will hide the DRO not
  taking care of preferences, I do not not why
- implemented a function to set gremlin grid
  Grid is set in INCH, not taking care of the preferences file

ver. 0.8.4
- thanks to Chris the software starts now on a new installation with
  "Follow System Theme" theme
- Keyboard now with upper and lower letters (SHIFT Key included)

ver. 0.8.3
- there was still a problem with DTG and DRO switching,
  now everythink is working like it should
- now not the gscreen colors are used, on first start every color
  is set to black, after that the colors are handled as they are 
  in gscreen.
- Delete MDI is working, but until now only for the running session
- I deleted some lines of code in 0.7.05, resulting in demaging the tool editor, fixed this
- reorganized the order from buttons to be modified during INIT, now they
  are in alphabetic order
- made several INI Files to show the behavior with side panels and user tabs
  and simulated hardware button
- included the following buttons in settings page
  - enable gremlin DRO
  - Show gremlin DTG 
  - show gremlin offsets
- check if tool in spindle == tool to change, then give message and return

ver. 0.8.2
- solved the error related to the DTG Button
- clearing the code
- added a SPINDLE section to INI to get the min and max spindle speed
- change the spindle bar propertys by code to show also negative revolutions
- spindle speed label shows also negativ values if spindle runs reverse
- solved a bug in macro excecution, when wrong values has been given

ver. 0.8.1
- clearing the code
- unlock code now in the hiddeen preference file, but I still need
  to include an change function in the settings page
- emergency exit is now default on start
- there is still an error changing from DTG to GTD in ABS and REL changing

ver. 0.8.0
- colorselection for the diferent dro states now works, but there is 
  still a small error, after changing a color, it will not show the 
  eventboxes in propper color. After a new start of gmoccapy it works
  like it should. I searched allready three days for a solution, but I 
  couldn't find any.
- removed some unused print() commands
- gmoccapy.glade is now able to add side panels, 
  on the left and right
- user tabs are working, I need to make some dokumentation

ver. 0.7.09
- changed tool change dialog from axis dialog to gscreen dialog,
  you can switch back if you like by comenting the tool change lines in 
  postgui.hal file.
- btn not implemented clicked now logs the button

ver. 0.7.08
- merged with /origin/master instead of mah/master
- using now hide_buttonbox from tooledit widget instedt of hiding the box by an own method
- solved a problem reported by Chris, blinking coolant button. The behavior was caused
  from _update_coolant()
- renamed tbtn_coolant to tbtn_flood
- bugfix on macro goto position caused from self.on_btn_macro_pressed()
- finshed the hal connections also for the vertical buttons
  to test with simulated buttons, you have to uncomment the coresponing lines in INI and postgui.hal
  then two buttonlist will aperear
- There was a problem excecuting the macros with the hardware button, 
  user where able to start a second macro while the first was still running, solved that
- Running macros can be aborted, the show_keyboard button will change it's image and 
  get an other function
 
ver. 0.7.07
- solved a problem switchung main button list, wait on tool change has not
  been reseted properly
- now I hide the hbuttonbox of tooledit widget instead of every button,
  this saved 6 lines of code :-)

ver. 0.7.06
- finshed the h_button hardware pin connection
- macros can be run by hardware button

  to test the features, just uncomment 3 lines in INI File DISPLAY section, see comments there
  and uncomment the connections made in gmoccapy_postgui.hal
  I need someone to test this with real hardware, as with gladevcp buttons there seems to be
  a problem with the mode settings, change a tool with M61 will not bring you back in manual mode 
  using the software keys, due to gladevcp in my opinion.

ver. 0.7.05
- made the tooledit button work on my layout
- all bottom button have there own hal pins, witch can be connected to hardwre 
  button so no touch screen is needed. v_button still to do and macros not working jet.
- added an icon for tool-change

ver. 0.7.04
- added preference file path to INI file
- added the release notes file
- hide the button of tooledit widget
- all tool change thinks are now done with the tool_edit_widget
  by selecting the tool from the list

ver. 0.7.03
- added Release Number to title bar,
  so it is easer for users to see if they got
  the latest release

ver. 0.7.02
- added the capability to launch macros with variable parameters
- MDI and Auto mode can now only be reached if state all_homed = True
- added sample macros

ver. 0.7.01
- changed the foldername to use only lower letters
- cleared the directory gmoccapy, all hal files are now again
  symbolic links
- renamed the scripts folder to subroutines and moved it in the
  nc_files folder
- icons folder not touched at the moment
- changed INI File to use other paths and renamed SCRIPTS to nacros, next it will be
  changed to be the same as in touchy

ver. 0.7.00
- finished the keyboard, it does now scroll in EditMode
  as well as in MDI Mode
- Solved a problem with the index tool button, it stays unsensitive after
  an machine off, now it is working like it should
- smaler changes in the icon folder

ver. 0.6.09
- some more new icon
- merged with master
- added some new icon
- changed the position from the right button
- in emergency state the button to close gmoccapy was disabled,
  so it wasn't possible to close the application in fullscreen mode.

ver. 0.6.08
- Virtual Keyboard included and working on MDI and AUTO Mode
  unfortunately the coresponding windows will not scroll as they should
- bug found in setting G54 origin, solved!

ver. 0.6.07
- I finished the keyboard, in editing mode it is working fine
  in MDI mode I have to find out, how to move the selected row in the
  hal_mdi_history using the cursor buttons!

ver. 0.6.06
- Edit program works
- make new programs works too
- new keyboard with nearly all keys
- Attention: On editing a program the keyboard need some more
  fine polishing, to allow editing text in the middle and I have to
  include cursor keys

ver. 0.6.05
- begin to include the edit mode for g-code programs
  not working jet, still work to do
  The grafics part is finished, just the icon are not very nice

ver. 0.6.04
- changed hal pin connections to control homing to gscreen matter
  so nearly all conections to postgui hal are not needed any more
- all messages prepared to get translated _(message)
- Run from line is now included, but at the moment without control
  of previos lines, this is still to do.
- settings page begin to work
  + fullscreen is included
  + hide cursor is working
  + sounds are selectable
  + spindle start rpm is working

ver. 0.6.03
- optional blocks now working
- optional stops working too
- added missing button in MDI Keypad (I missed I ; J ; K )
- cooling and spindle buttons react to emc stat, so setting an M7 will
  toggle the corresponding button, so will an M3 or an M5
  This is not working in AUTO MODE with interpreter running to avoid error
  messages.
- changed the test files to have optional blocks and stops.

ver. 0.6.02
- all icons moved to icon folder
- implemented get toolinfo, tool frame now shows correct data
- implemented user mdi command through gscreen, so there is no need
  any more to import linuxcnc
- added some more icon

ver. 0.6.01
- solved the problme that widgets don't get sensitized after a pause
  and a later resume.
- there will apear an error if in Pause you push coolant or spindle button
  because the command mode will be changed, the programm will run later as usual

ver. 0.6.00
- mostly I changed the name to Gmoccapy as invented by Chris
- some minor changes in code

ver. 0.5.08
- program label at start up was wrong
- after pushing manual button staying in settings, main button list was not changed back to manual
- max velocity now again in units per minute, seems Chris changed it back

ver. 0.5.07
- axis setting to an value with preferences is working fine
- DRO labels changing colors like they should
- Added a button to set tool with M61 Q?
- Commented a little bit more the code
- prepared INI File for scripts execution
- Fullscreen is included now
- HalScope Button added
- Prepared to execute MDI commands,
  will later read them also from the INI File as HALUI_COMMAND

ver. 0.5.06
- added hal scope
- cleared the code a little bit more
- removed unused jog-increment-out pin

ver. 0.5.05
-cleaned up and solved merge conflicts
 This is a version for first tests by users!
