diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..d159169 --- /dev/null +++ b/LICENSE @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/gcs.py b/gcs.py index ed00d97..3265696 100755 --- a/gcs.py +++ b/gcs.py @@ -1,6 +1,6 @@ #!/usr/bin/env python """---------------------------------------------------------------------------- - gcode-step.py: + gcs.py: ----------------------------------------------------------------------------""" __appname__ = "Gcode Step and Alignment Tool" @@ -17,7 +17,8 @@ __author__ = ','.join(__authors__) __credits__ = [] __copyright__ = 'Copyright (c) 2013' -__license__ = 'GPL' +__license__ = 'GPL v2' +__license_str__ = __license__ + '\nhttp://www.gnu.org/licenses/gpl-2.0.txt' # maintenance information __maintainer__ = 'Wilhelm Duembeg' @@ -25,7 +26,7 @@ # define version information __requires__ = ['pySerial', 'wxPython'] -__version_info__ = (0, 0, 1) +__version_info__ = (0, 8, 0) __version__ = 'v%i.%02i.%02i' % __version_info__ __revision__ = __version__ @@ -106,7 +107,10 @@ gID_MENU_GOTO_PC = wx.NewId() gID_TIMER_MACHINE_REFRESH = wx.NewId() -gID_TIMER_CV2_CAPTURE = wx.NewId() + +gID_CV2_GOTO_CAM = wx.NewId() +gID_CV2_GOTO_TOOL = wx.NewId() +gID_CV2_CAPTURE_TIMER = wx.NewId() # ----------------------------------------------------------------------------- # regular expressions @@ -248,6 +252,10 @@ def __init__(self): # CV2 keys self.keyCV2Enable = "/cv2/Enable" self.keyCV2CapturePeriod = "/cv2/CapturePeriod" + self.keyCV2CaptureWidth = "/cv2/CaptureWidth" + self.keyCV2CaptureHeight = "/cv2/CaptureHeight" + self.keyCV2XOffset = "/cv2/X-Offset" + self.keyCV2YOffset = "/cv2/Y-Offset" # ----------------------------------------------------------------------- # config data (and default values) @@ -272,6 +280,10 @@ def __init__(self): # CV2 data self.dataCV2Enable = False self.dataCV2CapturePeriod = 100 + self.dataCV2CaptureWidth = 640 + self.dataCV2CaptureHeight = 480 + self.dataCV2XOffset = 0 + self.dataCV2YOffset = 0 def Load(self, configFile): # read main app data @@ -311,6 +323,22 @@ def Load(self, configFile): configData = configFile.Read(self.keyCV2CapturePeriod) if len(configData) > 0: self.dataCV2CapturePeriod = eval(configData) + + configData = configFile.Read(self.keyCV2CaptureWidth) + if len(configData) > 0: + self.dataCV2CaptureWidth = eval(configData) + + configData = configFile.Read(self.keyCV2CaptureHeight) + if len(configData) > 0: + self.dataCV2CaptureHeight = eval(configData) + + configData = configFile.Read(self.keyCV2XOffset) + if len(configData) > 0: + self.dataCV2XOffset = eval(configData) + + configData = configFile.Read(self.keyCV2YOffset) + if len(configData) > 0: + self.dataCV2YOffset = eval(configData) def Save(self, configFile): @@ -332,6 +360,10 @@ def Save(self, configFile): # write CV2 data configFile.Write(self.keyCV2Enable, str(self.dataCV2Enable)) configFile.Write(self.keyCV2CapturePeriod, str(self.dataCV2CapturePeriod)) + configFile.Write(self.keyCV2CaptureWidth, str(self.dataCV2CaptureWidth)) + configFile.Write(self.keyCV2CaptureHeight, str(self.dataCV2CaptureHeight)) + configFile.Write(self.keyCV2XOffset, str(self.dataCV2XOffset)) + configFile.Write(self.keyCV2YOffset, str(self.dataCV2YOffset)) """---------------------------------------------------------------------------- Embedded Images @@ -1681,7 +1713,7 @@ def CreateGotoButtons(self): self.loadJogButton = wx.Button(self, label="Load Jog") self.loadJogButton.SetToolTip( - wx.ToolTip("Loads current jogging from memory")) + wx.ToolTip("Loads jogging from memory")) self.Bind(wx.EVT_BUTTON, self.OnLoadJog, self.loadJogButton) vBoxRightSizer.Add(self.loadJogButton, flag=wx.EXPAND) @@ -2759,7 +2791,7 @@ def OnAbout(self, e): aboutDialog.WebSite = ("https://github.com/duembeg/gcs", "GCode Step home page") #aboutDialog.Developers = __authors__ - #aboutDialog.License = wordwrap(licenseText, 500, wx.ClientDC(self)) + aboutDialog.License = __license_str__ # Then we call wx.AboutBox giving it that info object wx.AboutBox(aboutDialog) @@ -3416,31 +3448,87 @@ def InitUI(self): flexGridSizer = wx.FlexGridSizer(2,2) # Add cehck box - st = wx.StaticText(self, wx.ID_ANY, "Enable CV2") - flexGridSizer.Add(st, flag=wx.ALIGN_LEFT|wx.ALIGN_CENTER_VERTICAL) - - self.cb = wx.CheckBox(self, wx.ID_ANY, "") #, style=wx.ALIGN_RIGHT) + self.cb = wx.CheckBox(self, wx.ID_ANY, "Enable CV2") #, style=wx.ALIGN_RIGHT) self.cb.SetValue(self.configData.dataCV2Enable) flexGridSizer.Add(self.cb, - flag=wx.ALL|wx.ALIGN_LEFT|wx.ALIGN_CENTER_VERTICAL,border=5) + flag=wx.ALL|wx.LEFT|wx.ALIGN_CENTER_VERTICAL, border=5) + + st = wx.StaticText(self, wx.ID_ANY, "") + flexGridSizer.Add(st, flag=wx.ALIGN_LEFT|wx.ALIGN_CENTER_VERTICAL) + - # Add spin ctrl + # Add spin ctrl for capture period + self.scPeriod = wx.SpinCtrl(self, wx.ID_ANY, "") + self.scPeriod.SetRange(1,1000000) + self.scPeriod.SetValue(self.configData.dataCV2CapturePeriod) + self.scPeriod.SetToolTip( + wx.ToolTip("NOTE: UI may become unresponsive if this value is too short\n"\ + "Sugested value 100ms or grater" + )) + flexGridSizer.Add(self.scPeriod, + flag=wx.ALL|wx.LEFT|wx.ALIGN_CENTER_VERTICAL, border=5) + st = wx.StaticText(self, wx.ID_ANY, "CV2 Capture Period (milliseconds)") flexGridSizer.Add(st, flag=wx.ALIGN_LEFT|wx.ALIGN_CENTER_VERTICAL) - - self.sc = wx.SpinCtrl(self, wx.ID_ANY, "") - self.sc.SetRange(1,1000000) - self.sc.SetValue(self.configData.dataCV2CapturePeriod) - flexGridSizer.Add(self.sc, + + + # Add spin ctrl for capture width + self.scWidth = wx.SpinCtrl(self, wx.ID_ANY, "") + self.scWidth.SetRange(1,10000) + self.scWidth.SetValue(self.configData.dataCV2CaptureWidth) + flexGridSizer.Add(self.scWidth, flag=wx.ALL|wx.LEFT|wx.ALIGN_CENTER_VERTICAL, border=5) + + st = wx.StaticText(self, wx.ID_ANY, "CV2 Capture Width") + flexGridSizer.Add(st, flag=wx.ALIGN_LEFT|wx.ALIGN_CENTER_VERTICAL) + + # Add spin ctrl for capture height + self.scHeight = wx.SpinCtrl(self, wx.ID_ANY, "") + self.scHeight.SetRange(1,10000) + self.scHeight.SetValue(self.configData.dataCV2CaptureHeight) + flexGridSizer.Add(self.scHeight, + flag=wx.ALL|wx.LEFT|wx.ALIGN_CENTER_VERTICAL, border=5) + + st = wx.StaticText(self, wx.ID_ANY, "CV2 Capture Height") + flexGridSizer.Add(st, flag=wx.ALIGN_LEFT|wx.ALIGN_CENTER_VERTICAL) + + # Add spin ctrl for offset x + self.scXoffset = FS.FloatSpin(self, -1, + min_val=-100000, max_val=100000, increment=0.10, value=1.0, + agwStyle=FS.FS_LEFT) + self.scXoffset.SetFormat("%f") + self.scXoffset.SetDigits(4) + self.scXoffset.SetValue(self.configData.dataCV2XOffset) + flexGridSizer.Add(self.scXoffset, + flag=wx.ALL|wx.LEFT|wx.ALIGN_CENTER_VERTICAL, border=5) + + st = wx.StaticText(self, wx.ID_ANY, "CAM X Offset") + flexGridSizer.Add(st, flag=wx.ALIGN_LEFT|wx.ALIGN_CENTER_VERTICAL) + + # Add spin ctrl for offset y + self.scYoffset = FS.FloatSpin(self, -1, + min_val=-100000, max_val=100000, increment=0.10, value=1.0, + agwStyle=FS.FS_LEFT) + self.scYoffset.SetFormat("%f") + self.scYoffset.SetDigits(4) + self.scYoffset.SetValue(self.configData.dataCV2YOffset) + flexGridSizer.Add(self.scYoffset, + flag=wx.ALL|wx.LEFT|wx.ALIGN_CENTER_VERTICAL, border=5) + + st = wx.StaticText(self, wx.ID_ANY, "CAM Y Offset") + flexGridSizer.Add(st, flag=wx.ALIGN_LEFT|wx.ALIGN_CENTER_VERTICAL) + vBoxSizer.Add(flexGridSizer, 0, flag=wx.ALL|wx.EXPAND, border=20) self.SetSizer(vBoxSizer) def UpdatConfigData(self): self.configData.dataCV2Enable = self.cb.GetValue() - self.configData.dataCV2CapturePeriod = self.sc.GetValue() - + self.configData.dataCV2CapturePeriod = self.scPeriod.GetValue() + self.configData.dataCV2CaptureWidth = self.scWidth.GetValue() + self.configData.dataCV2CaptureHeight = self.scHeight.GetValue() + self.configData.dataCV2XOffset = self.scXoffset.GetValue() + self.configData.dataCV2YOffset = self.scYoffset.GetValue() """---------------------------------------------------------------------------- gcsCV2Panel: @@ -3467,15 +3555,15 @@ def __init__(self, parent, config_data, cmd_line_options, **args): self.t2cvwQueue = Queue.Queue() self.visionThread = None - self.captureTimer = wx.Timer(self, gID_TIMER_CV2_CAPTURE) + self.captureTimer = wx.Timer(self, gID_CV2_CAPTURE_TIMER) self.bmp = None self.InitUI() # register for events - self.Bind(wx.EVT_PAINT, self.OnPaint) + self.Bind(wx.EVT_PAINT, self.OnPaint) self.Bind(wx.EVT_IDLE, self.OnIdle) - self.Bind(wx.EVT_TIMER, self.OnCaptureTimer, id=gID_TIMER_CV2_CAPTURE) + self.Bind(wx.EVT_TIMER, self.OnCaptureTimer, id=gID_CV2_CAPTURE_TIMER) self.Bind(wx.EVT_WINDOW_DESTROY, self.OnDestroy) # register for thread events @@ -3497,6 +3585,8 @@ def InitUI(self): scu = 10 self.scrollPanel.SetScrollbars(scu, scu, width/scu, height/scu) + self.scrollPanel.Bind(wx.EVT_SCROLLWIN, self.OnScroll) + vPanelBoxSizer.Add(self.scrollPanel, 1, wx.EXPAND) # buttons @@ -3505,19 +3595,26 @@ def InitUI(self): btnsizer = wx.StdDialogButtonSizer() - self.spindleOnButton = wx.Button(self, label="Move to CAM") - self.spindleOnButton.SetToolTip(wx.ToolTip("Move CAM corss-hair to target")) - #self.Bind(wx.EVT_BUTTON, self.OnSpindleOn, self.spindleOnButton) - btnsizer.Add(self.spindleOnButton) + self.gotoToolButton = wx.Button(self, gID_CV2_GOTO_TOOL, label="Goto Tool") + self.gotoToolButton.SetToolTip(wx.ToolTip("Move Tool to target")) + #self.Bind(wx.EVT_BUTTON, self.gotoToolButton, self.OnGotoTool) + btnsizer.Add(self.gotoToolButton) + + self.gotoCamButton = wx.Button(self, gID_CV2_GOTO_CAM, label="Goto CAM") + self.gotoCamButton.SetToolTip(wx.ToolTip("Move CAM corss-hair to target")) + #self.Bind(wx.EVT_BUTTON, self.gotoCamButton, self.onGotoCAM) + btnsizer.Add(self.gotoCamButton) - self.spindleOnButton = wx.Button(self, label="Move to Tool") - self.spindleOnButton.SetToolTip(wx.ToolTip("Move Tool to target")) - #self.Bind(wx.EVT_BUTTON, self.OnSpindleOn, self.spindleOnButton) - btnsizer.Add(self.spindleOnButton) + self.centerScrollButton = wx.Button(self, label="Center") + self.centerScrollButton.SetToolTip(wx.ToolTip("Center scroll bars")) + self.Bind(wx.EVT_BUTTON, self.OnCenterScroll, self.centerScrollButton) + btnsizer.Add(self.centerScrollButton) - self.captureButton = wx.Button(self, label="Start Capture") + self.captureButton = wx.Button(self, label="Start CAM") self.captureButton.SetToolTip(wx.ToolTip("Toggle video capture on/off")) self.Bind(wx.EVT_BUTTON, self.OnCapture, self.captureButton) + self.Bind(wx.EVT_BUTTON, self.OnCapture, self.captureButton) + self.Bind(wx.EVT_UPDATE_UI, self.OnCaptureUpdate, self.captureButton) btnsizer.Add(self.captureButton) @@ -3536,36 +3633,52 @@ def InitUI(self): def UpdateUI(self, stateData, statusData=None): self.stateData = stateData - def OnThreadEvent(self, e): - self.ProcessThreadQueue() - def OnCapture(self, w): if self.capture: - self.captureButton.SetLabel("Start Capture") + self.captureButton.SetLabel("Start CAM") self.capture = False self.StopCapture() else: - self.captureButton.SetLabel("Stop Capture") + self.captureButton.SetLabel("Stop CAM") self.capture = True self.StartCapture() - + + def OnCaptureUpdate(self, e): + e.Enable(self.configData.dataCV2Enable) + def OnCaptureTimer(self, e): self.ProcessThreadQueue() + + def OnCenterScroll(self, e): + self.CenterScroll() + + def OnDestroy(self, e): + self.StopCapture() + e.Skip() def OnIdle(self, e): - #self.ProcessThreadQueue() - #e.RequestMore() - pass + self.Paint() e.Skip() def OnPaint(self, e): self.Paint() e.Skip() - - def OnDestroy(self, e): - self.StopCapture() + + def OnScroll(self, e): + if not self.capture: + wx.CallAfter(self.Paint) e.Skip() + def OnThreadEvent(self, e): + self.ProcessThreadQueue() + + def CenterScroll(self): + x,y = self.capturePanel.GetClientSize() + sx, sy = self.scrollPanel.GetSize() + sux, suy = self.scrollPanel.GetScrollPixelsPerUnit() + + self.scrollPanel.Scroll((x-sx)/2/sux, (y-sy)/2/suy) + def ProcessThreadQueue(self): goitem = False @@ -3593,12 +3706,14 @@ def Paint(self): dc.DrawBitmap(self.bmp, offset[0], offset[1], False) def StartCapture(self): - if self.visionThread is None: + if self.visionThread is None and self.configData.dataCV2Enable: self.visionThread = gcsComputerVisionThread(self, self.cvw2tQueue, self.t2cvwQueue, self.configData, self.cmdLineOptions) - if self.captureTimer is not None: + if self.captureTimer is not None and self.configData.dataCV2Enable: self.captureTimer.Start(self.configData.dataCV2CapturePeriod) + + self.CenterScroll() def StopCapture(self): if self.captureTimer is not None: @@ -3618,7 +3733,6 @@ def StopCapture(self): #self.cvw2tQueue.join() self.visionThread = None - """---------------------------------------------------------------------------- gcsComputerVisionThread: diff --git a/images/icons/LICENSE b/images/icons/LICENSE new file mode 100644 index 0000000..928966d --- /dev/null +++ b/images/icons/LICENSE @@ -0,0 +1,9 @@ +"""---------------------------------------------------------------------------- + Embedded Images + some icons by http://somerandomdude.com/work/iconic/ + some icons by Yusuke Kamiyamane. All rights reserved. + Images license : This work is licensed under Creative Commons' + Attribution-ShareAlike 3.0 United States (CC BY-SA 3.0) + http://creativecommons.org/licenses/by-sa/3.0/us/ +----------------------------------------------------------------------------""" + diff --git a/images/icons/black/16x16.xcf b/images/icons/black/16x16.xcf new file mode 100644 index 0000000..abbdfe7 Binary files /dev/null and b/images/icons/black/16x16.xcf differ diff --git a/images/icons/black/break_12x12.png b/images/icons/black/break_12x12.png new file mode 100644 index 0000000..8b9dd62 Binary files /dev/null and b/images/icons/black/break_12x12.png differ diff --git a/images/icons/black/break_16x16.png b/images/icons/black/break_16x16.png new file mode 100644 index 0000000..d43bb2b Binary files /dev/null and b/images/icons/black/break_16x16.png differ diff --git a/images/icons/black/cd_12x12.png b/images/icons/black/cd_12x12.png new file mode 100644 index 0000000..e4afa40 Binary files /dev/null and b/images/icons/black/cd_12x12.png differ diff --git a/images/icons/black/cd_16x16.png b/images/icons/black/cd_16x16.png new file mode 100644 index 0000000..4805b21 Binary files /dev/null and b/images/icons/black/cd_16x16.png differ diff --git a/images/icons/black/cd_24x24.png b/images/icons/black/cd_24x24.png new file mode 100644 index 0000000..38d2c0f Binary files /dev/null and b/images/icons/black/cd_24x24.png differ diff --git a/images/icons/black/cd_32x32.png b/images/icons/black/cd_32x32.png new file mode 100644 index 0000000..dbcc293 Binary files /dev/null and b/images/icons/black/cd_32x32.png differ diff --git a/images/icons/black/cmd_window_16x16.png b/images/icons/black/cmd_window_16x16.png new file mode 100644 index 0000000..8b703fb Binary files /dev/null and b/images/icons/black/cmd_window_16x16.png differ diff --git a/images/icons/black/cmd_window_16x16.xcf b/images/icons/black/cmd_window_16x16.xcf new file mode 100644 index 0000000..d23d677 Binary files /dev/null and b/images/icons/black/cmd_window_16x16.xcf differ diff --git a/images/icons/black/cog_12x12.png b/images/icons/black/cog_12x12.png new file mode 100644 index 0000000..c00c4e8 Binary files /dev/null and b/images/icons/black/cog_12x12.png differ diff --git a/images/icons/black/cog_16x16.png b/images/icons/black/cog_16x16.png new file mode 100644 index 0000000..a72b619 Binary files /dev/null and b/images/icons/black/cog_16x16.png differ diff --git a/images/icons/black/cog_24x24.png b/images/icons/black/cog_24x24.png new file mode 100644 index 0000000..f95dbb0 Binary files /dev/null and b/images/icons/black/cog_24x24.png differ diff --git a/images/icons/black/cog_32x32.png b/images/icons/black/cog_32x32.png new file mode 100644 index 0000000..fd48e64 Binary files /dev/null and b/images/icons/black/cog_32x32.png differ diff --git a/images/icons/black/document_alt_stroke_12x16.png b/images/icons/black/document_alt_stroke_12x16.png new file mode 100644 index 0000000..110f2e8 Binary files /dev/null and b/images/icons/black/document_alt_stroke_12x16.png differ diff --git a/images/icons/black/document_alt_stroke_18x24.png b/images/icons/black/document_alt_stroke_18x24.png new file mode 100644 index 0000000..92d4ac6 Binary files /dev/null and b/images/icons/black/document_alt_stroke_18x24.png differ diff --git a/images/icons/black/document_alt_stroke_24x32.png b/images/icons/black/document_alt_stroke_24x32.png new file mode 100644 index 0000000..7146fa0 Binary files /dev/null and b/images/icons/black/document_alt_stroke_24x32.png differ diff --git a/images/icons/black/document_alt_stroke_9x12.png b/images/icons/black/document_alt_stroke_9x12.png new file mode 100644 index 0000000..483278d Binary files /dev/null and b/images/icons/black/document_alt_stroke_9x12.png differ diff --git a/images/icons/black/document_bin_stroke_12x16.png b/images/icons/black/document_bin_stroke_12x16.png new file mode 100644 index 0000000..fcd0ed7 Binary files /dev/null and b/images/icons/black/document_bin_stroke_12x16.png differ diff --git a/images/icons/black/document_bin_stroke_12x16.xcf b/images/icons/black/document_bin_stroke_12x16.xcf new file mode 100644 index 0000000..820ba89 Binary files /dev/null and b/images/icons/black/document_bin_stroke_12x16.xcf differ diff --git a/images/icons/black/document_bin_stroke_9x12.png b/images/icons/black/document_bin_stroke_9x12.png new file mode 100644 index 0000000..e839230 Binary files /dev/null and b/images/icons/black/document_bin_stroke_9x12.png differ diff --git a/images/icons/black/equalizer_12x12.png b/images/icons/black/equalizer_12x12.png new file mode 100644 index 0000000..5e4e41e Binary files /dev/null and b/images/icons/black/equalizer_12x12.png differ diff --git a/images/icons/black/equalizer_16x16.png b/images/icons/black/equalizer_16x16.png new file mode 100644 index 0000000..90f6aa8 Binary files /dev/null and b/images/icons/black/equalizer_16x16.png differ diff --git a/images/icons/black/equalizer_24x24.png b/images/icons/black/equalizer_24x24.png new file mode 100644 index 0000000..8edb819 Binary files /dev/null and b/images/icons/black/equalizer_24x24.png differ diff --git a/images/icons/black/equalizer_32x32.png b/images/icons/black/equalizer_32x32.png new file mode 100644 index 0000000..ae96032 Binary files /dev/null and b/images/icons/black/equalizer_32x32.png differ diff --git a/images/icons/black/eye_12x9.png b/images/icons/black/eye_12x9.png new file mode 100644 index 0000000..262ca48 Binary files /dev/null and b/images/icons/black/eye_12x9.png differ diff --git a/images/icons/black/eye_16x12.png b/images/icons/black/eye_16x12.png new file mode 100644 index 0000000..ec0830b Binary files /dev/null and b/images/icons/black/eye_16x12.png differ diff --git a/images/icons/black/eye_24x18.png b/images/icons/black/eye_24x18.png new file mode 100644 index 0000000..35b6f19 Binary files /dev/null and b/images/icons/black/eye_24x18.png differ diff --git a/images/icons/black/eye_32x24.png b/images/icons/black/eye_32x24.png new file mode 100644 index 0000000..8abcc6b Binary files /dev/null and b/images/icons/black/eye_32x24.png differ diff --git a/images/icons/black/gcs_break_16x16.png b/images/icons/black/gcs_break_16x16.png new file mode 100644 index 0000000..68ac1b4 Binary files /dev/null and b/images/icons/black/gcs_break_16x16.png differ diff --git a/images/icons/black/gcs_cmd_win_16x16.png b/images/icons/black/gcs_cmd_win_16x16.png new file mode 100644 index 0000000..dbcdf02 Binary files /dev/null and b/images/icons/black/gcs_cmd_win_16x16.png differ diff --git a/images/icons/black/gcs_eye_16x16.png b/images/icons/black/gcs_eye_16x16.png new file mode 100644 index 0000000..daa78e4 Binary files /dev/null and b/images/icons/black/gcs_eye_16x16.png differ diff --git a/images/icons/black/gcs_goto_map_pin_16x16.png b/images/icons/black/gcs_goto_map_pin_16x16.png new file mode 100644 index 0000000..94a7764 Binary files /dev/null and b/images/icons/black/gcs_goto_map_pin_16x16.png differ diff --git a/images/icons/black/gcs_link_16x16.png b/images/icons/black/gcs_link_16x16.png new file mode 100644 index 0000000..e334fa1 Binary files /dev/null and b/images/icons/black/gcs_link_16x16.png differ diff --git a/images/icons/black/gcs_map_pin_16x16.png b/images/icons/black/gcs_map_pin_16x16.png new file mode 100644 index 0000000..48d7cc5 Binary files /dev/null and b/images/icons/black/gcs_map_pin_16x16.png differ diff --git a/images/icons/black/gcs_output_16x16.png b/images/icons/black/gcs_output_16x16.png new file mode 100644 index 0000000..60fe38f Binary files /dev/null and b/images/icons/black/gcs_output_16x16.png differ diff --git a/images/icons/black/gcs_play_16x16.png b/images/icons/black/gcs_play_16x16.png new file mode 100644 index 0000000..9ac6153 Binary files /dev/null and b/images/icons/black/gcs_play_16x16.png differ diff --git a/images/icons/black/gcs_program_16x16.png b/images/icons/black/gcs_program_16x16.png new file mode 100644 index 0000000..39036cf Binary files /dev/null and b/images/icons/black/gcs_program_16x16.png differ diff --git a/images/icons/black/gcs_step_16x16.png b/images/icons/black/gcs_step_16x16.png new file mode 100644 index 0000000..23fb1e1 Binary files /dev/null and b/images/icons/black/gcs_step_16x16.png differ diff --git a/images/icons/black/gcs_stop_16x16.png b/images/icons/black/gcs_stop_16x16.png new file mode 100644 index 0000000..2b31fdc Binary files /dev/null and b/images/icons/black/gcs_stop_16x16.png differ diff --git a/images/icons/black/go_to_map_pin_16x16.png b/images/icons/black/go_to_map_pin_16x16.png new file mode 100644 index 0000000..6c2c87f Binary files /dev/null and b/images/icons/black/go_to_map_pin_16x16.png differ diff --git a/images/icons/black/go_to_map_pin_16x16.xcf b/images/icons/black/go_to_map_pin_16x16.xcf new file mode 100644 index 0000000..0515a32 Binary files /dev/null and b/images/icons/black/go_to_map_pin_16x16.xcf differ diff --git a/images/icons/black/last_12x12.png b/images/icons/black/last_12x12.png new file mode 100644 index 0000000..9889442 Binary files /dev/null and b/images/icons/black/last_12x12.png differ diff --git a/images/icons/black/last_16x16.png b/images/icons/black/last_16x16.png new file mode 100644 index 0000000..fba0138 Binary files /dev/null and b/images/icons/black/last_16x16.png differ diff --git a/images/icons/black/last_24x24.png b/images/icons/black/last_24x24.png new file mode 100644 index 0000000..600b273 Binary files /dev/null and b/images/icons/black/last_24x24.png differ diff --git a/images/icons/black/last_32x32.png b/images/icons/black/last_32x32.png new file mode 100644 index 0000000..d180df9 Binary files /dev/null and b/images/icons/black/last_32x32.png differ diff --git a/images/icons/black/link_12x12.png b/images/icons/black/link_12x12.png new file mode 100644 index 0000000..032551c Binary files /dev/null and b/images/icons/black/link_12x12.png differ diff --git a/images/icons/black/link_16x16.png b/images/icons/black/link_16x16.png new file mode 100644 index 0000000..f223cfa Binary files /dev/null and b/images/icons/black/link_16x16.png differ diff --git a/images/icons/black/link_24x24.png b/images/icons/black/link_24x24.png new file mode 100644 index 0000000..86cec98 Binary files /dev/null and b/images/icons/black/link_24x24.png differ diff --git a/images/icons/black/link_32x32.png b/images/icons/black/link_32x32.png new file mode 100644 index 0000000..4757834 Binary files /dev/null and b/images/icons/black/link_32x32.png differ diff --git a/images/icons/black/list_12x11.png b/images/icons/black/list_12x11.png new file mode 100644 index 0000000..51ca71a Binary files /dev/null and b/images/icons/black/list_12x11.png differ diff --git a/images/icons/black/list_16x14.png b/images/icons/black/list_16x14.png new file mode 100644 index 0000000..3f1633f Binary files /dev/null and b/images/icons/black/list_16x14.png differ diff --git a/images/icons/black/list_24x21.png b/images/icons/black/list_24x21.png new file mode 100644 index 0000000..0c9a4f7 Binary files /dev/null and b/images/icons/black/list_24x21.png differ diff --git a/images/icons/black/list_32x28.png b/images/icons/black/list_32x28.png new file mode 100644 index 0000000..b27a01f Binary files /dev/null and b/images/icons/black/list_32x28.png differ diff --git a/images/icons/black/list_nested_12x11.png b/images/icons/black/list_nested_12x11.png new file mode 100644 index 0000000..1212f7a Binary files /dev/null and b/images/icons/black/list_nested_12x11.png differ diff --git a/images/icons/black/list_nested_16x14.png b/images/icons/black/list_nested_16x14.png new file mode 100644 index 0000000..d5c4d27 Binary files /dev/null and b/images/icons/black/list_nested_16x14.png differ diff --git a/images/icons/black/list_nested_24x21.png b/images/icons/black/list_nested_24x21.png new file mode 100644 index 0000000..ae2a4d4 Binary files /dev/null and b/images/icons/black/list_nested_24x21.png differ diff --git a/images/icons/black/list_nested_32x28.png b/images/icons/black/list_nested_32x28.png new file mode 100644 index 0000000..eccfd95 Binary files /dev/null and b/images/icons/black/list_nested_32x28.png differ diff --git a/images/icons/black/map_pin_alt_12x24.png b/images/icons/black/map_pin_alt_12x24.png new file mode 100644 index 0000000..1789a86 Binary files /dev/null and b/images/icons/black/map_pin_alt_12x24.png differ diff --git a/images/icons/black/map_pin_alt_16x32.png b/images/icons/black/map_pin_alt_16x32.png new file mode 100644 index 0000000..d700d3c Binary files /dev/null and b/images/icons/black/map_pin_alt_16x32.png differ diff --git a/images/icons/black/map_pin_alt_6x12.png b/images/icons/black/map_pin_alt_6x12.png new file mode 100644 index 0000000..9f5bf28 Binary files /dev/null and b/images/icons/black/map_pin_alt_6x12.png differ diff --git a/images/icons/black/map_pin_alt_8x16.png b/images/icons/black/map_pin_alt_8x16.png new file mode 100644 index 0000000..a290033 Binary files /dev/null and b/images/icons/black/map_pin_alt_8x16.png differ diff --git a/images/icons/black/move_12x12.png b/images/icons/black/move_12x12.png new file mode 100644 index 0000000..6956a2b Binary files /dev/null and b/images/icons/black/move_12x12.png differ diff --git a/images/icons/black/move_16x16.png b/images/icons/black/move_16x16.png new file mode 100644 index 0000000..9163b0d Binary files /dev/null and b/images/icons/black/move_16x16.png differ diff --git a/images/icons/black/move_24x24.png b/images/icons/black/move_24x24.png new file mode 100644 index 0000000..7c0fedc Binary files /dev/null and b/images/icons/black/move_24x24.png differ diff --git a/images/icons/black/move_32x32.png b/images/icons/black/move_32x32.png new file mode 100644 index 0000000..3cb64a0 Binary files /dev/null and b/images/icons/black/move_32x32.png differ diff --git a/images/icons/black/new_window_12x12.png b/images/icons/black/new_window_12x12.png new file mode 100644 index 0000000..30b8749 Binary files /dev/null and b/images/icons/black/new_window_12x12.png differ diff --git a/images/icons/black/new_window_16x16.png b/images/icons/black/new_window_16x16.png new file mode 100644 index 0000000..05718ff Binary files /dev/null and b/images/icons/black/new_window_16x16.png differ diff --git a/images/icons/black/new_window_24x24.png b/images/icons/black/new_window_24x24.png new file mode 100644 index 0000000..b8d5e55 Binary files /dev/null and b/images/icons/black/new_window_24x24.png differ diff --git a/images/icons/black/new_window_32x32.png b/images/icons/black/new_window_32x32.png new file mode 100644 index 0000000..1d2984e Binary files /dev/null and b/images/icons/black/new_window_32x32.png differ diff --git a/images/icons/black/play_12x16.png b/images/icons/black/play_12x16.png new file mode 100644 index 0000000..d4d0930 Binary files /dev/null and b/images/icons/black/play_12x16.png differ diff --git a/images/icons/black/play_18x24.png b/images/icons/black/play_18x24.png new file mode 100644 index 0000000..a9e55ef Binary files /dev/null and b/images/icons/black/play_18x24.png differ diff --git a/images/icons/black/play_24x32.png b/images/icons/black/play_24x32.png new file mode 100644 index 0000000..a58edf4 Binary files /dev/null and b/images/icons/black/play_24x32.png differ diff --git a/images/icons/black/play_9x12.png b/images/icons/black/play_9x12.png new file mode 100644 index 0000000..071f287 Binary files /dev/null and b/images/icons/black/play_9x12.png differ diff --git a/images/icons/black/stop_12x12.png b/images/icons/black/stop_12x12.png new file mode 100644 index 0000000..02612d4 Binary files /dev/null and b/images/icons/black/stop_12x12.png differ diff --git a/images/icons/black/stop_16x16.png b/images/icons/black/stop_16x16.png new file mode 100644 index 0000000..7123777 Binary files /dev/null and b/images/icons/black/stop_16x16.png differ diff --git a/images/icons/black/stop_24x24.png b/images/icons/black/stop_24x24.png new file mode 100644 index 0000000..22f7f88 Binary files /dev/null and b/images/icons/black/stop_24x24.png differ diff --git a/images/icons/black/stop_32x32.png b/images/icons/black/stop_32x32.png new file mode 100644 index 0000000..bd31ab4 Binary files /dev/null and b/images/icons/black/stop_32x32.png differ diff --git a/images/icons/black/target_12x12.png b/images/icons/black/target_12x12.png new file mode 100644 index 0000000..800f349 Binary files /dev/null and b/images/icons/black/target_12x12.png differ diff --git a/images/icons/black/target_16x16.png b/images/icons/black/target_16x16.png new file mode 100644 index 0000000..7cd40fc Binary files /dev/null and b/images/icons/black/target_16x16.png differ diff --git a/images/icons/black/target_24x24.png b/images/icons/black/target_24x24.png new file mode 100644 index 0000000..9af06b2 Binary files /dev/null and b/images/icons/black/target_24x24.png differ diff --git a/images/icons/black/target_32x32.png b/images/icons/black/target_32x32.png new file mode 100644 index 0000000..3a1d088 Binary files /dev/null and b/images/icons/black/target_32x32.png differ diff --git a/images/icons/black/x_alt_12x12.png b/images/icons/black/x_alt_12x12.png new file mode 100644 index 0000000..9dfb4ce Binary files /dev/null and b/images/icons/black/x_alt_12x12.png differ diff --git a/images/icons/black/x_alt_16x16.png b/images/icons/black/x_alt_16x16.png new file mode 100644 index 0000000..a99310e Binary files /dev/null and b/images/icons/black/x_alt_16x16.png differ diff --git a/images/icons/black/x_alt_24x24.png b/images/icons/black/x_alt_24x24.png new file mode 100644 index 0000000..5e52fcd Binary files /dev/null and b/images/icons/black/x_alt_24x24.png differ diff --git a/images/icons/black/x_alt_32x32.png b/images/icons/black/x_alt_32x32.png new file mode 100644 index 0000000..b36ab8e Binary files /dev/null and b/images/icons/black/x_alt_32x32.png differ diff --git a/images/icons/gcs_black_16x16.py b/images/icons/gcs_black_16x16.py new file mode 100644 index 0000000..534b296 --- /dev/null +++ b/images/icons/gcs_black_16x16.py @@ -0,0 +1,163 @@ +#---------------------------------------------------------------------- +imgPlayBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByQcz8ytbwAAAD1JREFUOMtjYBhs4DwD" + "A4MBJQb8h+IGSg34T65r/mPBDZQaQJJr/hPAGK5honY00sQLDQMSjQ0DlpTpDtgBljgwXOs4" + "7F8AAAAASUVORK5CYII=") +getimgPlayBlackData = imgPlayBlack.GetData +getimgPlayBlackImage = imgPlayBlack.GetImage +getimgPlayBlackBitmap = imgPlayBlack.GetBitmap + +#---------------------------------------------------------------------- +imgStepBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByQo7nhZ2gAAAFVJREFUOMtjYBhM4DwD" + "A4MBqZoYkdj/oXQjAwNDAw71DTjYcANgGJdrkNXglYThBkoNQHcNWQYguwbDACZqRiNNvEB2" + "IBIdjSxYFOFLSI1UT8oDDtgBGphE0gAEAQAAAAAASUVORK5CYII=") +getimgStepBlackData = imgStepBlack.GetData +getimgStepBlackImage = imgStepBlack.GetImage +getimgStepBlackBitmap = imgStepBlack.GetBitmap + +#---------------------------------------------------------------------- +imgStopBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByQzZB2QNgAAACBJREFUOMtjYBhowIjE" + "/k+OXiZKXTBqwKgBg8OAAQfsALZSAR8mQXhTAAAAAElFTkSuQmCC") +getimgStopBlackData = imgStopBlack.GetData +getimgStopBlackImage = imgStopBlack.GetImage +getimgStopBlackBitmap = imgStopBlack.GetBitmap + +#---------------------------------------------------------------------- +imgBreakBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByUExbsEeAAAAGpJREFUOMvNks0JwCAM" + "Rp+9dA1H6Mau4GZxA3uJIJL+BNvSwHcR3zOYwB8rAgkQoGpEz+IVvA3gGNE7hy+fwb3E7CTd" + "gFuSJRCHQBoUOkF1fnYAWGZH1guKgyuWIDsE+ZUxTi/SI6v8ea07bSVKp5t5VZAAAAAASUVO" + "RK5CYII=") +getimgBreakBlackData = imgBreakBlack.GetData +getimgBreakBlackImage = imgBreakBlack.GetImage +getimgBreakBlackBitmap = imgBreakBlack.GetBitmap + +#---------------------------------------------------------------------- +imgMapPinBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByUbSLMJjQAAAIVJREFUOMu1UsENgCAM" + "vOjDNRiJDXEEGcMXbsAIvH3ppyRo2tJIvKRJU9rrXQPAwwPIAC6KTDUTfDP4DhNJ3ZxowFNe" + "lXTBbWtVPTDhBwxbCMoRg8VCVMij1UZhtheuUTriZqyJBHFEPmejSE3aP1iF3AzXKHBfP1Wi" + "EDF3CE4AO4BDeF9u6hE4W09LwyQAAAAASUVORK5CYII=") +getimgMapPinBlackData = imgMapPinBlack.GetData +getimgMapPinBlackImage = imgMapPinBlack.GetImage +getimgMapPinBlackBitmap = imgMapPinBlack.GetBitmap + +#---------------------------------------------------------------------- +imgGotoMapPinBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByUthwmcFAAAAH9JREFUOMtjYBhKQICB" + "gWE/AwPDfyjeDxUjGsA0n4dimCEoYD5UEpvJMM0wADMEDhKQnIfNEJwGOCDh83gMuY/FC/cZ" + "kDRgw8g29mOR7yfFAAMs8gakeAHZG3DnkxKI6N7oxxbX+KKRgYGBQQHJAAVyU+R+5ATEQoYB" + "CwdXDgMA7JJL1nAmIzsAAAAASUVORK5CYII=") +getimgGotoMapPinBlackData = imgGotoMapPinBlack.GetData +getimgGotoMapPinBlackImage = imgGotoMapPinBlack.GetImage +getimgGotoMapPinBlackBitmap = imgGotoMapPinBlack.GetBitmap + +#---------------------------------------------------------------------- +imgLinkBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByQPS3LssQAAAIZJREFUOMvVk7ENwCAM" + "BK9LywiMwAiMks0YgREyAiMwAiOQxkiWlci0uKHA9/xbBk6rADRg7jRHoErzBB4FNw9OwJDm" + "rsAFh124GNvu69HAALcC3fzVwGtwt5zdE1iZA5BN1iL31RPQVrOBh8T8ra9pazjtLskS6Lsw" + "Zkm0UPVs2/zhqM91vQGtQLINi2ipAAAAAElFTkSuQmCC") +getimgLinkBlackData = imgLinkBlack.GetData +getimgLinkBlackImage = imgLinkBlack.GetImage +getimgLinkBlackBitmap = imgLinkBlack.GetBitmap + +#---------------------------------------------------------------------- +imgProgramBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByQBrMrBtgAAAQ5JREFUOMulkztLA0EU" + "Rs9MVsRC1zS+CKaxEASbgJDKPyuKjSgoEcVHgkJEZqMIgkUMiJpAAq67pFiQvVbqsroPyQdT" + "DJw5zJ2PgZ9IymoB02RERpV8gWniVEkeQarkW7B/6diA2WuYstaFmwRJ6g1M88mdAaRgWZWE" + "NwFAJ82jtRoDuGj3PaBVM+0ioOKc9dfh3fpVda1kBztnzWX/bdABVoLhuw24cVbFRgBQTs8v" + "iYgbhigRscJQQhH5qJaLwyiX1YIAbB81FoDB1mF9KaOt3wKn59tAcP3iTQImt+D8/nExAt2Z" + "rjcX2We30H99ngA4vn1Y3aydrlfmp7obByezef/CvzgrAcgdzWgZ/wSAzJS7vHbo9AAAAABJ" + "RU5ErkJggg==") +getimgProgramBlackData = imgProgramBlack.GetData +getimgProgramBlackImage = imgProgramBlack.GetImage +getimgProgramBlackBitmap = imgProgramBlack.GetBitmap + +#---------------------------------------------------------------------- +imgMachineBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9i" + "ZSBJbWFnZVJlYWR5ccllPAAAAI5JREFUeNqsU4kJwCAMDE6UEdpN3FBHcAPdRDdoLSQQ0gi2" + "GjgUcjnyAozNd1wEDxOGipiFQFbCaAVXIj9vEMGMoDg4SncWr7Lqh+DKQU4IJCUYO05CVL6k" + "089Gvdp0XzKXYaWIhsBhcR1ssOUSRoRAaePAB1vGuLxI3MTS0ejfjLnzXkhO2XpMv8/5FmAA" + "pdh8malagfIAAAAASUVORK5CYII=") +getimgMachineBlackData = imgMachineBlack.GetData +getimgMachineBlackImage = imgMachineBlack.GetImage +getimgMachineBlackBitmap = imgMachineBlack.GetBitmap + +#---------------------------------------------------------------------- +imgTargetBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9i" + "ZSBJbWFnZVJlYWR5ccllPAAAAJxJREFUeNrEU8ENgCAMZARGcQRGYARHYCNGcoSOwAhYk5ac" + "SE0UEy+5T3u9pi04d4ZnJubGrBCvEkuiGWJhkojrwEBJor0UFxBlZoR8lJjmC5p46HwkgrMR" + "oBHpOAmctXgVgaJITE1Uf9S2hWUotnagJhkW25IRulkGBDvpNT+iH4GejjC9ROuMBQzo7ozT" + "D2n6KX/ymV5/512AAQBxnm3Jdo79HgAAAABJRU5ErkJggg==") +getimgXBlackData = imgXBlack.GetData +getimgXBlackImage = imgXBlack.GetImage +getimgXBlackBitmap = imgXBlack.GetBitmap + +#---------------------------------------------------------------------- +imgXBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9i" + "ZSBJbWFnZVJlYWR5ccllPAAAAHlJREFUeNpiYMAECUC8H4j/o+H9UDmcQAGIz2PRiI7PQ9Vi" + "aH5PhGYYfo9uyHkSNCO7BO5ndNMbsGhowOJKcJjsx6IQ3WBY4DVgCViszktAMiQBh0thGKcf" + "E9CiFqs6JgYqAIq9QHEgUhyNFCckqiRlijMT2dkZIMAAQSOoo+oDrMMAAAAASUVORK5CYII=") +getimgXBlackData = imgXBlack.GetData +getimgXBlackImage = imgXBlack.GetImage +getimgXBlackBitmap = imgXBlack.GetBitmap + +#---------------------------------------------------------------------- +imgLogBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByMsplQLBAAAAC9JREFUOMtjYKAQMDIw" + "MLyHsgWh9H9SDGBiGPKAEYsYSWEyTMOApDAZTQeDIAzYAXvGCBBY8UOKAAAAAElFTkSuQmCC") +getimgLogBlackData = imgLogBlack.GetData +getimgLogBlackImage = imgLogBlack.GetImage +getimgLogBlackBitmap = imgLogBlack.GetBitmap + +#---------------------------------------------------------------------- +imgCliBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByMImlfv1QAAAOFJREFUOMvF07tKQ0EQ" + "xvHfCUfBJiI2XjhlAkJSSKyt7HwE38AXsLROnyaQt0ib1kKwFKJ1CoOteA0YmwksB3OBFPma" + "2Z3d+TOX3QxTa6hiTW0eIHpwhRpO0MT+CnE3mOaxecUYXzjAzwqA57SEJrZxj8tYL9NuuQdb" + "uMU5huiitQDwgZc8cYzRxx2OA/CAbA6g+G8KF+hggEecLcigjsO85Gyjh2v8YgfVmFQ1fHth" + "P6EMaEVq73F2FCV8R8AEbzGpUQooEsgo7ARPyVtJlc3uVUpB85ShgdOkqcXsYLO/8Q9y9Sm2" + "hRFPhQAAAABJRU5ErkJggg==") +getimgCliBlackData = imgCliBlack.GetData +getimgCliBlackImage = imgCliBlack.GetImage +getimgCliBlackBitmap = imgCliBlack.GetBitmap + +#---------------------------------------------------------------------- +imgMoveBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9i" + "ZSBJbWFnZVJlYWR5ccllPAAAAE9JREFUeNpiYMAP5kMxWQCk8T8Uz6dEM9mGMCBpJhuQZMB8" + "EgyYj8vPpLhsPr4A+4/HNSgBy8RAJUCRF6gSiIMjHVA9Kc+nNB8QlZ0BAgwA0Tszh6S715cA" + "AAAASUVORK5CYII=") +getimgMoveBlackData = imgMoveBlack.GetData +getimgMoveBlackImage = imgMoveBlack.GetImage +getimgMoveBlackBitmap = imgMoveBlack.GetBitmap + +#---------------------------------------------------------------------- +imgEyeBlack = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByMaae6enQAAAI9JREFUOMvNksEJgDAM" + "RR9evHYER+gIjuAIukmdwBEczRHaDfQSoYRIBEX8kMtPfpomH/6IAKxABnaJLFzwxIMS6shS" + "Y2JUhQnoJZJqPHriaDwQr5pENWYSPjncLtOxWaTxfyRXc1sDlAcXKw0wqSbnBHPFzSqHaCZv" + "iQHovCW+csZXjFRbeTGsvNyx8udoD31xVkhwngFgAAAAAElFTkSuQmCC") +getimgEyeBlackData = imgEyeBlack.GetData +getimgEyeBlackImage = imgEyeBlack.GetImage +getimgEyeBlackBitmap = imgEyeBlack.GetBitmap + + diff --git a/images/icons/gcs_gray_16x16.py b/images/icons/gcs_gray_16x16.py new file mode 100644 index 0000000..f02c6c4 --- /dev/null +++ b/images/icons/gcs_gray_16x16.py @@ -0,0 +1,182 @@ +#---------------------------------------------------------------------- +imgPlayGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFCDAltTu1DwAAAGhJREFUOMtjYBhUYNWa" + "9edXrVlvQIoeJjS+AQMDw/lVa9Y3EGsAI5oL/iNxLzAwMCSGhQReIMUFJLsGnwsYiHENE5Fe" + "xekaJkpjjoVIdTi9QIwBjWEhgQ3kuICoaGQhx1Z8BhBl6+ACAO6qKKDvuKECAAAAAElFTkSu" + "QmCC") +getimgPlayGrayData = imgPlayGray.GetData +getimgPlayGrayImage = imgPlayGray.GetImage +getimgPlayGrayBitmap = imgPlayGray.GetBitmap + +#---------------------------------------------------------------------- +imgStepGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFCDAxr+FhcgAAAH5JREFUOMvNkssJgDAQ" + "RJ/BgrSUgHi3kph2JJBSTEd6UcnBdf2BDiyEZDMz+4HfYAhxHEKsrv4rMoJpOfq2sb0gst2v" + "OWYnzx24cVkgEQBUwJgrSjDKu9N6U57o0+rG33HA0xIAElBLk9FKEEeqESSgaxubNHvlRVX/" + "+ip/jxlYXDC1MBW5zgAAAABJRU5ErkJggg==") +getimgStepGrayData = imgStepGray.GetData +getimgStepGrayImage = imgStepGray.GetImage +getimgStepGrayBitmap = imgStepGray.GetBitmap + +#---------------------------------------------------------------------- +imgStopGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFCDA7TzSIbAAAACtJREFUOMtjYBhowAhj" + "rFqz/j8pGsNCAhkZGBgYmCh1wagBowYMDgMGHgAAE+AEGJkQ9b4AAAAASUVORK5CYII=") +getimgStopGrayData = imgStopGray.GetData +getimgStopGrayImage = imgStopGray.GetImage +getimgStopGrayBitmap = imgStopGray.GetBitmap + +#---------------------------------------------------------------------- +imgBreakGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFCDENmZUstAAAAKRJREFUOMvNksENwjAM" + "RR+dICMwAhmhG6RS1XWibsK5qtRswAgwQkfwCFwcKYQACRf4t/z4v1iO4dc65MaybkfAAw4w" + "agsQgHkah/0lYFm3E3BJgrkE6KdxuD0B9OXrm3AKsbGTLrnwFWG0xsdDCnANs3MlgGkAmBLg" + "K3XZcGolJUBoAIQSYK7sQrT2EaD/2n+AxEXai0PUDbPAOQOJejbdwv/QHX1yKEbBwq96AAAA" + "AElFTkSuQmCC") +getimgBreakGrayData = imgBreakGray.GetData +getimgBreakGrayImage = imgBreakGray.GetImage +getimgBreakGrayBitmap = imgBreakGray.GetBitmap + +#---------------------------------------------------------------------- +imgMapPinGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFCDEdhCI80AAAALtJREFUOMulksEJwzAM" + "RV9CB2g3yAgdpYaQc1foBCEThG7QszE42SAbJCNkg3aEXpRSjFw79IOxkOSvL1kFCqzzF6AH" + "KnGtwK2pzRDmFpHHHh0mJCmVpF7uBTByliD2wUEh2GR3WzXrPKKqCpNL/oSmYJVKrVQGaL9i" + "SYIJuAJnZZhTTgvjD8Vj8htlaE/gGLhfTW1OuUMcMn1RgjG3tSLWbNCGKj+1B4+InU1wj9j5" + "sM7P1vl57yayp/IbNw0yBMDu12oAAAAASUVORK5CYII=") +getimgMapPinGrayData = imgMapPinGray.GetData +getimgMapPinGrayImage = imgMapPinGray.GetImage +getimgMapPinGrayBitmap = imgMapPinGray.GetBitmap + +#---------------------------------------------------------------------- +imgGotoMapPinGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFCDErS5ipSQAAANFJREFUOMvNkM0NwjAM" + "hT+iDsAIjFA2CCNEinJmBDZBTAC9RpHSDdoNyAZ0BEbgYpBV8dNyAUuW/Pves+HXtpg6GFNe" + "AhmwUuoBV80guy8XyS2QqxHLEaiBTfDuOgKwQAnerWX2DFijlrfAVgA6kfz5BzFlq/K9ACBS" + "H0piyhdgpU6ogaECuhfgtfTWkrfAThEAtGbGE5tnNQNslBfVLFIDIHhXgEH1h+BdMcG7PnjX" + "y31P79eSx7FRDCfg9GYZ4PAinm4x5S6m/Hh89QVGw1/ZDZmwQ5xuOfBFAAAAAElFTkSuQmCC") +getimgGotoMapPinGrayData = imgGotoMapPinGray.GetData +getimgGotoMapPinGrayImage = imgGotoMapPinGray.GetImage +getimgGotoMapPinGrayBitmap = imgGotoMapPinGray.GetBitmap + +#---------------------------------------------------------------------- +imgLinkGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFCDAXfezkjwAAANRJREFUOMvNksENgzAQ" + "BIeIAiiBEkgH0AGWLL+TEighFVACvBES6YB0gEughJSQzzmyTkCUV3IfW/bu3u7Z8OtKvgEP" + "45QBM1A4axKA9ACcAy1Qy9EDyIAC8AGX7pAL6ZQBK/AESrn2QBWwpw/kHjhrjLPmuSkgtt9k" + "Z81VIgTbXvbsRWgVGeAerYt2owVqydwM41QCXuz2wzh1QB4Jbs9ABjaH55JoHXCRu+bIQZzR" + "A16RK2fNuikgn0TXIrYD2R/NYFafJDjpgZvuvCUQyFX8zv9fL21vSWog3NHrAAAAAElFTkSu" + "QmCC") +getimgLinkGrayData = imgLinkGray.GetData +getimgLinkGrayImage = imgLinkGray.GetImage +getimgLinkGrayBitmap = imgLinkGray.GetBitmap + +#---------------------------------------------------------------------- +imgProgramGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFCDAHYFv06wAAASFJREFUOMtjZICCVWvW" + "/2cgAMJCAhnRxZgYSADYLGFEl0S3BZsmZDUkuQCboSzYFGw5eo7/2/OHH9jF5BR+vnqE1zCs" + "Lvj2/OEHOTNH8Z+vHj0g5BqcXmBiYmRlYGBgkDV1UGNgYGDgVdQTxBYLWL3AJirF/uDEvp8s" + "wpIan9+/uc/AwMDw8+tHfgYGhg9EGSCnriX2X02T998/Bsb////z8gk5Cvz///8P0V4wkuB9" + "cvfo3s+m0nyf71+7yPno1P4PD65fkiQpDBgYGBjOvfjMz/jp7VNFS2c+5i/vbhNtwIFr9+Sg" + "LvkICVAGbpJi4fWzJ5wMDAwMuy/e1PvDzS989+je5784+cSxqcUaiKEudjeRkzkaG78BxORK" + "snMjNgAAn3VnJ3rOqJsAAAAASUVORK5CYII=") +getimgProgramGrayData = imgProgramGray.GetData +getimgProgramGrayImage = imgProgramGray.GetImage +getimgProgramGrayBitmap = imgProgramGray.GetBitmap + +#---------------------------------------------------------------------- +imgMachineGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9i" + "ZSBJbWFnZVJlYWR5ccllPAAAAPhJREFUeNqkU8ENwjAMbCIGKJuEDdoNUgnxphN0BMQInaC8" + "EVK7AWxANiEjYEt25VoGBFg6pU7P8Tl2XPHCzpdxD8tAbrvbNieL50VAoCC2zvpGDnLZdxwM" + "yxVQAjLgBogq2QSoBKcGVYkVBPpR0BoNtVFxwqyAVDwE4ZNlyL5e3AHJ1pJrwqT+zVxHF9ex" + "JA6GDI3qyqhKS4DeU6uCynA0ZPfKx5jBF38aHtCSHGkHg9spH2Na96bGiWRnOjBad7QSm5XR" + "9/hCebUYZepE+UXpJY+9F/VkHhKj71yS5CQ9idiWwK8O/Ltob4L9jVCL/vKAX5/zU4ABAGYG" + "WP8eAwg4AAAAAElFTkSuQmCC") +getimgMachineGrayData = imgMachineGray.GetData +getimgMachineGrayImage = imgMachineGray.GetImage +getimgMachineGrayBitmap = imgMachineGray.GetBitmap + +#---------------------------------------------------------------------- +imgTargetGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9i" + "ZSBJbWFnZVJlYWR5ccllPAAAAS1JREFUeNrEU8ttwkAQ3d0KKCHpwO4AKohXQlwxJVABogJK" + "sH2NkBxX4HRgdxB3AB3Am9UbZeJ8Ljkw0tPAzLz57dg7I6/ndgFVAlsg26yjp/0GNQINUMN+" + "VU4w5AxqAE5Cdt8lo29g7GcCGnrgifYaiIYcaXOM6TWJZ9sDHdJaRIvvP3QghZZQLSCcCcgD" + "Z9bKiYzAEvgwxIvYmDiaTsrAhTkuJ5HxuzJJHStWJomOsw1mYR31yf0uh1ls5h4unkeiC3zj" + "8tL8s0MSmWB7xv+Cr5HuYKTzhfr4R8HjLHYMPE8RebolKsiGd7wJFXnznfh4CyXtzb8Pyc9O" + "eWFOuZOd0F+wba0shVbwpxFkWbKHFbM6BrameGvIk5K/fI005MDeLNbKSF+uZJG7AAMA5kyI" + "EJLORLAAAAAASUVORK5CYII=") +getimgTargetGrayData = imgTargetGray.GetData +getimgTargetGrayImage = imgTargetGray.GetImage +getimgTargetGrayBitmap = imgTargetGray.GetBitmap + +#---------------------------------------------------------------------- +imgXGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9i" + "ZSBJbWFnZVJlYWR5ccllPAAAAO5JREFUeNqkU9ENgjAQvTYO4AiOQDdwhSbGX2ACR1BGYALw" + "15iwAhvgCI7ABvpqrqScxdRwyaXk2nfcu3unSNjt3hU4cvheXPXw6/Fg2zCoAuAORwfP6Lc9" + "4BaJnlMCBg/wLaXZCDcuieZA9weY+K3DkGbOmcheRUAV33nLHFZzw0KrUdoFZxnESo7V4m2u" + "kOUV+ZsDtFwdBd+NfLhZ4NgAQH5kS+BPD2ilLVUQo0CxKjQrbNZtwdnRKZiOnE6vIvxG7vY5" + "MsaT0EvplTgkSPhL0qjK+CZaIZIUKdtpCrwYhheFEpbJzJZpzTq/BRgAmt9ihpQIX3IAAAAA" + "SUVORK5CYII=") +getimgXGrayData = imgXGray.GetData +getimgXGrayImage = imgXGray.GetImage +getimgXGrayBitmap = imgXGray.GetBitmap + +#---------------------------------------------------------------------- +imgLogGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFCC8jkQIepAAAADZJREFUOMtjYKAQMK5a" + "s/4/AwMDQ1hIICMDAwMDjE8sYGIY8oARXYDUMBmOYUBqmIymg8EQBgBX6xwd8HpppAAAAABJ" + "RU5ErkJggg==") +getimgLogGrayData = imgLogGray.GetData +getimgLogGrayImage = imgLogGray.GetImage +getimgLogGrayBitmap = imgLogGray.GetBitmap + +#---------------------------------------------------------------------- +imgCliGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFCC43ksP7mAAAAaBJREFUOMulk0FLW0EU" + "hb87T18C0ojFLO3ShcZSaME/0FV3KTGoVRGlUroRcVFaaEt33ZTiRkUogkLQJJof0W5178qN" + "KIpiomktMW9uF84LiahN6cAww3Duuefee0ay+YLyH6sFQFVRveIRkQaAqmKMuZ0gDLwNdJ3w" + "RgUiUlNQnxlV1JGHGBHBBgESJlzPbSoQppF/KD+2lt1Q4yR6QKs77wN+EwRnqF6VAPDl61x/" + "V9eD76VSae/l5Pgj4KQZGWHnIrMz09sT46PPg2o1ls0Xjj98/LTz9t37N38lCIIgvP8ql8uF" + "/YP9Z69fTT1O9D3s7unt/dysgnA9TST6fswvLm0dHR0ej74YfHJXsBhDSzjnbL4wXKlUVgHS" + "qWQHYB3OBwI3IXVb3FvNSJpOJTNABrgH/HYeuQDaADu/sNTm+37gRyKdYyNDewBqLUat5dvy" + "SmudsnPg0gUD/Mys5S474/FirL39PBqN7gJVZ1OM8TyKxdP4XbUODw4IYNKpZCSdSjaYTdZz" + "m2qtvdmCIlBncTGmZvGGJnqe17R/r3+uPySTlP+sA3KOAAAAAElFTkSuQmCC") +getimgCliGrayData = imgCliGray.GetData +getimgCliGrayImage = imgCliGray.GetImage +getimgCliGrayBitmap = imgCliGray.GetBitmap + +#---------------------------------------------------------------------- +imgMoveGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9i" + "ZSBJbWFnZVJlYWR5ccllPAAAAG5JREFUeNpiYMADVq1ZPx+E8alhxKcZSCVAuQvCQgITiTYA" + "TTMDIUPweeE/CONTw8RAIWBCczaxLpuPLbT/k+g1sCGMOAKMARhgjOiasJi1gOIwoNgLDPgC" + "EVc0Eh3gdEkHFCdlijMTA6XZGSDAAMLkWYqOfGHNAAAAAElFTkSuQmCC") +getimgMoveGrayData = imgMoveGray.GetData +getimgMoveGrayImage = imgMoveGray.GetImage +getimgMoveGrayBitmap = imgMoveGray.GetBitmap + +#---------------------------------------------------------------------- +imgEyeGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFCC8Po9pyRwAAAMxJREFUOMvNksENgkAQ" + "RR9UQAt0YAnQAZts9iwVGCsAK1ArwDMhWTrQDrQES9gSvOySzSgc1ET/bf+f+fkzs/BrJJLo" + "B5sBe6ACMk87YAS2Ris3a9APtgK6qFHCAbXRanwy6Ae79s2h8Ahc/LsANpFxbbQ6TQYvmkuj" + "1U2kWwFnaZJ44RrV7oxWbT/YFmgWOIAyBayYM8SOCxuhBXSpj/wuXArUwqQIseOxhDZdZHGJ" + "/k9kRqv77BK/csZPPlIaq17IgYPYi/NcHjf/Bx4+GFq+daQmVAAAAABJRU5ErkJggg==") +getimgEyeGrayData = imgEyeGray.GetData +getimgEyeGrayImage = imgEyeGray.GetImage +getimgEyeGrayBitmap = imgEyeGray.GetBitmap + diff --git a/images/icons/gcs_gray_dark_16x16.py b/images/icons/gcs_gray_dark_16x16.py new file mode 100644 index 0000000..a95b152 --- /dev/null +++ b/images/icons/gcs_gray_dark_16x16.py @@ -0,0 +1,178 @@ +#---------------------------------------------------------------------- +imgPlayGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFBx8mNXKb5QAAAGhJREFUOMtjYBhUwNfX" + "/7yvr78BKXqY0PgGDAwM5319/RuINYARzQX/kbgXGBgYEjdv3niBFBeQ7Bp8LmAgxjVMRHoV" + "p2uYKI05FiLV4fQCMQY0bt68sYEcFxAVjSzk2IrPAKJsHVwAAGz0KKANoy45AAAAAElFTkSu" + "QmCC") +getimgPlayGrayData = imgPlayGray.GetData +getimgPlayGrayImage = imgPlayGray.GetImage +getimgPlayGrayBitmap = imgPlayGray.GetBitmap + +#---------------------------------------------------------------------- +imgStepGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFBx82KMWLgQAAAHxJREFUOMvNkt0NgCAM" + "hD+NA+EgxBmcBBmJMIhspC9ieLBW1EQvaUKg3F1/4DewdpitHUztv6YgWLajjzFMgsh+n3Pa" + "gzx34sYVgUQAYIC5VJTQKu9O6013oU/Zjb/jgKclACSglyajlSCOVCNIwBhjSJq9rlLVv77K" + "32MFUIMqDbGteEsAAAAASUVORK5CYII=") +getimgStepGrayData = imgStepGray.GetData +getimgStepGrayImage = imgStepGray.GetImage +getimgStepGrayBitmap = imgStepGray.GetBitmap + +#---------------------------------------------------------------------- +imgStopGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByAHIcWhhwAAACtJREFUOMtjYBhowAhj" + "+Pr6/ydF4+bNGxkZGBgYmCh1wagBowYMDgMGHgAA3pEEGCq7DsMAAAAASUVORK5CYII=") +getimgStopGrayData = imgStopGray.GetData +getimgStopGrayImage = imgStopGray.GetImage +getimgStopGrayBitmap = imgStopGray.GetBitmap + +#---------------------------------------------------------------------- +imgBreakGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByATOx91+gAAAL9JREFUOMvNkr0NwjAQ" + "Rh9BCEpGSBdKGCEDWHHLNFG2gS6RB2AEKCFVSkq3EQ3NBTmOA6GCTzrJvp93p7Ph15r5DqWy" + "GMgBDazFbYESKIypmlGAUtkWODmFviyQGlNdBgDpfH5T7EJ23SSRE8gnFCM5eXdxATqQ/BDz" + "pUMAv3sLLMTawBQDgK/lyLmnyFvOVNkQoPwCUIYAxcQprOT2AfKu6QdI95Fev3HuRuv6dk+S" + "zVG2HAMrp/AA7I2prvyVnrpfMROzV4CSAAAAAElFTkSuQmCC") +getimgBreakGrayData = imgBreakGray.GetData +getimgBreakGrayImage = imgBreakGray.GetImage +getimgBreakGrayBitmap = imgBreakGray.GetBitmap + +#---------------------------------------------------------------------- +imgMapPinGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByA54KS8LAAAALhJREFUOMulktENwjAM" + "RF8rBoANOgKLWKEbsAITVExQsQEb0CgLdIN2hG4AI/DjIhQ5JBUnRbFs53x2XGFAxJ2AHmjU" + "tQCXEPwQ51aJxw9stDFJbST1es9Aq2eOYh/sDIJV9nWtJuJQVU2cXPMnLAWLVuq0MkD3FcsS" + "jMAZOBrDHEta8D8U++w36tCewD5yv0Lwh9IhDoW+JIEvba1KNRu1YcrP7cE9YRcT3BJ2OUTc" + "JOKmrZvIlspvA94usHD55RcAAAAASUVORK5CYII=") +getimgMapPinGrayData = imgMapPinGray.GetData +getimgMapPinGrayImage = imgMapPinGray.GetImage +getimgMapPinGrayBitmap = imgMapPinGray.GetBitmap + +#---------------------------------------------------------------------- +imgGotoMapPinGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFByEMrwxJTgAAAM5JREFUOMvNkFsNAkEM" + "RQ+TFYAEJCwOBgHNBAdIwAlBAYsCmFTArgPGASsBCfwU0mxYXj/QpEmf994Wfm2TdwdF0hQ4" + "ANFKHbCsPiC7LRfLI3CoBiw7oAYWqvkyAIhAUc1zmz0BMbjlFbAygNYkv/6BSIou3xgAJvWu" + "RCSdgZk7oQb6CmhHwGvrzS0/AmtHAHAMHzxx/6gWgIXz4prFagCo5gL0rt+r5hJUc6eaO7vv" + "4f1e8jAOjqEBmifLANuR+H0TSa1Iuj+++gJjz1/ZFUNIRLiwZlGoAAAAAElFTkSuQmCC") +getimgGotoMapPinGrayData = imgGotoMapPinGray.GetData +getimgGotoMapPinGrayImage = imgGotoMapPinGray.GetImage +getimgGotoMapPinGrayBitmap = imgGotoMapPinGray.GetBitmap + +#---------------------------------------------------------------------- +imgLinkGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFBx8XZKyb3wAAANFJREFUOMvNklERgzAQ" + "RB8dBCABCdQBCMiAhFYCEqoACSChmRNAHRAJSKiE/lw6zE2g06/2fpJJdvd2L4FfV/YN2Lm2" + "AGagEvEZQH4ALoEB6PToARRABYSIy3fIlXYqgBV4ArVeB6CJ2NMH8gScLUbEP5MCavtNFvFX" + "jRBtB92zF2EwZID7Zl2sGyvQaebeubYGgtqdnGtHoNwIpmegA5vjc2m0EbjoXX/kYJsxAMGQ" + "GxG/JgX0k9ha1HYkh6MZzOaTRCcTcLOdUwKR3Gzf+f/rBUsBSE7N9wI1AAAAAElFTkSuQmCC") +getimgLinkGrayData = imgLinkGray.GetData +getimgLinkGrayImage = imgLinkGray.GetImage +getimgLinkGrayBitmap = imgLinkGray.GetBitmap + +#---------------------------------------------------------------------- +imgProgramGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFBxcW23IhQQAAASJJREFUOMtjZIACX1//" + "/wwEwObNGxnRxZgYSADYLGFEl0S3BZsmZDUkuQCboVgN2HL0HL+vr///jYfOyhMyjAWb4MyO" + "xg/VUxeKt2bHvyRkAE4vMDExsjIwMDBUTVmgxsDAwJDV0CeILRawuiC5pIq9OTPuZ2JRpcbn" + "92/uMzAwMPz8+pGfgYHhA1EGyKlriTXMWsz77x8D4////3mrpy4U+P///x+ivWAkwfukIS32" + "s6k03+f71y5ytmbHf3hw/ZIk0YEIA+defOavT415WjdjMV9TRuwn5HSD1wUHrt2Tg7rkIyRA" + "GbhJisbXz55wMjAwMOy+eFPv9bOnwg1psW/DM/LEN2/eSJwBoS52NxkYGBiRNDBi04zVAGJy" + "Jdm5ERsAAA6Saru9+a83AAAAAElFTkSuQmCC") +getimgProgramGrayData = imgProgramGray.GetData +getimgProgramGrayImage = imgProgramGray.GetImage +getimgProgramGrayBitmap = imgProgramGray.GetBitmap + +#---------------------------------------------------------------------- +imgMachineGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9i" + "ZSBJbWFnZVJlYWR5ccllPAAAAPZJREFUeNqkU4ENgkAM5D8OgJu8G8AAxHcDmYARjCMwAW4g" + "hgF0A38TfwTbpCWlqRq1yeXpc/1ev31XvLCm2e5hGchtp+lysnheBAQKYuusb+Qgl33HwbBc" + "ASUgA26AqJKNgEpwalCVWEGgHwWt0VAbFSfMCkjFQxA+WYbs68UdkGwtuSaM6t/MdXRxHUvi" + "YMiwU105q9ISoPfUqqAyHA3ZvfIxZvDFn4YHtCRH2sHgdsrHmNa9qXEk2ZkOjNYdrcRmZfQ9" + "vlBeLUaZOlF+UXrJY+9FPZmHxOg7lyQ5SU8itiXwqwP/LtqbYH8j1KK/PODX5/wUYABloVE7" + "jTdWswAAAABJRU5ErkJggg==") +getimgMachineGrayData = imgMachineGray.GetData +getimgMachineGrayImage = imgMachineGray.GetImage +getimgMachineGrayBitmap = imgMachineGray.GetBitmap + +#---------------------------------------------------------------------- +imgTargetGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9i" + "ZSBJbWFnZVJlYWR5ccllPAAAASdJREFUeNrEU1sRwkAMvDsFSAAHrQMqgIEqoEhAAYOCSgAU" + "lA4CwEHrgDoAB7C52QyhPH74IDM7gSSb16XeGZlMpgOoApgDyeFQe9pvUC2wA7awX5UTDDmB" + "aoBSyO5VEvoaxj4S0HAEhrRvgdyQc9ocY46axLPthg5pLUeLpzcdSKExVAUIpwPSwJm1ciQj" + "sADOhngRGxPnppMicGGOy4lk/N6YpI4VNyaJjjMPZmE1dek+y6oXm7i/i+eR6AL3XF6cv3dI" + "Ih1sI/yf8TXiHbR0TqnXXwque7Ft4HmKyNONUUE2vOBNqMibL8THWyho3/18SL53ygNzyrXs" + "hP4Z29bKUiiDP44gy5I9ZMzqGFiZ4pUhd0p++hppSIGlWayVlr5UySJ3AQYA9a+ChGGMS8cA" + "AAAASUVORK5CYII=") +getimgTargetGrayData = imgTargetGray.GetData +getimgTargetGrayImage = imgTargetGray.GetImage +getimgTargetGrayBitmap = imgTargetGray.GetBitmap + +#---------------------------------------------------------------------- +imgXGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9i" + "ZSBJbWFnZVJlYWR5ccllPAAAAP9JREFUeNpiZEADvr7+CUAqHogd0KQOAPHCzZs3LkAWZETS" + "qACk1gOxAQN+cAGIA4EGPYAbANV8HogFGIgDH4DYEGQIE1RgPQmaGaBqQXoYmKF+zkAzvRNL" + "GDRCvccB5Uuoq2s8ZIIGGDKYCHRaA5BORBJLhIpNRFMbzwh0wX8sTgRpWAB1HQMSez66QhYc" + "fpwP1MAAizJcmkGAiYFCgMsF2LzAgM0VTNAUhhLaaH4GeScB6p1G9NTJDIwKUGIKQBI0AIpx" + "Aul+JLEAqLp8pGgEWwZLieeJSMIYSRroKkNYIAZCExADCUk5EB4L0IxhCM0oDERkJkOUzERJ" + "dgYIMADRhV+mXJ7YiAAAAABJRU5ErkJggg==") +getimgXGrayData = imgXGray.GetData +getimgXGrayImage = imgXGray.GetImage +getimgXGrayBitmap = imgXGray.GetBitmap + +#---------------------------------------------------------------------- +imgLogGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFBxY7h7ZMdQAAADZJREFUOMtjYKAQMPr6" + "+v9nYGBg2Lx5IyMDAwMDjE8sYGIY8oARXYDUMBmOYUBqmIymg8EQBgCm0RetPdChKQAAAABJ" + "RU5ErkJggg==") +getimgLogGrayData = imgLogGray.GetData +getimgLogGrayImage = imgLogGray.GetImage +getimgLogGrayBitmap = imgLogGray.GetBitmap + +#---------------------------------------------------------------------- +imgCliGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFBxYQKwq1NQAAAJBJREFUOMvFU7sOgzAM" + "PFeUCjp1YOeHrHyrdf+GaBe6JChEASUw4MmK5PM9HFF1Cy7UAxfrfoAm6t+kTaWDwbuVQc1w" + "loGqawF8I0Cp8oC0X0qxJOKNiaRJ6eaciThzVLsxeiadquszCbS7EgA8SRNVN5A2x+lEYK/w" + "JoH2kfZUml+wFF+iBx8BfNJFcvtv/AO6xzuPzHSN7wAAAABJRU5ErkJggg==") +getimgCliGrayData = imgCliGray.GetData +getimgCliGrayImage = imgCliGray.GetImage +getimgCliGrayBitmap = imgCliGray.GetBitmap + +#---------------------------------------------------------------------- +imgMoveGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9i" + "ZSBJbWFnZVJlYWR5ccllPAAAAIZJREFUeNpiYMADfH3954MwPjXM+DQDqQQgNlBX11C4devm" + "RqINQNIMA3gNweeF/yCMTw0TA4WACc3ZxLpsPrbQ/k+i18CGMGIJMDDYvHkjI7omLGYtoDgM" + "KPYCA75AxBWNRAc4XdIBI5FJGRziwJhJJCovgNI8KO2D8gA+zcTGDt4AAwgwAJ/NRAADMlOh" + "AAAAAElFTkSuQmCC") +getimgMoveGrayData = imgMoveGray.GetData +getimgMoveGrayImage = imgMoveGray.GetImage +getimgMoveGrayBitmap = imgMoveGray.GetBitmap + +#---------------------------------------------------------------------- +imgEyeGray = PyEmbeddedImage( + "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA" + "CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QIFBxYkCr5BgAAAANVJREFUOMvFkr0NwjAQ" + "hT9CQ5ktSMkIYQArYQMyAWICYAJEBxVsQKwbADaAElIxQkagsSPrICkAiddYvnf39O4H/o2e" + "DhiTxcAayIHYhWugBOYitm4VMCbLgX1QqFEDhYgtXwSMyaau2CdugLP7p8AsEC5E7KEReFM8" + "FrFX5W4EnLRIzxGXIHclYpfGZEtg0REDGEfAUfXpbYeJC8V57CNn+VPUEVAokdTbDttSXLOR" + "ziG6m4hF7KN1iD9Z4zeH1A/ZqrrfhsNkBwyAxL2+cAtM9H38H08G9Fx3i5i9IQAAAABJRU5E" + "rkJggg==") +getimgEyeGrayData = imgEyeGray.GetData +getimgEyeGrayImage = imgEyeGray.GetImage +getimgEyeGrayBitmap = imgEyeGray.GetBitmap + diff --git a/images/icons/gray-dark/16x16.xcf b/images/icons/gray-dark/16x16.xcf new file mode 100644 index 0000000..e79339c Binary files /dev/null and b/images/icons/gray-dark/16x16.xcf differ diff --git a/images/icons/gray-dark/break_12x12.png b/images/icons/gray-dark/break_12x12.png new file mode 100644 index 0000000..a3844fe Binary files /dev/null and b/images/icons/gray-dark/break_12x12.png differ diff --git a/images/icons/gray-dark/break_16x16.png b/images/icons/gray-dark/break_16x16.png new file mode 100644 index 0000000..a854940 Binary files /dev/null and b/images/icons/gray-dark/break_16x16.png differ diff --git a/images/icons/gray-dark/cd_12x12.png b/images/icons/gray-dark/cd_12x12.png new file mode 100644 index 0000000..467971c Binary files /dev/null and b/images/icons/gray-dark/cd_12x12.png differ diff --git a/images/icons/gray-dark/cd_16x16.png b/images/icons/gray-dark/cd_16x16.png new file mode 100644 index 0000000..09b5a08 Binary files /dev/null and b/images/icons/gray-dark/cd_16x16.png differ diff --git a/images/icons/gray-dark/cd_24x24.png b/images/icons/gray-dark/cd_24x24.png new file mode 100644 index 0000000..c75d8b8 Binary files /dev/null and b/images/icons/gray-dark/cd_24x24.png differ diff --git a/images/icons/gray-dark/cd_32x32.png b/images/icons/gray-dark/cd_32x32.png new file mode 100644 index 0000000..77d93ca Binary files /dev/null and b/images/icons/gray-dark/cd_32x32.png differ diff --git a/images/icons/gray-dark/cog_12x12.png b/images/icons/gray-dark/cog_12x12.png new file mode 100644 index 0000000..51dbc83 Binary files /dev/null and b/images/icons/gray-dark/cog_12x12.png differ diff --git a/images/icons/gray-dark/cog_16x16.png b/images/icons/gray-dark/cog_16x16.png new file mode 100644 index 0000000..694bf17 Binary files /dev/null and b/images/icons/gray-dark/cog_16x16.png differ diff --git a/images/icons/gray-dark/cog_24x24.png b/images/icons/gray-dark/cog_24x24.png new file mode 100644 index 0000000..0da0181 Binary files /dev/null and b/images/icons/gray-dark/cog_24x24.png differ diff --git a/images/icons/gray-dark/cog_32x32.png b/images/icons/gray-dark/cog_32x32.png new file mode 100644 index 0000000..bd1a2ad Binary files /dev/null and b/images/icons/gray-dark/cog_32x32.png differ diff --git a/images/icons/gray-dark/document_alt_stroke_12x16.png b/images/icons/gray-dark/document_alt_stroke_12x16.png new file mode 100644 index 0000000..7b1a2c2 Binary files /dev/null and b/images/icons/gray-dark/document_alt_stroke_12x16.png differ diff --git a/images/icons/gray-dark/document_alt_stroke_18x24.png b/images/icons/gray-dark/document_alt_stroke_18x24.png new file mode 100644 index 0000000..3804c09 Binary files /dev/null and b/images/icons/gray-dark/document_alt_stroke_18x24.png differ diff --git a/images/icons/gray-dark/document_alt_stroke_24x32.png b/images/icons/gray-dark/document_alt_stroke_24x32.png new file mode 100644 index 0000000..a266dea Binary files /dev/null and b/images/icons/gray-dark/document_alt_stroke_24x32.png differ diff --git a/images/icons/gray-dark/document_alt_stroke_9x12.png b/images/icons/gray-dark/document_alt_stroke_9x12.png new file mode 100644 index 0000000..c267a33 Binary files /dev/null and b/images/icons/gray-dark/document_alt_stroke_9x12.png differ diff --git a/images/icons/gray-dark/equalizer_12x12.png b/images/icons/gray-dark/equalizer_12x12.png new file mode 100644 index 0000000..47c2ee2 Binary files /dev/null and b/images/icons/gray-dark/equalizer_12x12.png differ diff --git a/images/icons/gray-dark/equalizer_16x16.png b/images/icons/gray-dark/equalizer_16x16.png new file mode 100644 index 0000000..1c88008 Binary files /dev/null and b/images/icons/gray-dark/equalizer_16x16.png differ diff --git a/images/icons/gray-dark/equalizer_24x24.png b/images/icons/gray-dark/equalizer_24x24.png new file mode 100644 index 0000000..a971760 Binary files /dev/null and b/images/icons/gray-dark/equalizer_24x24.png differ diff --git a/images/icons/gray-dark/equalizer_32x32.png b/images/icons/gray-dark/equalizer_32x32.png new file mode 100644 index 0000000..91b3fbe Binary files /dev/null and b/images/icons/gray-dark/equalizer_32x32.png differ diff --git a/images/icons/gray-dark/eye_12x9.png b/images/icons/gray-dark/eye_12x9.png new file mode 100644 index 0000000..870471f Binary files /dev/null and b/images/icons/gray-dark/eye_12x9.png differ diff --git a/images/icons/gray-dark/eye_16x12.png b/images/icons/gray-dark/eye_16x12.png new file mode 100644 index 0000000..b6b3ebf Binary files /dev/null and b/images/icons/gray-dark/eye_16x12.png differ diff --git a/images/icons/gray-dark/eye_24x18.png b/images/icons/gray-dark/eye_24x18.png new file mode 100644 index 0000000..0b7fe26 Binary files /dev/null and b/images/icons/gray-dark/eye_24x18.png differ diff --git a/images/icons/gray-dark/eye_32x24.png b/images/icons/gray-dark/eye_32x24.png new file mode 100644 index 0000000..b6888a0 Binary files /dev/null and b/images/icons/gray-dark/eye_32x24.png differ diff --git a/images/icons/gray-dark/gcs_break_16x16.png b/images/icons/gray-dark/gcs_break_16x16.png new file mode 100644 index 0000000..23246d6 Binary files /dev/null and b/images/icons/gray-dark/gcs_break_16x16.png differ diff --git a/images/icons/gray-dark/gcs_cmd_win_16x16.png b/images/icons/gray-dark/gcs_cmd_win_16x16.png new file mode 100644 index 0000000..f0d17df Binary files /dev/null and b/images/icons/gray-dark/gcs_cmd_win_16x16.png differ diff --git a/images/icons/gray-dark/gcs_eye_16x16.png b/images/icons/gray-dark/gcs_eye_16x16.png new file mode 100644 index 0000000..fbce7bd Binary files /dev/null and b/images/icons/gray-dark/gcs_eye_16x16.png differ diff --git a/images/icons/gray-dark/gcs_goto_map_pin_16x16.png b/images/icons/gray-dark/gcs_goto_map_pin_16x16.png new file mode 100644 index 0000000..47869c7 Binary files /dev/null and b/images/icons/gray-dark/gcs_goto_map_pin_16x16.png differ diff --git a/images/icons/gray-dark/gcs_link_16x16.png b/images/icons/gray-dark/gcs_link_16x16.png new file mode 100644 index 0000000..7ca32b8 Binary files /dev/null and b/images/icons/gray-dark/gcs_link_16x16.png differ diff --git a/images/icons/gray-dark/gcs_map_pin_16x16.png b/images/icons/gray-dark/gcs_map_pin_16x16.png new file mode 100644 index 0000000..dbc4e4b Binary files /dev/null and b/images/icons/gray-dark/gcs_map_pin_16x16.png differ diff --git a/images/icons/gray-dark/gcs_output_16x16.png b/images/icons/gray-dark/gcs_output_16x16.png new file mode 100644 index 0000000..c290cb3 Binary files /dev/null and b/images/icons/gray-dark/gcs_output_16x16.png differ diff --git a/images/icons/gray-dark/gcs_play_16x16.png b/images/icons/gray-dark/gcs_play_16x16.png new file mode 100644 index 0000000..7b98071 Binary files /dev/null and b/images/icons/gray-dark/gcs_play_16x16.png differ diff --git a/images/icons/gray-dark/gcs_program_16x16.png b/images/icons/gray-dark/gcs_program_16x16.png new file mode 100644 index 0000000..a1a5a72 Binary files /dev/null and b/images/icons/gray-dark/gcs_program_16x16.png differ diff --git a/images/icons/gray-dark/gcs_step_16x16.png b/images/icons/gray-dark/gcs_step_16x16.png new file mode 100644 index 0000000..b8f8005 Binary files /dev/null and b/images/icons/gray-dark/gcs_step_16x16.png differ diff --git a/images/icons/gray-dark/gcs_stop_16x16.png b/images/icons/gray-dark/gcs_stop_16x16.png new file mode 100644 index 0000000..c5dbec5 Binary files /dev/null and b/images/icons/gray-dark/gcs_stop_16x16.png differ diff --git a/images/icons/gray-dark/last_12x12.png b/images/icons/gray-dark/last_12x12.png new file mode 100644 index 0000000..bfc053b Binary files /dev/null and b/images/icons/gray-dark/last_12x12.png differ diff --git a/images/icons/gray-dark/last_16x16.png b/images/icons/gray-dark/last_16x16.png new file mode 100644 index 0000000..a8981a9 Binary files /dev/null and b/images/icons/gray-dark/last_16x16.png differ diff --git a/images/icons/gray-dark/last_24x24.png b/images/icons/gray-dark/last_24x24.png new file mode 100644 index 0000000..dcfdcca Binary files /dev/null and b/images/icons/gray-dark/last_24x24.png differ diff --git a/images/icons/gray-dark/last_32x32.png b/images/icons/gray-dark/last_32x32.png new file mode 100644 index 0000000..3ace875 Binary files /dev/null and b/images/icons/gray-dark/last_32x32.png differ diff --git a/images/icons/gray-dark/link_12x12.png b/images/icons/gray-dark/link_12x12.png new file mode 100644 index 0000000..a43d4ed Binary files /dev/null and b/images/icons/gray-dark/link_12x12.png differ diff --git a/images/icons/gray-dark/link_16x16.png b/images/icons/gray-dark/link_16x16.png new file mode 100644 index 0000000..6b41e44 Binary files /dev/null and b/images/icons/gray-dark/link_16x16.png differ diff --git a/images/icons/gray-dark/link_24x24.png b/images/icons/gray-dark/link_24x24.png new file mode 100644 index 0000000..3ca2092 Binary files /dev/null and b/images/icons/gray-dark/link_24x24.png differ diff --git a/images/icons/gray-dark/link_32x32.png b/images/icons/gray-dark/link_32x32.png new file mode 100644 index 0000000..32b90ac Binary files /dev/null and b/images/icons/gray-dark/link_32x32.png differ diff --git a/images/icons/gray-dark/list_12x11.png b/images/icons/gray-dark/list_12x11.png new file mode 100644 index 0000000..167facd Binary files /dev/null and b/images/icons/gray-dark/list_12x11.png differ diff --git a/images/icons/gray-dark/list_16x14.png b/images/icons/gray-dark/list_16x14.png new file mode 100644 index 0000000..369a678 Binary files /dev/null and b/images/icons/gray-dark/list_16x14.png differ diff --git a/images/icons/gray-dark/list_24x21.png b/images/icons/gray-dark/list_24x21.png new file mode 100644 index 0000000..314e4d8 Binary files /dev/null and b/images/icons/gray-dark/list_24x21.png differ diff --git a/images/icons/gray-dark/list_32x28.png b/images/icons/gray-dark/list_32x28.png new file mode 100644 index 0000000..f3d2acb Binary files /dev/null and b/images/icons/gray-dark/list_32x28.png differ diff --git a/images/icons/gray-dark/list_nested_12x11.png b/images/icons/gray-dark/list_nested_12x11.png new file mode 100644 index 0000000..80e3ee1 Binary files /dev/null and b/images/icons/gray-dark/list_nested_12x11.png differ diff --git a/images/icons/gray-dark/list_nested_16x14.png b/images/icons/gray-dark/list_nested_16x14.png new file mode 100644 index 0000000..c024dea Binary files /dev/null and b/images/icons/gray-dark/list_nested_16x14.png differ diff --git a/images/icons/gray-dark/list_nested_24x21.png b/images/icons/gray-dark/list_nested_24x21.png new file mode 100644 index 0000000..c0cea15 Binary files /dev/null and b/images/icons/gray-dark/list_nested_24x21.png differ diff --git a/images/icons/gray-dark/list_nested_32x28.png b/images/icons/gray-dark/list_nested_32x28.png new file mode 100644 index 0000000..040e037 Binary files /dev/null and b/images/icons/gray-dark/list_nested_32x28.png differ diff --git a/images/icons/gray-dark/map_pin_alt_12x24.png b/images/icons/gray-dark/map_pin_alt_12x24.png new file mode 100644 index 0000000..ea59de5 Binary files /dev/null and b/images/icons/gray-dark/map_pin_alt_12x24.png differ diff --git a/images/icons/gray-dark/map_pin_alt_16x32.png b/images/icons/gray-dark/map_pin_alt_16x32.png new file mode 100644 index 0000000..7daeb85 Binary files /dev/null and b/images/icons/gray-dark/map_pin_alt_16x32.png differ diff --git a/images/icons/gray-dark/map_pin_alt_6x12.png b/images/icons/gray-dark/map_pin_alt_6x12.png new file mode 100644 index 0000000..c2d8cfe Binary files /dev/null and b/images/icons/gray-dark/map_pin_alt_6x12.png differ diff --git a/images/icons/gray-dark/map_pin_alt_8x16.png b/images/icons/gray-dark/map_pin_alt_8x16.png new file mode 100644 index 0000000..e1044cf Binary files /dev/null and b/images/icons/gray-dark/map_pin_alt_8x16.png differ diff --git a/images/icons/gray-dark/move_12x12.png b/images/icons/gray-dark/move_12x12.png new file mode 100644 index 0000000..0936a0e Binary files /dev/null and b/images/icons/gray-dark/move_12x12.png differ diff --git a/images/icons/gray-dark/move_16x16.png b/images/icons/gray-dark/move_16x16.png new file mode 100644 index 0000000..208a964 Binary files /dev/null and b/images/icons/gray-dark/move_16x16.png differ diff --git a/images/icons/gray-dark/move_24x24.png b/images/icons/gray-dark/move_24x24.png new file mode 100644 index 0000000..42dc05b Binary files /dev/null and b/images/icons/gray-dark/move_24x24.png differ diff --git a/images/icons/gray-dark/move_32x32.png b/images/icons/gray-dark/move_32x32.png new file mode 100644 index 0000000..40f973b Binary files /dev/null and b/images/icons/gray-dark/move_32x32.png differ diff --git a/images/icons/gray-dark/new_window_12x12.png b/images/icons/gray-dark/new_window_12x12.png new file mode 100644 index 0000000..f62820b Binary files /dev/null and b/images/icons/gray-dark/new_window_12x12.png differ diff --git a/images/icons/gray-dark/new_window_16x16.png b/images/icons/gray-dark/new_window_16x16.png new file mode 100644 index 0000000..377ee80 Binary files /dev/null and b/images/icons/gray-dark/new_window_16x16.png differ diff --git a/images/icons/gray-dark/new_window_24x24.png b/images/icons/gray-dark/new_window_24x24.png new file mode 100644 index 0000000..fcf01f6 Binary files /dev/null and b/images/icons/gray-dark/new_window_24x24.png differ diff --git a/images/icons/gray-dark/new_window_32x32.png b/images/icons/gray-dark/new_window_32x32.png new file mode 100644 index 0000000..1194a6b Binary files /dev/null and b/images/icons/gray-dark/new_window_32x32.png differ diff --git a/images/icons/gray-dark/play_12x16.png b/images/icons/gray-dark/play_12x16.png new file mode 100644 index 0000000..7d3bc09 Binary files /dev/null and b/images/icons/gray-dark/play_12x16.png differ diff --git a/images/icons/gray-dark/play_18x24.png b/images/icons/gray-dark/play_18x24.png new file mode 100644 index 0000000..51ded3b Binary files /dev/null and b/images/icons/gray-dark/play_18x24.png differ diff --git a/images/icons/gray-dark/play_24x32.png b/images/icons/gray-dark/play_24x32.png new file mode 100644 index 0000000..d4c8041 Binary files /dev/null and b/images/icons/gray-dark/play_24x32.png differ diff --git a/images/icons/gray-dark/play_9x12.png b/images/icons/gray-dark/play_9x12.png new file mode 100644 index 0000000..a5f70e9 Binary files /dev/null and b/images/icons/gray-dark/play_9x12.png differ diff --git a/images/icons/gray-dark/stop_12x12.png b/images/icons/gray-dark/stop_12x12.png new file mode 100644 index 0000000..5dabe3d Binary files /dev/null and b/images/icons/gray-dark/stop_12x12.png differ diff --git a/images/icons/gray-dark/stop_16x16.png b/images/icons/gray-dark/stop_16x16.png new file mode 100644 index 0000000..ca2631f Binary files /dev/null and b/images/icons/gray-dark/stop_16x16.png differ diff --git a/images/icons/gray-dark/stop_24x24.png b/images/icons/gray-dark/stop_24x24.png new file mode 100644 index 0000000..780c39e Binary files /dev/null and b/images/icons/gray-dark/stop_24x24.png differ diff --git a/images/icons/gray-dark/stop_32x32.png b/images/icons/gray-dark/stop_32x32.png new file mode 100644 index 0000000..5c3a7c0 Binary files /dev/null and b/images/icons/gray-dark/stop_32x32.png differ diff --git a/images/icons/gray-dark/target_12x12.png b/images/icons/gray-dark/target_12x12.png new file mode 100644 index 0000000..b66d34a Binary files /dev/null and b/images/icons/gray-dark/target_12x12.png differ diff --git a/images/icons/gray-dark/target_16x16.png b/images/icons/gray-dark/target_16x16.png new file mode 100644 index 0000000..b0bd12e Binary files /dev/null and b/images/icons/gray-dark/target_16x16.png differ diff --git a/images/icons/gray-dark/target_24x24.png b/images/icons/gray-dark/target_24x24.png new file mode 100644 index 0000000..e3c30bd Binary files /dev/null and b/images/icons/gray-dark/target_24x24.png differ diff --git a/images/icons/gray-dark/target_32x32.png b/images/icons/gray-dark/target_32x32.png new file mode 100644 index 0000000..bf6a982 Binary files /dev/null and b/images/icons/gray-dark/target_32x32.png differ diff --git a/images/icons/gray-dark/x_alt_12x12.png b/images/icons/gray-dark/x_alt_12x12.png new file mode 100644 index 0000000..1585cce Binary files /dev/null and b/images/icons/gray-dark/x_alt_12x12.png differ diff --git a/images/icons/gray-dark/x_alt_16x16.png b/images/icons/gray-dark/x_alt_16x16.png new file mode 100644 index 0000000..cb4d4ba Binary files /dev/null and b/images/icons/gray-dark/x_alt_16x16.png differ diff --git a/images/icons/gray-dark/x_alt_24x24.png b/images/icons/gray-dark/x_alt_24x24.png new file mode 100644 index 0000000..9d4e8a0 Binary files /dev/null and b/images/icons/gray-dark/x_alt_24x24.png differ diff --git a/images/icons/gray-dark/x_alt_32x32.png b/images/icons/gray-dark/x_alt_32x32.png new file mode 100644 index 0000000..65c8454 Binary files /dev/null and b/images/icons/gray-dark/x_alt_32x32.png differ diff --git a/images/icons/gray/16x16.xcf b/images/icons/gray/16x16.xcf new file mode 100644 index 0000000..4acd06c Binary files /dev/null and b/images/icons/gray/16x16.xcf differ diff --git a/images/icons/gray/arrow_down_12x12.png b/images/icons/gray/arrow_down_12x12.png new file mode 100644 index 0000000..8fd5452 Binary files /dev/null and b/images/icons/gray/arrow_down_12x12.png differ diff --git a/images/icons/gray/arrow_down_16x16.png b/images/icons/gray/arrow_down_16x16.png new file mode 100644 index 0000000..f0bc1e4 Binary files /dev/null and b/images/icons/gray/arrow_down_16x16.png differ diff --git a/images/icons/gray/arrow_down_24x24.png b/images/icons/gray/arrow_down_24x24.png new file mode 100644 index 0000000..35b9b9c Binary files /dev/null and b/images/icons/gray/arrow_down_24x24.png differ diff --git a/images/icons/gray/arrow_down_32x32.png b/images/icons/gray/arrow_down_32x32.png new file mode 100644 index 0000000..f6ca265 Binary files /dev/null and b/images/icons/gray/arrow_down_32x32.png differ diff --git a/images/icons/gray/arrow_left_12x12.png b/images/icons/gray/arrow_left_12x12.png new file mode 100644 index 0000000..87db1dd Binary files /dev/null and b/images/icons/gray/arrow_left_12x12.png differ diff --git a/images/icons/gray/arrow_left_16x16.png b/images/icons/gray/arrow_left_16x16.png new file mode 100644 index 0000000..2e6b176 Binary files /dev/null and b/images/icons/gray/arrow_left_16x16.png differ diff --git a/images/icons/gray/arrow_left_24x24.png b/images/icons/gray/arrow_left_24x24.png new file mode 100644 index 0000000..e243bad Binary files /dev/null and b/images/icons/gray/arrow_left_24x24.png differ diff --git a/images/icons/gray/arrow_left_32x32.png b/images/icons/gray/arrow_left_32x32.png new file mode 100644 index 0000000..ee7dc87 Binary files /dev/null and b/images/icons/gray/arrow_left_32x32.png differ diff --git a/images/icons/gray/arrow_right_12x12.png b/images/icons/gray/arrow_right_12x12.png new file mode 100644 index 0000000..3a1382c Binary files /dev/null and b/images/icons/gray/arrow_right_12x12.png differ diff --git a/images/icons/gray/arrow_right_16x16.png b/images/icons/gray/arrow_right_16x16.png new file mode 100644 index 0000000..7d9f14a Binary files /dev/null and b/images/icons/gray/arrow_right_16x16.png differ diff --git a/images/icons/gray/arrow_right_24x24.png b/images/icons/gray/arrow_right_24x24.png new file mode 100644 index 0000000..680f465 Binary files /dev/null and b/images/icons/gray/arrow_right_24x24.png differ diff --git a/images/icons/gray/arrow_right_32x32.png b/images/icons/gray/arrow_right_32x32.png new file mode 100644 index 0000000..d256476 Binary files /dev/null and b/images/icons/gray/arrow_right_32x32.png differ diff --git a/images/icons/gray/arrow_up_12x12.png b/images/icons/gray/arrow_up_12x12.png new file mode 100644 index 0000000..1f45d28 Binary files /dev/null and b/images/icons/gray/arrow_up_12x12.png differ diff --git a/images/icons/gray/arrow_up_16x16.png b/images/icons/gray/arrow_up_16x16.png new file mode 100644 index 0000000..9cde7e5 Binary files /dev/null and b/images/icons/gray/arrow_up_16x16.png differ diff --git a/images/icons/gray/arrow_up_24x24.png b/images/icons/gray/arrow_up_24x24.png new file mode 100644 index 0000000..667438a Binary files /dev/null and b/images/icons/gray/arrow_up_24x24.png differ diff --git a/images/icons/gray/arrow_up_32x32.png b/images/icons/gray/arrow_up_32x32.png new file mode 100644 index 0000000..b73aa25 Binary files /dev/null and b/images/icons/gray/arrow_up_32x32.png differ diff --git a/images/icons/gray/break_12x12.png b/images/icons/gray/break_12x12.png new file mode 100644 index 0000000..a3844fe Binary files /dev/null and b/images/icons/gray/break_12x12.png differ diff --git a/images/icons/gray/break_16x16.png b/images/icons/gray/break_16x16.png new file mode 100644 index 0000000..a854940 Binary files /dev/null and b/images/icons/gray/break_16x16.png differ diff --git a/images/icons/gray/cd_12x12.png b/images/icons/gray/cd_12x12.png new file mode 100644 index 0000000..f405444 Binary files /dev/null and b/images/icons/gray/cd_12x12.png differ diff --git a/images/icons/gray/cd_16x16.png b/images/icons/gray/cd_16x16.png new file mode 100644 index 0000000..6f13318 Binary files /dev/null and b/images/icons/gray/cd_16x16.png differ diff --git a/images/icons/gray/cd_24x24.png b/images/icons/gray/cd_24x24.png new file mode 100644 index 0000000..21cbeff Binary files /dev/null and b/images/icons/gray/cd_24x24.png differ diff --git a/images/icons/gray/cd_32x32.png b/images/icons/gray/cd_32x32.png new file mode 100644 index 0000000..4b484ad Binary files /dev/null and b/images/icons/gray/cd_32x32.png differ diff --git a/images/icons/gray/cog_12x12.png b/images/icons/gray/cog_12x12.png new file mode 100644 index 0000000..6686360 Binary files /dev/null and b/images/icons/gray/cog_12x12.png differ diff --git a/images/icons/gray/cog_16x16.png b/images/icons/gray/cog_16x16.png new file mode 100644 index 0000000..7134698 Binary files /dev/null and b/images/icons/gray/cog_16x16.png differ diff --git a/images/icons/gray/cog_24x24.png b/images/icons/gray/cog_24x24.png new file mode 100644 index 0000000..785b909 Binary files /dev/null and b/images/icons/gray/cog_24x24.png differ diff --git a/images/icons/gray/cog_32x32.png b/images/icons/gray/cog_32x32.png new file mode 100644 index 0000000..c243683 Binary files /dev/null and b/images/icons/gray/cog_32x32.png differ diff --git a/images/icons/gray/document_alt_stroke_12x16.png b/images/icons/gray/document_alt_stroke_12x16.png new file mode 100644 index 0000000..c2bc6b1 Binary files /dev/null and b/images/icons/gray/document_alt_stroke_12x16.png differ diff --git a/images/icons/gray/document_alt_stroke_18x24.png b/images/icons/gray/document_alt_stroke_18x24.png new file mode 100644 index 0000000..3dcc226 Binary files /dev/null and b/images/icons/gray/document_alt_stroke_18x24.png differ diff --git a/images/icons/gray/document_alt_stroke_24x32.png b/images/icons/gray/document_alt_stroke_24x32.png new file mode 100644 index 0000000..fd3ed55 Binary files /dev/null and b/images/icons/gray/document_alt_stroke_24x32.png differ diff --git a/images/icons/gray/document_alt_stroke_9x12.png b/images/icons/gray/document_alt_stroke_9x12.png new file mode 100644 index 0000000..be3d187 Binary files /dev/null and b/images/icons/gray/document_alt_stroke_9x12.png differ diff --git a/images/icons/gray/equalizer_12x12.png b/images/icons/gray/equalizer_12x12.png new file mode 100644 index 0000000..ebf7786 Binary files /dev/null and b/images/icons/gray/equalizer_12x12.png differ diff --git a/images/icons/gray/equalizer_16x16.png b/images/icons/gray/equalizer_16x16.png new file mode 100644 index 0000000..23714a7 Binary files /dev/null and b/images/icons/gray/equalizer_16x16.png differ diff --git a/images/icons/gray/equalizer_24x24.png b/images/icons/gray/equalizer_24x24.png new file mode 100644 index 0000000..08452a0 Binary files /dev/null and b/images/icons/gray/equalizer_24x24.png differ diff --git a/images/icons/gray/equalizer_32x32.png b/images/icons/gray/equalizer_32x32.png new file mode 100644 index 0000000..7862e98 Binary files /dev/null and b/images/icons/gray/equalizer_32x32.png differ diff --git a/images/icons/gray/eye_12x9.png b/images/icons/gray/eye_12x9.png new file mode 100644 index 0000000..f53f182 Binary files /dev/null and b/images/icons/gray/eye_12x9.png differ diff --git a/images/icons/gray/eye_16x12.png b/images/icons/gray/eye_16x12.png new file mode 100644 index 0000000..a2975f7 Binary files /dev/null and b/images/icons/gray/eye_16x12.png differ diff --git a/images/icons/gray/eye_24x18.png b/images/icons/gray/eye_24x18.png new file mode 100644 index 0000000..2b3ba38 Binary files /dev/null and b/images/icons/gray/eye_24x18.png differ diff --git a/images/icons/gray/eye_32x24.png b/images/icons/gray/eye_32x24.png new file mode 100644 index 0000000..5e673c2 Binary files /dev/null and b/images/icons/gray/eye_32x24.png differ diff --git a/images/icons/gray/gcs_break_16x16.png b/images/icons/gray/gcs_break_16x16.png new file mode 100644 index 0000000..b928326 Binary files /dev/null and b/images/icons/gray/gcs_break_16x16.png differ diff --git a/images/icons/gray/gcs_cmd_win_16x16.png b/images/icons/gray/gcs_cmd_win_16x16.png new file mode 100644 index 0000000..de355b9 Binary files /dev/null and b/images/icons/gray/gcs_cmd_win_16x16.png differ diff --git a/images/icons/gray/gcs_eye_16x16.png b/images/icons/gray/gcs_eye_16x16.png new file mode 100644 index 0000000..8a8cf99 Binary files /dev/null and b/images/icons/gray/gcs_eye_16x16.png differ diff --git a/images/icons/gray/gcs_goto_map_pin_16x16.png b/images/icons/gray/gcs_goto_map_pin_16x16.png new file mode 100644 index 0000000..d336bdf Binary files /dev/null and b/images/icons/gray/gcs_goto_map_pin_16x16.png differ diff --git a/images/icons/gray/gcs_link_16x16.png b/images/icons/gray/gcs_link_16x16.png new file mode 100644 index 0000000..d8f3dc6 Binary files /dev/null and b/images/icons/gray/gcs_link_16x16.png differ diff --git a/images/icons/gray/gcs_map_pin_16x16.png b/images/icons/gray/gcs_map_pin_16x16.png new file mode 100644 index 0000000..3b1edd8 Binary files /dev/null and b/images/icons/gray/gcs_map_pin_16x16.png differ diff --git a/images/icons/gray/gcs_output_16x16.png b/images/icons/gray/gcs_output_16x16.png new file mode 100644 index 0000000..98d957b Binary files /dev/null and b/images/icons/gray/gcs_output_16x16.png differ diff --git a/images/icons/gray/gcs_play_16x16.png b/images/icons/gray/gcs_play_16x16.png new file mode 100644 index 0000000..c2d5837 Binary files /dev/null and b/images/icons/gray/gcs_play_16x16.png differ diff --git a/images/icons/gray/gcs_program_16x16.png b/images/icons/gray/gcs_program_16x16.png new file mode 100644 index 0000000..0eb009f Binary files /dev/null and b/images/icons/gray/gcs_program_16x16.png differ diff --git a/images/icons/gray/gcs_step_16x16.png b/images/icons/gray/gcs_step_16x16.png new file mode 100644 index 0000000..01a4ae8 Binary files /dev/null and b/images/icons/gray/gcs_step_16x16.png differ diff --git a/images/icons/gray/gcs_stop_16x16.png b/images/icons/gray/gcs_stop_16x16.png new file mode 100644 index 0000000..268a02c Binary files /dev/null and b/images/icons/gray/gcs_stop_16x16.png differ diff --git a/images/icons/gray/last_12x12.png b/images/icons/gray/last_12x12.png new file mode 100644 index 0000000..501e4ca Binary files /dev/null and b/images/icons/gray/last_12x12.png differ diff --git a/images/icons/gray/last_16x16.png b/images/icons/gray/last_16x16.png new file mode 100644 index 0000000..3e0e4b7 Binary files /dev/null and b/images/icons/gray/last_16x16.png differ diff --git a/images/icons/gray/last_24x24.png b/images/icons/gray/last_24x24.png new file mode 100644 index 0000000..221a076 Binary files /dev/null and b/images/icons/gray/last_24x24.png differ diff --git a/images/icons/gray/last_32x32.png b/images/icons/gray/last_32x32.png new file mode 100644 index 0000000..1acd31d Binary files /dev/null and b/images/icons/gray/last_32x32.png differ diff --git a/images/icons/gray/link_12x12.png b/images/icons/gray/link_12x12.png new file mode 100644 index 0000000..cee27ea Binary files /dev/null and b/images/icons/gray/link_12x12.png differ diff --git a/images/icons/gray/link_16x16.png b/images/icons/gray/link_16x16.png new file mode 100644 index 0000000..1fe0820 Binary files /dev/null and b/images/icons/gray/link_16x16.png differ diff --git a/images/icons/gray/link_24x24.png b/images/icons/gray/link_24x24.png new file mode 100644 index 0000000..7a127c7 Binary files /dev/null and b/images/icons/gray/link_24x24.png differ diff --git a/images/icons/gray/link_32x32.png b/images/icons/gray/link_32x32.png new file mode 100644 index 0000000..f2c7c04 Binary files /dev/null and b/images/icons/gray/link_32x32.png differ diff --git a/images/icons/gray/list_12x11.png b/images/icons/gray/list_12x11.png new file mode 100644 index 0000000..ff5f867 Binary files /dev/null and b/images/icons/gray/list_12x11.png differ diff --git a/images/icons/gray/list_16x14.png b/images/icons/gray/list_16x14.png new file mode 100644 index 0000000..64e9a2c Binary files /dev/null and b/images/icons/gray/list_16x14.png differ diff --git a/images/icons/gray/list_24x21.png b/images/icons/gray/list_24x21.png new file mode 100644 index 0000000..0a98fae Binary files /dev/null and b/images/icons/gray/list_24x21.png differ diff --git a/images/icons/gray/list_32x28.png b/images/icons/gray/list_32x28.png new file mode 100644 index 0000000..b0e2fe4 Binary files /dev/null and b/images/icons/gray/list_32x28.png differ diff --git a/images/icons/gray/list_nested_12x11.png b/images/icons/gray/list_nested_12x11.png new file mode 100644 index 0000000..49b2d68 Binary files /dev/null and b/images/icons/gray/list_nested_12x11.png differ diff --git a/images/icons/gray/list_nested_16x14.png b/images/icons/gray/list_nested_16x14.png new file mode 100644 index 0000000..1541096 Binary files /dev/null and b/images/icons/gray/list_nested_16x14.png differ diff --git a/images/icons/gray/list_nested_24x21.png b/images/icons/gray/list_nested_24x21.png new file mode 100644 index 0000000..18ebe0d Binary files /dev/null and b/images/icons/gray/list_nested_24x21.png differ diff --git a/images/icons/gray/list_nested_32x28.png b/images/icons/gray/list_nested_32x28.png new file mode 100644 index 0000000..cca0edd Binary files /dev/null and b/images/icons/gray/list_nested_32x28.png differ diff --git a/images/icons/gray/map_pin_alt_12x24.png b/images/icons/gray/map_pin_alt_12x24.png new file mode 100644 index 0000000..79e7617 Binary files /dev/null and b/images/icons/gray/map_pin_alt_12x24.png differ diff --git a/images/icons/gray/map_pin_alt_16x32.png b/images/icons/gray/map_pin_alt_16x32.png new file mode 100644 index 0000000..a022fd7 Binary files /dev/null and b/images/icons/gray/map_pin_alt_16x32.png differ diff --git a/images/icons/gray/map_pin_alt_6x12.png b/images/icons/gray/map_pin_alt_6x12.png new file mode 100644 index 0000000..81c0fe2 Binary files /dev/null and b/images/icons/gray/map_pin_alt_6x12.png differ diff --git a/images/icons/gray/map_pin_alt_8x16.png b/images/icons/gray/map_pin_alt_8x16.png new file mode 100644 index 0000000..497c5f9 Binary files /dev/null and b/images/icons/gray/map_pin_alt_8x16.png differ diff --git a/images/icons/gray/move_12x12.png b/images/icons/gray/move_12x12.png new file mode 100644 index 0000000..4b7142c Binary files /dev/null and b/images/icons/gray/move_12x12.png differ diff --git a/images/icons/gray/move_16x16.png b/images/icons/gray/move_16x16.png new file mode 100644 index 0000000..54f1bdf Binary files /dev/null and b/images/icons/gray/move_16x16.png differ diff --git a/images/icons/gray/move_24x24.png b/images/icons/gray/move_24x24.png new file mode 100644 index 0000000..2b47840 Binary files /dev/null and b/images/icons/gray/move_24x24.png differ diff --git a/images/icons/gray/move_32x32.png b/images/icons/gray/move_32x32.png new file mode 100644 index 0000000..fac3656 Binary files /dev/null and b/images/icons/gray/move_32x32.png differ diff --git a/images/icons/gray/new_window_12x12.png b/images/icons/gray/new_window_12x12.png new file mode 100644 index 0000000..be3464f Binary files /dev/null and b/images/icons/gray/new_window_12x12.png differ diff --git a/images/icons/gray/new_window_16x16.png b/images/icons/gray/new_window_16x16.png new file mode 100644 index 0000000..e0b1002 Binary files /dev/null and b/images/icons/gray/new_window_16x16.png differ diff --git a/images/icons/gray/new_window_24x24.png b/images/icons/gray/new_window_24x24.png new file mode 100644 index 0000000..0d83e59 Binary files /dev/null and b/images/icons/gray/new_window_24x24.png differ diff --git a/images/icons/gray/new_window_32x32.png b/images/icons/gray/new_window_32x32.png new file mode 100644 index 0000000..12a6e5e Binary files /dev/null and b/images/icons/gray/new_window_32x32.png differ diff --git a/images/icons/gray/play_12x16.png b/images/icons/gray/play_12x16.png new file mode 100644 index 0000000..123df41 Binary files /dev/null and b/images/icons/gray/play_12x16.png differ diff --git a/images/icons/gray/play_18x24.png b/images/icons/gray/play_18x24.png new file mode 100644 index 0000000..21fb657 Binary files /dev/null and b/images/icons/gray/play_18x24.png differ diff --git a/images/icons/gray/play_24x32.png b/images/icons/gray/play_24x32.png new file mode 100644 index 0000000..c391e87 Binary files /dev/null and b/images/icons/gray/play_24x32.png differ diff --git a/images/icons/gray/play_9x12.png b/images/icons/gray/play_9x12.png new file mode 100644 index 0000000..307e508 Binary files /dev/null and b/images/icons/gray/play_9x12.png differ diff --git a/images/icons/gray/stop_12x12.png b/images/icons/gray/stop_12x12.png new file mode 100644 index 0000000..b6383f3 Binary files /dev/null and b/images/icons/gray/stop_12x12.png differ diff --git a/images/icons/gray/stop_16x16.png b/images/icons/gray/stop_16x16.png new file mode 100644 index 0000000..12e3e6a Binary files /dev/null and b/images/icons/gray/stop_16x16.png differ diff --git a/images/icons/gray/stop_24x24.png b/images/icons/gray/stop_24x24.png new file mode 100644 index 0000000..e7da767 Binary files /dev/null and b/images/icons/gray/stop_24x24.png differ diff --git a/images/icons/gray/stop_32x32.png b/images/icons/gray/stop_32x32.png new file mode 100644 index 0000000..87252c6 Binary files /dev/null and b/images/icons/gray/stop_32x32.png differ diff --git a/images/icons/gray/target_12x12.png b/images/icons/gray/target_12x12.png new file mode 100644 index 0000000..d474a08 Binary files /dev/null and b/images/icons/gray/target_12x12.png differ diff --git a/images/icons/gray/target_16x16.png b/images/icons/gray/target_16x16.png new file mode 100644 index 0000000..d3691e6 Binary files /dev/null and b/images/icons/gray/target_16x16.png differ diff --git a/images/icons/gray/target_24x24.png b/images/icons/gray/target_24x24.png new file mode 100644 index 0000000..64e18d8 Binary files /dev/null and b/images/icons/gray/target_24x24.png differ diff --git a/images/icons/gray/target_32x32.png b/images/icons/gray/target_32x32.png new file mode 100644 index 0000000..bad6234 Binary files /dev/null and b/images/icons/gray/target_32x32.png differ diff --git a/images/icons/gray/x_alt_12x12.png b/images/icons/gray/x_alt_12x12.png new file mode 100644 index 0000000..b2683be Binary files /dev/null and b/images/icons/gray/x_alt_12x12.png differ diff --git a/images/icons/gray/x_alt_16x16.png b/images/icons/gray/x_alt_16x16.png new file mode 100644 index 0000000..de4ffaa Binary files /dev/null and b/images/icons/gray/x_alt_16x16.png differ diff --git a/images/icons/gray/x_alt_24x24.png b/images/icons/gray/x_alt_24x24.png new file mode 100644 index 0000000..826ebf9 Binary files /dev/null and b/images/icons/gray/x_alt_24x24.png differ diff --git a/images/icons/gray/x_alt_32x32.png b/images/icons/gray/x_alt_32x32.png new file mode 100644 index 0000000..b443b68 Binary files /dev/null and b/images/icons/gray/x_alt_32x32.png differ