svn: r8337

This commit is contained in:
Don Allingham 2007-03-29 03:21:54 +00:00
parent a9a388bead
commit ad3ae54224
2 changed files with 228 additions and 24 deletions

View File

@ -84,6 +84,7 @@ class DbManager:
self.new = self.glade.get_widget('new') self.new = self.glade.get_widget('new')
self.remove = self.glade.get_widget('remove') self.remove = self.glade.get_widget('remove')
self.dblist = self.glade.get_widget('dblist') self.dblist = self.glade.get_widget('dblist')
self.rename = self.glade.get_widget('rename')
self.model = None self.model = None
if dbstate: if dbstate:
self.active = dbstate.db.get_save_path() self.active = dbstate.db.get_save_path()
@ -101,6 +102,7 @@ class DbManager:
def connect_signals(self): def connect_signals(self):
self.remove.connect('clicked', self.remove_db) self.remove.connect('clicked', self.remove_db)
self.new.connect('clicked', self.new_db) self.new.connect('clicked', self.new_db)
self.rename.connect('clicked', self.rename_db)
self.selection.connect('changed', self.selection_changed) self.selection.connect('changed', self.selection_changed)
self.dblist.connect('button-press-event', self.button_press) self.dblist.connect('button-press-event', self.button_press)
@ -115,9 +117,11 @@ class DbManager:
if not iter or store.get_value(iter, OPEN_COL): if not iter or store.get_value(iter, OPEN_COL):
self.remove.set_sensitive(False) self.remove.set_sensitive(False)
self.connect.set_sensitive(False) self.connect.set_sensitive(False)
self.rename.set_sensitive(False)
else: else:
self.remove.set_sensitive(True) self.remove.set_sensitive(True)
self.connect.set_sensitive(True) self.connect.set_sensitive(True)
self.rename.set_sensitive(True)
def build_interface(self): def build_interface(self):
render = gtk.CellRendererPixbuf() render = gtk.CellRendererPixbuf()
@ -230,6 +234,11 @@ class DbManager:
os.unlink(os.path.join(top,f)) os.unlink(os.path.join(top,f))
os.rmdir(top) os.rmdir(top)
def rename_db(self, obj):
store, node = self.selection.get_selected()
path = self.model.get_path(node)
self.dblist.set_cursor(path, focus_column=self.column, start_editing=True)
def new_db(self, obj): def new_db(self, obj):
while True: while True:
base = "%x" % int(time.time()) base = "%x" % int(time.time())

View File

@ -15451,11 +15451,73 @@ Very High</property>
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_default">True</property> <property name="can_default">True</property>
<property name="can_focus">True</property> <property name="can_focus">True</property>
<property name="label">gtk-close</property>
<property name="use_stock">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property> <property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property> <property name="focus_on_click">True</property>
<property name="response_id">-7</property> <property name="response_id">-7</property>
<child>
<widget class="GtkAlignment" id="alignment5">
<property name="visible">True</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xscale">0</property>
<property name="yscale">0</property>
<property name="top_padding">0</property>
<property name="bottom_padding">0</property>
<property name="left_padding">0</property>
<property name="right_padding">0</property>
<child>
<widget class="GtkHBox" id="hbox139">
<property name="visible">True</property>
<property name="homogeneous">False</property>
<property name="spacing">2</property>
<child>
<widget class="GtkImage" id="image2718">
<property name="visible">True</property>
<property name="stock">gtk-close</property>
<property name="icon_size">4</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label710">
<property name="visible">True</property>
<property name="label">Close Window</property>
<property name="use_underline">True</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
</widget>
</child>
</widget>
</child>
</widget> </widget>
</child> </child>
@ -15464,11 +15526,73 @@ Very High</property>
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_default">True</property> <property name="can_default">True</property>
<property name="can_focus">True</property> <property name="can_focus">True</property>
<property name="label">gtk-open</property>
<property name="use_stock">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property> <property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property> <property name="focus_on_click">True</property>
<property name="response_id">-5</property> <property name="response_id">-5</property>
<child>
<widget class="GtkAlignment" id="alignment8">
<property name="visible">True</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xscale">0</property>
<property name="yscale">0</property>
<property name="top_padding">0</property>
<property name="bottom_padding">0</property>
<property name="left_padding">0</property>
<property name="right_padding">0</property>
<child>
<widget class="GtkHBox" id="hbox140">
<property name="visible">True</property>
<property name="homogeneous">False</property>
<property name="spacing">2</property>
<child>
<widget class="GtkImage" id="image2719">
<property name="visible">True</property>
<property name="stock">gtk-apply</property>
<property name="icon_size">4</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label713">
<property name="visible">True</property>
<property name="label">Load Family Tree</property>
<property name="use_underline">True</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
</widget>
</child>
</widget>
</child>
</widget> </widget>
</child> </child>
</widget> </widget>
@ -15516,6 +15640,31 @@ Very High</property>
</packing> </packing>
</child> </child>
<child>
<widget class="GtkVBox" id="vbox132">
<property name="visible">True</property>
<property name="homogeneous">False</property>
<property name="spacing">0</property>
<child>
<widget class="GtkFrame" id="frame8">
<property name="visible">True</property>
<property name="label_xalign">0</property>
<property name="label_yalign">0.5</property>
<property name="shadow_type">GTK_SHADOW_NONE</property>
<child>
<widget class="GtkAlignment" id="alignment7">
<property name="visible">True</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xscale">1</property>
<property name="yscale">1</property>
<property name="top_padding">0</property>
<property name="bottom_padding">0</property>
<property name="left_padding">12</property>
<property name="right_padding">0</property>
<child> <child>
<widget class="GtkVButtonBox" id="vbuttonbox2"> <widget class="GtkVButtonBox" id="vbuttonbox2">
<property name="visible">True</property> <property name="visible">True</property>
@ -15539,12 +15688,58 @@ Very High</property>
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_default">True</property> <property name="can_default">True</property>
<property name="can_focus">True</property> <property name="can_focus">True</property>
<property name="label">gtk-remove</property> <property name="label">gtk-delete</property>
<property name="use_stock">True</property> <property name="use_stock">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property> <property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property> <property name="focus_on_click">True</property>
</widget> </widget>
</child> </child>
<child>
<widget class="GtkButton" id="rename">
<property name="visible">True</property>
<property name="can_default">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Rename</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property>
</widget>
</child>
</widget>
</child>
</widget>
</child>
<child>
<widget class="GtkLabel" id="label712">
<property name="visible">True</property>
<property name="label" translatable="yes">&lt;b&gt;Manage&lt;/b&gt;</property>
<property name="use_underline">False</property>
<property name="use_markup">True</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="type">label_item</property>
</packing>
</child>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">True</property>
<property name="fill">True</property>
</packing>
</child>
</widget> </widget>
<packing> <packing>
<property name="padding">6</property> <property name="padding">6</property>