| Trees | Indices | Help |
|---|
|
|
1 # -*- coding: utf-8 -*- 2 # generated by wxGlade 0.5 on Fri Feb 29 17:34:46 2008 from /home/micha/diss/03-software/gui/wxvf.wxg 3 4 import wx 5 # 6 # ---------------------------------------------------------------------------------------- 7 # ---------------------------------------------------------------------------------------- 8 # -- ---------------------------------------------------------- 9 # -- Beginn Bellair ---------------------------------------------------------- 10 # -- ---------------------------------------------------------- 11 # ---------------------------------------------------------------------------------------- 12 # ---------------------------------------------------------------------------------------- 13 # 14 # 15 from BearbeiteStrukturen import BearbeiteStrukturen # Dialog - Strukturen bearbeiten 16 from ProgStart import ProgStart # Dialog - Datenbankanmeldung 17 from datenbank import Datenbank, Fehler # Datenbankzugriff, Datenbankvariablen 18 import sys # Programmende >sys.exit()< 19 import getpass # Benutzername >getuser()< 20 # 21 # 22 # ---------------------------------------------------------------------------------------- 23 # ---------------------------------------------------------------------------------------- 24 # -- ---------------------------------------------------------- 25 # -- Ende Bellair ---------------------------------------------------------- 26 # -- ---------------------------------------------------------- 27 # ---------------------------------------------------------------------------------------- 28 # ---------------------------------------------------------------------------------------- 29 # 30 31 32 # begin wxGlade: dependencies 33 # end wxGlade 3436 """ 37 Klasse, die das Hauptfenster der Benutzeroberfläche repräsentiert. 38 39 @raise IOError: Fehlermeldung und Programmende, wenn die Konfigurationsdatei '.wxvf' nicht geöffnet werden kann. 40 @raise Fehler: Fehlermeldung und Programmende, wenn die Datenbankverbindung nicht hergestellt werden kann. 41 """222 # end wxGlade 223 224 # end of class VFHauptfenster 22543 # begin wxGlade: VFHauptfenster.__init__ 44 kwds["style"] = wx.DEFAULT_FRAME_STYLE 45 wx.Frame.__init__(self, *args, **kwds) 46 47 # Menu Bar 48 self.hauptfenster_menubar = wx.MenuBar() 49 wxglade_tmp_menu = wx.Menu() 50 wxglade_tmp_menu.Append(101, "&Speichern\tCtrl+S", u"Änderungen in der Datenbank ablegen", wx.ITEM_NORMAL) 51 wxglade_tmp_menu.AppendSeparator() 52 wxglade_tmp_menu.Append(102, "&Beenden\tCtrl+B", u"Die Benutzeroberfläche 'wxvf' beenden.", wx.ITEM_NORMAL) 53 self.hauptfenster_menubar.Append(wxglade_tmp_menu, "&Datei") 54 wxglade_tmp_menu = wx.Menu() 55 wxglade_tmp_menu.Append(201, "&Strukturen", "", wx.ITEM_NORMAL) 56 self.hauptfenster_menubar.Append(wxglade_tmp_menu, "&Bearbeiten") 57 self.SetMenuBar(self.hauptfenster_menubar) 58 # Menu Bar end 59 60 self.__set_properties() 61 self.__do_layout() 62 # end wxGlade 63 64 # 65 # ---------------------------------------------------------------------------------------- 66 # ---------------------------------------------------------------------------------------- 67 # -- ---------------------------------------------------------- 68 # -- Beginn Bellair ---------------------------------------------------------- 69 # -- ---------------------------------------------------------- 70 # ---------------------------------------------------------------------------------------- 71 # ---------------------------------------------------------------------------------------- 72 # 73 # 74 # -------------------------------------------------------------------------------- 75 # -- Initialisierungen -------------------------------------------------- 76 # -------------------------------------------------------------------------------- 77 # 78 self.CenterOnScreen() 79 80 # 81 # -------------------------------------------------------------------------------- 82 # -- Menüereignisse ---------------------------------------------------------- 83 # -------------------------------------------------------------------------------- 84 # 85 self.Bind(wx.EVT_MENU, self.__speichereAenderungen__, id=101) 86 self.Bind(wx.EVT_MENU, self.__beendeProgramm__, id=102) 87 88 self.Bind(wx.EVT_MENU, self.__bearbeiteStrukturenDialog__, id=201) 89 90 # 91 # -------------------------------------------------------------------------------- 92 # -- Datenbankbenutzername / -kennwort eingeben -------------------------- 93 # -------------------------------------------------------------------------------- 94 # 95 # 96 # -- später wieder Aktivieren ! ---------------------------------------------------------- 97 # 98 # dlg = ProgStart( self ) 99 # dlg.CenterOnScreen() 100 # dlg.text_ctrl_dbBenutzerName.SetValue( getpass.getuser() ) 101 # if ( dlg.ShowModal() != wx.ID_OK ): 102 # sys.exit() 103 # 104 # dbBenutzerName = dlg.text_ctrl_dbBenutzerName.GetValue() 105 # dbKennwort = dlg.text_ctrl_dbKennwort.GetValue() 106 # dlg.Destroy() 107 dbBenutzerName = "micha" 108 dbKennwort = "M&K2Anna" 109 110 # 111 # -------------------------------------------------------------------------------- 112 # -- Konfigurationsdatei auslesen ------------------------------------------ 113 # -------------------------------------------------------------------------------- 114 # 115 try: 116 confDatei=open('.wxvf', 'r') 117 except IOError: 118 dlg = wx.MessageDialog(self, 119 "Die von 'wxvf' benötigte Konfigurationsdatei ist nicht vorhanden !\n\n" 120 + "Bitte lege im Programmverzeichnis eine Textdatei mit dem Namen '.wxvf' an.\n" 121 + "Bitte trage im Format 'xxx.xxx.xxx.xxx' die IP-Adresse ein, über die der Datenbankserver (PostgreSQL) angesprochen werden kann (000.000.000.000 entspricht 'localhost').\n\n" 122 + "'wxvf' wird beendet." 123 , 'Fehlermeldung', wx.OK | wx.ICON_ERROR ) 124 dlg.ShowModal() 125 dlg.Destroy() 126 sys.exit() 127 # 128 # -- IP-Adresse lesen (xxx.xxx.xxx.xxx) ---------- 129 # -- Die 15 Zeichen - Begrenzung soll vor 'Buffer Overflow' schützen ---------- 130 # 131 hostaddr = confDatei.read( 15 ) 132 confDatei.close() 133 134 # 135 # -------------------------------------------------------------------------------- 136 # -- Verbindung zu 'vf' herstellen ------------------------------------------ 137 # -------------------------------------------------------------------------------- 138 # 139 try: 140 self.dbVerbunden = Datenbank( dbBenutzerName, dbKennwort, hostaddr ) 141 """ 142 @cvar: Datenbankobjekt, welches die Datenbankverbindung enthält. 143 @type: libpq - PgConnection 144 """ 145 146 except Fehler, msg: 147 dlg = wx.MessageDialog( self, str( msg ), 'Fehlermeldung', wx.OK | wx.ICON_ERROR ) 148 dlg.ShowModal() 149 dlg.Destroy() 150 sys.exit()151 152 153 154 # 155 # ------------------------------------------------------------------------------------ 156 # -- Funktionen ---------------------------------------------------------- 157 # ------------------------------------------------------------------------------------ 158 # 159 160 # 161 # -- Programm beenden -------------------------------------------------- 162 #164 """ 165 Methode die aufgerufen wird, um das Programm zu beenden. 166 167 @param ereignisDummy: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. Es wird jedoch nicht verwendet. 168 @type ereignisDummy: C{wx - Ereignisobjekt} 169 """ 170 self.dbVerbunden.verwerfeAenderungen() 171 self.Close()172 173 # 174 # -- Strukturen bearbeiten -------------------------------------------------- 175 #177 """ 178 Methode die aufgerufen wird, um die in der Datenbank vorhandenen Strukturen zu bearbeiten. 179 180 @param ereignisDummy: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. Es wird jedoch nicht verwendet. 181 @type ereignisDummy: C{wx - Ereignisobjekt} 182 """ 183 dlg = BearbeiteStrukturen( self ) 184 dlg.liesDatenbank( self.dbVerbunden ) 185 dlg.CenterOnScreen() 186 dlg.ShowModal()187 188 # 189 # -- Änderungen speichern -------------------------------------------------- 190 #192 """ 193 Methode die aufgerufen wird, um alle Änderungen zu speichern. 194 195 @param ereignisDummy: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. Es wird jedoch nicht verwendet. 196 @type ereignisDummy: C{wx - Ereignisobjekt} 197 """ 198 self.dbVerbunden.nimmAenderungen()199 200 201 # 202 # ---------------------------------------------------------------------------------------- 203 # ---------------------------------------------------------------------------------------- 204 # -- ---------------------------------------------------------- 205 # -- Ende Bellair ---------------------------------------------------------- 206 # -- ---------------------------------------------------------- 207 # ---------------------------------------------------------------------------------------- 208 # ---------------------------------------------------------------------------------------- 209 # 210212 # begin wxGlade: VFHauptfenster.__set_properties 213 self.SetTitle("wxvf - 'Virtuelles Fahrzeug'") 214 self.SetSize((685, 480))215 # end wxGlade 216
| Trees | Indices | Help |
|---|
| Generated by Epydoc 3.0beta1 on Tue Sep 9 19:16:11 2008 | http://epydoc.sourceforge.net |