
    ը	fU,                         d Z ddlmZ ddlmZmZmZ ddlmZ  G d de      Z	 G d de      Z
 G d	 d
e      Z G d de      Z G d de      Zy)aS  
@package lmgr.toolbars

@brief wxGUI Layer Manager - toolbars

Classes:
 - toolbars::LMWorkspaceToolbar
 - toolbars::DisplayPanelToolbar
 - toolbars::LMToolsToolbar
 - toolbars::LMMiscToolbar
 - toolbars::LMNvizToolbar


(C) 2007-2013 by the GRASS Development Team

This program is free software under the GNU General Public License
(>=v2). Read the file COPYING that comes with GRASS for details.

@author Michael Barton
@author Jachym Cepicky
@author Martin Landa <landa.martin gmail.com>
@author Anna Kratochvilova <kratochanna gmail.com>
@author Linda Kladivova <linda.kladivova gmail com>
    )
RunCommand)BaseToolbar
AuiToolbar	BaseIcons)MetaIconc                       e Zd ZdZd Zd Zy)LMWorkspaceToolbarz!Layer Manager `workspace` toolbarc                     t        j                  | |       | j                  | j                                | j	                          y Nr   __init__InitToolbar_toolbarDataRealizeselfparents     ./usr/lib/grass83/gui/wxpython/lmgr/toolbars.pyr   zLMWorkspaceToolbar.__init__"   4    D&)**,- 	    c                    t        dt        d            t        dt        d            t        dt        d            d}| j                  d	t        d
      f|d	   | j                  j                  fdt        d      f|d   | j                  j
                  fdt        d      f|d   | j                  j                  ff      S )Toolbar datacreatezCreate new workspace (Ctrl+N)imglabelopenz%Open existing workspace file (Ctrl+O)savez'Save current workspace to file (Ctrl+S))workspaceNewworkspaceOpenworkspaceSaver   zNew workspacer    zOpen workspacer!   zSave workspace)r   __getToolbarDatar   OnWorkspaceNewOnWorkspaceOpenOnWorkspaceSaver   iconss     r   r   zLMWorkspaceToolbar._toolbarData*   s     %A&E$F &!$K"L &!$M"N

 ## $Q%78.)KK.. %a(8&9:/*KK// %a(8&9:/*KK//
 	
r   N__name__
__module____qualname____doc__r   r    r   r   r	   r	      s    +
r   r	   c                       e Zd ZdZd Zd Zy)DisplayPanelToolbarzToolbar for display tabc                     t        j                  | |       || _        | j                  | j	                                | j                          y r   )r   r   r   r   r   r   )r   	guiparentr   s      r   r   zDisplayPanelToolbar.__init__O   s;    T9-**,- 	r   c                    t        dt        d            t        d   j                  t        d            t        dt        d            t        d   j                  t        d	            t        d
t        d            t        dt        d            t        dt        d            t        dt        d            t        dt        d            t        dt        d            t        dt        d            d}| j	                  dt        d      f|d   | j
                  j                  fdt        d      f|d   | j
                  j                  fdt        d      f|d   | j
                  j                  fd t        d!      f|d   | j
                  j                  fd"t        d#      f|d$   | j
                  j                  fd%t        d      f|d&   | j
                  j                  fd't        d(      f|d'   | j
                  j                  fd)d*|d+   j                  f|d+   | j
                  j                  fd,t        d-      f|d.   | j
                  j                  fd)d/|d/   j                  f|d/   | j
                  j                   fd0|d1   j                  f|d1   | j
                  j"                  ff      S )2r   z
layer-openz7Add multiple raster or vector map layers (Ctrl+Shift+L)r   addRastz#Add raster map layer (Ctrl+Shift+R)zlayer-raster-morez:Add various raster map layers (RGB, HIS, shaded relief...)addVectz#Add vector map layer (Ctrl+Shift+V)zlayer-vector-morez2Add various vector map layers (thematic, chart...)zlayer-wms-addz/Add web service layer (WMS, WMTS, NASA OnEarth)zlayer-group-addz	Add groupz
layer-morezAdd various overlayszlayer-removez,Remove selected map layer(s) from layer treeeditzEdit selected vector maptablez+Show attribute data for selected vector map)addMultir4   rastMiscr5   vectMiscaddWSaddGroup
addOverlaydelCmdvdigit	attrTabler8   zAdd multiple map layersaddrastzAdd raster maprastmisczAdd various raster mapsr9   addvectzAdd vector mapvectmisczAdd various vector mapsr:   addovlr=   r;   zAdd web service mapr   addgrpr<   delcmdzDelete map layerr>   r?   	attributer@   )r   r"   r   SetLabelr#   r   	OnAddMapsOnAddRasterOnAddRasterMiscOnAddVectorOnAddVectorMiscOnAddOverlayOnAddWSr   
OnAddGroupOnDeleteLayerOnVDigitOnShowAttributeTabler'   s     r   r   z DisplayPanelToolbar._toolbarDataX   s    ! QR !+4478 !'TU !+4478 !'LM #IJ !%6anM"|1=S;TU"FG 63M1NO!1%R#S=!
F ##  #<!=>*%KK)) "2 34)$KK++  #<!=>*%KK// "2 34)$KK++  #<!=>*%KK// q!789,'KK,, a 567'NKK''
 uZ0667*%KK** q!345(OKK--
 uX445(OKK(( !%"4":":;+&KK44k:<
 <	
r   Nr)   r.   r   r   r0   r0   L   s    !a
r   r0   c                       e Zd ZdZd Zd Zy)LMToolsToolbarzLayer Manager `tools` toolbarc                     t        j                  | |       | j                  | j                                | j	                          y r   r   r   s     r   r   zLMToolsToolbar.__init__   r   r   c                    t        dt        d            t        dt        d            t        dt        d            t        dt        d	            t        d
t        d            t        dt        d            t        dt        d            d}| j                  dt        d      f|d   | j                  j                  fdd|d   j
                  f|d   | j                  j                  fd|d   j
                  f|d   | j                  j                  fd|d   j
                  f|d   | j                  j                  fd|d   j
                  f|d   | j                  j                  fdd|d   j
                  f|d   | j                  j                  fdt        d      f|d   | j                  j                  ff	      S )r   zmonitor-createzStart new map displayr   zraster-calculatorzRaster Map Calculatorzmodeler-mainzGraphical Modeler
georectifyGeorectifierzprint-composezCartographic Composerscript-loadzLaunch user-defined scriptpythonz Open a simple Python code editor)
newdisplaymapcalcmodelerrY   composerr[   r\   r]   zNew displayr   mapCalcr^   georectr_   	mapOutputr`   zPython code editor)r   r"   r#   r   OnNewDisplayr   OnMapCalculatorOnGCPManager
OnGModelerOnPsMapOnRunScriptOnSimpleEditorr'   s     r   r   zLMToolsToolbar._toolbarData   s    #$A.E,F  'q1H/I  N!<O:PQ"|1^;LM _A>U<VW#!+G)H A&H$I
$ ## "1]#34,'KK,,
 i 0 6 67)$KK// l 3 9 9:,'KK,, i 0 6 67)$KK** !%
"3"9"9:*%KK''
 "E-$8$>$>?-(KK++ q!567(OKK..C&(
 (	
r   Nr)   r.   r   r   rV   rV      s    '<
r   rV   c                       e Zd ZdZd Zd Zy)LMMiscToolbarzLayer Manager `misc` toolbarc                     t        j                  | |       | j                  | j                                | j	                          y r   r   r   s     r   r   zLMMiscToolbar.__init__	  r   r   c                 R   t         d   j                  t        d            t         d   j                  t        d            d}| j                  d|d   j                  f|d   | j
                  j                  fd|d   j                  f|d   | j
                  j                  ff      S )r   settingszGUI settingshelpzGRASS manual)ro   rp   )r   rI   r"   r#   r   r   OnPreferencesOnHelpr'   s     r   r   zLMMiscToolbar._toolbarData  s     "*-66q7HIf%..q/@A

 ##  z!2!8!89*%KK-- U6]001&MKK&&
 	
r   Nr)   r.   r   r   rl   rl     s    &
r   rl   c                   (    e Zd ZdZd Zd Zd Zd Zy)LMNvizToolbarzNviz toolbarc                     || _         t        j                  | |       d | _        | j	                  | j                                | j                          y r   )lmgrr   r   settingsDialogr   r   r   r   s     r   r   zLMNvizToolbar.__init__+  sE    	D&) #**,- 	r   c                    t        dt        d      t        d            t        dt        d      t        d            t        dt        d	      
      d}| j                  d|d   j                  f|d   | j                  fdd|d   j                  f|d   | j
                  j                  fd|d   j                  f|d   | j                  ff      S )r   zscript-savez!Generate command for m.nviz.imagez8Generate command for m.nviz.image based on current state)r   r   descz3d-settingsz3D view mode settingsz!Show 3D view mode settings dialogz3d-helpzShow 3D view mode manualr   )cmdro   rp   nvizCmdrz   r   ro   rp   )r   r"   r#   r   	OnNvizCmdr   OnNvizPreferencesrr   r'   s     r   r   zLMNvizToolbar._toolbarData8  s     !;<QR
 !!/0:;
 !4N2OP
 ## e 2 23%LNN
 z!2!8!89*%KK11 U6]001&MKK
 	
r   c                     | j                   j                         j                         j                         j	                          y)zShow m.nviz.image commandN)rv   GetLayerTreeGetMapDisplay	GetWindowr|   )r   events     r   r|   zLMNvizToolbar.OnNvizCmd]  s-    		 ..0::<FFHr   c                     | j                   st        dd       y| j                   j                         }|j                  ddg       y)zShow 3D view mode helpzg.manualz
wxGUI.nviz)entryzentry=wxGUI.nvizN)rv   r   GetLogWindowRunCmd)r   r   logs      r   rr   zLMNvizToolbar.OnHelpa  s7    yyz6))((*CJJ
$678r   N)r*   r+   r,   r-   r   r   r|   rr   r.   r   r   rt   rt   (  s    #
JI9r   rt   N)r-   	core.gcmdr   gui_core.toolbarsr   r   r   
icons.iconr   r	   r0   rV   rl   rt   r.   r   r   <module>r      s\   2 ! @ @ *
 *
Zm
+ m
`G
Z G
T
J 
D?9J ?9r   