Module bearbeiteprotokolleintrag
[hide private]
[frames] | no frames]

Source Code for Module bearbeiteprotokolleintrag

  1  # -*- coding: utf-8 -*- 
  2  # 
  3  # 
  4  #    filename:  bearbeiteprotokolleintrag.py 
  5  # 
  6  #    version:   see wxvf.py 
  7  # 
  8  # 
  9  # ---------------------------------------------------------------------------------------- 
 10  # 
 11  # 
 12  #    Copyright (C) 2010  Michael Bellair 
 13  # 
 14  #    This file is part of wxvf. 
 15  # 
 16  #    wxvf is free software: you can redistribute it and/or modify 
 17  #    it under the terms of the GNU General Public License as published by 
 18  #    the Free Software Foundation, either version 3 of the License, or 
 19  #    (at your option) any later version. 
 20  # 
 21  #    wxvf is distributed in the hope that it will be useful, 
 22  #    but WITHOUT ANY WARRANTY; without even the implied warranty of 
 23  #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
 24  #    GNU General Public License for more details. 
 25  # 
 26  #    You should have received a copy of the GNU General Public License 
 27  #    along with wxvf.  If not, see <http://www.gnu.org/licenses/>. 
 28  # 
 29  #    Michael Bellair 
 30  #    Sportplatzstrasse 11 
 31  #    01259 Dresden 
 32  # 
 33  #    E-Mail:    bellair@freenet.de 
 34  #    homepage:  http://www.michaelbellair.de/vf/index.html 
 35  # 
 36  # 
 37  # ---------------------------------------------------------------------------------------- 
 38  # 
 39  import wx 
 40   
 41  from bearbeiteuebersetzung import BearbeiteUebersetzung # Eingabeformular für Übersetzungen 
 42   
 43  from universal import zk                        # Zeichenketten bearbeiten 
 44   
 45  from wxuniversal import ComboBoxErg             # wx.ComboBox mit Ergänzungen 
 46  from wxuniversal import FlexGridSizerWxObjTitel # wxObjekt mit Titel 
 47   
 48   
 49  # 
 50  # 
 51  # 
 52  # ---------------------------------------------------------------------------------------- 
 53  # ---------------------------------------------------------------------------------------- 
 54  # --                                    -------------------------------------------------- 
 55  # --    Offene Punkte / Aufgaben        -------------------------------------------------- 
 56  # --                                    -------------------------------------------------- 
 57  # ---------------------------------------------------------------------------------------- 
 58  # ---------------------------------------------------------------------------------------- 
 59  # 
 60  #  
 61  #       -- siehe TODO 'bearbeiteprotokolleintrag.py' -- 
 62  # 
 63  # 
 64  # ---------------------------------------------------------------------------------------- 
 65  # 
 66   
 67   
 68   
 69  # 
 70  # ---------------------------------------------------------------------------------------- 
 71  # ---------------------------------------------------------------------------------------- 
 72  # --                                                    ---------------------------------- 
 73  # --    Eingabeformular 'Protokolleintrag bearbeiten'   ---------------------------------- 
 74  # --                                                    ---------------------------------- 
 75  # ---------------------------------------------------------------------------------------- 
 76  # ---------------------------------------------------------------------------------------- 
 77  # 
78 -class BearbeiteProtokolleintrag( wx.Dialog ):
79 """ 80 Klasse zur Abbildung des Eingabeformulars 'Protokolleintrag bearbeiten. 81 """ 82 83 # 84 # ------------------------------------------------------------------------------------ 85 # -- Initialisierungen -------------------------------------------------- 86 # ------------------------------------------------------------------------------------ 87 #
88 - def __init__( self, parent, Statusleiste, dbVerbindung, style = wx.RESIZE_BORDER ):
89 wx.Dialog.__init__( self, parent = parent, title = 'Bearbeite Protokolleintrag', style = style ) 90 91 # 92 # -- Namen setzen (somit Klasse / Objekt erkennen) -------------------------- 93 # 94 self.SetName( name = "BearbeiteProtokolleintrag" ) 95 96 97 # 98 # -- Randbedingungen übernehmen ------------------------------------------ 99 # 100 self.Statusleiste = Statusleiste 101 self.dbVerbindung = dbVerbindung 102 103 104 105 # 106 # -- Typ des Protokolleintrages ------------------------------------------ 107 # -- Objekt-Id = -305 ------------------------------------------ 108 # 109 self.ComboBox__TypPE = FlexGridSizerWxObjTitel( parent = self 110 , wxObj = ComboBoxErg( self 111 , choices = [] 112 , style = wx.CB_DROPDOWN|wx.CB_READONLY 113 , Statusleiste = self.Statusleiste ) 114 , titel = u"Typ des Protokolleintrages:" 115 , orient = wx.VERTICAL ) 116 117 self.ComboBox__TypPE.wxObjekt.nimmWerteStatusleiste( 118 DBSpNameErlaeuterung = u"Welcher Typ des Gefahrenprotokolleintrages liegt vor ?" 119 , DBSpName = "..." ) 120 121 self.dbVerbindung.selektiere__prtTyp__Sprache( TreeCtrlErg_ComboBoxErg = self.ComboBox__TypPE.wxObjekt 122 , prtTypAspekt = "PE" ) 123 124 125 126 # 127 # -- Button 'OK' / 'Abbruch' -------------------------------------------------- 128 # 129 self.Button_Abbruch = wx.Button( self, wx.ID_CANCEL ) 130 self.Bind( wx.EVT_BUTTON 131 , self.__ereignisSchliessen__ 132 , self.Button_Abbruch ) 133 134 135 self.Button_OK = wx.Button( self, wx.ID_OK ) 136 self.Button_OK.SetDefault() 137 138 self.Bind( wx.EVT_BUTTON 139 , self.__ereignisSchliessen__ 140 , self.Button_OK ) 141 142 143 144 145 146 # 147 # -------------------------------------------------------------------------------- 148 # -- Layout setzen ---------------------------------------------------------- 149 # -------------------------------------------------------------------------------- 150 # 151 GridBagSizer = wx.GridBagSizer( vgap = 10, hgap = 10 ) 152 153 GridBagSizer.AddGrowableCol( idx = 0, proportion = 1 ) 154 GridBagSizer.AddGrowableCol( idx = 1, proportion = 1 ) 155 156 GridBagSizer.AddGrowableRow( idx = 1, proportion = 1 ) 157 158 159 # 160 # -- 0.) ------------------------------------------------------------------ 161 # 162 GridBagSizer.Add( self.ComboBox__TypPE 163 , pos = wx.GBPosition( row = 0, col = 0 ) 164 , span = wx.GBSpan( rowspan = 1, colspan = 2 ) 165 , flag = wx.LEFT|wx.TOP|wx.RIGHT|wx.EXPAND 166 , border = 10 ) 167 168 # 169 # -- 1.) ------------------------------------------------------------------ 170 # 171 GridBagSizer.Add( self.Button_Abbruch 172 , pos = wx.GBPosition( row = 1, col = 0 ) 173 , flag = wx.LEFT|wx.BOTTOM|wx.EXPAND 174 , border = 10 ) 175 176 GridBagSizer.Add( self.Button_OK 177 , pos = wx.GBPosition( row = 1, col = 1 ) 178 , flag = wx.RIGHT|wx.BOTTOM|wx.EXPAND 179 , border = 10 ) 180 181 182 # 183 # -- in das Fenster einpassen ------------------------------------------ 184 # 185 self.SetSizerAndFit( GridBagSizer )
186 187 188 189 # 190 # ------------------------------------------------------------------------------------ 191 # -- Eingabeformular schließen; Änderungen verwerfen ---------------------------------- 192 # ------------------------------------------------------------------------------------ 193 #
194 - def __ereignisSchliessen__( self, ereignis ):
195 """ 196 Methode die aufgerufen wird, wenn 'OK' oder 'Abbruch' betätigt wurde. 197 198 @param ereignis: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. 199 @type ereignis: C{wx - Ereignisobjekt} 200 """ 201 202 # 203 # -- Rückgabewert setzen -------------------------------------------------- 204 # 205 self.prt_typ_id = None 206 if( ereignis.GetId() == self.Button_OK.GetId() ) : 207 208 self.prt_typ_id = self.ComboBox__TypPE.wxObjekt.gibClientData() 209 210 211 # 212 # -- Meldungsfenster schließen ------------------------------------------ 213 # 214 self.Destroy() 215 216 217 # 218 # -- Das Ereignis weiterreichen, damit es weiter -------------------------- 219 # -- ausgewertet werden kann -------------------------- 220 # 221 ereignis.Skip( skip = True )
222 223 224 225 # 226 # ------------------------------------------------------------------------------------ 227 # -- Eingabeformular schließen; Änderungen verwerfen ---------------------------------- 228 # ------------------------------------------------------------------------------------ 229 #
230 - def gib__PrtTypId( self ):
231 """ 232 Methode die die selektierte C{prt.typ.id} zurückgibt. 233 234 @return: Es wird C{prt.typ.id} zurückgegeben, wenn C{OK} betätigt wurde. Andernfalls wird C{None} zurückgegeben. 235 @rtype: Ganzzahl 236 """ 237 238 # 239 # -- Rückgabewert ---------------------------------------------------------- 240 # 241 return self.prt_typ_id
242