Esempio n. 1
0
	def __init__(self):
		self.tools=Tools.Tools()
		self.oraTools={}
		self.tabDBline=[]
		self.filles = []
		## ITEM PARAM
		self.len_combo_top = 40
		self.len_combo_mid = 40
		self.len_entry_query = 100
		## FENETRE
		Window.__init__(self, "Administration Oracle")
		self.fenetre.connect("delete_event", self.close_main)
		settings = gtk.settings_get_default()
		settings.props.gtk_button_images = True
		self.vbox_main=gtk.VBox(False, 0)
		self.fenetre.add(self.vbox_main)
		self.set_xml_menu()
		self.hbox_top = gtk.HBox(False, 0)
		self.vbox_sep1 = gtk.VBox(False, 0)
		self.hbox_mid = gtk.HBox(False, 0)
		self.vbox_sep2 = gtk.VBox(False, 0)
		self.hbox_bot = gtk.HBox(True, 0)
		self.vbox_main.pack_start(self.hbox_top, False, False, 30)
		self.vbox_main.pack_start(self.vbox_sep1, False, False, 0)
		self.vbox_main.pack_start(self.hbox_mid, False, False, 30)
		self.vbox_main.pack_start(self.vbox_sep2, False, False, 0)
		self.vbox_main.pack_start(self.hbox_bot, False, False, 30)
		## STOCK ITEM
		self.stock_items = (
		("gtk-connectDB", "", 0, 0, None),
		("gtk-disconnectDB", "", 0, 0, None),
		("gtk-addConnection", "", 0, 0, None),
		("gtk-playQuery", "", 0, 0, None),
		("gtk-spreport", "", 0, 0, None),
		)
		self.stock_aliases = (
		("gtk-connectDB", gtk.STOCK_CONNECT),
		("gtk-disconnectDB", gtk.STOCK_DISCONNECT),
		("gtk-addConnection", gtk.STOCK_ADD),
		("gtk-playQuery", gtk.STOCK_MEDIA_PLAY),
		("gtk-spreport", gtk.STOCK_PROPERTIES),
		)
		gtk.stock_add(self.stock_items)
		factory = gtk.IconFactory()
		factory.add_default()
		style = gtk.Style()
		for item, alias in self.stock_aliases:
			icon_set = style.lookup_icon_set(alias)
			factory.add(item, icon_set)

		## vbox_sep
		self.frame_sep1=gtk.Frame("")
		self.frame_sep2=gtk.Frame("")
		self.vbox_sep1.pack_start(self.frame_sep1, False, False, 5)
		self.vbox_sep2.pack_start(self.frame_sep2, False, False, 5)

		self.tab_form = gtk.Table(1, 11, False)
		self.hbox_top.pack_start(self.tab_form, False, False, 0)

		# Add Line
		self.but_addLine=gtk.Button(stock="gtk-addConnection")
                self.but_addLine.modify_bg(gtk.STATE_NORMAL, self.but_color)
                self.but_addLine.connect("clicked", self.addConnectionLine)
                self.but_addLine.set_sensitive(True)

		# combo box dbList
		combo_dbList=gtk.combo_box_new_text()
		combo_dbList.modify_bg(gtk.STATE_NORMAL, self.but_color)
		combo_dbList.append_text(" "*self.len_combo_top)
		for dbList in _DBLIST.keys():
			combo_dbList.append_text(dbList)
		combo_dbList.connect('changed', self.changeDbList, 0)

		# combo box db
		combo_db=gtk.combo_box_new_text()
		combo_db.modify_bg(gtk.STATE_NORMAL, self.but_color)
		combo_db.append_text(" "*self.len_combo_top)
		combo_db.connect('changed', self.changeDb, 0)

		# combo box dbUser
		combo_dbUser=gtk.combo_box_new_text()
		combo_dbUser.modify_bg(gtk.STATE_NORMAL, self.but_color)
		combo_dbUser.append_text(" "*self.len_combo_top)
		combo_dbUser.connect('changed', self.changeDbUser, 0)

		# Connexion
		but_connect=gtk.Button(stock="gtk-connectDB")
		but_connect.modify_bg(gtk.STATE_NORMAL, self.but_color)
		but_connect.connect("clicked", self.connectDb, 0)
		but_connect.set_sensitive(False)

		# Deconnexion
		but_disconnect=gtk.Button(stock="gtk-disconnectDB")
                but_disconnect.modify_bg(gtk.STATE_NORMAL, self.but_color)
                but_disconnect.connect("clicked", self.disconnectDb, 0)

		# Statspack
		but_statspack=gtk.Button(stock="gtk-spreport")
		but_statspack.modify_bg(gtk.STATE_NORMAL, self.but_color)
		but_statspack.connect("clicked", self.generateSpreport, 0)

		# Tab DB line
		self.tabDBline.append(TableDBLine(0, but_connect, but_disconnect, but_statspack, combo_dbList, combo_db, combo_dbUser))
		self.tab_form.attach(self.but_addLine, 0, 1, 0, 1)
		self.tab_form.attach(self.tabDBline[0].label_dbList, 1, 2, 0, 1)
		self.tab_form.attach(self.tabDBline[0].combo_dbList, 2, 3, 0, 1)
		self.tab_form.attach(self.tabDBline[0].label_empty, 3, 4, 0, 1)
		self.tab_form.attach(self.tabDBline[0].label_db, 4, 5, 0, 1)
		self.tab_form.attach(self.tabDBline[0].combo_db, 5, 6, 0, 1)
		self.tab_form.attach(self.tabDBline[0].label_empty2, 6, 7, 0, 1)
		self.tab_form.attach(self.tabDBline[0].label_dbUser, 7, 8, 0, 1)
		self.tab_form.attach(self.tabDBline[0].combo_dbUser, 8, 9, 0, 1)
		self.tab_form.attach(self.tabDBline[0].but_connect, 9, 10, 0, 1)
		self.tab_form.attach(self.tabDBline[0].but_disconnect, 10, 11, 0, 1)
		self.tab_form.attach(self.tabDBline[0].but_statspack, 11, 12, 0, 1)

		## Query Box

		# Frame Query
		self.frm_query=gtk.Frame("Requête libre")
		self.frm_registeredQuery=gtk.Frame("Requête pré-fabriquée")
		self.frm_parameter=gtk.Frame("Paramètre")

		# Query Button
		self.but_query=gtk.Button(stock="gtk-playQuery")
                self.but_query.modify_bg(gtk.STATE_NORMAL, self.but_color)
                self.but_query.connect("clicked", self.execQuery, "query")

		# Query Text
		self.entry_query = gtk.Entry()
		self.entry_query.set_width_chars(self.len_entry_query)

		# RegisteredQuery Button
		self.but_registeredQuery=gtk.Button(stock="gtk-playQuery")
		self.but_registeredQuery.modify_bg(gtk.STATE_NORMAL, self.but_color)
		self.but_registeredQuery.connect("clicked", self.execQuery, "registered")
		self.but_registeredQuery.set_sensitive(False)

		# RegisteredQuery combobox
		self.combo_registeredQuery=gtk.combo_box_new_text()
		self.combo_registeredQuery.modify_bg(gtk.STATE_NORMAL, self.but_color)
		self.combo_registeredQuery.append_text(" "*self.len_combo_mid)
		for queryName in _REGISTEREDQUERY.keys():
                        self.combo_registeredQuery.append_text(queryName)
                self.combo_registeredQuery.connect('changed', self.changeRegisteredQuery)

		# Parameter Text
		self.entry_parameter = gtk.Entry()
		self.entry_parameter.set_width_chars(self.len_entry_query)

		# Parameter Button
		self.but_parameter=gtk.Button(stock="gtk-playQuery")
		self.but_parameter.modify_bg(gtk.STATE_NORMAL, self.but_color)
		self.but_parameter.connect("clicked", self.execQuery, "parameter")

		self.tab_query_global = gtk.Table(1, 5, False)
		label_empty = gtk.Label(" ")
		label_empty.set_alignment(xalign=0.0, yalign=0.5)
		label_empty2 = gtk.Label(" ")
		label_empty2.set_alignment(xalign=0.0, yalign=0.5)
		self.hbox_mid.pack_start(self.tab_query_global, False, False, 0)
		self.tab_query_global.attach(self.frm_query, 0, 1, 0, 1)
		self.tab_query_global.attach(label_empty, 0, 1, 1, 2)
		self.tab_query_global.attach(self.frm_registeredQuery, 0, 1, 2, 3)
		self.tab_query_global.attach(label_empty2, 0, 1, 3, 4)
		self.tab_query_global.attach(self.frm_parameter, 0, 1, 4, 5)
		self.tab_query_query = gtk.Table(2, 1, False)
		self.tab_query_registeredQuery = gtk.Table(2, 1, False)
		self.tab_query_parameter = gtk.Table(2, 1, False)
		self.frm_query.add(self.tab_query_query)
		self.frm_registeredQuery.add(self.tab_query_registeredQuery)
		self.frm_parameter.add(self.tab_query_parameter)
		self.tab_query_query.attach(self.but_query, 0, 1, 0, 1)
		self.tab_query_query.attach(self.entry_query, 1, 2, 0, 1)
		self.tab_query_registeredQuery.attach(self.but_registeredQuery, 0, 1, 0, 1)
		self.tab_query_registeredQuery.attach(self.combo_registeredQuery, 1, 2, 0, 1)
		self.tab_query_parameter.attach(self.but_parameter, 0, 1, 0, 1)
		self.tab_query_parameter.attach(self.entry_parameter, 1, 2, 0, 1)

		# ProgressBar
		self.progressBar_workingSQL = gtk.ProgressBar()
		self.progressBar_workingSQL.set_size_request(400,-1)
		self.hbox_bot.pack_start(self.progressBar_workingSQL, False, False, 0)
		self.progressBar_workingSQL.set_fraction(0)

		## SHOW
		self.fenetre.show_all()

		## Resize
		sizeCombo = self.entry_parameter.size_request()
		self.combo_registeredQuery.set_size_request(sizeCombo[0],sizeCombo[1])

		## HIDE
		self.tabDBline[0].but_disconnect.hide()
		self.tabDBline[0].but_statspack.hide()
Esempio n. 2
0
	def addConnectionLine(self, widget=None):

		# New Size tab_form
		numRows = self.tab_form.get_property('n-rows')
		numCol = self.tab_form.get_property('n-columns')
		self.tab_form.resize(numRows+1, numCol)
		
		# combo box dbList
		combo_dbList=gtk.combo_box_new_text()
		combo_dbList.modify_bg(gtk.STATE_NORMAL, self.but_color)
		combo_dbList.append_text(" "*self.len_combo_top)
		for dbList in _DBLIST.keys():
			combo_dbList.append_text(dbList)
		combo_dbList.connect('changed', self.changeDbList, numRows)
		
		# combo box db
		combo_db=gtk.combo_box_new_text()
		combo_db.modify_bg(gtk.STATE_NORMAL, self.but_color)
		combo_db.append_text(" "*self.len_combo_top)
		combo_db.connect('changed', self.changeDb, numRows)
		
		# combo box dbUser
		combo_dbUser=gtk.combo_box_new_text()
		combo_dbUser.modify_bg(gtk.STATE_NORMAL, self.but_color)
		combo_dbUser.append_text(" "*self.len_combo_top)
		combo_dbUser.connect('changed', self.changeDbUser, numRows)
		
		# Connexion
		but_connect=gtk.Button(stock="gtk-connectDB")
		but_connect.modify_bg(gtk.STATE_NORMAL, self.but_color)
		but_connect.connect("clicked", self.connectDb, numRows)
		but_connect.set_sensitive(False)
		
		# Deconnexion
		but_disconnect=gtk.Button(stock="gtk-disconnectDB")
		but_disconnect.modify_bg(gtk.STATE_NORMAL, self.but_color)
		but_disconnect.connect("clicked", self.disconnectDb, numRows)

		# Statspack
		but_statspack=gtk.Button(stock="gtk-spreport")
		but_statspack.modify_bg(gtk.STATE_NORMAL, self.but_color)
		but_statspack.connect("clicked", self.generateSpreport, 0)

		# Tab line
		self.tabDBline.append(TableDBLine(numRows, but_connect, but_disconnect, but_statspack, combo_dbList, combo_db, combo_dbUser))
		
		# Attach tab
		self.tab_form.attach(self.tabDBline[-1].label_dbList, 1, 2, numRows, numRows+1)
		self.tab_form.attach(self.tabDBline[-1].combo_dbList, 2, 3, numRows, numRows+1)
		self.tab_form.attach(self.tabDBline[-1].label_empty, 3, 4, numRows, numRows+1)
		self.tab_form.attach(self.tabDBline[-1].label_db, 4, 5, numRows, numRows+1)
		self.tab_form.attach(self.tabDBline[-1].combo_db, 5, 6, numRows, numRows+1)
		self.tab_form.attach(self.tabDBline[-1].label_empty2, 6, 7, numRows, numRows+1)
		self.tab_form.attach(self.tabDBline[-1].label_dbUser, 7, 8, numRows, numRows+1)
		self.tab_form.attach(self.tabDBline[-1].combo_dbUser, 8, 9, numRows, numRows+1)
		self.tab_form.attach(self.tabDBline[-1].but_connect, 9, 10, numRows, numRows+1)
		self.tab_form.attach(self.tabDBline[-1].but_disconnect, 10, 11, numRows, numRows+1)
		self.tab_form.attach(self.tabDBline[-1].but_statspack, 11, 12, numRows, numRows+1)

		# SHOW / HIDE
		self.tabDBline[-1].label_dbList.show()
		self.tabDBline[-1].combo_dbList.show()
		self.tabDBline[-1].label_empty.show()
		self.tabDBline[-1].label_db.show()
		self.tabDBline[-1].combo_db.show()
		self.tabDBline[-1].label_empty2.show()
		self.tabDBline[-1].label_dbUser.show()
		self.tabDBline[-1].combo_dbUser.show()
		self.tabDBline[-1].but_connect.show()