[gevice] New script for maintainer tables



commit 1c1669791ac03b40b9eabbc94acf23b44b4f64ef
Author: Alejandro Valdes Jimenez <avaldes lenny utalca cl>
Date:   Tue May 5 19:59:56 2009 -0400

    New script for maintainer tables
---
 src/gevicemaintainer.py |   60 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 60 insertions(+), 0 deletions(-)

diff --git a/src/gevicemaintainer.py b/src/gevicemaintainer.py
new file mode 100644
index 0000000..bd29aba
--- /dev/null
+++ b/src/gevicemaintainer.py
@@ -0,0 +1,60 @@
+import pygtk
+pygtk.require('2.0')
+import gtk
+import os
+
+import gettext
+gettext.textdomain("gevice")
+from gettext import gettext as _
+
+import psycopg2
+import config
+
+class GeviceMaintainer:
+    def __ini__ (self):
+        pass
+    
+    def load_interface (self,title):
+        glade_file = gtk.glade.XML (os.path.join (config.GLADEDIR, "gevice.glade"),"window_maintainer",None)
+        self.window_maintainer = glade_file.get_widget ("window_maintainer")
+        self.button_add = glade_file.get_widget ("button_add")
+        self.button_rem = glade_file.get_widget ("button_rem")
+        self.button_apply = glade_file.get_widget ("button_apply")
+        self.button_cancel = glade_file.get_widget ("button_cancel")        
+        self.window_maintainer.set_title (title)
+		
+		#self.button_connect_dbase.connect ("clicked",self.on_button_connect_dbase_clicked,gevice)
+
+    def show_interface (self):
+    	self.window_maintainer.show_all()
+
+        
+    def load_data (self,query):
+        gdb.gnome_db_init("gevice", "3.0", None, None)
+        error_ptr = ctypes.POINTER(ctypes.c_int)() # TODO define error pointer properly
+        
+        gda.gda_init ("gevice", "3.0", None, None);
+        gda.gda_config_save_data_source ("db_gevice","PostgreSQL","DATABASE=db_gevice","Base datos Gevice",None,None)
+        client = gda.gda_client_new()
+        cnc = gda.gda_client_open_connection (client,"db_gevice","plataforma","rss123",GDA_CONNECTION_OPTIONS_DONT_SHARE,ctypes.byref(error_ptr))
+        
+        if not cnc:
+            print "could not connect"
+        
+        sql=ctypes.create_string_buffer(query)
+        command = gda.gda_command_new (sql, GDA_COMMAND_TYPE_SQL, GDA_COMMAND_OPTION_STOP_ON_ERRORS)
+        data_model = gda.gda_connection_execute_select_command (cnc, command, None, ctypes.byref(error_ptr))
+        print data_model
+        if not data_model:
+            print "could not get data_model for sql"
+            # TODO define error structure so error can be displayed
+        
+        window = gtk.gtk_window_new(GTK_WINDOW_TOPLEVEL)
+        grid = gdb.gnome_db_grid_new(data_model)
+        gtk.g_object_unref(data_model)
+        gtk.gtk_container_add(window, grid)
+        gtk.gtk_window_set_default_size(window, 400, 300);
+
+        QUITFUNC = ctypes.CFUNCTYPE(ctypes.c_int,ctypes.c_int) # 2 not 1 - TODO find out wtf is going on !
+        gtk.gtk_widget_show_all (window)
+        gda.gda_connection_close (cnc); 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]