2007-02-16 Zsolt Foldvari <zfoldvar@users.sourceforge.net>
* src/data/mainX.css: enable formatted notes on narrative web * src/plugins/NarrativeWeb.py: enable formatted notes on narrative web * src/MarkupText.py: properly reset xml generator output: fix #924 * src/ManagedWindow.py: enable accelerators in editor windows * src/Editors/_EditPrimary.py: enable accelerators in editor windows * src/Editors/_EditSecondary.py: enable accelerators in editor windows * src/Editors/_EditReference.py: enable accelerators in editor windows * src/DisplayTabs/_NoteTab.py: enable accelerators in editor windows * src/DisplayTabs/_ButtonTab.py: enable accelerators in editor windows * src/DisplayTabs/_GrampsTab.py: enable accelerators in editor windows svn: r8137
This commit is contained in:
@@ -306,6 +306,8 @@ class ManagedWindow:
|
||||
...
|
||||
|
||||
"""
|
||||
self.accel_group = gtk.AccelGroup()
|
||||
self.accelerators = {}
|
||||
window_key = self.build_window_key(obj)
|
||||
menu_label,submenu_label = self.build_menu_names(obj)
|
||||
self._gladeobj = None
|
||||
@@ -340,10 +342,22 @@ class ManagedWindow:
|
||||
# On the top level: we use gramps top window
|
||||
self.parent_window = self.uistate.window
|
||||
|
||||
def register_accelerator(self, accelerator, callback, *args):
|
||||
key, mod = gtk.accelerator_parse(accelerator)
|
||||
self.accelerators[(key, mod)] = (callback, args)
|
||||
self.accel_group.connect_group(key, mod, gtk.ACCEL_VISIBLE,
|
||||
self.accel_func)
|
||||
|
||||
def accel_func(self, accel_group, acceleratable, keyval, modifier):
|
||||
if self.accelerators.has_key((keyval, modifier)):
|
||||
callback, args = self.accelerators[(keyval, modifier)]
|
||||
callback(*args)
|
||||
|
||||
def set_window(self,window,title,text,msg=None):
|
||||
set_titles(window, title, text, msg)
|
||||
self.window = window
|
||||
self.window.connect('delete-event', self.close)
|
||||
self.window.get_toplevel().add_accel_group(self.accel_group)
|
||||
|
||||
def build_menu_names(self,obj):
|
||||
return ('Undefined Menu','Undefined Submenu')
|
||||
|
Reference in New Issue
Block a user