~darragh-ssa/d-cm/d-cm

« back to all changes in this revision

Viewing changes to DOPEN/extlibman

  • Committer: Darragh van Tichelen
  • Date: 2010-05-14 10:30:14 UTC
  • Revision ID: darragh.ssa@gmail.com-20100514103014-5ycjt6xh40ea6y8k
First Import under bazaar

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/usr/bin/env python
 
2
# -*- coding: utf-8 -*-
 
3
# generated by wxGlade 0.6.3 on Sun Feb  7 18:01:36 2010
 
4
 
 
5
import wx, os
 
6
 
 
7
# begin wxGlade: extracode
 
8
# end wxGlade
 
9
 
 
10
 
 
11
 
 
12
class ExtMan(wx.Frame):
 
13
    def __init__(self, *args, **kwds):
 
14
        # begin wxGlade: ExtMan.__init__
 
15
        kwds["style"] = wx.DEFAULT_FRAME_STYLE
 
16
        wx.Frame.__init__(self, *args, **kwds)
 
17
        self.combo_box_1 = wx.ComboBox(self, -1, choices=[], style=wx.CB_DROPDOWN)
 
18
        self.text_ctrl_1 = wx.TextCtrl(self, -1, "")
 
19
        self.button_1 = wx.Button(self, -1, "SAVE")
 
20
 
 
21
        self.__set_properties()
 
22
        self.__do_layout()
 
23
 
 
24
        self.Bind(wx.EVT_COMBOBOX, self.change, self.combo_box_1)
 
25
        self.Bind(wx.EVT_BUTTON, self.save, self.button_1)
 
26
        # end wxGlade
 
27
 
 
28
        self.initialize()
 
29
 
 
30
    def __set_properties(self):
 
31
        # begin wxGlade: ExtMan.__set_properties
 
32
        self.SetTitle("Extlib Manager")
 
33
        self.combo_box_1.SetMinSize((200, 27))
 
34
        self.text_ctrl_1.SetMinSize((200, 27))
 
35
        # end wxGlade
 
36
 
 
37
    def __do_layout(self):
 
38
        # begin wxGlade: ExtMan.__do_layout
 
39
        sizer_1 = wx.BoxSizer(wx.VERTICAL)
 
40
        sizer_2 = wx.BoxSizer(wx.VERTICAL)
 
41
        sizer_3 = wx.BoxSizer(wx.HORIZONTAL)
 
42
        sizer_3.Add(self.combo_box_1, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ADJUST_MINSIZE, 0)
 
43
        sizer_3.Add(self.text_ctrl_1, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ADJUST_MINSIZE, 0)
 
44
        sizer_2.Add(sizer_3, 0, wx.EXPAND, 0)
 
45
        sizer_2.Add(self.button_1, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ADJUST_MINSIZE, 0)
 
46
        sizer_1.Add(sizer_2, 1, wx.EXPAND, 0)
 
47
        self.SetSizer(sizer_1)
 
48
        sizer_1.Fit(self)
 
49
        self.Layout()
 
50
        # end wxGlade
 
51
 
 
52
    def extlib_set(self,name,new):
 
53
        last = self.extlib_get(name)
 
54
        last = name + "|" + last
 
55
        new = name + "|" + new
 
56
        try:
 
57
            s = open(self.extlib, 'r').read()
 
58
        except:
 
59
            print "error: could not open" + self.extlib + " error generated in config_set"
 
60
        s = s.replace(last, new)
 
61
        f = open(self.extlib, 'w')
 
62
        f.write(s)
 
63
        f.close()
 
64
 
 
65
    def extlib_get(self,name):
 
66
        self.extlib = self.elmdir + "extlib.ded"
 
67
        try:
 
68
            f = open(self.extlib, 'r')
 
69
        except:
 
70
            print "error: could not open" + self.extlib + " error generated in config_get"
 
71
        for line in f:
 
72
            if name.strip() == line.strip().split("|")[0]:
 
73
                 strip = line.strip().split("|")[1]
 
74
        return strip
 
75
        f.close()
 
76
 
 
77
    def initialize(self):
 
78
        self.elmdir = os.path.dirname(__file__) + "/"
 
79
        self.extlib = self.elmdir + "extlib.ded"
 
80
        try:
 
81
            f = open(self.extlib, 'r')
 
82
            self.subjects=[]
 
83
            self.openers=[]
 
84
        except:
 
85
            print "error"
 
86
        for line in f:
 
87
            if line.startswith("@"):
 
88
                pass
 
89
            else:
 
90
                self.subjects.append(line.strip().split("|")[0])
 
91
                self.openers.append(line.strip().split("|")[1])
 
92
        f.close()
 
93
        for i in self.subjects:
 
94
            self.combo_box_1.Append(i)
 
95
        self.text_ctrl_1.SetValue(self.openers[self.subjects.index(self.subjects[0])])
 
96
 
 
97
    def change(self, event): # wxGlade: ExtMan.<event_handler>
 
98
        self.text_ctrl_1.SetValue(self.openers[self.subjects.index(event.GetString())])
 
99
 
 
100
    def save(self, event): # wxGlade: ExtMan.<event_handler>
 
101
        if self.text_ctrl_1.GetValue() != "":
 
102
            self.extlib_set(self.combo_box_1.GetValue(),self.text_ctrl_1.GetValue())
 
103
 
 
104
# end of class ExtMan
 
105
 
 
106
 
 
107
if __name__ == "__main__":
 
108
    app = wx.PySimpleApp(0)
 
109
    wx.InitAllImageHandlers()
 
110
    extlibman = ExtMan(None, -1, "")
 
111
    app.SetTopWindow(extlibman)
 
112
    extlibman.Show()
 
113
    app.MainLoop()