Merge lp:~mblayman/entertainer/start-fullscreen into lp:entertainer
- start-fullscreen
- Merge into trunk
Status: | Merged | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Approved by: | Paul Hummer | ||||||||||||||||
Approved revision: | 356 | ||||||||||||||||
Merged at revision: | not available | ||||||||||||||||
Proposed branch: | lp:~mblayman/entertainer/start-fullscreen | ||||||||||||||||
Merge into: | lp:entertainer | ||||||||||||||||
Diff against target: | None lines | ||||||||||||||||
To merge this branch: | bzr merge lp:~mblayman/entertainer/start-fullscreen | ||||||||||||||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Samuel Buffet (community) | Approve | ||
Paul Hummer | Approve | ||
Review via email: mp+4297@code.launchpad.net |
Commit message
Description of the change
Matt Layman (mblayman) wrote : | # |
Paul Hummer (rockstar) wrote : | # |
Matt-
This is quite the branch! Most of it was the glade file, so I understand
that it's quite a bit smaller than it looks. As usual, your code is sound, and
I don't have many comments, just a few on the docsctrings, etc.
I think it might be a good idea to have Samuel take a look at this and make
sure you aren't stepping on his toes with the work he's doing.
Cheers,
Paul
=== modified file 'entertainerlib
--- a/entertainerli
+++ b/entertainerli
@@ -19,32 +24,46 @@
from entertainerlib.
class UserInterface:
- """
- Entertainer user interface.
-
- Object from this class represents the main window of the Entertainer
- client. This window is actually a wrapper for Pigment viewport.
- """
+ '''This class represents the main GUI window of the Entertainer client.'''
I've personally been trying to stay away from "This class..." as it's a bit
redundant. Maybe something like "A main GUI Window for the Entertainer
client."
- 356. By Matt Layman
-
Fixed a doc string comment.
Matt Layman (mblayman) wrote : | # |
=== modified file 'entertainerlib
--- a/entertainerli
+++ b/entertainerli
@@ -19,32 +24,46 @@
from entertainerlib.
class UserInterface:
- """
- Entertainer user interface.
-
- Object from this class represents the main window of the Entertainer
- client. This window is actually a wrapper for Pigment viewport.
- """
+ '''This class represents the main GUI window of the Entertainer client.'''
I've personally been trying to stay away from "This class..." as it's a bit
redundant. Maybe something like "A main GUI Window for the Entertainer
client."
"
I wrote it that way because I was trying to craft a whole sentence. I guess in this case, it's best to just leave it as a sentence fragment. It's fixed now. Here's the partial diff:
=== modified file 'entertainerlib
--- entertainerlib/
+++ entertainerlib/
@@ -24,7 +24,7 @@
from entertainerlib.
class UserInterface:
- '''This class represents the main GUI window of the Entertainer client.'''
+ '''A main GUI window of the Entertainer client.'''
def __init__(self, feed_library, image_library, music_library,
Matt Layman (mblayman) wrote : | # |
=== modified file 'entertainerlib
--- a/entertainerli
+++ b/entertainerli
@@ -19,32 +24,46 @@
from entertainerlib.
class UserInterface:
- """
- Entertainer user interface.
-
- Object from this class represents the main window of the Entertainer
- client. This window is actually a wrapper for Pigment viewport.
- """
+ '''This class represents the main GUI window of the Entertainer client.'''
I've personally been trying to stay away from "This class..." as it's a bit
redundant. Maybe something like "A main GUI Window for the Entertainer
client."
"
I wrote it that way because I was trying to craft a whole sentence. I guess in this case, it's best to just leave it as a sentence fragment. It's fixed now. Here's the partial diff:
=== modified file 'entertainerlib
--- entertainerlib/
+++ entertainerlib/
@@ -24,7 +24,7 @@
from entertainerlib.
class UserInterface:
- '''This class represents the main GUI window of the Entertainer client.'''
+ '''A main GUI window of the Entertainer client.'''
def __init__(self, feed_library, image_library, music_library,
- 357. By Matt Layman
-
Merged from trunk and resolved conflicts.
Samuel Buffet (samuel-buffet) wrote : | # |
Matt here is my review,
goal of the branch ok
make test : ok
make lint : ok
functional tests :
entertainer ok
content-manager ok
entertainer-
This branch is real improvement of Entertainer as the Clutter windowing system was very poor.
@Paul: This branch does not conflict with the widgets refactoring work I've started. It's more an addition than anything else.
Thanks Matt for that very good work.
Samuel,
Matt Layman (mblayman) wrote : | # |
Commit Message: Entertainer now defaults to starting in fullsceen mode, and the preferences have been modified so that users can toggle between fullscreen and window mode. (Matt Layman)
Preview Diff
1 | === modified file 'cfg/preferences.conf' |
2 | --- cfg/preferences.conf 2009-02-07 00:44:47 +0000 |
3 | +++ cfg/preferences.conf 2009-03-08 21:29:32 +0000 |
4 | @@ -5,7 +5,7 @@ |
5 | stage_width = 1366 |
6 | stage_height = 768 |
7 | show_effects = True |
8 | -start_in_fullscreen = False |
9 | +start_in_fullscreen = True |
10 | theme = Default |
11 | backend_port = 45054 |
12 | history_size = 8 |
13 | |
14 | === modified file 'entertainerlib/frontend/__init__.py' |
15 | --- entertainerlib/frontend/__init__.py 2009-02-07 20:28:47 +0000 |
16 | +++ entertainerlib/frontend/__init__.py 2009-03-08 03:16:25 +0000 |
17 | @@ -1,10 +1,15 @@ |
18 | '''Frontend gui to entertainer''' |
19 | +# pylint: disable-msg=W0612 |
20 | |
21 | def main(*args, **kwargs): |
22 | '''Frontend runner''' |
23 | |
24 | - # Import statements are inside thu function so that they aren't imported |
25 | + # Import statements are inside the function so that they aren't imported |
26 | # every time something from the frontend is imported |
27 | + |
28 | + # cluttergtk must be imported before the first import of clutter so it |
29 | + # must be imported even though pylint complains about it not being used. |
30 | + import cluttergtk |
31 | import clutter |
32 | import gobject |
33 | import gtk |
34 | |
35 | === modified file 'entertainerlib/frontend/gui/user_interface.py' |
36 | --- entertainerlib/frontend/gui/user_interface.py 2009-02-07 20:28:47 +0000 |
37 | +++ entertainerlib/frontend/gui/user_interface.py 2009-03-09 01:38:26 +0000 |
38 | @@ -1,10 +1,15 @@ |
39 | '''UserInterface - Main window of the Entertainer frontend''' |
40 | |
41 | __licence__ = "GPLv2" |
42 | -__copyright__ = "2007, Lauri Taimila" |
43 | -__author__ = "Lauri Taimila <lauri@taimila.com>" |
44 | - |
45 | +__copyright__ = "2007, Lauri Taimila, 2009, Matt Layman" |
46 | +__author__ = ("Lauri Taimila <lauri@taimila.com>", |
47 | + 'Matt Layman <laymansterms.dev@gmail.com>') |
48 | + |
49 | +import os |
50 | + |
51 | +import cluttergtk |
52 | import clutter |
53 | +import gobject |
54 | import gtk |
55 | |
56 | from entertainerlib.frontend.gui.screen_history import ScreenHistory |
57 | @@ -19,32 +24,46 @@ |
58 | from entertainerlib.utils.logger import Logger |
59 | |
60 | class UserInterface: |
61 | - """ |
62 | - Entertainer user interface. |
63 | - |
64 | - Object from this class represents the main window of the Entertainer |
65 | - client. This window is actually a wrapper for Pigment viewport. |
66 | - """ |
67 | + '''This class represents the main GUI window of the Entertainer client.''' |
68 | |
69 | def __init__(self, feed_library, image_library, music_library, |
70 | video_library, quit_frontend_callback): |
71 | self.quit_frontend_callback = quit_frontend_callback |
72 | self.config = Configuration() |
73 | |
74 | - self.STAGE_WIDTH = self.config.get_stage_width() |
75 | - self.STAGE_HEIGHT = self.config.get_stage_height() |
76 | + # Store the dimensions in case users want to return to window mode |
77 | + self.old_width = self.config.get_stage_width() |
78 | + self.old_height = self.config.get_stage_height() |
79 | |
80 | - self.theme = self.config.theme |
81 | self.logger = Logger().getLogger('frontend.gui.UserInterface') |
82 | |
83 | - # Set desktop resolution width and height to class attributes |
84 | - rwindow = gtk.gdk.get_default_root_window() |
85 | - self.res_width, self.res_height = rwindow.get_size() |
86 | - self.fullscreen_offset = int( |
87 | - (self.res_height - self.res_width * 0.5625) / 2) # Keep 16:9 |
88 | - |
89 | - # Create stage |
90 | - self.stage = clutter.Stage() |
91 | + self.window = gtk.Window() |
92 | + self.window.connect('destroy', self.destroy_callback) |
93 | + self.window.set_title('Entertainer') |
94 | + |
95 | + # Set the window icon |
96 | + icon_theme = gtk.icon_theme_get_default() |
97 | + try: |
98 | + icon = icon_theme.load_icon('entertainer', 48, 0) |
99 | + self.window.set_icon(icon) |
100 | + except gobject.GError: |
101 | + # Must not be installed from a package, get icon from the branch |
102 | + file_dir = os.path.dirname(__file__) |
103 | + icon_path = os.path.join(file_dir, '..', '..', '..', 'icons', |
104 | + 'hicolor', '48x48', 'apps', 'entertainer.png') |
105 | + icon = gtk.gdk.pixbuf_new_from_file(icon_path) |
106 | + self.window.set_icon(icon) |
107 | + |
108 | + # cluttergtk.Embed contains the stage that is the canvas for the GUI |
109 | + embed = cluttergtk.Embed() |
110 | + # Enforce a minimum size to prevent weird widget bugs |
111 | + embed.set_size_request( |
112 | + self.config.get_stage_width(), self.config.get_stage_height()) |
113 | + self.window.add(embed) |
114 | + |
115 | + # The embed widget must be realized before you can get the stage. |
116 | + embed.realize() |
117 | + self.stage = embed.get_stage() |
118 | |
119 | #XXX: Joshua: Disabling mipmapping as this creates problems for |
120 | #intel graphics chips (example |
121 | @@ -53,27 +72,31 @@ |
122 | #problem |
123 | clutter.set_use_mipmapped_text(False) |
124 | |
125 | - #self.stage.set_user_resizable(True) |
126 | self.stage.connect('key-press-event', self.handle_keyboard_event) |
127 | - self.stage.set_color(self.theme.get_color("background")) |
128 | - self.stage.set_size(self.STAGE_WIDTH, self.STAGE_HEIGHT) |
129 | + self.stage.set_color(self.config.theme.get_color("background")) |
130 | + self.stage.set_size( |
131 | + self.config.get_stage_width(), self.config.get_stage_height()) |
132 | self.stage.set_title("Entertainer") |
133 | |
134 | - self.is_fullscreen = False |
135 | + if self.config.start_in_fullscreen(): |
136 | + self._fullscreen() |
137 | + self.is_fullscreen = True |
138 | + else: |
139 | + self.is_fullscreen = False |
140 | |
141 | # Initialize Screen history (allows user to navigate "back") |
142 | self.history = ScreenHistory(self.stage, self.config.history_size()) |
143 | - # Intialize media player |
144 | + |
145 | self.player = MediaPlayer(self.stage, |
146 | - self.STAGE_WIDTH, |
147 | - self.STAGE_HEIGHT) |
148 | + self.config.get_stage_width(), self.config.get_stage_height()) |
149 | |
150 | # Initialize menu overlay texture |
151 | self.overlay_status = False |
152 | - self.menu_overlay = MenuOverlay(self.theme) |
153 | + self.menu_overlay = MenuOverlay(self.config.theme) |
154 | self.menu_overlay.set_opacity(0) |
155 | self.menu_overlay.set_name("overlay") |
156 | - self.menu_overlay.set_size(self.STAGE_WIDTH, self.STAGE_HEIGHT) |
157 | + self.menu_overlay.set_size( |
158 | + self.config.get_stage_width(), self.config.get_stage_height()) |
159 | self.stage.add(self.menu_overlay) |
160 | |
161 | # Transition object. Handles effects between screen changes. |
162 | @@ -86,26 +109,19 @@ |
163 | self.player, self.history, |
164 | self.move_to_new_screen, self.changeScreen) |
165 | |
166 | - # Black bars that are used if monitor/TV aspect ratio is not 16:9 |
167 | - self.top_bar = clutter.Rectangle() |
168 | - self.top_bar.set_size(self.res_width, self.fullscreen_offset) |
169 | - self.top_bar.set_color(clutter.Color(0, 0, 0, 255)) |
170 | - self.top_bar.set_position(0, 0) |
171 | - self.top_bar.hide() |
172 | - self.stage.add(self.top_bar) |
173 | - |
174 | - self.bottom_bar = clutter.Rectangle() |
175 | - self.bottom_bar.set_size(self.res_width, self.fullscreen_offset) |
176 | - self.bottom_bar.set_color(clutter.Color(0, 0, 0, 255)) |
177 | - self.bottom_bar.set_position(0, |
178 | - int(self.res_width * 0.5625 - self.fullscreen_offset)) |
179 | - self.bottom_bar.hide() |
180 | - self.stage.add(self.bottom_bar) |
181 | self.logger.debug("Frontend GUI initialized succesfully") |
182 | |
183 | - # This will probably be needed eventually to fix the exiting bug |
184 | - #def delete_event(self, widget, event, data=None): |
185 | - #self.shutdown() |
186 | + def _fullscreen(self): |
187 | + '''Set the window, stage, and config to fullscreen dimensions.''' |
188 | + self.window.fullscreen() |
189 | + self.stage.fullscreen() |
190 | + width, height = self.stage.get_size() |
191 | + self.config.set_stage_width(int(width)) |
192 | + self.config.set_stage_height(int(height)) |
193 | + |
194 | + def destroy_callback(self, widget): |
195 | + '''Handle the GTK destroy signal and close gracefully.''' |
196 | + self.shutdown() |
197 | |
198 | def confirm_exit(self): |
199 | """ |
200 | @@ -159,31 +175,14 @@ |
201 | """ |
202 | if self.is_fullscreen: |
203 | self.stage.unfullscreen() |
204 | - self.top_bar.hide() |
205 | - self.bottom_bar.hide() |
206 | - self.resize_stage(self.STAGE_WIDTH, self.STAGE_HEIGHT) |
207 | - self.current.set_position(0, 0) |
208 | - self.menu_overlay.set_position(0, 0) |
209 | + self.window.unfullscreen() |
210 | + self.config.set_stage_width(self.old_width) |
211 | + self.config.set_stage_height(self.old_height) |
212 | self.is_fullscreen = False |
213 | else: |
214 | - self.stage.fullscreen() |
215 | - self.top_bar.show() |
216 | - self.bottom_bar.show() |
217 | - self.resize_stage(self.res_width, self.res_width * 0.5625) |
218 | - self.current.set_position(0, self.fullscreen_offset) |
219 | - self.menu_overlay.set_position(0, self.fullscreen_offset) |
220 | + self._fullscreen() |
221 | self.is_fullscreen = True |
222 | |
223 | - def resize_stage(self, width, height): |
224 | - """ |
225 | - Resize and scale stage. |
226 | - @param width: New width for the stage |
227 | - @param height: New height for the stage |
228 | - """ |
229 | - self.stage.set_scale(float(width) / float(self.STAGE_WIDTH), |
230 | - float(height) / float(self.STAGE_HEIGHT)) |
231 | - self.stage.set_size(int(width), int(height)) |
232 | - |
233 | def create_screen(self, screen_type, data=None): |
234 | '''Delegate to the screen factory to generate a screen.''' |
235 | screen = self.screen_factory.generate_screen(screen_type, data) |
236 | @@ -198,11 +197,11 @@ |
237 | |
238 | def show(self): |
239 | '''Show the user interface.''' |
240 | - self.stage.show() |
241 | + self.window.show_all() |
242 | |
243 | def hide(self): |
244 | '''Hide the user interface.''' |
245 | - self.stage.hide() |
246 | + self.window.hide_all() |
247 | |
248 | def _remove_from_stage(self, group): |
249 | '''Remove the listed group from the stage''' |
250 | |
251 | === modified file 'entertainerlib/frontend/gui/widgets/base.py' |
252 | --- entertainerlib/frontend/gui/widgets/base.py 2009-01-11 01:35:47 +0000 |
253 | +++ entertainerlib/frontend/gui/widgets/base.py 2009-03-08 03:16:25 +0000 |
254 | @@ -24,14 +24,3 @@ |
255 | result = int(self.config.get_stage_height() * percentage) |
256 | return result |
257 | |
258 | - def get_abs_x_pos(self, percentage): |
259 | - """Transform percentage to an abs position based on the stage width |
260 | - within the restriction of 16:9""" |
261 | - result = self.get_abs_x(percentage) |
262 | - return result |
263 | - |
264 | - def get_abs_y_pos(self, percentage): |
265 | - """Transform percentage to an abs position based on the stage height |
266 | - within the restriction of 16:9""" |
267 | - result = self.get_abs_y(percentage) + self.config.get_vertical_offset() |
268 | - return result |
269 | |
270 | === modified file 'entertainerlib/frontend/gui/widgets/label.py' |
271 | --- entertainerlib/frontend/gui/widgets/label.py 2009-01-10 23:39:40 +0000 |
272 | +++ entertainerlib/frontend/gui/widgets/label.py 2009-03-08 03:16:25 +0000 |
273 | @@ -78,8 +78,8 @@ |
274 | (x_pos_percent, y_pos_percent) = position_pair |
275 | |
276 | clutter.Label.set_position(self, |
277 | - self.get_abs_x_pos(x_pos_percent), |
278 | - self.get_abs_y_pos(y_pos_percent)) |
279 | + self.get_abs_x(x_pos_percent), |
280 | + self.get_abs_y(y_pos_percent)) |
281 | |
282 | position = property(_get_position, _set_position) |
283 | |
284 | |
285 | === modified file 'entertainerlib/frontend/gui/widgets/scroll_area.py' |
286 | --- entertainerlib/frontend/gui/widgets/scroll_area.py 2009-01-11 00:12:18 +0000 |
287 | +++ entertainerlib/frontend/gui/widgets/scroll_area.py 2009-03-08 03:16:25 +0000 |
288 | @@ -29,8 +29,8 @@ |
289 | self.content_group = None |
290 | |
291 | self.set_position( |
292 | - self.get_abs_x_pos(x_pos_percent), |
293 | - self.get_abs_y_pos(y_pos_percent)) |
294 | + self.get_abs_x(x_pos_percent), |
295 | + self.get_abs_y(y_pos_percent)) |
296 | |
297 | # Create content position indicator |
298 | self.indicator = ListIndicator(0.2, 0.045, ListIndicator.VERTICAL) |
299 | |
300 | === modified file 'entertainerlib/frontend/gui/widgets/texture.py' |
301 | --- entertainerlib/frontend/gui/widgets/texture.py 2009-01-11 00:05:59 +0000 |
302 | +++ entertainerlib/frontend/gui/widgets/texture.py 2009-03-08 03:16:25 +0000 |
303 | @@ -36,8 +36,8 @@ |
304 | (x_pos_percent, y_pos_percent) = position_pair |
305 | |
306 | clutter.Texture.set_position(self, |
307 | - self.get_abs_x_pos(x_pos_percent), |
308 | - self.get_abs_y_pos(y_pos_percent)) |
309 | + self.get_abs_x(x_pos_percent), |
310 | + self.get_abs_y(y_pos_percent)) |
311 | |
312 | position = property(_get_position, _set_position) |
313 | |
314 | |
315 | === modified file 'entertainerlib/tests/test_base.py' |
316 | --- entertainerlib/tests/test_base.py 2009-01-31 21:36:56 +0000 |
317 | +++ entertainerlib/tests/test_base.py 2009-03-08 03:16:25 +0000 |
318 | @@ -32,16 +32,3 @@ |
319 | """Test getting the absolute size of y based on the stage height""" |
320 | self.assertEqual(self.base.get_abs_y(.25), 192) |
321 | |
322 | - def testGetAbsXPos(self): |
323 | - """Test getting the position of x within the 16:9 viewing area""" |
324 | - self.assertEqual(self.base.get_abs_x_pos(.25), 341) |
325 | - |
326 | - def testGetAbsYPos(self): |
327 | - """Test getting the position of y within the 16:9 viewing area""" |
328 | - # Need to modify the private config for this test to get an interesting |
329 | - # stage size that actually has an offset |
330 | - self.base.config.set_stage_width(16) |
331 | - self.base.config.set_stage_height(11) |
332 | - |
333 | - self.assertEqual(self.base.get_abs_y_pos(.5), 6) |
334 | - |
335 | |
336 | === modified file 'entertainerlib/tests/test_configuration.py' |
337 | --- entertainerlib/tests/test_configuration.py 2009-02-07 20:28:47 +0000 |
338 | +++ entertainerlib/tests/test_configuration.py 2009-03-08 03:16:25 +0000 |
339 | @@ -69,12 +69,6 @@ |
340 | self.configuration.set_stage_height], |
341 | {'new_height' : 768, 'sanitize' : True}) |
342 | |
343 | - def testGetVerticalOffset(self): |
344 | - '''Test getting the vertical offset''' |
345 | - self.configuration.set_stage_height(11) |
346 | - self.configuration.set_stage_width(16) |
347 | - self.assertEqual(self.configuration.get_vertical_offset(), 1) |
348 | - |
349 | def testGetCfgDir(self): |
350 | """Test getting the cfg dir""" |
351 | self.assertEqual(self.configuration.get_cfg_dir(), self.config.TEST_DIR) |
352 | |
353 | === modified file 'entertainerlib/utils/configuration.py' |
354 | --- entertainerlib/utils/configuration.py 2009-02-07 20:28:47 +0000 |
355 | +++ entertainerlib/utils/configuration.py 2009-03-08 21:29:32 +0000 |
356 | @@ -102,7 +102,6 @@ |
357 | |
358 | self.stage_width = None |
359 | self.stage_height = None |
360 | - self.vertical_offset = None |
361 | |
362 | def create_cfg_dir(self): |
363 | '''Create a configuration directory and default config files.''' |
364 | @@ -225,12 +224,6 @@ |
365 | |
366 | self.stage_height = new_height |
367 | |
368 | - def get_vertical_offset(self): |
369 | - '''Get the vertical offset that will keep widgets within a 16:9 ratio''' |
370 | - self.vertical_offset = int((self.get_stage_height() - |
371 | - (self.get_stage_width() * .5625)) / 2) |
372 | - return self.vertical_offset |
373 | - |
374 | def get_theme_path(self): |
375 | """ |
376 | Get absolute path of the used theme. |
377 | @@ -432,15 +425,12 @@ |
378 | return result |
379 | |
380 | def start_in_fullscreen(self): |
381 | - """ |
382 | - Return True if frontend should start in Fullscreen mode, otherwise False |
383 | - @return: boolean |
384 | - """ |
385 | + '''Boolean to determine whether to start in fullscreen mode or not.''' |
386 | try: |
387 | result = self.preferences.getboolean("General", |
388 | "start_in_fullscreen") |
389 | except (NoSectionError, NoOptionError): |
390 | - return False |
391 | + return True |
392 | return result |
393 | |
394 | def start_auto_server(self): |
395 | |
396 | === modified file 'entertainerlib/utils/glade/entertainer-preferences.glade' |
397 | --- entertainerlib/utils/glade/entertainer-preferences.glade 2009-02-07 00:44:47 +0000 |
398 | +++ entertainerlib/utils/glade/entertainer-preferences.glade 2009-03-08 22:29:55 +0000 |
399 | @@ -1,719 +1,1223 @@ |
400 | -<?xml version="1.0" encoding="UTF-8" standalone="no"?> |
401 | -<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd"> |
402 | -<!--Generated with glade3 3.4.5 on Sun Dec 14 21:26:03 2008 --> |
403 | +<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*--> |
404 | +<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd"> |
405 | + |
406 | <glade-interface> |
407 | - <widget class="GtkDialog" id="PreferencesDialog"> |
408 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
409 | - <property name="border_width">5</property> |
410 | - <property name="title" translatable="yes">Preferences</property> |
411 | - <property name="modal">True</property> |
412 | - <property name="window_position">GTK_WIN_POS_CENTER</property> |
413 | - <property name="icon_name">gtk-preferences</property> |
414 | - <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property> |
415 | - <property name="has_separator">False</property> |
416 | - <signal name="delete_event" handler="on_PreferencesDialog_delete_event"/> |
417 | - <child internal-child="vbox"> |
418 | - <widget class="GtkVBox" id="dialog-vbox1"> |
419 | - <property name="visible">True</property> |
420 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
421 | - <property name="spacing">2</property> |
422 | - <child> |
423 | - <widget class="GtkNotebook" id="notebook1"> |
424 | - <property name="visible">True</property> |
425 | - <property name="can_focus">True</property> |
426 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
427 | - <child> |
428 | - <widget class="GtkVBox" id="vbox4"> |
429 | - <property name="visible">True</property> |
430 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
431 | - <child> |
432 | - <widget class="GtkFrame" id="frame3"> |
433 | - <property name="visible">True</property> |
434 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
435 | - <property name="border_width">5</property> |
436 | - <property name="label_xalign">0</property> |
437 | - <property name="shadow_type">GTK_SHADOW_NONE</property> |
438 | - <child> |
439 | - <widget class="GtkAlignment" id="alignment3"> |
440 | - <property name="visible">True</property> |
441 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
442 | - <property name="left_padding">12</property> |
443 | - <child> |
444 | - <widget class="GtkVBox" id="vbox5"> |
445 | - <property name="visible">True</property> |
446 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
447 | - <child> |
448 | - <widget class="GtkCheckButton" id="checkbutton_autostart"> |
449 | - <property name="visible">True</property> |
450 | - <property name="can_focus">True</property> |
451 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
452 | - <property name="label" translatable="yes">Start server automatically</property> |
453 | - <property name="response_id">0</property> |
454 | - <property name="draw_indicator">True</property> |
455 | - <signal name="toggled" handler="on_checkbutton_autostart_toggled"/> |
456 | - </widget> |
457 | - </child> |
458 | - <child> |
459 | - <widget class="GtkCheckButton" id="checkbutton_systray_icon"> |
460 | - <property name="visible">True</property> |
461 | - <property name="can_focus">True</property> |
462 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
463 | - <property name="label" translatable="yes">Display system tray icon in notification area</property> |
464 | - <property name="response_id">0</property> |
465 | - <property name="draw_indicator">True</property> |
466 | - <signal name="toggled" handler="on_checkbutton_systray_icon_toggled"/> |
467 | - </widget> |
468 | - <packing> |
469 | - <property name="position">1</property> |
470 | - </packing> |
471 | - </child> |
472 | - <child> |
473 | - <placeholder/> |
474 | - </child> |
475 | - </widget> |
476 | - </child> |
477 | - </widget> |
478 | - </child> |
479 | - <child> |
480 | - <widget class="GtkLabel" id="label15"> |
481 | - <property name="visible">True</property> |
482 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
483 | - <property name="label" translatable="yes"><b>Server settings</b></property> |
484 | - <property name="use_markup">True</property> |
485 | - </widget> |
486 | - <packing> |
487 | - <property name="type">label_item</property> |
488 | - </packing> |
489 | - </child> |
490 | - </widget> |
491 | - <packing> |
492 | - <property name="padding">5</property> |
493 | - </packing> |
494 | - </child> |
495 | - <child> |
496 | - <widget class="GtkFrame" id="frame4"> |
497 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
498 | - <property name="border_width">5</property> |
499 | - <property name="label_xalign">0</property> |
500 | - <property name="shadow_type">GTK_SHADOW_NONE</property> |
501 | - <child> |
502 | - <widget class="GtkAlignment" id="alignment4"> |
503 | - <property name="visible">True</property> |
504 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
505 | - <property name="left_padding">12</property> |
506 | - <child> |
507 | - <widget class="GtkVBox" id="vbox6"> |
508 | - <property name="visible">True</property> |
509 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
510 | - <child> |
511 | - <widget class="GtkHBox" id="hbox9"> |
512 | - <property name="visible">True</property> |
513 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
514 | - <child> |
515 | - <widget class="GtkSpinButton" id="spinbutton1"> |
516 | - <property name="visible">True</property> |
517 | - <property name="can_focus">True</property> |
518 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
519 | - <property name="max_length">25</property> |
520 | - <property name="adjustment">0 0 100 1 10 0</property> |
521 | - </widget> |
522 | - <packing> |
523 | - <property name="expand">False</property> |
524 | - </packing> |
525 | - </child> |
526 | - <child> |
527 | - <widget class="GtkLabel" id="label26"> |
528 | - <property name="visible">True</property> |
529 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
530 | - <property name="label" translatable="yes">Screen history size</property> |
531 | - </widget> |
532 | - <packing> |
533 | - <property name="expand">False</property> |
534 | - <property name="padding">5</property> |
535 | - <property name="position">1</property> |
536 | - </packing> |
537 | - </child> |
538 | - </widget> |
539 | - </child> |
540 | - <child> |
541 | - <placeholder/> |
542 | - </child> |
543 | - <child> |
544 | - <placeholder/> |
545 | - </child> |
546 | - </widget> |
547 | - </child> |
548 | - </widget> |
549 | - </child> |
550 | - <child> |
551 | - <widget class="GtkLabel" id="label16"> |
552 | - <property name="visible">True</property> |
553 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
554 | - <property name="label" translatable="yes"><b>What comes here?</b></property> |
555 | - <property name="use_markup">True</property> |
556 | - </widget> |
557 | - <packing> |
558 | - <property name="type">label_item</property> |
559 | - </packing> |
560 | - </child> |
561 | - </widget> |
562 | - <packing> |
563 | - <property name="padding">5</property> |
564 | - <property name="position">1</property> |
565 | - </packing> |
566 | - </child> |
567 | - </widget> |
568 | - </child> |
569 | - <child> |
570 | - <widget class="GtkLabel" id="label1"> |
571 | - <property name="visible">True</property> |
572 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
573 | - <property name="label" translatable="yes">General</property> |
574 | - </widget> |
575 | - <packing> |
576 | - <property name="type">tab</property> |
577 | - <property name="tab_fill">False</property> |
578 | - </packing> |
579 | - </child> |
580 | - <child> |
581 | - <widget class="GtkVBox" id="vbox_user_interface"> |
582 | - <property name="visible">True</property> |
583 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
584 | - <child> |
585 | - <widget class="GtkFrame" id="frame_effects"> |
586 | - <property name="visible">True</property> |
587 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
588 | - <property name="border_width">5</property> |
589 | - <property name="label_xalign">0</property> |
590 | - <property name="shadow_type">GTK_SHADOW_NONE</property> |
591 | - <child> |
592 | - <widget class="GtkAlignment" id="alignment5"> |
593 | - <property name="visible">True</property> |
594 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
595 | - <property name="left_padding">12</property> |
596 | - <child> |
597 | - <widget class="GtkVBox" id="vbox7"> |
598 | - <property name="visible">True</property> |
599 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
600 | - <child> |
601 | - <widget class="GtkCheckButton" id="effect_checkbox"> |
602 | - <property name="visible">True</property> |
603 | - <property name="can_focus">True</property> |
604 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
605 | - <property name="label" translatable="yes">Show user interface effects</property> |
606 | - <property name="response_id">0</property> |
607 | - <property name="draw_indicator">True</property> |
608 | - <signal name="toggled" handler="on_effect_checkbox_toggled"/> |
609 | - </widget> |
610 | - <packing> |
611 | - <property name="padding">5</property> |
612 | - </packing> |
613 | - </child> |
614 | - <child> |
615 | - <widget class="GtkHBox" id="hbox1"> |
616 | - <property name="visible">True</property> |
617 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
618 | - <child> |
619 | - <widget class="GtkLabel" id="label19"> |
620 | - <property name="visible">True</property> |
621 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
622 | - <property name="xalign">0</property> |
623 | - <property name="label" translatable="yes">Screen change effect</property> |
624 | - </widget> |
625 | - <packing> |
626 | - <property name="expand">False</property> |
627 | - <property name="padding">5</property> |
628 | - </packing> |
629 | - </child> |
630 | - <child> |
631 | - <widget class="GtkComboBox" id="effect_combobox"> |
632 | - <property name="visible">True</property> |
633 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
634 | - <property name="no_show_all">True</property> |
635 | - <property name="items" translatable="yes">No effect |
636 | + |
637 | +<widget class="GtkDialog" id="PreferencesDialog"> |
638 | + <property name="border_width">5</property> |
639 | + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
640 | + <property name="title" translatable="yes">Preferences</property> |
641 | + <property name="type">GTK_WINDOW_TOPLEVEL</property> |
642 | + <property name="window_position">GTK_WIN_POS_CENTER</property> |
643 | + <property name="modal">True</property> |
644 | + <property name="resizable">True</property> |
645 | + <property name="destroy_with_parent">False</property> |
646 | + <property name="icon_name">gtk-preferences</property> |
647 | + <property name="decorated">True</property> |
648 | + <property name="skip_taskbar_hint">False</property> |
649 | + <property name="skip_pager_hint">False</property> |
650 | + <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property> |
651 | + <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> |
652 | + <property name="focus_on_map">True</property> |
653 | + <property name="urgency_hint">False</property> |
654 | + <property name="has_separator">False</property> |
655 | + <signal name="delete_event" handler="on_PreferencesDialog_delete_event"/> |
656 | + |
657 | + <child internal-child="vbox"> |
658 | + <widget class="GtkVBox" id="dialog-vbox1"> |
659 | + <property name="visible">True</property> |
660 | + <property name="homogeneous">False</property> |
661 | + <property name="spacing">2</property> |
662 | + |
663 | + <child internal-child="action_area"> |
664 | + <widget class="GtkHButtonBox" id="dialog-action_area1"> |
665 | + <property name="visible">True</property> |
666 | + <property name="layout_style">GTK_BUTTONBOX_END</property> |
667 | + |
668 | + <child> |
669 | + <widget class="GtkButton" id="close_button"> |
670 | + <property name="visible">True</property> |
671 | + <property name="can_focus">True</property> |
672 | + <property name="label">gtk-close</property> |
673 | + <property name="use_stock">True</property> |
674 | + <property name="relief">GTK_RELIEF_NORMAL</property> |
675 | + <property name="focus_on_click">True</property> |
676 | + <property name="response_id">0</property> |
677 | + <signal name="clicked" handler="on_close_button_clicked"/> |
678 | + </widget> |
679 | + </child> |
680 | + </widget> |
681 | + <packing> |
682 | + <property name="padding">0</property> |
683 | + <property name="expand">False</property> |
684 | + <property name="fill">True</property> |
685 | + <property name="pack_type">GTK_PACK_END</property> |
686 | + </packing> |
687 | + </child> |
688 | + |
689 | + <child> |
690 | + <widget class="GtkNotebook" id="notebook1"> |
691 | + <property name="visible">True</property> |
692 | + <property name="can_focus">True</property> |
693 | + <property name="show_tabs">True</property> |
694 | + <property name="show_border">True</property> |
695 | + <property name="tab_pos">GTK_POS_TOP</property> |
696 | + <property name="scrollable">False</property> |
697 | + <property name="enable_popup">False</property> |
698 | + |
699 | + <child> |
700 | + <widget class="GtkVBox" id="vbox4"> |
701 | + <property name="visible">True</property> |
702 | + <property name="homogeneous">False</property> |
703 | + <property name="spacing">0</property> |
704 | + |
705 | + <child> |
706 | + <widget class="GtkFrame" id="frame3"> |
707 | + <property name="border_width">5</property> |
708 | + <property name="visible">True</property> |
709 | + <property name="label_xalign">0</property> |
710 | + <property name="label_yalign">0.5</property> |
711 | + <property name="shadow_type">GTK_SHADOW_NONE</property> |
712 | + |
713 | + <child> |
714 | + <widget class="GtkAlignment" id="alignment3"> |
715 | + <property name="visible">True</property> |
716 | + <property name="xalign">0.5</property> |
717 | + <property name="yalign">0.5</property> |
718 | + <property name="xscale">1</property> |
719 | + <property name="yscale">1</property> |
720 | + <property name="top_padding">0</property> |
721 | + <property name="bottom_padding">0</property> |
722 | + <property name="left_padding">12</property> |
723 | + <property name="right_padding">0</property> |
724 | + |
725 | + <child> |
726 | + <widget class="GtkVBox" id="vbox5"> |
727 | + <property name="visible">True</property> |
728 | + <property name="homogeneous">False</property> |
729 | + <property name="spacing">0</property> |
730 | + |
731 | + <child> |
732 | + <widget class="GtkCheckButton" id="checkbutton_autostart"> |
733 | + <property name="visible">True</property> |
734 | + <property name="can_focus">True</property> |
735 | + <property name="label" translatable="yes">Start server automatically</property> |
736 | + <property name="use_underline">True</property> |
737 | + <property name="relief">GTK_RELIEF_NORMAL</property> |
738 | + <property name="focus_on_click">True</property> |
739 | + <property name="active">False</property> |
740 | + <property name="inconsistent">False</property> |
741 | + <property name="draw_indicator">True</property> |
742 | + <signal name="toggled" handler="on_checkbutton_autostart_toggled"/> |
743 | + </widget> |
744 | + <packing> |
745 | + <property name="padding">0</property> |
746 | + <property name="expand">True</property> |
747 | + <property name="fill">True</property> |
748 | + </packing> |
749 | + </child> |
750 | + |
751 | + <child> |
752 | + <widget class="GtkCheckButton" id="checkbutton_systray_icon"> |
753 | + <property name="visible">True</property> |
754 | + <property name="can_focus">True</property> |
755 | + <property name="label" translatable="yes">Display system tray icon in notification area</property> |
756 | + <property name="use_underline">True</property> |
757 | + <property name="relief">GTK_RELIEF_NORMAL</property> |
758 | + <property name="focus_on_click">True</property> |
759 | + <property name="active">False</property> |
760 | + <property name="inconsistent">False</property> |
761 | + <property name="draw_indicator">True</property> |
762 | + <signal name="toggled" handler="on_checkbutton_systray_icon_toggled"/> |
763 | + </widget> |
764 | + <packing> |
765 | + <property name="padding">0</property> |
766 | + <property name="expand">True</property> |
767 | + <property name="fill">True</property> |
768 | + </packing> |
769 | + </child> |
770 | + |
771 | + <child> |
772 | + <widget class="GtkCheckButton" id="checkbutton_fullscreen"> |
773 | + <property name="visible">True</property> |
774 | + <property name="can_focus">True</property> |
775 | + <property name="label" translatable="yes">Start in fullscreen</property> |
776 | + <property name="use_underline">True</property> |
777 | + <property name="relief">GTK_RELIEF_NORMAL</property> |
778 | + <property name="focus_on_click">True</property> |
779 | + <property name="active">False</property> |
780 | + <property name="inconsistent">False</property> |
781 | + <property name="draw_indicator">True</property> |
782 | + <signal name="toggled" handler="on_checkbutton_fullscreen_toggled" last_modification_time="Sun, 08 Mar 2009 21:58:45 GMT"/> |
783 | + </widget> |
784 | + <packing> |
785 | + <property name="padding">0</property> |
786 | + <property name="expand">True</property> |
787 | + <property name="fill">True</property> |
788 | + </packing> |
789 | + </child> |
790 | + </widget> |
791 | + </child> |
792 | + </widget> |
793 | + </child> |
794 | + |
795 | + <child> |
796 | + <widget class="GtkLabel" id="label15"> |
797 | + <property name="visible">True</property> |
798 | + <property name="label" translatable="yes"><b>Server settings</b></property> |
799 | + <property name="use_underline">False</property> |
800 | + <property name="use_markup">True</property> |
801 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
802 | + <property name="wrap">False</property> |
803 | + <property name="selectable">False</property> |
804 | + <property name="xalign">0.5</property> |
805 | + <property name="yalign">0.5</property> |
806 | + <property name="xpad">0</property> |
807 | + <property name="ypad">0</property> |
808 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
809 | + <property name="width_chars">-1</property> |
810 | + <property name="single_line_mode">False</property> |
811 | + <property name="angle">0</property> |
812 | + </widget> |
813 | + <packing> |
814 | + <property name="type">label_item</property> |
815 | + </packing> |
816 | + </child> |
817 | + </widget> |
818 | + <packing> |
819 | + <property name="padding">5</property> |
820 | + <property name="expand">True</property> |
821 | + <property name="fill">True</property> |
822 | + </packing> |
823 | + </child> |
824 | + |
825 | + <child> |
826 | + <widget class="GtkFrame" id="frame4"> |
827 | + <property name="border_width">5</property> |
828 | + <property name="label_xalign">0</property> |
829 | + <property name="label_yalign">0.5</property> |
830 | + <property name="shadow_type">GTK_SHADOW_NONE</property> |
831 | + |
832 | + <child> |
833 | + <widget class="GtkAlignment" id="alignment4"> |
834 | + <property name="visible">True</property> |
835 | + <property name="xalign">0.5</property> |
836 | + <property name="yalign">0.5</property> |
837 | + <property name="xscale">1</property> |
838 | + <property name="yscale">1</property> |
839 | + <property name="top_padding">0</property> |
840 | + <property name="bottom_padding">0</property> |
841 | + <property name="left_padding">12</property> |
842 | + <property name="right_padding">0</property> |
843 | + |
844 | + <child> |
845 | + <widget class="GtkVBox" id="vbox6"> |
846 | + <property name="visible">True</property> |
847 | + <property name="homogeneous">False</property> |
848 | + <property name="spacing">0</property> |
849 | + |
850 | + <child> |
851 | + <widget class="GtkHBox" id="hbox9"> |
852 | + <property name="visible">True</property> |
853 | + <property name="homogeneous">False</property> |
854 | + <property name="spacing">0</property> |
855 | + |
856 | + <child> |
857 | + <widget class="GtkSpinButton" id="spinbutton1"> |
858 | + <property name="visible">True</property> |
859 | + <property name="can_focus">True</property> |
860 | + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
861 | + <property name="climb_rate">1</property> |
862 | + <property name="digits">0</property> |
863 | + <property name="numeric">False</property> |
864 | + <property name="update_policy">GTK_UPDATE_ALWAYS</property> |
865 | + <property name="snap_to_ticks">False</property> |
866 | + <property name="wrap">False</property> |
867 | + <property name="adjustment">0 0 100 1 10 0</property> |
868 | + </widget> |
869 | + <packing> |
870 | + <property name="padding">0</property> |
871 | + <property name="expand">False</property> |
872 | + <property name="fill">True</property> |
873 | + </packing> |
874 | + </child> |
875 | + |
876 | + <child> |
877 | + <widget class="GtkLabel" id="label26"> |
878 | + <property name="visible">True</property> |
879 | + <property name="label" translatable="yes">Screen history size</property> |
880 | + <property name="use_underline">False</property> |
881 | + <property name="use_markup">False</property> |
882 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
883 | + <property name="wrap">False</property> |
884 | + <property name="selectable">False</property> |
885 | + <property name="xalign">0.5</property> |
886 | + <property name="yalign">0.5</property> |
887 | + <property name="xpad">0</property> |
888 | + <property name="ypad">0</property> |
889 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
890 | + <property name="width_chars">-1</property> |
891 | + <property name="single_line_mode">False</property> |
892 | + <property name="angle">0</property> |
893 | + </widget> |
894 | + <packing> |
895 | + <property name="padding">5</property> |
896 | + <property name="expand">False</property> |
897 | + <property name="fill">True</property> |
898 | + </packing> |
899 | + </child> |
900 | + </widget> |
901 | + <packing> |
902 | + <property name="padding">0</property> |
903 | + <property name="expand">True</property> |
904 | + <property name="fill">True</property> |
905 | + </packing> |
906 | + </child> |
907 | + |
908 | + <child> |
909 | + <placeholder/> |
910 | + </child> |
911 | + |
912 | + <child> |
913 | + <placeholder/> |
914 | + </child> |
915 | + </widget> |
916 | + </child> |
917 | + </widget> |
918 | + </child> |
919 | + |
920 | + <child> |
921 | + <widget class="GtkLabel" id="label16"> |
922 | + <property name="visible">True</property> |
923 | + <property name="label" translatable="yes"><b>What comes here?</b></property> |
924 | + <property name="use_underline">False</property> |
925 | + <property name="use_markup">True</property> |
926 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
927 | + <property name="wrap">False</property> |
928 | + <property name="selectable">False</property> |
929 | + <property name="xalign">0.5</property> |
930 | + <property name="yalign">0.5</property> |
931 | + <property name="xpad">0</property> |
932 | + <property name="ypad">0</property> |
933 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
934 | + <property name="width_chars">-1</property> |
935 | + <property name="single_line_mode">False</property> |
936 | + <property name="angle">0</property> |
937 | + </widget> |
938 | + <packing> |
939 | + <property name="type">label_item</property> |
940 | + </packing> |
941 | + </child> |
942 | + </widget> |
943 | + <packing> |
944 | + <property name="padding">5</property> |
945 | + <property name="expand">True</property> |
946 | + <property name="fill">True</property> |
947 | + </packing> |
948 | + </child> |
949 | + </widget> |
950 | + <packing> |
951 | + <property name="tab_expand">False</property> |
952 | + <property name="tab_fill">True</property> |
953 | + </packing> |
954 | + </child> |
955 | + |
956 | + <child> |
957 | + <widget class="GtkLabel" id="label1"> |
958 | + <property name="visible">True</property> |
959 | + <property name="label" translatable="yes">General</property> |
960 | + <property name="use_underline">False</property> |
961 | + <property name="use_markup">False</property> |
962 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
963 | + <property name="wrap">False</property> |
964 | + <property name="selectable">False</property> |
965 | + <property name="xalign">0.5</property> |
966 | + <property name="yalign">0.5</property> |
967 | + <property name="xpad">0</property> |
968 | + <property name="ypad">0</property> |
969 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
970 | + <property name="width_chars">-1</property> |
971 | + <property name="single_line_mode">False</property> |
972 | + <property name="angle">0</property> |
973 | + </widget> |
974 | + <packing> |
975 | + <property name="type">tab</property> |
976 | + </packing> |
977 | + </child> |
978 | + |
979 | + <child> |
980 | + <widget class="GtkVBox" id="vbox_user_interface"> |
981 | + <property name="visible">True</property> |
982 | + <property name="homogeneous">False</property> |
983 | + <property name="spacing">0</property> |
984 | + |
985 | + <child> |
986 | + <widget class="GtkFrame" id="frame_effects"> |
987 | + <property name="border_width">5</property> |
988 | + <property name="visible">True</property> |
989 | + <property name="label_xalign">0</property> |
990 | + <property name="label_yalign">0.5</property> |
991 | + <property name="shadow_type">GTK_SHADOW_NONE</property> |
992 | + |
993 | + <child> |
994 | + <widget class="GtkAlignment" id="alignment5"> |
995 | + <property name="visible">True</property> |
996 | + <property name="xalign">0.5</property> |
997 | + <property name="yalign">0.5</property> |
998 | + <property name="xscale">1</property> |
999 | + <property name="yscale">1</property> |
1000 | + <property name="top_padding">0</property> |
1001 | + <property name="bottom_padding">0</property> |
1002 | + <property name="left_padding">12</property> |
1003 | + <property name="right_padding">0</property> |
1004 | + |
1005 | + <child> |
1006 | + <widget class="GtkVBox" id="vbox7"> |
1007 | + <property name="visible">True</property> |
1008 | + <property name="homogeneous">False</property> |
1009 | + <property name="spacing">0</property> |
1010 | + |
1011 | + <child> |
1012 | + <widget class="GtkCheckButton" id="effect_checkbox"> |
1013 | + <property name="visible">True</property> |
1014 | + <property name="can_focus">True</property> |
1015 | + <property name="label" translatable="yes">Show user interface effects</property> |
1016 | + <property name="use_underline">True</property> |
1017 | + <property name="relief">GTK_RELIEF_NORMAL</property> |
1018 | + <property name="focus_on_click">True</property> |
1019 | + <property name="active">False</property> |
1020 | + <property name="inconsistent">False</property> |
1021 | + <property name="draw_indicator">True</property> |
1022 | + <signal name="toggled" handler="on_effect_checkbox_toggled"/> |
1023 | + </widget> |
1024 | + <packing> |
1025 | + <property name="padding">5</property> |
1026 | + <property name="expand">True</property> |
1027 | + <property name="fill">True</property> |
1028 | + </packing> |
1029 | + </child> |
1030 | + |
1031 | + <child> |
1032 | + <widget class="GtkHBox" id="hbox1"> |
1033 | + <property name="visible">True</property> |
1034 | + <property name="homogeneous">False</property> |
1035 | + <property name="spacing">0</property> |
1036 | + |
1037 | + <child> |
1038 | + <widget class="GtkLabel" id="label19"> |
1039 | + <property name="visible">True</property> |
1040 | + <property name="label" translatable="yes">Screen change effect</property> |
1041 | + <property name="use_underline">False</property> |
1042 | + <property name="use_markup">False</property> |
1043 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
1044 | + <property name="wrap">False</property> |
1045 | + <property name="selectable">False</property> |
1046 | + <property name="xalign">0</property> |
1047 | + <property name="yalign">0.5</property> |
1048 | + <property name="xpad">0</property> |
1049 | + <property name="ypad">0</property> |
1050 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
1051 | + <property name="width_chars">-1</property> |
1052 | + <property name="single_line_mode">False</property> |
1053 | + <property name="angle">0</property> |
1054 | + </widget> |
1055 | + <packing> |
1056 | + <property name="padding">5</property> |
1057 | + <property name="expand">False</property> |
1058 | + <property name="fill">True</property> |
1059 | + </packing> |
1060 | + </child> |
1061 | + |
1062 | + <child> |
1063 | + <widget class="GtkComboBox" id="effect_combobox"> |
1064 | + <property name="visible">True</property> |
1065 | + <property name="items" translatable="yes">No effect |
1066 | Crossfade |
1067 | Zoom and fade |
1068 | Slide</property> |
1069 | - <signal name="changed" handler="on_effect_combobox_changed"/> |
1070 | - </widget> |
1071 | - <packing> |
1072 | - <property name="position">1</property> |
1073 | - </packing> |
1074 | - </child> |
1075 | - </widget> |
1076 | - <packing> |
1077 | - <property name="position">1</property> |
1078 | - </packing> |
1079 | - </child> |
1080 | - </widget> |
1081 | - </child> |
1082 | - </widget> |
1083 | - </child> |
1084 | - <child> |
1085 | - <widget class="GtkLabel" id="label17"> |
1086 | - <property name="visible">True</property> |
1087 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1088 | - <property name="label" translatable="yes"><b>Effects</b></property> |
1089 | - <property name="use_markup">True</property> |
1090 | - </widget> |
1091 | - <packing> |
1092 | - <property name="type">label_item</property> |
1093 | - </packing> |
1094 | - </child> |
1095 | - </widget> |
1096 | - <packing> |
1097 | - <property name="expand">False</property> |
1098 | - <property name="padding">5</property> |
1099 | - </packing> |
1100 | - </child> |
1101 | - <child> |
1102 | - <widget class="GtkFrame" id="frame_themes"> |
1103 | - <property name="visible">True</property> |
1104 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1105 | - <property name="border_width">5</property> |
1106 | - <property name="label_xalign">0</property> |
1107 | - <property name="shadow_type">GTK_SHADOW_NONE</property> |
1108 | - <child> |
1109 | - <widget class="GtkAlignment" id="alignment6"> |
1110 | - <property name="visible">True</property> |
1111 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1112 | - <property name="left_padding">12</property> |
1113 | - <child> |
1114 | - <widget class="GtkHBox" id="hbox2"> |
1115 | - <property name="visible">True</property> |
1116 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1117 | - <child> |
1118 | - <widget class="GtkScrolledWindow" id="scrolledwindow1"> |
1119 | - <property name="visible">True</property> |
1120 | - <property name="can_focus">True</property> |
1121 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1122 | - <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> |
1123 | - <property name="shadow_type">GTK_SHADOW_IN</property> |
1124 | - <child> |
1125 | - <widget class="GtkTreeView" id="theme_list"> |
1126 | - <property name="visible">True</property> |
1127 | - <property name="can_focus">True</property> |
1128 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1129 | - <property name="headers_visible">False</property> |
1130 | - <property name="enable_search">False</property> |
1131 | - <signal name="cursor_changed" handler="on_theme_list_cursor_changed"/> |
1132 | - </widget> |
1133 | - </child> |
1134 | - </widget> |
1135 | - </child> |
1136 | - <child> |
1137 | - <widget class="GtkVButtonBox" id="vbuttonbox1"> |
1138 | - <property name="visible">True</property> |
1139 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1140 | - <property name="spacing">5</property> |
1141 | - <property name="layout_style">GTK_BUTTONBOX_START</property> |
1142 | - <child> |
1143 | - <widget class="GtkButton" id="add_button"> |
1144 | - <property name="visible">True</property> |
1145 | - <property name="can_focus">True</property> |
1146 | - <property name="receives_default">True</property> |
1147 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1148 | - <property name="label" translatable="yes">gtk-add</property> |
1149 | - <property name="use_stock">True</property> |
1150 | - <property name="response_id">0</property> |
1151 | - <signal name="clicked" handler="on_add_button_clicked"/> |
1152 | - </widget> |
1153 | - </child> |
1154 | - <child> |
1155 | - <widget class="GtkButton" id="remove_button"> |
1156 | - <property name="visible">True</property> |
1157 | - <property name="can_focus">True</property> |
1158 | - <property name="receives_default">True</property> |
1159 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1160 | - <property name="label" translatable="yes">gtk-remove</property> |
1161 | - <property name="use_stock">True</property> |
1162 | - <property name="response_id">0</property> |
1163 | - <signal name="clicked" handler="on_remove_button_clicked"/> |
1164 | - </widget> |
1165 | - <packing> |
1166 | - <property name="position">1</property> |
1167 | - </packing> |
1168 | - </child> |
1169 | - </widget> |
1170 | - <packing> |
1171 | - <property name="expand">False</property> |
1172 | - <property name="padding">10</property> |
1173 | - <property name="position">1</property> |
1174 | - </packing> |
1175 | - </child> |
1176 | - </widget> |
1177 | - </child> |
1178 | - </widget> |
1179 | - </child> |
1180 | - <child> |
1181 | - <widget class="GtkLabel" id="label18"> |
1182 | - <property name="visible">True</property> |
1183 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1184 | - <property name="ypad">5</property> |
1185 | - <property name="label" translatable="yes"><b>Themes</b></property> |
1186 | - <property name="use_markup">True</property> |
1187 | - </widget> |
1188 | - <packing> |
1189 | - <property name="type">label_item</property> |
1190 | - </packing> |
1191 | - </child> |
1192 | - </widget> |
1193 | - <packing> |
1194 | - <property name="padding">5</property> |
1195 | - <property name="position">1</property> |
1196 | - </packing> |
1197 | - </child> |
1198 | - <child> |
1199 | - <widget class="GtkFrame" id="frame_theme_information"> |
1200 | - <property name="visible">True</property> |
1201 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1202 | - <property name="border_width">5</property> |
1203 | - <property name="label_xalign">0</property> |
1204 | - <property name="shadow_type">GTK_SHADOW_NONE</property> |
1205 | - <child> |
1206 | - <widget class="GtkAlignment" id="alignment7"> |
1207 | - <property name="visible">True</property> |
1208 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1209 | - <property name="left_padding">12</property> |
1210 | - <child> |
1211 | - <widget class="GtkHBox" id="hbox3"> |
1212 | - <property name="visible">True</property> |
1213 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1214 | - <child> |
1215 | - <widget class="GtkImage" id="theme_image"> |
1216 | - <property name="visible">True</property> |
1217 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1218 | - <property name="stock">gtk-missing-image</property> |
1219 | - </widget> |
1220 | - <packing> |
1221 | - <property name="expand">False</property> |
1222 | - <property name="fill">False</property> |
1223 | - </packing> |
1224 | - </child> |
1225 | - <child> |
1226 | - <widget class="GtkVBox" id="vbox8"> |
1227 | - <property name="visible">True</property> |
1228 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1229 | - <child> |
1230 | - <widget class="GtkHBox" id="hbox4"> |
1231 | - <property name="visible">True</property> |
1232 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1233 | - <child> |
1234 | - <widget class="GtkLabel" id="label21"> |
1235 | - <property name="visible">True</property> |
1236 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1237 | - <property name="xalign">0</property> |
1238 | - <property name="ypad">5</property> |
1239 | - <property name="label" translatable="yes"><b>Name:</b></property> |
1240 | - <property name="use_markup">True</property> |
1241 | - </widget> |
1242 | - <packing> |
1243 | - <property name="expand">False</property> |
1244 | - <property name="padding">5</property> |
1245 | - </packing> |
1246 | - </child> |
1247 | - <child> |
1248 | - <widget class="GtkLabel" id="name_label"> |
1249 | - <property name="visible">True</property> |
1250 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1251 | - <property name="xalign">0</property> |
1252 | - </widget> |
1253 | - <packing> |
1254 | - <property name="position">1</property> |
1255 | - </packing> |
1256 | - </child> |
1257 | - </widget> |
1258 | - </child> |
1259 | - <child> |
1260 | - <widget class="GtkHBox" id="hbox5"> |
1261 | - <property name="visible">True</property> |
1262 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1263 | - <child> |
1264 | - <widget class="GtkLabel" id="label22"> |
1265 | - <property name="visible">True</property> |
1266 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1267 | - <property name="xalign">0</property> |
1268 | - <property name="ypad">5</property> |
1269 | - <property name="label" translatable="yes"><b>Author:</b></property> |
1270 | - <property name="use_markup">True</property> |
1271 | - </widget> |
1272 | - <packing> |
1273 | - <property name="expand">False</property> |
1274 | - <property name="padding">5</property> |
1275 | - </packing> |
1276 | - </child> |
1277 | - <child> |
1278 | - <widget class="GtkLabel" id="author_label"> |
1279 | - <property name="visible">True</property> |
1280 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1281 | - <property name="xalign">0</property> |
1282 | - </widget> |
1283 | - <packing> |
1284 | - <property name="position">1</property> |
1285 | - </packing> |
1286 | - </child> |
1287 | - </widget> |
1288 | - <packing> |
1289 | - <property name="position">1</property> |
1290 | - </packing> |
1291 | - </child> |
1292 | - <child> |
1293 | - <widget class="GtkHBox" id="hbox6"> |
1294 | - <property name="visible">True</property> |
1295 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1296 | - <child> |
1297 | - <widget class="GtkLabel" id="label23"> |
1298 | - <property name="visible">True</property> |
1299 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1300 | - <property name="xalign">0</property> |
1301 | - <property name="ypad">5</property> |
1302 | - <property name="label" translatable="yes"><b>Licence:</b></property> |
1303 | - <property name="use_markup">True</property> |
1304 | - </widget> |
1305 | - <packing> |
1306 | - <property name="expand">False</property> |
1307 | - <property name="padding">5</property> |
1308 | - </packing> |
1309 | - </child> |
1310 | - <child> |
1311 | - <widget class="GtkLabel" id="licence_label"> |
1312 | - <property name="visible">True</property> |
1313 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1314 | - <property name="xalign">0</property> |
1315 | - </widget> |
1316 | - <packing> |
1317 | - <property name="position">1</property> |
1318 | - </packing> |
1319 | - </child> |
1320 | - </widget> |
1321 | - <packing> |
1322 | - <property name="position">2</property> |
1323 | - </packing> |
1324 | - </child> |
1325 | - <child> |
1326 | - <widget class="GtkHBox" id="hbox8"> |
1327 | - <property name="visible">True</property> |
1328 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1329 | - <child> |
1330 | - <widget class="GtkLabel" id="label24"> |
1331 | - <property name="visible">True</property> |
1332 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1333 | - <property name="xalign">0</property> |
1334 | - <property name="ypad">5</property> |
1335 | - <property name="label" translatable="yes"><b>Copyright:</b></property> |
1336 | - <property name="use_markup">True</property> |
1337 | - </widget> |
1338 | - <packing> |
1339 | - <property name="expand">False</property> |
1340 | - <property name="padding">5</property> |
1341 | - </packing> |
1342 | - </child> |
1343 | - <child> |
1344 | - <widget class="GtkLabel" id="copyright_label"> |
1345 | - <property name="visible">True</property> |
1346 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1347 | - <property name="xalign">0</property> |
1348 | - </widget> |
1349 | - <packing> |
1350 | - <property name="position">1</property> |
1351 | - </packing> |
1352 | - </child> |
1353 | - </widget> |
1354 | - <packing> |
1355 | - <property name="position">3</property> |
1356 | - </packing> |
1357 | - </child> |
1358 | - <child> |
1359 | - <widget class="GtkHBox" id="hbox7"> |
1360 | - <property name="visible">True</property> |
1361 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1362 | - <child> |
1363 | - <widget class="GtkLabel" id="label25"> |
1364 | - <property name="visible">True</property> |
1365 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1366 | - <property name="xalign">0</property> |
1367 | - <property name="ypad">5</property> |
1368 | - <property name="label" translatable="yes"><b>Comment:</b></property> |
1369 | - <property name="use_markup">True</property> |
1370 | - </widget> |
1371 | - <packing> |
1372 | - <property name="expand">False</property> |
1373 | - <property name="padding">5</property> |
1374 | - </packing> |
1375 | - </child> |
1376 | - <child> |
1377 | - <widget class="GtkLabel" id="comment_label"> |
1378 | - <property name="visible">True</property> |
1379 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1380 | - <property name="xalign">0</property> |
1381 | - <property name="wrap">True</property> |
1382 | - </widget> |
1383 | - <packing> |
1384 | - <property name="position">1</property> |
1385 | - </packing> |
1386 | - </child> |
1387 | - </widget> |
1388 | - <packing> |
1389 | - <property name="position">4</property> |
1390 | - </packing> |
1391 | - </child> |
1392 | - </widget> |
1393 | - <packing> |
1394 | - <property name="position">1</property> |
1395 | - </packing> |
1396 | - </child> |
1397 | - </widget> |
1398 | - </child> |
1399 | - </widget> |
1400 | - </child> |
1401 | - <child> |
1402 | - <widget class="GtkLabel" id="label20"> |
1403 | - <property name="visible">True</property> |
1404 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1405 | - <property name="ypad">5</property> |
1406 | - <property name="label" translatable="yes"><b>Theme information</b></property> |
1407 | - <property name="use_markup">True</property> |
1408 | - </widget> |
1409 | - <packing> |
1410 | - <property name="type">label_item</property> |
1411 | - </packing> |
1412 | - </child> |
1413 | - </widget> |
1414 | - <packing> |
1415 | - <property name="expand">False</property> |
1416 | - <property name="position">2</property> |
1417 | - </packing> |
1418 | - </child> |
1419 | - </widget> |
1420 | - <packing> |
1421 | - <property name="position">1</property> |
1422 | - </packing> |
1423 | - </child> |
1424 | - <child> |
1425 | - <widget class="GtkLabel" id="label2"> |
1426 | - <property name="visible">True</property> |
1427 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1428 | - <property name="label" translatable="yes">User interface</property> |
1429 | - </widget> |
1430 | - <packing> |
1431 | - <property name="type">tab</property> |
1432 | - <property name="position">1</property> |
1433 | - <property name="tab_fill">False</property> |
1434 | - </packing> |
1435 | - </child> |
1436 | - <child> |
1437 | - <widget class="GtkVBox" id="vbox_photographs"> |
1438 | - <property name="visible">True</property> |
1439 | - <child> |
1440 | - <widget class="GtkFrame" id="fphotographs"> |
1441 | - <property name="visible">True</property> |
1442 | - <property name="label_xalign">0</property> |
1443 | - <property name="shadow_type">GTK_SHADOW_NONE</property> |
1444 | - <child> |
1445 | - <widget class="GtkAlignment" id="aphotographs1"> |
1446 | - <property name="visible">True</property> |
1447 | - <property name="left_padding">12</property> |
1448 | - <child> |
1449 | - <widget class="GtkVBox" id="vbox10"> |
1450 | - <property name="visible">True</property> |
1451 | - <child> |
1452 | - <widget class="GtkHBox" id="hbphotographs"> |
1453 | - <property name="visible">True</property> |
1454 | - <child> |
1455 | - <widget class="GtkSpinButton" id="spinbutton_slideshow_step"> |
1456 | - <property name="visible">True</property> |
1457 | - <property name="can_focus">True</property> |
1458 | - <property name="editable">False</property> |
1459 | - <property name="adjustment">5 1 100 1 10 0</property> |
1460 | - <property name="snap_to_ticks">True</property> |
1461 | - <property name="numeric">True</property> |
1462 | - <signal name="value_changed" handler="on_spinbutton_slideshow_step_value_changed"/> |
1463 | - </widget> |
1464 | - </child> |
1465 | - <child> |
1466 | - <widget class="GtkLabel" id="lslideshowstep"> |
1467 | - <property name="visible">True</property> |
1468 | - <property name="label" translatable="yes">Slideshow step (in seconds)</property> |
1469 | - </widget> |
1470 | - <packing> |
1471 | - <property name="position">1</property> |
1472 | - </packing> |
1473 | - </child> |
1474 | - </widget> |
1475 | - <packing> |
1476 | - <property name="expand">False</property> |
1477 | - </packing> |
1478 | - </child> |
1479 | - </widget> |
1480 | - </child> |
1481 | - </widget> |
1482 | - </child> |
1483 | - <child> |
1484 | - <widget class="GtkLabel" id="lslideshow"> |
1485 | - <property name="visible">True</property> |
1486 | - <property name="label" translatable="yes"><b>Slideshow</b></property> |
1487 | - <property name="use_markup">True</property> |
1488 | - </widget> |
1489 | - <packing> |
1490 | - <property name="type">label_item</property> |
1491 | - </packing> |
1492 | - </child> |
1493 | - </widget> |
1494 | - <packing> |
1495 | - <property name="padding">5</property> |
1496 | - </packing> |
1497 | - </child> |
1498 | - <child> |
1499 | - <placeholder/> |
1500 | - </child> |
1501 | - <child> |
1502 | - <placeholder/> |
1503 | - </child> |
1504 | - </widget> |
1505 | - <packing> |
1506 | - <property name="position">2</property> |
1507 | - </packing> |
1508 | - </child> |
1509 | - <child> |
1510 | - <widget class="GtkLabel" id="LPhotographs"> |
1511 | - <property name="visible">True</property> |
1512 | - <property name="label" translatable="yes">Photographs</property> |
1513 | - </widget> |
1514 | - <packing> |
1515 | - <property name="type">tab</property> |
1516 | - <property name="position">2</property> |
1517 | - <property name="tab_fill">False</property> |
1518 | - </packing> |
1519 | - </child> |
1520 | - </widget> |
1521 | - <packing> |
1522 | - <property name="position">1</property> |
1523 | - </packing> |
1524 | - </child> |
1525 | - <child internal-child="action_area"> |
1526 | - <widget class="GtkHButtonBox" id="dialog-action_area1"> |
1527 | - <property name="visible">True</property> |
1528 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1529 | - <property name="layout_style">GTK_BUTTONBOX_END</property> |
1530 | - <child> |
1531 | - <widget class="GtkButton" id="close_button"> |
1532 | - <property name="visible">True</property> |
1533 | - <property name="can_focus">True</property> |
1534 | - <property name="receives_default">True</property> |
1535 | - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1536 | - <property name="label" translatable="yes">gtk-close</property> |
1537 | - <property name="use_stock">True</property> |
1538 | - <property name="response_id">0</property> |
1539 | - <signal name="clicked" handler="on_close_button_clicked"/> |
1540 | - </widget> |
1541 | - </child> |
1542 | - </widget> |
1543 | - <packing> |
1544 | - <property name="expand">False</property> |
1545 | - <property name="pack_type">GTK_PACK_END</property> |
1546 | - </packing> |
1547 | - </child> |
1548 | - </widget> |
1549 | - </child> |
1550 | - </widget> |
1551 | + <property name="add_tearoffs">False</property> |
1552 | + <property name="focus_on_click">True</property> |
1553 | + <signal name="changed" handler="on_effect_combobox_changed"/> |
1554 | + </widget> |
1555 | + <packing> |
1556 | + <property name="padding">0</property> |
1557 | + <property name="expand">True</property> |
1558 | + <property name="fill">True</property> |
1559 | + </packing> |
1560 | + </child> |
1561 | + </widget> |
1562 | + <packing> |
1563 | + <property name="padding">0</property> |
1564 | + <property name="expand">True</property> |
1565 | + <property name="fill">True</property> |
1566 | + </packing> |
1567 | + </child> |
1568 | + </widget> |
1569 | + </child> |
1570 | + </widget> |
1571 | + </child> |
1572 | + |
1573 | + <child> |
1574 | + <widget class="GtkLabel" id="label17"> |
1575 | + <property name="visible">True</property> |
1576 | + <property name="label" translatable="yes"><b>Effects</b></property> |
1577 | + <property name="use_underline">False</property> |
1578 | + <property name="use_markup">True</property> |
1579 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
1580 | + <property name="wrap">False</property> |
1581 | + <property name="selectable">False</property> |
1582 | + <property name="xalign">0.5</property> |
1583 | + <property name="yalign">0.5</property> |
1584 | + <property name="xpad">0</property> |
1585 | + <property name="ypad">0</property> |
1586 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
1587 | + <property name="width_chars">-1</property> |
1588 | + <property name="single_line_mode">False</property> |
1589 | + <property name="angle">0</property> |
1590 | + </widget> |
1591 | + <packing> |
1592 | + <property name="type">label_item</property> |
1593 | + </packing> |
1594 | + </child> |
1595 | + </widget> |
1596 | + <packing> |
1597 | + <property name="padding">5</property> |
1598 | + <property name="expand">False</property> |
1599 | + <property name="fill">True</property> |
1600 | + </packing> |
1601 | + </child> |
1602 | + |
1603 | + <child> |
1604 | + <widget class="GtkFrame" id="frame_themes"> |
1605 | + <property name="border_width">5</property> |
1606 | + <property name="visible">True</property> |
1607 | + <property name="label_xalign">0</property> |
1608 | + <property name="label_yalign">0.5</property> |
1609 | + <property name="shadow_type">GTK_SHADOW_NONE</property> |
1610 | + |
1611 | + <child> |
1612 | + <widget class="GtkAlignment" id="alignment6"> |
1613 | + <property name="visible">True</property> |
1614 | + <property name="xalign">0.5</property> |
1615 | + <property name="yalign">0.5</property> |
1616 | + <property name="xscale">1</property> |
1617 | + <property name="yscale">1</property> |
1618 | + <property name="top_padding">0</property> |
1619 | + <property name="bottom_padding">0</property> |
1620 | + <property name="left_padding">12</property> |
1621 | + <property name="right_padding">0</property> |
1622 | + |
1623 | + <child> |
1624 | + <widget class="GtkHBox" id="hbox2"> |
1625 | + <property name="visible">True</property> |
1626 | + <property name="homogeneous">False</property> |
1627 | + <property name="spacing">0</property> |
1628 | + |
1629 | + <child> |
1630 | + <widget class="GtkScrolledWindow" id="scrolledwindow1"> |
1631 | + <property name="visible">True</property> |
1632 | + <property name="can_focus">True</property> |
1633 | + <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> |
1634 | + <property name="vscrollbar_policy">GTK_POLICY_ALWAYS</property> |
1635 | + <property name="shadow_type">GTK_SHADOW_IN</property> |
1636 | + <property name="window_placement">GTK_CORNER_TOP_LEFT</property> |
1637 | + |
1638 | + <child> |
1639 | + <widget class="GtkTreeView" id="theme_list"> |
1640 | + <property name="visible">True</property> |
1641 | + <property name="can_focus">True</property> |
1642 | + <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
1643 | + <property name="headers_visible">False</property> |
1644 | + <property name="rules_hint">False</property> |
1645 | + <property name="reorderable">False</property> |
1646 | + <property name="enable_search">False</property> |
1647 | + <property name="fixed_height_mode">False</property> |
1648 | + <property name="hover_selection">False</property> |
1649 | + <property name="hover_expand">False</property> |
1650 | + <signal name="cursor_changed" handler="on_theme_list_cursor_changed"/> |
1651 | + </widget> |
1652 | + </child> |
1653 | + </widget> |
1654 | + <packing> |
1655 | + <property name="padding">0</property> |
1656 | + <property name="expand">True</property> |
1657 | + <property name="fill">True</property> |
1658 | + </packing> |
1659 | + </child> |
1660 | + |
1661 | + <child> |
1662 | + <widget class="GtkVButtonBox" id="vbuttonbox1"> |
1663 | + <property name="visible">True</property> |
1664 | + <property name="layout_style">GTK_BUTTONBOX_START</property> |
1665 | + <property name="spacing">5</property> |
1666 | + |
1667 | + <child> |
1668 | + <widget class="GtkButton" id="add_button"> |
1669 | + <property name="visible">True</property> |
1670 | + <property name="can_focus">True</property> |
1671 | + <property name="label">gtk-add</property> |
1672 | + <property name="use_stock">True</property> |
1673 | + <property name="relief">GTK_RELIEF_NORMAL</property> |
1674 | + <property name="focus_on_click">True</property> |
1675 | + <signal name="clicked" handler="on_add_button_clicked"/> |
1676 | + </widget> |
1677 | + </child> |
1678 | + |
1679 | + <child> |
1680 | + <widget class="GtkButton" id="remove_button"> |
1681 | + <property name="visible">True</property> |
1682 | + <property name="can_focus">True</property> |
1683 | + <property name="label">gtk-remove</property> |
1684 | + <property name="use_stock">True</property> |
1685 | + <property name="relief">GTK_RELIEF_NORMAL</property> |
1686 | + <property name="focus_on_click">True</property> |
1687 | + <signal name="clicked" handler="on_remove_button_clicked"/> |
1688 | + </widget> |
1689 | + </child> |
1690 | + </widget> |
1691 | + <packing> |
1692 | + <property name="padding">10</property> |
1693 | + <property name="expand">False</property> |
1694 | + <property name="fill">True</property> |
1695 | + </packing> |
1696 | + </child> |
1697 | + </widget> |
1698 | + </child> |
1699 | + </widget> |
1700 | + </child> |
1701 | + |
1702 | + <child> |
1703 | + <widget class="GtkLabel" id="label18"> |
1704 | + <property name="visible">True</property> |
1705 | + <property name="label" translatable="yes"><b>Themes</b></property> |
1706 | + <property name="use_underline">False</property> |
1707 | + <property name="use_markup">True</property> |
1708 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
1709 | + <property name="wrap">False</property> |
1710 | + <property name="selectable">False</property> |
1711 | + <property name="xalign">0.5</property> |
1712 | + <property name="yalign">0.5</property> |
1713 | + <property name="xpad">0</property> |
1714 | + <property name="ypad">5</property> |
1715 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
1716 | + <property name="width_chars">-1</property> |
1717 | + <property name="single_line_mode">False</property> |
1718 | + <property name="angle">0</property> |
1719 | + </widget> |
1720 | + <packing> |
1721 | + <property name="type">label_item</property> |
1722 | + </packing> |
1723 | + </child> |
1724 | + </widget> |
1725 | + <packing> |
1726 | + <property name="padding">5</property> |
1727 | + <property name="expand">True</property> |
1728 | + <property name="fill">True</property> |
1729 | + </packing> |
1730 | + </child> |
1731 | + |
1732 | + <child> |
1733 | + <widget class="GtkFrame" id="frame_theme_information"> |
1734 | + <property name="border_width">5</property> |
1735 | + <property name="visible">True</property> |
1736 | + <property name="label_xalign">0</property> |
1737 | + <property name="label_yalign">0.5</property> |
1738 | + <property name="shadow_type">GTK_SHADOW_NONE</property> |
1739 | + |
1740 | + <child> |
1741 | + <widget class="GtkAlignment" id="alignment7"> |
1742 | + <property name="visible">True</property> |
1743 | + <property name="xalign">0.5</property> |
1744 | + <property name="yalign">0.5</property> |
1745 | + <property name="xscale">1</property> |
1746 | + <property name="yscale">1</property> |
1747 | + <property name="top_padding">0</property> |
1748 | + <property name="bottom_padding">0</property> |
1749 | + <property name="left_padding">12</property> |
1750 | + <property name="right_padding">0</property> |
1751 | + |
1752 | + <child> |
1753 | + <widget class="GtkHBox" id="hbox3"> |
1754 | + <property name="visible">True</property> |
1755 | + <property name="homogeneous">False</property> |
1756 | + <property name="spacing">0</property> |
1757 | + |
1758 | + <child> |
1759 | + <widget class="GtkImage" id="theme_image"> |
1760 | + <property name="visible">True</property> |
1761 | + <property name="stock">gtk-missing-image</property> |
1762 | + <property name="icon_size">4</property> |
1763 | + <property name="xalign">0.5</property> |
1764 | + <property name="yalign">0.5</property> |
1765 | + <property name="xpad">0</property> |
1766 | + <property name="ypad">0</property> |
1767 | + </widget> |
1768 | + <packing> |
1769 | + <property name="padding">0</property> |
1770 | + <property name="expand">False</property> |
1771 | + <property name="fill">False</property> |
1772 | + </packing> |
1773 | + </child> |
1774 | + |
1775 | + <child> |
1776 | + <widget class="GtkVBox" id="vbox8"> |
1777 | + <property name="visible">True</property> |
1778 | + <property name="homogeneous">False</property> |
1779 | + <property name="spacing">0</property> |
1780 | + |
1781 | + <child> |
1782 | + <widget class="GtkHBox" id="hbox4"> |
1783 | + <property name="visible">True</property> |
1784 | + <property name="homogeneous">False</property> |
1785 | + <property name="spacing">0</property> |
1786 | + |
1787 | + <child> |
1788 | + <widget class="GtkLabel" id="label21"> |
1789 | + <property name="visible">True</property> |
1790 | + <property name="label" translatable="yes"><b>Name:</b></property> |
1791 | + <property name="use_underline">False</property> |
1792 | + <property name="use_markup">True</property> |
1793 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
1794 | + <property name="wrap">False</property> |
1795 | + <property name="selectable">False</property> |
1796 | + <property name="xalign">0</property> |
1797 | + <property name="yalign">0.5</property> |
1798 | + <property name="xpad">0</property> |
1799 | + <property name="ypad">5</property> |
1800 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
1801 | + <property name="width_chars">-1</property> |
1802 | + <property name="single_line_mode">False</property> |
1803 | + <property name="angle">0</property> |
1804 | + </widget> |
1805 | + <packing> |
1806 | + <property name="padding">5</property> |
1807 | + <property name="expand">False</property> |
1808 | + <property name="fill">True</property> |
1809 | + </packing> |
1810 | + </child> |
1811 | + |
1812 | + <child> |
1813 | + <widget class="GtkLabel" id="name_label"> |
1814 | + <property name="visible">True</property> |
1815 | + <property name="label" translatable="yes"></property> |
1816 | + <property name="use_underline">False</property> |
1817 | + <property name="use_markup">False</property> |
1818 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
1819 | + <property name="wrap">False</property> |
1820 | + <property name="selectable">False</property> |
1821 | + <property name="xalign">0</property> |
1822 | + <property name="yalign">0.5</property> |
1823 | + <property name="xpad">0</property> |
1824 | + <property name="ypad">0</property> |
1825 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
1826 | + <property name="width_chars">-1</property> |
1827 | + <property name="single_line_mode">False</property> |
1828 | + <property name="angle">0</property> |
1829 | + </widget> |
1830 | + <packing> |
1831 | + <property name="padding">0</property> |
1832 | + <property name="expand">True</property> |
1833 | + <property name="fill">True</property> |
1834 | + </packing> |
1835 | + </child> |
1836 | + </widget> |
1837 | + <packing> |
1838 | + <property name="padding">0</property> |
1839 | + <property name="expand">True</property> |
1840 | + <property name="fill">True</property> |
1841 | + </packing> |
1842 | + </child> |
1843 | + |
1844 | + <child> |
1845 | + <widget class="GtkHBox" id="hbox5"> |
1846 | + <property name="visible">True</property> |
1847 | + <property name="homogeneous">False</property> |
1848 | + <property name="spacing">0</property> |
1849 | + |
1850 | + <child> |
1851 | + <widget class="GtkLabel" id="label22"> |
1852 | + <property name="visible">True</property> |
1853 | + <property name="label" translatable="yes"><b>Author:</b></property> |
1854 | + <property name="use_underline">False</property> |
1855 | + <property name="use_markup">True</property> |
1856 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
1857 | + <property name="wrap">False</property> |
1858 | + <property name="selectable">False</property> |
1859 | + <property name="xalign">0</property> |
1860 | + <property name="yalign">0.5</property> |
1861 | + <property name="xpad">0</property> |
1862 | + <property name="ypad">5</property> |
1863 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
1864 | + <property name="width_chars">-1</property> |
1865 | + <property name="single_line_mode">False</property> |
1866 | + <property name="angle">0</property> |
1867 | + </widget> |
1868 | + <packing> |
1869 | + <property name="padding">5</property> |
1870 | + <property name="expand">False</property> |
1871 | + <property name="fill">True</property> |
1872 | + </packing> |
1873 | + </child> |
1874 | + |
1875 | + <child> |
1876 | + <widget class="GtkLabel" id="author_label"> |
1877 | + <property name="visible">True</property> |
1878 | + <property name="label" translatable="yes"></property> |
1879 | + <property name="use_underline">False</property> |
1880 | + <property name="use_markup">False</property> |
1881 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
1882 | + <property name="wrap">False</property> |
1883 | + <property name="selectable">False</property> |
1884 | + <property name="xalign">0</property> |
1885 | + <property name="yalign">0.5</property> |
1886 | + <property name="xpad">0</property> |
1887 | + <property name="ypad">0</property> |
1888 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
1889 | + <property name="width_chars">-1</property> |
1890 | + <property name="single_line_mode">False</property> |
1891 | + <property name="angle">0</property> |
1892 | + </widget> |
1893 | + <packing> |
1894 | + <property name="padding">0</property> |
1895 | + <property name="expand">True</property> |
1896 | + <property name="fill">True</property> |
1897 | + </packing> |
1898 | + </child> |
1899 | + </widget> |
1900 | + <packing> |
1901 | + <property name="padding">0</property> |
1902 | + <property name="expand">True</property> |
1903 | + <property name="fill">True</property> |
1904 | + </packing> |
1905 | + </child> |
1906 | + |
1907 | + <child> |
1908 | + <widget class="GtkHBox" id="hbox6"> |
1909 | + <property name="visible">True</property> |
1910 | + <property name="homogeneous">False</property> |
1911 | + <property name="spacing">0</property> |
1912 | + |
1913 | + <child> |
1914 | + <widget class="GtkLabel" id="label23"> |
1915 | + <property name="visible">True</property> |
1916 | + <property name="label" translatable="yes"><b>Licence:</b></property> |
1917 | + <property name="use_underline">False</property> |
1918 | + <property name="use_markup">True</property> |
1919 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
1920 | + <property name="wrap">False</property> |
1921 | + <property name="selectable">False</property> |
1922 | + <property name="xalign">0</property> |
1923 | + <property name="yalign">0.5</property> |
1924 | + <property name="xpad">0</property> |
1925 | + <property name="ypad">5</property> |
1926 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
1927 | + <property name="width_chars">-1</property> |
1928 | + <property name="single_line_mode">False</property> |
1929 | + <property name="angle">0</property> |
1930 | + </widget> |
1931 | + <packing> |
1932 | + <property name="padding">5</property> |
1933 | + <property name="expand">False</property> |
1934 | + <property name="fill">True</property> |
1935 | + </packing> |
1936 | + </child> |
1937 | + |
1938 | + <child> |
1939 | + <widget class="GtkLabel" id="licence_label"> |
1940 | + <property name="visible">True</property> |
1941 | + <property name="label" translatable="yes"></property> |
1942 | + <property name="use_underline">False</property> |
1943 | + <property name="use_markup">False</property> |
1944 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
1945 | + <property name="wrap">False</property> |
1946 | + <property name="selectable">False</property> |
1947 | + <property name="xalign">0</property> |
1948 | + <property name="yalign">0.5</property> |
1949 | + <property name="xpad">0</property> |
1950 | + <property name="ypad">0</property> |
1951 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
1952 | + <property name="width_chars">-1</property> |
1953 | + <property name="single_line_mode">False</property> |
1954 | + <property name="angle">0</property> |
1955 | + </widget> |
1956 | + <packing> |
1957 | + <property name="padding">0</property> |
1958 | + <property name="expand">True</property> |
1959 | + <property name="fill">True</property> |
1960 | + </packing> |
1961 | + </child> |
1962 | + </widget> |
1963 | + <packing> |
1964 | + <property name="padding">0</property> |
1965 | + <property name="expand">True</property> |
1966 | + <property name="fill">True</property> |
1967 | + </packing> |
1968 | + </child> |
1969 | + |
1970 | + <child> |
1971 | + <widget class="GtkHBox" id="hbox8"> |
1972 | + <property name="visible">True</property> |
1973 | + <property name="homogeneous">False</property> |
1974 | + <property name="spacing">0</property> |
1975 | + |
1976 | + <child> |
1977 | + <widget class="GtkLabel" id="label24"> |
1978 | + <property name="visible">True</property> |
1979 | + <property name="label" translatable="yes"><b>Copyright:</b></property> |
1980 | + <property name="use_underline">False</property> |
1981 | + <property name="use_markup">True</property> |
1982 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
1983 | + <property name="wrap">False</property> |
1984 | + <property name="selectable">False</property> |
1985 | + <property name="xalign">0</property> |
1986 | + <property name="yalign">0.5</property> |
1987 | + <property name="xpad">0</property> |
1988 | + <property name="ypad">5</property> |
1989 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
1990 | + <property name="width_chars">-1</property> |
1991 | + <property name="single_line_mode">False</property> |
1992 | + <property name="angle">0</property> |
1993 | + </widget> |
1994 | + <packing> |
1995 | + <property name="padding">5</property> |
1996 | + <property name="expand">False</property> |
1997 | + <property name="fill">True</property> |
1998 | + </packing> |
1999 | + </child> |
2000 | + |
2001 | + <child> |
2002 | + <widget class="GtkLabel" id="copyright_label"> |
2003 | + <property name="visible">True</property> |
2004 | + <property name="label" translatable="yes"></property> |
2005 | + <property name="use_underline">False</property> |
2006 | + <property name="use_markup">False</property> |
2007 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
2008 | + <property name="wrap">False</property> |
2009 | + <property name="selectable">False</property> |
2010 | + <property name="xalign">0</property> |
2011 | + <property name="yalign">0.5</property> |
2012 | + <property name="xpad">0</property> |
2013 | + <property name="ypad">0</property> |
2014 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2015 | + <property name="width_chars">-1</property> |
2016 | + <property name="single_line_mode">False</property> |
2017 | + <property name="angle">0</property> |
2018 | + </widget> |
2019 | + <packing> |
2020 | + <property name="padding">0</property> |
2021 | + <property name="expand">True</property> |
2022 | + <property name="fill">True</property> |
2023 | + </packing> |
2024 | + </child> |
2025 | + </widget> |
2026 | + <packing> |
2027 | + <property name="padding">0</property> |
2028 | + <property name="expand">True</property> |
2029 | + <property name="fill">True</property> |
2030 | + </packing> |
2031 | + </child> |
2032 | + |
2033 | + <child> |
2034 | + <widget class="GtkHBox" id="hbox7"> |
2035 | + <property name="visible">True</property> |
2036 | + <property name="homogeneous">False</property> |
2037 | + <property name="spacing">0</property> |
2038 | + |
2039 | + <child> |
2040 | + <widget class="GtkLabel" id="label25"> |
2041 | + <property name="visible">True</property> |
2042 | + <property name="label" translatable="yes"><b>Comment:</b></property> |
2043 | + <property name="use_underline">False</property> |
2044 | + <property name="use_markup">True</property> |
2045 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
2046 | + <property name="wrap">False</property> |
2047 | + <property name="selectable">False</property> |
2048 | + <property name="xalign">0</property> |
2049 | + <property name="yalign">0.5</property> |
2050 | + <property name="xpad">0</property> |
2051 | + <property name="ypad">5</property> |
2052 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2053 | + <property name="width_chars">-1</property> |
2054 | + <property name="single_line_mode">False</property> |
2055 | + <property name="angle">0</property> |
2056 | + </widget> |
2057 | + <packing> |
2058 | + <property name="padding">5</property> |
2059 | + <property name="expand">False</property> |
2060 | + <property name="fill">True</property> |
2061 | + </packing> |
2062 | + </child> |
2063 | + |
2064 | + <child> |
2065 | + <widget class="GtkLabel" id="comment_label"> |
2066 | + <property name="visible">True</property> |
2067 | + <property name="label" translatable="yes"></property> |
2068 | + <property name="use_underline">False</property> |
2069 | + <property name="use_markup">False</property> |
2070 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
2071 | + <property name="wrap">True</property> |
2072 | + <property name="selectable">False</property> |
2073 | + <property name="xalign">0</property> |
2074 | + <property name="yalign">0.5</property> |
2075 | + <property name="xpad">0</property> |
2076 | + <property name="ypad">0</property> |
2077 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2078 | + <property name="width_chars">-1</property> |
2079 | + <property name="single_line_mode">False</property> |
2080 | + <property name="angle">0</property> |
2081 | + </widget> |
2082 | + <packing> |
2083 | + <property name="padding">0</property> |
2084 | + <property name="expand">True</property> |
2085 | + <property name="fill">True</property> |
2086 | + </packing> |
2087 | + </child> |
2088 | + </widget> |
2089 | + <packing> |
2090 | + <property name="padding">0</property> |
2091 | + <property name="expand">True</property> |
2092 | + <property name="fill">True</property> |
2093 | + </packing> |
2094 | + </child> |
2095 | + </widget> |
2096 | + <packing> |
2097 | + <property name="padding">0</property> |
2098 | + <property name="expand">True</property> |
2099 | + <property name="fill">True</property> |
2100 | + </packing> |
2101 | + </child> |
2102 | + </widget> |
2103 | + </child> |
2104 | + </widget> |
2105 | + </child> |
2106 | + |
2107 | + <child> |
2108 | + <widget class="GtkLabel" id="label20"> |
2109 | + <property name="visible">True</property> |
2110 | + <property name="label" translatable="yes"><b>Theme information</b></property> |
2111 | + <property name="use_underline">False</property> |
2112 | + <property name="use_markup">True</property> |
2113 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
2114 | + <property name="wrap">False</property> |
2115 | + <property name="selectable">False</property> |
2116 | + <property name="xalign">0.5</property> |
2117 | + <property name="yalign">0.5</property> |
2118 | + <property name="xpad">0</property> |
2119 | + <property name="ypad">5</property> |
2120 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2121 | + <property name="width_chars">-1</property> |
2122 | + <property name="single_line_mode">False</property> |
2123 | + <property name="angle">0</property> |
2124 | + </widget> |
2125 | + <packing> |
2126 | + <property name="type">label_item</property> |
2127 | + </packing> |
2128 | + </child> |
2129 | + </widget> |
2130 | + <packing> |
2131 | + <property name="padding">0</property> |
2132 | + <property name="expand">False</property> |
2133 | + <property name="fill">True</property> |
2134 | + </packing> |
2135 | + </child> |
2136 | + </widget> |
2137 | + <packing> |
2138 | + <property name="tab_expand">False</property> |
2139 | + <property name="tab_fill">True</property> |
2140 | + </packing> |
2141 | + </child> |
2142 | + |
2143 | + <child> |
2144 | + <widget class="GtkLabel" id="label2"> |
2145 | + <property name="visible">True</property> |
2146 | + <property name="label" translatable="yes">User interface</property> |
2147 | + <property name="use_underline">False</property> |
2148 | + <property name="use_markup">False</property> |
2149 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
2150 | + <property name="wrap">False</property> |
2151 | + <property name="selectable">False</property> |
2152 | + <property name="xalign">0.5</property> |
2153 | + <property name="yalign">0.5</property> |
2154 | + <property name="xpad">0</property> |
2155 | + <property name="ypad">0</property> |
2156 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2157 | + <property name="width_chars">-1</property> |
2158 | + <property name="single_line_mode">False</property> |
2159 | + <property name="angle">0</property> |
2160 | + </widget> |
2161 | + <packing> |
2162 | + <property name="type">tab</property> |
2163 | + </packing> |
2164 | + </child> |
2165 | + |
2166 | + <child> |
2167 | + <widget class="GtkVBox" id="vbox_photographs"> |
2168 | + <property name="visible">True</property> |
2169 | + <property name="homogeneous">False</property> |
2170 | + <property name="spacing">0</property> |
2171 | + |
2172 | + <child> |
2173 | + <widget class="GtkFrame" id="fphotographs"> |
2174 | + <property name="visible">True</property> |
2175 | + <property name="label_xalign">0</property> |
2176 | + <property name="label_yalign">0.5</property> |
2177 | + <property name="shadow_type">GTK_SHADOW_NONE</property> |
2178 | + |
2179 | + <child> |
2180 | + <widget class="GtkAlignment" id="aphotographs1"> |
2181 | + <property name="visible">True</property> |
2182 | + <property name="xalign">0.5</property> |
2183 | + <property name="yalign">0.5</property> |
2184 | + <property name="xscale">1</property> |
2185 | + <property name="yscale">1</property> |
2186 | + <property name="top_padding">0</property> |
2187 | + <property name="bottom_padding">0</property> |
2188 | + <property name="left_padding">12</property> |
2189 | + <property name="right_padding">0</property> |
2190 | + |
2191 | + <child> |
2192 | + <widget class="GtkVBox" id="vbox10"> |
2193 | + <property name="visible">True</property> |
2194 | + <property name="homogeneous">False</property> |
2195 | + <property name="spacing">0</property> |
2196 | + |
2197 | + <child> |
2198 | + <widget class="GtkHBox" id="hbphotographs"> |
2199 | + <property name="visible">True</property> |
2200 | + <property name="homogeneous">False</property> |
2201 | + <property name="spacing">0</property> |
2202 | + |
2203 | + <child> |
2204 | + <widget class="GtkSpinButton" id="spinbutton_slideshow_step"> |
2205 | + <property name="visible">True</property> |
2206 | + <property name="can_focus">True</property> |
2207 | + <property name="climb_rate">1</property> |
2208 | + <property name="digits">0</property> |
2209 | + <property name="numeric">True</property> |
2210 | + <property name="update_policy">GTK_UPDATE_ALWAYS</property> |
2211 | + <property name="snap_to_ticks">True</property> |
2212 | + <property name="wrap">False</property> |
2213 | + <property name="adjustment">5 1 100 1 10 0</property> |
2214 | + <signal name="value_changed" handler="on_spinbutton_slideshow_step_value_changed"/> |
2215 | + </widget> |
2216 | + <packing> |
2217 | + <property name="padding">0</property> |
2218 | + <property name="expand">True</property> |
2219 | + <property name="fill">True</property> |
2220 | + </packing> |
2221 | + </child> |
2222 | + |
2223 | + <child> |
2224 | + <widget class="GtkLabel" id="lslideshowstep"> |
2225 | + <property name="visible">True</property> |
2226 | + <property name="label" translatable="yes">Slideshow step (in seconds)</property> |
2227 | + <property name="use_underline">False</property> |
2228 | + <property name="use_markup">False</property> |
2229 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
2230 | + <property name="wrap">False</property> |
2231 | + <property name="selectable">False</property> |
2232 | + <property name="xalign">0.5</property> |
2233 | + <property name="yalign">0.5</property> |
2234 | + <property name="xpad">0</property> |
2235 | + <property name="ypad">0</property> |
2236 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2237 | + <property name="width_chars">-1</property> |
2238 | + <property name="single_line_mode">False</property> |
2239 | + <property name="angle">0</property> |
2240 | + </widget> |
2241 | + <packing> |
2242 | + <property name="padding">0</property> |
2243 | + <property name="expand">True</property> |
2244 | + <property name="fill">True</property> |
2245 | + </packing> |
2246 | + </child> |
2247 | + </widget> |
2248 | + <packing> |
2249 | + <property name="padding">0</property> |
2250 | + <property name="expand">False</property> |
2251 | + <property name="fill">True</property> |
2252 | + </packing> |
2253 | + </child> |
2254 | + </widget> |
2255 | + </child> |
2256 | + </widget> |
2257 | + </child> |
2258 | + |
2259 | + <child> |
2260 | + <widget class="GtkLabel" id="lslideshow"> |
2261 | + <property name="visible">True</property> |
2262 | + <property name="label" translatable="yes"><b>Slideshow</b></property> |
2263 | + <property name="use_underline">False</property> |
2264 | + <property name="use_markup">True</property> |
2265 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
2266 | + <property name="wrap">False</property> |
2267 | + <property name="selectable">False</property> |
2268 | + <property name="xalign">0.5</property> |
2269 | + <property name="yalign">0.5</property> |
2270 | + <property name="xpad">0</property> |
2271 | + <property name="ypad">0</property> |
2272 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2273 | + <property name="width_chars">-1</property> |
2274 | + <property name="single_line_mode">False</property> |
2275 | + <property name="angle">0</property> |
2276 | + </widget> |
2277 | + <packing> |
2278 | + <property name="type">label_item</property> |
2279 | + </packing> |
2280 | + </child> |
2281 | + </widget> |
2282 | + <packing> |
2283 | + <property name="padding">5</property> |
2284 | + <property name="expand">True</property> |
2285 | + <property name="fill">True</property> |
2286 | + </packing> |
2287 | + </child> |
2288 | + |
2289 | + <child> |
2290 | + <placeholder/> |
2291 | + </child> |
2292 | + |
2293 | + <child> |
2294 | + <placeholder/> |
2295 | + </child> |
2296 | + </widget> |
2297 | + <packing> |
2298 | + <property name="tab_expand">False</property> |
2299 | + <property name="tab_fill">True</property> |
2300 | + </packing> |
2301 | + </child> |
2302 | + |
2303 | + <child> |
2304 | + <widget class="GtkLabel" id="LPhotographs"> |
2305 | + <property name="visible">True</property> |
2306 | + <property name="label" translatable="yes">Photographs</property> |
2307 | + <property name="use_underline">False</property> |
2308 | + <property name="use_markup">False</property> |
2309 | + <property name="justify">GTK_JUSTIFY_LEFT</property> |
2310 | + <property name="wrap">False</property> |
2311 | + <property name="selectable">False</property> |
2312 | + <property name="xalign">0.5</property> |
2313 | + <property name="yalign">0.5</property> |
2314 | + <property name="xpad">0</property> |
2315 | + <property name="ypad">0</property> |
2316 | + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2317 | + <property name="width_chars">-1</property> |
2318 | + <property name="single_line_mode">False</property> |
2319 | + <property name="angle">0</property> |
2320 | + </widget> |
2321 | + <packing> |
2322 | + <property name="type">tab</property> |
2323 | + </packing> |
2324 | + </child> |
2325 | + </widget> |
2326 | + <packing> |
2327 | + <property name="padding">0</property> |
2328 | + <property name="expand">True</property> |
2329 | + <property name="fill">True</property> |
2330 | + </packing> |
2331 | + </child> |
2332 | + </widget> |
2333 | + </child> |
2334 | +</widget> |
2335 | + |
2336 | </glade-interface> |
2337 | |
2338 | === modified file 'entertainerlib/utils/preferences_dialog.py' |
2339 | --- entertainerlib/utils/preferences_dialog.py 2009-02-10 00:25:53 +0000 |
2340 | +++ entertainerlib/utils/preferences_dialog.py 2009-03-08 22:29:55 +0000 |
2341 | @@ -48,6 +48,8 @@ |
2342 | self.on_theme_list_cursor_changed, |
2343 | "on_checkbutton_autostart_toggled" : |
2344 | self.on_checkbutton_autostart_toggled, |
2345 | + "on_checkbutton_fullscreen_toggled" : |
2346 | + self.on_checkbutton_fullscreen_toggled, |
2347 | "on_checkbutton_systray_icon_toggled" : |
2348 | self.on_checkbutton_systray_icon_toggled, |
2349 | "on_effect_checkbox_toggled" : self.on_effect_checkbox_toggled, |
2350 | @@ -160,16 +162,21 @@ |
2351 | |
2352 | self.config.write_preference_value("General", "theme", name.get_text()) |
2353 | |
2354 | + def on_checkbutton_autostart_toggled(self, widget): |
2355 | + """Server Autostart checkbox toggled""" |
2356 | + self.config.write_preference_value("General", "start_server_auto", |
2357 | + widget.get_active()) |
2358 | + |
2359 | + def on_checkbutton_fullscreen_toggled(self, widget): |
2360 | + """Start in fullscreen checkbox toggled""" |
2361 | + self.config.write_preference_value("General", "start_in_fullscreen", |
2362 | + widget.get_active()) |
2363 | + |
2364 | def on_checkbutton_systray_icon_toggled(self, widget): |
2365 | """System Tray Icon checkbox toggled""" |
2366 | self.config.write_preference_value("General", "display_icon", |
2367 | widget.get_active()) |
2368 | |
2369 | - def on_checkbutton_autostart_toggled(self, widget): |
2370 | - """Server Autostart checkbox toggled""" |
2371 | - self.config.write_preference_value("General", "start_server_auto", |
2372 | - widget.get_active()) |
2373 | - |
2374 | def on_effect_checkbox_toggled(self, widget): |
2375 | """Effect checkbox toggled""" |
2376 | combobox = self.widgets.get_widget("effect_combobox") |
2377 | @@ -262,41 +269,41 @@ |
2378 | index_counter += 1 |
2379 | |
2380 | # Checkboxes |
2381 | - effect_checkbox = self.widgets.get_widget("effect_checkbox") |
2382 | - effect_combobox = self.widgets.get_widget("effect_combobox") |
2383 | checkbutton_systray_icon = self.widgets.get_widget( |
2384 | "checkbutton_systray_icon") |
2385 | - checkbutton_autostart = self.widgets.get_widget( |
2386 | - "checkbutton_autostart") |
2387 | - spinbutton_slideshow_step = self.widgets.get_widget( |
2388 | - "spinbutton_slideshow_step") |
2389 | - |
2390 | - show_effects = self.config.show_effects() |
2391 | - effect = self.config.transition_effect() |
2392 | - start_icon = self.config.tray_icon_enabled() |
2393 | - start_server_auto = self.config.start_auto_server() |
2394 | - slideshow_step = self.config.get_slideshow_step() |
2395 | - |
2396 | - if start_icon: |
2397 | + if self.config.tray_icon_enabled(): |
2398 | checkbutton_systray_icon.set_active(True) |
2399 | else: |
2400 | checkbutton_systray_icon.set_active(False) |
2401 | |
2402 | - if start_server_auto: |
2403 | + checkbutton_autostart = self.widgets.get_widget("checkbutton_autostart") |
2404 | + if self.config.start_auto_server(): |
2405 | checkbutton_autostart.set_active(True) |
2406 | else: |
2407 | checkbutton_autostart.set_active(False) |
2408 | |
2409 | - if show_effects: |
2410 | + checkbutton_fullscreen = self.widgets.get_widget( |
2411 | + "checkbutton_fullscreen") |
2412 | + if self.config.start_in_fullscreen(): |
2413 | + checkbutton_fullscreen.set_active(True) |
2414 | + else: |
2415 | + checkbutton_fullscreen.set_active(False) |
2416 | + |
2417 | + effect_checkbox = self.widgets.get_widget("effect_checkbox") |
2418 | + effect_combobox = self.widgets.get_widget("effect_combobox") |
2419 | + if self.config.show_effects(): |
2420 | effect_checkbox.set_active(True) |
2421 | effect_combobox.set_sensitive(True) |
2422 | else: |
2423 | effect_checkbox.set_active(False) |
2424 | effect_combobox.set_sensitive(False) |
2425 | |
2426 | - spinbutton_slideshow_step.set_value(slideshow_step) |
2427 | + spinbutton_slideshow_step = self.widgets.get_widget( |
2428 | + "spinbutton_slideshow_step") |
2429 | + spinbutton_slideshow_step.set_value(self.config.get_slideshow_step()) |
2430 | |
2431 | # Set Effect Combobox value (Text values are set in glade file) |
2432 | + effect = self.config.transition_effect() |
2433 | if effect == "No effect": |
2434 | effect_combobox.set_active(0) |
2435 | if effect == "Crossfade": |
2436 | @@ -305,6 +312,4 @@ |
2437 | effect_combobox.set_active(2) |
2438 | if effect == "Slide": |
2439 | effect_combobox.set_active(3) |
2440 | - if effect == "Slide and fade": |
2441 | - effect_combobox.set_active(4) |
2442 |
This branch fixes problems that Entertainer has with fullscreen. It changes the default configuration so that Entertainer starts in fullscreen by default. This should work on all screens so it should eliminate the whole class of questions that say "how do I get Entertainer to fit on my <small resolution screen size here> screen?"
It also adds the GTK window back back and I fixed up a number of issues related to the window mode. The close button now works and I've added the Entertainer icon to the window.
The toggle between fullscreen and window mode still isn't very good, but frankly, neither is what we had. The root of the problem there is that we don't currently have a way to repaint the currently displayed screen. Adding that capability would make this branch enormous so I haven't done it (and I think Samuel had put some effort into that).