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

Source Code for Module BearbeiteStrukturen

  1  # -*- coding: utf-8 -*- 
  2  # generated by wxGlade 0.5 on Fri Mar 21 07:03:48 2008 from /home/micha/diss/03-software/gui/wxvf/wxvf.wxg 
  3   
  4  import wx 
  5   
  6   
  7  # begin wxGlade: dependencies 
  8  # end wxGlade 
  9   
10 -class BearbeiteStrukturen(wx.Dialog):
11 """ 12 Klasse, die das Fenster zur Strukturbearbeitung repräsentiert. 13 """
14 - def __init__(self, *args, **kwds):
15 # begin wxGlade: BearbeiteStrukturen.__init__ 16 kwds["style"] = wx.RESIZE_BORDER|wx.THICK_FRAME 17 wx.Dialog.__init__(self, *args, **kwds) 18 self.splitter_window_StrPers = wx.SplitterWindow(self, -1, style=wx.SP_3D|wx.SP_BORDER|wx.CLIP_CHILDREN) 19 self.wxPanel_VerantwPersonen = wx.Panel(self.splitter_window_StrPers, -1, style=wx.TAB_TRAVERSAL|wx.CLIP_CHILDREN) 20 self.wxPanel_Strukturpunkte = wx.Panel(self.splitter_window_StrPers, -1, style=wx.TAB_TRAVERSAL|wx.CLIP_CHILDREN) 21 self.label_Projekt = wx.StaticText(self, -1, "Projekt") 22 self.combo_box_Projekt = wx.ComboBox(self, -1, choices=[], style=wx.CB_DROPDOWN|wx.CB_READONLY) 23 self.label_Sprache = wx.StaticText(self, -1, "Sprache") 24 self.combo_box_Sprache = wx.ComboBox(self, -1, choices=[], style=wx.CB_DROPDOWN|wx.CB_READONLY) 25 self.static_line_1 = wx.StaticLine(self, -1) 26 self.label_Strukturbezeichnung_li = wx.StaticText(self, -1, "Strukturbezeichnung") 27 self.combo_box_Strukturbezeichnung_li = wx.ComboBox(self, -1, choices=[], style=wx.CB_DROPDOWN|wx.CB_READONLY) 28 self.label_Strukturpunkte_li = wx.StaticText(self, -1, "Strukturpunkte") 29 self.list_box_Strukturpunkte_li = wx.ListBox(self, -1, choices=[]) 30 self.label_Strukturbezeichnung_re = wx.StaticText(self, -1, "Strukturbezeichnung") 31 self.combo_box_Strukturbezeichnung_re = wx.ComboBox(self, -1, choices=[], style=wx.CB_DROPDOWN|wx.CB_READONLY) 32 self.button_VerbindeStrukturpunkte = wx.Button(self.wxPanel_Strukturpunkte, -1, "Struktur-\npunkte\nverbinden") 33 self.label_Strukturpunkte_re = wx.StaticText(self.wxPanel_Strukturpunkte, -1, "Strukturpunkte") 34 self.list_box_Strukturpunkte_re = wx.ListBox(self.wxPanel_Strukturpunkte, -1, choices=[], style=wx.LB_MULTIPLE|wx.LB_EXTENDED) 35 self.button_PersonenZuordnen = wx.Button(self.wxPanel_VerantwPersonen, -1, "Personen\nzuordnen") 36 self.label_VerantwPersonen = wx.StaticText(self.wxPanel_VerantwPersonen, -1, "Verantwortliche Personen") 37 self.list_box_VerantwPersonen = wx.ListBox(self.wxPanel_VerantwPersonen, -1, choices=[], style=wx.LB_MULTIPLE|wx.LB_EXTENDED) 38 self.static_line_2 = wx.StaticLine(self, -1) 39 self.label_Struktur = wx.StaticText(self, -1, "Struktur (als Baum dargestellt)") 40 self.tree_ctrl_Struktur = wx.TreeCtrl(self, -1, style=wx.TR_HAS_BUTTONS|wx.TR_NO_LINES|wx.TR_DEFAULT_STYLE|wx.SUNKEN_BORDER) 41 self.button_AenderungenSpeichern = wx.Button(self, -1, u"Änderungen übernehmen") 42 self.button_FensterSchliessen = wx.Button(self, -1, u"Fenster schließen (Änderungen verwerfen)") 43 44 self.__set_properties() 45 self.__do_layout()
46 # end wxGlade 47
48 - def __set_properties(self):
49 # begin wxGlade: BearbeiteStrukturen.__set_properties 50 self.SetTitle("Strukturen bearbeiten") 51 self.SetSize((1000, 710)) 52 self.combo_box_Projekt.SetMinSize((300, 21)) 53 self.combo_box_Sprache.SetMinSize((300, 21)) 54 self.combo_box_Strukturbezeichnung_li.SetMinSize((435, 21)) 55 self.list_box_Strukturpunkte_li.SetMinSize((435, 395)) 56 self.combo_box_Strukturbezeichnung_re.SetMinSize((435, 21)) 57 self.button_VerbindeStrukturpunkte.SetMinSize((90, 51)) 58 self.button_VerbindeStrukturpunkte.Enable(False) 59 self.list_box_Strukturpunkte_re.SetMinSize((430, 350)) 60 self.button_PersonenZuordnen.SetMinSize((90, 36)) 61 self.button_PersonenZuordnen.Enable(False) 62 self.list_box_VerantwPersonen.SetMinSize((430, 350)) 63 self.list_box_VerantwPersonen.Enable(False) 64 self.splitter_window_StrPers.SetMinSize((530, 410)) 65 self.label_Struktur.Enable(False) 66 self.tree_ctrl_Struktur.SetMinSize((980, 100)) 67 self.tree_ctrl_Struktur.Enable(False) 68 self.button_AenderungenSpeichern.SetMinSize((200, 27)) 69 self.button_FensterSchliessen.SetMinSize((300, 27))
70 # end wxGlade 71
72 - def __do_layout(self):
73 # begin wxGlade: BearbeiteStrukturen.__do_layout 74 grid_sizer_11 = wx.FlexGridSizer(3, 3, 0, 0) 75 grid_sizer_12 = wx.FlexGridSizer(6, 1, 0, 0) 76 grid_sizer_8 = wx.FlexGridSizer(1, 3, 0, 10) 77 grid_sizer_15 = wx.FlexGridSizer(2, 1, 0, 10) 78 sizer_7 = wx.BoxSizer(wx.VERTICAL) 79 grid_sizer_5 = wx.FlexGridSizer(1, 2, 0, 10) 80 grid_sizer_4 = wx.FlexGridSizer(2, 1, 10, 10) 81 grid_sizer_14 = wx.FlexGridSizer(1, 2, 10, 10) 82 grid_sizer_18 = wx.FlexGridSizer(2, 1, 0, 0) 83 grid_sizer_13 = wx.FlexGridSizer(1, 2, 10, 10) 84 grid_sizer_17 = wx.FlexGridSizer(2, 1, 0, 0) 85 grid_sizer_7 = wx.FlexGridSizer(1, 2, 10, 10) 86 sizer_8 = wx.BoxSizer(wx.VERTICAL) 87 grid_sizer_6 = wx.FlexGridSizer(2, 1, 10, 10) 88 sizer_13 = wx.BoxSizer(wx.VERTICAL) 89 sizer_12 = wx.BoxSizer(wx.VERTICAL) 90 sizer_6 = wx.BoxSizer(wx.VERTICAL) 91 grid_sizer_3 = wx.FlexGridSizer(1, 3, 0, 10) 92 sizer_5 = wx.BoxSizer(wx.VERTICAL) 93 sizer_4 = wx.BoxSizer(wx.VERTICAL) 94 grid_sizer_11.Add((10, 10), 0, 0, 0) 95 grid_sizer_11.Add((10, 10), 0, 0, 0) 96 grid_sizer_11.Add((10, 10), 0, 0, 0) 97 grid_sizer_11.Add((10, 10), 0, 0, 0) 98 sizer_4.Add(self.label_Projekt, 0, 0, 0) 99 sizer_4.Add(self.combo_box_Projekt, 0, 0, 0) 100 grid_sizer_3.Add(sizer_4, 1, wx.EXPAND, 0) 101 sizer_5.Add(self.label_Sprache, 0, 0, 0) 102 sizer_5.Add(self.combo_box_Sprache, 0, 0, 0) 103 grid_sizer_3.Add(sizer_5, 1, wx.EXPAND, 0) 104 grid_sizer_3.Add((20, 20), 0, 0, 0) 105 grid_sizer_12.Add(grid_sizer_3, 1, wx.EXPAND, 0) 106 sizer_6.Add((10, 10), 0, 0, 0) 107 sizer_6.Add(self.static_line_1, 0, wx.EXPAND, 0) 108 sizer_6.Add((10, 10), 0, 0, 0) 109 grid_sizer_12.Add(sizer_6, 1, wx.EXPAND, 0) 110 sizer_12.Add(self.label_Strukturbezeichnung_li, 0, 0, 0) 111 sizer_12.Add(self.combo_box_Strukturbezeichnung_li, 0, 0, 0) 112 grid_sizer_6.Add(sizer_12, 1, wx.EXPAND, 0) 113 sizer_13.Add(self.label_Strukturpunkte_li, 0, 0, 0) 114 sizer_13.Add(self.list_box_Strukturpunkte_li, 0, 0, 0) 115 grid_sizer_6.Add(sizer_13, 1, wx.EXPAND, 0) 116 grid_sizer_5.Add(grid_sizer_6, 1, wx.EXPAND, 0) 117 grid_sizer_7.Add((90, 20), 0, 0, 0) 118 sizer_8.Add(self.label_Strukturbezeichnung_re, 0, 0, 0) 119 sizer_8.Add(self.combo_box_Strukturbezeichnung_re, 0, 0, 0) 120 grid_sizer_7.Add(sizer_8, 1, wx.EXPAND, 0) 121 grid_sizer_4.Add(grid_sizer_7, 1, wx.EXPAND, 0) 122 grid_sizer_13.Add(self.button_VerbindeStrukturpunkte, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 0) 123 grid_sizer_17.Add(self.label_Strukturpunkte_re, 0, 0, 0) 124 grid_sizer_17.Add(self.list_box_Strukturpunkte_re, 0, wx.EXPAND, 0) 125 grid_sizer_13.Add(grid_sizer_17, 1, wx.EXPAND|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 0) 126 self.wxPanel_Strukturpunkte.SetSizer(grid_sizer_13) 127 grid_sizer_14.Add(self.button_PersonenZuordnen, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 0) 128 grid_sizer_18.Add(self.label_VerantwPersonen, 0, 0, 0) 129 grid_sizer_18.Add(self.list_box_VerantwPersonen, 0, wx.EXPAND, 0) 130 grid_sizer_14.Add(grid_sizer_18, 1, wx.EXPAND|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 0) 131 self.wxPanel_VerantwPersonen.SetSizer(grid_sizer_14) 132 self.splitter_window_StrPers.SplitHorizontally(self.wxPanel_Strukturpunkte, self.wxPanel_VerantwPersonen) 133 grid_sizer_4.Add(self.splitter_window_StrPers, 1, wx.EXPAND|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 0) 134 grid_sizer_5.Add(grid_sizer_4, 1, wx.EXPAND, 0) 135 grid_sizer_12.Add(grid_sizer_5, 1, wx.EXPAND, 0) 136 sizer_7.Add((10, 10), 0, 0, 0) 137 sizer_7.Add(self.static_line_2, 0, wx.EXPAND, 0) 138 sizer_7.Add((10, 10), 0, 0, 0) 139 grid_sizer_12.Add(sizer_7, 1, wx.EXPAND, 0) 140 grid_sizer_15.Add(self.label_Struktur, 0, 0, 0) 141 grid_sizer_15.Add(self.tree_ctrl_Struktur, 1, wx.EXPAND, 0) 142 grid_sizer_12.Add(grid_sizer_15, 1, wx.EXPAND, 0) 143 grid_sizer_8.Add((430, 50), 0, 0, 0) 144 grid_sizer_8.Add(self.button_AenderungenSpeichern, 0, wx.ALIGN_CENTER_VERTICAL, 0) 145 grid_sizer_8.Add(self.button_FensterSchliessen, 0, wx.ALIGN_CENTER_VERTICAL, 0) 146 grid_sizer_12.Add(grid_sizer_8, 1, wx.EXPAND, 0) 147 grid_sizer_11.Add(grid_sizer_12, 1, wx.EXPAND, 0) 148 grid_sizer_11.Add((10, 10), 0, 0, 0) 149 grid_sizer_11.Add((10, 10), 0, 0, 0) 150 grid_sizer_11.Add((10, 10), 0, 0, 0) 151 grid_sizer_11.Add((10, 10), 0, 0, 0) 152 self.SetSizer(grid_sizer_11) 153 self.Layout() 154 self.Centre() 155 # end wxGlade 156 157 # 158 # ---------------------------------------------------------------------------------------- 159 # ---------------------------------------------------------------------------------------- 160 # -- ---------------------------------------------------------- 161 # -- Beginn Bellair ---------------------------------------------------------- 162 # -- ---------------------------------------------------------- 163 # ---------------------------------------------------------------------------------------- 164 # ---------------------------------------------------------------------------------------- 165 # 166 # 167 # -------------------------------------------------------------------------------- 168 # -- Initialisierungen -------------------------------------------------- 169 # -------------------------------------------------------------------------------- 170 # 171 self.CenterOnScreen() 172 173 # 174 # -------------------------------------------------------------------------------- 175 # -- Ereignisse behandeln -------------------------------------------------- 176 # -------------------------------------------------------------------------------- 177 # 178 self.button_FensterSchliessen.Bind( wx.EVT_BUTTON, self.__schliesseFenster__ ) 179 self.button_AenderungenSpeichern.Bind( wx.EVT_BUTTON, self.__speichereAenderungen__ ) 180 181 self.combo_box_Projekt.Bind( wx.EVT_COMBOBOX, self.__aktualisiereStruktur__ ) 182 self.combo_box_Sprache.Bind( wx.EVT_COMBOBOX, self.__aktualisiereStruktur__ ) 183 self.combo_box_Strukturbezeichnung_li.Bind( wx.EVT_COMBOBOX, self.__aktualisiereStruktur__ ) 184 self.combo_box_Strukturbezeichnung_re.Bind( wx.EVT_COMBOBOX, self.__aktualisiereStruktur__ ) 185 186 self.Bind(wx.EVT_LISTBOX, self.__selektiereStrpktePersonen__, self.list_box_Strukturpunkte_li ) 187 self.Bind(wx.EVT_LISTBOX, self.__aktiviereButtonVerbindeStrukturpunkte__, self.list_box_Strukturpunkte_re ) 188 self.Bind(wx.EVT_LISTBOX, self.__aktiviereButtonPersonenZuordnen__, self.list_box_VerantwPersonen ) 189 190 self.button_PersonenZuordnen.Bind( wx.EVT_BUTTON, self.__betaetigtButtonPersonenZuordnen__ ) 191 self.button_VerbindeStrukturpunkte.Bind( wx.EVT_BUTTON, self.__betaetigtButtonVerbindeStrukturpunkte__ )
192 193 194 195 # 196 # ------------------------------------------------------------------------------------ 197 # -- Funktionen ---------------------------------------------------------- 198 # ------------------------------------------------------------------------------------ 199 # 200 201 # 202 # -- Button 'Personen zuordnen' aktivieren ---------------------------------- 203 #
204 - def __aktiviereButtonPersonenZuordnen__( self, ereignisDummy ):
205 """ 206 Es wird der Taster 'Personen zuordnen' aktiviert, wenn ein linker Strukturpunkt und mindestens eine Person selektiert ist. 207 208 @param ereignisDummy: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. Es wird jedoch nicht verwendet. 209 @type ereignisDummy: C{wx - Ereignisobjekt} 210 """ 211 212 # 213 # wenn kein linker Strukturpunkt selektiert wurde, kann die Methode sofort 214 # verlassen werden 215 # 216 if len( self.list_box_Strukturpunkte_li.GetSelections() ) == 0 : 217 return 218 219 # 220 # Button 'Personen zuordnen' aktivieren 221 # 222 if len( self.list_box_VerantwPersonen.GetSelections() ) > 0 : 223 self.button_PersonenZuordnen.Enable() 224 else : 225 self.button_PersonenZuordnen.Disable()
226 227 228 # 229 # -- Button 'Verbinde Strukturpunkte' aktivieren -------------------------- 230 #
231 - def __aktiviereButtonVerbindeStrukturpunkte__( self, ereignisDummy ):
232 """ 233 Es wird der Button 'Verbinde Strukturpunkte' aktiviert, wenn ein linker Strukturpunkt und mindestens ein rechter Strukturpunkt selektiert ist. 234 235 @param ereignisDummy: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. Es wird jedoch nicht verwendet. 236 @type ereignisDummy: C{wx - Ereignisobjekt} 237 """ 238 239 # 240 # wenn kein linker Strukturpunkt selektiert wurde, kann die Methode sofort 241 # verlassen werden 242 # 243 if len( self.list_box_Strukturpunkte_li.GetSelections() ) == 0 : 244 return 245 246 # 247 # Button 'Verbinde Strukturpunkte' aktivieren 248 # 249 if len( self.list_box_Strukturpunkte_re.GetSelections() ) > 0 : 250 self.button_VerbindeStrukturpunkte.Enable() 251 else : 252 self.button_VerbindeStrukturpunkte.Disable()
253 254 255 256 # 257 # -- Struktur aktualisieren -------------------------------------------------- 258 #
259 - def __aktualisiereStruktur__( self, ereignisDummy ):
260 """ 261 Methode die aufgerufen wird, wenn Benutzereingaben die Aktualisierung der Struktur erfordern. 262 263 @param ereignisDummy: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. Es wird jedoch nicht verwendet. 264 @type ereignisDummy: C{wx - Ereignisobjekt} 265 """ 266 267 # 268 # Button 'Strukturpunkte verbinden' und 'Personen zuordnen' können noch nicht benutzt 269 # werden, deshalb deaktivieren 270 # 271 self.button_VerbindeStrukturpunkte.Disable() 272 self.button_PersonenZuordnen.Disable() 273 274 # 275 # Struktur (links) aktualisieren 276 # 277 self.list_box_Strukturpunkte_li.Clear() 278 self.dbVerbunden.initWxListBox_strStrkt( self.list_box_Strukturpunkte_li 279 , self.combo_box_Projekt.GetClientData(self.combo_box_Projekt.GetSelection())[0] 280 , self.combo_box_Sprache.GetClientData(self.combo_box_Sprache.GetSelection())[0] 281 , self.combo_box_Strukturbezeichnung_li.GetClientData(self.combo_box_Strukturbezeichnung_li.GetSelection())[0] ) 282 283 # 284 # Struktur (rechts) aktualisieren 285 # 286 self.list_box_Strukturpunkte_re.Clear() 287 self.dbVerbunden.initWxListBox_strStrkt( self.list_box_Strukturpunkte_re 288 , self.combo_box_Projekt.GetClientData(self.combo_box_Projekt.GetSelection())[0] 289 , self.combo_box_Sprache.GetClientData(self.combo_box_Sprache.GetSelection())[0] 290 , self.combo_box_Strukturbezeichnung_re.GetClientData(self.combo_box_Strukturbezeichnung_re.GetSelection())[0] ) 291 292 # 293 # ListBox 'verantwortliche Personen' aktivieren, wenn Projekt ausgewählt wurde, 294 # sonst deaktivieren (vorher alle Selektionen zurücksetzen) 295 # 296 if self.combo_box_Projekt.GetClientData( self.combo_box_Projekt.GetSelection() )[0] > 0 : 297 self.list_box_VerantwPersonen.Enable() 298 else : 299 self.dbVerbunden.deselektiereWxListBox( self.list_box_VerantwPersonen ) 300 self.list_box_VerantwPersonen.Disable()
301 302 303 # 304 # -- Button 'Personen zuordnen' wurde betätigt -------------------------- 305 #
306 - def __betaetigtButtonPersonenZuordnen__( self, ereignisDummy ):
307 """ 308 Der Button 'Personen zuordnen' wurde betätigt. Die Verbindung zwischen dem selektierten linken Strukturpunkt und den selektierten Personen wird der Datenbank übergeben. 309 310 @param ereignisDummy: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. Es wird jedoch nicht verwendet. 311 @type ereignisDummy: C{wx - Ereignisobjekt} 312 """ 313 314 # 315 # Alle selektierten Personen übergeben 316 # 317 tmp = self.list_box_VerantwPersonen.GetSelections() 318 for i in range( len( tmp ) ) : 319 self.dbVerbunden.schreibePrjPpuStrstrkt( self.combo_box_Projekt.GetClientData(self.combo_box_Projekt.GetSelection())[0] 320 , self.list_box_Strukturpunkte_li.GetClientData( self.list_box_Strukturpunkte_li.GetSelection() )[0] 321 , self.list_box_VerantwPersonen.GetClientData( tmp[i] )[0] 322 , 0 323 , "" 324 , "" )
325 326 327 # 328 # -- Button 'Verbinde Strukturpunkte' wurde betätigt -------------------------- 329 #
330 - def __betaetigtButtonVerbindeStrukturpunkte__( self, ereignisDummy ):
331 """ 332 Der Button 'Verbinde Strukturpunkte' wurde betätigt. Die Verbindung zwischen dem selektierten linken Strukturpunkt und den selektierten rechten Strukturpunkten wird der Datenbank übergeben. 333 334 @param ereignisDummy: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. Es wird jedoch nicht verwendet. 335 @type ereignisDummy: C{wx - Ereignisobjekt} 336 """ 337 338 print "Button 'Verbinde Strukturpunkte' wurde betätigt"
339 340 341 # 342 # -- Änderungen übernehmen -------------------------------------------------- 343 #
344 - def __selektiereStrpktePersonen__( self, ereignis ):
345 """ 346 Methode die aufgerufen wird, wenn die Auswahl eines linken Strukturpunktes, die Auswahl mindestens eines zugeordneten rechten Strukturpunktes bzw. einer zugeordneten verantwortlichen Person erfordert. 347 348 @param ereignis: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. 349 @type ereignis: C{wx - Ereignisobjekt} 350 """ 351 352 # 353 # Button 'Strukturpunkte verbinden' und 'Personen zuordnen' können noch nicht benutzt 354 # werden, deshalb deaktivieren 355 # 356 self.button_VerbindeStrukturpunkte.Disable() 357 self.button_PersonenZuordnen.Disable() 358 359 # 360 # Bei ungültigen Ereignissen, die Methode verlassen 361 # 362 if ereignis.GetClientData() is None: 363 return 364 365 # 366 # Alle Verbindungen/zugeordneten Personen zum aktuell ausgewählten Strukturpunkt markieren 367 # 368 # >ClentData< des aktuell ausgewählten Strukturpunktes enthält an der ersten Position 369 # die >str.strkt.id< des Strukturpunktes 370 # 371 self.dbVerbunden.selektiereWxListBox_strStrktId( self.list_box_Strukturpunkte_re 372 , self.combo_box_Projekt.GetClientData(self.combo_box_Projekt.GetSelection())[0] 373 , ereignis.GetClientData()[0] 374 , self.combo_box_Strukturbezeichnung_re.GetClientData(self.combo_box_Strukturbezeichnung_re.GetSelection())[0] ) 375 376 self.dbVerbunden.selektiereWxListBox_prjPersonenId( self.list_box_VerantwPersonen 377 , self.combo_box_Projekt.GetClientData(self.combo_box_Projekt.GetSelection())[0] 378 , ereignis.GetClientData()[0] )
379 380 381 # 382 # -- Änderungen übernehmen -------------------------------------------------- 383 #
384 - def __speichereAenderungen__( self, ereignisDummy ):
385 """ 386 Methode die aufgerufen wird, wenn alle Veränderungen in der Datenbank gesichert werden sollen. 387 388 @param ereignisDummy: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. Es wird jedoch nicht verwendet. 389 @type ereignisDummy: C{wx - Ereignisobjekt} 390 """ 391 # 392 # Test 393 # 394 print "Änderungen übernehmen" 395 self.dbVerbunden.dbAbfrage( 'ROLLBACK' )
396 397 398 # 399 # -- Fenster schließen (Änderungen verwerfen) ------------------------- 400 #
401 - def __schliesseFenster__( self, ereignisDummy ):
402 """ 403 Methode die aufgerufen wird, wenn das Fester geschlossen wird und somit alle Veränderungen verworfen werden sollen. 404 405 @param ereignisDummy: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. Es wird jedoch nicht verwendet. 406 @type ereignisDummy: C{wx - Ereignisobjekt} 407 """ 408 # 409 # Test 410 # 411 print "Änderungen verwerfen" 412 self.dbVerbunden.dbAbfrage( 'ROLLBACK' ) 413 self.Destroy()
414 415 416 # 417 # -- Datenbank auslesen -------------------------------------------------- 418 #
419 - def liesDatenbank( self, dbVerbunden ):
420 """ 421 Methode die aufgerufen wird, um zur Strukturbearbeitung alle benötigten Datenbanktabellen auszulesen. 422 423 @note: Das übergebene C{Datenbank-Objekt} wird verändert ! 424 425 @param dbVerbunden: Es ist ein C{Datenbank-Objekt} zu übergeben, welches eine Datenbankverbindung aufgebaut hat. 426 @type dbVerbunden: C{Datenbank-Objekt} 427 """ 428 429 # 430 # -- Datenbankverbindung übernehmen ------------------------------------------ 431 # 432 self.dbVerbunden = dbVerbunden 433 """ 434 @cvar: Datenbankobjekt, welches die Datenbankverbindung enthält. 435 @type: libpq - PgConnection 436 """ 437 438 # 439 # -- Projekt, Sprache -------------------------------------------------- 440 # 441 self.dbVerbunden.initWxComboBox_prjProjekte( self.combo_box_Projekt ) 442 self.dbVerbunden.initWxComboBox_sprSprachen( self.combo_box_Sprache ) 443 444 # 445 # -- Strukturbezeichnung, Strukturpunkte (links) -------------------------- 446 # 447 self.dbVerbunden.initWxComboBox_strName( self.combo_box_Strukturbezeichnung_li ) 448 self.dbVerbunden.initWxListBox_strStrkt( self.list_box_Strukturpunkte_li 449 , self.combo_box_Projekt.GetClientData(self.combo_box_Projekt.GetSelection())[0] 450 , self.combo_box_Sprache.GetClientData(self.combo_box_Sprache.GetSelection())[0] 451 , self.combo_box_Strukturbezeichnung_li.GetClientData(self.combo_box_Strukturbezeichnung_li.GetSelection())[0] ) 452 453 # 454 # -- Strukturbezeichnung, Strukturpunkte (rechts) -------------------------- 455 # 456 self.dbVerbunden.initWxComboBox_strName( self.combo_box_Strukturbezeichnung_re ) 457 self.dbVerbunden.initWxListBox_strStrkt( self.list_box_Strukturpunkte_re 458 , self.combo_box_Projekt.GetClientData(self.combo_box_Projekt.GetSelection())[0] 459 , self.combo_box_Sprache.GetClientData(self.combo_box_Sprache.GetSelection())[0] 460 , self.combo_box_Strukturbezeichnung_re.GetClientData(self.combo_box_Strukturbezeichnung_re.GetSelection())[0] ) 461 462 # 463 # -- Personen ---------------------------------------------------------- 464 # 465 self.dbVerbunden.initWxListBox_prjPersonen( self.list_box_VerantwPersonen )
466 467 468 # 469 # ---------------------------------------------------------------------------------------- 470 # ---------------------------------------------------------------------------------------- 471 # -- ---------------------------------------------------------- 472 # -- Ende Bellair ---------------------------------------------------------- 473 # -- ---------------------------------------------------------- 474 # ---------------------------------------------------------------------------------------- 475 # ---------------------------------------------------------------------------------------- 476 # 477 478 # end of class BearbeiteStrukturen 479