Work on native gui base features
This commit is contained in:
+40
-8
@@ -48,25 +48,46 @@ class BaseView(View):
|
||||
|
||||
# prepare lists
|
||||
self.lst_user = Gtk.ListStore(int, str)
|
||||
self.db.cur.execute("SELECT userid, login FROM user WHERE userid > 0 ORDER BY login")
|
||||
self.db.cur.execute("SELECT userid, login FROM user WHERE userid>0 ORDER BY login")
|
||||
for row in self.db.cur.fetchall():
|
||||
print(row)
|
||||
self.lst_user.append(row)
|
||||
treeview.add_column(self.tree['user'], 'ID', 0)
|
||||
treeview.add_column(self.tree['user'], 'Login', 1)
|
||||
self.tree['user'].set_model(self.lst_user)
|
||||
|
||||
# companies
|
||||
"""
|
||||
self.lst_companies = Gtk.ListStore(int, str, str, str)
|
||||
self.db.cur.execute("SELECT compid, compname, comptype FROM company ORDER BY compname")
|
||||
# list of dropdown lists
|
||||
self.lst_lists = Gtk.ListStore(int, str, int)
|
||||
# self.db.cur.execute("SELECT ddval, ddtext FROM dropdown WHERE ddid=0 AND ddval>0 ORDER BY ddval")
|
||||
sql = (
|
||||
"SELECT dd.ddval, dd.ddtext, COUNT(n.ddval) AS records "
|
||||
"FROM dropdown AS dd LEFT JOIN dropdown AS n ON dd.ddval=n.ddid "
|
||||
"WHERE dd.ddid=0 "
|
||||
"GROUP BY dd.ddval, dd.ddtext "
|
||||
"ORDER BY dd.ddval"
|
||||
)
|
||||
self.db.cur.execute(sql)
|
||||
for row in self.db.cur.fetchall():
|
||||
self.lst_user.append(row)
|
||||
self.lst_lists.append(row)
|
||||
treeview.add_column(self.tree['ddlists'], _('ID'), 0)
|
||||
treeview.add_column(self.tree['ddlists'], _('List'), 1)
|
||||
treeview.add_column(self.tree['ddlists'], _('Records'), 2)
|
||||
self.tree['ddlists'].set_model(self.lst_lists)
|
||||
|
||||
# company types
|
||||
self.db.cur.execute("SELECT ddval, ddtext FROM dropdown WHERE ddid=2 ORDER BY ddval")
|
||||
self.comptype = dict(self.db.cur.fetchall())
|
||||
combobox.load_from_dict(self.combo['flt_type'], {-1: _("─── all ───")} | self.comptype, -1)
|
||||
|
||||
# companies
|
||||
self.lst_companies = Gtk.ListStore(int, str, str, str)
|
||||
self.db.cur.execute("SELECT compid, compname, comptype, remarks FROM company ORDER BY compname")
|
||||
for row in self.db.cur.fetchall():
|
||||
self.lst_companies.append((row[0], row[1], self.comptype[row[2]], row[3]))
|
||||
treeview.add_column(self.tree['companies'], _('ID'), 0)
|
||||
treeview.add_column(self.tree['companies'], _('Name'), 1)
|
||||
treeview.add_column(self.tree['companies'], _('Type'), 2)
|
||||
treeview.add_column(self.tree['companies'], _('Remarks'), 3)
|
||||
self.tree['companies'].set_model(self.lst_companies)
|
||||
"""
|
||||
|
||||
# combos
|
||||
roles = {'captain': 'Captain', 'helmsman': 'Helmsman', 'sailor': 'Sailor'}
|
||||
@@ -74,6 +95,17 @@ class BaseView(View):
|
||||
langs = {'de': 'Deutsch', 'en': 'English'}
|
||||
combobox.load_from_dict(self.combo['user_lang'], langs)
|
||||
|
||||
# shipyard
|
||||
self.db.cur.execute("SELECT compid, compname FROM company WHERE comptype=3 ORDER BY compname")
|
||||
shipyards = dict(self.db.cur.fetchall())
|
||||
combobox.load_from_dict(self.combo['shipyard'], shipyards)
|
||||
|
||||
# default storage
|
||||
self.lst_storage_dfl = Gtk.ListStore(int, str)
|
||||
self.db.cur.execute("SELECT sid, sname FROM storage WHERE stype=0 ORDER BY sname")
|
||||
storages = dict(self.db.cur.fetchall())
|
||||
combobox.load_from_dict(self.combo['storage'], storages)
|
||||
|
||||
# load shape of vessel if available
|
||||
if self.context.vessel.vid > 0:
|
||||
self.db.cur.execute("SELECT shapefile FROM vessel WHERE vid=%s", (self.context.vessel.vid, ))
|
||||
|
||||
Reference in New Issue
Block a user