~umang/indicator-stickynotes/trunk

« back to all changes in this revision

Viewing changes to gui.py

  • Committer: Umang Varma
  • Date: 2012-06-05 01:45:31 UTC
  • Revision ID: git-v1:5ca01191ea5742ff2d1a6cc564a38b6def18a432
Lock/unlock functionality

Show diffs side-by-side

added added

removed removed

Lines of Context:
6
6
 
7
7
    def __init__(self, note):
8
8
        self.note = note
 
9
        self.locked = self.note.properties.get("locked", False)
9
10
        self.builder = Gtk.Builder()
10
11
        GObject.type_register(GtkSource.View)
11
12
        self.builder.add_from_file("StickyNotes.glade")
12
13
        self.builder.connect_signals(self)
 
14
        # Get necessary objects
13
15
        self.txtNote = self.builder.get_object("txtNote")
14
16
        self.winMain = self.builder.get_object("MainWindow")
15
17
        self.bAdd = self.builder.get_object("bAdd")
16
18
        self.imgAdd = self.builder.get_object("imgAdd")
17
19
        self.imgResizeR = self.builder.get_object("imgResizeR")
18
20
        self.eResizeR = self.builder.get_object("eResizeR")
 
21
        self.bLock = self.builder.get_object("bLock")
 
22
        self.imgLock = self.builder.get_object("imgLock")
 
23
        self.imgUnlock = self.builder.get_object("imgUnlock")
 
24
        self.bClose = self.builder.get_object("bClose")
 
25
        # Run
19
26
        self.run()
20
27
 
21
28
    def run(self, *args):
46
53
        self.eResizeR.get_window().set_cursor(Gdk.Cursor.new_for_display(
47
54
                    self.eResizeR.get_window().get_display(),
48
55
                    Gdk.CursorType.BOTTOM_RIGHT_CORNER))
 
56
        # Set locked state
 
57
        self.set_locked_state(self.locked)
49
58
 
50
59
    def show(self, widget=None, event=None):
51
60
        self.winMain.present()
71
80
 
72
81
    def properties(self):
73
82
        return {"position":self.winMain.get_position(),
74
 
                "size":self.winMain.get_size()}
 
83
                "size":self.winMain.get_size(), "locked":self.locked}
75
84
 
76
85
    def save(self, *args):
77
86
        self.note.noteset.save()
86
95
        self.winMain.hide()
87
96
        return False
88
97
 
 
98
    def set_locked_state(self, locked):
 
99
        self.locked = locked
 
100
        if not self.bLock.get_active() == self.locked:
 
101
            self.bLock.set_active(self.locked)
 
102
        self.txtNote.set_editable(not self.locked)
 
103
        self.txtNote.set_cursor_visible(not self.locked)
 
104
        self.bLock.set_image({True:self.imgLock,
 
105
            False:self.imgUnlock}[self.locked])
 
106
 
 
107
    def lock_toggled(self, *args):
 
108
        self.set_locked_state(self.bLock.get_active())
 
109
 
89
110
    def quit(self, *args):
90
111
        Gtk.main_quit()
91
112