diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2008-08-07 14:35:52 -0300 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2008-08-07 14:35:52 -0300 |
commit | ae9b8b50537f77c564426e7668344cd90b2271a0 (patch) | |
tree | 8b694aff6b9e5de30871e2f1ead9fd6fac5b4e49 | |
parent | 797eb2f4a8d07b660ef3fbd59470d2459e2d526b (diff) | |
download | tuna-ae9b8b50537f77c564426e7668344cd90b2271a0.tar.gz |
tuna_gui: Add "Save kthreads tunings" menu entry in the process list box
Works like the --save command line option.
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-rw-r--r-- | tuna/tuna_gui.py | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/tuna/tuna_gui.py b/tuna/tuna_gui.py index ee6b0c1..d63dbf6 100644 --- a/tuna/tuna_gui.py +++ b/tuna/tuna_gui.py @@ -1109,6 +1109,43 @@ class procview: def refresh_toggle(self, a): self.refreshing = not self.refreshing + def save_kthreads_tunings(self, a): + dialog = gtk.FileChooserDialog("Save As", + None, + gtk.FILE_CHOOSER_ACTION_SAVE, + (gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL, + gtk.STOCK_OK, gtk.RESPONSE_OK)) + dialog.set_default_response(gtk.RESPONSE_OK) + + try: + dialog.set_do_overwrite_confirmation(True) + except: + pass + + filter = gtk.FileFilter() + filter.set_name("rtctl config files") + filter.add_pattern("*.rtctl") + filter.add_pattern("*.tuna") + filter.add_pattern("*rtgroup*") + dialog.add_filter(filter) + + filter = gtk.FileFilter() + filter.set_name("All files") + filter.add_pattern("*") + dialog.add_filter(filter) + + response = dialog.run() + + filename = dialog.get_filename() + dialog.destroy() + + if response != gtk.RESPONSE_OK: + return + + self.refresh() + kthreads = tuna.get_kthread_sched_tunings(self.ps) + tuna.generate_rtgroups(filename, kthreads) + def on_processlist_button_press_event(self, treeview, event): if event.type != gtk.gdk.BUTTON_PRESS or event.button != 3: return @@ -1137,18 +1174,24 @@ class procview: help = gtk.MenuItem("_What is this?") + save_kthreads_tunings = gtk.MenuItem("_Save kthreads tunings") + + menu.add(save_kthreads_tunings) menu.add(setattr) menu.add(refresh) menu.add(kthreads) menu.add(uthreads) menu.add(help) + save_kthreads_tunings.connect_object('activate', + self.save_kthreads_tunings, event) setattr.connect_object('activate', self.edit_attributes, event) refresh.connect_object('activate', self.refresh_toggle, event) kthreads.connect_object('activate', self.kthreads_view_toggled, event) uthreads.connect_object('activate', self.uthreads_view_toggled, event) help.connect_object('activate', self.help_dialog, event) + save_kthreads_tunings.show() setattr.show() refresh.show() kthreads.show() |