6 gtk.HILDON_SIZE_FINGER_HEIGHT = -1
7 gtk.HILDON_SIZE_AUTO = -1
8 gtk.HILDON_SIZE_AUTO_WIDTH = -1
10 BUTTON_ARRANGEMENT_VERTICAL = -1
17 get_instance = staticmethod( get_instance )
18 def add_window ( self , window ) :
21 class Window ( gtk.Window ) :
22 def __init__ ( self ) :
23 gtk.Window.__init__( self )
24 def set_app_menu( self , menubar ) :
25 self.vbox.pack_start(menubar,True,True,5)
27 class AppMenu ( gtk.MenuBar ) :
28 def append ( self , item ) :
29 item._menu_item = gtk.MenuItem( item.get_label() )
30 item._menu_item.connect( "activate", lambda arg : item.clicked() )
31 gtk.MenuBar.append( self , item._menu_item )
33 class StackableWindow ( Window ) :
34 def __init__ ( self ) :
35 Window.__init__( self )
37 class PannableArea ( gtk.ScrolledWindow ) :
38 def __init__ ( self ) :
39 gtk.ScrolledWindow.__init__( self )
40 self.set_size_request(-1, 260)
41 self.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
43 class Entry ( gtk.Entry ) :
44 def __init__ ( self , height ) :
45 gtk.Entry.__init__( self )
47 class TextView ( gtk.TextView ) :
48 def __init__ ( self ) :
49 gtk.TextView.__init__( self )
50 def set_placeholder( self , text ) :
51 self.get_buffer().set_text( text )
53 class Button ( gtk.Button ) :
54 def __init__ ( self , height , arrangement , label=None , value=None ) :
55 self._menu_item = None
56 gtk.Button.__init__( self , label )
57 def set_label ( self , label ) :
58 gtk.Button.set_label( self , label )
60 self._menu_item.child.set_label( self.get_label() )
62 class CheckButton ( gtk.CheckButton ) :
63 def __init__ ( self , height ) :
64 gtk.CheckButton.__init__( self )
66 # FIXME bug#6892 Add value-changed signal, with the response signal from the Dialog
67 class PickerButton ( Button ) :
68 def __init__ ( self , height , arrangement ) :
69 Button.__init__( self , height , arrangement )
72 def _build_label ( self ) :
75 selected = " -- %s" % self._selector.get_current_text()
76 Button.set_label( self , "%s%s" % ( self._title , selected ) )
77 def set_title ( self , title ) :
80 def get_selector ( self ) :
82 def set_selector ( self , selector ) :
83 self._selector = selector
84 self.connect( "clicked", lambda arg : self._selector.show_all() )
87 class TouchSelector ( gtk.Dialog ) :
89 def __init__ ( self ) :
90 gtk.Dialog.__init__( self , "Select zoom level",
93 ( gtk.STOCK_OK, gtk.RESPONSE_ACCEPT,
94 gtk.STOCK_CANCEL, gtk.RESPONSE_REJECT
97 self.combo = gtk.ComboBox()
99 def append_text_column ( self , zooms , boolean ) :
100 self.combo.set_model( zooms )
101 cell = gtk.CellRendererText()
102 self.combo.pack_start(cell, True)
103 self.combo.add_attribute(cell, 'text', 0)
105 self.vbox.pack_start(self.combo , True, True, 0)
107 def set_active ( self , unknown , active ) :
108 self.combo.set_active( active )
110 def get_current_text ( self ) :
111 item = self.combo.get_active_iter()
113 model = self.combo.get_model()
114 return model.get(item,0)[0]
116 def response ( self , widget , response , config ) :
117 if response == gtk.RESPONSE_ACCEPT :
118 self.zoomdialog( widget , config )
119 widget._build_label()