Code: Alles auswählen
class Edit_Vok(wx.Dialog):
    def __init__(self, *args, **kwds):
        kwds["style"] = wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER | wx.THICK_FRAME
        wx.Dialog.__init__(self, *args, **kwds)
        self.label_edit_vok = wx.StaticText(self, -1, "Vokabel bearbeiten")
        self.label_frage = wx.StaticText(self, -1, "Frage:")
        self.input_frage = wx.TextCtrl(self, -1, "", style=wx.TE_MULTILINE | wx.NO_BORDER)
        self.label_antwort = wx.StaticText(self, -1, "Antwort:")
        self.input_antwort = wx.TextCtrl(self, -1, "", style=wx.TE_MULTILINE | wx.NO_BORDER)
        self.label_tipp = wx.StaticText(self, -1, "Tipp:")
        self.input_tipp = wx.TextCtrl(self, -1, "", style=wx.TE_MULTILINE | wx.NO_BORDER)
        self.button_ok = wx.Button(self, wx.ID_OK, "", style=wx.NO_BORDER)
        self.db = Database()
        global wahl
        #self.lek_sel = lek_sel
        join = os.path.join
        db_p = join(join(os.environ['HOME'], ".Simpliciter"), "db.simpliciter")
        self.db.path = db_p
        self.vok = vok = self.db.get_vok_by_sel(wahl[0], wahl[1])
        self.input_frage.SetValue(vok[2])
        self.input_antwort.SetValue(vok[3])
        self.input_tipp.SetValue(vok[4])
        home = os.environ['HOME']
        self.home = os.path.join(home, ".Simpliciter")
        self.settings = settings(self.home)
        self.SetBackgroundColour(self.settings.get_colour())
        self.__set_properties()
        self.__do_layout()
        self.Bind(wx.EVT_BUTTON, self.ok_pressed, self.button_ok)
        self.Bind(wx.EVT_CLOSE,self.on_close)
    def __set_properties(self):
        #!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
        self.SetTitle("Vokabel bearbeiten")
        self.SetSize((505, 470))
        self.SetMinSize(self.SetSizeHints())#self.GetEffectiveMinSize())
        #!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
        self.label_edit_vok.SetFont(wx.Font(20, wx.DEFAULT, wx.NORMAL, wx.NORMAL, 0, "Sans Serif"))
        self.label_frage.SetFont(wx.Font(15, wx.DEFAULT, wx.NORMAL, wx.NORMAL, 0, "Sans Serif"))
        self.input_frage.SetFocus()
        self.label_antwort.SetFont(wx.Font(15, wx.DEFAULT, wx.NORMAL, wx.NORMAL, 0, "Sans Serif"))
        self.label_tipp.SetFont(wx.Font(15, wx.DEFAULT, wx.NORMAL, wx.NORMAL, 0, "Sans Serif"))
    def __do_layout(self):
        sizer_1 = wx.FlexGridSizer(2, 1, 15, 0)
        sizer_2 = wx.FlexGridSizer(3, 2, 15, 10)
        sizer_1.Add(self.label_edit_vok, 0, wx.ALIGN_CENTER_HORIZONTAL, 0)
        sizer_2.Add(self.label_frage, 0, 0, 0)
        sizer_2.Add(self.input_frage, 0, wx.EXPAND, 0)
        sizer_2.Add(self.label_antwort, 0, 0, 0)
        sizer_2.Add(self.input_antwort, 0, wx.EXPAND, 0)
        sizer_2.Add(self.label_tipp, 0, 0, 0)
        sizer_2.Add(self.input_tipp, 0, wx.EXPAND, 0)
        sizer_2.AddGrowableRow(0)
        sizer_2.AddGrowableRow(1)
        sizer_2.AddGrowableRow(2)
        sizer_2.AddGrowableCol(1)
        sizer_1.Add(sizer_2, 1, wx.EXPAND, 0)
        sizer_1.Add(self.button_ok, 0, wx.ALIGN_RIGHT, 0)
        self.SetSizer(sizer_1)
        sizer_1.AddGrowableRow(1)
        sizer_1.AddGrowableCol(0)
        self.Layout()
    def on_close(self,event):
        self.Destroy()
    def ok_pressed(self, event):
        frage = self.input_frage.GetValue()
        antwort = self.input_antwort.GetValue()
        tipp = self.input_tipp.GetValue()
        if (not frage == "" and not antwort == ""):
            self.db.edit_vok(self.vok[0],frage, antwort, tipp)
            self.Destroy()
        else:
            wx.MessageBox(u"Ungültige Eingaben!","ERROR")