toolbars.py 4.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. """!
  2. @package psmap.toolbars
  3. @brief wxPsMap toolbars classes
  4. Classes:
  5. - PsMapToolbar
  6. (C) 2007-2011 by the GRASS Development Team
  7. This program is free software under the GNU General Public License
  8. (>=v2). Read the file COPYING that comes with GRASS for details.
  9. @author Anna Kratochvilova <kratochanna gmail.com>
  10. """
  11. import os
  12. import sys
  13. import wx
  14. from core import globalvar
  15. from gui_core.toolbars import BaseToolbar
  16. sys.path.append(os.path.join(globalvar.ETCWXDIR, "icons"))
  17. from icon import Icons
  18. class PsMapToolbar(BaseToolbar):
  19. def __init__(self, parent):
  20. """!Toolbar Cartographic Composer (psmap.py)
  21. @param parent parent window
  22. """
  23. AbstractToolbar.__init__(self, parent)
  24. self.InitToolbar(self._toolbarData())
  25. self.Realize()
  26. self.action = { 'id' : self.pointer }
  27. self.defaultAction = { 'id' : self.pointer,
  28. 'bind' : self.parent.OnPointer }
  29. self.OnTool(None)
  30. from psmap import havePILImage
  31. if not havePILImage:
  32. self.EnableTool(self.preview, False)
  33. def _toolbarData(self):
  34. """!Toolbar data
  35. """
  36. icons = Icons['psMap']
  37. return self._getToolbarData((('loadFile', icons['scriptLoad'],
  38. self.parent.OnLoadFile),
  39. ('instructionFile', icons['scriptSave'],
  40. self.parent.OnInstructionFile),
  41. (None, ),
  42. ('pagesetup', icons['pageSetup'],
  43. self.parent.OnPageSetup),
  44. (None, ),
  45. ("pointer", Icons["displayWindow"]["pointer"],
  46. self.parent.OnPointer, wx.ITEM_CHECK),
  47. ('pan', Icons["displayWindow"]['pan'],
  48. self.parent.OnPan, wx.ITEM_CHECK),
  49. ("zoomin", Icons["displayWindow"]["zoomIn"],
  50. self.parent.OnZoomIn, wx.ITEM_CHECK),
  51. ("zoomout", Icons["displayWindow"]["zoomOut"],
  52. self.parent.OnZoomOut, wx.ITEM_CHECK),
  53. ('zoomAll', icons['fullExtent'],
  54. self.parent.OnZoomAll),
  55. (None, ),
  56. ('addMap', icons['addMap'],
  57. self.parent.OnAddMap, wx.ITEM_CHECK),
  58. ('addRaster', icons['addRast'],
  59. self.parent.OnAddRaster),
  60. ('addVector', icons['addVect'],
  61. self.parent.OnAddVect),
  62. ("dec", Icons["displayWindow"]["overlay"],
  63. self.parent.OnDecoration),
  64. ("delete", icons["deleteObj"],
  65. self.parent.OnDelete),
  66. (None, ),
  67. ("preview", icons["preview"],
  68. self.parent.OnPreview),
  69. ('generatePS', icons['psExport'],
  70. self.parent.OnPSFile),
  71. ('generatePDF', icons['pdfExport'],
  72. self.parent.OnPDFFile),
  73. (None, ),
  74. ("help", Icons['misc']['help'],
  75. self.parent.OnHelp),
  76. ('quit', icons['quit'],
  77. self.parent.OnCloseWindow))
  78. )