projects
/
meabook
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
9eb423f
)
123
author
tanya
<tanya@tanin.oblgaz>
Thu, 4 Feb 2010 14:55:19 +0000
(16:55 +0200)
committer
tanya
<tanya@tanin.oblgaz>
Thu, 4 Feb 2010 14:55:19 +0000
(16:55 +0200)
database/db.py
patch
|
blob
|
history
list.py
patch
|
blob
|
history
diff --git
a/database/db.py
b/database/db.py
index
6b66b39
..
1455111
100755
(executable)
--- a/
database/db.py
+++ b/
database/db.py
@@
-42,14
+42,15
@@
class DbSqlite:
self.data[row[0]] = row[1]
return self.data
self.data[row[0]] = row[1]
return self.data
- def get_allrecords(self, field):
+ def get_allrecords(self, field, struct):
"""return records"""
cur = self.conn.cursor()
cur.execute("select data.id, data.value "
"from data left join field "
"on data.id_field=field.id "
"""return records"""
cur = self.conn.cursor()
cur.execute("select data.id, data.value "
"from data left join field "
"on data.id_field=field.id "
- "where field.name=?", (field,))
+ "left join relation on data.id=relation.id_data "
+ "where field.name=? and relation.id_struct=?", (field, struct))
self.data = {}
for row in cur:
#print row
self.data = {}
for row in cur:
#print row
@@
-156,4
+157,17
@@
class DbSqlite:
ts.append(item[row[2]], [row[0], row[1]])
return ts
ts.append(item[row[2]], [row[0], row[1]])
return ts
+ def get_list(self, parent):
+
+ """return list of struct with same parent"""
+ conn = self.connect()
+ if conn is None:
+ return None
+ cur = conn.cursor()
+ cur.execute("select id, name from struct where parent=?", (parent,))
+ data = {}
+ for row in cur:
+ data[row[0]] = row[1]
+
+ return data
diff --git
a/list.py
b/list.py
index
cbbd987
..
ce065d6
100755
(executable)
--- a/
list.py
+++ b/
list.py
@@
-50,30
+50,36
@@
class List:
vbox.pack_start(sw, True, True, 0)
self.dbo = db.DbSqlite()
vbox.pack_start(sw, True, True, 0)
self.dbo = db.DbSqlite()
- self.data = self.dbo.get_allrecords('cn')
+ #data = self.dbo.get_allrecords('cn')
+ data = self.dbo.get_list(0)
store = gtk.ListStore(int, str)
store = gtk.ListStore(int, str)
- for d in self.data:
- store.append([d, self.data[d]])
+ for d in data:
+ store.append([d, data[d]])
- ts = db.make_tree()
- tree = gtk.TreeView(ts)
- tree.set_rules_hint(True)
+ self.tree = gtk.TreeView(store)
+ self.tree.set_rules_hint(True)
- tree.connect("row-activated", self.select_item)
+ self.tree.connect("row-activated", self.select_item)
t1 = gtk.CellRendererText()
column = gtk.TreeViewColumn("Id", t1, text=0)
column.set_sort_column_id(0)
column.set_visible(False)
t1 = gtk.CellRendererText()
column = gtk.TreeViewColumn("Id", t1, text=0)
column.set_sort_column_id(0)
column.set_visible(False)
- tree.append_column(column)
+ self.tree.append_column(column)
t1 = gtk.CellRendererText()
column = gtk.TreeViewColumn("Name", t1, text=1)
column.set_sort_column_id(0)
t1 = gtk.CellRendererText()
column = gtk.TreeViewColumn("Name", t1, text=1)
column.set_sort_column_id(0)
- tree.append_column(column)
+ self.tree.append_column(column)
- sw.add(tree)
+ sw.add(self.tree)
+
+ #st = gtk.ListStore(int, str)
+ #data = self.dbo.get_list(0)
+ #for d in self.data:
+ # st.append([d, self.data[d]])
+ #self.tree.set_model(st)
self.window.add(vbox)
self.window.show_all()
self.window.add(vbox)
self.window.show_all()
@@
-84,6
+90,21
@@
class List:
def select_item(self, widget, path, column):
def select_item(self, widget, path, column):
+ store = gtk.ListStore(int, str)
+ parent = widget.get_model()[path][0]
+ data = self.dbo.get_list(parent)
+ for d in data:
+ store.append([d, data[d]])
+ #add people
+ data = self.dbo.get_allrecords('cn', parent)
+ for d in data:
+ store.append([d, data[d]])
+ self.tree.set_model(store)
+ print "set model"
+
+
+ def select_item1(self, widget, path, column):
+
#print "select_item path:%s" % path
self.dialog = gtk.Dialog("Item descrition",
self.window,
#print "select_item path:%s" % path
self.dialog = gtk.Dialog("Item descrition",
self.window,