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://freenet-homepage.de/bellair/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, sprSprachenId, 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 self.sprSprachenId = sprSprachenId 103 104 105 106 # 107 # -- Typ des Protokolleintrages ------------------------------------------ 108 # -- Objekt-Id = -305 ------------------------------------------ 109 # 110 self.ComboBox__TypPE = FlexGridSizerWxObjTitel( parent = self 111 , wxObj = ComboBoxErg( self 112 , choices = [] 113 , style = wx.CB_DROPDOWN|wx.CB_READONLY 114 , Statusleiste = self.Statusleiste 115 , dbVerbindung = self.dbVerbindung ) 116 , titel = u"Typ des Protokolleintrages:" 117 , orient = wx.VERTICAL ) 118 119 self.ComboBox__TypPE.wxObjekt.statusLeisteDBSpNameErlaeuterung = u"Welcher Typ des Gefahrenprotokolleintrages liegt vor ?" 120 121 self.dbVerbindung.init_prtTyp( self.ComboBox__TypPE.wxObjekt 122 , self.sprSprachenId 123 , "PE" ) 124 125 126 127 # 128 # -- Button 'OK' / 'Abbruch' -------------------------------------------------- 129 # 130 self.Button_Abbruch = wx.Button( self, wx.ID_CANCEL ) 131 self.Bind( wx.EVT_BUTTON 132 , self.__ereignisSchliessen__ 133 , self.Button_Abbruch ) 134 135 136 self.Button_OK = wx.Button( self, wx.ID_OK ) 137 self.Button_OK.SetDefault() 138 139 self.Bind( wx.EVT_BUTTON 140 , self.__ereignisSchliessen__ 141 , self.Button_OK ) 142 143 144 145 146 147 # 148 # -------------------------------------------------------------------------------- 149 # -- Layout setzen ---------------------------------------------------------- 150 # -------------------------------------------------------------------------------- 151 # 152 GridBagSizer = wx.GridBagSizer( vgap = 10, hgap = 10 ) 153 154 GridBagSizer.AddGrowableCol( idx = 0, proportion = 1 ) 155 GridBagSizer.AddGrowableCol( idx = 1, proportion = 1 ) 156 157 GridBagSizer.AddGrowableRow( idx = 1, proportion = 1 ) 158 159 160 # 161 # -- 0.) ------------------------------------------------------------------ 162 # 163 GridBagSizer.Add( self.ComboBox__TypPE 164 , pos = wx.GBPosition( row = 0, col = 0 ) 165 , span = wx.GBSpan( rowspan = 1, colspan = 2 ) 166 , flag = wx.LEFT|wx.TOP|wx.RIGHT|wx.EXPAND 167 , border = 10 ) 168 169 # 170 # -- 1.) ------------------------------------------------------------------ 171 # 172 GridBagSizer.Add( self.Button_Abbruch 173 , pos = wx.GBPosition( row = 1, col = 0 ) 174 , flag = wx.LEFT|wx.BOTTOM|wx.EXPAND 175 , border = 10 ) 176 177 GridBagSizer.Add( self.Button_OK 178 , pos = wx.GBPosition( row = 1, col = 1 ) 179 , flag = wx.RIGHT|wx.BOTTOM|wx.EXPAND 180 , border = 10 ) 181 182 183 # 184 # -- in das Fenster einpassen ------------------------------------------ 185 # 186 self.SetSizerAndFit( GridBagSizer )
187 188 189 190 # 191 # ------------------------------------------------------------------------------------ 192 # -- Eingabeformular schließen; Änderungen verwerfen ---------------------------------- 193 # ------------------------------------------------------------------------------------ 194 #
195 - def __ereignisSchliessen__( self, ereignis ):
196 """ 197 Methode die aufgerufen wird, wenn 'OK' oder 'Abbruch' betätigt wurde. 198 199 @param ereignis: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. 200 @type ereignis: C{wx - Ereignisobjekt} 201 """ 202 203 # 204 # -- Rückgabewert setzen -------------------------------------------------- 205 # 206 self.prt_typ_id = None 207 if( ereignis.GetId() == self.Button_OK.GetId() ) : 208 209 self.prt_typ_id = self.ComboBox__TypPE.wxObjekt.gibClientData() 210 211 212 # 213 # -- Meldungsfenster schließen ------------------------------------------ 214 # 215 self.Destroy() 216 217 218 # 219 # -- Das Ereignis weiterreichen, damit es weiter -------------------------- 220 # -- ausgewertet werden kann -------------------------- 221 # 222 ereignis.Skip( skip = True )
223 224 225 226 # 227 # ------------------------------------------------------------------------------------ 228 # -- Eingabeformular schließen; Änderungen verwerfen ---------------------------------- 229 # ------------------------------------------------------------------------------------ 230 #
231 - def gib__PrtTypId( self ):
232 """ 233 Methode die die selektierte C{prt.typ.id} zurückgibt. 234 235 @return: Es wird C{prt.typ.id} zurückgegeben, wenn C{OK} betätigt wurde. Andernfalls wird C{None} zurückgegeben. 236 @rtype: Ganzzahl 237 """ 238 239 # 240 # -- Rückgabewert ---------------------------------------------------------- 241 # 242 return self.prt_typ_id
243