summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYaakov Selkowitz <yselkowi@redhat.com>2020-08-02 17:21:52 -0400
committerYaakov Selkowitz <yselkowi@redhat.com>2020-08-02 17:21:52 -0400
commitb23707261fecec09d3cafa93a9de23595ee72f5d (patch)
tree4fbc3bc8e66332437a73ae78f948013dd862f736
parentb874b86b827ac5238de3d190b85d25b80b39293a (diff)
downloadgonvert-b23707261fecec09d3cafa93a9de23595ee72f5d.tar.gz
gonvert-b23707261fecec09d3cafa93a9de23595ee72f5d.tar.xz
gonvert-b23707261fecec09d3cafa93a9de23595ee72f5d.zip
Port to GtkBuilder, drop libglade dependency
-rw-r--r--gonvert-gtkbuilder.patch157
-rw-r--r--gonvert.spec11
-rw-r--r--gonvert.ui657
3 files changed, 823 insertions, 2 deletions
diff --git a/gonvert-gtkbuilder.patch b/gonvert-gtkbuilder.patch
new file mode 100644
index 0000000..61bc80a
--- /dev/null
+++ b/gonvert-gtkbuilder.patch
@@ -0,0 +1,157 @@
+--- gonvert 2016-08-29 10:29:38.000000000 -0400
++++ gonvert 2020-08-02 16:50:19.176472292 -0400
+@@ -1,10 +1,10 @@
+-#!/usr/bin/python
++#!/usr/bin/python2
+ # -*- coding: UTF8 -*-
+ version = "0.2.39" # keep version information here on third line since Makefile reads it.
+
+ import pygtk
+ pygtk.require('2.0')
+-import gtk,gobject,gtk.glade,gtk.gdk
++import gtk,gobject,gtk.gdk
+ import shelve,pickle
+ from math import *
+ import string,os,sys,glob,os.path,gettext
+@@ -856,11 +856,11 @@
+ os.mkdir(home+'/.gonvert')
+
+
+-#check to see if glade file is in current directory (user must be running from download untar directory)
+-if os.path.exists('gonvert.glade'):
++#check to see if GtkBuilder file is in current directory (user must be running from download untar directory)
++if os.path.exists('gonvert.ui'):
+ homepath=''
+ pixmapspath='pixmaps/'
+-elif os.path.exists('/usr/local/share/gonvert/gonvert.glade'):
++elif os.path.exists('/usr/local/share/gonvert/gonvert.ui'):
+ homepath='/usr/local/share/gonvert/'
+ pixmapspath='/usr/local/share/pixmaps/'
+ else:
+@@ -872,10 +872,11 @@
+ pixmapspath=homepath +'/../pixmaps/'
+
+ #print pixmapspath #debug
+-gladefile=homepath+'gonvert.glade'
++uifile=homepath+'gonvert.ui'
+
+-widgets = gtk.glade.XML(gladefile)
+-app1 = widgets.get_widget('app1')
++widgets = gtk.Builder()
++widgets.add_from_file(uifile)
++app1 = widgets.get_object('app1')
+
+ #Restore window size from previously saved settings if it exists and is valid.
+ if os.path.exists(home+'/.gonvert/window.dat'):
+@@ -938,13 +939,13 @@
+
+ }
+
+-widgets.signal_autoconnect (dic);
++widgets.connect_signals (dic);
+
+ def change_menu_label(labelname,newtext):
+- item_label = widgets.get_widget(labelname).get_children()[0]
++ item_label = widgets.get_object(labelname).get_children()[0]
+ item_label.set_text(newtext)
+ def change_label(labelname,newtext):
+- item_label = widgets.get_widget(labelname)
++ item_label = widgets.get_object(labelname)
+ item_label.set_text(newtext)
+
+ change_menu_label('file1',_('File'))
+@@ -957,31 +958,31 @@
+
+ #change_menu_label('find_button',_('Find'))
+
+-cat_clist = widgets.get_widget('cat_clist' )
++cat_clist = widgets.get_object('cat_clist' )
+
+-clist1 = widgets.get_widget('clist1')
++clist1 = widgets.get_object('clist1')
+ clist1_selection=clist1.get_selection()
+
+-entry1 = widgets.get_widget('entry1')
+-entry2 = widgets.get_widget('entry2')
+-entry3 = widgets.get_widget('entry3')
+-entry4 = widgets.get_widget('entry4')
+-about_box = widgets.get_widget('about_box')
+-messagebox = widgets.get_widget('msgbox')
+-messageboxtext = widgets.get_widget('msgboxtext')
++entry1 = widgets.get_object('entry1')
++entry2 = widgets.get_object('entry2')
++entry3 = widgets.get_object('entry3')
++entry4 = widgets.get_object('entry4')
++about_box = widgets.get_object('about_box')
++messagebox = widgets.get_object('msgbox')
++messageboxtext = widgets.get_object('msgboxtext')
+
+-about_image = widgets.get_widget('about_image')
++about_image = widgets.get_object('about_image')
+ about_image.set_from_file(pixmapspath +'gonvert.png')
+-versionlabel = widgets.get_widget('versionlabel')
++versionlabel = widgets.get_object('versionlabel')
+ versionlabel.set_text(version)
+
+-label1 =widgets.get_widget('label1')
+-label2 =widgets.get_widget('label2')
++label1 =widgets.get_object('label1')
++label2 =widgets.get_object('label2')
+
+-text1 = widgets.get_widget('text1' )
++text1 = widgets.get_object('text1' )
+
+-find_entry = widgets.get_widget('find_entry')
+-find_label = widgets.get_widget('find_label')
++find_entry = widgets.get_object('find_entry')
++find_label = widgets.get_object('find_label')
+
+
+
+@@ -3321,7 +3322,7 @@
+ print bookmarks
+
+ ToolTips=gtk.Tooltips()
+-#find_button = widgets.get_widget('find_button')
++#find_button = widgets.get_object('find_button')
+ #ToolTips.set_tip(find_button,_(u'Find unit (F6)'))
+
+ #Restore selections from previously saved settings if it exists and is valid.
+--- Makefile 2016-08-29 10:29:38.000000000 -0400
++++ Makefile 2020-08-02 17:16:26.565556264 -0400
+@@ -15,7 +15,7 @@
+
+ install:
+ install -D -m0755 gonvert $(DESTDIR)$(bindir)/gonvert
+- install -D -m0644 gonvert.glade $(DESTDIR)$(datadir)/gonvert/gonvert.glade
++ install -D -m0644 gonvert.ui $(DESTDIR)$(datadir)/gonvert/gonvert.ui
+ install -D -m0644 $(NAME).appdata.xml $(DESTDIR)$(datadir)/appdata/$(NAME).appdata.xml
+ install -d -m0755 $(DESTDIR)$(datadir)/pixmaps/
+ install -m0644 pixmaps/*.png $(DESTDIR)$(datadir)/pixmaps/
+@@ -25,7 +25,7 @@
+
+ install_pl:
+ install -D -m0755 gonvert $(DESTDIR)$(bindir)/gonvert
+- install -D -m0644 gonvert.glade $(DESTDIR)$(datadir)/gonvert/gonvert.glade
++ install -D -m0644 gonvert.ui $(DESTDIR)$(datadir)/gonvert/gonvert.ui
+ install -d -m0755 $(DESTDIR)$(datadir)/pixmaps/
+ install -m0644 pixmaps/*.png $(DESTDIR)$(datadir)/pixmaps/
+ install -D -m0644 gonvert.desktop $(DESTDIR)$(datadir)/gnome/apps/Utilities/gonvert.desktop
+@@ -60,7 +60,7 @@
+ cp -R i18n $(NAME)-$(VERSION)
+ cp -R doc $(NAME)-$(VERSION)
+ cp $(NAME) $(NAME)-$(VERSION)
+- cp $(NAME).glade $(NAME)-$(VERSION)
++ cp $(NAME).ui $(NAME)-$(VERSION)
+ cp $(NAME).spec $(NAME)-$(VERSION)
+ cp $(NAME).desktop $(NAME)-$(VERSION)
+ cp $(NAME).appdata.xml $(NAME)-$(VERSION)
+@@ -79,7 +79,7 @@
+ pub:
+ #For authors use only
+ if test -f "$(NAME)"; then cp $(NAME) ~/web/unihedron/projects/gonvert/downloads/$(NAME).pyw; fi
+- if test -f "$(NAME).glade"; then cp $(NAME).glade ~/web/unihedron/projects/gonvert/downloads; fi
++ if test -f "$(NAME).ui"; then cp $(NAME).ui ~/web/unihedron/projects/gonvert/downloads; fi
+ if test -f "$(NAME)-$(VERSION).tar.gz"; then mv -f $(NAME)-$(VERSION).tar.gz ~/web/unihedron/projects/gonvert/downloads; fi
+ if test -f "doc/CHANGELOG"; then cp -f doc/CHANGELOG ~/web/unihedron/projects/gonvert/CHANGELOG; fi
+
diff --git a/gonvert.spec b/gonvert.spec
index 4fdbdd6..025648a 100644
--- a/gonvert.spec
+++ b/gonvert.spec
@@ -1,15 +1,17 @@
Name: gonvert
Version: 0.2.39
-Release: 8%{?dist}
+Release: 9%{?dist}
Summary: Units conversion utility
License: GPL+
URL: http://unihedron.com/projects/gonvert
Source0: http://unihedron.com/projects/gonvert/downloads/%{name}-%{version}.tar.gz
+Source1: gonvert.ui
Patch0: gonvert-desktop-icon.patch
+Patch1: gonvert-gtkbuilder.patch
BuildRequires: desktop-file-utils python2-devel /usr/bin/pathfix.py
Requires: python2
-Requires: pygtk2-libglade
+Requires: pygtk2
BuildArch: noarch
@@ -24,6 +26,8 @@ your own units. Written in Python, pygtk, libglade.
%setup -q
%patch0 -p0
+%patch1 -p0
+cp %{SOURCE1} .
# remove execute bits from doc files
chmod -x doc/*
@@ -62,6 +66,9 @@ pathfix.py -pni "%{__python2} %{py2_shbang_opts}" $RPM_BUILD_ROOT%{_bindir}/gonv
%changelog
+* Sun Aug 02 2020 Yaakov Selkowitz <yselkowi@redhat.com> - 0.2.39-9
+- Port to GtkBuilder, drop libglade dependency
+
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.39-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
diff --git a/gonvert.ui b/gonvert.ui
new file mode 100644
index 0000000..bd45980
--- /dev/null
+++ b/gonvert.ui
@@ -0,0 +1,657 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+ <requires lib="gtk+" version="2.16"/>
+ <!-- interface-naming-policy toplevel-contextual -->
+ <object class="GtkDialog" id="about_box">
+ <property name="can_focus">False</property>
+ <property name="title" translatable="yes">About</property>
+ <property name="resizable">False</property>
+ <property name="type_hint">dialog</property>
+ <property name="has_separator">True</property>
+ <signal name="delete-event" handler="on_about_close_clicked" swapped="no"/>
+ <child internal-child="vbox">
+ <object class="GtkVBox" id="dialog-vbox1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child internal-child="action_area">
+ <object class="GtkHButtonBox" id="dialog-action_area1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="layout_style">end</property>
+ <child>
+ <object class="GtkButton" id="about_close">
+ <property name="label">gtk-close</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_stock">True</property>
+ <accelerator key="Escape" signal="clicked"/>
+ <signal name="clicked" handler="on_about_close_clicked" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkImage" id="about_image">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkTable" id="table1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="n_rows">3</property>
+ <property name="n_columns">2</property>
+ <child>
+ <object class="GtkLabel" id="label7">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">1</property>
+ <property name="label" translatable="yes">Version:</property>
+ </object>
+ <packing>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"/>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="versionlabel">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">False</property>
+ <property name="text" translatable="yes">x.x.x</property>
+ <property name="primary_icon_activatable">False</property>
+ <property name="secondary_icon_activatable">False</property>
+ <property name="primary_icon_sensitive">True</property>
+ <property name="secondary_icon_sensitive">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="y_options"/>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label5">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">1</property>
+ <property name="label" translatable="yes">Website:</property>
+ </object>
+ <packing>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"/>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="entry6">
+ <property name="width_request">363</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">False</property>
+ <property name="text" translatable="yes">http://unihedron.com/projects/gonvert/gonvert.php</property>
+ <property name="primary_icon_activatable">False</property>
+ <property name="secondary_icon_activatable">False</property>
+ <property name="primary_icon_sensitive">True</property>
+ <property name="secondary_icon_sensitive">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="y_options"/>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label6">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">1</property>
+ <property name="label" translatable="yes">Author:</property>
+ </object>
+ <packing>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"/>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="entry7">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">False</property>
+ <property name="text" translatable="yes">Anthony Tekatch anthony@unihedron.com</property>
+ <property name="primary_icon_activatable">False</property>
+ <property name="secondary_icon_activatable">False</property>
+ <property name="primary_icon_sensitive">True</property>
+ <property name="secondary_icon_sensitive">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="y_options"/>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <action-widgets>
+ <action-widget response="-7">about_close</action-widget>
+ </action-widgets>
+ </object>
+ <object class="GtkWindow" id="app1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="title" translatable="yes">window1</property>
+ <signal name="destroy" handler="on_app1_destroy" swapped="no"/>
+ <signal name="size-allocate" handler="on_app1_size_allocate" swapped="no"/>
+ <child>
+ <object class="GtkVBox" id="vbox2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkMenuBar" id="menubar1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkMenuItem" id="file1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_File</property>
+ <property name="use_underline">True</property>
+ <child type="submenu">
+ <object class="GtkMenu" id="file1_menu">
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkMenuItem" id="exit1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Exit</property>
+ <property name="use_underline">True</property>
+ <accelerator key="q" signal="activate" modifiers="GDK_CONTROL_MASK"/>
+ <signal name="activate" handler="on_exit1_activate" swapped="no"/>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkMenuItem" id="tools1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Tools</property>
+ <property name="use_underline">True</property>
+ <child type="submenu">
+ <object class="GtkMenu" id="tools1_menu">
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkMenuItem" id="_Find_item">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Find item</property>
+ <property name="use_underline">True</property>
+ <accelerator key="f" signal="activate" modifiers="GDK_CONTROL_MASK"/>
+ <signal name="activate" handler="on_find_menu_clicked" swapped="no"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkMenuItem" id="clear_selections1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Clear all selections</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_clear_selections1_activate" swapped="no"/>
+ </object>
+ </child>
+ <child>
+ <object class="GtkMenuItem" id="write_units1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Write Units</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_write_units1_activate" swapped="no"/>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkMenuItem" id="help1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Help</property>
+ <property name="use_underline">True</property>
+ <child type="submenu">
+ <object class="GtkMenu" id="help1_menu">
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkMenuItem" id="about1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_About</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_about1_activate" swapped="no"/>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHPaned" id="hpaned1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="GtkScrolledWindow" id="scrolledwindow4">
+ <property name="width_request">260</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkTreeView" id="cat_clist">
+ <property name="width_request">250</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="headers_visible">False</property>
+ <signal name="cursor-changed" handler="on_cat_clist_select_row" swapped="no"/>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="resize">False</property>
+ <property name="shrink">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkVBox" id="vbox1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkHBox" id="hbox1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkButton" id="Clear1">
+ <property name="label" translatable="yes">X</property>
+ <property name="width_request">29</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="on_Clear1_clicked" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="entry1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="editable">False</property>
+ <property name="primary_icon_activatable">False</property>
+ <property name="secondary_icon_activatable">False</property>
+ <property name="primary_icon_sensitive">True</property>
+ <property name="secondary_icon_sensitive">True</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="entry2">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="primary_icon_activatable">False</property>
+ <property name="secondary_icon_activatable">False</property>
+ <property name="primary_icon_sensitive">True</property>
+ <property name="secondary_icon_sensitive">True</property>
+ <signal name="changed" handler="on_entry2_changed" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label1">
+ <property name="width_request">60</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0.10000000149011612</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkButton" id="Clear2">
+ <property name="label" translatable="yes">x</property>
+ <property name="width_request">29</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="on_Clear2_clicked" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="entry3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="editable">False</property>
+ <property name="primary_icon_activatable">False</property>
+ <property name="secondary_icon_activatable">False</property>
+ <property name="primary_icon_sensitive">True</property>
+ <property name="secondary_icon_sensitive">True</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="entry4">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="primary_icon_activatable">False</property>
+ <property name="secondary_icon_activatable">False</property>
+ <property name="primary_icon_sensitive">True</property>
+ <property name="secondary_icon_sensitive">True</property>
+ <signal name="changed" handler="on_entry4_changed" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label2">
+ <property name="width_request">60</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0.10000000149011612</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkVPaned" id="vpaned1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkScrolledWindow" id="scrolledwindow1">
+ <property name="height_request">100</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hscrollbar_policy">automatic</property>
+ <property name="vscrollbar_policy">automatic</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkTreeView" id="clist1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <signal name="cursor-changed" handler="on_clist1_cursor_changed" swapped="no"/>
+ <signal name="button-release-event" handler="on_clist1_button_released" swapped="no"/>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="resize">True</property>
+ <property name="shrink">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkScrolledWindow" id="scrolledwindow3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hscrollbar_policy">automatic</property>
+ <property name="vscrollbar_policy">automatic</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkTextView" id="text1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">False</property>
+ <property name="wrap_mode">word</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="resize">False</property>
+ <property name="shrink">False</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkLabel" id="label3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Find:</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="find_entry">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="primary_icon_activatable">False</property>
+ <property name="secondary_icon_activatable">False</property>
+ <property name="primary_icon_sensitive">True</property>
+ <property name="secondary_icon_sensitive">True</property>
+ <signal name="key-press-event" handler="on_find_entry_key_press_event" swapped="no"/>
+ <signal name="changed" handler="on_find_entry_changed" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button2">
+ <property name="label">gtk-media-previous</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button1">
+ <property name="label">gtk-media-next</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_stock">True</property>
+ <signal name="clicked" handler="on_find_next_event" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">4</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="resize">True</property>
+ <property name="shrink">False</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <object class="GtkDialog" id="msgbox">
+ <property name="can_focus">False</property>
+ <property name="title" translatable="yes">message box</property>
+ <property name="type_hint">dialog</property>
+ <property name="has_separator">True</property>
+ <child internal-child="vbox">
+ <object class="GtkVBox" id="dialog-vbox2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child internal-child="action_area">
+ <object class="GtkHButtonBox" id="dialog-action_area2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="layout_style">end</property>
+ <child>
+ <object class="GtkButton" id="okbutton1">
+ <property name="label">gtk-ok</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_stock">True</property>
+ <accelerator key="Escape" signal="clicked"/>
+ <signal name="clicked" handler="on_messagebox_ok_clicked" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkScrolledWindow" id="scrolledwindow6">
+ <property name="width_request">300</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">automatic</property>
+ <property name="vscrollbar_policy">automatic</property>
+ <child>
+ <object class="GtkTextView" id="msgboxtext">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">False</property>
+ <property name="wrap_mode">word</property>
+ <property name="cursor_visible">False</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <action-widgets>
+ <action-widget response="-5">okbutton1</action-widget>
+ </action-widgets>
+ </object>
+</interface>