
    ը	f                     8    d dl Z d dlmZ d Zedk(  r e        yy)    Nc            	         t        j                  d       t        j                         \  } }dd lddlm}  |        ddlm ddlm	 ddl
m ddlm} ddlm dd	lm}  G fd
d|      }| d   | d   | d   | d   d}t        j$                         d   }|d   rWt        j&                  |d   d|      d   }|s1t        j(                  t+        dj-                  | d                      n`||d<   nZ|d   rUt        j&                  |d   d|      d   }	|	s0t        j(                  t+        dj-                  | d                      |	|d<   |j/                  ddd      }
|
dk(  rdt0        j2                  d<   ndt0        j2                  d<   j5                         }j7                  d j8                  dj:                  t+        d       !      } |d#d"|i|}|j=                          |j?                          y )$NFr   )set_gui_path)Map)ICONDIR)MapPanel)
FrameMixin)DMonGrassInterface)UserSettingsc                   <    e Zd ZdZ	 	 	 	 d fd	ZddZd Zy)main.<locals>.RDigitMapDisplayzIMap display for wrapping map panel with r.digit mathods and frame methodsNc                     j                   | 
        d              |j                  j                  t        j                  j                  	d      j                               |j                  j                   j                          j                  j                   j                  j                  j                  f        j                            j                   _         j                   j$                  j'                   j(                          j+                          _         j/                  |r|n|        j1                  dd        j2                  d   }|ru|j4                  j7                  j8                          j:                  j=                  d|||       |j4                  j                  j8                  |j>                         n,|j4                  jA                  d	       |j?                           j:                  jB                  jE                   jF                          j:                  jB                  j'                   fd
       jI                  jJ                        }|jM                   djN                         |jQ                  |       |jS                          y )N)parentr   gifacezgrass_map.ico)namerdigitT)fixed)
standalonemapNamebgMapmapType   )nc                  $     j                         S )N)Close)selfs   4/usr/lib/grass83/gui/wxpython/rdigit/g.gui.rdigit.py<lambda>z9main.<locals>.RDigitMapDisplay.__init__.<locals>.<lambda>   s    djjl     )
proportionflag)*__init__SetIconIconospathjoinBITMAP_TYPE_ICOBind	EVT_CLOSEOnCloseWindowshortcuts_tableappendOnFullScreenACCEL_NORMALWXK_F11_initShortcuts_giface	_mapframe
mapCreatedconnectOnMapCreatedGetMap_mapObj	_addLayer
AddToolbartoolbars_mapSelectionComboUnbindEVT_COMBOBOXr   SelectNewMapOnMapSelectionSetSelectionquitDigitizer
disconnect
QuitRDigitBoxSizerVERTICALAddEXPANDSetSizerLayout)r   r   new_mapbase_mapedit_mapmap_typer   sizerr	   r   r   r   wxs   `       r   r!   z'main.<locals>.RDigitMapDisplay.__init__W   s    V7I$7O  
 NNWo>@R@RS
 KKd&8&89   ''""BOORZZ@ ! &*DLL"LL##++D,=,=>;;=DL NN7NA OOHDO1]]8,F))00A((##"$	 )  ))..OO))
 ))666;%%'KK%%00AKK%%--.BC KK,EIIdqryyI9OOE"MMOr   c           	      j    | j                   j                  ||ddj                  |      gdddd      }y)zoAdd layer into map

            :param str name: map name
            :param str ltype: layer type
            zd.rastzmap={}TFg      ?)ltyper   commandactivehiddenopacityrenderN)r7   AddLayerformat)r   r   rQ   mapLayers       r   r8   z(main.<locals>.RDigitMapDisplay._addLayer   s@     ||,,!8??4#89 - Hr   c                     | j                   j                          | j                  ||       | j                         j	                          y)zAdd new created raster layer into map

            :param str name: map name
            :param str ltype: layer type
            )r   rQ   N)r7   Cleanr8   GetMapWindow	UpdateMap)r   r   rQ   s      r   r5   z+main.<locals>.RDigitMapDisplay.OnMapCreated   s9     LL NNEN2))+r   )NNNN)raster)__name__
__module____qualname____doc__r!   r8   r5   )r	   r   r   r   rO   s   r   RDigitMapDisplayr   T   s)    W
 =	 =	~	 	,r   rc   createbaseedittype)rJ   rK   rL   rM   MAPSETrL   r^   )r   elementmapsetfullnamez,Raster map <{}> not found in current mapset.rK   z1Base raster map <{}> not found in current mapset.displaydriver)groupkeysubkeypngGRASS_RENDER_IMMEDIATEcairo)iR  iX  zRaster Digitizer - GRASS GIS)idsizestyletitler    ) gsset_raise_on_errorparserrO   grass.script.setupr   core.renderr   core.globalvarr   mapdisp.framer   gui_core.mapdispr   mapdisp.mainr	   core.settingsr
   gisenv	find_filefatal_rX   Getr$   environAppFrameID_ANYDEFAULT_FRAME_STYLEShowMainLoop)optionsflagsr   r   r
   rc   kwargsrj   rL   rK   rm   appframer	   r   r   r   rO   s                @@@@@r   mainr   >   s	   % YY[NGU /N&&+/*Z, Z,:x Z,z 8$FOFOFO	F YY["Fj<<
#
 	 HHBII "*F:*||J'  	H
 **0&#FO+ "*F:   F
 /4

+,/6

+,
&&(CHH99$$./  E 4E4V4E	JJLLLNr   __main__)r$   grass.scriptscriptry   r   r_   rx   r   r   <module>r      s)   r 
 tn zF r   