~umang/indicator-stickynotes/trunk

« back to all changes in this revision

Viewing changes to sticky.py

  • Committer: Umang Varma
  • Date: 2012-06-01 22:49:40 UTC
  • Revision ID: git-v1:8a154a1ec2fe9173dfacb89ebe2e4041bb622b8d
Implemented indicator.

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
from backend import Note, NoteSet
4
4
from gui import StickyNote
5
5
from gi.repository import Gtk, Gdk
 
6
from gi.repository import AppIndicator3 as appindicator
 
7
 
 
8
class IndicatorStickyNotes:
 
9
    def __init__(self):
 
10
        # Initialize NoteSet
 
11
        self.nset = NoteSet(StickyNote)
 
12
        self.nset.open()
 
13
        self.nset.showall()
 
14
        # Create App Indicator
 
15
        self.ind = appindicator.Indicator.new(
 
16
                "Sticky Notes", "accessories-text-editor",
 
17
                appindicator.IndicatorCategory.APPLICATION_STATUS)
 
18
        self.ind.set_status(appindicator.IndicatorStatus.ACTIVE)
 
19
        self.ind.set_title("Sticky Notes")
 
20
        #self.ind.set_attention_icon("pynagram")
 
21
        # Create Menu
 
22
        self.menu = Gtk.Menu()
 
23
        self.mNewNote = Gtk.MenuItem("New Note")
 
24
        self.menu.append(self.mNewNote)
 
25
        self.mNewNote.connect("activate", self.new_note, None)
 
26
        self.mNewNote.show()
 
27
 
 
28
        s = Gtk.SeparatorMenuItem.new()
 
29
        self.menu.append(s)
 
30
        s.show()
 
31
 
 
32
        self.mShowAll = Gtk.MenuItem("Show All")
 
33
        self.menu.append(self.mShowAll)
 
34
        self.mShowAll.connect("activate", self.showall, None)
 
35
        self.mShowAll.show()
 
36
 
 
37
        self.mHideAll = Gtk.MenuItem("Hide All")
 
38
        self.menu.append(self.mHideAll)
 
39
        self.mHideAll.connect("activate", self.hideall, None)
 
40
        self.mHideAll.show()
 
41
 
 
42
        s = Gtk.SeparatorMenuItem.new()
 
43
        self.menu.append(s)
 
44
        s.show()
 
45
 
 
46
        self.mQuit = Gtk.MenuItem("Quit")
 
47
        self.menu.append(self.mQuit)
 
48
        self.mQuit.connect("activate", Gtk.main_quit, None)
 
49
        self.mQuit.show()
 
50
        # Connect Indicator to menu
 
51
        self.ind.set_menu(self.menu)
 
52
 
 
53
    def new_note(self, *args):
 
54
        self.nset.new()
 
55
 
 
56
    def showall(self, *args):
 
57
        print(args)
 
58
        self.nset.showall(*args)
 
59
 
 
60
    def hideall(self, *args):
 
61
        self.nset.hideall()
 
62
 
 
63
    def save(self):
 
64
        self.nset.save()
 
65
 
6
66
 
7
67
def main():
8
 
    nset = NoteSet(StickyNote)
9
 
    nset.open()
10
 
    nset.showall()
 
68
    indicator = IndicatorStickyNotes()
11
69
    Gtk.main()
12
 
    nset.save()
 
70
    indicator.save()
13
71
 
14
72
if __name__ == "__main__":
15
73
    main()