From dda08f05b71ab78d4e338d3b76e65c8b0657d5a0 Mon Sep 17 00:00:00 2001 From: bjschuma Date: Mon, 18 Jan 2010 19:26:15 -0500 Subject: [PATCH] Changes made to gtk functions during ocarina development --- nbproject/private/private.xml | 4 ++++ src/base/loader.py | 7 +++++-- src/core/disable.py | 2 +- src/extra/guiGTK/__init__.py | 2 +- src/extra/guiGTK/label.py | 6 +++++- src/extra/guiGTK/list.py | 10 +++++++++- src/extra/guiGTK/tabs.py | 29 +++++++++++++++++++++++++++++ src/extra/guiGTK/window.py | 14 ++++++++++---- src/extra/sgtk.py | 1 + 9 files changed, 65 insertions(+), 10 deletions(-) create mode 100644 nbproject/private/private.xml create mode 100644 src/extra/guiGTK/tabs.py diff --git a/nbproject/private/private.xml b/nbproject/private/private.xml new file mode 100644 index 00000000..c1f155a7 --- /dev/null +++ b/nbproject/private/private.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/base/loader.py b/src/base/loader.py index 4c894b21..1194e2fe 100644 --- a/src/base/loader.py +++ b/src/base/loader.py @@ -1,7 +1,7 @@ # This class is used to load plugins import sys -from bt.message import write +from bt.message import * from bt.file import * @@ -46,7 +46,10 @@ class PluginLoader: continue # Load the module into our module array write("Attempting to load "+mod, True) - self.loadmod(split[0], os.path.join(dir,mod)) + try: + self.loadmod(split[0], os.path.join(dir,mod)) + except: + error("Error loading "+mod) # Call with a module name to import and path to plugin diff --git a/src/core/disable.py b/src/core/disable.py index db0ef7e3..fe35e00e 100644 --- a/src/core/disable.py +++ b/src/core/disable.py @@ -26,7 +26,7 @@ def open(): # Called every time the plugin is stopped def close(): # Run this to prevent disable from ever being disabled - manager.run("enable",("disable")) + manager.run("enable",["disable"]) pass diff --git a/src/extra/guiGTK/__init__.py b/src/extra/guiGTK/__init__.py index 67d84902..453a13e4 100644 --- a/src/extra/guiGTK/__init__.py +++ b/src/extra/guiGTK/__init__.py @@ -2,4 +2,4 @@ __author__="bjschuma" __date__ ="$Jan 6, 2010 9:52:21 PM$" -__all__ = ["box", "button", "label", "list", "menu", "window"] \ No newline at end of file +__all__ = ["box", "button", "label", "list", "menu", "tabs", "window"] \ No newline at end of file diff --git a/src/extra/guiGTK/label.py b/src/extra/guiGTK/label.py index f594c834..55e54330 100644 --- a/src/extra/guiGTK/label.py +++ b/src/extra/guiGTK/label.py @@ -15,4 +15,8 @@ class Label(gtk.Label): def change(self,text): - self.set_text(text) \ No newline at end of file + self.set_text(text) + + + def rotate(self,angle): + self.set_angle(angle) \ No newline at end of file diff --git a/src/extra/guiGTK/list.py b/src/extra/guiGTK/list.py index 4e3c9c78..1a8b1c21 100644 --- a/src/extra/guiGTK/list.py +++ b/src/extra/guiGTK/list.py @@ -48,4 +48,12 @@ class List(gtk.ScrolledWindow): if arg == None: self.tree.connect(signal, func) else: - self.tree.connect(signal, func, arg) \ No newline at end of file + self.tree.connect(signal, func, arg) + + + def rules(self,hint): + self.tree.set_rules_hint(hint) + + + def count(self): + return len(self.list) \ No newline at end of file diff --git a/src/extra/guiGTK/tabs.py b/src/extra/guiGTK/tabs.py new file mode 100644 index 00000000..80d950b0 --- /dev/null +++ b/src/extra/guiGTK/tabs.py @@ -0,0 +1,29 @@ +#! /usr/bin/python + +# To change this template, choose Tools | Templates +# and open the template in the editor. + +__author__="bjschuma" +__date__ ="$Jan 16, 2010 12:37:41 PM$" + +import gtk + +class Tabs(gtk.Notebook): + def __init__(self): + gtk.Notebook.__init__(self) + self.show() + + + def tabpos(self,pos): + newpos = gtk.POS_LEFT + if pos=="right": + newpos = gtk.POS_RIGHT + elif pos=="top": + newpos = gtk.POS_TOP + elif pos=="bottom": + newpos = gtk.POS_BOTTOM + self.set_tab_pos(newpos) + + + def append(self,child,label=None): + self.append_page(child,label) \ No newline at end of file diff --git a/src/extra/guiGTK/window.py b/src/extra/guiGTK/window.py index 13eeae11..2cb9011c 100644 --- a/src/extra/guiGTK/window.py +++ b/src/extra/guiGTK/window.py @@ -45,6 +45,10 @@ class Window(gtk.Window): gtk.Window.hide(self) + def resize(self,size): + gtk.Window.resize(self,size[0],size[1]) + + class PluginWindow(Window): @@ -100,15 +104,17 @@ class PluginWindow(Window): def enable(self,button,name): list, path, plugin = self.getPlugin(self.disabled) manager.run("enable",[plugin] ) - self.disabled.remove(path) - self.enabled.insert([plugin]) + if (plugin in manager.run("lsmod", "enabled")) == True: + self.disabled.remove(path) + self.enabled.insert([plugin]) def disable(self,button,name): list, path, plugin = self.getPlugin(self.enabled) manager.run("disable",[plugin]) - self.enabled.remove(path) - self.disabled.insert([plugin]) + if (plugin in manager.run("lsmod", "disabled")) == True: + self.enabled.remove(path) + self.disabled.insert([plugin]) def changeLabel(self,tree,name): diff --git a/src/extra/sgtk.py b/src/extra/sgtk.py index bbba987b..f9743ccd 100644 --- a/src/extra/sgtk.py +++ b/src/extra/sgtk.py @@ -45,6 +45,7 @@ def loop(): tools = menu.Item("Tools",None,[plugins]) bar.append(tools) + #vbox.pack(tabs.Tabs()) #but = button.Button("button",test,None,"I'm a button!") #vbox.pack(but)