Merge lp:~flamingolof/software-properties/gtkbuilder into lp:software-properties

Proposed by Olof Kindgren
Status: Merged
Merge reported by: Michael Vogt
Merged at revision: not available
Proposed branch: lp:~flamingolof/software-properties/gtkbuilder
Merge into: lp:software-properties
Diff against target: 3492 lines
16 files modified
data/gtkbuilder/DialogAdd.ui (+195/-0)
data/gtkbuilder/DialogAddSourcesList.ui (+143/-0)
data/gtkbuilder/DialogCacheOutDated.ui (+144/-0)
data/gtkbuilder/DialogCdromProgress.ui (+85/-0)
data/gtkbuilder/DialogEdit.ui (+256/-0)
data/gtkbuilder/DialogMirror.ui (+378/-0)
data/gtkbuilder/dialogs.ui (+246/-0)
data/gtkbuilder/main.ui (+1172/-0)
software-properties-gtk (+0/-3)
softwareproperties/gtk/CdromProgress.py (+10/-7)
softwareproperties/gtk/DialogAdd.py (+7/-11)
softwareproperties/gtk/DialogAddSourcesList.py (+14/-19)
softwareproperties/gtk/DialogCacheOutdated.py (+3/-7)
softwareproperties/gtk/DialogEdit.py (+16/-21)
softwareproperties/gtk/DialogMirror.py (+20/-31)
softwareproperties/gtk/SoftwarePropertiesGtk.py (+97/-140)
To merge this branch: bzr merge lp:~flamingolof/software-properties/gtkbuilder
Reviewer Review Type Date Requested Status
mac9416 (community) Needs Fixing
Ubuntu Core Development Team Pending
Review via email: mp+12541@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Olof Kindgren (flamingolof) wrote :

Removed dependencies on glade, except for in dead code. Still need some cleaning up, but the patch is already quite large. If this is OK, I can do some cleaning up after the merge

590. By Olof Kindgren <olof@calculon>

* dialogs.ui: Moved dialogs to separate files
* CdRomProgress.py: Load ui from separate file
* DialogAdd.py: Load ui from separate file, remove unused variables
* DialogAddSourcesList.py: Load ui from separate file, remove unused variables
* DialogCacheOutdated.py: Load ui from separate file
* DialogEdit.py: Load ui from separate file
* DialogMirror.py: Load ui from separate file, removed dummy functions

591. By Olof Kindgren <olof@calculon>

Some fixes in the cdrom treeview

Revision history for this message
mac9416 (mac9416) wrote :

Looks like there's a packaging problem. It seems that the new data/gtkbuilder directory isn't being installed:

"""
Traceback (most recent call last):
  File "/usr/bin/software-properties-gtk", line 110, in <module>
    app = SoftwarePropertiesGtk(datadir=data_dir, options=options, file=file)
  File "/usr/lib/python2.6/dist-packages/softwareproperties/gtk/SoftwarePropertiesGtk.py", line 88, in __init__
    self.builder.add_from_file(datadir+"gtkbuilder/main.ui")
glib.GError: Failed to open file '/usr/share/software-properties/gtkbuilder/main.ui': No such file or directory
"""

review: Needs Fixing

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added directory 'data/gtkbuilder'
2=== added file 'data/gtkbuilder/DialogAdd.ui'
3--- data/gtkbuilder/DialogAdd.ui 1970-01-01 00:00:00 +0000
4+++ data/gtkbuilder/DialogAdd.ui 2009-10-12 04:39:10 +0000
5@@ -0,0 +1,195 @@
6+<?xml version="1.0"?>
7+<interface>
8+ <!-- interface-requires gtk+ 2.12 -->
9+ <!-- interface-naming-policy toplevel-contextual -->
10+ <object class="GtkDialog" id="dialog_add_custom">
11+ <property name="border_width">6</property>
12+ <property name="resizable">False</property>
13+ <property name="modal">True</property>
14+ <property name="type_hint">dialog</property>
15+ <property name="skip_taskbar_hint">True</property>
16+ <property name="has_separator">False</property>
17+ <child internal-child="vbox">
18+ <object class="GtkVBox" id="dialog-vbox2">
19+ <property name="visible">True</property>
20+ <property name="spacing">12</property>
21+ <child>
22+ <object class="GtkHBox" id="hbox7">
23+ <property name="visible">True</property>
24+ <property name="border_width">6</property>
25+ <property name="spacing">12</property>
26+ <child>
27+ <object class="GtkImage" id="image3">
28+ <property name="visible">True</property>
29+ <property name="yalign">0</property>
30+ <property name="stock">gtk-dialog-question</property>
31+ <property name="icon-size">6</property>
32+ </object>
33+ <packing>
34+ <property name="expand">False</property>
35+ <property name="position">0</property>
36+ </packing>
37+ </child>
38+ <child>
39+ <object class="GtkVBox" id="vbox5">
40+ <property name="visible">True</property>
41+ <property name="spacing">12</property>
42+ <child>
43+ <object class="GtkLabel" id="label33">
44+ <property name="visible">True</property>
45+ <property name="can_focus">True</property>
46+ <property name="xalign">0</property>
47+ <property name="label" translatable="yes">&lt;big&gt;&lt;b&gt;Enter the complete APT line of the repository that you want to add as source&lt;/b&gt;&lt;/big&gt;</property>
48+ <property name="use_markup">True</property>
49+ <property name="wrap">True</property>
50+ <property name="selectable">True</property>
51+ </object>
52+ <packing>
53+ <property name="expand">False</property>
54+ <property name="fill">False</property>
55+ <property name="position">0</property>
56+ </packing>
57+ </child>
58+ <child>
59+ <object class="GtkLabel" id="label_example_line">
60+ <property name="visible">True</property>
61+ <property name="can_focus">True</property>
62+ <property name="xalign">0</property>
63+ <property name="use_markup">True</property>
64+ <property name="wrap">True</property>
65+ <property name="selectable">True</property>
66+ </object>
67+ <packing>
68+ <property name="expand">False</property>
69+ <property name="fill">False</property>
70+ <property name="position">1</property>
71+ </packing>
72+ </child>
73+ <child>
74+ <object class="GtkHBox" id="hbox8">
75+ <property name="visible">True</property>
76+ <property name="spacing">10</property>
77+ <child>
78+ <object class="GtkLabel" id="label34">
79+ <property name="visible">True</property>
80+ <property name="label" translatable="yes">APT line:</property>
81+ </object>
82+ <packing>
83+ <property name="expand">False</property>
84+ <property name="fill">False</property>
85+ <property name="position">0</property>
86+ </packing>
87+ </child>
88+ <child>
89+ <object class="GtkEntry" id="entry_source_line">
90+ <property name="visible">True</property>
91+ <property name="can_focus">True</property>
92+ <property name="activates_default">True</property>
93+ <signal name="changed" handler="check_line"/>
94+ </object>
95+ <packing>
96+ <property name="position">1</property>
97+ </packing>
98+ </child>
99+ </object>
100+ <packing>
101+ <property name="expand">False</property>
102+ <property name="position">2</property>
103+ </packing>
104+ </child>
105+ </object>
106+ <packing>
107+ <property name="position">1</property>
108+ </packing>
109+ </child>
110+ </object>
111+ <packing>
112+ <property name="position">1</property>
113+ </packing>
114+ </child>
115+ <child internal-child="action_area">
116+ <object class="GtkHButtonBox" id="dialog-action_area2">
117+ <property name="visible">True</property>
118+ <property name="layout_style">end</property>
119+ <child>
120+ <object class="GtkButton" id="button5">
121+ <property name="label">gtk-cancel</property>
122+ <property name="visible">True</property>
123+ <property name="can_focus">True</property>
124+ <property name="can_default">True</property>
125+ <property name="receives_default">False</property>
126+ <property name="use_stock">True</property>
127+ </object>
128+ <packing>
129+ <property name="expand">False</property>
130+ <property name="fill">False</property>
131+ <property name="position">0</property>
132+ </packing>
133+ </child>
134+ <child>
135+ <object class="GtkButton" id="button_add_source">
136+ <property name="visible">True</property>
137+ <property name="sensitive">False</property>
138+ <property name="can_focus">True</property>
139+ <property name="has_focus">True</property>
140+ <property name="can_default">True</property>
141+ <property name="has_default">True</property>
142+ <property name="receives_default">False</property>
143+ <child>
144+ <object class="GtkAlignment" id="alignment1">
145+ <property name="visible">True</property>
146+ <property name="xscale">0</property>
147+ <property name="yscale">0</property>
148+ <child>
149+ <object class="GtkHBox" id="hbox10">
150+ <property name="visible">True</property>
151+ <property name="spacing">2</property>
152+ <child>
153+ <object class="GtkImage" id="image2">
154+ <property name="visible">True</property>
155+ <property name="stock">gtk-add</property>
156+ </object>
157+ <packing>
158+ <property name="expand">False</property>
159+ <property name="fill">False</property>
160+ <property name="position">0</property>
161+ </packing>
162+ </child>
163+ <child>
164+ <object class="GtkLabel" id="label35">
165+ <property name="visible">True</property>
166+ <property name="label" translatable="yes">_Add Source</property>
167+ <property name="use_underline">True</property>
168+ </object>
169+ <packing>
170+ <property name="expand">False</property>
171+ <property name="fill">False</property>
172+ <property name="position">1</property>
173+ </packing>
174+ </child>
175+ </object>
176+ </child>
177+ </object>
178+ </child>
179+ </object>
180+ <packing>
181+ <property name="expand">False</property>
182+ <property name="fill">False</property>
183+ <property name="position">1</property>
184+ </packing>
185+ </child>
186+ </object>
187+ <packing>
188+ <property name="expand">False</property>
189+ <property name="pack_type">end</property>
190+ <property name="position">0</property>
191+ </packing>
192+ </child>
193+ </object>
194+ </child>
195+ <action-widgets>
196+ <action-widget response="-6">button5</action-widget>
197+ <action-widget response="-5">button_add_source</action-widget>
198+ </action-widgets>
199+ </object>
200+</interface>
201
202=== added file 'data/gtkbuilder/DialogAddSourcesList.ui'
203--- data/gtkbuilder/DialogAddSourcesList.ui 1970-01-01 00:00:00 +0000
204+++ data/gtkbuilder/DialogAddSourcesList.ui 2009-10-12 04:39:10 +0000
205@@ -0,0 +1,143 @@
206+<?xml version="1.0"?>
207+<interface>
208+ <!-- interface-requires gtk+ 2.12 -->
209+ <!-- interface-naming-policy toplevel-contextual -->
210+ <object class="GtkDialog" id="dialog_add_sources_list">
211+ <property name="border_width">6</property>
212+ <property name="resizable">False</property>
213+ <property name="type_hint">dialog</property>
214+ <property name="has_separator">False</property>
215+ <child internal-child="vbox">
216+ <object class="GtkVBox" id="dialog-vbox1">
217+ <property name="visible">True</property>
218+ <property name="spacing">12</property>
219+ <child>
220+ <object class="GtkHBox" id="hbox12">
221+ <property name="visible">True</property>
222+ <property name="border_width">6</property>
223+ <property name="spacing">12</property>
224+ <child>
225+ <object class="GtkImage" id="image_sources_list">
226+ <property name="visible">True</property>
227+ <property name="xalign">0</property>
228+ <property name="yalign">0</property>
229+ <property name="stock">gtk-dialog-question</property>
230+ <property name="icon-size">6</property>
231+ </object>
232+ <packing>
233+ <property name="expand">False</property>
234+ <property name="position">0</property>
235+ </packing>
236+ </child>
237+ <child>
238+ <object class="GtkVBox" id="vbox1">
239+ <property name="visible">True</property>
240+ <property name="spacing">12</property>
241+ <child>
242+ <object class="GtkLabel" id="label_sources">
243+ <property name="visible">True</property>
244+ <property name="xalign">0</property>
245+ <property name="wrap">True</property>
246+ </object>
247+ <packing>
248+ <property name="expand">False</property>
249+ <property name="fill">False</property>
250+ <property name="position">0</property>
251+ </packing>
252+ </child>
253+ <child>
254+ <object class="GtkScrolledWindow" id="scrolled_window">
255+ <property name="height_request">200</property>
256+ <property name="visible">True</property>
257+ <property name="can_focus">True</property>
258+ <property name="hscrollbar_policy">automatic</property>
259+ <property name="vscrollbar_policy">automatic</property>
260+ <property name="shadow_type">in</property>
261+ <child>
262+ <object class="GtkTreeView" id="treeview_sources">
263+ <property name="visible">True</property>
264+ <property name="can_focus">True</property>
265+ <property name="headers_visible">False</property>
266+ <property name="rules_hint">True</property>
267+ </object>
268+ </child>
269+ </object>
270+ <packing>
271+ <property name="position">1</property>
272+ </packing>
273+ </child>
274+ </object>
275+ <packing>
276+ <property name="position">1</property>
277+ </packing>
278+ </child>
279+ </object>
280+ <packing>
281+ <property name="position">1</property>
282+ </packing>
283+ </child>
284+ <child internal-child="action_area">
285+ <object class="GtkHButtonBox" id="dialog-action_area1">
286+ <property name="visible">True</property>
287+ <property name="layout_style">end</property>
288+ <child>
289+ <object class="GtkButton" id="button_replace">
290+ <property name="label" translatable="yes">_Replace</property>
291+ <property name="visible">True</property>
292+ <property name="can_focus">True</property>
293+ <property name="can_default">True</property>
294+ <property name="receives_default">False</property>
295+ <property name="use_underline">True</property>
296+ </object>
297+ <packing>
298+ <property name="expand">False</property>
299+ <property name="fill">False</property>
300+ <property name="position">0</property>
301+ </packing>
302+ </child>
303+ <child>
304+ <object class="GtkButton" id="button_cancel">
305+ <property name="label">gtk-cancel</property>
306+ <property name="visible">True</property>
307+ <property name="can_focus">True</property>
308+ <property name="can_default">True</property>
309+ <property name="receives_default">False</property>
310+ <property name="use_stock">True</property>
311+ </object>
312+ <packing>
313+ <property name="expand">False</property>
314+ <property name="fill">False</property>
315+ <property name="position">1</property>
316+ </packing>
317+ </child>
318+ <child>
319+ <object class="GtkButton" id="button_add">
320+ <property name="label">gtk-add</property>
321+ <property name="visible">True</property>
322+ <property name="can_focus">True</property>
323+ <property name="can_default">True</property>
324+ <property name="receives_default">False</property>
325+ <property name="use_stock">True</property>
326+ </object>
327+ <packing>
328+ <property name="expand">False</property>
329+ <property name="fill">False</property>
330+ <property name="position">2</property>
331+ </packing>
332+ </child>
333+ </object>
334+ <packing>
335+ <property name="expand">False</property>
336+ <property name="pack_type">end</property>
337+ <property name="position">0</property>
338+ </packing>
339+ </child>
340+ </object>
341+ </child>
342+ <action-widgets>
343+ <action-widget response="1">button_replace</action-widget>
344+ <action-widget response="-6">button_cancel</action-widget>
345+ <action-widget response="2">button_add</action-widget>
346+ </action-widgets>
347+ </object>
348+</interface>
349
350=== added file 'data/gtkbuilder/DialogCacheOutDated.ui'
351--- data/gtkbuilder/DialogCacheOutDated.ui 1970-01-01 00:00:00 +0000
352+++ data/gtkbuilder/DialogCacheOutDated.ui 2009-10-12 04:39:10 +0000
353@@ -0,0 +1,144 @@
354+<?xml version="1.0"?>
355+<interface>
356+ <!-- interface-requires gtk+ 2.12 -->
357+ <!-- interface-naming-policy toplevel-contextual -->
358+ <object class="GtkDialog" id="dialog_cache_outofdate">
359+ <property name="border_width">6</property>
360+ <property name="resizable">False</property>
361+ <property name="type_hint">dialog</property>
362+ <property name="skip_taskbar_hint">True</property>
363+ <property name="skip_pager_hint">True</property>
364+ <property name="has_separator">False</property>
365+ <child internal-child="vbox">
366+ <object class="GtkVBox" id="dialog-vbox5">
367+ <property name="visible">True</property>
368+ <property name="spacing">12</property>
369+ <child>
370+ <object class="GtkHBox" id="hbox36">
371+ <property name="visible">True</property>
372+ <property name="border_width">6</property>
373+ <property name="spacing">12</property>
374+ <child>
375+ <object class="GtkImage" id="image4">
376+ <property name="visible">True</property>
377+ <property name="xalign">0</property>
378+ <property name="yalign">0</property>
379+ <property name="stock">gtk-dialog-info</property>
380+ <property name="icon-size">6</property>
381+ </object>
382+ <packing>
383+ <property name="expand">False</property>
384+ <property name="position">0</property>
385+ </packing>
386+ </child>
387+ <child>
388+ <object class="GtkLabel" id="label70">
389+ <property name="visible">True</property>
390+ <property name="can_focus">True</property>
391+ <property name="xalign">0</property>
392+ <property name="yalign">0</property>
393+ <property name="label" translatable="yes">&lt;b&gt;&lt;big&gt;The information about available software is out-of-date&lt;/big&gt;&lt;/b&gt;
394+
395+To install software and updates from newly added or changed sources, you have to reload the information about available software.
396+
397+You need a working internet connection to continue.</property>
398+ <property name="use_markup">True</property>
399+ <property name="wrap">True</property>
400+ <property name="selectable">True</property>
401+ </object>
402+ <packing>
403+ <property name="expand">False</property>
404+ <property name="fill">False</property>
405+ <property name="position">1</property>
406+ </packing>
407+ </child>
408+ </object>
409+ <packing>
410+ <property name="position">1</property>
411+ </packing>
412+ </child>
413+ <child internal-child="action_area">
414+ <object class="GtkHButtonBox" id="dialog-action_area5">
415+ <property name="visible">True</property>
416+ <property name="layout_style">end</property>
417+ <child>
418+ <object class="GtkButton" id="cancelbutton1">
419+ <property name="visible">True</property>
420+ <property name="can_focus">True</property>
421+ <property name="has_focus">True</property>
422+ <property name="can_default">True</property>
423+ <property name="has_default">True</property>
424+ <property name="receives_default">False</property>
425+ <child>
426+ <object class="GtkAlignment" id="alignment2">
427+ <property name="visible">True</property>
428+ <property name="xscale">0</property>
429+ <property name="yscale">0</property>
430+ <child>
431+ <object class="GtkHBox" id="hbox37">
432+ <property name="visible">True</property>
433+ <property name="spacing">2</property>
434+ <child>
435+ <object class="GtkImage" id="image5">
436+ <property name="visible">True</property>
437+ <property name="stock">gtk-refresh</property>
438+ </object>
439+ <packing>
440+ <property name="expand">False</property>
441+ <property name="fill">False</property>
442+ <property name="position">0</property>
443+ </packing>
444+ </child>
445+ <child>
446+ <object class="GtkLabel" id="label71">
447+ <property name="visible">True</property>
448+ <property name="label" translatable="yes">_Reload</property>
449+ <property name="use_underline">True</property>
450+ </object>
451+ <packing>
452+ <property name="expand">False</property>
453+ <property name="fill">False</property>
454+ <property name="position">1</property>
455+ </packing>
456+ </child>
457+ </object>
458+ </child>
459+ </object>
460+ </child>
461+ </object>
462+ <packing>
463+ <property name="expand">False</property>
464+ <property name="fill">False</property>
465+ <property name="position">0</property>
466+ </packing>
467+ </child>
468+ <child>
469+ <object class="GtkButton" id="okbutton1">
470+ <property name="label">gtk-close</property>
471+ <property name="visible">True</property>
472+ <property name="can_focus">True</property>
473+ <property name="can_default">True</property>
474+ <property name="receives_default">False</property>
475+ <property name="use_stock">True</property>
476+ </object>
477+ <packing>
478+ <property name="expand">False</property>
479+ <property name="fill">False</property>
480+ <property name="position">1</property>
481+ </packing>
482+ </child>
483+ </object>
484+ <packing>
485+ <property name="expand">False</property>
486+ <property name="pack_type">end</property>
487+ <property name="position">0</property>
488+ </packing>
489+ </child>
490+ </object>
491+ </child>
492+ <action-widgets>
493+ <action-widget response="-10">cancelbutton1</action-widget>
494+ <action-widget response="-7">okbutton1</action-widget>
495+ </action-widgets>
496+ </object>
497+</interface>
498
499=== added file 'data/gtkbuilder/DialogCdromProgress.ui'
500--- data/gtkbuilder/DialogCdromProgress.ui 1970-01-01 00:00:00 +0000
501+++ data/gtkbuilder/DialogCdromProgress.ui 2009-10-12 04:39:10 +0000
502@@ -0,0 +1,85 @@
503+<?xml version="1.0"?>
504+<interface>
505+ <!-- interface-requires gtk+ 2.12 -->
506+ <!-- interface-naming-policy toplevel-contextual -->
507+ <object class="GtkDialog" id="dialog_cdrom_progress">
508+ <property name="border_width">6</property>
509+ <property name="title" translatable="yes">Scanning CD-ROM</property>
510+ <property name="resizable">False</property>
511+ <property name="modal">True</property>
512+ <property name="type_hint">dialog</property>
513+ <property name="has_separator">False</property>
514+ <child internal-child="vbox">
515+ <object class="GtkVBox" id="dialog-vbox4">
516+ <property name="visible">True</property>
517+ <property name="spacing">12</property>
518+ <child>
519+ <object class="GtkVBox" id="vbox18">
520+ <property name="visible">True</property>
521+ <property name="border_width">6</property>
522+ <property name="spacing">12</property>
523+ <child>
524+ <object class="GtkLabel" id="label_cdrom">
525+ <property name="visible">True</property>
526+ <property name="wrap">True</property>
527+ </object>
528+ <packing>
529+ <property name="expand">False</property>
530+ <property name="fill">False</property>
531+ <property name="position">0</property>
532+ </packing>
533+ </child>
534+ <child>
535+ <object class="GtkProgressBar" id="progressbar_cdrom">
536+ <property name="width_request">350</property>
537+ <property name="visible">True</property>
538+ <property name="pulse_step">0.10000000149</property>
539+ </object>
540+ <packing>
541+ <property name="expand">False</property>
542+ <property name="fill">False</property>
543+ <property name="position">1</property>
544+ </packing>
545+ </child>
546+ <child>
547+ <placeholder/>
548+ </child>
549+ </object>
550+ <packing>
551+ <property name="position">1</property>
552+ </packing>
553+ </child>
554+ <child internal-child="action_area">
555+ <object class="GtkHButtonBox" id="dialog-action_area4">
556+ <property name="visible">True</property>
557+ <property name="layout_style">end</property>
558+ <child>
559+ <object class="GtkButton" id="button_cdrom_close">
560+ <property name="label">gtk-close</property>
561+ <property name="visible">True</property>
562+ <property name="can_focus">True</property>
563+ <property name="can_default">True</property>
564+ <property name="receives_default">False</property>
565+ <property name="use_stock">True</property>
566+ <signal name="clicked" handler="on_button_cdrom_close_clicked"/>
567+ </object>
568+ <packing>
569+ <property name="expand">False</property>
570+ <property name="fill">False</property>
571+ <property name="position">0</property>
572+ </packing>
573+ </child>
574+ </object>
575+ <packing>
576+ <property name="expand">False</property>
577+ <property name="pack_type">end</property>
578+ <property name="position">0</property>
579+ </packing>
580+ </child>
581+ </object>
582+ </child>
583+ <action-widgets>
584+ <action-widget response="-7">button_cdrom_close</action-widget>
585+ </action-widgets>
586+ </object>
587+</interface>
588
589=== added file 'data/gtkbuilder/DialogEdit.ui'
590--- data/gtkbuilder/DialogEdit.ui 1970-01-01 00:00:00 +0000
591+++ data/gtkbuilder/DialogEdit.ui 2009-10-12 04:39:10 +0000
592@@ -0,0 +1,256 @@
593+<?xml version="1.0"?>
594+<interface>
595+ <!-- interface-requires gtk+ 2.12 -->
596+ <!-- interface-naming-policy toplevel-contextual -->
597+ <object class="GtkListStore" id="model1">
598+ <columns>
599+ <!-- column-name gchararray -->
600+ <column type="gchararray"/>
601+ </columns>
602+ <data>
603+ <row>
604+ <col id="0" translatable="yes">Binary</col>
605+ </row>
606+ <row>
607+ <col id="0" translatable="yes">Source</col>
608+ </row>
609+ </data>
610+ </object>
611+ <object class="GtkDialog" id="dialog_edit">
612+ <property name="border_width">6</property>
613+ <property name="title" translatable="yes">Edit Source</property>
614+ <property name="modal">True</property>
615+ <property name="default_width">400</property>
616+ <property name="type_hint">dialog</property>
617+ <property name="skip_taskbar_hint">True</property>
618+ <property name="has_separator">False</property>
619+ <child internal-child="vbox">
620+ <object class="GtkVBox" id="vbox6">
621+ <property name="visible">True</property>
622+ <property name="spacing">12</property>
623+ <child>
624+ <object class="GtkTable" id="table1">
625+ <property name="visible">True</property>
626+ <property name="border_width">6</property>
627+ <property name="n_rows">7</property>
628+ <property name="n_columns">2</property>
629+ <property name="column_spacing">12</property>
630+ <property name="row_spacing">6</property>
631+ <child>
632+ <object class="GtkLabel" id="label36">
633+ <property name="visible">True</property>
634+ <property name="xalign">1</property>
635+ <property name="label" translatable="yes">&lt;b&gt;Type:&lt;/b&gt;</property>
636+ <property name="use_markup">True</property>
637+ </object>
638+ <packing>
639+ <property name="top_attach">1</property>
640+ <property name="bottom_attach">2</property>
641+ <property name="x_options">GTK_FILL</property>
642+ <property name="y_options"></property>
643+ </packing>
644+ </child>
645+ <child>
646+ <object class="GtkLabel" id="label38">
647+ <property name="visible">True</property>
648+ <property name="xalign">1</property>
649+ <property name="label" translatable="yes">&lt;b&gt;URI:&lt;/b&gt;</property>
650+ <property name="use_markup">True</property>
651+ </object>
652+ <packing>
653+ <property name="top_attach">3</property>
654+ <property name="bottom_attach">4</property>
655+ <property name="x_options">GTK_FILL</property>
656+ <property name="y_options"></property>
657+ </packing>
658+ </child>
659+ <child>
660+ <object class="GtkLabel" id="label39">
661+ <property name="visible">True</property>
662+ <property name="xalign">1</property>
663+ <property name="label" translatable="yes">&lt;b&gt;Distribution:&lt;/b&gt;</property>
664+ <property name="use_markup">True</property>
665+ </object>
666+ <packing>
667+ <property name="top_attach">4</property>
668+ <property name="bottom_attach">5</property>
669+ <property name="x_options">GTK_FILL</property>
670+ <property name="y_options"></property>
671+ </packing>
672+ </child>
673+ <child>
674+ <object class="GtkLabel" id="label40">
675+ <property name="visible">True</property>
676+ <property name="xalign">1</property>
677+ <property name="label" translatable="yes">&lt;b&gt;Components:&lt;/b&gt;</property>
678+ <property name="use_markup">True</property>
679+ </object>
680+ <packing>
681+ <property name="top_attach">5</property>
682+ <property name="bottom_attach">6</property>
683+ <property name="x_options">GTK_FILL</property>
684+ <property name="y_options"></property>
685+ </packing>
686+ </child>
687+ <child>
688+ <object class="GtkEntry" id="entry_uri">
689+ <property name="visible">True</property>
690+ <property name="can_focus">True</property>
691+ <property name="activates_default">True</property>
692+ <signal name="changed" handler="on_entry_source_line_changed"/>
693+ </object>
694+ <packing>
695+ <property name="left_attach">1</property>
696+ <property name="right_attach">2</property>
697+ <property name="top_attach">3</property>
698+ <property name="bottom_attach">4</property>
699+ <property name="y_options"></property>
700+ </packing>
701+ </child>
702+ <child>
703+ <object class="GtkEntry" id="entry_comps">
704+ <property name="visible">True</property>
705+ <property name="can_focus">True</property>
706+ <property name="activates_default">True</property>
707+ <signal name="changed" handler="on_entry_source_line_changed"/>
708+ </object>
709+ <packing>
710+ <property name="left_attach">1</property>
711+ <property name="right_attach">2</property>
712+ <property name="top_attach">5</property>
713+ <property name="bottom_attach">6</property>
714+ <property name="y_options"></property>
715+ </packing>
716+ </child>
717+ <child>
718+ <object class="GtkComboBox" id="combobox_type">
719+ <property name="visible">True</property>
720+ <property name="model">model1</property>
721+ <child>
722+ <object class="GtkCellRendererText" id="renderer1"/>
723+ <attributes>
724+ <attribute name="text">0</attribute>
725+ </attributes>
726+ </child>
727+ </object>
728+ <packing>
729+ <property name="left_attach">1</property>
730+ <property name="right_attach">2</property>
731+ <property name="top_attach">1</property>
732+ <property name="bottom_attach">2</property>
733+ <property name="x_options">GTK_FILL</property>
734+ <property name="y_options">GTK_FILL</property>
735+ </packing>
736+ </child>
737+ <child>
738+ <object class="GtkLabel" id="label61">
739+ <property name="visible">True</property>
740+ <property name="xalign">1</property>
741+ <property name="label" translatable="yes">&lt;b&gt;Comment:&lt;/b&gt;</property>
742+ <property name="use_markup">True</property>
743+ </object>
744+ <packing>
745+ <property name="top_attach">6</property>
746+ <property name="bottom_attach">7</property>
747+ <property name="x_options">GTK_FILL</property>
748+ <property name="y_options"></property>
749+ </packing>
750+ </child>
751+ <child>
752+ <object class="GtkEntry" id="entry_comment">
753+ <property name="visible">True</property>
754+ <property name="can_focus">True</property>
755+ <property name="activates_default">True</property>
756+ <signal name="changed" handler="on_entry_source_line_changed"/>
757+ </object>
758+ <packing>
759+ <property name="left_attach">1</property>
760+ <property name="right_attach">2</property>
761+ <property name="top_attach">6</property>
762+ <property name="bottom_attach">7</property>
763+ <property name="y_options"></property>
764+ </packing>
765+ </child>
766+ <child>
767+ <object class="GtkEntry" id="entry_dist">
768+ <property name="visible">True</property>
769+ <property name="can_focus">True</property>
770+ <property name="activates_default">True</property>
771+ <signal name="changed" handler="on_entry_source_line_changed"/>
772+ </object>
773+ <packing>
774+ <property name="left_attach">1</property>
775+ <property name="right_attach">2</property>
776+ <property name="top_attach">4</property>
777+ <property name="bottom_attach">5</property>
778+ <property name="y_options"></property>
779+ </packing>
780+ </child>
781+ <child>
782+ <placeholder/>
783+ </child>
784+ <child>
785+ <placeholder/>
786+ </child>
787+ <child>
788+ <placeholder/>
789+ </child>
790+ <child>
791+ <placeholder/>
792+ </child>
793+ </object>
794+ <packing>
795+ <property name="position">1</property>
796+ </packing>
797+ </child>
798+ <child internal-child="action_area">
799+ <object class="GtkHButtonBox" id="hbuttonbox3">
800+ <property name="visible">True</property>
801+ <property name="layout_style">end</property>
802+ <child>
803+ <object class="GtkButton" id="button7">
804+ <property name="label">gtk-cancel</property>
805+ <property name="visible">True</property>
806+ <property name="can_focus">True</property>
807+ <property name="can_default">True</property>
808+ <property name="receives_default">False</property>
809+ <property name="use_stock">True</property>
810+ </object>
811+ <packing>
812+ <property name="expand">False</property>
813+ <property name="fill">False</property>
814+ <property name="position">0</property>
815+ </packing>
816+ </child>
817+ <child>
818+ <object class="GtkButton" id="button_edit_ok">
819+ <property name="label">gtk-ok</property>
820+ <property name="visible">True</property>
821+ <property name="can_focus">True</property>
822+ <property name="has_focus">True</property>
823+ <property name="can_default">True</property>
824+ <property name="has_default">True</property>
825+ <property name="receives_default">False</property>
826+ <property name="use_stock">True</property>
827+ </object>
828+ <packing>
829+ <property name="expand">False</property>
830+ <property name="fill">False</property>
831+ <property name="position">1</property>
832+ </packing>
833+ </child>
834+ </object>
835+ <packing>
836+ <property name="expand">False</property>
837+ <property name="pack_type">end</property>
838+ <property name="position">0</property>
839+ </packing>
840+ </child>
841+ </object>
842+ </child>
843+ <action-widgets>
844+ <action-widget response="-6">button7</action-widget>
845+ <action-widget response="-5">button_edit_ok</action-widget>
846+ </action-widgets>
847+ </object>
848+</interface>
849
850=== added file 'data/gtkbuilder/DialogMirror.ui'
851--- data/gtkbuilder/DialogMirror.ui 1970-01-01 00:00:00 +0000
852+++ data/gtkbuilder/DialogMirror.ui 2009-10-12 04:39:10 +0000
853@@ -0,0 +1,378 @@
854+<?xml version="1.0"?>
855+<interface>
856+ <!-- interface-requires gtk+ 2.12 -->
857+ <!-- interface-naming-policy toplevel-contextual -->
858+ <object class="GtkTreeStore" id="model_sort_model">
859+ <columns>
860+ <!-- column-name col_uri -->
861+ <column type="gchararray"/>
862+ <!-- column-name col_separator -->
863+ <column type="gboolean"/>
864+ <!-- column-name col_custom -->
865+ <column type="gboolean"/>
866+ <!-- column-name col_mirror -->
867+ <column type="PyObject"/>
868+ </columns>
869+ </object>
870+ <object class="GtkListStore" id="model_proto">
871+ <columns>
872+ <!-- column-name col_proto -->
873+ <column type="gchararray"/>
874+ <!-- column-name col_dir -->
875+ <column type="gchararray"/>
876+ </columns>
877+ </object>
878+ <object class="GtkTreeModelSort" id="model_sort">
879+ <property name="model">model_sort_model</property>
880+ </object>
881+ <object class="GtkDialog" id="dialog_mirror">
882+ <property name="border_width">6</property>
883+ <property name="title" translatable="yes">Choose a Download Server</property>
884+ <property name="window_position">center-on-parent</property>
885+ <property name="type_hint">dialog</property>
886+ <property name="has_separator">False</property>
887+ <child internal-child="vbox">
888+ <object class="GtkVBox" id="dialog-vbox6">
889+ <property name="visible">True</property>
890+ <property name="spacing">6</property>
891+ <child>
892+ <object class="GtkVBox" id="vbox19">
893+ <property name="visible">True</property>
894+ <property name="border_width">6</property>
895+ <property name="spacing">12</property>
896+ <child>
897+ <object class="GtkHBox" id="hbox38">
898+ <property name="visible">True</property>
899+ <property name="spacing">6</property>
900+ <child>
901+ <object class="GtkVBox" id="vbox24">
902+ <property name="visible">True</property>
903+ <property name="spacing">6</property>
904+ <child>
905+ <object class="GtkScrolledWindow" id="scrolledwindow1">
906+ <property name="width_request">334</property>
907+ <property name="height_request">211</property>
908+ <property name="visible">True</property>
909+ <property name="can_focus">True</property>
910+ <property name="shadow_type">in</property>
911+ <child>
912+ <object class="GtkTreeView" id="treeview_mirrors">
913+ <property name="visible">True</property>
914+ <property name="can_focus">True</property>
915+ <property name="model">model_sort</property>
916+ <property name="headers_visible">False</property>
917+ <property name="rules_hint">True</property>
918+ <signal name="cursor_changed" handler="on_treeview_mirrors_cursor_changed"/>
919+ <child>
920+ <object class="GtkTreeViewColumn" id="column_mirror">
921+ <property name="title">URI</property>
922+ <child>
923+ <object class="GtkCellRendererText" id="renderer_mirror"/>
924+ <attributes>
925+ <attribute name="text">0</attribute>
926+ </attributes>
927+ </child>
928+ </object>
929+ </child>
930+ </object>
931+ </child>
932+ </object>
933+ <packing>
934+ <property name="position">0</property>
935+ </packing>
936+ </child>
937+ <child>
938+ <object class="GtkHBox" id="hbox390">
939+ <property name="visible">True</property>
940+ <child>
941+ <object class="GtkHBox" id="hbox1">
942+ <property name="visible">True</property>
943+ <property name="spacing">12</property>
944+ <child>
945+ <object class="GtkLabel" id="label73">
946+ <property name="visible">True</property>
947+ <property name="label" translatable="yes">Protocol:</property>
948+ </object>
949+ <packing>
950+ <property name="expand">False</property>
951+ <property name="fill">False</property>
952+ <property name="position">0</property>
953+ </packing>
954+ </child>
955+ <child>
956+ <object class="GtkComboBox" id="combobox_mirror_proto">
957+ <property name="visible">True</property>
958+ <property name="model">model_proto</property>
959+ <child>
960+ <object class="GtkCellRendererText" id="cell_proto"/>
961+ <attributes>
962+ <attribute name="text">0</attribute>
963+ </attributes>
964+ </child>
965+ </object>
966+ <packing>
967+ <property name="position">1</property>
968+ </packing>
969+ </child>
970+ </object>
971+ <packing>
972+ <property name="position">0</property>
973+ </packing>
974+ </child>
975+ </object>
976+ <packing>
977+ <property name="expand">False</property>
978+ <property name="position">1</property>
979+ </packing>
980+ </child>
981+ </object>
982+ <packing>
983+ <property name="position">0</property>
984+ </packing>
985+ </child>
986+ <child>
987+ <object class="GtkVBox" id="vbox20">
988+ <property name="visible">True</property>
989+ <property name="spacing">12</property>
990+ <child>
991+ <object class="GtkVBox" id="vbox21">
992+ <property name="spacing">6</property>
993+ <child>
994+ <object class="GtkButton" id="button_mirror_add">
995+ <property name="label">gtk-add</property>
996+ <property name="visible">True</property>
997+ <property name="can_focus">True</property>
998+ <property name="receives_default">False</property>
999+ <property name="use_stock">True</property>
1000+ <signal name="clicked" handler="on_button_mirror_add_clicked"/>
1001+ </object>
1002+ <packing>
1003+ <property name="expand">False</property>
1004+ <property name="fill">False</property>
1005+ <property name="position">0</property>
1006+ </packing>
1007+ </child>
1008+ <child>
1009+ <object class="GtkButton" id="button_mirror_edit">
1010+ <property name="label">gtk-edit</property>
1011+ <property name="visible">True</property>
1012+ <property name="sensitive">False</property>
1013+ <property name="can_focus">True</property>
1014+ <property name="receives_default">False</property>
1015+ <property name="use_stock">True</property>
1016+ <signal name="clicked" handler="on_button_mirror_edit_clicked"/>
1017+ </object>
1018+ <packing>
1019+ <property name="expand">False</property>
1020+ <property name="fill">False</property>
1021+ <property name="position">1</property>
1022+ </packing>
1023+ </child>
1024+ <child>
1025+ <object class="GtkButton" id="button_mirror_remove">
1026+ <property name="label">gtk-remove</property>
1027+ <property name="visible">True</property>
1028+ <property name="sensitive">False</property>
1029+ <property name="can_focus">True</property>
1030+ <property name="receives_default">False</property>
1031+ <property name="use_stock">True</property>
1032+ <signal name="clicked" handler="on_button_mirror_remove_clicked"/>
1033+ </object>
1034+ <packing>
1035+ <property name="expand">False</property>
1036+ <property name="fill">False</property>
1037+ <property name="position">2</property>
1038+ </packing>
1039+ </child>
1040+ </object>
1041+ <packing>
1042+ <property name="expand">False</property>
1043+ <property name="position">0</property>
1044+ </packing>
1045+ </child>
1046+ <child>
1047+ <object class="GtkButton" id="button_mirror_test">
1048+ <property name="label" translatable="yes">_Select Best Server</property>
1049+ <property name="visible">True</property>
1050+ <property name="can_focus">True</property>
1051+ <property name="receives_default">False</property>
1052+ <property name="tooltip_text" translatable="yes">Performs a connection test to find the best mirror for your location</property>
1053+ <property name="use_underline">True</property>
1054+ <signal name="clicked" handler="on_button_test_clicked"/>
1055+ </object>
1056+ <packing>
1057+ <property name="expand">False</property>
1058+ <property name="fill">False</property>
1059+ <property name="position">1</property>
1060+ </packing>
1061+ </child>
1062+ </object>
1063+ <packing>
1064+ <property name="expand">False</property>
1065+ <property name="position">1</property>
1066+ </packing>
1067+ </child>
1068+ </object>
1069+ <packing>
1070+ <property name="position">0</property>
1071+ </packing>
1072+ </child>
1073+ </object>
1074+ <packing>
1075+ <property name="position">1</property>
1076+ </packing>
1077+ </child>
1078+ <child internal-child="action_area">
1079+ <object class="GtkHButtonBox" id="dialog-action_area6">
1080+ <property name="visible">True</property>
1081+ <property name="layout_style">end</property>
1082+ <child>
1083+ <object class="GtkButton" id="cancelbutton2">
1084+ <property name="label">gtk-cancel</property>
1085+ <property name="visible">True</property>
1086+ <property name="can_focus">True</property>
1087+ <property name="can_default">True</property>
1088+ <property name="receives_default">False</property>
1089+ <property name="use_stock">True</property>
1090+ </object>
1091+ <packing>
1092+ <property name="expand">False</property>
1093+ <property name="fill">False</property>
1094+ <property name="position">0</property>
1095+ </packing>
1096+ </child>
1097+ <child>
1098+ <object class="GtkButton" id="button_mirror_choose">
1099+ <property name="label" translatable="yes">Choose _Server</property>
1100+ <property name="visible">True</property>
1101+ <property name="sensitive">False</property>
1102+ <property name="can_focus">True</property>
1103+ <property name="can_default">True</property>
1104+ <property name="receives_default">False</property>
1105+ <property name="use_underline">True</property>
1106+ </object>
1107+ <packing>
1108+ <property name="expand">False</property>
1109+ <property name="fill">False</property>
1110+ <property name="position">1</property>
1111+ </packing>
1112+ </child>
1113+ </object>
1114+ <packing>
1115+ <property name="expand">False</property>
1116+ <property name="pack_type">end</property>
1117+ <property name="position">0</property>
1118+ </packing>
1119+ </child>
1120+ </object>
1121+ </child>
1122+ <action-widgets>
1123+ <action-widget response="-6">cancelbutton2</action-widget>
1124+ <action-widget response="-5">button_mirror_choose</action-widget>
1125+ </action-widgets>
1126+ </object>
1127+ <object class="GtkDialog" id="dialog_mirror_test">
1128+ <property name="border_width">6</property>
1129+ <property name="resizable">False</property>
1130+ <property name="modal">True</property>
1131+ <property name="window_position">center-on-parent</property>
1132+ <property name="destroy_with_parent">True</property>
1133+ <property name="type_hint">dialog</property>
1134+ <property name="has_separator">False</property>
1135+ <signal name="delete_event" handler="on_dialog_mirror_test_delete_event"/>
1136+ <child internal-child="vbox">
1137+ <object class="GtkVBox" id="dialog-vbox7">
1138+ <property name="visible">True</property>
1139+ <property name="spacing">6</property>
1140+ <child>
1141+ <object class="GtkVBox" id="vbox22">
1142+ <property name="visible">True</property>
1143+ <property name="border_width">6</property>
1144+ <property name="spacing">12</property>
1145+ <child>
1146+ <object class="GtkLabel" id="label72">
1147+ <property name="visible">True</property>
1148+ <property name="label" translatable="yes">&lt;b&gt;&lt;big&gt;Testing download servers&lt;/big&gt;&lt;/b&gt;
1149+
1150+A series of tests will be done to find the best mirror for your location.</property>
1151+ <property name="use_markup">True</property>
1152+ <property name="wrap">True</property>
1153+ </object>
1154+ <packing>
1155+ <property name="expand">False</property>
1156+ <property name="fill">False</property>
1157+ <property name="position">0</property>
1158+ </packing>
1159+ </child>
1160+ <child>
1161+ <object class="GtkVBox" id="vbox23">
1162+ <property name="visible">True</property>
1163+ <property name="spacing">6</property>
1164+ <child>
1165+ <object class="GtkProgressBar" id="progressbar_test_mirror">
1166+ <property name="visible">True</property>
1167+ <property name="pulse_step">0.10000000149</property>
1168+ </object>
1169+ <packing>
1170+ <property name="expand">False</property>
1171+ <property name="fill">False</property>
1172+ <property name="position">0</property>
1173+ </packing>
1174+ </child>
1175+ <child>
1176+ <object class="GtkLabel" id="label_test_mirror">
1177+ <property name="visible">True</property>
1178+ <property name="xalign">0</property>
1179+ <property name="use_markup">True</property>
1180+ <property name="ellipsize">end</property>
1181+ </object>
1182+ <packing>
1183+ <property name="expand">False</property>
1184+ <property name="fill">False</property>
1185+ <property name="position">1</property>
1186+ </packing>
1187+ </child>
1188+ </object>
1189+ <packing>
1190+ <property name="position">1</property>
1191+ </packing>
1192+ </child>
1193+ </object>
1194+ <packing>
1195+ <property name="position">1</property>
1196+ </packing>
1197+ </child>
1198+ <child internal-child="action_area">
1199+ <object class="GtkHButtonBox" id="dialog-action_area7">
1200+ <property name="visible">True</property>
1201+ <property name="layout_style">end</property>
1202+ <child>
1203+ <object class="GtkButton" id="button_test_cancel">
1204+ <property name="label">gtk-cancel</property>
1205+ <property name="visible">True</property>
1206+ <property name="can_focus">True</property>
1207+ <property name="can_default">True</property>
1208+ <property name="receives_default">False</property>
1209+ <property name="use_stock">True</property>
1210+ <signal name="clicked" handler="on_button_cancel_test_clicked"/>
1211+ </object>
1212+ <packing>
1213+ <property name="expand">False</property>
1214+ <property name="fill">False</property>
1215+ <property name="position">0</property>
1216+ </packing>
1217+ </child>
1218+ </object>
1219+ <packing>
1220+ <property name="expand">False</property>
1221+ <property name="pack_type">end</property>
1222+ <property name="position">0</property>
1223+ </packing>
1224+ </child>
1225+ </object>
1226+ </child>
1227+ <action-widgets>
1228+ <action-widget response="-6">button_test_cancel</action-widget>
1229+ </action-widgets>
1230+ </object>
1231+</interface>
1232
1233=== added file 'data/gtkbuilder/dialogs.ui'
1234--- data/gtkbuilder/dialogs.ui 1970-01-01 00:00:00 +0000
1235+++ data/gtkbuilder/dialogs.ui 2009-10-12 04:39:10 +0000
1236@@ -0,0 +1,246 @@
1237+<?xml version="1.0"?>
1238+<interface>
1239+ <!-- interface-requires gtk+ 2.12 -->
1240+ <!-- interface-naming-policy toplevel-contextual -->
1241+ <object class="GtkDialog" id="dialog_cdrom_progress">
1242+ <property name="border_width">6</property>
1243+ <property name="title" translatable="yes">Scanning CD-ROM</property>
1244+ <property name="resizable">False</property>
1245+ <property name="modal">True</property>
1246+ <property name="type_hint">dialog</property>
1247+ <property name="has_separator">False</property>
1248+ <child internal-child="vbox">
1249+ <object class="GtkVBox" id="dialog-vbox4">
1250+ <property name="visible">True</property>
1251+ <property name="spacing">12</property>
1252+ <child>
1253+ <object class="GtkVBox" id="vbox18">
1254+ <property name="visible">True</property>
1255+ <property name="border_width">6</property>
1256+ <property name="spacing">12</property>
1257+ <child>
1258+ <object class="GtkLabel" id="label_cdrom">
1259+ <property name="visible">True</property>
1260+ <property name="wrap">True</property>
1261+ </object>
1262+ <packing>
1263+ <property name="expand">False</property>
1264+ <property name="fill">False</property>
1265+ <property name="position">0</property>
1266+ </packing>
1267+ </child>
1268+ <child>
1269+ <object class="GtkProgressBar" id="progressbar_cdrom">
1270+ <property name="width_request">350</property>
1271+ <property name="visible">True</property>
1272+ <property name="pulse_step">0.10000000149</property>
1273+ </object>
1274+ <packing>
1275+ <property name="expand">False</property>
1276+ <property name="fill">False</property>
1277+ <property name="position">1</property>
1278+ </packing>
1279+ </child>
1280+ <child>
1281+ <placeholder/>
1282+ </child>
1283+ </object>
1284+ <packing>
1285+ <property name="position">1</property>
1286+ </packing>
1287+ </child>
1288+ <child internal-child="action_area">
1289+ <object class="GtkHButtonBox" id="dialog-action_area4">
1290+ <property name="visible">True</property>
1291+ <property name="layout_style">end</property>
1292+ <child>
1293+ <object class="GtkButton" id="button_cdrom_close">
1294+ <property name="label">gtk-close</property>
1295+ <property name="visible">True</property>
1296+ <property name="can_focus">True</property>
1297+ <property name="can_default">True</property>
1298+ <property name="receives_default">False</property>
1299+ <property name="use_stock">True</property>
1300+ <signal name="clicked" handler="on_button_cdrom_close_clicked"/>
1301+ </object>
1302+ <packing>
1303+ <property name="expand">False</property>
1304+ <property name="fill">False</property>
1305+ <property name="position">0</property>
1306+ </packing>
1307+ </child>
1308+ </object>
1309+ <packing>
1310+ <property name="expand">False</property>
1311+ <property name="pack_type">end</property>
1312+ <property name="position">0</property>
1313+ </packing>
1314+ </child>
1315+ </object>
1316+ </child>
1317+ <action-widgets>
1318+ <action-widget response="-7">button_cdrom_close</action-widget>
1319+ </action-widgets>
1320+ </object>
1321+ <object class="GtkTreeStore" id="model_sort_model">
1322+ <columns>
1323+ <!-- column-name col_uri -->
1324+ <column type="gchararray"/>
1325+ <!-- column-name col_separator -->
1326+ <column type="gboolean"/>
1327+ <!-- column-name col_custom -->
1328+ <column type="gboolean"/>
1329+ <!-- column-name col_mirror -->
1330+ <column type="PyObject"/>
1331+ </columns>
1332+ </object>
1333+ <object class="GtkListStore" id="model_proto">
1334+ <columns>
1335+ <!-- column-name col_proto -->
1336+ <column type="gchararray"/>
1337+ <!-- column-name col_dir -->
1338+ <column type="gchararray"/>
1339+ </columns>
1340+ </object>
1341+ <object class="GtkTreeModelSort" id="model_sort">
1342+ <property name="model">model_sort_model</property>
1343+ </object>
1344+ <object class="GtkDialog" id="dialog_add_sources_list">
1345+ <property name="border_width">6</property>
1346+ <property name="resizable">False</property>
1347+ <property name="type_hint">dialog</property>
1348+ <property name="has_separator">False</property>
1349+ <child internal-child="vbox">
1350+ <object class="GtkVBox" id="dialog-vbox1">
1351+ <property name="visible">True</property>
1352+ <property name="spacing">12</property>
1353+ <child>
1354+ <object class="GtkHBox" id="hbox12">
1355+ <property name="visible">True</property>
1356+ <property name="border_width">6</property>
1357+ <property name="spacing">12</property>
1358+ <child>
1359+ <object class="GtkImage" id="image_sources_list">
1360+ <property name="visible">True</property>
1361+ <property name="xalign">0</property>
1362+ <property name="yalign">0</property>
1363+ <property name="stock">gtk-dialog-question</property>
1364+ <property name="icon-size">6</property>
1365+ </object>
1366+ <packing>
1367+ <property name="expand">False</property>
1368+ <property name="position">0</property>
1369+ </packing>
1370+ </child>
1371+ <child>
1372+ <object class="GtkVBox" id="vbox1">
1373+ <property name="visible">True</property>
1374+ <property name="spacing">12</property>
1375+ <child>
1376+ <object class="GtkLabel" id="label_sources">
1377+ <property name="visible">True</property>
1378+ <property name="xalign">0</property>
1379+ <property name="wrap">True</property>
1380+ </object>
1381+ <packing>
1382+ <property name="expand">False</property>
1383+ <property name="fill">False</property>
1384+ <property name="position">0</property>
1385+ </packing>
1386+ </child>
1387+ <child>
1388+ <object class="GtkScrolledWindow" id="scrolled_window">
1389+ <property name="height_request">200</property>
1390+ <property name="visible">True</property>
1391+ <property name="can_focus">True</property>
1392+ <property name="hscrollbar_policy">automatic</property>
1393+ <property name="vscrollbar_policy">automatic</property>
1394+ <property name="shadow_type">in</property>
1395+ <child>
1396+ <object class="GtkTreeView" id="treeview_sources">
1397+ <property name="visible">True</property>
1398+ <property name="can_focus">True</property>
1399+ <property name="headers_visible">False</property>
1400+ <property name="rules_hint">True</property>
1401+ </object>
1402+ </child>
1403+ </object>
1404+ <packing>
1405+ <property name="position">1</property>
1406+ </packing>
1407+ </child>
1408+ </object>
1409+ <packing>
1410+ <property name="position">1</property>
1411+ </packing>
1412+ </child>
1413+ </object>
1414+ <packing>
1415+ <property name="position">1</property>
1416+ </packing>
1417+ </child>
1418+ <child internal-child="action_area">
1419+ <object class="GtkHButtonBox" id="dialog-action_area1">
1420+ <property name="visible">True</property>
1421+ <property name="layout_style">end</property>
1422+ <child>
1423+ <object class="GtkButton" id="button_replace">
1424+ <property name="label" translatable="yes">_Replace</property>
1425+ <property name="visible">True</property>
1426+ <property name="can_focus">True</property>
1427+ <property name="can_default">True</property>
1428+ <property name="receives_default">False</property>
1429+ <property name="use_underline">True</property>
1430+ </object>
1431+ <packing>
1432+ <property name="expand">False</property>
1433+ <property name="fill">False</property>
1434+ <property name="position">0</property>
1435+ </packing>
1436+ </child>
1437+ <child>
1438+ <object class="GtkButton" id="button_cancel">
1439+ <property name="label">gtk-cancel</property>
1440+ <property name="visible">True</property>
1441+ <property name="can_focus">True</property>
1442+ <property name="can_default">True</property>
1443+ <property name="receives_default">False</property>
1444+ <property name="use_stock">True</property>
1445+ </object>
1446+ <packing>
1447+ <property name="expand">False</property>
1448+ <property name="fill">False</property>
1449+ <property name="position">1</property>
1450+ </packing>
1451+ </child>
1452+ <child>
1453+ <object class="GtkButton" id="button_add">
1454+ <property name="label">gtk-add</property>
1455+ <property name="visible">True</property>
1456+ <property name="can_focus">True</property>
1457+ <property name="can_default">True</property>
1458+ <property name="receives_default">False</property>
1459+ <property name="use_stock">True</property>
1460+ </object>
1461+ <packing>
1462+ <property name="expand">False</property>
1463+ <property name="fill">False</property>
1464+ <property name="position">2</property>
1465+ </packing>
1466+ </child>
1467+ </object>
1468+ <packing>
1469+ <property name="expand">False</property>
1470+ <property name="pack_type">end</property>
1471+ <property name="position">0</property>
1472+ </packing>
1473+ </child>
1474+ </object>
1475+ </child>
1476+ <action-widgets>
1477+ <action-widget response="1">button_replace</action-widget>
1478+ <action-widget response="-6">button_cancel</action-widget>
1479+ <action-widget response="2">button_add</action-widget>
1480+ </action-widgets>
1481+ </object>
1482+</interface>
1483
1484=== added file 'data/gtkbuilder/main.ui'
1485--- data/gtkbuilder/main.ui 1970-01-01 00:00:00 +0000
1486+++ data/gtkbuilder/main.ui 2009-10-12 04:39:10 +0000
1487@@ -0,0 +1,1172 @@
1488+<?xml version="1.0"?>
1489+<interface>
1490+ <!-- interface-requires gtk+ 2.12 -->
1491+ <!-- interface-naming-policy toplevel-contextual -->
1492+ <object class="GtkListStore" id="model1">
1493+ <columns>
1494+ <!-- column-name gchararray -->
1495+ <column type="gchararray"/>
1496+ </columns>
1497+ <data>
1498+ <row>
1499+ <col id="0" translatable="yes">Never</col>
1500+ </row>
1501+ <row>
1502+ <col id="0" translatable="yes">Normal releases</col>
1503+ </row>
1504+ <row>
1505+ <col id="0" translatable="yes">Long term support releases only</col>
1506+ </row>
1507+ </data>
1508+ </object>
1509+ <object class="GtkTextBuffer" id="textbuffer1">
1510+ <property name="text">To install from a CD-ROM or DVD, insert the medium into the drive.</property>
1511+ </object>
1512+ <object class="GtkListStore" id="server_store">
1513+ <columns>
1514+ <!-- column-name col1 -->
1515+ <column type="gchararray"/>
1516+ <!-- column-name col2 -->
1517+ <column type="gchararray"/>
1518+ <!-- column-name col3 -->
1519+ <column type="gboolean"/>
1520+ </columns>
1521+ </object>
1522+ <object class="GtkListStore" id="cdrom_store">
1523+ <columns>
1524+ <!-- column-name col1 -->
1525+ <column type="gboolean"/>
1526+ <!-- column-name col2 -->
1527+ <column type="gchararray"/>
1528+ <!-- column-name col3 -->
1529+ <column type="PyObject"/>
1530+ <!-- column-name col4 -->
1531+ <column type="gboolean"/>
1532+ <!-- column-name col5 -->
1533+ <column type="gboolean"/>
1534+ </columns>
1535+ </object>
1536+ <object class="GtkListStore" id="keys_store">
1537+ <columns>
1538+ <!-- column-name key -->
1539+ <column type="gchararray"/>
1540+ </columns>
1541+ </object>
1542+ <object class="GtkListStore" id="source_store">
1543+ <columns>
1544+ <!-- column-name col_active -->
1545+ <column type="gboolean"/>
1546+ <!-- column-name col2 -->
1547+ <column type="gchararray"/>
1548+ <!-- column-name col3 -->
1549+ <column type="PyObject"/>
1550+ <!-- column-name col4 -->
1551+ <column type="gboolean"/>
1552+ <!-- column-name col5 -->
1553+ <column type="gboolean"/>
1554+ </columns>
1555+ </object>
1556+ <object class="GtkWindow" id="window_main">
1557+ <property name="border_width">6</property>
1558+ <property name="title" translatable="yes">Software Sources</property>
1559+ <property name="window_position">center</property>
1560+ <signal name="delete_event" handler="on_delete_event"/>
1561+ <child>
1562+ <object class="GtkVBox" id="vbox1">
1563+ <property name="visible">True</property>
1564+ <child>
1565+ <object class="GtkNotebook" id="notebook_main">
1566+ <property name="visible">True</property>
1567+ <property name="can_focus">True</property>
1568+ <property name="border_width">6</property>
1569+ <child>
1570+ <object class="GtkVBox" id="vbox5">
1571+ <property name="visible">True</property>
1572+ <property name="border_width">12</property>
1573+ <property name="spacing">18</property>
1574+ <child>
1575+ <object class="GtkFrame" id="frame4">
1576+ <property name="visible">True</property>
1577+ <property name="label_xalign">0</property>
1578+ <property name="shadow_type">none</property>
1579+ <child>
1580+ <object class="GtkAlignment" id="alignment5">
1581+ <property name="visible">True</property>
1582+ <property name="top_padding">6</property>
1583+ <property name="left_padding">12</property>
1584+ <child>
1585+ <object class="GtkVBox" id="vbox10">
1586+ <property name="visible">True</property>
1587+ <property name="spacing">18</property>
1588+ <child>
1589+ <object class="GtkVBox" id="vbox13">
1590+ <property name="visible">True</property>
1591+ <property name="spacing">6</property>
1592+ <child>
1593+ <object class="GtkVBox" id="vbox21">
1594+ <property name="visible">True</property>
1595+ <property name="spacing">6</property>
1596+ <child>
1597+ <object class="GtkVBox" id="vbox_dist_comps">
1598+ <property name="visible">True</property>
1599+ <property name="spacing">6</property>
1600+ <child>
1601+ <placeholder/>
1602+ </child>
1603+ </object>
1604+ <packing>
1605+ <property name="position">0</property>
1606+ </packing>
1607+ </child>
1608+ <child>
1609+ <object class="GtkCheckButton" id="checkbutton_source_code">
1610+ <property name="label" translatable="yes">Source code</property>
1611+ <property name="visible">True</property>
1612+ <property name="can_focus">True</property>
1613+ <property name="receives_default">False</property>
1614+ <property name="use_underline">True</property>
1615+ <property name="draw_indicator">True</property>
1616+ <signal name="toggled" handler="on_checkbutton_source_code_toggled"/>
1617+ </object>
1618+ <packing>
1619+ <property name="expand">False</property>
1620+ <property name="fill">False</property>
1621+ <property name="position">1</property>
1622+ </packing>
1623+ </child>
1624+ </object>
1625+ <packing>
1626+ <property name="position">0</property>
1627+ </packing>
1628+ </child>
1629+ <child>
1630+ <object class="GtkHBox" id="hbox6">
1631+ <property name="visible">True</property>
1632+ <property name="spacing">12</property>
1633+ <child>
1634+ <object class="GtkLabel" id="label15">
1635+ <property name="visible">True</property>
1636+ <property name="label" translatable="yes">Download from:</property>
1637+ </object>
1638+ <packing>
1639+ <property name="expand">False</property>
1640+ <property name="fill">False</property>
1641+ <property name="position">0</property>
1642+ </packing>
1643+ </child>
1644+ <child>
1645+ <object class="GtkComboBox" id="combobox_server">
1646+ <property name="visible">True</property>
1647+ <property name="model">server_store</property>
1648+ <signal name="changed" handler="on_combobox_server_changed"/>
1649+ <child>
1650+ <object class="GtkCellRendererText" id="cell_server"/>
1651+ <attributes>
1652+ <attribute name="text">0</attribute>
1653+ </attributes>
1654+ </child>
1655+ </object>
1656+ <packing>
1657+ <property name="position">1</property>
1658+ </packing>
1659+ </child>
1660+ </object>
1661+ <packing>
1662+ <property name="position">1</property>
1663+ </packing>
1664+ </child>
1665+ </object>
1666+ <packing>
1667+ <property name="position">0</property>
1668+ </packing>
1669+ </child>
1670+ </object>
1671+ </child>
1672+ </object>
1673+ </child>
1674+ <child type="label">
1675+ <object class="GtkLabel" id="label_dist_name3">
1676+ <property name="visible">True</property>
1677+ <property name="label" translatable="yes">&lt;b&gt;Downloadable from the Internet&lt;/b&gt;</property>
1678+ <property name="use_markup">True</property>
1679+ </object>
1680+ </child>
1681+ </object>
1682+ <packing>
1683+ <property name="expand">False</property>
1684+ <property name="position">0</property>
1685+ </packing>
1686+ </child>
1687+ <child>
1688+ <object class="GtkFrame" id="frame7">
1689+ <property name="visible">True</property>
1690+ <property name="label_xalign">0</property>
1691+ <property name="shadow_type">none</property>
1692+ <child>
1693+ <object class="GtkAlignment" id="alignment8">
1694+ <property name="visible">True</property>
1695+ <property name="top_padding">6</property>
1696+ <property name="left_padding">12</property>
1697+ <child>
1698+ <object class="GtkVBox" id="vbox11">
1699+ <property name="visible">True</property>
1700+ <property name="spacing">6</property>
1701+ <child>
1702+ <object class="GtkVBox" id="vbox22">
1703+ <property name="visible">True</property>
1704+ <child>
1705+ <object class="GtkScrolledWindow" id="scrolledwindow_no_cd">
1706+ <property name="visible">True</property>
1707+ <property name="can_focus">True</property>
1708+ <property name="hscrollbar_policy">automatic</property>
1709+ <property name="vscrollbar_policy">automatic</property>
1710+ <property name="shadow_type">in</property>
1711+ <child>
1712+ <object class="GtkTextView" id="textview_no_cd">
1713+ <property name="visible">True</property>
1714+ <property name="sensitive">False</property>
1715+ <property name="can_focus">True</property>
1716+ <property name="pixels_above_lines">6</property>
1717+ <property name="editable">False</property>
1718+ <property name="wrap_mode">word</property>
1719+ <property name="left_margin">6</property>
1720+ <property name="right_margin">6</property>
1721+ <property name="cursor_visible">False</property>
1722+ <property name="buffer">textbuffer1</property>
1723+ </object>
1724+ </child>
1725+ </object>
1726+ <packing>
1727+ <property name="position">0</property>
1728+ </packing>
1729+ </child>
1730+ <child>
1731+ <object class="GtkScrolledWindow" id="scrolledwindow_cd">
1732+ <property name="height_request">75</property>
1733+ <property name="visible">True</property>
1734+ <property name="can_focus">True</property>
1735+ <property name="hscrollbar_policy">automatic</property>
1736+ <property name="vscrollbar_policy">automatic</property>
1737+ <property name="shadow_type">in</property>
1738+ <child>
1739+ <object class="GtkTreeView" id="treeview_cdroms">
1740+ <property name="height_request">109</property>
1741+ <property name="visible">True</property>
1742+ <property name="can_focus">True</property>
1743+ <property name="model">cdrom_store</property>
1744+ <property name="headers_visible">False</property>
1745+ <property name="rules_hint">True</property>
1746+ <child>
1747+ <object class="GtkTreeViewColumn" id="col_active_cd">
1748+ <property name="title">column</property>
1749+ <child>
1750+ <object class="GtkCellRendererToggle" id="cell_toggle_cd">
1751+ <property name="xpad">2</property>
1752+ <property name="ypad">2</property>
1753+ </object>
1754+ <attributes>
1755+ <attribute name="active">0</attribute>
1756+ </attributes>
1757+ </child>
1758+ </object>
1759+ </child>
1760+ <child>
1761+ <object class="GtkTreeViewColumn" id="col_desc_cd">
1762+ <property name="title">column</property>
1763+ <child>
1764+ <object class="GtkCellRendererText" id="cell_desc_cd">
1765+ <property name="xpad">2</property>
1766+ <property name="ypad">2</property>
1767+ </object>
1768+ <attributes>
1769+ <attribute name="markup">1</attribute>
1770+ </attributes>
1771+ </child>
1772+ </object>
1773+ </child>
1774+ </object>
1775+ </child>
1776+ </object>
1777+ <packing>
1778+ <property name="position">1</property>
1779+ </packing>
1780+ </child>
1781+ </object>
1782+ <packing>
1783+ <property name="position">0</property>
1784+ </packing>
1785+ </child>
1786+ </object>
1787+ </child>
1788+ </object>
1789+ </child>
1790+ <child type="label">
1791+ <object class="GtkLabel" id="label14">
1792+ <property name="visible">True</property>
1793+ <property name="label" translatable="yes">&lt;b&gt;Installable from CD-ROM/DVD&lt;/b&gt;</property>
1794+ <property name="use_markup">True</property>
1795+ </object>
1796+ </child>
1797+ </object>
1798+ <packing>
1799+ <property name="position">1</property>
1800+ </packing>
1801+ </child>
1802+ </object>
1803+ </child>
1804+ <child type="tab">
1805+ <object class="GtkLabel" id="label_dist_name">
1806+ <property name="visible">True</property>
1807+ </object>
1808+ <packing>
1809+ <property name="tab_fill">False</property>
1810+ </packing>
1811+ </child>
1812+ <child>
1813+ <object class="GtkVBox" id="vbox2">
1814+ <property name="visible">True</property>
1815+ <property name="border_width">12</property>
1816+ <property name="spacing">6</property>
1817+ <child>
1818+ <object class="GtkScrolledWindow" id="scrolledwindow1">
1819+ <property name="visible">True</property>
1820+ <property name="can_focus">True</property>
1821+ <property name="hscrollbar_policy">automatic</property>
1822+ <property name="vscrollbar_policy">automatic</property>
1823+ <property name="shadow_type">in</property>
1824+ <child>
1825+ <object class="GtkTreeView" id="treeview_sources">
1826+ <property name="visible">True</property>
1827+ <property name="can_focus">True</property>
1828+ <property name="model">source_store</property>
1829+ <property name="headers_visible">False</property>
1830+ <property name="rules_hint">True</property>
1831+ <signal name="cursor_changed" handler="on_treeview_sources_cursor_changed"/>
1832+ <signal name="row_activated" handler="on_channel_activated"/>
1833+ <signal name="drag_data_received" handler="on_sources_drag_data_received"/>
1834+ <child>
1835+ <object class="GtkTreeViewColumn" id="col_active_isv">
1836+ <property name="title">_Active</property>
1837+ <child>
1838+ <object class="GtkCellRendererToggle" id="cell_toggle_isv">
1839+ <property name="xpad">2</property>
1840+ <property name="ypad">2</property>
1841+ </object>
1842+ <attributes>
1843+ <attribute name="active">0</attribute>
1844+ </attributes>
1845+ </child>
1846+ </object>
1847+ </child>
1848+ <child>
1849+ <object class="GtkTreeViewColumn" id="col_desc_isv">
1850+ <property name="max_width">1000</property>
1851+ <property name="title">column</property>
1852+ <child>
1853+ <object class="GtkCellRendererText" id="cell_desc_isv">
1854+ <property name="xpad">2</property>
1855+ <property name="ypad">2</property>
1856+ </object>
1857+ <attributes>
1858+ <attribute name="markup">1</attribute>
1859+ </attributes>
1860+ </child>
1861+ </object>
1862+ </child>
1863+ </object>
1864+ </child>
1865+ </object>
1866+ <packing>
1867+ <property name="position">0</property>
1868+ </packing>
1869+ </child>
1870+ <child>
1871+ <object class="GtkHBox" id="hbox8">
1872+ <property name="visible">True</property>
1873+ <property name="spacing">18</property>
1874+ <child>
1875+ <object class="GtkHBox" id="hbox9">
1876+ <property name="visible">True</property>
1877+ <property name="spacing">6</property>
1878+ <property name="homogeneous">True</property>
1879+ <child>
1880+ <object class="GtkButton" id="button_add">
1881+ <property name="visible">True</property>
1882+ <property name="can_focus">True</property>
1883+ <property name="can_default">True</property>
1884+ <property name="receives_default">False</property>
1885+ <signal name="clicked" handler="on_add_clicked"/>
1886+ <child>
1887+ <object class="GtkAlignment" id="alignment12">
1888+ <property name="visible">True</property>
1889+ <property name="xscale">0</property>
1890+ <property name="yscale">0</property>
1891+ <child>
1892+ <object class="GtkHBox" id="hbox13">
1893+ <property name="visible">True</property>
1894+ <property name="spacing">2</property>
1895+ <child>
1896+ <object class="GtkImage" id="image3">
1897+ <property name="visible">True</property>
1898+ <property name="stock">gtk-add</property>
1899+ </object>
1900+ <packing>
1901+ <property name="expand">False</property>
1902+ <property name="fill">False</property>
1903+ <property name="position">0</property>
1904+ </packing>
1905+ </child>
1906+ <child>
1907+ <object class="GtkLabel" id="label22">
1908+ <property name="visible">True</property>
1909+ <property name="label" translatable="yes">Add...</property>
1910+ <property name="use_underline">True</property>
1911+ </object>
1912+ <packing>
1913+ <property name="expand">False</property>
1914+ <property name="fill">False</property>
1915+ <property name="position">1</property>
1916+ </packing>
1917+ </child>
1918+ </object>
1919+ </child>
1920+ </object>
1921+ </child>
1922+ </object>
1923+ <packing>
1924+ <property name="expand">False</property>
1925+ <property name="position">0</property>
1926+ </packing>
1927+ </child>
1928+ <child>
1929+ <object class="GtkButton" id="button_edit">
1930+ <property name="visible">True</property>
1931+ <property name="can_focus">True</property>
1932+ <property name="can_default">True</property>
1933+ <property name="receives_default">False</property>
1934+ <signal name="clicked" handler="on_edit_clicked"/>
1935+ <child>
1936+ <object class="GtkAlignment" id="alignment13">
1937+ <property name="visible">True</property>
1938+ <property name="xscale">0</property>
1939+ <property name="yscale">0</property>
1940+ <child>
1941+ <object class="GtkHBox" id="hbox14">
1942+ <property name="visible">True</property>
1943+ <property name="spacing">2</property>
1944+ <child>
1945+ <object class="GtkImage" id="image4">
1946+ <property name="visible">True</property>
1947+ <property name="stock">gtk-edit</property>
1948+ </object>
1949+ <packing>
1950+ <property name="expand">False</property>
1951+ <property name="fill">False</property>
1952+ <property name="position">0</property>
1953+ </packing>
1954+ </child>
1955+ <child>
1956+ <object class="GtkLabel" id="label23">
1957+ <property name="visible">True</property>
1958+ <property name="label" translatable="yes">Edit...</property>
1959+ <property name="use_underline">True</property>
1960+ </object>
1961+ <packing>
1962+ <property name="expand">False</property>
1963+ <property name="fill">False</property>
1964+ <property name="position">1</property>
1965+ </packing>
1966+ </child>
1967+ </object>
1968+ </child>
1969+ </object>
1970+ </child>
1971+ </object>
1972+ <packing>
1973+ <property name="expand">False</property>
1974+ <property name="position">1</property>
1975+ </packing>
1976+ </child>
1977+ <child>
1978+ <object class="GtkButton" id="button_remove">
1979+ <property name="label">gtk-remove</property>
1980+ <property name="visible">True</property>
1981+ <property name="can_focus">True</property>
1982+ <property name="can_default">True</property>
1983+ <property name="receives_default">False</property>
1984+ <property name="use_stock">True</property>
1985+ <signal name="clicked" handler="on_remove_clicked"/>
1986+ </object>
1987+ <packing>
1988+ <property name="expand">False</property>
1989+ <property name="position">2</property>
1990+ </packing>
1991+ </child>
1992+ </object>
1993+ <packing>
1994+ <property name="expand">False</property>
1995+ <property name="position">0</property>
1996+ </packing>
1997+ </child>
1998+ <child>
1999+ <object class="GtkButton" id="button_add_cdrom">
2000+ <property name="visible">True</property>
2001+ <property name="can_focus">True</property>
2002+ <property name="receives_default">False</property>
2003+ <signal name="clicked" handler="on_button_add_cdrom_clicked"/>
2004+ <child>
2005+ <object class="GtkAlignment" id="alignment14">
2006+ <property name="visible">True</property>
2007+ <property name="xscale">0</property>
2008+ <property name="yscale">0</property>
2009+ <child>
2010+ <object class="GtkHBox" id="hbox15">
2011+ <property name="visible">True</property>
2012+ <property name="spacing">2</property>
2013+ <child>
2014+ <object class="GtkImage" id="image5">
2015+ <property name="visible">True</property>
2016+ <property name="stock">gtk-cdrom</property>
2017+ </object>
2018+ <packing>
2019+ <property name="expand">False</property>
2020+ <property name="fill">False</property>
2021+ <property name="position">0</property>
2022+ </packing>
2023+ </child>
2024+ <child>
2025+ <object class="GtkLabel" id="label24">
2026+ <property name="visible">True</property>
2027+ <property name="label" translatable="yes">Add CD-ROM...</property>
2028+ <property name="use_underline">True</property>
2029+ </object>
2030+ <packing>
2031+ <property name="expand">False</property>
2032+ <property name="fill">False</property>
2033+ <property name="position">1</property>
2034+ </packing>
2035+ </child>
2036+ </object>
2037+ </child>
2038+ </object>
2039+ </child>
2040+ </object>
2041+ <packing>
2042+ <property name="expand">False</property>
2043+ <property name="fill">False</property>
2044+ <property name="pack_type">end</property>
2045+ <property name="position">1</property>
2046+ </packing>
2047+ </child>
2048+ </object>
2049+ <packing>
2050+ <property name="expand">False</property>
2051+ <property name="position">1</property>
2052+ </packing>
2053+ </child>
2054+ </object>
2055+ <packing>
2056+ <property name="position">1</property>
2057+ </packing>
2058+ </child>
2059+ <child type="tab">
2060+ <object class="GtkLabel" id="label1">
2061+ <property name="visible">True</property>
2062+ <property name="label" translatable="yes">Other Software</property>
2063+ </object>
2064+ <packing>
2065+ <property name="position">1</property>
2066+ <property name="tab_fill">False</property>
2067+ </packing>
2068+ </child>
2069+ <child>
2070+ <object class="GtkVBox" id="vbox8">
2071+ <property name="visible">True</property>
2072+ <property name="border_width">12</property>
2073+ <property name="spacing">18</property>
2074+ <child>
2075+ <object class="GtkFrame" id="frame_children">
2076+ <property name="visible">True</property>
2077+ <property name="label_xalign">0</property>
2078+ <property name="shadow_type">none</property>
2079+ <child>
2080+ <object class="GtkAlignment" id="alignment7">
2081+ <property name="visible">True</property>
2082+ <property name="top_padding">6</property>
2083+ <property name="left_padding">12</property>
2084+ <child>
2085+ <object class="GtkVBox" id="vbox_updates">
2086+ <property name="visible">True</property>
2087+ <property name="spacing">6</property>
2088+ <child>
2089+ <placeholder/>
2090+ </child>
2091+ <child>
2092+ <placeholder/>
2093+ </child>
2094+ <child>
2095+ <placeholder/>
2096+ </child>
2097+ </object>
2098+ </child>
2099+ </object>
2100+ </child>
2101+ <child type="label">
2102+ <object class="GtkLabel" id="label_updates">
2103+ <property name="visible">True</property>
2104+ <property name="use_markup">True</property>
2105+ </object>
2106+ </child>
2107+ </object>
2108+ <packing>
2109+ <property name="expand">False</property>
2110+ <property name="position">0</property>
2111+ </packing>
2112+ </child>
2113+ <child>
2114+ <object class="GtkFrame" id="frame2">
2115+ <property name="visible">True</property>
2116+ <property name="label_xalign">0</property>
2117+ <property name="shadow_type">none</property>
2118+ <child>
2119+ <object class="GtkAlignment" id="alignment2">
2120+ <property name="visible">True</property>
2121+ <property name="top_padding">6</property>
2122+ <property name="left_padding">12</property>
2123+ <child>
2124+ <object class="GtkVBox" id="vbox3">
2125+ <property name="visible">True</property>
2126+ <property name="spacing">6</property>
2127+ <child>
2128+ <object class="GtkHBox" id="hbox2">
2129+ <property name="visible">True</property>
2130+ <property name="spacing">6</property>
2131+ <child>
2132+ <object class="GtkCheckButton" id="checkbutton_auto_update">
2133+ <property name="label" translatable="yes">Chec_k for updates:</property>
2134+ <property name="visible">True</property>
2135+ <property name="can_focus">True</property>
2136+ <property name="receives_default">False</property>
2137+ <property name="use_underline">True</property>
2138+ <property name="draw_indicator">True</property>
2139+ <signal name="toggled" handler="on_auto_update_toggled"/>
2140+ </object>
2141+ <packing>
2142+ <property name="expand">False</property>
2143+ <property name="position">0</property>
2144+ </packing>
2145+ </child>
2146+ <child>
2147+ <placeholder/>
2148+ </child>
2149+ </object>
2150+ <packing>
2151+ <property name="expand">False</property>
2152+ <property name="fill">False</property>
2153+ <property name="position">0</property>
2154+ </packing>
2155+ </child>
2156+ <child>
2157+ <object class="GtkHBox" id="hbox7">
2158+ <property name="visible">True</property>
2159+ <child>
2160+ <object class="GtkLabel" id="label13">
2161+ <property name="visible">True</property>
2162+ <property name="label" translatable="yes"> </property>
2163+ </object>
2164+ <packing>
2165+ <property name="expand">False</property>
2166+ <property name="fill">False</property>
2167+ <property name="position">0</property>
2168+ </packing>
2169+ </child>
2170+ <child>
2171+ <object class="GtkVBox" id="vbox_auto_updates">
2172+ <property name="visible">True</property>
2173+ <property name="sensitive">False</property>
2174+ <property name="spacing">6</property>
2175+ <child>
2176+ <object class="GtkRadioButton" id="radiobutton_updates_inst_sec">
2177+ <property name="label" translatable="yes">Install _security updates without confirmation</property>
2178+ <property name="visible">True</property>
2179+ <property name="can_focus">True</property>
2180+ <property name="receives_default">False</property>
2181+ <property name="use_underline">True</property>
2182+ <property name="draw_indicator">True</property>
2183+ <signal name="toggled" handler="set_update_automation_level"/>
2184+ </object>
2185+ <packing>
2186+ <property name="expand">False</property>
2187+ <property name="fill">False</property>
2188+ <property name="position">0</property>
2189+ </packing>
2190+ </child>
2191+ <child>
2192+ <object class="GtkRadioButton" id="radiobutton_updates_download">
2193+ <property name="label" translatable="yes">_Download all updates in the background</property>
2194+ <property name="visible">True</property>
2195+ <property name="can_focus">True</property>
2196+ <property name="receives_default">False</property>
2197+ <property name="use_underline">True</property>
2198+ <property name="draw_indicator">True</property>
2199+ <property name="group">radiobutton_updates_inst_sec</property>
2200+ <signal name="toggled" handler="set_update_automation_level"/>
2201+ </object>
2202+ <packing>
2203+ <property name="expand">False</property>
2204+ <property name="fill">False</property>
2205+ <property name="position">1</property>
2206+ </packing>
2207+ </child>
2208+ <child>
2209+ <object class="GtkRadioButton" id="radiobutton_updates_notify">
2210+ <property name="label" translatable="yes">Only _notify about available updates</property>
2211+ <property name="visible">True</property>
2212+ <property name="can_focus">True</property>
2213+ <property name="receives_default">False</property>
2214+ <property name="use_underline">True</property>
2215+ <property name="draw_indicator">True</property>
2216+ <property name="group">radiobutton_updates_inst_sec</property>
2217+ <signal name="toggled" handler="set_update_automation_level"/>
2218+ </object>
2219+ <packing>
2220+ <property name="expand">False</property>
2221+ <property name="fill">False</property>
2222+ <property name="position">2</property>
2223+ </packing>
2224+ </child>
2225+ </object>
2226+ <packing>
2227+ <property name="position">1</property>
2228+ </packing>
2229+ </child>
2230+ </object>
2231+ <packing>
2232+ <property name="expand">False</property>
2233+ <property name="fill">False</property>
2234+ <property name="position">1</property>
2235+ </packing>
2236+ </child>
2237+ </object>
2238+ </child>
2239+ </object>
2240+ </child>
2241+ <child type="label">
2242+ <object class="GtkLabel" id="label4">
2243+ <property name="visible">True</property>
2244+ <property name="label" translatable="yes">&lt;b&gt;Automatic updates&lt;/b&gt;</property>
2245+ <property name="use_markup">True</property>
2246+ </object>
2247+ </child>
2248+ </object>
2249+ <packing>
2250+ <property name="expand">False</property>
2251+ <property name="position">1</property>
2252+ </packing>
2253+ </child>
2254+ <child>
2255+ <object class="GtkFrame" id="frame8">
2256+ <property name="visible">True</property>
2257+ <property name="label_xalign">0</property>
2258+ <property name="shadow_type">none</property>
2259+ <child>
2260+ <object class="GtkAlignment" id="alignment15">
2261+ <property name="visible">True</property>
2262+ <property name="left_padding">12</property>
2263+ <child>
2264+ <object class="GtkVBox" id="vbox24">
2265+ <property name="visible">True</property>
2266+ <child>
2267+ <object class="GtkHBox" id="hbox18">
2268+ <property name="visible">True</property>
2269+ <property name="spacing">6</property>
2270+ <child>
2271+ <object class="GtkLabel" id="label29">
2272+ <property name="visible">True</property>
2273+ <property name="label" translatable="yes">Show new distribution releases: </property>
2274+ </object>
2275+ <packing>
2276+ <property name="expand">False</property>
2277+ <property name="fill">False</property>
2278+ <property name="position">0</property>
2279+ </packing>
2280+ </child>
2281+ <child>
2282+ <object class="GtkComboBox" id="combobox_release_upgrades">
2283+ <property name="visible">True</property>
2284+ <property name="model">model1</property>
2285+ <child>
2286+ <object class="GtkCellRendererText" id="renderer1"/>
2287+ <attributes>
2288+ <attribute name="text">0</attribute>
2289+ </attributes>
2290+ </child>
2291+ </object>
2292+ <packing>
2293+ <property name="position">1</property>
2294+ </packing>
2295+ </child>
2296+ </object>
2297+ <packing>
2298+ <property name="expand">False</property>
2299+ <property name="position">0</property>
2300+ </packing>
2301+ </child>
2302+ </object>
2303+ </child>
2304+ </object>
2305+ </child>
2306+ <child type="label">
2307+ <object class="GtkLabel" id="label28">
2308+ <property name="visible">True</property>
2309+ <property name="label" translatable="yes">&lt;b&gt;Release upgrade&lt;/b&gt;</property>
2310+ <property name="use_markup">True</property>
2311+ </object>
2312+ </child>
2313+ </object>
2314+ <packing>
2315+ <property name="position">2</property>
2316+ </packing>
2317+ </child>
2318+ </object>
2319+ <packing>
2320+ <property name="position">2</property>
2321+ </packing>
2322+ </child>
2323+ <child type="tab">
2324+ <object class="GtkLabel" id="label_updates3">
2325+ <property name="visible">True</property>
2326+ <property name="label" translatable="yes">Updates</property>
2327+ </object>
2328+ <packing>
2329+ <property name="position">2</property>
2330+ <property name="tab_fill">False</property>
2331+ </packing>
2332+ </child>
2333+ <child>
2334+ <object class="GtkVBox" id="vbox23">
2335+ <property name="visible">True</property>
2336+ <property name="border_width">12</property>
2337+ <property name="spacing">6</property>
2338+ <child>
2339+ <object class="GtkLabel" id="label27">
2340+ <property name="visible">True</property>
2341+ <property name="xalign">0</property>
2342+ <property name="label" translatable="yes">&lt;b&gt;Trusted software providers&lt;/b&gt;</property>
2343+ <property name="use_markup">True</property>
2344+ </object>
2345+ <packing>
2346+ <property name="expand">False</property>
2347+ <property name="fill">False</property>
2348+ <property name="position">0</property>
2349+ </packing>
2350+ </child>
2351+ <child>
2352+ <object class="GtkHBox" id="hbox17">
2353+ <property name="visible">True</property>
2354+ <child>
2355+ <object class="GtkLabel" id="label26">
2356+ <property name="visible">True</property>
2357+ <property name="label" translatable="yes"> </property>
2358+ </object>
2359+ <packing>
2360+ <property name="expand">False</property>
2361+ <property name="fill">False</property>
2362+ <property name="position">0</property>
2363+ </packing>
2364+ </child>
2365+ <child>
2366+ <object class="GtkVBox" id="vbox4">
2367+ <property name="visible">True</property>
2368+ <property name="spacing">6</property>
2369+ <child>
2370+ <object class="GtkScrolledWindow" id="scrolledwindow2">
2371+ <property name="visible">True</property>
2372+ <property name="can_focus">True</property>
2373+ <property name="hscrollbar_policy">automatic</property>
2374+ <property name="vscrollbar_policy">automatic</property>
2375+ <property name="shadow_type">in</property>
2376+ <child>
2377+ <object class="GtkTreeView" id="treeview_auth">
2378+ <property name="visible">True</property>
2379+ <property name="can_focus">True</property>
2380+ <property name="tooltip_text" translatable="yes">Keys are used to authenticate the correct source of software and so protect your computer from malicious software</property>
2381+ <property name="model">keys_store</property>
2382+ <property name="headers_visible">False</property>
2383+ <property name="rules_hint">True</property>
2384+ <signal name="button_press_event" handler="show_auth_context_menu"/>
2385+ <signal name="drag_data_received" handler="on_auth_drag_data_received"/>
2386+ <child>
2387+ <object class="GtkTreeViewColumn" id="keys_col">
2388+ <property name="title">Key</property>
2389+ <child>
2390+ <object class="GtkCellRendererText" id="tr"/>
2391+ <attributes>
2392+ <attribute name="text">0</attribute>
2393+ </attributes>
2394+ </child>
2395+ </object>
2396+ </child>
2397+ </object>
2398+ </child>
2399+ </object>
2400+ <packing>
2401+ <property name="position">0</property>
2402+ </packing>
2403+ </child>
2404+ <child>
2405+ <object class="GtkHBox" id="hbox3">
2406+ <property name="visible">True</property>
2407+ <property name="spacing">6</property>
2408+ <child>
2409+ <object class="GtkButton" id="button_auth_add">
2410+ <property name="visible">True</property>
2411+ <property name="can_focus">True</property>
2412+ <property name="receives_default">False</property>
2413+ <property name="tooltip_text" translatable="yes">Import the public key from a trusted software provider</property>
2414+ <signal name="clicked" handler="add_key_clicked"/>
2415+ <child>
2416+ <object class="GtkAlignment" id="alignment10">
2417+ <property name="visible">True</property>
2418+ <property name="xscale">0</property>
2419+ <property name="yscale">0</property>
2420+ <child>
2421+ <object class="GtkHBox" id="hbox10">
2422+ <property name="visible">True</property>
2423+ <property name="spacing">2</property>
2424+ <child>
2425+ <object class="GtkImage" id="image1">
2426+ <property name="visible">True</property>
2427+ <property name="stock">gtk-add</property>
2428+ </object>
2429+ <packing>
2430+ <property name="expand">False</property>
2431+ <property name="fill">False</property>
2432+ <property name="position">0</property>
2433+ </packing>
2434+ </child>
2435+ <child>
2436+ <object class="GtkLabel" id="label18">
2437+ <property name="visible">True</property>
2438+ <property name="label" translatable="yes">_Import Key File...</property>
2439+ <property name="use_underline">True</property>
2440+ </object>
2441+ <packing>
2442+ <property name="expand">False</property>
2443+ <property name="fill">False</property>
2444+ <property name="position">1</property>
2445+ </packing>
2446+ </child>
2447+ </object>
2448+ </child>
2449+ </object>
2450+ </child>
2451+ </object>
2452+ <packing>
2453+ <property name="expand">False</property>
2454+ <property name="fill">False</property>
2455+ <property name="position">0</property>
2456+ </packing>
2457+ </child>
2458+ <child>
2459+ <object class="GtkButton" id="button_auth_remove">
2460+ <property name="label">gtk-remove</property>
2461+ <property name="visible">True</property>
2462+ <property name="can_focus">True</property>
2463+ <property name="receives_default">False</property>
2464+ <property name="use_stock">True</property>
2465+ <signal name="clicked" handler="remove_key_clicked"/>
2466+ </object>
2467+ <packing>
2468+ <property name="expand">False</property>
2469+ <property name="fill">False</property>
2470+ <property name="position">2</property>
2471+ </packing>
2472+ </child>
2473+ <child>
2474+ <object class="GtkButton" id="button_auth_restor">
2475+ <property name="label" translatable="yes">Restore _Defaults</property>
2476+ <property name="visible">True</property>
2477+ <property name="can_focus">True</property>
2478+ <property name="receives_default">False</property>
2479+ <property name="tooltip_text" translatable="yes">Restore the default keys of your distribution</property>
2480+ <property name="use_underline">True</property>
2481+ <signal name="clicked" handler="on_restore_clicked"/>
2482+ </object>
2483+ <packing>
2484+ <property name="expand">False</property>
2485+ <property name="fill">False</property>
2486+ <property name="pack_type">end</property>
2487+ <property name="position">1</property>
2488+ </packing>
2489+ </child>
2490+ </object>
2491+ <packing>
2492+ <property name="expand">False</property>
2493+ <property name="position">1</property>
2494+ </packing>
2495+ </child>
2496+ </object>
2497+ <packing>
2498+ <property name="position">1</property>
2499+ </packing>
2500+ </child>
2501+ </object>
2502+ <packing>
2503+ <property name="position">1</property>
2504+ </packing>
2505+ </child>
2506+ </object>
2507+ <packing>
2508+ <property name="position">3</property>
2509+ </packing>
2510+ </child>
2511+ <child type="tab">
2512+ <object class="GtkLabel" id="label2">
2513+ <property name="visible">True</property>
2514+ <property name="label" translatable="yes">Authentication</property>
2515+ </object>
2516+ <packing>
2517+ <property name="position">3</property>
2518+ <property name="tab_fill">False</property>
2519+ </packing>
2520+ </child>
2521+ <child>
2522+ <object class="GtkVBox" id="vbox_popcon">
2523+ <property name="border_width">12</property>
2524+ <property name="spacing">6</property>
2525+ <child>
2526+ <object class="GtkCheckButton" id="checkbutton_popcon">
2527+ <property name="label" translatable="yes">Submit statistical information</property>
2528+ <property name="visible">True</property>
2529+ <property name="can_focus">True</property>
2530+ <property name="receives_default">False</property>
2531+ <property name="use_underline">True</property>
2532+ <property name="draw_indicator">True</property>
2533+ <signal name="toggled" handler="on_checkbutton_popcon_toggled"/>
2534+ </object>
2535+ <packing>
2536+ <property name="expand">False</property>
2537+ <property name="fill">False</property>
2538+ <property name="position">0</property>
2539+ </packing>
2540+ </child>
2541+ <child>
2542+ <object class="GtkHBox" id="hbox16">
2543+ <property name="visible">True</property>
2544+ <child>
2545+ <object class="GtkLabel" id="label25">
2546+ <property name="visible">True</property>
2547+ <property name="label" translatable="yes"> </property>
2548+ </object>
2549+ <packing>
2550+ <property name="expand">False</property>
2551+ <property name="fill">False</property>
2552+ <property name="position">0</property>
2553+ </packing>
2554+ </child>
2555+ <child>
2556+ <object class="GtkLabel" id="label_popcon_desc">
2557+ <property name="visible">True</property>
2558+ <property name="xalign">0</property>
2559+ <property name="use_markup">True</property>
2560+ <property name="wrap">True</property>
2561+ </object>
2562+ <packing>
2563+ <property name="expand">False</property>
2564+ <property name="fill">False</property>
2565+ <property name="position">1</property>
2566+ </packing>
2567+ </child>
2568+ </object>
2569+ <packing>
2570+ <property name="expand">False</property>
2571+ <property name="fill">False</property>
2572+ <property name="position">1</property>
2573+ </packing>
2574+ </child>
2575+ </object>
2576+ <packing>
2577+ <property name="position">4</property>
2578+ </packing>
2579+ </child>
2580+ <child type="tab">
2581+ <object class="GtkLabel" id="label19">
2582+ <property name="visible">True</property>
2583+ <property name="label" translatable="yes">Statistics</property>
2584+ </object>
2585+ <packing>
2586+ <property name="position">4</property>
2587+ <property name="tab_fill">False</property>
2588+ </packing>
2589+ </child>
2590+ </object>
2591+ <packing>
2592+ <property name="position">0</property>
2593+ </packing>
2594+ </child>
2595+ <child>
2596+ <object class="GtkHBox" id="hbox11">
2597+ <property name="visible">True</property>
2598+ <property name="border_width">6</property>
2599+ <property name="spacing">6</property>
2600+ <child>
2601+ <object class="GtkButton" id="button_help">
2602+ <property name="label">gtk-help</property>
2603+ <property name="can_focus">True</property>
2604+ <property name="can_default">True</property>
2605+ <property name="receives_default">False</property>
2606+ <property name="use_stock">True</property>
2607+ <signal name="clicked" handler="on_help_button"/>
2608+ </object>
2609+ <packing>
2610+ <property name="expand">False</property>
2611+ <property name="fill">False</property>
2612+ <property name="position">0</property>
2613+ </packing>
2614+ </child>
2615+ <child>
2616+ <object class="GtkButton" id="button_revert">
2617+ <property name="label">gtk-revert-to-saved</property>
2618+ <property name="visible">True</property>
2619+ <property name="sensitive">False</property>
2620+ <property name="can_focus">True</property>
2621+ <property name="can_default">True</property>
2622+ <property name="receives_default">False</property>
2623+ <property name="use_stock">True</property>
2624+ <signal name="clicked" handler="on_button_revert_clicked"/>
2625+ </object>
2626+ <packing>
2627+ <property name="expand">False</property>
2628+ <property name="fill">False</property>
2629+ <property name="pack_type">end</property>
2630+ <property name="position">2</property>
2631+ </packing>
2632+ </child>
2633+ <child>
2634+ <object class="GtkButton" id="button_close">
2635+ <property name="label">gtk-close</property>
2636+ <property name="visible">True</property>
2637+ <property name="can_focus">True</property>
2638+ <property name="can_default">True</property>
2639+ <property name="receives_default">False</property>
2640+ <property name="use_stock">True</property>
2641+ <signal name="clicked" handler="on_close_button"/>
2642+ </object>
2643+ <packing>
2644+ <property name="expand">False</property>
2645+ <property name="fill">False</property>
2646+ <property name="pack_type">end</property>
2647+ <property name="position">1</property>
2648+ </packing>
2649+ </child>
2650+ </object>
2651+ <packing>
2652+ <property name="expand">False</property>
2653+ <property name="position">1</property>
2654+ </packing>
2655+ </child>
2656+ </object>
2657+ </child>
2658+ </object>
2659+</interface>
2660
2661=== modified file 'software-properties-gtk'
2662--- software-properties-gtk 2009-06-09 11:59:07 +0000
2663+++ software-properties-gtk 2009-10-12 04:39:10 +0000
2664@@ -26,7 +26,6 @@
2665 pygtk.require('2.0')
2666 import gtk
2667 import gtk.gdk
2668-import gtk.glade
2669 import gobject
2670 import gettext
2671 import os
2672@@ -89,8 +88,6 @@
2673 localesDir="/usr/share/locale"
2674 gettext.bindtextdomain(localesApp, localesDir)
2675 gettext.textdomain(localesApp)
2676- gtk.glade.bindtextdomain(localesApp, localesDir)
2677- gtk.glade.textdomain(localesApp)
2678
2679 data_dir="/usr/share/software-properties/"
2680 file = None
2681
2682=== modified file 'softwareproperties/gtk/CdromProgress.py'
2683--- softwareproperties/gtk/CdromProgress.py 2007-02-01 22:50:58 +0000
2684+++ softwareproperties/gtk/CdromProgress.py 2009-10-12 04:39:10 +0000
2685@@ -21,20 +21,23 @@
2686 # USA
2687 import apt
2688 import gtk
2689-import gtk.glade
2690-from softwareproperties.gtk.SimpleGladeApp import SimpleGladeApp
2691 from gettext import gettext as _
2692
2693-class CdromProgress(apt.progress.CdromProgress, SimpleGladeApp):
2694+class CdromProgress(apt.progress.CdromProgress):
2695 def __init__(self,datadir, parent):
2696- SimpleGladeApp.__init__(self,
2697- datadir+"glade/dialogs.glade",
2698- "dialog_cdrom_progress",
2699- domain="update-manager")
2700+
2701+ self.builder = gtk.Builder()
2702+ self.builder.add_from_file(datadir+"gtkbuilder/DialogCdromProgress.ui")
2703+ self.builder.connect_signals(self)
2704+ self.dialog_cdrom_progress = builder.get_object("dialog_cdrom_progress")
2705+ self.button_cdrom_close = builder.get_object("button_cdrom_close")
2706+ self.progressbar_cdrom = builder.get_object("progressbar_cdrom")
2707+ self.label_cdrom = self.builder.get_object("label_cdrom")
2708 self.dialog_cdrom_progress.show()
2709 self.dialog_cdrom_progress.set_transient_for(parent)
2710 self.parent = parent
2711 self.button_cdrom_close.set_sensitive(False)
2712+
2713 def close(self):
2714 self.dialog_cdrom_progress.hide()
2715 def on_button_cdrom_close_clicked(self, widget):
2716
2717=== modified file 'softwareproperties/gtk/DialogAdd.py'
2718--- softwareproperties/gtk/DialogAdd.py 2009-06-08 16:46:22 +0000
2719+++ softwareproperties/gtk/DialogAdd.py 2009-10-12 04:39:10 +0000
2720@@ -26,7 +26,6 @@
2721 import os
2722 import gobject
2723 import gtk
2724-import gtk.glade
2725 from gettext import gettext as _
2726
2727 from aptsources.sourceslist import SourceEntry
2728@@ -37,17 +36,14 @@
2729 Initialize the dialog that allows to add a new source entering the
2730 raw apt line
2731 """
2732- self.sourceslist = sourceslist
2733- self.parent = parent
2734- self.datadir = datadir
2735 # gtk stuff
2736- self.gladexml = gtk.glade.XML("%s/glade/dialogs.glade" % datadir)
2737- self.dialog = self.gladexml.get_widget("dialog_add_custom")
2738- self.dialog.set_transient_for(self.parent)
2739- self.entry = self.gladexml.get_widget("entry_source_line")
2740- self.button_add = self.gladexml.get_widget("button_add_source")
2741+ builder = gtk.Builder()
2742+ builder.add_from_file(datadir +"gtkbuilder/DialogAdd.ui")
2743+ self.dialog = builder.get_object("dialog_add_custom")
2744+ self.dialog.set_transient_for(parent)
2745+ self.entry = builder.get_object("entry_source_line")
2746+ self.button_add = builder.get_object("button_add_source")
2747 self.entry.connect("changed", self.check_line)
2748- self.label_example_line = self.gladexml.get_widget("label_example_line")
2749 # Create an example deb line from the currently used distro
2750 if distro:
2751 example = "%s %s %s %s" % (distro.binary_type,
2752@@ -59,7 +55,7 @@
2753 # L10N: the example is of the format: deb http://ftp.debian.org sarge main
2754 msg = _("The APT line includes the type, location and components of a "
2755 "repository, for example '%s'.") % ("<i>%s</i>" % example)
2756- self.label_example_line.set_label(msg)
2757+ builder.get_object("label_example_line").set_label(msg)
2758
2759 def run(self):
2760 res = self.dialog.run()
2761
2762=== modified file 'softwareproperties/gtk/DialogAddSourcesList.py'
2763--- softwareproperties/gtk/DialogAddSourcesList.py 2007-01-26 13:59:54 +0000
2764+++ softwareproperties/gtk/DialogAddSourcesList.py 2009-10-12 04:39:10 +0000
2765@@ -1,7 +1,6 @@
2766 #!/usr/bin/env python
2767 import pygtk
2768 import gtk
2769-import gtk.glade
2770 import gobject
2771 import os
2772 from optparse import OptionParser
2773@@ -15,25 +14,21 @@
2774 def __init__(self, parent, sourceslist, source_renderer,
2775 get_comparable, datadir, file):
2776 print file
2777- self.parent = parent
2778- self.source_renderer = source_renderer
2779- self.sourceslist = sourceslist
2780- self.get_comparable = get_comparable
2781 self.file = self.format_uri(file)
2782- self.glade = gtk.glade.XML(os.path.join(datadir,
2783- "glade/dialogs.glade"))
2784- self.glade.signal_autoconnect(self)
2785- self.dialog = self.glade.get_widget("dialog_add_sources_list")
2786- self.label = self.glade.get_widget("label_sources")
2787- self.button_add = self.glade.get_widget("button_add")
2788- self.button_cancel = self.glade.get_widget("button_cancel")
2789- self.button_replace = self.glade.get_widget("button_replace")
2790- self.treeview = self.glade.get_widget("treeview_sources")
2791- self.scrolled = self.glade.get_widget("scrolled_window")
2792- self.image = self.glade.get_widget("image_sources_list")
2793+ builder = gtk.Builder()
2794+ builder.add_from_file(datadir + "gtkbuilder/DialogAddSourcesList.ui")
2795+ builder.connect_signals(self)
2796+ self.dialog = builder.get_object("dialog_add_sources_list")
2797+ self.label = builder.get_object("label_sources")
2798+ self.button_add = builder.get_object("button_add")
2799+ self.button_cancel = builder.get_object("button_cancel")
2800+ self.button_replace = builder.get_object("button_replace")
2801+ self.treeview = builder.get_object("treeview_sources")
2802+ self.scrolled = builder.get_object("scrolled_window")
2803+ self.image = builder.get_object("image_sources_list")
2804
2805 self.dialog.realize()
2806- if self.parent != None:
2807+ if parent != None:
2808 self.dialog.set_transient_for(parent)
2809 else:
2810 self.dialog.set_title(_("Add Software Channels"))
2811@@ -65,13 +60,13 @@
2812 continue
2813 self.new_sources.matcher.match(source)
2814 # sort the list
2815- self.new_sources.list.sort(key=self.get_comparable)
2816+ self.new_sources.list.sort(key=get_comparable)
2817
2818 for source in self.new_sources.list:
2819 if source.invalid or source.disabled:
2820 continue
2821 counter = counter +1
2822- line = self.source_renderer(source)
2823+ line = source_renderer(source)
2824 self.store.append([line])
2825 if counter == 0:
2826 self.error()
2827
2828=== modified file 'softwareproperties/gtk/DialogCacheOutdated.py'
2829--- softwareproperties/gtk/DialogCacheOutdated.py 2009-07-13 14:51:11 +0000
2830+++ softwareproperties/gtk/DialogCacheOutdated.py 2009-10-12 04:39:10 +0000
2831@@ -20,13 +20,11 @@
2832 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
2833 # USA
2834
2835-import os
2836 import subprocess
2837 import thread
2838 import time
2839 import gobject
2840 import gtk
2841-import gtk.glade
2842 import apt_pkg
2843
2844 class DialogCacheOutdated:
2845@@ -34,11 +32,9 @@
2846 """setup up the gtk dialog"""
2847 self.parent = parent
2848
2849- if os.path.exists("../data/dialogs.glade"):
2850- self.gladexml = gtk.glade.XML("../data/dialogs.glade")
2851- else:
2852- self.gladexml = gtk.glade.XML("%s/glade/dialogs.glade" % datadir)
2853- self.dialog = self.gladexml.get_widget("dialog_cache_outofdate")
2854+ builder = gtk.Builder()
2855+ builder.add_from_file(datadir+"gtkbuilder/DialogCacheOutDated.ui")
2856+ self.dialog = builder.get_object("dialog_cache_outofdate")
2857 self.dialog.set_transient_for(parent)
2858
2859 def update_cache(self, window_id, lock):
2860
2861=== modified file 'softwareproperties/gtk/DialogEdit.py'
2862--- softwareproperties/gtk/DialogEdit.py 2007-03-19 10:49:20 +0000
2863+++ softwareproperties/gtk/DialogEdit.py 2009-10-12 04:39:10 +0000
2864@@ -25,7 +25,6 @@
2865 import os
2866 import gobject
2867 import gtk
2868-import gtk.glade
2869
2870 from aptsources.sourceslist import SourceEntry
2871
2872@@ -35,16 +34,17 @@
2873 self.source_entry = source_entry
2874
2875 # gtk stuff
2876- if os.path.exists("../data/dialogs.glade"):
2877- self.gladexml = gtk.glade.XML("../data/dialogs.glade")
2878+ self.builder = gtk.Builder()
2879+ if os.path.exists("../data/DialogEdit.ui"):
2880+ self.builder.add_from_file("../data/DialogEdit.ui")
2881 else:
2882- self.gladexml = gtk.glade.XML("%s/glade/dialogs.glade" % datadir)
2883- self.main = self.gladexml.get_widget("dialog_edit")
2884+ self.builder.add_from_file("%s/gtkbuilder/DialogEdit.ui" % datadir)
2885+ self.main = self.builder.get_object("dialog_edit")
2886 self.main.set_transient_for(parent)
2887- self.button_edit_ok = self.gladexml.get_widget("button_edit_ok")
2888+ self.button_edit_ok = self.builder.get_object("button_edit_ok")
2889
2890 # type
2891- combo_type = self.gladexml.get_widget("combobox_type")
2892+ combo_type = self.builder.get_object("combobox_type")
2893 if source_entry.type == "deb":
2894 combo_type.set_active(0)
2895 elif source_entry.type == "deb-src":
2896@@ -53,13 +53,13 @@
2897 print "Error, unknown source type: '%s'" % source_enrty.type
2898
2899 # uri
2900- entry = self.gladexml.get_widget("entry_uri")
2901+ entry = self.builder.get_object("entry_uri")
2902 entry.set_text(source_entry.uri)
2903
2904- entry = self.gladexml.get_widget("entry_dist")
2905+ entry = self.builder.get_object("entry_dist")
2906 entry.set_text(source_entry.dist)
2907
2908- entry = self.gladexml.get_widget("entry_comps")
2909+ entry = self.builder.get_object("entry_comps")
2910 comps = ""
2911 for c in source_entry.comps:
2912 if len(comps) > 0:
2913@@ -68,14 +68,9 @@
2914 comps = c
2915 entry.set_text(comps)
2916
2917- entry = self.gladexml.get_widget("entry_comment")
2918+ entry = self.builder.get_object("entry_comment")
2919 entry.set_text(source_entry.comment)
2920
2921- # finally set the signal so that the check function is not tiggered
2922- # during initialisation
2923- self.gladexml.signal_connect("on_entry_source_line_changed",
2924- self.check_line)
2925-
2926 def check_line(self, *args):
2927 """Check for a valid apt line and set the sensitiveness of the
2928 button 'add' accordingly"""
2929@@ -91,7 +86,7 @@
2930
2931 def get_line(self):
2932 """Collect all values from the entries and create an apt line"""
2933- combo_type = self.gladexml.get_widget("combobox_type")
2934+ combo_type = self.builder.get_object("combobox_type")
2935 if self.source_entry.disabled == True:
2936 line = "#"
2937 else:
2938@@ -102,26 +97,26 @@
2939 else:
2940 line = "%sdeb-src" % line
2941
2942- entry = self.gladexml.get_widget("entry_uri")
2943+ entry = self.builder.get_object("entry_uri")
2944 text = entry.get_text()
2945 if len(text) < 1 or text.find(" ") != -1 or text.find("#") != -1:
2946 return False
2947 line = line + " " + entry.get_text()
2948
2949- entry = self.gladexml.get_widget("entry_dist")
2950+ entry = self.builder.get_object("entry_dist")
2951 text = entry.get_text()
2952 if len(text) < 1 or text.find(" ") != -1 or text.find("#") != -1:
2953 return False
2954 line = line + " " + entry.get_text()
2955
2956- entry = self.gladexml.get_widget("entry_comps")
2957+ entry = self.builder.get_object("entry_comps")
2958 text = entry.get_text()
2959 if text.find("#") != -1:
2960 return False
2961 elif text != "":
2962 line = line + " " + entry.get_text()
2963
2964- entry = self.gladexml.get_widget("entry_comment")
2965+ entry = self.builder.get_object("entry_comment")
2966 if entry.get_text() != "":
2967 line = line + " #" + entry.get_text() + "\n"
2968 else:
2969
2970=== modified file 'softwareproperties/gtk/DialogMirror.py'
2971--- softwareproperties/gtk/DialogMirror.py 2009-03-26 10:20:40 +0000
2972+++ softwareproperties/gtk/DialogMirror.py 2009-10-12 04:39:10 +0000
2973@@ -23,7 +23,6 @@
2974 import os
2975 import gobject
2976 import gtk
2977-import gtk.glade
2978 from gettext import gettext as _
2979 import threading
2980 import string
2981@@ -82,56 +81,46 @@
2982
2983 self.country_info = CountryInformation()
2984
2985- self.gladexml = gtk.glade.XML("%s/glade/dialogs.glade" %\
2986- datadir)
2987- self.gladexml.signal_autoconnect(self)
2988- self.dialog = self.gladexml.get_widget("dialog_mirror")
2989+ builder = gtk.Builder()
2990+ builder.add_from_file(datadir+"gtkbuilder/DialogMirror.ui")
2991+ builder.connect_signals(self)
2992+
2993+ self.dialog = builder.get_object("dialog_mirror")
2994 self.dialog.set_transient_for(parent)
2995- self.dialog_test = self.gladexml.get_widget("dialog_mirror_test")
2996+ self.dialog_test = builder.get_object("dialog_mirror_test")
2997 self.dialog_test.set_transient_for(self.dialog)
2998 self.distro = distro
2999- self.treeview = self.gladexml.get_widget("treeview_mirrors")
3000- self.button_edit = self.gladexml.get_widget("button_mirror_edit")
3001- self.button_remove = self.gladexml.get_widget("button_mirror_remove")
3002- self.button_choose = self.gladexml.get_widget("button_mirror_choose")
3003- self.button_cancel = self.gladexml.get_widget("button_test_cancel")
3004- self.label_test = self.gladexml.get_widget("label_test_mirror")
3005- self.progressbar_test = self.gladexml.get_widget("progressbar_test_mirror")
3006- self.combobox = self.gladexml.get_widget("combobox_mirror_proto")
3007- self.progress = self.gladexml.get_widget("progressbar_test_mirror")
3008- self.label_action = self.gladexml.get_widget("label_test_mirror")
3009+ self.treeview = builder.get_object("treeview_mirrors")
3010+ self.button_edit = builder.get_object("button_mirror_edit")
3011+ self.button_remove = builder.get_object("button_mirror_remove")
3012+ self.button_choose = builder.get_object("button_mirror_choose")
3013+ self.button_cancel = builder.get_object("button_test_cancel")
3014+ self.label_test = builder.get_object("label_test_mirror")
3015+ self.progressbar_test = builder.get_object("progressbar_test_mirror")
3016+ self.combobox = builder.get_object("combobox_mirror_proto")
3017+ self.progress = builder.get_object("progressbar_test_mirror")
3018+ self.label_action = builder.get_object("label_test_mirror")
3019
3020 # store each proto and its dir
3021- model_proto = gtk.ListStore(gobject.TYPE_STRING,
3022- gobject.TYPE_STRING)
3023- self.combobox.set_model(model_proto)
3024-
3025- self.model = gtk.TreeStore(gobject.TYPE_STRING, # COLUMN_URI
3026- gobject.TYPE_BOOLEAN, # COLUMN_SEPARATOR
3027- gobject.TYPE_BOOLEAN, # COLUMN_CUSTOM
3028- gobject.TYPE_PYOBJECT)# COLUMN_MIRROR
3029 self.treeview.set_row_separator_func(is_separator)
3030- self.model_sort = gtk.TreeModelSort(self.model)
3031+ self.model = builder.get_object("model_sort_model")
3032+ self.model_sort = builder.get_object("model_sort")
3033 self.model_sort.set_default_sort_func(sort_mirrors)
3034
3035 self.distro = distro
3036
3037- self.treeview.set_model(self.model_sort)
3038 # the cell renderer for the mirror uri
3039 self.renderer_mirror = gtk.CellRendererText()
3040 self.renderer_mirror.connect('edited',
3041 self.on_edited_custom_mirror,
3042 self.model)
3043 # the visible column that holds the mirror uris
3044- self.column_mirror = gtk.TreeViewColumn("URI",
3045- self.renderer_mirror,
3046- text=COLUMN_URI)
3047- self.treeview.append_column(self.column_mirror)
3048
3049+ self.column_mirror = builder.get_object("column_mirror")
3050 # used to find the corresponding iter of a location
3051 map_loc = {}
3052 patriot = None
3053- model = self.treeview.get_model().get_model()
3054+ model = builder.get_object("model_sort_model")
3055 # at first add all custom mirrors and a separator
3056 if len(self.custom_mirrors) > 0:
3057 for mirror in self.custom_mirrors:
3058
3059=== modified file 'softwareproperties/gtk/SoftwarePropertiesGtk.py'
3060--- softwareproperties/gtk/SoftwarePropertiesGtk.py 2009-07-13 13:29:54 +0000
3061+++ softwareproperties/gtk/SoftwarePropertiesGtk.py 2009-10-12 04:39:10 +0000
3062@@ -6,6 +6,7 @@
3063 # Author: Michiel Sikkes <michiel@eyesopened.nl>
3064 # Michael Vogt <mvo@debian.org>
3065 # Sebastian Heinlein <glatzor@ubuntu.com>
3066+# Olof Kindgren
3067 #
3068 # This program is free software; you can redistribute it and/or
3069 # modify it under the terms of the GNU General Public License as
3070@@ -27,14 +28,10 @@
3071 import tempfile
3072 from gettext import gettext as _
3073 import os
3074-import re
3075-from xml.sax.saxutils import escape
3076
3077 import gtk
3078-import gtk.glade
3079 import gobject
3080
3081-from SimpleGladeApp import SimpleGladeApp
3082 from aptsources.sourceslist import SourceEntry
3083 from DialogAdd import DialogAdd
3084 from DialogMirror import DialogMirror
3085@@ -79,7 +76,7 @@
3086 dialog.destroy()
3087 return False
3088
3089-class SoftwarePropertiesGtk(SoftwareProperties,SimpleGladeApp):
3090+class SoftwarePropertiesGtk(SoftwareProperties):
3091 def __init__(self, datadir=None, options=None, file=None, parent=None):
3092 """ Provide a GTK based graphical user interface to configure
3093 the used software repositories, corresponding authentication keys
3094@@ -87,8 +84,26 @@
3095 SoftwareProperties.__init__(self, options=options, datadir=datadir)
3096 gtk.window_set_default_icon_name("software-properties")
3097
3098- SimpleGladeApp.__init__(self, datadir+"glade/main.glade",
3099- None, domain="software-properties")
3100+ self.builder = gtk.Builder()
3101+ self.builder.add_from_file(datadir+"gtkbuilder/main.ui")
3102+ self.builder.connect_signals(self)
3103+ self.window_main = self.builder.get_object("window_main")
3104+ self.vbox_auto_updates = self.builder.get_object("vbox_auto_updates")
3105+ self.radiobutton_updates_download = self.builder.get_object("radiobutton_updates_download")
3106+ self.radiobutton_updates_inst_sec = self.builder.get_object("radiobutton_updates_inst_sec")
3107+ self.radiobutton_updates_notify = self.builder.get_object("radiobutton_updates_notify")
3108+ self.combobox_release_upgrades = self.builder.get_object("combobox_release_upgrades")
3109+ self.treeview_cdroms = self.builder.get_object("treeview_cdroms")
3110+ self.treeview_sources = self.builder.get_object("treeview_sources")
3111+ self.button_remove = self.builder.get_object("button_remove")
3112+ self.button_edit = self.builder.get_object("button_edit")
3113+ self.label_dist_name = self.builder.get_object("label_dist_name")
3114+ self.vbox_dist_comps = self.builder.get_object("vbox_dist_comps")
3115+ self.vbox_updates = self.builder.get_object("vbox_updates")
3116+ self.combobox_server = self.builder.get_object("combobox_server")
3117+ self.button_revert = self.builder.get_object("button_revert")
3118+ self.cdrom_store = self.builder.get_object("cdrom_store")
3119+ self.source_store = self.builder.get_object("source_store")
3120
3121 if parent:
3122 self.window_main.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)
3123@@ -150,9 +165,10 @@
3124 corresponding to the used distro """
3125 is_helpful = self.get_popcon_participation()
3126 if is_helpful != None:
3127- self.label_popcon_desc.set_label(softwareproperties.distro.get_popcon_description(self.distro))
3128- self.vbox_popcon.show()
3129- self.checkbutton_popcon.set_active(is_helpful)
3130+ desc = softwareproperties.distro.get_popcon_description(self.distro)
3131+ self.builder.get_object("label_popcon_desc").set_label(desc)
3132+ self.builder.get_object("vbox_popcon").show()
3133+ self.builder.get_object("checkbutton_popcon").set_active(is_helpful)
3134
3135 def init_release_upgrades(self):
3136 " setup the widgets that allow configuring the release upgrades "
3137@@ -164,6 +180,10 @@
3138 """ Set up the widgets that allow to configure the update automation """
3139 # this maps the key (combo-box-index) to the auto-update-interval value
3140 # where (-1) means, no key
3141+ self.combobox_update_interval = gtk.combo_box_new_text()
3142+ hbox2 = self.builder.get_object("hbox2")
3143+ hbox2.pack_start(self.combobox_update_interval,True,True)
3144+ self.combobox_update_interval.show()
3145 self.combobox_interval_mapping = { 0 : 1,
3146 1 : 2,
3147 2 : 7,
3148@@ -177,8 +197,8 @@
3149 self.combobox_update_interval.append_text(_("Weekly"))
3150 self.combobox_update_interval.append_text(_("Every two weeks"))
3151
3152- model_check_interval = gtk.ListStore(gobject.TYPE_STRING,
3153- gobject.TYPE_INT)
3154+ #model_check_interval = gtk.ListStore(gobject.TYPE_STRING,
3155+ # gobject.TYPE_INT)
3156 update_days = self.get_update_interval()
3157
3158 # If a custom period is defined add a corresponding entry
3159@@ -193,38 +213,15 @@
3160 self.combobox_update_interval.set_active(key)
3161 break
3162
3163- if update_days >= 1:
3164- self.checkbutton_auto_update.set_active(True)
3165- self.combobox_update_interval.set_sensitive(True)
3166- self.vbox_auto_updates.set_sensitive(True)
3167- else:
3168- self.checkbutton_auto_update.set_active(False)
3169- self.combobox_update_interval.set_sensitive(False)
3170- self.vbox_auto_updates.set_sensitive(False)
3171+ state = (update_days >= 1)
3172+ self.builder.get_object("checkbutton_auto_update").set_active(state)
3173+ self.combobox_update_interval.set_sensitive(state)
3174+ self.vbox_auto_updates.set_sensitive(state)
3175
3176 self.handlers.append(
3177- (self.checkbutton_auto_update,
3178- self.checkbutton_auto_update.connect("toggled",
3179- self.on_auto_update_toggled)))
3180- self.handlers.append(
3181 (self.combobox_update_interval,
3182 self.combobox_update_interval.connect("changed",
3183 self.on_combobox_update_interval_changed)))
3184- self.handlers.append(
3185- (self.radiobutton_updates_download,
3186- self.radiobutton_updates_download.connect("toggled",
3187- self.set_update_automation_level,
3188- softwareproperties.UPDATE_DOWNLOAD)))
3189- self.handlers.append(
3190- (self.radiobutton_updates_inst_sec,
3191- self.radiobutton_updates_inst_sec.connect("toggled",
3192- self.set_update_automation_level,
3193- softwareproperties.UPDATE_INST_SEC)))
3194- self.handlers.append(
3195- (self.radiobutton_updates_notify,
3196- self.radiobutton_updates_notify.connect("toggled",
3197- self.set_update_automation_level,
3198- softwareproperties.UPDATE_NOTIFY)))
3199
3200 def show_auto_update_level(self):
3201 """Represent the level of update automation in the user interface"""
3202@@ -252,15 +249,12 @@
3203 """Setup the user interface elements to represent the distro"""
3204
3205 # TRANS: %s stands for the distribution name e.g. Debian or Ubuntu
3206- self.label_updates.set_label("<b>%s</b>" % (_("%s updates") %\
3207- self.distro.id))
3208+ label = "<b>%s</b>" % (_("%s updates") % self.distro.id)
3209+ self.builder.get_object("label_updates").set_label(label)
3210+
3211 # TRANS: %s stands for the distribution name e.g. Debian or Ubuntu
3212- self.label_dist_name.set_label(_("%s Software") % self.distro.id)
3213-
3214-
3215- self.handlers.append((self.checkbutton_source_code,
3216- self.checkbutton_source_code.connect("toggled",
3217- self.on_checkbutton_source_code_toggled)))
3218+ label = _("%s Software") % self.distro.id
3219+ self.builder.get_object("label_dist_name").set_label(label)
3220
3221 # Setup the checkbuttons for the components
3222 for checkbutton in self.vbox_dist_comps.get_children():
3223@@ -299,16 +293,6 @@
3224
3225
3226 # setup the server chooser
3227- cell = gtk.CellRendererText()
3228- self.combobox_server.pack_start(cell, True)
3229- self.combobox_server.add_attribute(cell, 'text', 0)
3230- self.handlers.append((self.combobox_server,
3231- self.combobox_server.connect("changed",
3232- self.on_combobox_server_changed)))
3233- server_store = gtk.ListStore(gobject.TYPE_STRING,
3234- gobject.TYPE_STRING,
3235- gobject.TYPE_BOOLEAN)
3236- self.combobox_server.set_model(server_store)
3237 self.combobox_server.set_row_separator_func(self.is_row_separator, 2)
3238
3239 def block_handlers(self):
3240@@ -337,34 +321,39 @@
3241
3242 # If no components are enabled there will be no need for updates
3243 # and source code
3244+ checkbutton = self.builder.get_object("checkbutton_source_code")
3245 if len(self.distro.enabled_comps) < 1:
3246 self.vbox_updates.set_sensitive(False)
3247- self.checkbutton_source_code.set_sensitive(False)
3248+ checkbutton.set_sensitive(False)
3249 else:
3250 self.vbox_updates.set_sensitive(True)
3251- self.checkbutton_source_code.set_sensitive(True)
3252+ checkbutton.set_sensitive(True)
3253
3254 # Check for source code sources
3255 source_code_state = self.get_source_code_state()
3256 if source_code_state == None:
3257- self.checkbutton_source_code.set_inconsistent(True)
3258+ checkbutton.set_inconsistent(True)
3259 elif source_code_state == True:
3260- self.checkbutton_source_code.set_active(True)
3261- self.checkbutton_source_code.set_inconsistent(False)
3262+ checkbutton.set_active(True)
3263+ checkbutton.set_inconsistent(False)
3264 else:
3265- self.checkbutton_source_code.set_active(False)
3266- self.checkbutton_source_code.set_inconsistent(False)
3267+ checkbutton.set_active(False)
3268+ checkbutton.set_inconsistent(False)
3269
3270 # Will show a short explanation if no CDROMs are used
3271 if len(self.get_cdrom_sources()) == 0:
3272- self.scrolledwindow_cd.hide()
3273- self.scrolledwindow_no_cd.show()
3274+ hide_widget = "scrolledwindow_cd"
3275+ show_widget = "scrolledwindow_no_cd"
3276 else:
3277- self.scrolledwindow_cd.show()
3278- self.scrolledwindow_no_cd.hide()
3279+ hide_widget = "scrolledwindow_no_cd"
3280+ show_widget = "scrolledwindow_cd"
3281+
3282+
3283+ self.builder.get_object(hide_widget).hide()
3284+ self.builder.get_object(show_widget).show()
3285
3286 # provide a list of mirrors
3287- server_store = self.combobox_server.get_model()
3288+ server_store = self.builder.get_object("server_store")
3289 server_store.clear()
3290 seen_server_new = []
3291 for (name, uri, active) in self.distro.get_server_list():
3292@@ -409,10 +398,18 @@
3293 for source in self.sourceslist_visible:
3294 self.print_source_entry(source)
3295
3296- def set_update_automation_level(self, widget, state):
3297+ def set_update_automation_level(self, widget):
3298 '''Call the backend to set the update automation level to the given
3299 value'''
3300 if widget.get_active() == True:
3301+ if widget.name == "radiobutton_updates_inst_sec":
3302+ state = softwareproperties.UPDATE_INST_SEC
3303+ elif widget.name == "radiobutton_updates_download":
3304+ state = softwareproperties.UPDATE_DOWNLOAD
3305+ elif widget.name == "radiobutton_updates_notify":
3306+ state = softwareproperties.UPDATE_NOTIFY;
3307+ else:
3308+ print "FIXME: This shouldn't happen"
3309 self.vbox_auto_updates.foreach(lambda b: b.set_inconsistent(False))
3310 SoftwareProperties.set_update_automation_level(self, state)
3311 self.set_modified_config()
3312@@ -423,7 +420,6 @@
3313
3314 def on_combobox_release_upgrades_changed(self, combobox):
3315 """ set the release upgrades policy """
3316- #print "on_combobox_release_upgrades_changed()"
3317 i = combobox.get_active()
3318 self.set_release_upgrades_policy(i)
3319
3320@@ -436,6 +432,9 @@
3321 return
3322 server_store = combobox.get_model()
3323 iter = combobox.get_active_iter()
3324+ #This function is called on source_store.clear(), in which case iter is None
3325+ if iter == None:
3326+ return
3327 uri = server_store.get_value(iter, 1)
3328 name = server_store.get_value(iter, 0)
3329 if name == _("Other..."):
3330@@ -521,73 +520,24 @@
3331
3332 def init_isv_sources(self):
3333 """
3334- Read all valid sources into our ListStore
3335+ Set up properties for the ISV store that can't be set by Glade
3336 """
3337- # STORE_ACTIVE - is the source enabled or disabled
3338- # STORE_DESCRIPTION - description of the source entry
3339- # STORE_SOURCE - the source entry object
3340- # STORE_SEPARATOR - if the entry is a separator
3341- # STORE_VISIBLE - if the entry is shown or hidden
3342- self.cdrom_store = gtk.ListStore(gobject.TYPE_BOOLEAN,
3343- gobject.TYPE_STRING,
3344- gobject.TYPE_PYOBJECT,
3345- gobject.TYPE_BOOLEAN,
3346- gobject.TYPE_BOOLEAN)
3347- self.treeview_cdroms.set_model(self.cdrom_store)
3348- self.source_store = gtk.ListStore(gobject.TYPE_BOOLEAN,
3349- gobject.TYPE_STRING,
3350- gobject.TYPE_PYOBJECT,
3351- gobject.TYPE_BOOLEAN,
3352- gobject.TYPE_BOOLEAN)
3353- self.treeview_sources.set_model(self.source_store)
3354 self.treeview_sources.set_row_separator_func(self.is_separator,
3355 STORE_SEPARATOR)
3356-
3357- cell_desc = gtk.CellRendererText()
3358- cell_desc.set_property("xpad", 2)
3359- cell_desc.set_property("ypad", 2)
3360- col_desc = gtk.TreeViewColumn(_("Software Sources"), cell_desc,
3361- markup=COLUMN_DESC)
3362- col_desc.set_max_width(1000)
3363-
3364- cell_toggle = gtk.CellRendererToggle()
3365- cell_toggle.set_property("xpad", 2)
3366- cell_toggle.set_property("ypad", 2)
3367+ cell_toggle = self.builder.get_object("cell_toggle_cd")
3368 self.handlers.append([cell_toggle,
3369 cell_toggle.connect('toggled',
3370 self.on_isv_source_toggled,
3371 self.cdrom_store)])
3372- col_active = gtk.TreeViewColumn(_("Active"), cell_toggle,
3373- active=COLUMN_ACTIVE)
3374-
3375- self.treeview_cdroms.append_column(col_active)
3376- self.treeview_cdroms.append_column(col_desc)
3377-
3378- cell_desc = gtk.CellRendererText()
3379- cell_desc.set_property("xpad", 2)
3380- cell_desc.set_property("ypad", 2)
3381- col_desc = gtk.TreeViewColumn(_("Software Sources"), cell_desc,
3382- markup=COLUMN_DESC)
3383- col_desc.set_max_width(1000)
3384-
3385- cell_toggle = gtk.CellRendererToggle()
3386- cell_toggle.set_property("xpad", 2)
3387- cell_toggle.set_property("ypad", 2)
3388+ cell_toggle = self.builder.get_object("cell_toggle_isv")
3389 self.handlers.append([cell_toggle,
3390 cell_toggle.connect('toggled',
3391 self.on_isv_source_toggled,
3392 self.source_store)])
3393- col_active = gtk.TreeViewColumn(_("Active"), cell_toggle,
3394- active=COLUMN_ACTIVE)
3395-
3396- self.treeview_sources.append_column(col_active)
3397- self.treeview_sources.append_column(col_desc)
3398 # drag and drop support for sources.list
3399 self.treeview_sources.drag_dest_set(gtk.DEST_DEFAULT_ALL,
3400 [('text/uri-list',0, 0)],
3401 gtk.gdk.ACTION_COPY)
3402- self.treeview_sources.connect("drag_data_received",
3403- self.on_sources_drag_data_received)
3404
3405 def on_isv_source_activate(self, treeview, path, column):
3406 """Open the edit dialog if a channel was double clicked"""
3407@@ -607,23 +557,16 @@
3408 def on_isv_source_toggled(self, cell_toggle, path, store):
3409 """Enable or disable the selected channel"""
3410 #FIXME cdroms need to disable the comps in the childs and sources
3411- iter = store.get_iter((int(path),))
3412- source_entry = store.get_value(iter, STORE_SOURCE)
3413+ iter = store.get_iter(int(path))
3414+ source_entry = store.get_value(iter, STORE_SOURCE)
3415 self.toggle_source_use(source_entry)
3416
3417 def init_keys(self):
3418 """Setup the user interface parts needed for the key handling"""
3419- self.keys_store = gtk.ListStore(str)
3420- self.treeview_auth.set_model(self.keys_store)
3421- tr = gtk.CellRendererText()
3422- keys_col = gtk.TreeViewColumn("Key", tr, text=0)
3423- self.treeview_auth.append_column(keys_col)
3424- self.treeview_auth.enable_model_drag_dest(
3425+ #FIXME Move as much as possible to glade
3426+ tv = self.builder.get_object("treeview_auth")
3427+ tv.enable_model_drag_dest(
3428 [('text/plain', 0, 0)], gtk.gdk.ACTION_COPY)
3429- self.treeview_auth.connect("drag_data_received",
3430- self.on_auth_drag_data_received)
3431- self.treeview_auth.connect("button-press-event",
3432- self.show_auth_context_menu)
3433
3434 def show_auth_context_menu(self, widget, event):
3435 if event.type == gtk.gdk.BUTTON_PRESS and event.button == 3:
3436@@ -687,7 +630,7 @@
3437 for source in self.get_isv_sources():
3438 contents = self.render_source(source)
3439 self.source_store.append([not source.disabled, contents,
3440- source, False, True])
3441+ source,False, True])
3442
3443 (path_x, path_y) = self.treeview_sources.get_cursor()
3444 if len(self.source_store) < 1 or path_x <0:
3445@@ -712,9 +655,10 @@
3446 return False
3447
3448 def show_keys(self):
3449- self.keys_store.clear()
3450+ keys_store = self.builder.get_object("keys_store")
3451+ keys_store.clear()
3452 for key in self.apt_key.list():
3453- self.keys_store.append([key])
3454+ keys_store.append([key])
3455
3456 def on_combobox_update_interval_changed(self, widget):
3457 """Set the update automation interval to the chosen one"""
3458@@ -726,7 +670,7 @@
3459 def on_auto_update_toggled(self, widget):
3460 """Enable or disable automatic updates and modify the user interface
3461 accordingly"""
3462- if self.checkbutton_auto_update.get_active():
3463+ if widget.get_active():
3464 self.combobox_update_interval.set_sensitive(True)
3465 self.vbox_auto_updates.set_sensitive(True)
3466 # if no frequency was specified use daily
3467@@ -824,7 +768,7 @@
3468
3469 def remove_key_clicked(self, widget):
3470 """Remove a trusted software vendor key"""
3471- selection = self.treeview_auth.get_selection()
3472+ selection = self.builder.get_object("treeview_auth").get_selection()
3473 (model,a_iter) = selection.get_selected()
3474 if a_iter == None:
3475 return
3476@@ -886,3 +830,16 @@
3477 full_path = "%s%s" % (apt_pkg.Config.FindDir("Dir::Etc"),saved_entry)
3478 self.sourceslist.list.append(SourceEntry(line,full_path))
3479 self.set_modified_sourceslist()
3480+
3481+ def run(self):
3482+ gtk.main()
3483+
3484+ def quit(self):
3485+ gtk.main_quit()
3486+
3487+
3488+ def on_help_button(self):
3489+ """Not implemented"""
3490+
3491+ def on_channel_activated(self):
3492+ """Not implemented"""

Subscribers

People subscribed via source and target branches

to status/vote changes: