* src/DisplayTabs.py: Hook up editors
* src/EditFamily.py: Add _DND_TYPE * src/UrlEdit.py: Add type selector * src/Utils.py: add type/string maps for url types * src/gramps.glade: add type selector comboboxentry * src/ObjectSelector/_ObjectSelectorWindow.py: fix window management so that the system is closed properly svn: r5863
This commit is contained in:
@ -1,3 +1,12 @@
|
|||||||
|
2006-02-01 Don Allingham <don@gramps-project.org>
|
||||||
|
* src/DisplayTabs.py: Hook up editors
|
||||||
|
* src/EditFamily.py: Add _DND_TYPE
|
||||||
|
* src/UrlEdit.py: Add type selector
|
||||||
|
* src/Utils.py: add type/string maps for url types
|
||||||
|
* src/gramps.glade: add type selector comboboxentry
|
||||||
|
* src/ObjectSelector/_ObjectSelectorWindow.py: fix window management
|
||||||
|
so that the system is closed properly
|
||||||
|
|
||||||
2006-02-01 Alex Roitman <shura@gramps-project.org>
|
2006-02-01 Alex Roitman <shura@gramps-project.org>
|
||||||
* src/GrampsDb/_GrampsBSDDB.py (_find_from_handle): Revert the
|
* src/GrampsDb/_GrampsBSDDB.py (_find_from_handle): Revert the
|
||||||
change, as it does not seem to bring any speedup.
|
change, as it does not seem to bring any speedup.
|
||||||
|
@ -37,6 +37,11 @@ from gtk.gdk import ACTION_COPY, BUTTON1_MASK
|
|||||||
from gettext import gettext as _
|
from gettext import gettext as _
|
||||||
import pickle
|
import pickle
|
||||||
|
|
||||||
|
try:
|
||||||
|
set()
|
||||||
|
except:
|
||||||
|
from sets import Set as set
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# GRAMPS libraries
|
# GRAMPS libraries
|
||||||
@ -390,6 +395,14 @@ class EmbeddedList(ButtonTab):
|
|||||||
"""
|
"""
|
||||||
return gtk.STOCK_JUSTIFY_FILL
|
return gtk.STOCK_JUSTIFY_FILL
|
||||||
|
|
||||||
|
def del_button_clicked(self,obj):
|
||||||
|
ref = self.get_selected()
|
||||||
|
if ref:
|
||||||
|
ref_list = self.get_data()
|
||||||
|
ref_list.remove(ref)
|
||||||
|
self.changed = True
|
||||||
|
self.rebuild()
|
||||||
|
|
||||||
def build_interface(self):
|
def build_interface(self):
|
||||||
"""
|
"""
|
||||||
Builds the interface, instantiating a gtk.TreeView in a
|
Builds the interface, instantiating a gtk.TreeView in a
|
||||||
@ -549,14 +562,6 @@ class EventEmbedList(EmbeddedList):
|
|||||||
EventEdit.EventRefEditor(self.dbstate,self.uistate,self.track,
|
EventEdit.EventRefEditor(self.dbstate,self.uistate,self.track,
|
||||||
None, ref, self.obj, self.event_added)
|
None, ref, self.obj, self.event_added)
|
||||||
|
|
||||||
def del_button_clicked(self,obj):
|
|
||||||
ref = self.get_selected()
|
|
||||||
if ref:
|
|
||||||
ref_list = self.obj.get_event_ref_list()
|
|
||||||
ref_list.remove(ref)
|
|
||||||
self.changed = True
|
|
||||||
self.rebuild()
|
|
||||||
|
|
||||||
def edit_button_clicked(self,obj):
|
def edit_button_clicked(self,obj):
|
||||||
ref = self.get_selected()
|
ref = self.get_selected()
|
||||||
if ref:
|
if ref:
|
||||||
@ -720,6 +725,33 @@ class AttrEmbedList(EmbeddedList):
|
|||||||
def column_order(self):
|
def column_order(self):
|
||||||
return ((1,0),(1,1))
|
return ((1,0),(1,1))
|
||||||
|
|
||||||
|
def add_button_clicked(self,obj):
|
||||||
|
import AttrEdit
|
||||||
|
pname = ''
|
||||||
|
attr_list = []
|
||||||
|
AttrEdit.AttributeEditor(
|
||||||
|
self.dbstate, self.uistate, self.track, None,
|
||||||
|
pname, attr_list, self.add_callback)
|
||||||
|
|
||||||
|
def add_callback(self,name):
|
||||||
|
self.get_data().append(name)
|
||||||
|
self.changed = True
|
||||||
|
self.rebuild()
|
||||||
|
|
||||||
|
def edit_button_clicked(self,obj):
|
||||||
|
attr = self.get_selected()
|
||||||
|
if attr:
|
||||||
|
import AttrEdit
|
||||||
|
pname = ''
|
||||||
|
attr_list = []
|
||||||
|
AttrEdit.AttributeEditor(
|
||||||
|
self.dbstate, self.uistate, self.track, attr,
|
||||||
|
pname, attr_list, self.edit_callback)
|
||||||
|
|
||||||
|
def edit_callback(self,name):
|
||||||
|
self.changed = True
|
||||||
|
self.rebuild()
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
@ -727,7 +759,7 @@ class AttrEmbedList(EmbeddedList):
|
|||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
class WebEmbedList(EmbeddedList):
|
class WebEmbedList(EmbeddedList):
|
||||||
|
|
||||||
_HANDLE_COL = -1
|
_HANDLE_COL = 3
|
||||||
_DND_TYPE = DdTargets.URL
|
_DND_TYPE = DdTargets.URL
|
||||||
|
|
||||||
_column_names = [
|
_column_names = [
|
||||||
@ -747,6 +779,26 @@ class WebEmbedList(EmbeddedList):
|
|||||||
def column_order(self):
|
def column_order(self):
|
||||||
return ((1,0),(1,1),(1,2))
|
return ((1,0),(1,1),(1,2))
|
||||||
|
|
||||||
|
def add_button_clicked(self,obj):
|
||||||
|
import UrlEdit
|
||||||
|
url = RelLib.Url()
|
||||||
|
UrlEdit.UrlEditor(self.dbstate, self.uistate, self.track,
|
||||||
|
'', url, self.add_callback)
|
||||||
|
|
||||||
|
def add_callback(self,url):
|
||||||
|
self.get_data().append(url)
|
||||||
|
self.rebuild()
|
||||||
|
|
||||||
|
def edit_button_clicked(self,obj):
|
||||||
|
url = self.get_selected()
|
||||||
|
if url:
|
||||||
|
import UrlEdit
|
||||||
|
UrlEdit.UrlEditor(self.dbstate, self.uistate, self.track,
|
||||||
|
'', url, self.edit_callback)
|
||||||
|
|
||||||
|
def edit_callback(self,url):
|
||||||
|
self.rebuild()
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
@ -754,7 +806,7 @@ class WebEmbedList(EmbeddedList):
|
|||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
class NameEmbedList(EmbeddedList):
|
class NameEmbedList(EmbeddedList):
|
||||||
|
|
||||||
_HANDLE_COL = -1
|
_HANDLE_COL = 2
|
||||||
_DND_TYPE = DdTargets.NAME
|
_DND_TYPE = DdTargets.NAME
|
||||||
|
|
||||||
_column_names = [
|
_column_names = [
|
||||||
@ -773,6 +825,26 @@ class NameEmbedList(EmbeddedList):
|
|||||||
def column_order(self):
|
def column_order(self):
|
||||||
return ((1,0),(1,1))
|
return ((1,0),(1,1))
|
||||||
|
|
||||||
|
def add_button_clicked(self,obj):
|
||||||
|
import NameEdit
|
||||||
|
name = RelLib.Name()
|
||||||
|
NameEdit.NameEditor(self.dbstate, self.uistate, self.track,
|
||||||
|
name, self.add_callback)
|
||||||
|
|
||||||
|
def add_callback(self,name):
|
||||||
|
self.get_data().append(name)
|
||||||
|
self.rebuild()
|
||||||
|
|
||||||
|
def edit_button_clicked(self,obj):
|
||||||
|
name = self.get_selected()
|
||||||
|
if name:
|
||||||
|
import NameEdit
|
||||||
|
NameEdit.NameEditor(self.dbstate, self.uistate, self.track,
|
||||||
|
name, self.edit_callback)
|
||||||
|
|
||||||
|
def edit_callback(self,name):
|
||||||
|
self.rebuild()
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
@ -780,7 +852,7 @@ class NameEmbedList(EmbeddedList):
|
|||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
class AddrEmbedList(EmbeddedList):
|
class AddrEmbedList(EmbeddedList):
|
||||||
|
|
||||||
_HANDLE_COL = -1
|
_HANDLE_COL = 5
|
||||||
_DND_TYPE = DdTargets.ADDRESS
|
_DND_TYPE = DdTargets.ADDRESS
|
||||||
|
|
||||||
_column_names = [
|
_column_names = [
|
||||||
@ -802,6 +874,26 @@ class AddrEmbedList(EmbeddedList):
|
|||||||
def column_order(self):
|
def column_order(self):
|
||||||
return ((1,0),(1,1),(1,2),(1,3),(1,4))
|
return ((1,0),(1,1),(1,2),(1,3),(1,4))
|
||||||
|
|
||||||
|
def add_button_clicked(self,obj):
|
||||||
|
import AddrEdit
|
||||||
|
addr = RelLib.Address()
|
||||||
|
AddrEdit.AddressEditor(self.dbstate, self.uistate, self.track,
|
||||||
|
addr, self.add_callback)
|
||||||
|
|
||||||
|
def add_callback(self,name):
|
||||||
|
self.get_data().append(name)
|
||||||
|
self.rebuild()
|
||||||
|
|
||||||
|
def edit_button_clicked(self,obj):
|
||||||
|
addr = self.get_selected()
|
||||||
|
if addr:
|
||||||
|
import AddrEdit
|
||||||
|
AddrEdit.AddressEditor(self.dbstate, self.uistate, self.track,
|
||||||
|
addr, self.edit_callback)
|
||||||
|
|
||||||
|
def edit_callback(self,name):
|
||||||
|
self.rebuild()
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# NoteTab
|
# NoteTab
|
||||||
@ -992,7 +1084,6 @@ class SourceEmbedList(EmbeddedList):
|
|||||||
class ChildModel(gtk.ListStore):
|
class ChildModel(gtk.ListStore):
|
||||||
|
|
||||||
_HANDLE_COL = -8
|
_HANDLE_COL = -8
|
||||||
_DND_TYPE = DdTargets.PERSON_LINK
|
|
||||||
|
|
||||||
def __init__(self, family, db):
|
def __init__(self, family, db):
|
||||||
self.family = family
|
self.family = family
|
||||||
@ -1234,7 +1325,16 @@ class WebModel(gtk.ListStore):
|
|||||||
gtk.ListStore.__init__(self,str,str,str,object)
|
gtk.ListStore.__init__(self,str,str,str,object)
|
||||||
self.db = db
|
self.db = db
|
||||||
for obj in obj_list:
|
for obj in obj_list:
|
||||||
self.append(row=[obj.type, obj.path, obj.desc, obj])
|
self.append(row=[self.show_type(obj.type),
|
||||||
|
obj.path, obj.desc, obj])
|
||||||
|
|
||||||
|
def show_type(self,rtype):
|
||||||
|
rel = rtype[0]
|
||||||
|
val = rtype[1]
|
||||||
|
if rel == RelLib.Url.CUSTOM:
|
||||||
|
return val
|
||||||
|
else:
|
||||||
|
return Utils.web_types[rel]
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
|
@ -67,6 +67,7 @@ from ObjectSelector import PersonSelector,PersonFilterSpec
|
|||||||
class ChildEmbedList(EmbeddedList):
|
class ChildEmbedList(EmbeddedList):
|
||||||
|
|
||||||
_HANDLE_COL = 10
|
_HANDLE_COL = 10
|
||||||
|
_DND_TYPE = DdTargets.PERSON_LINK
|
||||||
|
|
||||||
_column_names = [
|
_column_names = [
|
||||||
(_('#'),0) ,
|
(_('#'),0) ,
|
||||||
|
@ -251,7 +251,7 @@ class ObjectSelectorWindow(gtk.Window,ManagedWindow):
|
|||||||
cancel_button = gtk.Button(stock=gtk.STOCK_CANCEL)
|
cancel_button = gtk.Button(stock=gtk.STOCK_CANCEL)
|
||||||
cancel_button.show()
|
cancel_button.show()
|
||||||
|
|
||||||
cancel_button.connect_object("clicked", gtk.Widget.destroy, self)
|
cancel_button.connect_object("clicked", self._close_window, self)
|
||||||
|
|
||||||
bottom_button_bar = gtk.HButtonBox()
|
bottom_button_bar = gtk.HButtonBox()
|
||||||
bottom_button_bar.set_layout(gtk.BUTTONBOX_SPREAD)
|
bottom_button_bar.set_layout(gtk.BUTTONBOX_SPREAD)
|
||||||
@ -284,6 +284,9 @@ class ObjectSelectorWindow(gtk.Window,ManagedWindow):
|
|||||||
self.show()
|
self.show()
|
||||||
|
|
||||||
|
|
||||||
|
def _close_window(self,obj):
|
||||||
|
self.close()
|
||||||
|
|
||||||
def _set_object_type(self,selected_object_type):
|
def _set_object_type(self,selected_object_type):
|
||||||
# enable selected object type
|
# enable selected object type
|
||||||
self._object_frames[selected_object_type].show()
|
self._object_frames[selected_object_type].show()
|
||||||
|
@ -46,6 +46,7 @@ import Utils
|
|||||||
import RelLib
|
import RelLib
|
||||||
import GrampsDisplay
|
import GrampsDisplay
|
||||||
import DisplayState
|
import DisplayState
|
||||||
|
import AutoComp
|
||||||
|
|
||||||
from WindowUtils import GladeIf
|
from WindowUtils import GladeIf
|
||||||
|
|
||||||
@ -74,11 +75,22 @@ class UrlEditor(DisplayState.ManagedWindow):
|
|||||||
self.gladeif = GladeIf(self.top)
|
self.gladeif = GladeIf(self.top)
|
||||||
|
|
||||||
self.window = self.top.get_widget("url_edit")
|
self.window = self.top.get_widget("url_edit")
|
||||||
|
self.wtype = self.top.get_widget("type")
|
||||||
self.des = self.top.get_widget("url_des")
|
self.des = self.top.get_widget("url_des")
|
||||||
self.addr = self.top.get_widget("url_addr")
|
self.addr = self.top.get_widget("url_addr")
|
||||||
self.priv = self.top.get_widget("priv")
|
self.priv = self.top.get_widget("priv")
|
||||||
title_label = self.top.get_widget("title")
|
title_label = self.top.get_widget("title")
|
||||||
|
|
||||||
|
mtype = self.url.get_type()
|
||||||
|
if mtype:
|
||||||
|
defval = mtype[0]
|
||||||
|
else:
|
||||||
|
defval = None
|
||||||
|
rel_types = dict(Utils.web_types)
|
||||||
|
|
||||||
|
self.type_sel = AutoComp.StandardCustomSelector(
|
||||||
|
rel_types, self.wtype, RelLib.Url.CUSTOM, defval)
|
||||||
|
|
||||||
if not name or name == ", ":
|
if not name or name == ", ":
|
||||||
etitle =_('Internet Address Editor')
|
etitle =_('Internet Address Editor')
|
||||||
else:
|
else:
|
||||||
@ -93,7 +105,7 @@ class UrlEditor(DisplayState.ManagedWindow):
|
|||||||
self.priv.set_active(url.get_privacy())
|
self.priv.set_active(url.get_privacy())
|
||||||
|
|
||||||
self.gladeif.connect('url_edit','delete_event', self.on_delete_event)
|
self.gladeif.connect('url_edit','delete_event', self.on_delete_event)
|
||||||
self.gladeif.connect('button125','clicked', self.close)
|
self.gladeif.connect('button125','clicked', self.close_window)
|
||||||
self.gladeif.connect('button124','clicked', self.on_url_edit_ok_clicked)
|
self.gladeif.connect('button124','clicked', self.on_url_edit_ok_clicked)
|
||||||
self.gladeif.connect('button130','clicked', self.on_help_clicked)
|
self.gladeif.connect('button130','clicked', self.on_help_clicked)
|
||||||
|
|
||||||
@ -109,12 +121,11 @@ class UrlEditor(DisplayState.ManagedWindow):
|
|||||||
|
|
||||||
def on_delete_event(self,*obj):
|
def on_delete_event(self,*obj):
|
||||||
self.gladeif.close()
|
self.gladeif.close()
|
||||||
gc.collect()
|
self.close()
|
||||||
|
|
||||||
def close(self,*obj):
|
def close_window(self,*obj):
|
||||||
self.gladeif.close()
|
self.gladeif.close()
|
||||||
self.window.destroy()
|
self.close()
|
||||||
gc.collect()
|
|
||||||
|
|
||||||
def on_help_clicked(self,*obj):
|
def on_help_clicked(self,*obj):
|
||||||
"""Display the relevant portion of GRAMPS manual"""
|
"""Display the relevant portion of GRAMPS manual"""
|
||||||
@ -127,11 +138,15 @@ class UrlEditor(DisplayState.ManagedWindow):
|
|||||||
|
|
||||||
self.update_url(des,addr,priv)
|
self.update_url(des,addr,priv)
|
||||||
self.callback(self.url)
|
self.callback(self.url)
|
||||||
self.close(obj)
|
self.close_window(obj)
|
||||||
|
|
||||||
def update_url(self,des,addr,priv):
|
def update_url(self,des,addr,priv):
|
||||||
if self.url.get_path() != addr:
|
if self.url.get_path() != addr:
|
||||||
self.url.set_path(addr)
|
self.url.set_path(addr)
|
||||||
|
|
||||||
|
val = self.type_sel.get_values()
|
||||||
|
if self.url.get_type() != val:
|
||||||
|
self.url.set_type(val)
|
||||||
|
|
||||||
if self.url.get_description() != des:
|
if self.url.get_description() != des:
|
||||||
self.url.set_description(des)
|
self.url.set_description(des)
|
||||||
|
@ -182,6 +182,15 @@ name_types = {
|
|||||||
RelLib.Name.MARRIED : _("Married Name"),
|
RelLib.Name.MARRIED : _("Married Name"),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
web_types = {
|
||||||
|
RelLib.Url.UNKNOWN : _("Unknown"),
|
||||||
|
RelLib.Url.CUSTOM : _("Custom"),
|
||||||
|
RelLib.Url.EMAIL : _("E-mail"),
|
||||||
|
RelLib.Url.WEB_HOME : _("Web Home"),
|
||||||
|
RelLib.Url.WEB_SEARCH : _("Web Search"),
|
||||||
|
RelLib.Url.WEB_FTP : _("FTP"),
|
||||||
|
}
|
||||||
|
|
||||||
source_media_types = {
|
source_media_types = {
|
||||||
RelLib.RepoRef.UNKNOWN : _("Unknown"),
|
RelLib.RepoRef.UNKNOWN : _("Unknown"),
|
||||||
RelLib.RepoRef.CUSTOM : _("Custom"),
|
RelLib.RepoRef.CUSTOM : _("Custom"),
|
||||||
|
@ -17629,7 +17629,7 @@ Very High</property>
|
|||||||
<widget class="GtkTable" id="table27">
|
<widget class="GtkTable" id="table27">
|
||||||
<property name="border_width">12</property>
|
<property name="border_width">12</property>
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="n_rows">3</property>
|
<property name="n_rows">4</property>
|
||||||
<property name="n_columns">2</property>
|
<property name="n_columns">2</property>
|
||||||
<property name="homogeneous">False</property>
|
<property name="homogeneous">False</property>
|
||||||
<property name="row_spacing">6</property>
|
<property name="row_spacing">6</property>
|
||||||
@ -17660,8 +17660,8 @@ Very High</property>
|
|||||||
<packing>
|
<packing>
|
||||||
<property name="left_attach">0</property>
|
<property name="left_attach">0</property>
|
||||||
<property name="right_attach">1</property>
|
<property name="right_attach">1</property>
|
||||||
<property name="top_attach">0</property>
|
<property name="top_attach">1</property>
|
||||||
<property name="bottom_attach">1</property>
|
<property name="bottom_attach">2</property>
|
||||||
<property name="x_options">fill</property>
|
<property name="x_options">fill</property>
|
||||||
<property name="y_options"></property>
|
<property name="y_options"></property>
|
||||||
</packing>
|
</packing>
|
||||||
@ -17692,8 +17692,8 @@ Very High</property>
|
|||||||
<packing>
|
<packing>
|
||||||
<property name="left_attach">0</property>
|
<property name="left_attach">0</property>
|
||||||
<property name="right_attach">1</property>
|
<property name="right_attach">1</property>
|
||||||
<property name="top_attach">1</property>
|
<property name="top_attach">2</property>
|
||||||
<property name="bottom_attach">2</property>
|
<property name="bottom_attach">3</property>
|
||||||
<property name="x_options">fill</property>
|
<property name="x_options">fill</property>
|
||||||
<property name="y_options"></property>
|
<property name="y_options"></property>
|
||||||
</packing>
|
</packing>
|
||||||
@ -17727,8 +17727,8 @@ Very High</property>
|
|||||||
<packing>
|
<packing>
|
||||||
<property name="left_attach">1</property>
|
<property name="left_attach">1</property>
|
||||||
<property name="right_attach">2</property>
|
<property name="right_attach">2</property>
|
||||||
<property name="top_attach">2</property>
|
<property name="top_attach">3</property>
|
||||||
<property name="bottom_attach">3</property>
|
<property name="bottom_attach">4</property>
|
||||||
<property name="x_options">fill</property>
|
<property name="x_options">fill</property>
|
||||||
<property name="y_options">fill</property>
|
<property name="y_options">fill</property>
|
||||||
</packing>
|
</packing>
|
||||||
@ -17750,8 +17750,8 @@ Very High</property>
|
|||||||
<packing>
|
<packing>
|
||||||
<property name="left_attach">1</property>
|
<property name="left_attach">1</property>
|
||||||
<property name="right_attach">2</property>
|
<property name="right_attach">2</property>
|
||||||
<property name="top_attach">0</property>
|
<property name="top_attach">1</property>
|
||||||
<property name="bottom_attach">1</property>
|
<property name="bottom_attach">2</property>
|
||||||
<property name="y_padding">3</property>
|
<property name="y_padding">3</property>
|
||||||
<property name="y_options"></property>
|
<property name="y_options"></property>
|
||||||
</packing>
|
</packing>
|
||||||
@ -17772,11 +17772,56 @@ Very High</property>
|
|||||||
<packing>
|
<packing>
|
||||||
<property name="left_attach">1</property>
|
<property name="left_attach">1</property>
|
||||||
<property name="right_attach">2</property>
|
<property name="right_attach">2</property>
|
||||||
<property name="top_attach">1</property>
|
<property name="top_attach">2</property>
|
||||||
<property name="bottom_attach">2</property>
|
<property name="bottom_attach">3</property>
|
||||||
<property name="y_options"></property>
|
<property name="y_options"></property>
|
||||||
</packing>
|
</packing>
|
||||||
</child>
|
</child>
|
||||||
|
|
||||||
|
<child>
|
||||||
|
<widget class="GtkLabel" id="label591">
|
||||||
|
<property name="visible">True</property>
|
||||||
|
<property name="label" translatable="yes">_Type:</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</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="left_attach">0</property>
|
||||||
|
<property name="right_attach">1</property>
|
||||||
|
<property name="top_attach">0</property>
|
||||||
|
<property name="bottom_attach">1</property>
|
||||||
|
<property name="x_options">fill</property>
|
||||||
|
<property name="y_options"></property>
|
||||||
|
</packing>
|
||||||
|
</child>
|
||||||
|
|
||||||
|
<child>
|
||||||
|
<widget class="GtkComboBoxEntry" id="type">
|
||||||
|
<property name="visible">True</property>
|
||||||
|
<property name="add_tearoffs">False</property>
|
||||||
|
<property name="has_frame">True</property>
|
||||||
|
<property name="focus_on_click">True</property>
|
||||||
|
</widget>
|
||||||
|
<packing>
|
||||||
|
<property name="left_attach">1</property>
|
||||||
|
<property name="right_attach">2</property>
|
||||||
|
<property name="top_attach">0</property>
|
||||||
|
<property name="bottom_attach">1</property>
|
||||||
|
<property name="x_options">fill</property>
|
||||||
|
<property name="y_options">fill</property>
|
||||||
|
</packing>
|
||||||
|
</child>
|
||||||
</widget>
|
</widget>
|
||||||
<packing>
|
<packing>
|
||||||
<property name="padding">0</property>
|
<property name="padding">0</property>
|
||||||
|
Reference in New Issue
Block a user