Merge lp:~mblayman/entertainer/less-config into lp:entertainer/future
- less-config
- Merge into entertainer-future
Proposed by
Matt Layman
Status: | Merged |
---|---|
Approved by: | Paul Hummer |
Approved revision: | 378 |
Merged at revision: | not available |
Proposed branch: | lp:~mblayman/entertainer/less-config |
Merge into: | lp:entertainer/future |
Diff against target: | None lines |
To merge this branch: | bzr merge lp:~mblayman/entertainer/less-config |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Paul Hummer | Approve | ||
Review via email: mp+10217@code.launchpad.net |
Commit message
Merged preference.conf into content.conf so there is only one config file to deal with.
Description of the change
To post a comment you must log in.
Revision history for this message
Matt Layman (mblayman) wrote : | # |
Revision history for this message
Paul Hummer (rockstar) wrote : | # |
Generally this looks good. I think it's going to need some rigorous testing, but I don't think that's a bad thing.
review:
Approve
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'cfg/content.conf' | |||
2 | --- cfg/content.conf 2009-05-31 17:11:16 +0000 | |||
3 | +++ cfg/content.conf 2009-08-16 19:34:38 +0000 | |||
4 | @@ -1,26 +1,33 @@ | |||
5 | 1 | # Copyright (c) 2009 Entertainer Developers - See COPYING - GPLv2 | 1 | # Copyright (c) 2009 Entertainer Developers - See COPYING - GPLv2 |
9 | 2 | [Images] | 2 | [Media] |
10 | 3 | folders = | 3 | download_lyrics = False |
11 | 4 | display_hidden_files_folders = False | 4 | download_album_art = True |
12 | 5 | download_metadata = True | ||
13 | 6 | display_eject_in_menu = False | ||
14 | 5 | 7 | ||
15 | 6 | [Weather] | 8 | [Weather] |
16 | 7 | location = Bath,England | 9 | location = Bath,England |
17 | 8 | display_in_menu = True | 10 | display_in_menu = True |
18 | 9 | metric_units = True | ||
19 | 10 | |||
20 | 11 | [Music] | ||
21 | 12 | folders = | ||
22 | 13 | download_lyrics = False | ||
23 | 14 | download_album_art = True | ||
24 | 15 | |||
25 | 16 | [Videos] | ||
26 | 17 | folders = | ||
27 | 18 | download_metadata = True | ||
28 | 19 | 11 | ||
29 | 20 | [RSS] | 12 | [RSS] |
31 | 21 | feeds = http://theironlion.net/feeds/blog;http://www.joshuascotton.com/main/archives/tag/entertainer/feed;http://laymanstermsdev.wordpress.com/feed | 13 | feeds = http://theironlion.net/blog/feed;http://www.joshuascotton.com/main/archives/tag/entertainer/feed;http://laymanstermsdev.wordpress.com/feed |
32 | 22 | fetch_interval = 15 | 14 | fetch_interval = 15 |
33 | 23 | 15 | ||
34 | 24 | [CD] | 16 | [CD] |
35 | 25 | display_eject_in_menu = False | 17 | display_eject_in_menu = False |
36 | 26 | 18 | ||
37 | 19 | [Photographs] | ||
38 | 20 | slideshow_step = 5 | ||
39 | 21 | |||
40 | 22 | [General] | ||
41 | 23 | stage_width = 1366 | ||
42 | 24 | stage_height = 768 | ||
43 | 25 | show_effects = True | ||
44 | 26 | start_in_fullscreen = True | ||
45 | 27 | theme = Default | ||
46 | 28 | backend_port = 45054 | ||
47 | 29 | history_size = 8 | ||
48 | 30 | transition_effect = Slide | ||
49 | 31 | start_server_auto = True | ||
50 | 32 | display_icon = False | ||
51 | 33 | |||
52 | 27 | 34 | ||
53 | === removed file 'cfg/preferences.conf' | |||
54 | --- cfg/preferences.conf 2009-05-06 03:40:22 +0000 | |||
55 | +++ cfg/preferences.conf 1970-01-01 00:00:00 +0000 | |||
56 | @@ -1,16 +0,0 @@ | |||
57 | 1 | # Copyright (c) 2009 Entertainer Developers - See COPYING - GPLv2 | ||
58 | 2 | [Photographs] | ||
59 | 3 | slideshow_step = 5 | ||
60 | 4 | |||
61 | 5 | [General] | ||
62 | 6 | stage_width = 1366 | ||
63 | 7 | stage_height = 768 | ||
64 | 8 | show_effects = True | ||
65 | 9 | start_in_fullscreen = True | ||
66 | 10 | theme = Default | ||
67 | 11 | backend_port = 45054 | ||
68 | 12 | history_size = 8 | ||
69 | 13 | transition_effect = Slide | ||
70 | 14 | start_server_auto = True | ||
71 | 15 | display_icon = False | ||
72 | 16 | |||
73 | 17 | 0 | ||
74 | === modified file 'entertainerlib/backend/components/mediacache/image_cache.py' | |||
75 | --- entertainerlib/backend/components/mediacache/image_cache.py 2009-06-30 01:06:01 +0000 | |||
76 | +++ entertainerlib/backend/components/mediacache/image_cache.py 2009-08-16 18:51:06 +0000 | |||
77 | @@ -117,15 +117,13 @@ | |||
78 | 117 | "Path doesn't exist: " + path) | 117 | "Path doesn't exist: " + path) |
79 | 118 | else: | 118 | else: |
80 | 119 | for root, dirs, files in os.walk(path): | 119 | for root, dirs, files in os.walk(path): |
83 | 120 | if os.path.split(root)[-1][0] == "." and not \ | 120 | if os.path.split(root)[-1][0] == ".": |
82 | 121 | self.config.display_hidden_files_folders(): | ||
84 | 122 | continue | 121 | continue |
85 | 123 | if not self.isDirectoryInCache(root): | 122 | if not self.isDirectoryInCache(root): |
86 | 124 | self._addAlbum(root) | 123 | self._addAlbum(root) |
87 | 125 | 124 | ||
88 | 126 | for name in files: | 125 | for name in files: |
91 | 127 | if os.path.split(name)[-1][0] == "." and not \ | 126 | if os.path.split(name)[-1][0] == ".": |
90 | 128 | self.config.display_hidden_files_folders(): | ||
92 | 129 | continue | 127 | continue |
93 | 130 | if self.isSupportedFormat(name): | 128 | if self.isSupportedFormat(name): |
94 | 131 | self.addFile(os.path.join(root, name)) | 129 | self.addFile(os.path.join(root, name)) |
95 | 132 | 130 | ||
96 | === modified file 'entertainerlib/backend/components/mediacache/media_cache_manager.py' | |||
97 | --- entertainerlib/backend/components/mediacache/media_cache_manager.py 2009-05-10 17:36:49 +0000 | |||
98 | +++ entertainerlib/backend/components/mediacache/media_cache_manager.py 2009-08-16 19:34:38 +0000 | |||
99 | @@ -23,11 +23,11 @@ | |||
100 | 23 | self.logger = Logger().getLogger( | 23 | self.logger = Logger().getLogger( |
101 | 24 | 'backend.components.mediacache.MediaCacheManager') | 24 | 'backend.components.mediacache.MediaCacheManager') |
102 | 25 | self.config = Configuration() | 25 | self.config = Configuration() |
104 | 26 | self.video_folders = self.config.get_video_folders() | 26 | self.video_folders = self.config.get_media_folders() |
105 | 27 | self._index_videos(self.video_folders) | 27 | self._index_videos(self.video_folders) |
107 | 28 | self.music_folders = self.config.get_music_folders() | 28 | self.music_folders = self.config.get_media_folders() |
108 | 29 | self._index_music(self.music_folders) | 29 | self._index_music(self.music_folders) |
110 | 30 | self.image_folders = self.config.get_image_folders() | 30 | self.image_folders = self.config.get_media_folders() |
111 | 31 | self._index_images(self.image_folders) | 31 | self._index_images(self.image_folders) |
112 | 32 | 32 | ||
113 | 33 | # Should we rebuild to detect files that were removed while backend was | 33 | # Should we rebuild to detect files that were removed while backend was |
114 | @@ -104,9 +104,9 @@ | |||
115 | 104 | we need to index them. If folders are removed, we need to remove | 104 | we need to index them. If folders are removed, we need to remove |
116 | 105 | them from the cache and also from FileSystemObeserver. | 105 | them from the cache and also from FileSystemObeserver. |
117 | 106 | """ | 106 | """ |
121 | 107 | updated_video_folders = self.config.get_video_folders() | 107 | updated_video_folders = self.config.get_media_folders() |
122 | 108 | updated_music_folders = self.config.get_music_folders() | 108 | updated_music_folders = self.config.get_media_folders() |
123 | 109 | updated_image_folders = self.config.get_image_folders() | 109 | updated_image_folders = self.config.get_media_folders() |
124 | 110 | 110 | ||
125 | 111 | # Handle image folder changes | 111 | # Handle image folder changes |
126 | 112 | current_images = set(self.image_folders) | 112 | current_images = set(self.image_folders) |
127 | 113 | 113 | ||
128 | === modified file 'entertainerlib/configuration.py' | |||
129 | --- entertainerlib/configuration.py 2009-07-07 01:28:42 +0000 | |||
130 | +++ entertainerlib/configuration.py 2009-08-16 20:02:42 +0000 | |||
131 | @@ -64,24 +64,7 @@ | |||
132 | 64 | self.ALBUM_ART_DIR = os.path.join(self.cfg_dir, 'cache/album_art') | 64 | self.ALBUM_ART_DIR = os.path.join(self.cfg_dir, 'cache/album_art') |
133 | 65 | self.MOVIE_ART_DIR = os.path.join(self.cfg_dir, 'cache/movie_art') | 65 | self.MOVIE_ART_DIR = os.path.join(self.cfg_dir, 'cache/movie_art') |
134 | 66 | 66 | ||
153 | 67 | # Preferences file | 67 | self.read_config_files() |
136 | 68 | self.preferences_conf = os.path.join(self.cfg_dir, | ||
137 | 69 | 'preferences.conf') | ||
138 | 70 | |||
139 | 71 | # Content file | ||
140 | 72 | self.content_conf = os.path.join(self.cfg_dir, 'content.conf') | ||
141 | 73 | |||
142 | 74 | self.content_config = ConfigParser.ConfigParser() | ||
143 | 75 | self.preferences = ConfigParser.ConfigParser() | ||
144 | 76 | try: | ||
145 | 77 | self.content_config.readfp(open(self.content_conf)) | ||
146 | 78 | self.preferences.readfp(open(self.preferences_conf)) | ||
147 | 79 | except ParsingError: | ||
148 | 80 | print("ParsingError with configuration file.") | ||
149 | 81 | sys.exit(1) | ||
150 | 82 | except IOError: | ||
151 | 83 | print("IOError: Couldn't read configuration file.") | ||
152 | 84 | sys.exit(1) | ||
154 | 85 | 68 | ||
155 | 86 | self.theme = Theme(self.get_theme_path()) | 69 | self.theme = Theme(self.get_theme_path()) |
156 | 87 | 70 | ||
157 | @@ -94,6 +77,20 @@ | |||
158 | 94 | 'host': 'localhost', | 77 | 'host': 'localhost', |
159 | 95 | 'port': 55545} | 78 | 'port': 55545} |
160 | 96 | 79 | ||
161 | 80 | def read_config_files(self): | ||
162 | 81 | '''Read in the config files.''' | ||
163 | 82 | self.content_conf = os.path.join(self.cfg_dir, 'content.conf') | ||
164 | 83 | |||
165 | 84 | self.content = ConfigParser.ConfigParser() | ||
166 | 85 | try: | ||
167 | 86 | self.content.readfp(open(self.content_conf)) | ||
168 | 87 | except ParsingError: | ||
169 | 88 | print("ParsingError with configuration file.") | ||
170 | 89 | sys.exit(1) | ||
171 | 90 | except IOError: | ||
172 | 91 | print("IOError: Couldn't read configuration file.") | ||
173 | 92 | sys.exit(1) | ||
174 | 93 | |||
175 | 97 | def create_cfg_dir(self): | 94 | def create_cfg_dir(self): |
176 | 98 | '''Create a configuration directory and default config files.''' | 95 | '''Create a configuration directory and default config files.''' |
177 | 99 | 96 | ||
178 | @@ -135,8 +132,7 @@ | |||
179 | 135 | Read configuration files again and update this object. | 132 | Read configuration files again and update this object. |
180 | 136 | """ | 133 | """ |
181 | 137 | try: | 134 | try: |
184 | 138 | self.content_config.readfp(open(self.content_conf)) | 135 | self.content.readfp(open(self.content_conf)) |
183 | 139 | self.preferences.readfp(open(self.preferences_conf)) | ||
185 | 140 | except ParsingError: | 136 | except ParsingError: |
186 | 141 | raise Exception("Syntax error in configuration file.") | 137 | raise Exception("Syntax error in configuration file.") |
187 | 142 | except IOError: | 138 | except IOError: |
188 | @@ -144,33 +140,31 @@ | |||
189 | 144 | 140 | ||
190 | 145 | def write_content_value(self, section, option, value): | 141 | def write_content_value(self, section, option, value): |
191 | 146 | """Write a new value to the content configuration file.""" | 142 | """Write a new value to the content configuration file.""" |
194 | 147 | try: | 143 | |
195 | 148 | self.content_config.set(section, option, value) | 144 | def write_value(section, option, value): |
196 | 145 | '''Actually write the value to the section and option.''' | ||
197 | 146 | self.content.set(section, option, value) | ||
198 | 149 | cfg_file = file(self.content_conf, 'w') | 147 | cfg_file = file(self.content_conf, 'w') |
200 | 150 | self.content_config.write(cfg_file) | 148 | self.content.write(cfg_file) |
201 | 149 | |||
202 | 150 | try: | ||
203 | 151 | write_value(section, option, value) | ||
204 | 151 | except NoSectionError: | 152 | except NoSectionError: |
206 | 152 | raise Exception("No Section to set in content.conf file") | 153 | # Provide an upgrade path to additions of new sections. |
207 | 154 | shutil.rmtree(self.cfg_dir) | ||
208 | 155 | self.create_cfg_dir() | ||
209 | 156 | self.read_config_files() | ||
210 | 157 | write_value(section, option, value) | ||
211 | 153 | except NoOptionError: | 158 | except NoOptionError: |
212 | 154 | raise Exception("No Option to set in content.conf file") | 159 | raise Exception("No Option to set in content.conf file") |
213 | 155 | 160 | ||
214 | 156 | def write_preference_value(self, section, option, value): | ||
215 | 157 | """Write a new value to the preferences configuration file.""" | ||
216 | 158 | try: | ||
217 | 159 | self.preferences.set(section, option, value) | ||
218 | 160 | cfg_file = file(self.preferences_conf, 'w') | ||
219 | 161 | self.preferences.write(cfg_file) | ||
220 | 162 | except NoSectionError: | ||
221 | 163 | raise Exception("No Section to set in preferences.conf file") | ||
222 | 164 | except NoOptionError: | ||
223 | 165 | raise Exception("No Option to set in preferences.conf file") | ||
224 | 166 | |||
225 | 167 | def get_stage_width(self): | 161 | def get_stage_width(self): |
226 | 168 | '''Get the stage width from the preferences''' | 162 | '''Get the stage width from the preferences''' |
227 | 169 | if self.stage_width: | 163 | if self.stage_width: |
228 | 170 | return self.stage_width | 164 | return self.stage_width |
229 | 171 | 165 | ||
230 | 172 | try: | 166 | try: |
232 | 173 | self.stage_width = self.preferences.getint("General", "stage_width") | 167 | self.stage_width = self.content.getint("General", "stage_width") |
233 | 174 | except (NoSectionError, NoOptionError): | 168 | except (NoSectionError, NoOptionError): |
234 | 175 | self.stage_width = 1366 # Default | 169 | self.stage_width = 1366 # Default |
235 | 176 | 170 | ||
236 | @@ -186,8 +180,7 @@ | |||
237 | 186 | return self.stage_height | 180 | return self.stage_height |
238 | 187 | 181 | ||
239 | 188 | try: | 182 | try: |
242 | 189 | self.stage_height = self.preferences.getint("General", | 183 | self.stage_height = self.content.getint("General", "stage_height") |
241 | 190 | "stage_height") | ||
243 | 191 | except (NoSectionError, NoOptionError): | 184 | except (NoSectionError, NoOptionError): |
244 | 192 | self.stage_height = 768 # Default | 185 | self.stage_height = 768 # Default |
245 | 193 | 186 | ||
246 | @@ -204,7 +197,7 @@ | |||
247 | 204 | """ | 197 | """ |
248 | 205 | theme_path = os.path.join(self.get_cfg_dir(), 'themes') | 198 | theme_path = os.path.join(self.get_cfg_dir(), 'themes') |
249 | 206 | try: | 199 | try: |
251 | 207 | theme = self.preferences.get("General", "theme") | 200 | theme = self.content.get("General", "theme") |
252 | 208 | except (NoSectionError, NoOptionError): | 201 | except (NoSectionError, NoOptionError): |
253 | 209 | return os.path.join(theme_path, "Default") | 202 | return os.path.join(theme_path, "Default") |
254 | 210 | 203 | ||
255 | @@ -219,7 +212,7 @@ | |||
256 | 219 | @return: boolean | 212 | @return: boolean |
257 | 220 | """ | 213 | """ |
258 | 221 | try: | 214 | try: |
260 | 222 | result = self.preferences.getboolean("General", "display_icon") | 215 | result = self.content.getboolean("General", "display_icon") |
261 | 223 | except (NoSectionError, NoOptionError): | 216 | except (NoSectionError, NoOptionError): |
262 | 224 | return False | 217 | return False |
263 | 225 | return result | 218 | return result |
264 | @@ -230,7 +223,7 @@ | |||
265 | 230 | @return: Integer | 223 | @return: Integer |
266 | 231 | """ | 224 | """ |
267 | 232 | try: | 225 | try: |
269 | 233 | result = self.content_config.getint("RSS", "fetch_interval") | 226 | result = self.content.getint("RSS", "fetch_interval") |
270 | 234 | except (NoSectionError, NoOptionError): | 227 | except (NoSectionError, NoOptionError): |
271 | 235 | return 60 # Default is one hour | 228 | return 60 # Default is one hour |
272 | 236 | return result | 229 | return result |
273 | @@ -241,46 +234,18 @@ | |||
274 | 241 | @return: Integer | 234 | @return: Integer |
275 | 242 | """ | 235 | """ |
276 | 243 | try: | 236 | try: |
278 | 244 | result = self.preferences.getint("General", "backend_port") | 237 | result = self.content.getint("General", "backend_port") |
279 | 245 | except (NoSectionError, NoOptionError): | 238 | except (NoSectionError, NoOptionError): |
280 | 246 | return 45054 # Default port | 239 | return 45054 # Default port |
281 | 247 | return result | 240 | return result |
282 | 248 | 241 | ||
318 | 249 | def get_video_folders(self): | 242 | def get_media_folders(self): |
319 | 250 | """ | 243 | '''Return a list of folders for media.''' |
320 | 251 | Get list of video folders | 244 | try: |
321 | 252 | @return:String Array | 245 | media = self.content.get("Media", "folders") |
322 | 253 | """ | 246 | return self._is_valid_media_folder(media.split(';')) |
323 | 254 | try: | 247 | except (NoSectionError, NoOptionError): |
324 | 255 | video_list = self.content_config.get("Videos", "folders") | 248 | return [] |
290 | 256 | result = self._is_valid_media_folder(video_list.split(';')) | ||
291 | 257 | except (NoSectionError, NoOptionError): | ||
292 | 258 | return [] | ||
293 | 259 | return result | ||
294 | 260 | |||
295 | 261 | def get_music_folders(self): | ||
296 | 262 | """ | ||
297 | 263 | Get list of music folders | ||
298 | 264 | @return: String Array | ||
299 | 265 | """ | ||
300 | 266 | try: | ||
301 | 267 | music_list = self.content_config.get("Music", "folders") | ||
302 | 268 | result = music_list.split(';') | ||
303 | 269 | except (NoSectionError, NoOptionError): | ||
304 | 270 | return [] | ||
305 | 271 | return result | ||
306 | 272 | |||
307 | 273 | def get_image_folders(self): | ||
308 | 274 | """ | ||
309 | 275 | Get list of image folders | ||
310 | 276 | @return: String Array | ||
311 | 277 | """ | ||
312 | 278 | try: | ||
313 | 279 | image_list = self.content_config.get("Images", "folders") | ||
314 | 280 | result = self._is_valid_media_folder(image_list.split(';')) | ||
315 | 281 | except (NoSectionError, NoOptionError): | ||
316 | 282 | return [] | ||
317 | 283 | return result | ||
325 | 284 | 249 | ||
326 | 285 | def get_feeds(self): | 250 | def get_feeds(self): |
327 | 286 | """ | 251 | """ |
328 | @@ -288,7 +253,7 @@ | |||
329 | 288 | @return: String Array | 253 | @return: String Array |
330 | 289 | """ | 254 | """ |
331 | 290 | try: | 255 | try: |
333 | 291 | rss_feeds = self.content_config.get("RSS", "feeds") | 256 | rss_feeds = self.content.get("RSS", "feeds") |
334 | 292 | result = rss_feeds.split(';') | 257 | result = rss_feeds.split(';') |
335 | 293 | except (NoSectionError, NoOptionError): | 258 | except (NoSectionError, NoOptionError): |
336 | 294 | return [] | 259 | return [] |
337 | @@ -300,7 +265,7 @@ | |||
338 | 300 | @return: List of strings | 265 | @return: List of strings |
339 | 301 | """ | 266 | """ |
340 | 302 | try: | 267 | try: |
342 | 303 | location = self.content_config.get("Weather", "location") | 268 | location = self.content.get("Weather", "location") |
343 | 304 | except (NoSectionError, NoOptionError): | 269 | except (NoSectionError, NoOptionError): |
344 | 305 | location = '' | 270 | location = '' |
345 | 306 | return location | 271 | return location |
346 | @@ -311,8 +276,7 @@ | |||
347 | 311 | @return: Boolean | 276 | @return: Boolean |
348 | 312 | """ | 277 | """ |
349 | 313 | try: | 278 | try: |
352 | 314 | result = self.content_config.getboolean("Weather", | 279 | result = self.content.getboolean("Weather", "display_in_menu") |
351 | 315 | "display_in_menu") | ||
353 | 316 | except (NoSectionError, NoOptionError): | 280 | except (NoSectionError, NoOptionError): |
354 | 317 | return False | 281 | return False |
355 | 318 | return result | 282 | return result |
356 | @@ -323,8 +287,7 @@ | |||
357 | 323 | @return: Boolean | 287 | @return: Boolean |
358 | 324 | """ | 288 | """ |
359 | 325 | try: | 289 | try: |
362 | 326 | result = self.content_config.getboolean("CD", | 290 | result = self.content.getboolean("CD", "display_eject_in_menu") |
361 | 327 | "display_eject_in_menu") | ||
363 | 328 | except (NoSectionError, NoOptionError): | 291 | except (NoSectionError, NoOptionError): |
364 | 329 | return False | 292 | return False |
365 | 330 | return result | 293 | return result |
366 | @@ -334,8 +297,7 @@ | |||
367 | 334 | Get True if video metadata should be downloaded, otherwise False | 297 | Get True if video metadata should be downloaded, otherwise False |
368 | 335 | """ | 298 | """ |
369 | 336 | try: | 299 | try: |
372 | 337 | result = self.content_config.getboolean("Videos", | 300 | result = self.content.getboolean("Media", "download_video_metadata") |
371 | 338 | "download_metadata") | ||
373 | 339 | except (NoSectionError, NoOptionError): | 301 | except (NoSectionError, NoOptionError): |
374 | 340 | return False | 302 | return False |
375 | 341 | return result | 303 | return result |
376 | @@ -346,8 +308,7 @@ | |||
377 | 346 | @return: boolean | 308 | @return: boolean |
378 | 347 | """ | 309 | """ |
379 | 348 | try: | 310 | try: |
382 | 349 | result = self.content_config.getboolean("Music", | 311 | result = self.content.getboolean("Media", "download_album_art") |
381 | 350 | "download_album_art") | ||
383 | 351 | except (NoSectionError, NoOptionError): | 312 | except (NoSectionError, NoOptionError): |
384 | 352 | return False | 313 | return False |
385 | 353 | return result | 314 | return result |
386 | @@ -358,16 +319,7 @@ | |||
387 | 358 | @return: boolean | 319 | @return: boolean |
388 | 359 | """ | 320 | """ |
389 | 360 | try: | 321 | try: |
400 | 361 | result = self.content_config.getboolean("Music", "download_lyrics") | 322 | result = self.content.getboolean("Media", "download_lyrics") |
391 | 362 | except (NoSectionError, NoOptionError): | ||
392 | 363 | return False | ||
393 | 364 | return result | ||
394 | 365 | |||
395 | 366 | def display_hidden_files_folders(self): | ||
396 | 367 | """If True hidden files and folders will be added to image library.""" | ||
397 | 368 | try: | ||
398 | 369 | result = self.content_config.getboolean("Images", | ||
399 | 370 | "display_hidden_files_folders") | ||
401 | 371 | except (NoSectionError, NoOptionError): | 323 | except (NoSectionError, NoOptionError): |
402 | 372 | return False | 324 | return False |
403 | 373 | return result | 325 | return result |
404 | @@ -378,7 +330,7 @@ | |||
405 | 378 | @return: boolean | 330 | @return: boolean |
406 | 379 | """ | 331 | """ |
407 | 380 | try: | 332 | try: |
409 | 381 | result = self.preferences.getboolean("General", "show_effects") | 333 | result = self.content.getboolean("General", "show_effects") |
410 | 382 | except (NoSectionError, NoOptionError): | 334 | except (NoSectionError, NoOptionError): |
411 | 383 | return False | 335 | return False |
412 | 384 | return result | 336 | return result |
413 | @@ -389,7 +341,7 @@ | |||
414 | 389 | @return: string (name of the effect) | 341 | @return: string (name of the effect) |
415 | 390 | """ | 342 | """ |
416 | 391 | try: | 343 | try: |
418 | 392 | result = self.preferences.get("General", "transition_effect") | 344 | result = self.content.get("General", "transition_effect") |
419 | 393 | except (NoSectionError, NoOptionError): | 345 | except (NoSectionError, NoOptionError): |
420 | 394 | return False | 346 | return False |
421 | 395 | return result | 347 | return result |
422 | @@ -400,7 +352,7 @@ | |||
423 | 400 | @return: string (theme name) | 352 | @return: string (theme name) |
424 | 401 | """ | 353 | """ |
425 | 402 | try: | 354 | try: |
427 | 403 | result = self.preferences.get("General", "theme") | 355 | result = self.content.get("General", "theme") |
428 | 404 | except (NoSectionError, NoOptionError): | 356 | except (NoSectionError, NoOptionError): |
429 | 405 | result = "Default" | 357 | result = "Default" |
430 | 406 | return result | 358 | return result |
431 | @@ -408,8 +360,7 @@ | |||
432 | 408 | def start_in_fullscreen(self): | 360 | def start_in_fullscreen(self): |
433 | 409 | '''Boolean to determine whether to start in fullscreen mode or not.''' | 361 | '''Boolean to determine whether to start in fullscreen mode or not.''' |
434 | 410 | try: | 362 | try: |
437 | 411 | result = self.preferences.getboolean("General", | 363 | result = self.content.getboolean("General", "start_in_fullscreen") |
436 | 412 | "start_in_fullscreen") | ||
438 | 413 | except (NoSectionError, NoOptionError): | 364 | except (NoSectionError, NoOptionError): |
439 | 414 | return True | 365 | return True |
440 | 415 | return result | 366 | return result |
441 | @@ -420,8 +371,7 @@ | |||
442 | 420 | @return: boolean | 371 | @return: boolean |
443 | 421 | """ | 372 | """ |
444 | 422 | try: | 373 | try: |
447 | 423 | result = self.preferences.getboolean("General", | 374 | result = self.content.getboolean("General", "start_server_auto") |
446 | 424 | "start_server_auto") | ||
448 | 425 | except (NoSectionError, NoOptionError): | 375 | except (NoSectionError, NoOptionError): |
449 | 426 | return False | 376 | return False |
450 | 427 | return result | 377 | return result |
451 | @@ -433,7 +383,7 @@ | |||
452 | 433 | @return: Integer | 383 | @return: Integer |
453 | 434 | """ | 384 | """ |
454 | 435 | try: | 385 | try: |
456 | 436 | result = self.preferences.getint("General", "history_size") | 386 | result = self.content.getint("General", "history_size") |
457 | 437 | except (NoSectionError, NoOptionError): | 387 | except (NoSectionError, NoOptionError): |
458 | 438 | return 10 | 388 | return 10 |
459 | 439 | return result | 389 | return result |
460 | @@ -444,7 +394,7 @@ | |||
461 | 444 | @return: Integer | 394 | @return: Integer |
462 | 445 | """ | 395 | """ |
463 | 446 | try: | 396 | try: |
465 | 447 | result = self.preferences.getint("Photographs", "slideshow_step") | 397 | result = self.content.getint("Photographs", "slideshow_step") |
466 | 448 | except (NoSectionError, NoOptionError): | 398 | except (NoSectionError, NoOptionError): |
467 | 449 | return 5 | 399 | return 5 |
468 | 450 | return result | 400 | return result |
469 | 451 | 401 | ||
470 | === modified file 'entertainerlib/dialog.py' | |||
471 | --- entertainerlib/dialog.py 2009-07-14 04:24:07 +0000 | |||
472 | +++ entertainerlib/dialog.py 2009-08-16 20:02:42 +0000 | |||
473 | @@ -50,33 +50,25 @@ | |||
474 | 50 | self.dialog = self.widgets.get_widget("ContentManagementDialog") | 50 | self.dialog = self.widgets.get_widget("ContentManagementDialog") |
475 | 51 | if (self.dialog): | 51 | if (self.dialog): |
476 | 52 | callback_dic = { | 52 | callback_dic = { |
477 | 53 | # Dialog-wide callbacks | ||
478 | 53 | "on_button_open_list_clicked" : | 54 | "on_button_open_list_clicked" : |
479 | 54 | self.on_button_open_list_clicked, | 55 | self.on_button_open_list_clicked, |
480 | 55 | "on_close_button_clicked" : self.on_close_button_clicked, | 56 | "on_close_button_clicked" : self.on_close_button_clicked, |
487 | 56 | "on_button_remove_videos_clicked" : | 57 | "on_ContentManagementDialog_destroy" : self.on_dialog_closed, |
488 | 57 | self.on_button_remove_videos_clicked, | 58 | |
489 | 58 | "on_button_add_videos_clicked" : | 59 | # Media tab |
490 | 59 | self.on_button_add_videos_clicked, | 60 | "on_button_remove_media_clicked" : |
491 | 60 | "on_button_edit_videos_clicked" : | 61 | self.on_button_remove_media_clicked, |
492 | 61 | self.on_button_edit_videos_clicked, | 62 | "on_button_add_media_clicked" : |
493 | 63 | self.on_button_add_media_clicked, | ||
494 | 64 | "on_button_edit_media_clicked" : | ||
495 | 65 | self.on_button_edit_media_clicked, | ||
496 | 62 | "on_checkbutton_video_metadata_toggled" : | 66 | "on_checkbutton_video_metadata_toggled" : |
497 | 63 | self.on_checkbutton_video_metadata_toggled, | 67 | self.on_checkbutton_video_metadata_toggled, |
498 | 64 | "on_button_add_music_clicked" : | ||
499 | 65 | self.on_button_add_music_clicked, | ||
500 | 66 | "on_button_remove_music_clicked" : | ||
501 | 67 | self.on_button_remove_music_clicked, | ||
502 | 68 | "on_button_edit_music_clicked" : | ||
503 | 69 | self.on_button_edit_music_clicked, | ||
504 | 70 | "on_lyrics_checkbox_toggled" : self.on_lyrics_checkbox_toggled, | 68 | "on_lyrics_checkbox_toggled" : self.on_lyrics_checkbox_toggled, |
505 | 71 | "on_art_checkbox_toggled" : self.on_art_checkbox_toggled, | 69 | "on_art_checkbox_toggled" : self.on_art_checkbox_toggled, |
514 | 72 | "on_button_add_images_clicked" : | 70 | |
515 | 73 | self.on_button_add_images_clicked, | 71 | # Feed tab |
508 | 74 | "on_button_remove_images_clicked" : | ||
509 | 75 | self.on_button_remove_images_clicked, | ||
510 | 76 | "on_button_edit_images_clicked" : | ||
511 | 77 | self.on_button_edit_images_clicked, | ||
512 | 78 | "on_hidden_files_folders_checkbox_toggled" : | ||
513 | 79 | self.on_hidden_files_folders_checkbox_toggled, | ||
516 | 80 | "on_button_add_feed_clicked" : | 72 | "on_button_add_feed_clicked" : |
517 | 81 | self.on_button_add_feed_clicked, | 73 | self.on_button_add_feed_clicked, |
518 | 82 | "on_button_remove_feed_clicked" : | 74 | "on_button_remove_feed_clicked" : |
519 | @@ -85,20 +77,23 @@ | |||
520 | 85 | self.on_button_edit_feed_clicked, | 77 | self.on_button_edit_feed_clicked, |
521 | 86 | "on_fetch_interval_spinbutton_value_changed" : | 78 | "on_fetch_interval_spinbutton_value_changed" : |
522 | 87 | self.on_fetch_interval_spinbutton_value_changed, | 79 | self.on_fetch_interval_spinbutton_value_changed, |
523 | 88 | "on_ContentManagementDialog_destroy" : self.on_dialog_closed, | ||
524 | 89 | "on_url_dialog_delete_event" : self.on_url_dialog_delete_event, | 80 | "on_url_dialog_delete_event" : self.on_url_dialog_delete_event, |
525 | 90 | "on_url_dialog_ok_button_clicked" : | 81 | "on_url_dialog_ok_button_clicked" : |
526 | 91 | self.on_url_dialog_ok_button_clicked, | 82 | self.on_url_dialog_ok_button_clicked, |
527 | 92 | "on_url_dialog_cancel_button_clicked" : | 83 | "on_url_dialog_cancel_button_clicked" : |
528 | 93 | self.on_url_dialog_cancel_button_clicked, | 84 | self.on_url_dialog_cancel_button_clicked, |
531 | 94 | "on_button_video_rebuild_clicked" : | 85 | |
532 | 95 | self.on_button_video_rebuild_clicked, | 86 | # Reset tab |
533 | 87 | "on_button_media_rebuild_clicked" : | ||
534 | 88 | self.on_button_media_rebuild_clicked, | ||
535 | 96 | "on_button_music_rebuild_clicked" : | 89 | "on_button_music_rebuild_clicked" : |
536 | 97 | self.on_button_music_rebuild_clicked, | 90 | self.on_button_music_rebuild_clicked, |
537 | 98 | "on_button_image_rebuild_clicked" : | 91 | "on_button_image_rebuild_clicked" : |
538 | 99 | self.on_button_image_rebuild_clicked, | 92 | self.on_button_image_rebuild_clicked, |
539 | 100 | "on_button_feed_rebuild_clicked" : | 93 | "on_button_feed_rebuild_clicked" : |
540 | 101 | self.on_button_feed_rebuild_clicked, | 94 | self.on_button_feed_rebuild_clicked, |
541 | 95 | |||
542 | 96 | # Weather tab | ||
543 | 102 | "on_button_add_weather_clicked" : | 97 | "on_button_add_weather_clicked" : |
544 | 103 | self.on_button_add_weather_clicked, | 98 | self.on_button_add_weather_clicked, |
545 | 104 | "on_button_remove_weather_clicked" : | 99 | "on_button_remove_weather_clicked" : |
546 | @@ -112,6 +107,7 @@ | |||
547 | 112 | "on_location_add_button_clicked" : | 107 | "on_location_add_button_clicked" : |
548 | 113 | self.on_location_add_button_clicked, | 108 | self.on_location_add_button_clicked, |
549 | 114 | "on_location_entry_activate" : self.on_location_entry_activate} | 109 | "on_location_entry_activate" : self.on_location_entry_activate} |
550 | 110 | |||
551 | 115 | self.widgets.signal_autoconnect(callback_dic) | 111 | self.widgets.signal_autoconnect(callback_dic) |
552 | 116 | 112 | ||
553 | 117 | # Initialize dialog widgets with correct values and show dialog | 113 | # Initialize dialog widgets with correct values and show dialog |
554 | @@ -127,8 +123,6 @@ | |||
555 | 127 | column = gtk.TreeViewColumn(_("Location"), cell_renderer, text=0) | 123 | column = gtk.TreeViewColumn(_("Location"), cell_renderer, text=0) |
556 | 128 | result_list.append_column(column) | 124 | result_list.append_column(column) |
557 | 129 | 125 | ||
558 | 130 | # Signal handlers | ||
559 | 131 | |||
560 | 132 | def on_dialog_closed(self, widget): | 126 | def on_dialog_closed(self, widget): |
561 | 133 | """Callback function for dialog's close button""" | 127 | """Callback function for dialog's close button""" |
562 | 134 | try: | 128 | try: |
563 | @@ -165,12 +159,12 @@ | |||
564 | 165 | self.dialog.hide() | 159 | self.dialog.hide() |
565 | 166 | self.dialog.destroy() | 160 | self.dialog.destroy() |
566 | 167 | 161 | ||
568 | 168 | def on_button_add_videos_clicked(self, widget): | 162 | def on_button_add_media_clicked(self, widget): |
569 | 169 | """Opens add URL dialog. """ | 163 | """Opens add URL dialog. """ |
571 | 170 | widget = self.widgets.get_widget("treeview_videos") | 164 | widget = self.widgets.get_widget("treeview_media") |
572 | 171 | model = widget.get_model() | 165 | model = widget.get_model() |
573 | 172 | # Open "Select folder" dialog | 166 | # Open "Select folder" dialog |
575 | 173 | dialog = gtk.FileChooserDialog(_("Select video folder"), None, | 167 | dialog = gtk.FileChooserDialog(_("Select folder"), None, |
576 | 174 | gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER, | 168 | gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER, |
577 | 175 | (gtk.STOCK_CANCEL,gtk.RESPONSE_CANCEL, | 169 | (gtk.STOCK_CANCEL,gtk.RESPONSE_CANCEL, |
578 | 176 | gtk.STOCK_OPEN,gtk.RESPONSE_OK), | 170 | gtk.STOCK_OPEN,gtk.RESPONSE_OK), |
579 | @@ -179,25 +173,25 @@ | |||
580 | 179 | # If folder was selected we add it to model and update config file | 173 | # If folder was selected we add it to model and update config file |
581 | 180 | if(status == gtk.RESPONSE_OK): | 174 | if(status == gtk.RESPONSE_OK): |
582 | 181 | self.add_to_model_and_config(dialog.get_current_folder(), model, | 175 | self.add_to_model_and_config(dialog.get_current_folder(), model, |
584 | 182 | self.video_folders, "Videos") | 176 | self.media_folders, "Media") |
585 | 183 | dialog.destroy() | 177 | dialog.destroy() |
586 | 184 | 178 | ||
590 | 185 | def on_button_remove_videos_clicked(self, widget): | 179 | def on_button_remove_media_clicked(self, widget): |
591 | 186 | """Remove currently selected folder from video folders""" | 180 | """Remove currently selected folder from media folders""" |
592 | 187 | widget = self.widgets.get_widget("treeview_videos") | 181 | widget = self.widgets.get_widget("treeview_media") |
593 | 188 | model = widget.get_model() | 182 | model = widget.get_model() |
594 | 189 | selection = widget.get_selection().get_selected() | 183 | selection = widget.get_selection().get_selected() |
595 | 190 | if selection[1] == None: | 184 | if selection[1] == None: |
596 | 191 | return | 185 | return |
597 | 192 | rm_folder = model.get_value(selection[1], 0) | 186 | rm_folder = model.get_value(selection[1], 0) |
601 | 193 | self.video_folders.remove(rm_folder) | 187 | self.media_folders.remove(rm_folder) |
602 | 194 | str_folders = ";".join(self.video_folders) | 188 | str_folders = ";".join(self.media_folders) |
603 | 195 | self.config.write_content_value("Videos", "folders", str_folders) | 189 | self.config.write_content_value("Media", "folders", str_folders) |
604 | 196 | model.remove(selection[1]) | 190 | model.remove(selection[1]) |
605 | 197 | 191 | ||
607 | 198 | def on_button_edit_videos_clicked(self, widget): | 192 | def on_button_edit_media_clicked(self, widget): |
608 | 199 | """Edit currently selected folder""" | 193 | """Edit currently selected folder""" |
610 | 200 | widget = self.widgets.get_widget("treeview_videos") | 194 | widget = self.widgets.get_widget("treeview_media") |
611 | 201 | url_dialog = self.widgets.get_widget("url_dialog") | 195 | url_dialog = self.widgets.get_widget("url_dialog") |
612 | 202 | url_entry = self.widgets.get_widget("url_entry") | 196 | url_entry = self.widgets.get_widget("url_entry") |
613 | 203 | model = widget.get_model() | 197 | model = widget.get_model() |
614 | @@ -212,11 +206,11 @@ | |||
615 | 212 | # Update list model | 206 | # Update list model |
616 | 213 | model.set_value(selection[1], 0, self.url) | 207 | model.set_value(selection[1], 0, self.url) |
617 | 214 | # Update configure file | 208 | # Update configure file |
623 | 215 | pos = self.video_folders.index(folder) | 209 | pos = self.media_folders.index(folder) |
624 | 216 | self.video_folders.remove(folder) | 210 | self.media_folders.remove(folder) |
625 | 217 | self.video_folders.insert(pos, self.url) | 211 | self.media_folders.insert(pos, self.url) |
626 | 218 | str_folders = ";".join(self.video_folders) | 212 | str_folders = ";".join(self.media_folders) |
627 | 219 | self.config.write_content_value("Videos", "folders", | 213 | self.config.write_content_value("Media", "folders", |
628 | 220 | str_folders) | 214 | str_folders) |
629 | 221 | 215 | ||
630 | 222 | def on_checkbutton_video_metadata_toggled(self, widget): | 216 | def on_checkbutton_video_metadata_toggled(self, widget): |
631 | @@ -224,124 +218,9 @@ | |||
632 | 224 | Download video file metadata from internet | 218 | Download video file metadata from internet |
633 | 225 | @param widget: GTK-Widget | 219 | @param widget: GTK-Widget |
634 | 226 | """ | 220 | """ |
636 | 227 | self.config.write_content_value("Videos", "download_metadata", | 221 | self.config.write_content_value("Media", "download_video_metadata", |
637 | 228 | widget.get_active()) | 222 | widget.get_active()) |
638 | 229 | 223 | ||
639 | 230 | def on_button_add_music_clicked(self, widget): | ||
640 | 231 | """ | ||
641 | 232 | Opens add URL dialog | ||
642 | 233 | @param widget: GTK-Widget | ||
643 | 234 | """ | ||
644 | 235 | widget = self.widgets.get_widget("treeview_music") | ||
645 | 236 | model = widget.get_model() | ||
646 | 237 | # Open "Select folder" dialog | ||
647 | 238 | dialog = gtk.FileChooserDialog(_("Select music folder"), None, | ||
648 | 239 | gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER, | ||
649 | 240 | (gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL, gtk.STOCK_OPEN, | ||
650 | 241 | gtk.RESPONSE_OK), | ||
651 | 242 | None) | ||
652 | 243 | status = dialog.run() | ||
653 | 244 | # If folder was selected we add it to model and update config file | ||
654 | 245 | if(status == gtk.RESPONSE_OK): | ||
655 | 246 | self.add_to_model_and_config(dialog.get_current_folder(), model, | ||
656 | 247 | self.music_folders, "Music") | ||
657 | 248 | dialog.destroy() | ||
658 | 249 | |||
659 | 250 | def on_button_remove_music_clicked(self, widget): | ||
660 | 251 | """Remove currently selected folder from music folders""" | ||
661 | 252 | widget = self.widgets.get_widget("treeview_music") | ||
662 | 253 | model = widget.get_model() | ||
663 | 254 | selection = widget.get_selection().get_selected() | ||
664 | 255 | if selection[1] == None: | ||
665 | 256 | return | ||
666 | 257 | rm_folder = model.get_value(selection[1], 0) | ||
667 | 258 | self.music_folders.remove(rm_folder) | ||
668 | 259 | str_folders = ";".join(self.music_folders) | ||
669 | 260 | self.config.write_content_value("Music", "folders", str_folders) | ||
670 | 261 | model.remove(selection[1]) | ||
671 | 262 | |||
672 | 263 | def on_button_edit_music_clicked(self, widget): | ||
673 | 264 | """Edit currently selected music folder""" | ||
674 | 265 | widget = self.widgets.get_widget("treeview_music") | ||
675 | 266 | url_dialog = self.widgets.get_widget("url_dialog") | ||
676 | 267 | url_entry = self.widgets.get_widget("url_entry") | ||
677 | 268 | model = widget.get_model() | ||
678 | 269 | selection = widget.get_selection().get_selected() | ||
679 | 270 | if selection[1] == None: | ||
680 | 271 | return | ||
681 | 272 | folder = model.get_value(selection[1], 0) | ||
682 | 273 | url_entry.set_text(folder) | ||
683 | 274 | url_dialog.set_title(_("Edit URL")) | ||
684 | 275 | status = url_dialog.run() | ||
685 | 276 | if status == gtk.RESPONSE_OK and os.path.exists(self.url): | ||
686 | 277 | # Update list model | ||
687 | 278 | model.set_value(selection[1], 0, self.url) | ||
688 | 279 | # Update configure file | ||
689 | 280 | pos = self.music_folders.index(folder) | ||
690 | 281 | self.music_folders.remove(folder) | ||
691 | 282 | self.music_folders.insert(pos, self.url) | ||
692 | 283 | str_folders = ";".join(self.music_folders) | ||
693 | 284 | self.config.write_content_value("Music", "folders", str_folders) | ||
694 | 285 | |||
695 | 286 | def on_button_add_images_clicked(self, widget): | ||
696 | 287 | """Opens add URL dialog. """ | ||
697 | 288 | widget = self.widgets.get_widget("treeview_images") | ||
698 | 289 | model = widget.get_model() | ||
699 | 290 | # Open "Select folder" dialog | ||
700 | 291 | dialog = gtk.FileChooserDialog(_("Select image folder"), None, | ||
701 | 292 | gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER, | ||
702 | 293 | (gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL, gtk.STOCK_OPEN, | ||
703 | 294 | gtk.RESPONSE_OK), | ||
704 | 295 | None) | ||
705 | 296 | status = dialog.run() | ||
706 | 297 | # If folder was selected we add it to model and update config file | ||
707 | 298 | if(status == gtk.RESPONSE_OK): | ||
708 | 299 | self.add_to_model_and_config(dialog.get_current_folder(), model, | ||
709 | 300 | self.image_folders, "Images") | ||
710 | 301 | dialog.destroy() | ||
711 | 302 | |||
712 | 303 | def on_button_remove_images_clicked(self, widget): | ||
713 | 304 | """Remove currently selected folder from images folders""" | ||
714 | 305 | widget = self.widgets.get_widget("treeview_images") | ||
715 | 306 | model = widget.get_model() | ||
716 | 307 | selection = widget.get_selection().get_selected() | ||
717 | 308 | if selection[1] == None: | ||
718 | 309 | return | ||
719 | 310 | rm_folder = model.get_value(selection[1], 0) | ||
720 | 311 | self.image_folders.remove(rm_folder) | ||
721 | 312 | str_folders = ";".join(self.image_folders) | ||
722 | 313 | self.config.write_content_value("Images", "folders", str_folders) | ||
723 | 314 | model.remove(selection[1]) | ||
724 | 315 | |||
725 | 316 | def on_button_edit_images_clicked(self, widget): | ||
726 | 317 | """Edit currently selected music folder""" | ||
727 | 318 | widget = self.widgets.get_widget("treeview_images") | ||
728 | 319 | url_dialog = self.widgets.get_widget("url_dialog") | ||
729 | 320 | url_entry = self.widgets.get_widget("url_entry") | ||
730 | 321 | model = widget.get_model() | ||
731 | 322 | selection = widget.get_selection().get_selected() | ||
732 | 323 | if selection[1] == None: | ||
733 | 324 | return | ||
734 | 325 | folder = model.get_value(selection[1], 0) | ||
735 | 326 | url_entry.set_text(folder) | ||
736 | 327 | url_dialog.set_title(_("Edit URL")) | ||
737 | 328 | status = url_dialog.run() | ||
738 | 329 | if status == gtk.RESPONSE_OK and os.path.exists(self.url): | ||
739 | 330 | # Update list model | ||
740 | 331 | model.set_value(selection[1], 0, self.url) | ||
741 | 332 | # Update configure file | ||
742 | 333 | pos = self.image_folders.index(folder) | ||
743 | 334 | self.image_folders.remove(folder) | ||
744 | 335 | self.image_folders.insert(pos, self.url) | ||
745 | 336 | str_folders = ";".join(self.image_folders) | ||
746 | 337 | self.config.write_content_value("Images", "folders", | ||
747 | 338 | str_folders) | ||
748 | 339 | |||
749 | 340 | def on_hidden_files_folders_checkbox_toggled(self, widget): | ||
750 | 341 | """If True hidden files and folders will be added to image library.""" | ||
751 | 342 | self.config.write_content_value("Images", | ||
752 | 343 | "display_hidden_files_folders", widget.get_active()) | ||
753 | 344 | |||
754 | 345 | def on_button_add_feed_clicked(self, widget): | 224 | def on_button_add_feed_clicked(self, widget): |
755 | 346 | """Opens add feed dialog. """ | 225 | """Opens add feed dialog. """ |
756 | 347 | widget = self.widgets.get_widget("treeview_feeds") | 226 | widget = self.widgets.get_widget("treeview_feeds") |
757 | @@ -406,11 +285,11 @@ | |||
758 | 406 | widget.get_value_as_int()) | 285 | widget.get_value_as_int()) |
759 | 407 | 286 | ||
760 | 408 | def on_lyrics_checkbox_toggled(self, widget): | 287 | def on_lyrics_checkbox_toggled(self, widget): |
762 | 409 | self.config.write_content_value("Music", "download_lyrics", | 288 | self.config.write_content_value("Media", "download_lyrics", |
763 | 410 | widget.get_active()) | 289 | widget.get_active()) |
764 | 411 | 290 | ||
765 | 412 | def on_art_checkbox_toggled(self, widget): | 291 | def on_art_checkbox_toggled(self, widget): |
767 | 413 | self.config.write_content_value("Music", "download_album_art", | 292 | self.config.write_content_value("Media", "download_album_art", |
768 | 414 | widget.get_active()) | 293 | widget.get_active()) |
769 | 415 | 294 | ||
770 | 416 | def on_url_dialog_ok_button_clicked(self, widget): | 295 | def on_url_dialog_ok_button_clicked(self, widget): |
771 | @@ -555,9 +434,9 @@ | |||
772 | 555 | """ | 434 | """ |
773 | 556 | self.on_location_find_button_clicked(widget) | 435 | self.on_location_find_button_clicked(widget) |
774 | 557 | 436 | ||
776 | 558 | def on_button_video_rebuild_clicked(self, widget): | 437 | def on_button_media_rebuild_clicked(self, widget): |
777 | 559 | """ | 438 | """ |
779 | 560 | Rebuild video cache requested | 439 | Rebuild media cache requested |
780 | 561 | @param widget: GTK-Widget | 440 | @param widget: GTK-Widget |
781 | 562 | """ | 441 | """ |
782 | 563 | try: | 442 | try: |
783 | @@ -648,41 +527,25 @@ | |||
784 | 648 | """Read configuration and set dialog widget values with read values. | 527 | """Read configuration and set dialog widget values with read values. |
785 | 649 | """ | 528 | """ |
786 | 650 | # == Videos == | 529 | # == Videos == |
789 | 651 | videolist_widget = self.widgets.get_widget("treeview_videos") | 530 | medialist_widget = self.widgets.get_widget("treeview_media") |
790 | 652 | videostore = gtk.ListStore(str) | 531 | mediastore = gtk.ListStore(str) |
791 | 653 | 532 | ||
792 | 654 | cell_renderer = gtk.CellRendererText() | 533 | cell_renderer = gtk.CellRendererText() |
793 | 655 | column = gtk.TreeViewColumn(_("Folders"), cell_renderer, text=0) | 534 | column = gtk.TreeViewColumn(_("Folders"), cell_renderer, text=0) |
795 | 656 | videolist_widget.append_column(column) | 535 | medialist_widget.append_column(column) |
796 | 657 | 536 | ||
798 | 658 | self.video_folders = self.config.get_video_folders() | 537 | self.media_folders = self.config.get_media_folders() |
799 | 659 | 538 | ||
800 | 660 | # Fill model with folders read from config file | 539 | # Fill model with folders read from config file |
802 | 661 | self.init_model(videostore, self.video_folders) | 540 | self.init_model(mediastore, self.media_folders) |
803 | 662 | 541 | ||
805 | 663 | videolist_widget.set_model(videostore) | 542 | medialist_widget.set_model(mediastore) |
806 | 664 | 543 | ||
807 | 665 | # Checkboxes | 544 | # Checkboxes |
808 | 666 | metadata_checkbox = self.widgets.get_widget("video_metadata_checkbox") | 545 | metadata_checkbox = self.widgets.get_widget("video_metadata_checkbox") |
809 | 667 | md_val = self.config.download_video_metadata() | 546 | md_val = self.config.download_video_metadata() |
810 | 668 | metadata_checkbox.set_active(md_val) | 547 | metadata_checkbox.set_active(md_val) |
811 | 669 | 548 | ||
812 | 670 | # == Music == | ||
813 | 671 | musiclist_widget = self.widgets.get_widget("treeview_music") | ||
814 | 672 | music_model = gtk.ListStore(str) | ||
815 | 673 | |||
816 | 674 | music_cell = gtk.CellRendererText() | ||
817 | 675 | music_column = gtk.TreeViewColumn(_("Folders"), music_cell, text=0) | ||
818 | 676 | musiclist_widget.append_column(music_column) | ||
819 | 677 | |||
820 | 678 | self.music_folders = self.config.get_music_folders() | ||
821 | 679 | |||
822 | 680 | # Fill model with folders read from config file | ||
823 | 681 | self.init_model(music_model, self.music_folders) | ||
824 | 682 | |||
825 | 683 | musiclist_widget.set_model(music_model) | ||
826 | 684 | |||
827 | 685 | # Checkboxes | ||
828 | 686 | art_checkbox = self.widgets.get_widget("art_checkbox") | 549 | art_checkbox = self.widgets.get_widget("art_checkbox") |
829 | 687 | art_val = self.config.download_album_art() | 550 | art_val = self.config.download_album_art() |
830 | 688 | art_checkbox.set_active(art_val) | 551 | art_checkbox.set_active(art_val) |
831 | @@ -691,27 +554,6 @@ | |||
832 | 691 | lyrics_val = self.config.download_lyrics() | 554 | lyrics_val = self.config.download_lyrics() |
833 | 692 | lyrics_checkbox.set_active(lyrics_val) | 555 | lyrics_checkbox.set_active(lyrics_val) |
834 | 693 | 556 | ||
835 | 694 | # == Images == | ||
836 | 695 | imagelist_widget = self.widgets.get_widget("treeview_images") | ||
837 | 696 | images_model = gtk.ListStore(str) | ||
838 | 697 | |||
839 | 698 | img_cell = gtk.CellRendererText() | ||
840 | 699 | img_column = gtk.TreeViewColumn(_("Folders"), img_cell, text=0) | ||
841 | 700 | imagelist_widget.append_column(img_column) | ||
842 | 701 | |||
843 | 702 | self.image_folders = self.config.get_image_folders() | ||
844 | 703 | |||
845 | 704 | # Fill model with folders read from config file | ||
846 | 705 | self.init_model(images_model, self.image_folders) | ||
847 | 706 | |||
848 | 707 | imagelist_widget.set_model(images_model) | ||
849 | 708 | |||
850 | 709 | # Checkboxes | ||
851 | 710 | hidden_checkbox = self.widgets.get_widget( | ||
852 | 711 | "hidden_files_folders_checkbox") | ||
853 | 712 | hidden_val = self.config.display_hidden_files_folders() | ||
854 | 713 | hidden_checkbox.set_active(hidden_val) | ||
855 | 714 | |||
856 | 715 | # == RSS-feeds == | 557 | # == RSS-feeds == |
857 | 716 | feedlist_widget = self.widgets.get_widget("treeview_feeds") | 558 | feedlist_widget = self.widgets.get_widget("treeview_feeds") |
858 | 717 | feed_model = gtk.ListStore(str) | 559 | feed_model = gtk.ListStore(str) |
859 | @@ -1230,28 +1072,28 @@ | |||
860 | 1230 | comment = self.widgets.get_widget("comment_label") | 1072 | comment = self.widgets.get_widget("comment_label") |
861 | 1231 | comment.set_text(theme.getComment()) | 1073 | comment.set_text(theme.getComment()) |
862 | 1232 | 1074 | ||
864 | 1233 | self.config.write_preference_value("General", "theme", name.get_text()) | 1075 | self.config.write_content_value("General", "theme", name.get_text()) |
865 | 1234 | 1076 | ||
866 | 1235 | def on_checkbutton_autostart_toggled(self, widget): | 1077 | def on_checkbutton_autostart_toggled(self, widget): |
867 | 1236 | """Server Autostart checkbox toggled""" | 1078 | """Server Autostart checkbox toggled""" |
869 | 1237 | self.config.write_preference_value("General", "start_server_auto", | 1079 | self.config.write_content_value("General", "start_server_auto", |
870 | 1238 | widget.get_active()) | 1080 | widget.get_active()) |
871 | 1239 | 1081 | ||
872 | 1240 | def on_checkbutton_fullscreen_toggled(self, widget): | 1082 | def on_checkbutton_fullscreen_toggled(self, widget): |
873 | 1241 | """Start in fullscreen checkbox toggled""" | 1083 | """Start in fullscreen checkbox toggled""" |
875 | 1242 | self.config.write_preference_value("General", "start_in_fullscreen", | 1084 | self.config.write_content_value("General", "start_in_fullscreen", |
876 | 1243 | widget.get_active()) | 1085 | widget.get_active()) |
877 | 1244 | 1086 | ||
878 | 1245 | def on_checkbutton_systray_icon_toggled(self, widget): | 1087 | def on_checkbutton_systray_icon_toggled(self, widget): |
879 | 1246 | """System Tray Icon checkbox toggled""" | 1088 | """System Tray Icon checkbox toggled""" |
881 | 1247 | self.config.write_preference_value("General", "display_icon", | 1089 | self.config.write_content_value("General", "display_icon", |
882 | 1248 | widget.get_active()) | 1090 | widget.get_active()) |
883 | 1249 | 1091 | ||
884 | 1250 | def on_effect_checkbox_toggled(self, widget): | 1092 | def on_effect_checkbox_toggled(self, widget): |
885 | 1251 | """Effect checkbox toggled""" | 1093 | """Effect checkbox toggled""" |
886 | 1252 | combobox = self.widgets.get_widget("effect_combobox") | 1094 | combobox = self.widgets.get_widget("effect_combobox") |
887 | 1253 | combobox.set_sensitive(widget.get_active()) | 1095 | combobox.set_sensitive(widget.get_active()) |
889 | 1254 | self.config.write_preference_value("General", "show_effects", | 1096 | self.config.write_content_value("General", "show_effects", |
890 | 1255 | widget.get_active()) | 1097 | widget.get_active()) |
891 | 1256 | 1098 | ||
892 | 1257 | def on_effect_combobox_changed(self, widget): | 1099 | def on_effect_combobox_changed(self, widget): |
893 | @@ -1265,12 +1107,12 @@ | |||
894 | 1265 | english_text = "Zoom and fade" | 1107 | english_text = "Zoom and fade" |
895 | 1266 | if text == _("Slide"): | 1108 | if text == _("Slide"): |
896 | 1267 | english_text = "Slide" | 1109 | english_text = "Slide" |
898 | 1268 | self.config.write_preference_value("General", "transition_effect", | 1110 | self.config.write_content_value("General", "transition_effect", |
899 | 1269 | english_text) | 1111 | english_text) |
900 | 1270 | 1112 | ||
901 | 1271 | def on_spinbutton_slideshow_step_value_changed(self, widget): | 1113 | def on_spinbutton_slideshow_step_value_changed(self, widget): |
902 | 1272 | """Activation of slideshow effects""" | 1114 | """Activation of slideshow effects""" |
904 | 1273 | self.config.write_preference_value("Photographs", "slideshow_step", | 1115 | self.config.write_content_value("Photographs", "slideshow_step", |
905 | 1274 | int(widget.get_value())) | 1116 | int(widget.get_value())) |
906 | 1275 | 1117 | ||
907 | 1276 | def on_dialog_closed(self, widget, after): | 1118 | def on_dialog_closed(self, widget, after): |
908 | 1277 | 1119 | ||
909 | === modified file 'entertainerlib/glade/entertainer-content-management.glade' | |||
910 | --- entertainerlib/glade/entertainer-content-management.glade 2009-05-31 16:36:18 +0000 | |||
911 | +++ entertainerlib/glade/entertainer-content-management.glade 2009-07-11 21:39:40 +0000 | |||
912 | @@ -1,1481 +1,1646 @@ | |||
914 | 1 | <?xml version="1.0"?> | 1 | <?xml version="1.0" standalone="no"?> <!--*- mode: xml -*--> |
915 | 2 | <!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd"> | ||
916 | 3 | |||
917 | 2 | <glade-interface> | 4 | <glade-interface> |
1998 | 3 | <!-- interface-requires gtk+ 2.16 --> | 5 | |
1999 | 4 | <!-- interface-naming-policy toplevel-contextual --> | 6 | <widget class="GtkDialog" id="ContentManagementDialog"> |
2000 | 5 | <widget class="GtkDialog" id="ContentManagementDialog"> | 7 | <property name="border_width">5</property> |
2001 | 6 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> | 8 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
2002 | 7 | <property name="border_width">5</property> | 9 | <property name="title" translatable="yes">Content management</property> |
2003 | 8 | <property name="title" translatable="yes">Content management</property> | 10 | <property name="type">GTK_WINDOW_TOPLEVEL</property> |
2004 | 9 | <property name="modal">True</property> | 11 | <property name="window_position">GTK_WIN_POS_NONE</property> |
2005 | 10 | <property name="window_position">center</property> | 12 | <property name="modal">True</property> |
2006 | 11 | <property name="icon_name">applications-multimedia</property> | 13 | <property name="resizable">True</property> |
2007 | 12 | <property name="type_hint">dialog</property> | 14 | <property name="destroy_with_parent">False</property> |
2008 | 13 | <property name="has_separator">False</property> | 15 | <property name="icon_name">applications-multimedia</property> |
2009 | 14 | <signal name="destroy" handler="on_ContentManagementDialog_destroy"/> | 16 | <property name="decorated">True</property> |
2010 | 15 | <child internal-child="vbox"> | 17 | <property name="skip_taskbar_hint">False</property> |
2011 | 16 | <widget class="GtkVBox" id="dialog-layout"> | 18 | <property name="skip_pager_hint">False</property> |
2012 | 17 | <property name="visible">True</property> | 19 | <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property> |
2013 | 18 | <property name="spacing">2</property> | 20 | <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> |
2014 | 19 | <child> | 21 | <property name="focus_on_map">True</property> |
2015 | 20 | <widget class="GtkNotebook" id="tabs"> | 22 | <property name="urgency_hint">False</property> |
2016 | 21 | <property name="visible">True</property> | 23 | <property name="has_separator">False</property> |
2017 | 22 | <property name="can_focus">True</property> | 24 | <signal name="destroy" handler="on_ContentManagementDialog_destroy"/> |
2018 | 23 | <property name="has_focus">True</property> | 25 | |
2019 | 24 | <property name="can_default">True</property> | 26 | <child internal-child="vbox"> |
2020 | 25 | <property name="has_default">True</property> | 27 | <widget class="GtkVBox" id="dialog-layout"> |
2021 | 26 | <child> | 28 | <property name="visible">True</property> |
2022 | 27 | <widget class="GtkVBox" id="vbox_videos"> | 29 | <property name="homogeneous">False</property> |
2023 | 28 | <property name="visible">True</property> | 30 | <property name="spacing">2</property> |
2024 | 29 | <child> | 31 | |
2025 | 30 | <widget class="GtkVBox" id="vbox1"> | 32 | <child internal-child="action_area"> |
2026 | 31 | <property name="visible">True</property> | 33 | <widget class="GtkHButtonBox" id="dialog-closebutton-area"> |
2027 | 32 | <child> | 34 | <property name="visible">True</property> |
2028 | 33 | <widget class="GtkFrame" id="frame_video_lib1"> | 35 | <property name="layout_style">GTK_BUTTONBOX_END</property> |
2029 | 34 | <property name="visible">True</property> | 36 | |
2030 | 35 | <property name="border_width">5</property> | 37 | <child> |
2031 | 36 | <property name="label_xalign">0</property> | 38 | <widget class="GtkButton" id="close_button"> |
2032 | 37 | <property name="shadow_type">none</property> | 39 | <property name="visible">True</property> |
2033 | 38 | <child> | 40 | <property name="can_focus">True</property> |
2034 | 39 | <widget class="GtkAlignment" id="alignment1"> | 41 | <property name="label">gtk-close</property> |
2035 | 40 | <property name="visible">True</property> | 42 | <property name="use_stock">True</property> |
2036 | 41 | <property name="left_padding">12</property> | 43 | <property name="relief">GTK_RELIEF_NORMAL</property> |
2037 | 42 | <child> | 44 | <property name="focus_on_click">True</property> |
2038 | 43 | <widget class="GtkVBox" id="vbox2"> | 45 | <property name="response_id">0</property> |
2039 | 44 | <property name="visible">True</property> | 46 | <signal name="clicked" handler="on_close_button_clicked"/> |
2040 | 45 | <child> | 47 | </widget> |
2041 | 46 | <widget class="GtkLabel" id="label_video_folder_tip1"> | 48 | </child> |
2042 | 47 | <property name="visible">True</property> | 49 | </widget> |
2043 | 48 | <property name="xalign">0</property> | 50 | <packing> |
2044 | 49 | <property name="label" translatable="yes">Entertainer video library scans data from the listed folders.</property> | 51 | <property name="padding">0</property> |
2045 | 50 | <property name="single_line_mode">True</property> | 52 | <property name="expand">False</property> |
2046 | 51 | </widget> | 53 | <property name="fill">True</property> |
2047 | 52 | <packing> | 54 | <property name="pack_type">GTK_PACK_END</property> |
2048 | 53 | <property name="expand">False</property> | 55 | </packing> |
2049 | 54 | <property name="padding">5</property> | 56 | </child> |
2050 | 55 | <property name="position">0</property> | 57 | |
2051 | 56 | </packing> | 58 | <child> |
2052 | 57 | </child> | 59 | <widget class="GtkNotebook" id="tabs"> |
2053 | 58 | <child> | 60 | <property name="visible">True</property> |
2054 | 59 | <widget class="GtkHBox" id="hbox2"> | 61 | <property name="can_default">True</property> |
2055 | 60 | <property name="visible">True</property> | 62 | <property name="has_default">True</property> |
2056 | 61 | <child> | 63 | <property name="can_focus">True</property> |
2057 | 62 | <widget class="GtkScrolledWindow" id="scrolledwindow1"> | 64 | <property name="has_focus">True</property> |
2058 | 63 | <property name="visible">True</property> | 65 | <property name="show_tabs">True</property> |
2059 | 64 | <property name="can_focus">True</property> | 66 | <property name="show_border">True</property> |
2060 | 65 | <property name="hscrollbar_policy">automatic</property> | 67 | <property name="tab_pos">GTK_POS_TOP</property> |
2061 | 66 | <property name="vscrollbar_policy">automatic</property> | 68 | <property name="scrollable">False</property> |
2062 | 67 | <property name="shadow_type">in</property> | 69 | <property name="enable_popup">False</property> |
2063 | 68 | <child> | 70 | |
2064 | 69 | <widget class="GtkTreeView" id="treeview_videos"> | 71 | <child> |
2065 | 70 | <property name="visible">True</property> | 72 | <widget class="GtkVBox" id="vbox_videos"> |
2066 | 71 | <property name="can_focus">True</property> | 73 | <property name="visible">True</property> |
2067 | 72 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> | 74 | <property name="homogeneous">False</property> |
2068 | 73 | <property name="enable_search">False</property> | 75 | <property name="spacing">0</property> |
2069 | 74 | </widget> | 76 | |
2070 | 75 | </child> | 77 | <child> |
2071 | 76 | </widget> | 78 | <widget class="GtkVBox" id="vbox1"> |
2072 | 77 | <packing> | 79 | <property name="visible">True</property> |
2073 | 78 | <property name="position">0</property> | 80 | <property name="homogeneous">False</property> |
2074 | 79 | </packing> | 81 | <property name="spacing">0</property> |
2075 | 80 | </child> | 82 | |
2076 | 81 | <child> | 83 | <child> |
2077 | 82 | <widget class="GtkVButtonBox" id="vbuttonbox1"> | 84 | <widget class="GtkFrame" id="frame_video_lib1"> |
2078 | 83 | <property name="visible">True</property> | 85 | <property name="border_width">5</property> |
2079 | 84 | <property name="spacing">5</property> | 86 | <property name="visible">True</property> |
2080 | 85 | <property name="layout_style">start</property> | 87 | <property name="label_xalign">0</property> |
2081 | 86 | <child> | 88 | <property name="label_yalign">0.5</property> |
2082 | 87 | <widget class="GtkButton" id="button_add_videos"> | 89 | <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property> |
2083 | 88 | <property name="label">gtk-add</property> | 90 | |
2084 | 89 | <property name="visible">True</property> | 91 | <child> |
2085 | 90 | <property name="can_focus">True</property> | 92 | <widget class="GtkAlignment" id="alignment1"> |
2086 | 91 | <property name="has_focus">True</property> | 93 | <property name="visible">True</property> |
2087 | 92 | <property name="can_default">True</property> | 94 | <property name="xalign">0.5</property> |
2088 | 93 | <property name="has_default">True</property> | 95 | <property name="yalign">0.5</property> |
2089 | 94 | <property name="receives_default">False</property> | 96 | <property name="xscale">1</property> |
2090 | 95 | <property name="use_stock">True</property> | 97 | <property name="yscale">1</property> |
2091 | 96 | <signal name="clicked" handler="on_button_add_videos_clicked"/> | 98 | <property name="top_padding">0</property> |
2092 | 97 | </widget> | 99 | <property name="bottom_padding">0</property> |
2093 | 98 | <packing> | 100 | <property name="left_padding">12</property> |
2094 | 99 | <property name="expand">False</property> | 101 | <property name="right_padding">0</property> |
2095 | 100 | <property name="fill">False</property> | 102 | |
2096 | 101 | <property name="position">0</property> | 103 | <child> |
2097 | 102 | </packing> | 104 | <widget class="GtkVBox" id="vbox2"> |
2098 | 103 | </child> | 105 | <property name="visible">True</property> |
2099 | 104 | <child> | 106 | <property name="homogeneous">False</property> |
2100 | 105 | <widget class="GtkButton" id="button_remove_videos"> | 107 | <property name="spacing">0</property> |
2101 | 106 | <property name="label">gtk-remove</property> | 108 | |
2102 | 107 | <property name="visible">True</property> | 109 | <child> |
2103 | 108 | <property name="can_focus">True</property> | 110 | <widget class="GtkLabel" id="label_media_folder_tip1"> |
2104 | 109 | <property name="receives_default">False</property> | 111 | <property name="visible">True</property> |
2105 | 110 | <property name="use_stock">True</property> | 112 | <property name="label" translatable="yes">Entertainer will catalog the media in the folders below.</property> |
2106 | 111 | <signal name="clicked" handler="on_button_remove_videos_clicked"/> | 113 | <property name="use_underline">False</property> |
2107 | 112 | </widget> | 114 | <property name="use_markup">False</property> |
2108 | 113 | <packing> | 115 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
2109 | 114 | <property name="expand">False</property> | 116 | <property name="wrap">True</property> |
2110 | 115 | <property name="fill">False</property> | 117 | <property name="selectable">False</property> |
2111 | 116 | <property name="position">1</property> | 118 | <property name="xalign">0</property> |
2112 | 117 | </packing> | 119 | <property name="yalign">0</property> |
2113 | 118 | </child> | 120 | <property name="xpad">0</property> |
2114 | 119 | <child> | 121 | <property name="ypad">0</property> |
2115 | 120 | <widget class="GtkButton" id="button_edit_videos"> | 122 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2116 | 121 | <property name="label">gtk-edit</property> | 123 | <property name="width_chars">-1</property> |
2117 | 122 | <property name="visible">True</property> | 124 | <property name="single_line_mode">True</property> |
2118 | 123 | <property name="can_focus">True</property> | 125 | <property name="angle">0</property> |
2119 | 124 | <property name="receives_default">False</property> | 126 | </widget> |
2120 | 125 | <property name="use_stock">True</property> | 127 | <packing> |
2121 | 126 | <signal name="clicked" handler="on_button_edit_videos_clicked"/> | 128 | <property name="padding">5</property> |
2122 | 127 | </widget> | 129 | <property name="expand">False</property> |
2123 | 128 | <packing> | 130 | <property name="fill">True</property> |
2124 | 129 | <property name="expand">False</property> | 131 | </packing> |
2125 | 130 | <property name="fill">False</property> | 132 | </child> |
2126 | 131 | <property name="position">2</property> | 133 | |
2127 | 132 | </packing> | 134 | <child> |
2128 | 133 | </child> | 135 | <widget class="GtkHBox" id="hbox2"> |
2129 | 134 | </widget> | 136 | <property name="visible">True</property> |
2130 | 135 | <packing> | 137 | <property name="homogeneous">False</property> |
2131 | 136 | <property name="expand">False</property> | 138 | <property name="spacing">0</property> |
2132 | 137 | <property name="padding">5</property> | 139 | |
2133 | 138 | <property name="position">1</property> | 140 | <child> |
2134 | 139 | </packing> | 141 | <widget class="GtkScrolledWindow" id="scrolledwindow1"> |
2135 | 140 | </child> | 142 | <property name="visible">True</property> |
2136 | 141 | </widget> | 143 | <property name="can_focus">True</property> |
2137 | 142 | <packing> | 144 | <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> |
2138 | 143 | <property name="position">1</property> | 145 | <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> |
2139 | 144 | </packing> | 146 | <property name="shadow_type">GTK_SHADOW_NONE</property> |
2140 | 145 | </child> | 147 | <property name="window_placement">GTK_CORNER_TOP_LEFT</property> |
2141 | 146 | </widget> | 148 | |
2142 | 147 | </child> | 149 | <child> |
2143 | 148 | </widget> | 150 | <widget class="GtkTreeView" id="treeview_media"> |
2144 | 149 | </child> | 151 | <property name="visible">True</property> |
2145 | 150 | <child> | 152 | <property name="can_focus">True</property> |
2146 | 151 | <widget class="GtkLabel" id="label_video_library1"> | 153 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
2147 | 152 | <property name="visible">True</property> | 154 | <property name="headers_visible">True</property> |
2148 | 153 | <property name="label" translatable="yes"><b>Video library</b></property> | 155 | <property name="rules_hint">False</property> |
2149 | 154 | <property name="use_markup">True</property> | 156 | <property name="reorderable">False</property> |
2150 | 155 | </widget> | 157 | <property name="enable_search">False</property> |
2151 | 156 | <packing> | 158 | <property name="fixed_height_mode">False</property> |
2152 | 157 | <property name="type">label_item</property> | 159 | <property name="hover_selection">False</property> |
2153 | 158 | </packing> | 160 | <property name="hover_expand">False</property> |
2154 | 159 | </child> | 161 | </widget> |
2155 | 160 | </widget> | 162 | </child> |
2156 | 161 | <packing> | 163 | </widget> |
2157 | 162 | <property name="position">0</property> | 164 | <packing> |
2158 | 163 | </packing> | 165 | <property name="padding">0</property> |
2159 | 164 | </child> | 166 | <property name="expand">True</property> |
2160 | 165 | <child> | 167 | <property name="fill">True</property> |
2161 | 166 | <widget class="GtkFrame" id="frame1"> | 168 | </packing> |
2162 | 167 | <property name="visible">True</property> | 169 | </child> |
2163 | 168 | <property name="label_xalign">0</property> | 170 | |
2164 | 169 | <property name="shadow_type">none</property> | 171 | <child> |
2165 | 170 | <child> | 172 | <widget class="GtkVButtonBox" id="vbuttonbox1"> |
2166 | 171 | <widget class="GtkAlignment" id="alignment2"> | 173 | <property name="visible">True</property> |
2167 | 172 | <property name="visible">True</property> | 174 | <property name="layout_style">GTK_BUTTONBOX_DEFAULT_STYLE</property> |
2168 | 173 | <property name="left_padding">12</property> | 175 | <property name="spacing">5</property> |
2169 | 174 | <child> | 176 | |
2170 | 175 | <widget class="GtkCheckButton" id="video_metadata_checkbox"> | 177 | <child> |
2171 | 176 | <property name="label" translatable="yes">Download movie and TV-series metadata</property> | 178 | <widget class="GtkButton" id="button_add_folder"> |
2172 | 177 | <property name="visible">True</property> | 179 | <property name="visible">True</property> |
2173 | 178 | <property name="can_focus">True</property> | 180 | <property name="can_default">True</property> |
2174 | 179 | <property name="receives_default">False</property> | 181 | <property name="has_default">True</property> |
2175 | 180 | <property name="use_underline">True</property> | 182 | <property name="can_focus">True</property> |
2176 | 181 | <property name="draw_indicator">True</property> | 183 | <property name="has_focus">True</property> |
2177 | 182 | <signal name="toggled" handler="on_checkbutton_video_metadata_toggled"/> | 184 | <property name="label">gtk-add</property> |
2178 | 183 | </widget> | 185 | <property name="use_stock">True</property> |
2179 | 184 | </child> | 186 | <property name="relief">GTK_RELIEF_NORMAL</property> |
2180 | 185 | </widget> | 187 | <property name="focus_on_click">True</property> |
2181 | 186 | </child> | 188 | <signal name="clicked" handler="on_button_add_media_clicked" last_modification_time="Sat, 11 Jul 2009 19:03:28 GMT"/> |
2182 | 187 | <child> | 189 | </widget> |
2183 | 188 | <widget class="GtkLabel" id="label2"> | 190 | </child> |
2184 | 189 | <property name="visible">True</property> | 191 | |
2185 | 190 | <property name="label" translatable="yes"><b>Video library settings</b></property> | 192 | <child> |
2186 | 191 | <property name="use_markup">True</property> | 193 | <widget class="GtkButton" id="button_remove_folder"> |
2187 | 192 | </widget> | 194 | <property name="visible">True</property> |
2188 | 193 | <packing> | 195 | <property name="can_focus">True</property> |
2189 | 194 | <property name="type">label_item</property> | 196 | <property name="label">gtk-remove</property> |
2190 | 195 | </packing> | 197 | <property name="use_stock">True</property> |
2191 | 196 | </child> | 198 | <property name="relief">GTK_RELIEF_NORMAL</property> |
2192 | 197 | </widget> | 199 | <property name="focus_on_click">True</property> |
2193 | 198 | <packing> | 200 | <signal name="clicked" handler="on_button_remove_media_clicked" last_modification_time="Sat, 11 Jul 2009 19:03:39 GMT"/> |
2194 | 199 | <property name="position">1</property> | 201 | </widget> |
2195 | 200 | </packing> | 202 | </child> |
2196 | 201 | </child> | 203 | |
2197 | 202 | </widget> | 204 | <child> |
2198 | 203 | <packing> | 205 | <widget class="GtkButton" id="button_edit_folder"> |
2199 | 204 | <property name="position">0</property> | 206 | <property name="visible">True</property> |
2200 | 205 | </packing> | 207 | <property name="can_focus">True</property> |
2201 | 206 | </child> | 208 | <property name="label">gtk-edit</property> |
2202 | 207 | </widget> | 209 | <property name="use_stock">True</property> |
2203 | 208 | </child> | 210 | <property name="relief">GTK_RELIEF_NORMAL</property> |
2204 | 209 | <child> | 211 | <property name="focus_on_click">True</property> |
2205 | 210 | <widget class="GtkLabel" id="label_video3"> | 212 | <signal name="clicked" handler="on_button_edit_media_clicked" last_modification_time="Sat, 11 Jul 2009 19:03:49 GMT"/> |
2206 | 211 | <property name="visible">True</property> | 213 | </widget> |
2207 | 212 | <property name="can_focus">True</property> | 214 | </child> |
2208 | 213 | <property name="has_focus">True</property> | 215 | </widget> |
2209 | 214 | <property name="has_default">True</property> | 216 | <packing> |
2210 | 215 | <property name="label" translatable="yes">Videos</property> | 217 | <property name="padding">5</property> |
2211 | 216 | </widget> | 218 | <property name="expand">False</property> |
2212 | 217 | <packing> | 219 | <property name="fill">True</property> |
2213 | 218 | <property name="tab_fill">False</property> | 220 | </packing> |
2214 | 219 | <property name="type">tab</property> | 221 | </child> |
2215 | 220 | </packing> | 222 | </widget> |
2216 | 221 | </child> | 223 | <packing> |
2217 | 222 | <child> | 224 | <property name="padding">0</property> |
2218 | 223 | <widget class="GtkVBox" id="vbox_music"> | 225 | <property name="expand">True</property> |
2219 | 224 | <property name="visible">True</property> | 226 | <property name="fill">True</property> |
2220 | 225 | <child> | 227 | </packing> |
2221 | 226 | <widget class="GtkFrame" id="frame_music_folders3"> | 228 | </child> |
2222 | 227 | <property name="visible">True</property> | 229 | </widget> |
2223 | 228 | <property name="border_width">5</property> | 230 | </child> |
2224 | 229 | <property name="label_xalign">0</property> | 231 | </widget> |
2225 | 230 | <property name="shadow_type">none</property> | 232 | </child> |
2226 | 231 | <child> | 233 | |
2227 | 232 | <widget class="GtkAlignment" id="alignment9"> | 234 | <child> |
2228 | 233 | <property name="visible">True</property> | 235 | <widget class="GtkLabel" id="label_media_library"> |
2229 | 234 | <property name="left_padding">12</property> | 236 | <property name="visible">True</property> |
2230 | 235 | <child> | 237 | <property name="label" translatable="yes"><b>Media Library</b></property> |
2231 | 236 | <widget class="GtkVBox" id="vbox12"> | 238 | <property name="use_underline">False</property> |
2232 | 237 | <property name="visible">True</property> | 239 | <property name="use_markup">True</property> |
2233 | 238 | <child> | 240 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
2234 | 239 | <widget class="GtkLabel" id="label8"> | 241 | <property name="wrap">False</property> |
2235 | 240 | <property name="visible">True</property> | 242 | <property name="selectable">False</property> |
2236 | 241 | <property name="xalign">0</property> | 243 | <property name="xalign">0.5</property> |
2237 | 242 | <property name="label" translatable="yes">Entertainer music library scans data from the listed folders.</property> | 244 | <property name="yalign">0.5</property> |
2238 | 243 | </widget> | 245 | <property name="xpad">0</property> |
2239 | 244 | <packing> | 246 | <property name="ypad">0</property> |
2240 | 245 | <property name="expand">False</property> | 247 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2241 | 246 | <property name="padding">5</property> | 248 | <property name="width_chars">-1</property> |
2242 | 247 | <property name="position">0</property> | 249 | <property name="single_line_mode">False</property> |
2243 | 248 | </packing> | 250 | <property name="angle">0</property> |
2244 | 249 | </child> | 251 | </widget> |
2245 | 250 | <child> | 252 | <packing> |
2246 | 251 | <widget class="GtkHBox" id="hbox12"> | 253 | <property name="type">label_item</property> |
2247 | 252 | <property name="visible">True</property> | 254 | </packing> |
2248 | 253 | <child> | 255 | </child> |
2249 | 254 | <widget class="GtkScrolledWindow" id="scrolledwindow5"> | 256 | </widget> |
2250 | 255 | <property name="visible">True</property> | 257 | <packing> |
2251 | 256 | <property name="can_focus">True</property> | 258 | <property name="padding">0</property> |
2252 | 257 | <property name="hscrollbar_policy">automatic</property> | 259 | <property name="expand">True</property> |
2253 | 258 | <property name="vscrollbar_policy">automatic</property> | 260 | <property name="fill">True</property> |
2254 | 259 | <property name="shadow_type">in</property> | 261 | </packing> |
2255 | 260 | <child> | 262 | </child> |
2256 | 261 | <widget class="GtkTreeView" id="treeview_music"> | 263 | |
2257 | 262 | <property name="visible">True</property> | 264 | <child> |
2258 | 263 | <property name="can_focus">True</property> | 265 | <widget class="GtkHBox" id="hbox20"> |
2259 | 264 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> | 266 | <property name="visible">True</property> |
2260 | 265 | <property name="enable_search">False</property> | 267 | <property name="homogeneous">False</property> |
2261 | 266 | </widget> | 268 | <property name="spacing">0</property> |
2262 | 267 | </child> | 269 | |
2263 | 268 | </widget> | 270 | <child> |
2264 | 269 | <packing> | 271 | <widget class="GtkVBox" id="vbox23"> |
2265 | 270 | <property name="position">0</property> | 272 | <property name="visible">True</property> |
2266 | 271 | </packing> | 273 | <property name="homogeneous">False</property> |
2267 | 272 | </child> | 274 | <property name="spacing">0</property> |
2268 | 273 | <child> | 275 | |
2269 | 274 | <widget class="GtkVButtonBox" id="vbuttonbox6"> | 276 | <child> |
2270 | 275 | <property name="visible">True</property> | 277 | <widget class="GtkCheckButton" id="video_metadata_checkbox"> |
2271 | 276 | <property name="spacing">5</property> | 278 | <property name="visible">True</property> |
2272 | 277 | <property name="layout_style">start</property> | 279 | <property name="can_focus">True</property> |
2273 | 278 | <child> | 280 | <property name="label" translatable="yes">Download movie and TV-series metadata</property> |
2274 | 279 | <widget class="GtkButton" id="button_add_music"> | 281 | <property name="use_underline">True</property> |
2275 | 280 | <property name="label">gtk-add</property> | 282 | <property name="relief">GTK_RELIEF_NORMAL</property> |
2276 | 281 | <property name="visible">True</property> | 283 | <property name="focus_on_click">True</property> |
2277 | 282 | <property name="can_focus">True</property> | 284 | <property name="active">False</property> |
2278 | 283 | <property name="receives_default">False</property> | 285 | <property name="inconsistent">False</property> |
2279 | 284 | <property name="use_stock">True</property> | 286 | <property name="draw_indicator">True</property> |
2280 | 285 | <signal name="clicked" handler="on_button_add_music_clicked"/> | 287 | <signal name="toggled" handler="on_checkbutton_video_metadata_toggled" last_modification_time="Sat, 11 Jul 2009 19:09:32 GMT"/> |
2281 | 286 | </widget> | 288 | </widget> |
2282 | 287 | <packing> | 289 | <packing> |
2283 | 288 | <property name="expand">False</property> | 290 | <property name="padding">1</property> |
2284 | 289 | <property name="fill">False</property> | 291 | <property name="expand">False</property> |
2285 | 290 | <property name="position">0</property> | 292 | <property name="fill">False</property> |
2286 | 291 | </packing> | 293 | </packing> |
2287 | 292 | </child> | 294 | </child> |
2288 | 293 | <child> | 295 | |
2289 | 294 | <widget class="GtkButton" id="button_remove_music"> | 296 | <child> |
2290 | 295 | <property name="label">gtk-remove</property> | 297 | <widget class="GtkCheckButton" id="art_checkbox"> |
2291 | 296 | <property name="visible">True</property> | 298 | <property name="visible">True</property> |
2292 | 297 | <property name="can_focus">True</property> | 299 | <property name="can_focus">True</property> |
2293 | 298 | <property name="receives_default">False</property> | 300 | <property name="label" translatable="yes">Download album cover art</property> |
2294 | 299 | <property name="use_stock">True</property> | 301 | <property name="use_underline">True</property> |
2295 | 300 | <signal name="clicked" handler="on_button_remove_music_clicked"/> | 302 | <property name="relief">GTK_RELIEF_NORMAL</property> |
2296 | 301 | </widget> | 303 | <property name="focus_on_click">True</property> |
2297 | 302 | <packing> | 304 | <property name="active">False</property> |
2298 | 303 | <property name="expand">False</property> | 305 | <property name="inconsistent">False</property> |
2299 | 304 | <property name="fill">False</property> | 306 | <property name="draw_indicator">True</property> |
2300 | 305 | <property name="position">1</property> | 307 | <signal name="toggled" handler="on_art_checkbox_toggled"/> |
2301 | 306 | </packing> | 308 | </widget> |
2302 | 307 | </child> | 309 | <packing> |
2303 | 308 | <child> | 310 | <property name="padding">1</property> |
2304 | 309 | <widget class="GtkButton" id="button_edit_music"> | 311 | <property name="expand">False</property> |
2305 | 310 | <property name="label">gtk-edit</property> | 312 | <property name="fill">False</property> |
2306 | 311 | <property name="visible">True</property> | 313 | </packing> |
2307 | 312 | <property name="can_focus">True</property> | 314 | </child> |
2308 | 313 | <property name="receives_default">False</property> | 315 | |
2309 | 314 | <property name="use_stock">True</property> | 316 | <child> |
2310 | 315 | <signal name="clicked" handler="on_button_edit_music_clicked"/> | 317 | <widget class="GtkCheckButton" id="lyrics_checkbox"> |
2311 | 316 | </widget> | 318 | <property name="visible">True</property> |
2312 | 317 | <packing> | 319 | <property name="can_focus">True</property> |
2313 | 318 | <property name="expand">False</property> | 320 | <property name="label" translatable="yes">Download song lyrics</property> |
2314 | 319 | <property name="fill">False</property> | 321 | <property name="use_underline">True</property> |
2315 | 320 | <property name="position">2</property> | 322 | <property name="relief">GTK_RELIEF_NORMAL</property> |
2316 | 321 | </packing> | 323 | <property name="focus_on_click">True</property> |
2317 | 322 | </child> | 324 | <property name="active">False</property> |
2318 | 323 | </widget> | 325 | <property name="inconsistent">False</property> |
2319 | 324 | <packing> | 326 | <property name="draw_indicator">True</property> |
2320 | 325 | <property name="expand">False</property> | 327 | <signal name="toggled" handler="on_lyrics_checkbox_toggled"/> |
2321 | 326 | <property name="padding">5</property> | 328 | </widget> |
2322 | 327 | <property name="position">1</property> | 329 | <packing> |
2323 | 328 | </packing> | 330 | <property name="padding">1</property> |
2324 | 329 | </child> | 331 | <property name="expand">False</property> |
2325 | 330 | </widget> | 332 | <property name="fill">False</property> |
2326 | 331 | <packing> | 333 | </packing> |
2327 | 332 | <property name="position">1</property> | 334 | </child> |
2328 | 333 | </packing> | 335 | </widget> |
2329 | 334 | </child> | 336 | <packing> |
2330 | 335 | </widget> | 337 | <property name="padding">15</property> |
2331 | 336 | </child> | 338 | <property name="expand">True</property> |
2332 | 337 | </widget> | 339 | <property name="fill">True</property> |
2333 | 338 | </child> | 340 | </packing> |
2334 | 339 | <child> | 341 | </child> |
2335 | 340 | <widget class="GtkLabel" id="label_music_folders3"> | 342 | </widget> |
2336 | 341 | <property name="visible">True</property> | 343 | <packing> |
2337 | 342 | <property name="label" translatable="yes"><b>Music library</b></property> | 344 | <property name="padding">10</property> |
2338 | 343 | <property name="use_markup">True</property> | 345 | <property name="expand">True</property> |
2339 | 344 | </widget> | 346 | <property name="fill">True</property> |
2340 | 345 | <packing> | 347 | </packing> |
2341 | 346 | <property name="type">label_item</property> | 348 | </child> |
2342 | 347 | </packing> | 349 | </widget> |
2343 | 348 | </child> | 350 | <packing> |
2344 | 349 | </widget> | 351 | <property name="padding">0</property> |
2345 | 350 | <packing> | 352 | <property name="expand">True</property> |
2346 | 351 | <property name="position">0</property> | 353 | <property name="fill">True</property> |
2347 | 352 | </packing> | 354 | </packing> |
2348 | 353 | </child> | 355 | </child> |
2349 | 354 | <child> | 356 | </widget> |
2350 | 355 | <widget class="GtkFrame" id="frame_music_lib_settings3"> | 357 | <packing> |
2351 | 356 | <property name="visible">True</property> | 358 | <property name="tab_expand">False</property> |
2352 | 357 | <property name="border_width">5</property> | 359 | <property name="tab_fill">True</property> |
2353 | 358 | <property name="label_xalign">0</property> | 360 | </packing> |
2354 | 359 | <property name="shadow_type">none</property> | 361 | </child> |
2355 | 360 | <child> | 362 | |
2356 | 361 | <widget class="GtkAlignment" id="alignment10"> | 363 | <child> |
2357 | 362 | <property name="visible">True</property> | 364 | <widget class="GtkLabel" id="label_media"> |
2358 | 363 | <property name="left_padding">12</property> | 365 | <property name="visible">True</property> |
2359 | 364 | <child> | 366 | <property name="has_default">True</property> |
2360 | 365 | <widget class="GtkVBox" id="vbox13"> | 367 | <property name="can_focus">True</property> |
2361 | 366 | <property name="visible">True</property> | 368 | <property name="has_focus">True</property> |
2362 | 367 | <property name="homogeneous">True</property> | 369 | <property name="label" translatable="yes">Media</property> |
2363 | 368 | <child> | 370 | <property name="use_underline">False</property> |
2364 | 369 | <widget class="GtkCheckButton" id="art_checkbox"> | 371 | <property name="use_markup">False</property> |
2365 | 370 | <property name="label" translatable="yes">Download album cover art</property> | 372 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
2366 | 371 | <property name="visible">True</property> | 373 | <property name="wrap">False</property> |
2367 | 372 | <property name="can_focus">True</property> | 374 | <property name="selectable">False</property> |
2368 | 373 | <property name="receives_default">False</property> | 375 | <property name="xalign">0.5</property> |
2369 | 374 | <property name="use_underline">True</property> | 376 | <property name="yalign">0.5</property> |
2370 | 375 | <property name="draw_indicator">True</property> | 377 | <property name="xpad">0</property> |
2371 | 376 | <signal name="toggled" handler="on_art_checkbox_toggled"/> | 378 | <property name="ypad">0</property> |
2372 | 377 | </widget> | 379 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2373 | 378 | <packing> | 380 | <property name="width_chars">-1</property> |
2374 | 379 | <property name="padding">5</property> | 381 | <property name="single_line_mode">False</property> |
2375 | 380 | <property name="position">0</property> | 382 | <property name="angle">0</property> |
2376 | 381 | </packing> | 383 | </widget> |
2377 | 382 | </child> | 384 | <packing> |
2378 | 383 | <child> | 385 | <property name="type">tab</property> |
2379 | 384 | <widget class="GtkCheckButton" id="lyrics_checkbox"> | 386 | </packing> |
2380 | 385 | <property name="label" translatable="yes">Download song lyrics</property> | 387 | </child> |
2381 | 386 | <property name="visible">True</property> | 388 | |
2382 | 387 | <property name="can_focus">True</property> | 389 | <child> |
2383 | 388 | <property name="receives_default">False</property> | 390 | <widget class="GtkVBox" id="vbox_feeds"> |
2384 | 389 | <property name="use_underline">True</property> | 391 | <property name="visible">True</property> |
2385 | 390 | <property name="draw_indicator">True</property> | 392 | <property name="homogeneous">False</property> |
2386 | 391 | <signal name="toggled" handler="on_lyrics_checkbox_toggled"/> | 393 | <property name="spacing">0</property> |
2387 | 392 | </widget> | 394 | |
2388 | 393 | <packing> | 395 | <child> |
2389 | 394 | <property name="padding">5</property> | 396 | <widget class="GtkFrame" id="frame_rss_feeds3"> |
2390 | 395 | <property name="position">1</property> | 397 | <property name="border_width">5</property> |
2391 | 396 | </packing> | 398 | <property name="visible">True</property> |
2392 | 397 | </child> | 399 | <property name="label_xalign">0</property> |
2393 | 398 | </widget> | 400 | <property name="label_yalign">0.5</property> |
2394 | 399 | </child> | 401 | <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property> |
2395 | 400 | </widget> | 402 | |
2396 | 401 | </child> | 403 | <child> |
2397 | 402 | <child> | 404 | <widget class="GtkAlignment" id="alignment13"> |
2398 | 403 | <widget class="GtkLabel" id="label9"> | 405 | <property name="visible">True</property> |
2399 | 404 | <property name="visible">True</property> | 406 | <property name="xalign">0.5</property> |
2400 | 405 | <property name="label" translatable="yes"><b>Music library settings</b></property> | 407 | <property name="yalign">0.5</property> |
2401 | 406 | <property name="use_markup">True</property> | 408 | <property name="xscale">1</property> |
2402 | 407 | </widget> | 409 | <property name="yscale">1</property> |
2403 | 408 | <packing> | 410 | <property name="top_padding">0</property> |
2404 | 409 | <property name="type">label_item</property> | 411 | <property name="bottom_padding">0</property> |
2405 | 410 | </packing> | 412 | <property name="left_padding">12</property> |
2406 | 411 | </child> | 413 | <property name="right_padding">0</property> |
2407 | 412 | </widget> | 414 | |
2408 | 413 | <packing> | 415 | <child> |
2409 | 414 | <property name="expand">False</property> | 416 | <widget class="GtkVBox" id="vbox17"> |
2410 | 415 | <property name="position">1</property> | 417 | <property name="visible">True</property> |
2411 | 416 | </packing> | 418 | <property name="homogeneous">False</property> |
2412 | 417 | </child> | 419 | <property name="spacing">0</property> |
2413 | 418 | </widget> | 420 | |
2414 | 419 | <packing> | 421 | <child> |
2415 | 420 | <property name="position">1</property> | 422 | <widget class="GtkLabel" id="label_rss_tip3"> |
2416 | 421 | </packing> | 423 | <property name="visible">True</property> |
2417 | 422 | </child> | 424 | <property name="label" translatable="yes">Below is a list of RSS feeds that are displayd in Entertainer.</property> |
2418 | 423 | <child> | 425 | <property name="use_underline">False</property> |
2419 | 424 | <widget class="GtkLabel" id="label10"> | 426 | <property name="use_markup">False</property> |
2420 | 425 | <property name="visible">True</property> | 427 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
2421 | 426 | <property name="label" translatable="yes">Music</property> | 428 | <property name="wrap">False</property> |
2422 | 427 | </widget> | 429 | <property name="selectable">False</property> |
2423 | 428 | <packing> | 430 | <property name="xalign">0</property> |
2424 | 429 | <property name="position">1</property> | 431 | <property name="yalign">0.5</property> |
2425 | 430 | <property name="tab_fill">False</property> | 432 | <property name="xpad">0</property> |
2426 | 431 | <property name="type">tab</property> | 433 | <property name="ypad">0</property> |
2427 | 432 | </packing> | 434 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2428 | 433 | </child> | 435 | <property name="width_chars">-1</property> |
2429 | 434 | <child> | 436 | <property name="single_line_mode">False</property> |
2430 | 435 | <widget class="GtkVBox" id="vbox14"> | 437 | <property name="angle">0</property> |
2431 | 436 | <property name="visible">True</property> | 438 | </widget> |
2432 | 437 | <child> | 439 | <packing> |
2433 | 438 | <widget class="GtkFrame" id="frame_image_folders3"> | 440 | <property name="padding">5</property> |
2434 | 439 | <property name="visible">True</property> | 441 | <property name="expand">False</property> |
2435 | 440 | <property name="border_width">5</property> | 442 | <property name="fill">True</property> |
2436 | 441 | <property name="label_xalign">0</property> | 443 | </packing> |
2437 | 442 | <property name="shadow_type">none</property> | 444 | </child> |
2438 | 443 | <child> | 445 | |
2439 | 444 | <widget class="GtkAlignment" id="alignment11"> | 446 | <child> |
2440 | 445 | <property name="visible">True</property> | 447 | <widget class="GtkHBox" id="hbox16"> |
2441 | 446 | <property name="left_padding">12</property> | 448 | <property name="visible">True</property> |
2442 | 447 | <child> | 449 | <property name="homogeneous">False</property> |
2443 | 448 | <widget class="GtkVBox" id="vbox15"> | 450 | <property name="spacing">0</property> |
2444 | 449 | <property name="visible">True</property> | 451 | |
2445 | 450 | <child> | 452 | <child> |
2446 | 451 | <widget class="GtkLabel" id="label_music_tip3"> | 453 | <widget class="GtkScrolledWindow" id="scrolledwindow_rss3"> |
2447 | 452 | <property name="visible">True</property> | 454 | <property name="visible">True</property> |
2448 | 453 | <property name="xalign">0</property> | 455 | <property name="can_focus">True</property> |
2449 | 454 | <property name="label" translatable="yes">Entertainer image library scans data from the listed folders.</property> | 456 | <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> |
2450 | 455 | </widget> | 457 | <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> |
2451 | 456 | <packing> | 458 | <property name="shadow_type">GTK_SHADOW_NONE</property> |
2452 | 457 | <property name="expand">False</property> | 459 | <property name="window_placement">GTK_CORNER_TOP_LEFT</property> |
2453 | 458 | <property name="padding">5</property> | 460 | |
2454 | 459 | <property name="position">0</property> | 461 | <child> |
2455 | 460 | </packing> | 462 | <widget class="GtkTreeView" id="treeview_feeds"> |
2456 | 461 | </child> | 463 | <property name="visible">True</property> |
2457 | 462 | <child> | 464 | <property name="can_focus">True</property> |
2458 | 463 | <widget class="GtkHBox" id="hbox14"> | 465 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
2459 | 464 | <property name="visible">True</property> | 466 | <property name="headers_visible">True</property> |
2460 | 465 | <child> | 467 | <property name="rules_hint">False</property> |
2461 | 466 | <widget class="GtkScrolledWindow" id="scrolledwindow6"> | 468 | <property name="reorderable">False</property> |
2462 | 467 | <property name="visible">True</property> | 469 | <property name="enable_search">False</property> |
2463 | 468 | <property name="can_focus">True</property> | 470 | <property name="fixed_height_mode">False</property> |
2464 | 469 | <property name="hscrollbar_policy">automatic</property> | 471 | <property name="hover_selection">False</property> |
2465 | 470 | <property name="vscrollbar_policy">automatic</property> | 472 | <property name="hover_expand">False</property> |
2466 | 471 | <property name="shadow_type">in</property> | 473 | </widget> |
2467 | 472 | <child> | 474 | </child> |
2468 | 473 | <widget class="GtkTreeView" id="treeview_images"> | 475 | </widget> |
2469 | 474 | <property name="visible">True</property> | 476 | <packing> |
2470 | 475 | <property name="can_focus">True</property> | 477 | <property name="padding">0</property> |
2471 | 476 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> | 478 | <property name="expand">True</property> |
2472 | 477 | <property name="enable_search">False</property> | 479 | <property name="fill">True</property> |
2473 | 478 | </widget> | 480 | </packing> |
2474 | 479 | </child> | 481 | </child> |
2475 | 480 | </widget> | 482 | |
2476 | 481 | <packing> | 483 | <child> |
2477 | 482 | <property name="position">0</property> | 484 | <widget class="GtkVButtonBox" id="vbuttonbox8"> |
2478 | 483 | </packing> | 485 | <property name="visible">True</property> |
2479 | 484 | </child> | 486 | <property name="layout_style">GTK_BUTTONBOX_DEFAULT_STYLE</property> |
2480 | 485 | <child> | 487 | <property name="spacing">5</property> |
2481 | 486 | <widget class="GtkVButtonBox" id="vbuttonbox7"> | 488 | |
2482 | 487 | <property name="visible">True</property> | 489 | <child> |
2483 | 488 | <property name="spacing">5</property> | 490 | <widget class="GtkButton" id="button_add_feed"> |
2484 | 489 | <property name="layout_style">start</property> | 491 | <property name="visible">True</property> |
2485 | 490 | <child> | 492 | <property name="tooltip" translatable="yes">Add RSS Feed</property> |
2486 | 491 | <widget class="GtkButton" id="button_add_images"> | 493 | <property name="can_focus">True</property> |
2487 | 492 | <property name="label">gtk-add</property> | 494 | <property name="label">gtk-add</property> |
2488 | 493 | <property name="visible">True</property> | 495 | <property name="use_stock">True</property> |
2489 | 494 | <property name="can_focus">True</property> | 496 | <property name="relief">GTK_RELIEF_NORMAL</property> |
2490 | 495 | <property name="receives_default">False</property> | 497 | <property name="focus_on_click">True</property> |
2491 | 496 | <property name="use_stock">True</property> | 498 | <signal name="clicked" handler="on_button_add_feed_clicked"/> |
2492 | 497 | <signal name="clicked" handler="on_button_add_images_clicked"/> | 499 | </widget> |
2493 | 498 | </widget> | 500 | </child> |
2494 | 499 | <packing> | 501 | |
2495 | 500 | <property name="expand">False</property> | 502 | <child> |
2496 | 501 | <property name="fill">False</property> | 503 | <widget class="GtkButton" id="button_remove_feed"> |
2497 | 502 | <property name="position">0</property> | 504 | <property name="visible">True</property> |
2498 | 503 | </packing> | 505 | <property name="tooltip" translatable="yes">Remove RSS Feed</property> |
2499 | 504 | </child> | 506 | <property name="can_focus">True</property> |
2500 | 505 | <child> | 507 | <property name="label">gtk-remove</property> |
2501 | 506 | <widget class="GtkButton" id="button_remove_images"> | 508 | <property name="use_stock">True</property> |
2502 | 507 | <property name="label">gtk-remove</property> | 509 | <property name="relief">GTK_RELIEF_NORMAL</property> |
2503 | 508 | <property name="visible">True</property> | 510 | <property name="focus_on_click">True</property> |
2504 | 509 | <property name="can_focus">True</property> | 511 | <signal name="clicked" handler="on_button_remove_feed_clicked"/> |
2505 | 510 | <property name="receives_default">False</property> | 512 | </widget> |
2506 | 511 | <property name="use_stock">True</property> | 513 | </child> |
2507 | 512 | <signal name="clicked" handler="on_button_remove_images_clicked"/> | 514 | |
2508 | 513 | </widget> | 515 | <child> |
2509 | 514 | <packing> | 516 | <widget class="GtkButton" id="button_edit_feed"> |
2510 | 515 | <property name="expand">False</property> | 517 | <property name="visible">True</property> |
2511 | 516 | <property name="fill">False</property> | 518 | <property name="tooltip" translatable="yes">Edit current item</property> |
2512 | 517 | <property name="position">1</property> | 519 | <property name="can_focus">True</property> |
2513 | 518 | </packing> | 520 | <property name="label">gtk-edit</property> |
2514 | 519 | </child> | 521 | <property name="use_stock">True</property> |
2515 | 520 | <child> | 522 | <property name="relief">GTK_RELIEF_NORMAL</property> |
2516 | 521 | <widget class="GtkButton" id="button_edit_images"> | 523 | <property name="focus_on_click">True</property> |
2517 | 522 | <property name="label">gtk-edit</property> | 524 | <signal name="clicked" handler="on_button_edit_feed_clicked"/> |
2518 | 523 | <property name="visible">True</property> | 525 | </widget> |
2519 | 524 | <property name="can_focus">True</property> | 526 | </child> |
2520 | 525 | <property name="receives_default">False</property> | 527 | |
2521 | 526 | <property name="use_stock">True</property> | 528 | <child> |
2522 | 527 | <signal name="clicked" handler="on_button_edit_images_clicked"/> | 529 | <widget class="GtkButton" id="button_open_list"> |
2523 | 528 | </widget> | 530 | <property name="visible">True</property> |
2524 | 529 | <packing> | 531 | <property name="tooltip" translatable="yes">Add feeds from a datasource</property> |
2525 | 530 | <property name="expand">False</property> | 532 | <property name="can_focus">True</property> |
2526 | 531 | <property name="fill">False</property> | 533 | <property name="label">gtk-open</property> |
2527 | 532 | <property name="position">2</property> | 534 | <property name="use_stock">True</property> |
2528 | 533 | </packing> | 535 | <property name="relief">GTK_RELIEF_NORMAL</property> |
2529 | 534 | </child> | 536 | <property name="focus_on_click">True</property> |
2530 | 535 | </widget> | 537 | <signal name="clicked" handler="on_button_open_list_clicked"/> |
2531 | 536 | <packing> | 538 | </widget> |
2532 | 537 | <property name="expand">False</property> | 539 | </child> |
2533 | 538 | <property name="padding">5</property> | 540 | </widget> |
2534 | 539 | <property name="position">1</property> | 541 | <packing> |
2535 | 540 | </packing> | 542 | <property name="padding">5</property> |
2536 | 541 | </child> | 543 | <property name="expand">False</property> |
2537 | 542 | </widget> | 544 | <property name="fill">True</property> |
2538 | 543 | <packing> | 545 | </packing> |
2539 | 544 | <property name="position">1</property> | 546 | </child> |
2540 | 545 | </packing> | 547 | </widget> |
2541 | 546 | </child> | 548 | <packing> |
2542 | 547 | </widget> | 549 | <property name="padding">0</property> |
2543 | 548 | </child> | 550 | <property name="expand">True</property> |
2544 | 549 | </widget> | 551 | <property name="fill">True</property> |
2545 | 550 | </child> | 552 | </packing> |
2546 | 551 | <child> | 553 | </child> |
2547 | 552 | <widget class="GtkLabel" id="label11"> | 554 | </widget> |
2548 | 553 | <property name="visible">True</property> | 555 | </child> |
2549 | 554 | <property name="label" translatable="yes"><b>Image library</b></property> | 556 | </widget> |
2550 | 555 | <property name="use_markup">True</property> | 557 | </child> |
2551 | 556 | </widget> | 558 | |
2552 | 557 | <packing> | 559 | <child> |
2553 | 558 | <property name="type">label_item</property> | 560 | <widget class="GtkLabel" id="label_rss_sources3"> |
2554 | 559 | </packing> | 561 | <property name="visible">True</property> |
2555 | 560 | </child> | 562 | <property name="label" translatable="yes"><b>RSS feeds</b></property> |
2556 | 561 | </widget> | 563 | <property name="use_underline">False</property> |
2557 | 562 | <packing> | 564 | <property name="use_markup">True</property> |
2558 | 563 | <property name="position">0</property> | 565 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
2559 | 564 | </packing> | 566 | <property name="wrap">False</property> |
2560 | 565 | </child> | 567 | <property name="selectable">False</property> |
2561 | 566 | <child> | 568 | <property name="xalign">0.5</property> |
2562 | 567 | <widget class="GtkFrame" id="frame_image_lib_settings3"> | 569 | <property name="yalign">0.5</property> |
2563 | 568 | <property name="visible">True</property> | 570 | <property name="xpad">0</property> |
2564 | 569 | <property name="border_width">5</property> | 571 | <property name="ypad">0</property> |
2565 | 570 | <property name="label_xalign">0</property> | 572 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2566 | 571 | <property name="shadow_type">none</property> | 573 | <property name="width_chars">-1</property> |
2567 | 572 | <child> | 574 | <property name="single_line_mode">False</property> |
2568 | 573 | <widget class="GtkAlignment" id="alignment12"> | 575 | <property name="angle">0</property> |
2569 | 574 | <property name="visible">True</property> | 576 | </widget> |
2570 | 575 | <property name="left_padding">12</property> | 577 | <packing> |
2571 | 576 | <child> | 578 | <property name="type">label_item</property> |
2572 | 577 | <widget class="GtkVBox" id="vbox16"> | 579 | </packing> |
2573 | 578 | <property name="visible">True</property> | 580 | </child> |
2574 | 579 | <child> | 581 | </widget> |
2575 | 580 | <placeholder/> | 582 | <packing> |
2576 | 581 | </child> | 583 | <property name="padding">0</property> |
2577 | 582 | <child> | 584 | <property name="expand">True</property> |
2578 | 583 | <widget class="GtkCheckButton" id="hidden_files_folders_checkbox"> | 585 | <property name="fill">True</property> |
2579 | 584 | <property name="label" translatable="yes">Display hidden files and folders in image library</property> | 586 | </packing> |
2580 | 585 | <property name="visible">True</property> | 587 | </child> |
2581 | 586 | <property name="can_focus">True</property> | 588 | |
2582 | 587 | <property name="receives_default">False</property> | 589 | <child> |
2583 | 588 | <property name="use_underline">True</property> | 590 | <widget class="GtkFrame" id="frame_feed_settings3"> |
2584 | 589 | <property name="draw_indicator">True</property> | 591 | <property name="border_width">5</property> |
2585 | 590 | <signal name="toggled" handler="on_hidden_files_folders_checkbox_toggled"/> | 592 | <property name="visible">True</property> |
2586 | 591 | </widget> | 593 | <property name="label_xalign">0</property> |
2587 | 592 | <packing> | 594 | <property name="label_yalign">0.5</property> |
2588 | 593 | <property name="padding">5</property> | 595 | <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property> |
2589 | 594 | <property name="position">1</property> | 596 | |
2590 | 595 | </packing> | 597 | <child> |
2591 | 596 | </child> | 598 | <widget class="GtkAlignment" id="alignment14"> |
2592 | 597 | </widget> | 599 | <property name="visible">True</property> |
2593 | 598 | </child> | 600 | <property name="xalign">0.5</property> |
2594 | 599 | </widget> | 601 | <property name="yalign">0.5</property> |
2595 | 600 | </child> | 602 | <property name="xscale">1</property> |
2596 | 601 | <child> | 603 | <property name="yscale">1</property> |
2597 | 602 | <widget class="GtkLabel" id="label_image_lib_settings3"> | 604 | <property name="top_padding">0</property> |
2598 | 603 | <property name="visible">True</property> | 605 | <property name="bottom_padding">0</property> |
2599 | 604 | <property name="label" translatable="yes"><b>Image library settings</b></property> | 606 | <property name="left_padding">12</property> |
2600 | 605 | <property name="use_markup">True</property> | 607 | <property name="right_padding">0</property> |
2601 | 606 | </widget> | 608 | |
2602 | 607 | <packing> | 609 | <child> |
2603 | 608 | <property name="type">label_item</property> | 610 | <widget class="GtkVBox" id="vbox18"> |
2604 | 609 | </packing> | 611 | <property name="visible">True</property> |
2605 | 610 | </child> | 612 | <property name="homogeneous">False</property> |
2606 | 611 | </widget> | 613 | <property name="spacing">0</property> |
2607 | 612 | <packing> | 614 | |
2608 | 613 | <property name="expand">False</property> | 615 | <child> |
2609 | 614 | <property name="position">1</property> | 616 | <widget class="GtkHBox" id="hbox17"> |
2610 | 615 | </packing> | 617 | <property name="visible">True</property> |
2611 | 616 | </child> | 618 | <property name="homogeneous">False</property> |
2612 | 617 | </widget> | 619 | <property name="spacing">0</property> |
2613 | 618 | <packing> | 620 | |
2614 | 619 | <property name="position">2</property> | 621 | <child> |
2615 | 620 | </packing> | 622 | <widget class="GtkLabel" id="label12"> |
2616 | 621 | </child> | 623 | <property name="visible">True</property> |
2617 | 622 | <child> | 624 | <property name="label" translatable="yes">Update all feeds every</property> |
2618 | 623 | <widget class="GtkLabel" id="label_images3"> | 625 | <property name="use_underline">False</property> |
2619 | 624 | <property name="visible">True</property> | 626 | <property name="use_markup">False</property> |
2620 | 625 | <property name="label" translatable="yes">Images</property> | 627 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
2621 | 626 | </widget> | 628 | <property name="wrap">False</property> |
2622 | 627 | <packing> | 629 | <property name="selectable">False</property> |
2623 | 628 | <property name="position">2</property> | 630 | <property name="xalign">0.5</property> |
2624 | 629 | <property name="tab_fill">False</property> | 631 | <property name="yalign">0.5</property> |
2625 | 630 | <property name="type">tab</property> | 632 | <property name="xpad">0</property> |
2626 | 631 | </packing> | 633 | <property name="ypad">0</property> |
2627 | 632 | </child> | 634 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2628 | 633 | <child> | 635 | <property name="width_chars">-1</property> |
2629 | 634 | <widget class="GtkVBox" id="vbox_feeds"> | 636 | <property name="single_line_mode">False</property> |
2630 | 635 | <property name="visible">True</property> | 637 | <property name="angle">0</property> |
2631 | 636 | <child> | 638 | </widget> |
2632 | 637 | <widget class="GtkFrame" id="frame_rss_feeds3"> | 639 | <packing> |
2633 | 638 | <property name="visible">True</property> | 640 | <property name="padding">0</property> |
2634 | 639 | <property name="border_width">5</property> | 641 | <property name="expand">False</property> |
2635 | 640 | <property name="label_xalign">0</property> | 642 | <property name="fill">True</property> |
2636 | 641 | <property name="shadow_type">none</property> | 643 | </packing> |
2637 | 642 | <child> | 644 | </child> |
2638 | 643 | <widget class="GtkAlignment" id="alignment13"> | 645 | |
2639 | 644 | <property name="visible">True</property> | 646 | <child> |
2640 | 645 | <property name="left_padding">12</property> | 647 | <widget class="GtkSpinButton" id="fetch_interval_spinbutton"> |
2641 | 646 | <child> | 648 | <property name="visible">True</property> |
2642 | 647 | <widget class="GtkVBox" id="vbox17"> | 649 | <property name="can_focus">True</property> |
2643 | 648 | <property name="visible">True</property> | 650 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
2644 | 649 | <child> | 651 | <property name="climb_rate">1</property> |
2645 | 650 | <widget class="GtkLabel" id="label_rss_tip3"> | 652 | <property name="digits">0</property> |
2646 | 651 | <property name="visible">True</property> | 653 | <property name="numeric">True</property> |
2647 | 652 | <property name="xalign">0</property> | 654 | <property name="update_policy">GTK_UPDATE_ALWAYS</property> |
2648 | 653 | <property name="label" translatable="yes">Below is a list of RSS feeds that are displayd in Entertainer.</property> | 655 | <property name="snap_to_ticks">False</property> |
2649 | 654 | </widget> | 656 | <property name="wrap">False</property> |
2650 | 655 | <packing> | 657 | <property name="adjustment">60 15 900 1 10 0</property> |
2651 | 656 | <property name="expand">False</property> | 658 | <signal name="value_changed" handler="on_fetch_interval_spinbutton_value_changed"/> |
2652 | 657 | <property name="padding">5</property> | 659 | </widget> |
2653 | 658 | <property name="position">0</property> | 660 | <packing> |
2654 | 659 | </packing> | 661 | <property name="padding">5</property> |
2655 | 660 | </child> | 662 | <property name="expand">False</property> |
2656 | 661 | <child> | 663 | <property name="fill">True</property> |
2657 | 662 | <widget class="GtkHBox" id="hbox16"> | 664 | </packing> |
2658 | 663 | <property name="visible">True</property> | 665 | </child> |
2659 | 664 | <child> | 666 | |
2660 | 665 | <widget class="GtkScrolledWindow" id="scrolledwindow_rss3"> | 667 | <child> |
2661 | 666 | <property name="visible">True</property> | 668 | <widget class="GtkLabel" id="label13"> |
2662 | 667 | <property name="can_focus">True</property> | 669 | <property name="visible">True</property> |
2663 | 668 | <property name="hscrollbar_policy">automatic</property> | 670 | <property name="label" translatable="yes">minutes.</property> |
2664 | 669 | <property name="vscrollbar_policy">automatic</property> | 671 | <property name="use_underline">False</property> |
2665 | 670 | <property name="shadow_type">in</property> | 672 | <property name="use_markup">False</property> |
2666 | 671 | <child> | 673 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
2667 | 672 | <widget class="GtkTreeView" id="treeview_feeds"> | 674 | <property name="wrap">False</property> |
2668 | 673 | <property name="visible">True</property> | 675 | <property name="selectable">False</property> |
2669 | 674 | <property name="can_focus">True</property> | 676 | <property name="xalign">0.5</property> |
2670 | 675 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> | 677 | <property name="yalign">0.5</property> |
2671 | 676 | <property name="enable_search">False</property> | 678 | <property name="xpad">0</property> |
2672 | 677 | </widget> | 679 | <property name="ypad">0</property> |
2673 | 678 | </child> | 680 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2674 | 679 | </widget> | 681 | <property name="width_chars">-1</property> |
2675 | 680 | <packing> | 682 | <property name="single_line_mode">False</property> |
2676 | 681 | <property name="position">0</property> | 683 | <property name="angle">0</property> |
2677 | 682 | </packing> | 684 | </widget> |
2678 | 683 | </child> | 685 | <packing> |
2679 | 684 | <child> | 686 | <property name="padding">0</property> |
2680 | 685 | <widget class="GtkVButtonBox" id="vbuttonbox8"> | 687 | <property name="expand">False</property> |
2681 | 686 | <property name="visible">True</property> | 688 | <property name="fill">True</property> |
2682 | 687 | <property name="spacing">5</property> | 689 | </packing> |
2683 | 688 | <property name="layout_style">start</property> | 690 | </child> |
2684 | 689 | <child> | 691 | </widget> |
2685 | 690 | <widget class="GtkButton" id="button_add_feed"> | 692 | <packing> |
2686 | 691 | <property name="label">gtk-add</property> | 693 | <property name="padding">10</property> |
2687 | 692 | <property name="visible">True</property> | 694 | <property name="expand">False</property> |
2688 | 693 | <property name="can_focus">True</property> | 695 | <property name="fill">True</property> |
2689 | 694 | <property name="receives_default">False</property> | 696 | </packing> |
2690 | 695 | <property name="tooltip" translatable="yes">Add RSS Feed</property> | 697 | </child> |
2691 | 696 | <property name="use_stock">True</property> | 698 | </widget> |
2692 | 697 | <signal name="clicked" handler="on_button_add_feed_clicked"/> | 699 | </child> |
2693 | 698 | </widget> | 700 | </widget> |
2694 | 699 | <packing> | 701 | </child> |
2695 | 700 | <property name="expand">False</property> | 702 | |
2696 | 701 | <property name="fill">False</property> | 703 | <child> |
2697 | 702 | <property name="position">0</property> | 704 | <widget class="GtkLabel" id="label_rss_settings3"> |
2698 | 703 | </packing> | 705 | <property name="visible">True</property> |
2699 | 704 | </child> | 706 | <property name="label" translatable="yes"><b>Feed settings</b></property> |
2700 | 705 | <child> | 707 | <property name="use_underline">False</property> |
2701 | 706 | <widget class="GtkButton" id="button_remove_feed"> | 708 | <property name="use_markup">True</property> |
2702 | 707 | <property name="label">gtk-remove</property> | 709 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
2703 | 708 | <property name="visible">True</property> | 710 | <property name="wrap">False</property> |
2704 | 709 | <property name="can_focus">True</property> | 711 | <property name="selectable">False</property> |
2705 | 710 | <property name="receives_default">False</property> | 712 | <property name="xalign">0.5</property> |
2706 | 711 | <property name="tooltip" translatable="yes">Remove RSS Feed</property> | 713 | <property name="yalign">0.5</property> |
2707 | 712 | <property name="use_stock">True</property> | 714 | <property name="xpad">0</property> |
2708 | 713 | <signal name="clicked" handler="on_button_remove_feed_clicked"/> | 715 | <property name="ypad">0</property> |
2709 | 714 | </widget> | 716 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2710 | 715 | <packing> | 717 | <property name="width_chars">-1</property> |
2711 | 716 | <property name="expand">False</property> | 718 | <property name="single_line_mode">False</property> |
2712 | 717 | <property name="fill">False</property> | 719 | <property name="angle">0</property> |
2713 | 718 | <property name="position">1</property> | 720 | </widget> |
2714 | 719 | </packing> | 721 | <packing> |
2715 | 720 | </child> | 722 | <property name="type">label_item</property> |
2716 | 721 | <child> | 723 | </packing> |
2717 | 722 | <widget class="GtkButton" id="button_edit_feed"> | 724 | </child> |
2718 | 723 | <property name="label">gtk-edit</property> | 725 | </widget> |
2719 | 724 | <property name="visible">True</property> | 726 | <packing> |
2720 | 725 | <property name="can_focus">True</property> | 727 | <property name="padding">0</property> |
2721 | 726 | <property name="receives_default">False</property> | 728 | <property name="expand">False</property> |
2722 | 727 | <property name="tooltip" translatable="yes">Edit current item</property> | 729 | <property name="fill">True</property> |
2723 | 728 | <property name="use_stock">True</property> | 730 | </packing> |
2724 | 729 | <signal name="clicked" handler="on_button_edit_feed_clicked"/> | 731 | </child> |
2725 | 730 | </widget> | 732 | </widget> |
2726 | 731 | <packing> | 733 | <packing> |
2727 | 732 | <property name="expand">False</property> | 734 | <property name="tab_expand">False</property> |
2728 | 733 | <property name="fill">False</property> | 735 | <property name="tab_fill">True</property> |
2729 | 734 | <property name="position">2</property> | 736 | </packing> |
2730 | 735 | </packing> | 737 | </child> |
2731 | 736 | </child> | 738 | |
2732 | 737 | <child> | 739 | <child> |
2733 | 738 | <widget class="GtkButton" id="button_open_list"> | 740 | <widget class="GtkLabel" id="label_rss3"> |
2734 | 739 | <property name="label">gtk-open</property> | 741 | <property name="visible">True</property> |
2735 | 740 | <property name="visible">True</property> | 742 | <property name="label" translatable="yes">RSS feeds</property> |
2736 | 741 | <property name="can_focus">True</property> | 743 | <property name="use_underline">False</property> |
2737 | 742 | <property name="receives_default">False</property> | 744 | <property name="use_markup">False</property> |
2738 | 743 | <property name="tooltip" translatable="yes">Add feeds from a datasource</property> | 745 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
2739 | 744 | <property name="use_stock">True</property> | 746 | <property name="wrap">False</property> |
2740 | 745 | <signal name="clicked" handler="on_button_open_list_clicked"/> | 747 | <property name="selectable">False</property> |
2741 | 746 | </widget> | 748 | <property name="xalign">0.5</property> |
2742 | 747 | <packing> | 749 | <property name="yalign">0.5</property> |
2743 | 748 | <property name="expand">False</property> | 750 | <property name="xpad">0</property> |
2744 | 749 | <property name="fill">False</property> | 751 | <property name="ypad">0</property> |
2745 | 750 | <property name="position">3</property> | 752 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2746 | 751 | </packing> | 753 | <property name="width_chars">-1</property> |
2747 | 752 | </child> | 754 | <property name="single_line_mode">False</property> |
2748 | 753 | </widget> | 755 | <property name="angle">0</property> |
2749 | 754 | <packing> | 756 | </widget> |
2750 | 755 | <property name="expand">False</property> | 757 | <packing> |
2751 | 756 | <property name="padding">5</property> | 758 | <property name="type">tab</property> |
2752 | 757 | <property name="position">1</property> | 759 | </packing> |
2753 | 758 | </packing> | 760 | </child> |
2754 | 759 | </child> | 761 | |
2755 | 760 | </widget> | 762 | <child> |
2756 | 761 | <packing> | 763 | <widget class="GtkVBox" id="vbox5"> |
2757 | 762 | <property name="position">1</property> | 764 | <property name="visible">True</property> |
2758 | 763 | </packing> | 765 | <property name="homogeneous">False</property> |
2759 | 764 | </child> | 766 | <property name="spacing">0</property> |
2760 | 765 | </widget> | 767 | |
2761 | 766 | </child> | 768 | <child> |
2762 | 767 | </widget> | 769 | <widget class="GtkFrame" id="frame_video_lib3"> |
2763 | 768 | </child> | 770 | <property name="border_width">5</property> |
2764 | 769 | <child> | 771 | <property name="visible">True</property> |
2765 | 770 | <widget class="GtkLabel" id="label_rss_sources3"> | 772 | <property name="label_xalign">0</property> |
2766 | 771 | <property name="visible">True</property> | 773 | <property name="label_yalign">0.5</property> |
2767 | 772 | <property name="label" translatable="yes"><b>RSS feeds</b></property> | 774 | <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property> |
2768 | 773 | <property name="use_markup">True</property> | 775 | |
2769 | 774 | </widget> | 776 | <child> |
2770 | 775 | <packing> | 777 | <widget class="GtkAlignment" id="alignment5"> |
2771 | 776 | <property name="type">label_item</property> | 778 | <property name="visible">True</property> |
2772 | 777 | </packing> | 779 | <property name="xalign">0.5</property> |
2773 | 778 | </child> | 780 | <property name="yalign">0.5</property> |
2774 | 779 | </widget> | 781 | <property name="xscale">1</property> |
2775 | 780 | <packing> | 782 | <property name="yscale">1</property> |
2776 | 781 | <property name="position">0</property> | 783 | <property name="top_padding">0</property> |
2777 | 782 | </packing> | 784 | <property name="bottom_padding">0</property> |
2778 | 783 | </child> | 785 | <property name="left_padding">12</property> |
2779 | 784 | <child> | 786 | <property name="right_padding">0</property> |
2780 | 785 | <widget class="GtkFrame" id="frame_feed_settings3"> | 787 | |
2781 | 786 | <property name="visible">True</property> | 788 | <child> |
2782 | 787 | <property name="border_width">5</property> | 789 | <widget class="GtkVBox" id="weather_location_list_area"> |
2783 | 788 | <property name="label_xalign">0</property> | 790 | <property name="visible">True</property> |
2784 | 789 | <property name="shadow_type">none</property> | 791 | <property name="homogeneous">False</property> |
2785 | 790 | <child> | 792 | <property name="spacing">0</property> |
2786 | 791 | <widget class="GtkAlignment" id="alignment14"> | 793 | |
2787 | 792 | <property name="visible">True</property> | 794 | <child> |
2788 | 793 | <property name="left_padding">12</property> | 795 | <widget class="GtkLabel" id="label_weather_tip"> |
2789 | 794 | <child> | 796 | <property name="visible">True</property> |
2790 | 795 | <widget class="GtkVBox" id="vbox18"> | 797 | <property name="label" translatable="yes">Get weather conditions from the locations listed below.</property> |
2791 | 796 | <property name="visible">True</property> | 798 | <property name="use_underline">False</property> |
2792 | 797 | <child> | 799 | <property name="use_markup">False</property> |
2793 | 798 | <widget class="GtkHBox" id="hbox17"> | 800 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
2794 | 799 | <property name="visible">True</property> | 801 | <property name="wrap">False</property> |
2795 | 800 | <child> | 802 | <property name="selectable">False</property> |
2796 | 801 | <widget class="GtkLabel" id="label12"> | 803 | <property name="xalign">0</property> |
2797 | 802 | <property name="visible">True</property> | 804 | <property name="yalign">0.5</property> |
2798 | 803 | <property name="label" translatable="yes">Update all feeds every</property> | 805 | <property name="xpad">0</property> |
2799 | 804 | </widget> | 806 | <property name="ypad">0</property> |
2800 | 805 | <packing> | 807 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2801 | 806 | <property name="expand">False</property> | 808 | <property name="width_chars">-1</property> |
2802 | 807 | <property name="position">0</property> | 809 | <property name="single_line_mode">True</property> |
2803 | 808 | </packing> | 810 | <property name="angle">0</property> |
2804 | 809 | </child> | 811 | </widget> |
2805 | 810 | <child> | 812 | <packing> |
2806 | 811 | <widget class="GtkSpinButton" id="fetch_interval_spinbutton"> | 813 | <property name="padding">5</property> |
2807 | 812 | <property name="visible">True</property> | 814 | <property name="expand">False</property> |
2808 | 813 | <property name="can_focus">True</property> | 815 | <property name="fill">True</property> |
2809 | 814 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> | 816 | </packing> |
2810 | 815 | <property name="adjustment">60 15 900 1 10 0</property> | 817 | </child> |
2811 | 816 | <property name="climb_rate">1</property> | 818 | |
2812 | 817 | <property name="numeric">True</property> | 819 | <child> |
2813 | 818 | <signal name="value_changed" handler="on_fetch_interval_spinbutton_value_changed"/> | 820 | <widget class="GtkHBox" id="hbox4"> |
2814 | 819 | </widget> | 821 | <property name="visible">True</property> |
2815 | 820 | <packing> | 822 | <property name="homogeneous">False</property> |
2816 | 821 | <property name="expand">False</property> | 823 | <property name="spacing">0</property> |
2817 | 822 | <property name="padding">5</property> | 824 | |
2818 | 823 | <property name="position">1</property> | 825 | <child> |
2819 | 824 | </packing> | 826 | <widget class="GtkScrolledWindow" id="scrolledwindow3"> |
2820 | 825 | </child> | 827 | <property name="visible">True</property> |
2821 | 826 | <child> | 828 | <property name="can_focus">True</property> |
2822 | 827 | <widget class="GtkLabel" id="label13"> | 829 | <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> |
2823 | 828 | <property name="visible">True</property> | 830 | <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> |
2824 | 829 | <property name="label" translatable="yes">minutes.</property> | 831 | <property name="shadow_type">GTK_SHADOW_NONE</property> |
2825 | 830 | </widget> | 832 | <property name="window_placement">GTK_CORNER_TOP_LEFT</property> |
2826 | 831 | <packing> | 833 | |
2827 | 832 | <property name="expand">False</property> | 834 | <child> |
2828 | 833 | <property name="position">2</property> | 835 | <widget class="GtkTreeView" id="treeview_locations"> |
2829 | 834 | </packing> | 836 | <property name="visible">True</property> |
2830 | 835 | </child> | 837 | <property name="can_focus">True</property> |
2831 | 836 | </widget> | 838 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
2832 | 837 | <packing> | 839 | <property name="headers_visible">True</property> |
2833 | 838 | <property name="expand">False</property> | 840 | <property name="rules_hint">False</property> |
2834 | 839 | <property name="padding">10</property> | 841 | <property name="reorderable">False</property> |
2835 | 840 | <property name="position">0</property> | 842 | <property name="enable_search">False</property> |
2836 | 841 | </packing> | 843 | <property name="fixed_height_mode">False</property> |
2837 | 842 | </child> | 844 | <property name="hover_selection">False</property> |
2838 | 843 | </widget> | 845 | <property name="hover_expand">False</property> |
2839 | 844 | </child> | 846 | </widget> |
2840 | 845 | </widget> | 847 | </child> |
2841 | 846 | </child> | 848 | </widget> |
2842 | 847 | <child> | 849 | <packing> |
2843 | 848 | <widget class="GtkLabel" id="label_rss_settings3"> | 850 | <property name="padding">0</property> |
2844 | 849 | <property name="visible">True</property> | 851 | <property name="expand">True</property> |
2845 | 850 | <property name="label" translatable="yes"><b>Feed settings</b></property> | 852 | <property name="fill">True</property> |
2846 | 851 | <property name="use_markup">True</property> | 853 | </packing> |
2847 | 852 | </widget> | 854 | </child> |
2848 | 853 | <packing> | 855 | |
2849 | 854 | <property name="type">label_item</property> | 856 | <child> |
2850 | 855 | </packing> | 857 | <widget class="GtkVButtonBox" id="vbuttonbox3"> |
2851 | 856 | </child> | 858 | <property name="visible">True</property> |
2852 | 857 | </widget> | 859 | <property name="layout_style">GTK_BUTTONBOX_DEFAULT_STYLE</property> |
2853 | 858 | <packing> | 860 | <property name="spacing">5</property> |
2854 | 859 | <property name="expand">False</property> | 861 | |
2855 | 860 | <property name="position">1</property> | 862 | <child> |
2856 | 861 | </packing> | 863 | <widget class="GtkButton" id="button_add_weather"> |
2857 | 862 | </child> | 864 | <property name="visible">True</property> |
2858 | 863 | </widget> | 865 | <property name="can_default">True</property> |
2859 | 864 | <packing> | 866 | <property name="has_default">True</property> |
2860 | 865 | <property name="position">3</property> | 867 | <property name="can_focus">True</property> |
2861 | 866 | </packing> | 868 | <property name="has_focus">True</property> |
2862 | 867 | </child> | 869 | <property name="label">gtk-new</property> |
2863 | 868 | <child> | 870 | <property name="use_stock">True</property> |
2864 | 869 | <widget class="GtkLabel" id="label_rss3"> | 871 | <property name="relief">GTK_RELIEF_NORMAL</property> |
2865 | 870 | <property name="visible">True</property> | 872 | <property name="focus_on_click">True</property> |
2866 | 871 | <property name="label" translatable="yes">RSS feeds</property> | 873 | <signal name="clicked" handler="on_button_add_weather_clicked"/> |
2867 | 872 | </widget> | 874 | </widget> |
2868 | 873 | <packing> | 875 | </child> |
2869 | 874 | <property name="position">3</property> | 876 | |
2870 | 875 | <property name="tab_fill">False</property> | 877 | <child> |
2871 | 876 | <property name="type">tab</property> | 878 | <widget class="GtkButton" id="button_remove_weather"> |
2872 | 877 | </packing> | 879 | <property name="visible">True</property> |
2873 | 878 | </child> | 880 | <property name="can_focus">True</property> |
2874 | 879 | <child> | 881 | <property name="label">gtk-clear</property> |
2875 | 880 | <widget class="GtkVBox" id="vbox5"> | 882 | <property name="use_stock">True</property> |
2876 | 881 | <property name="visible">True</property> | 883 | <property name="relief">GTK_RELIEF_NORMAL</property> |
2877 | 882 | <child> | 884 | <property name="focus_on_click">True</property> |
2878 | 883 | <widget class="GtkFrame" id="frame_video_lib3"> | 885 | <signal name="clicked" handler="on_button_remove_weather_clicked"/> |
2879 | 884 | <property name="visible">True</property> | 886 | </widget> |
2880 | 885 | <property name="border_width">5</property> | 887 | </child> |
2881 | 886 | <property name="label_xalign">0</property> | 888 | </widget> |
2882 | 887 | <property name="shadow_type">none</property> | 889 | <packing> |
2883 | 888 | <child> | 890 | <property name="padding">5</property> |
2884 | 889 | <widget class="GtkAlignment" id="alignment5"> | 891 | <property name="expand">False</property> |
2885 | 890 | <property name="visible">True</property> | 892 | <property name="fill">True</property> |
2886 | 891 | <property name="left_padding">12</property> | 893 | </packing> |
2887 | 892 | <child> | 894 | </child> |
2888 | 893 | <widget class="GtkVBox" id="weather_location_list_area"> | 895 | </widget> |
2889 | 894 | <property name="visible">True</property> | 896 | <packing> |
2890 | 895 | <child> | 897 | <property name="padding">0</property> |
2891 | 896 | <widget class="GtkLabel" id="label_weather_tip"> | 898 | <property name="expand">True</property> |
2892 | 897 | <property name="visible">True</property> | 899 | <property name="fill">True</property> |
2893 | 898 | <property name="xalign">0</property> | 900 | </packing> |
2894 | 899 | <property name="label" translatable="yes">Get weather conditions from the locations listed below.</property> | 901 | </child> |
2895 | 900 | <property name="single_line_mode">True</property> | 902 | </widget> |
2896 | 901 | </widget> | 903 | </child> |
2897 | 902 | <packing> | 904 | </widget> |
2898 | 903 | <property name="expand">False</property> | 905 | </child> |
2899 | 904 | <property name="padding">5</property> | 906 | |
2900 | 905 | <property name="position">0</property> | 907 | <child> |
2901 | 906 | </packing> | 908 | <widget class="GtkLabel" id="label_weather_options"> |
2902 | 907 | </child> | 909 | <property name="visible">True</property> |
2903 | 908 | <child> | 910 | <property name="label" translatable="yes"><b>Weather locations</b></property> |
2904 | 909 | <widget class="GtkHBox" id="hbox4"> | 911 | <property name="use_underline">False</property> |
2905 | 910 | <property name="visible">True</property> | 912 | <property name="use_markup">True</property> |
2906 | 911 | <child> | 913 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
2907 | 912 | <widget class="GtkScrolledWindow" id="scrolledwindow3"> | 914 | <property name="wrap">False</property> |
2908 | 913 | <property name="visible">True</property> | 915 | <property name="selectable">False</property> |
2909 | 914 | <property name="can_focus">True</property> | 916 | <property name="xalign">0.5</property> |
2910 | 915 | <property name="hscrollbar_policy">automatic</property> | 917 | <property name="yalign">0.5</property> |
2911 | 916 | <property name="vscrollbar_policy">automatic</property> | 918 | <property name="xpad">0</property> |
2912 | 917 | <property name="shadow_type">in</property> | 919 | <property name="ypad">0</property> |
2913 | 918 | <child> | 920 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2914 | 919 | <widget class="GtkTreeView" id="treeview_locations"> | 921 | <property name="width_chars">-1</property> |
2915 | 920 | <property name="visible">True</property> | 922 | <property name="single_line_mode">False</property> |
2916 | 921 | <property name="can_focus">True</property> | 923 | <property name="angle">0</property> |
2917 | 922 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> | 924 | </widget> |
2918 | 923 | <property name="enable_search">False</property> | 925 | <packing> |
2919 | 924 | </widget> | 926 | <property name="type">label_item</property> |
2920 | 925 | </child> | 927 | </packing> |
2921 | 926 | </widget> | 928 | </child> |
2922 | 927 | <packing> | 929 | </widget> |
2923 | 928 | <property name="position">0</property> | 930 | <packing> |
2924 | 929 | </packing> | 931 | <property name="padding">0</property> |
2925 | 930 | </child> | 932 | <property name="expand">True</property> |
2926 | 931 | <child> | 933 | <property name="fill">True</property> |
2927 | 932 | <widget class="GtkVButtonBox" id="vbuttonbox3"> | 934 | </packing> |
2928 | 933 | <property name="visible">True</property> | 935 | </child> |
2929 | 934 | <property name="spacing">5</property> | 936 | |
2930 | 935 | <property name="layout_style">start</property> | 937 | <child> |
2931 | 936 | <child> | 938 | <widget class="GtkFrame" id="frame4"> |
2932 | 937 | <widget class="GtkButton" id="button_add_weather"> | 939 | <property name="visible">True</property> |
2933 | 938 | <property name="label">gtk-new</property> | 940 | <property name="label_xalign">0</property> |
2934 | 939 | <property name="visible">True</property> | 941 | <property name="label_yalign">0.5</property> |
2935 | 940 | <property name="can_focus">True</property> | 942 | <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property> |
2936 | 941 | <property name="has_focus">True</property> | 943 | |
2937 | 942 | <property name="can_default">True</property> | 944 | <child> |
2938 | 943 | <property name="has_default">True</property> | 945 | <widget class="GtkAlignment" id="alignment7"> |
2939 | 944 | <property name="receives_default">False</property> | 946 | <property name="visible">True</property> |
2940 | 945 | <property name="use_stock">True</property> | 947 | <property name="xalign">0.5</property> |
2941 | 946 | <signal name="clicked" handler="on_button_add_weather_clicked"/> | 948 | <property name="yalign">0.5</property> |
2942 | 947 | </widget> | 949 | <property name="xscale">1</property> |
2943 | 948 | <packing> | 950 | <property name="yscale">1</property> |
2944 | 949 | <property name="expand">False</property> | 951 | <property name="top_padding">0</property> |
2945 | 950 | <property name="fill">False</property> | 952 | <property name="bottom_padding">0</property> |
2946 | 951 | <property name="position">0</property> | 953 | <property name="left_padding">12</property> |
2947 | 952 | </packing> | 954 | <property name="right_padding">0</property> |
2948 | 953 | </child> | 955 | |
2949 | 954 | <child> | 956 | <child> |
2950 | 955 | <widget class="GtkButton" id="button_remove_weather"> | 957 | <widget class="GtkVBox" id="vbox7"> |
2951 | 956 | <property name="label">gtk-clear</property> | 958 | <property name="visible">True</property> |
2952 | 957 | <property name="visible">True</property> | 959 | <property name="homogeneous">False</property> |
2953 | 958 | <property name="can_focus">True</property> | 960 | <property name="spacing">0</property> |
2954 | 959 | <property name="receives_default">False</property> | 961 | |
2955 | 960 | <property name="use_stock">True</property> | 962 | <child> |
2956 | 961 | <signal name="clicked" handler="on_button_remove_weather_clicked"/> | 963 | <widget class="GtkCheckButton" id="weather_display_checkbox"> |
2957 | 962 | </widget> | 964 | <property name="visible">True</property> |
2958 | 963 | <packing> | 965 | <property name="can_focus">True</property> |
2959 | 964 | <property name="expand">False</property> | 966 | <property name="label" translatable="yes">Display weather option in main menu</property> |
2960 | 965 | <property name="fill">False</property> | 967 | <property name="use_underline">True</property> |
2961 | 966 | <property name="position">1</property> | 968 | <property name="relief">GTK_RELIEF_NORMAL</property> |
2962 | 967 | </packing> | 969 | <property name="focus_on_click">True</property> |
2963 | 968 | </child> | 970 | <property name="active">True</property> |
2964 | 969 | </widget> | 971 | <property name="inconsistent">False</property> |
2965 | 970 | <packing> | 972 | <property name="draw_indicator">True</property> |
2966 | 971 | <property name="expand">False</property> | 973 | <signal name="toggled" handler="on_weather_display_checkbox_toggled"/> |
2967 | 972 | <property name="padding">5</property> | 974 | </widget> |
2968 | 973 | <property name="position">1</property> | 975 | <packing> |
2969 | 974 | </packing> | 976 | <property name="padding">0</property> |
2970 | 975 | </child> | 977 | <property name="expand">True</property> |
2971 | 976 | </widget> | 978 | <property name="fill">False</property> |
2972 | 977 | <packing> | 979 | </packing> |
2973 | 978 | <property name="position">1</property> | 980 | </child> |
2974 | 979 | </packing> | 981 | </widget> |
2975 | 980 | </child> | 982 | </child> |
2976 | 981 | </widget> | 983 | </widget> |
2977 | 982 | </child> | 984 | </child> |
2978 | 983 | </widget> | 985 | |
2979 | 984 | </child> | 986 | <child> |
2980 | 985 | <child> | 987 | <widget class="GtkLabel" id="label7"> |
2981 | 986 | <widget class="GtkLabel" id="label_weather_options"> | 988 | <property name="visible">True</property> |
2982 | 987 | <property name="visible">True</property> | 989 | <property name="label" translatable="yes"><b>Weather settings</b></property> |
2983 | 988 | <property name="label" translatable="yes"><b>Weather locations</b></property> | 990 | <property name="use_underline">False</property> |
2984 | 989 | <property name="use_markup">True</property> | 991 | <property name="use_markup">True</property> |
2985 | 990 | </widget> | 992 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
2986 | 991 | <packing> | 993 | <property name="wrap">False</property> |
2987 | 992 | <property name="type">label_item</property> | 994 | <property name="selectable">False</property> |
2988 | 993 | </packing> | 995 | <property name="xalign">0.5</property> |
2989 | 994 | </child> | 996 | <property name="yalign">0.5</property> |
2990 | 995 | </widget> | 997 | <property name="xpad">0</property> |
2991 | 996 | <packing> | 998 | <property name="ypad">0</property> |
2992 | 997 | <property name="position">0</property> | 999 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
2993 | 998 | </packing> | 1000 | <property name="width_chars">-1</property> |
2994 | 999 | </child> | 1001 | <property name="single_line_mode">False</property> |
2995 | 1000 | <child> | 1002 | <property name="angle">0</property> |
2996 | 1001 | <widget class="GtkFrame" id="frame4"> | 1003 | </widget> |
2997 | 1002 | <property name="visible">True</property> | 1004 | <packing> |
2998 | 1003 | <property name="label_xalign">0</property> | 1005 | <property name="type">label_item</property> |
2999 | 1004 | <property name="shadow_type">none</property> | 1006 | </packing> |
3000 | 1005 | <child> | 1007 | </child> |
3001 | 1006 | <widget class="GtkAlignment" id="alignment7"> | 1008 | </widget> |
3002 | 1007 | <property name="visible">True</property> | 1009 | <packing> |
3003 | 1008 | <property name="left_padding">12</property> | 1010 | <property name="padding">0</property> |
3004 | 1009 | <child> | 1011 | <property name="expand">True</property> |
3005 | 1010 | <widget class="GtkVBox" id="vbox7"> | 1012 | <property name="fill">True</property> |
3006 | 1011 | <property name="visible">True</property> | 1013 | </packing> |
3007 | 1012 | <child> | 1014 | </child> |
3008 | 1013 | <widget class="GtkCheckButton" id="weather_display_checkbox"> | 1015 | </widget> |
3009 | 1014 | <property name="label" translatable="yes">Display weather option in main menu</property> | 1016 | <packing> |
3010 | 1015 | <property name="visible">True</property> | 1017 | <property name="tab_expand">False</property> |
3011 | 1016 | <property name="can_focus">True</property> | 1018 | <property name="tab_fill">True</property> |
3012 | 1017 | <property name="receives_default">False</property> | 1019 | </packing> |
3013 | 1018 | <property name="use_underline">True</property> | 1020 | </child> |
3014 | 1019 | <property name="active">True</property> | 1021 | |
3015 | 1020 | <property name="draw_indicator">True</property> | 1022 | <child> |
3016 | 1021 | <signal name="toggled" handler="on_weather_display_checkbox_toggled"/> | 1023 | <widget class="GtkLabel" id="label_weather"> |
3017 | 1022 | </widget> | 1024 | <property name="visible">True</property> |
3018 | 1023 | <packing> | 1025 | <property name="label" translatable="yes">Weather</property> |
3019 | 1024 | <property name="fill">False</property> | 1026 | <property name="use_underline">False</property> |
3020 | 1025 | <property name="position">0</property> | 1027 | <property name="use_markup">False</property> |
3021 | 1026 | </packing> | 1028 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
3022 | 1027 | </child> | 1029 | <property name="wrap">False</property> |
3023 | 1028 | </widget> | 1030 | <property name="selectable">False</property> |
3024 | 1029 | </child> | 1031 | <property name="xalign">0.5</property> |
3025 | 1030 | </widget> | 1032 | <property name="yalign">0.409999996424</property> |
3026 | 1031 | </child> | 1033 | <property name="xpad">0</property> |
3027 | 1032 | <child> | 1034 | <property name="ypad">0</property> |
3028 | 1033 | <widget class="GtkLabel" id="label7"> | 1035 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
3029 | 1034 | <property name="visible">True</property> | 1036 | <property name="width_chars">-1</property> |
3030 | 1035 | <property name="label" translatable="yes"><b>Weather settings</b></property> | 1037 | <property name="single_line_mode">False</property> |
3031 | 1036 | <property name="use_markup">True</property> | 1038 | <property name="angle">0</property> |
3032 | 1037 | </widget> | 1039 | </widget> |
3033 | 1038 | <packing> | 1040 | <packing> |
3034 | 1039 | <property name="type">label_item</property> | 1041 | <property name="type">tab</property> |
3035 | 1040 | </packing> | 1042 | </packing> |
3036 | 1041 | </child> | 1043 | </child> |
3037 | 1042 | </widget> | 1044 | |
3038 | 1043 | <packing> | 1045 | <child> |
3039 | 1044 | <property name="position">1</property> | 1046 | <widget class="GtkFrame" id="frame2"> |
3040 | 1045 | </packing> | 1047 | <property name="border_width">5</property> |
3041 | 1046 | </child> | 1048 | <property name="visible">True</property> |
3042 | 1047 | </widget> | 1049 | <property name="label_xalign">0</property> |
3043 | 1048 | <packing> | 1050 | <property name="label_yalign">0.5</property> |
3044 | 1049 | <property name="position">4</property> | 1051 | <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property> |
3045 | 1050 | </packing> | 1052 | |
3046 | 1051 | </child> | 1053 | <child> |
3047 | 1052 | <child> | 1054 | <widget class="GtkAlignment" id="alignment3"> |
3048 | 1053 | <widget class="GtkLabel" id="label_weather"> | 1055 | <property name="visible">True</property> |
3049 | 1054 | <property name="visible">True</property> | 1056 | <property name="xalign">0.5</property> |
3050 | 1055 | <property name="yalign">0.40999999642372131</property> | 1057 | <property name="yalign">0.5</property> |
3051 | 1056 | <property name="label" translatable="yes">Weather</property> | 1058 | <property name="xscale">1</property> |
3052 | 1057 | </widget> | 1059 | <property name="yscale">1</property> |
3053 | 1058 | <packing> | 1060 | <property name="top_padding">0</property> |
3054 | 1059 | <property name="position">4</property> | 1061 | <property name="bottom_padding">0</property> |
3055 | 1060 | <property name="tab_fill">False</property> | 1062 | <property name="left_padding">12</property> |
3056 | 1061 | <property name="type">tab</property> | 1063 | <property name="right_padding">0</property> |
3057 | 1062 | </packing> | 1064 | |
3058 | 1063 | </child> | 1065 | <child> |
3059 | 1064 | <child> | 1066 | <widget class="GtkVBox" id="vbox3"> |
3060 | 1065 | <widget class="GtkFrame" id="frame2"> | 1067 | <property name="visible">True</property> |
3061 | 1066 | <property name="visible">True</property> | 1068 | <property name="homogeneous">False</property> |
3062 | 1067 | <property name="border_width">5</property> | 1069 | <property name="spacing">0</property> |
3063 | 1068 | <property name="label_xalign">0</property> | 1070 | |
3064 | 1069 | <property name="shadow_type">none</property> | 1071 | <child> |
3065 | 1070 | <child> | 1072 | <widget class="GtkLabel" id="label5"> |
3066 | 1071 | <widget class="GtkAlignment" id="alignment3"> | 1073 | <property name="visible">True</property> |
3067 | 1072 | <property name="visible">True</property> | 1074 | <property name="label" translatable="yes">Rebuilding cache means that all data is removed and then |
1988 | 1073 | <property name="left_padding">12</property> | ||
1989 | 1074 | <child> | ||
1990 | 1075 | <widget class="GtkVBox" id="vbox3"> | ||
1991 | 1076 | <property name="visible">True</property> | ||
1992 | 1077 | <child> | ||
1993 | 1078 | <widget class="GtkLabel" id="label5"> | ||
1994 | 1079 | <property name="visible">True</property> | ||
1995 | 1080 | <property name="xpad">7</property> | ||
1996 | 1081 | <property name="ypad">7</property> | ||
1997 | 1082 | <property name="label" translatable="yes">Rebuilding cache means that all data is removed and then | ||
3068 | 1083 | folders are indexed again. This fixes broken media cache.</property> | 1075 | folders are indexed again. This fixes broken media cache.</property> |
3466 | 1084 | </widget> | 1076 | <property name="use_underline">False</property> |
3467 | 1085 | <packing> | 1077 | <property name="use_markup">False</property> |
3468 | 1086 | <property name="position">0</property> | 1078 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
3469 | 1087 | </packing> | 1079 | <property name="wrap">False</property> |
3470 | 1088 | </child> | 1080 | <property name="selectable">False</property> |
3471 | 1089 | <child> | 1081 | <property name="xalign">0.5</property> |
3472 | 1090 | <widget class="GtkButton" id="button_video_rebuild"> | 1082 | <property name="yalign">0.5</property> |
3473 | 1091 | <property name="label" translatable="yes">Rebuild video cache</property> | 1083 | <property name="xpad">7</property> |
3474 | 1092 | <property name="visible">True</property> | 1084 | <property name="ypad">7</property> |
3475 | 1093 | <property name="can_focus">True</property> | 1085 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
3476 | 1094 | <property name="receives_default">False</property> | 1086 | <property name="width_chars">-1</property> |
3477 | 1095 | <property name="border_width">5</property> | 1087 | <property name="single_line_mode">False</property> |
3478 | 1096 | <property name="use_underline">True</property> | 1088 | <property name="angle">0</property> |
3479 | 1097 | <signal name="clicked" handler="on_button_video_rebuild_clicked"/> | 1089 | </widget> |
3480 | 1098 | </widget> | 1090 | <packing> |
3481 | 1099 | <packing> | 1091 | <property name="padding">0</property> |
3482 | 1100 | <property name="position">1</property> | 1092 | <property name="expand">True</property> |
3483 | 1101 | </packing> | 1093 | <property name="fill">True</property> |
3484 | 1102 | </child> | 1094 | </packing> |
3485 | 1103 | <child> | 1095 | </child> |
3486 | 1104 | <widget class="GtkButton" id="button_music_rebuild"> | 1096 | |
3487 | 1105 | <property name="label" translatable="yes">Rebuild music cache</property> | 1097 | <child> |
3488 | 1106 | <property name="visible">True</property> | 1098 | <widget class="GtkButton" id="button_video_rebuild"> |
3489 | 1107 | <property name="can_focus">True</property> | 1099 | <property name="border_width">5</property> |
3490 | 1108 | <property name="receives_default">False</property> | 1100 | <property name="visible">True</property> |
3491 | 1109 | <property name="border_width">5</property> | 1101 | <property name="can_focus">True</property> |
3492 | 1110 | <property name="use_underline">True</property> | 1102 | <property name="label" translatable="yes">Rebuild video cache</property> |
3493 | 1111 | <signal name="clicked" handler="on_button_music_rebuild_clicked"/> | 1103 | <property name="use_underline">True</property> |
3494 | 1112 | </widget> | 1104 | <property name="relief">GTK_RELIEF_NORMAL</property> |
3495 | 1113 | <packing> | 1105 | <property name="focus_on_click">True</property> |
3496 | 1114 | <property name="position">2</property> | 1106 | <signal name="clicked" handler="on_button_video_rebuild_clicked"/> |
3497 | 1115 | </packing> | 1107 | </widget> |
3498 | 1116 | </child> | 1108 | <packing> |
3499 | 1117 | <child> | 1109 | <property name="padding">0</property> |
3500 | 1118 | <widget class="GtkButton" id="button_image_rebuild"> | 1110 | <property name="expand">True</property> |
3501 | 1119 | <property name="label" translatable="yes">Rebuild image cache</property> | 1111 | <property name="fill">True</property> |
3502 | 1120 | <property name="visible">True</property> | 1112 | </packing> |
3503 | 1121 | <property name="can_focus">True</property> | 1113 | </child> |
3504 | 1122 | <property name="receives_default">False</property> | 1114 | |
3505 | 1123 | <property name="border_width">5</property> | 1115 | <child> |
3506 | 1124 | <property name="use_underline">True</property> | 1116 | <widget class="GtkButton" id="button_music_rebuild"> |
3507 | 1125 | <signal name="clicked" handler="on_button_image_rebuild_clicked"/> | 1117 | <property name="border_width">5</property> |
3508 | 1126 | </widget> | 1118 | <property name="visible">True</property> |
3509 | 1127 | <packing> | 1119 | <property name="can_focus">True</property> |
3510 | 1128 | <property name="position">3</property> | 1120 | <property name="label" translatable="yes">Rebuild music cache</property> |
3511 | 1129 | </packing> | 1121 | <property name="use_underline">True</property> |
3512 | 1130 | </child> | 1122 | <property name="relief">GTK_RELIEF_NORMAL</property> |
3513 | 1131 | <child> | 1123 | <property name="focus_on_click">True</property> |
3514 | 1132 | <widget class="GtkButton" id="button_feed_rebuild"> | 1124 | <signal name="clicked" handler="on_button_music_rebuild_clicked"/> |
3515 | 1133 | <property name="label" translatable="yes">Rebuild RSS-feed cache</property> | 1125 | </widget> |
3516 | 1134 | <property name="visible">True</property> | 1126 | <packing> |
3517 | 1135 | <property name="can_focus">True</property> | 1127 | <property name="padding">0</property> |
3518 | 1136 | <property name="receives_default">False</property> | 1128 | <property name="expand">True</property> |
3519 | 1137 | <property name="border_width">5</property> | 1129 | <property name="fill">True</property> |
3520 | 1138 | <property name="use_underline">True</property> | 1130 | </packing> |
3521 | 1139 | <property name="focus_on_click">False</property> | 1131 | </child> |
3522 | 1140 | <signal name="clicked" handler="on_button_feed_rebuild_clicked"/> | 1132 | |
3523 | 1141 | </widget> | 1133 | <child> |
3524 | 1142 | <packing> | 1134 | <widget class="GtkButton" id="button_image_rebuild"> |
3525 | 1143 | <property name="position">4</property> | 1135 | <property name="border_width">5</property> |
3526 | 1144 | </packing> | 1136 | <property name="visible">True</property> |
3527 | 1145 | </child> | 1137 | <property name="can_focus">True</property> |
3528 | 1146 | </widget> | 1138 | <property name="label" translatable="yes">Rebuild image cache</property> |
3529 | 1147 | </child> | 1139 | <property name="use_underline">True</property> |
3530 | 1148 | </widget> | 1140 | <property name="relief">GTK_RELIEF_NORMAL</property> |
3531 | 1149 | </child> | 1141 | <property name="focus_on_click">True</property> |
3532 | 1150 | <child> | 1142 | <signal name="clicked" handler="on_button_image_rebuild_clicked"/> |
3533 | 1151 | <widget class="GtkLabel" id="label4"> | 1143 | </widget> |
3534 | 1152 | <property name="visible">True</property> | 1144 | <packing> |
3535 | 1153 | <property name="label" translatable="yes"><b>Media cache management</b></property> | 1145 | <property name="padding">0</property> |
3536 | 1154 | <property name="use_markup">True</property> | 1146 | <property name="expand">True</property> |
3537 | 1155 | </widget> | 1147 | <property name="fill">True</property> |
3538 | 1156 | <packing> | 1148 | </packing> |
3539 | 1157 | <property name="type">label_item</property> | 1149 | </child> |
3540 | 1158 | </packing> | 1150 | |
3541 | 1159 | </child> | 1151 | <child> |
3542 | 1160 | </widget> | 1152 | <widget class="GtkButton" id="button_feed_rebuild"> |
3543 | 1161 | <packing> | 1153 | <property name="border_width">5</property> |
3544 | 1162 | <property name="position">5</property> | 1154 | <property name="visible">True</property> |
3545 | 1163 | </packing> | 1155 | <property name="can_focus">True</property> |
3546 | 1164 | </child> | 1156 | <property name="label" translatable="yes">Rebuild RSS-feed cache</property> |
3547 | 1165 | <child> | 1157 | <property name="use_underline">True</property> |
3548 | 1166 | <widget class="GtkLabel" id="label3"> | 1158 | <property name="relief">GTK_RELIEF_NORMAL</property> |
3549 | 1167 | <property name="visible">True</property> | 1159 | <property name="focus_on_click">False</property> |
3550 | 1168 | <property name="label" translatable="yes">Reset</property> | 1160 | <signal name="clicked" handler="on_button_feed_rebuild_clicked"/> |
3551 | 1169 | </widget> | 1161 | </widget> |
3552 | 1170 | <packing> | 1162 | <packing> |
3553 | 1171 | <property name="position">5</property> | 1163 | <property name="padding">0</property> |
3554 | 1172 | <property name="tab_fill">False</property> | 1164 | <property name="expand">True</property> |
3555 | 1173 | <property name="type">tab</property> | 1165 | <property name="fill">True</property> |
3556 | 1174 | </packing> | 1166 | </packing> |
3557 | 1175 | </child> | 1167 | </child> |
3558 | 1176 | </widget> | 1168 | </widget> |
3559 | 1177 | <packing> | 1169 | </child> |
3560 | 1178 | <property name="position">1</property> | 1170 | </widget> |
3561 | 1179 | </packing> | 1171 | </child> |
3562 | 1180 | </child> | 1172 | |
3563 | 1181 | <child internal-child="action_area"> | 1173 | <child> |
3564 | 1182 | <widget class="GtkHButtonBox" id="dialog-closebutton-area"> | 1174 | <widget class="GtkLabel" id="label4"> |
3565 | 1183 | <property name="visible">True</property> | 1175 | <property name="visible">True</property> |
3566 | 1184 | <property name="layout_style">end</property> | 1176 | <property name="label" translatable="yes"><b>Media cache management</b></property> |
3567 | 1185 | <child> | 1177 | <property name="use_underline">False</property> |
3568 | 1186 | <widget class="GtkButton" id="close_button"> | 1178 | <property name="use_markup">True</property> |
3569 | 1187 | <property name="label">gtk-close</property> | 1179 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
3570 | 1188 | <property name="visible">True</property> | 1180 | <property name="wrap">False</property> |
3571 | 1189 | <property name="can_focus">True</property> | 1181 | <property name="selectable">False</property> |
3572 | 1190 | <property name="receives_default">False</property> | 1182 | <property name="xalign">0.5</property> |
3573 | 1191 | <property name="use_stock">True</property> | 1183 | <property name="yalign">0.5</property> |
3574 | 1192 | <signal name="clicked" handler="on_close_button_clicked"/> | 1184 | <property name="xpad">0</property> |
3575 | 1193 | </widget> | 1185 | <property name="ypad">0</property> |
3576 | 1194 | <packing> | 1186 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
3577 | 1195 | <property name="expand">False</property> | 1187 | <property name="width_chars">-1</property> |
3578 | 1196 | <property name="fill">False</property> | 1188 | <property name="single_line_mode">False</property> |
3579 | 1197 | <property name="position">0</property> | 1189 | <property name="angle">0</property> |
3580 | 1198 | </packing> | 1190 | </widget> |
3581 | 1199 | </child> | 1191 | <packing> |
3582 | 1200 | </widget> | 1192 | <property name="type">label_item</property> |
3583 | 1201 | <packing> | 1193 | </packing> |
3584 | 1202 | <property name="expand">False</property> | 1194 | </child> |
3585 | 1203 | <property name="pack_type">end</property> | 1195 | </widget> |
3586 | 1204 | <property name="position">0</property> | 1196 | <packing> |
3587 | 1205 | </packing> | 1197 | <property name="tab_expand">False</property> |
3588 | 1206 | </child> | 1198 | <property name="tab_fill">True</property> |
3589 | 1207 | </widget> | 1199 | </packing> |
3590 | 1208 | </child> | 1200 | </child> |
3591 | 1209 | </widget> | 1201 | |
3592 | 1210 | <widget class="GtkDialog" id="url_dialog"> | 1202 | <child> |
3593 | 1211 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> | 1203 | <widget class="GtkLabel" id="label3"> |
3594 | 1212 | <property name="border_width">5</property> | 1204 | <property name="visible">True</property> |
3595 | 1213 | <property name="resizable">False</property> | 1205 | <property name="label" translatable="yes">Reset</property> |
3596 | 1214 | <property name="modal">True</property> | 1206 | <property name="use_underline">False</property> |
3597 | 1215 | <property name="window_position">center-on-parent</property> | 1207 | <property name="use_markup">False</property> |
3598 | 1216 | <property name="destroy_with_parent">True</property> | 1208 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
3599 | 1217 | <property name="icon_name">gtk-edit</property> | 1209 | <property name="wrap">False</property> |
3600 | 1218 | <property name="type_hint">normal</property> | 1210 | <property name="selectable">False</property> |
3601 | 1219 | <property name="skip_taskbar_hint">True</property> | 1211 | <property name="xalign">0.5</property> |
3602 | 1220 | <property name="has_separator">False</property> | 1212 | <property name="yalign">0.5</property> |
3603 | 1221 | <signal name="delete_event" handler="on_url_dialog_delete_event"/> | 1213 | <property name="xpad">0</property> |
3604 | 1222 | <child internal-child="vbox"> | 1214 | <property name="ypad">0</property> |
3605 | 1223 | <widget class="GtkVBox" id="dialog-vbox2"> | 1215 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
3606 | 1224 | <property name="visible">True</property> | 1216 | <property name="width_chars">-1</property> |
3607 | 1225 | <property name="spacing">2</property> | 1217 | <property name="single_line_mode">False</property> |
3608 | 1226 | <child> | 1218 | <property name="angle">0</property> |
3609 | 1227 | <widget class="GtkHBox" id="hbox1"> | 1219 | </widget> |
3610 | 1228 | <property name="visible">True</property> | 1220 | <packing> |
3611 | 1229 | <child> | 1221 | <property name="type">tab</property> |
3612 | 1230 | <widget class="GtkLabel" id="label1"> | 1222 | </packing> |
3613 | 1231 | <property name="visible">True</property> | 1223 | </child> |
3614 | 1232 | <property name="label" translatable="yes">URL:</property> | 1224 | </widget> |
3615 | 1233 | </widget> | 1225 | <packing> |
3616 | 1234 | <packing> | 1226 | <property name="padding">0</property> |
3617 | 1235 | <property name="expand">False</property> | 1227 | <property name="expand">True</property> |
3618 | 1236 | <property name="padding">5</property> | 1228 | <property name="fill">True</property> |
3619 | 1237 | <property name="position">0</property> | 1229 | </packing> |
3620 | 1238 | </packing> | 1230 | </child> |
3621 | 1239 | </child> | 1231 | </widget> |
3622 | 1240 | <child> | 1232 | </child> |
3623 | 1241 | <widget class="GtkEntry" id="url_entry"> | 1233 | </widget> |
3624 | 1242 | <property name="visible">True</property> | 1234 | |
3625 | 1243 | <property name="can_focus">True</property> | 1235 | <widget class="GtkDialog" id="url_dialog"> |
3626 | 1244 | <property name="has_focus">True</property> | 1236 | <property name="border_width">5</property> |
3627 | 1245 | <property name="can_default">True</property> | 1237 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
3628 | 1246 | <property name="has_default">True</property> | 1238 | <property name="title" translatable="yes"></property> |
3629 | 1247 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> | 1239 | <property name="type">GTK_WINDOW_TOPLEVEL</property> |
3630 | 1248 | </widget> | 1240 | <property name="window_position">GTK_WIN_POS_NONE</property> |
3631 | 1249 | <packing> | 1241 | <property name="modal">True</property> |
3632 | 1250 | <property name="position">1</property> | 1242 | <property name="resizable">False</property> |
3633 | 1251 | </packing> | 1243 | <property name="destroy_with_parent">True</property> |
3634 | 1252 | </child> | 1244 | <property name="icon_name">gtk-edit</property> |
3635 | 1253 | </widget> | 1245 | <property name="decorated">True</property> |
3636 | 1254 | <packing> | 1246 | <property name="skip_taskbar_hint">True</property> |
3637 | 1255 | <property name="position">1</property> | 1247 | <property name="skip_pager_hint">False</property> |
3638 | 1256 | </packing> | 1248 | <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property> |
3639 | 1257 | </child> | 1249 | <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> |
3640 | 1258 | <child internal-child="action_area"> | 1250 | <property name="focus_on_map">True</property> |
3641 | 1259 | <widget class="GtkHButtonBox" id="dialog-action_area2"> | 1251 | <property name="urgency_hint">False</property> |
3642 | 1260 | <property name="visible">True</property> | 1252 | <property name="has_separator">False</property> |
3643 | 1261 | <property name="layout_style">end</property> | 1253 | <signal name="delete_event" handler="on_url_dialog_delete_event"/> |
3644 | 1262 | <child> | 1254 | |
3645 | 1263 | <widget class="GtkButton" id="url_dialog_cancel_button"> | 1255 | <child internal-child="vbox"> |
3646 | 1264 | <property name="label">gtk-cancel</property> | 1256 | <widget class="GtkVBox" id="dialog-vbox2"> |
3647 | 1265 | <property name="visible">True</property> | 1257 | <property name="visible">True</property> |
3648 | 1266 | <property name="can_focus">True</property> | 1258 | <property name="homogeneous">False</property> |
3649 | 1267 | <property name="receives_default">False</property> | 1259 | <property name="spacing">2</property> |
3650 | 1268 | <property name="use_stock">True</property> | 1260 | |
3651 | 1269 | <signal name="clicked" handler="on_url_dialog_cancel_button_clicked"/> | 1261 | <child internal-child="action_area"> |
3652 | 1270 | </widget> | 1262 | <widget class="GtkHButtonBox" id="dialog-action_area2"> |
3653 | 1271 | <packing> | 1263 | <property name="visible">True</property> |
3654 | 1272 | <property name="expand">False</property> | 1264 | <property name="layout_style">GTK_BUTTONBOX_END</property> |
3655 | 1273 | <property name="fill">False</property> | 1265 | |
3656 | 1274 | <property name="position">0</property> | 1266 | <child> |
3657 | 1275 | </packing> | 1267 | <widget class="GtkButton" id="url_dialog_cancel_button"> |
3658 | 1276 | </child> | 1268 | <property name="visible">True</property> |
3659 | 1277 | <child> | 1269 | <property name="can_focus">True</property> |
3660 | 1278 | <widget class="GtkButton" id="url_dialog_ok_button"> | 1270 | <property name="label">gtk-cancel</property> |
3661 | 1279 | <property name="label">gtk-ok</property> | 1271 | <property name="use_stock">True</property> |
3662 | 1280 | <property name="visible">True</property> | 1272 | <property name="relief">GTK_RELIEF_NORMAL</property> |
3663 | 1281 | <property name="can_focus">True</property> | 1273 | <property name="focus_on_click">True</property> |
3664 | 1282 | <property name="receives_default">False</property> | 1274 | <property name="response_id">0</property> |
3665 | 1283 | <property name="use_stock">True</property> | 1275 | <signal name="clicked" handler="on_url_dialog_cancel_button_clicked"/> |
3666 | 1284 | <signal name="clicked" handler="on_url_dialog_ok_button_clicked"/> | 1276 | </widget> |
3667 | 1285 | </widget> | 1277 | </child> |
3668 | 1286 | <packing> | 1278 | |
3669 | 1287 | <property name="expand">False</property> | 1279 | <child> |
3670 | 1288 | <property name="fill">False</property> | 1280 | <widget class="GtkButton" id="url_dialog_ok_button"> |
3671 | 1289 | <property name="position">1</property> | 1281 | <property name="visible">True</property> |
3672 | 1290 | </packing> | 1282 | <property name="can_focus">True</property> |
3673 | 1291 | </child> | 1283 | <property name="label">gtk-ok</property> |
3674 | 1292 | </widget> | 1284 | <property name="use_stock">True</property> |
3675 | 1293 | <packing> | 1285 | <property name="relief">GTK_RELIEF_NORMAL</property> |
3676 | 1294 | <property name="expand">False</property> | 1286 | <property name="focus_on_click">True</property> |
3677 | 1295 | <property name="pack_type">end</property> | 1287 | <property name="response_id">0</property> |
3678 | 1296 | <property name="position">0</property> | 1288 | <signal name="clicked" handler="on_url_dialog_ok_button_clicked"/> |
3679 | 1297 | </packing> | 1289 | </widget> |
3680 | 1298 | </child> | 1290 | </child> |
3681 | 1299 | </widget> | 1291 | </widget> |
3682 | 1300 | </child> | 1292 | <packing> |
3683 | 1301 | </widget> | 1293 | <property name="padding">0</property> |
3684 | 1302 | <widget class="GtkDialog" id="weather_search_dialog"> | 1294 | <property name="expand">False</property> |
3685 | 1303 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> | 1295 | <property name="fill">True</property> |
3686 | 1304 | <property name="border_width">5</property> | 1296 | <property name="pack_type">GTK_PACK_END</property> |
3687 | 1305 | <property name="window_position">center-on-parent</property> | 1297 | </packing> |
3688 | 1306 | <property name="type_hint">dialog</property> | 1298 | </child> |
3689 | 1307 | <property name="has_separator">False</property> | 1299 | |
3690 | 1308 | <child internal-child="vbox"> | 1300 | <child> |
3691 | 1309 | <widget class="GtkVBox" id="vbox20"> | 1301 | <widget class="GtkHBox" id="hbox1"> |
3692 | 1310 | <property name="visible">True</property> | 1302 | <property name="visible">True</property> |
3693 | 1311 | <property name="spacing">2</property> | 1303 | <property name="homogeneous">False</property> |
3694 | 1312 | <child> | 1304 | <property name="spacing">0</property> |
3695 | 1313 | <widget class="GtkVBox" id="vbox21"> | 1305 | |
3696 | 1314 | <property name="visible">True</property> | 1306 | <child> |
3697 | 1315 | <child> | 1307 | <widget class="GtkLabel" id="label1"> |
3698 | 1316 | <widget class="GtkFrame" id="frame6"> | 1308 | <property name="visible">True</property> |
3699 | 1317 | <property name="visible">True</property> | 1309 | <property name="label" translatable="yes">URL:</property> |
3700 | 1318 | <property name="label_xalign">0</property> | 1310 | <property name="use_underline">False</property> |
3701 | 1319 | <property name="shadow_type">none</property> | 1311 | <property name="use_markup">False</property> |
3702 | 1320 | <child> | 1312 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
3703 | 1321 | <widget class="GtkAlignment" id="alignment16"> | 1313 | <property name="wrap">False</property> |
3704 | 1322 | <property name="visible">True</property> | 1314 | <property name="selectable">False</property> |
3705 | 1323 | <property name="top_padding">5</property> | 1315 | <property name="xalign">0.5</property> |
3706 | 1324 | <property name="left_padding">12</property> | 1316 | <property name="yalign">0.5</property> |
3707 | 1325 | <child> | 1317 | <property name="xpad">0</property> |
3708 | 1326 | <widget class="GtkHBox" id="hbox18"> | 1318 | <property name="ypad">0</property> |
3709 | 1327 | <property name="visible">True</property> | 1319 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
3710 | 1328 | <child> | 1320 | <property name="width_chars">-1</property> |
3711 | 1329 | <widget class="GtkLabel" id="label19"> | 1321 | <property name="single_line_mode">False</property> |
3712 | 1330 | <property name="visible">True</property> | 1322 | <property name="angle">0</property> |
3713 | 1331 | <property name="label" translatable="yes">City:</property> | 1323 | </widget> |
3714 | 1332 | </widget> | 1324 | <packing> |
3715 | 1333 | <packing> | 1325 | <property name="padding">5</property> |
3716 | 1334 | <property name="expand">False</property> | 1326 | <property name="expand">False</property> |
3717 | 1335 | <property name="position">0</property> | 1327 | <property name="fill">True</property> |
3718 | 1336 | </packing> | 1328 | </packing> |
3719 | 1337 | </child> | 1329 | </child> |
3720 | 1338 | <child> | 1330 | |
3721 | 1339 | <widget class="GtkEntry" id="location_entry"> | 1331 | <child> |
3722 | 1340 | <property name="visible">True</property> | 1332 | <widget class="GtkEntry" id="url_entry"> |
3723 | 1341 | <property name="can_focus">True</property> | 1333 | <property name="visible">True</property> |
3724 | 1342 | <property name="has_focus">True</property> | 1334 | <property name="can_default">True</property> |
3725 | 1343 | <property name="can_default">True</property> | 1335 | <property name="has_default">True</property> |
3726 | 1344 | <property name="has_default">True</property> | 1336 | <property name="can_focus">True</property> |
3727 | 1345 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> | 1337 | <property name="has_focus">True</property> |
3728 | 1346 | <signal name="activate" handler="on_location_entry_activate"/> | 1338 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
3729 | 1347 | </widget> | 1339 | <property name="editable">True</property> |
3730 | 1348 | <packing> | 1340 | <property name="visibility">True</property> |
3731 | 1349 | <property name="padding">5</property> | 1341 | <property name="max_length">0</property> |
3732 | 1350 | <property name="position">1</property> | 1342 | <property name="text" translatable="yes"></property> |
3733 | 1351 | </packing> | 1343 | <property name="has_frame">True</property> |
3734 | 1352 | </child> | 1344 | <property name="invisible_char">●</property> |
3735 | 1353 | <child> | 1345 | <property name="activates_default">False</property> |
3736 | 1354 | <widget class="GtkButton" id="location_find_button"> | 1346 | </widget> |
3737 | 1355 | <property name="label">gtk-find</property> | 1347 | <packing> |
3738 | 1356 | <property name="visible">True</property> | 1348 | <property name="padding">0</property> |
3739 | 1357 | <property name="can_focus">True</property> | 1349 | <property name="expand">True</property> |
3740 | 1358 | <property name="receives_default">False</property> | 1350 | <property name="fill">True</property> |
3741 | 1359 | <property name="use_stock">True</property> | 1351 | </packing> |
3742 | 1360 | <signal name="clicked" handler="on_location_find_button_clicked"/> | 1352 | </child> |
3743 | 1361 | </widget> | 1353 | </widget> |
3744 | 1362 | <packing> | 1354 | <packing> |
3745 | 1363 | <property name="padding">5</property> | 1355 | <property name="padding">0</property> |
3746 | 1364 | <property name="position">2</property> | 1356 | <property name="expand">True</property> |
3747 | 1365 | </packing> | 1357 | <property name="fill">True</property> |
3748 | 1366 | </child> | 1358 | </packing> |
3749 | 1367 | </widget> | 1359 | </child> |
3750 | 1368 | </child> | 1360 | </widget> |
3751 | 1369 | </widget> | 1361 | </child> |
3752 | 1370 | </child> | 1362 | </widget> |
3753 | 1371 | <child> | 1363 | |
3754 | 1372 | <widget class="GtkLabel" id="label20"> | 1364 | <widget class="GtkDialog" id="weather_search_dialog"> |
3755 | 1373 | <property name="visible">True</property> | 1365 | <property name="border_width">5</property> |
3756 | 1374 | <property name="label" translatable="yes"><b>Search for location</b></property> | 1366 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> |
3757 | 1375 | <property name="use_markup">True</property> | 1367 | <property name="title" translatable="yes"></property> |
3758 | 1376 | </widget> | 1368 | <property name="type">GTK_WINDOW_TOPLEVEL</property> |
3759 | 1377 | <packing> | 1369 | <property name="window_position">GTK_WIN_POS_NONE</property> |
3760 | 1378 | <property name="type">label_item</property> | 1370 | <property name="modal">False</property> |
3761 | 1379 | </packing> | 1371 | <property name="resizable">True</property> |
3762 | 1380 | </child> | 1372 | <property name="destroy_with_parent">False</property> |
3763 | 1381 | </widget> | 1373 | <property name="decorated">True</property> |
3764 | 1382 | <packing> | 1374 | <property name="skip_taskbar_hint">False</property> |
3765 | 1383 | <property name="expand">False</property> | 1375 | <property name="skip_pager_hint">False</property> |
3766 | 1384 | <property name="padding">5</property> | 1376 | <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property> |
3767 | 1385 | <property name="position">0</property> | 1377 | <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> |
3768 | 1386 | </packing> | 1378 | <property name="focus_on_map">True</property> |
3769 | 1387 | </child> | 1379 | <property name="urgency_hint">False</property> |
3770 | 1388 | <child> | 1380 | <property name="has_separator">False</property> |
3771 | 1389 | <widget class="GtkFrame" id="frame7"> | 1381 | |
3772 | 1390 | <property name="visible">True</property> | 1382 | <child internal-child="vbox"> |
3773 | 1391 | <property name="label_xalign">0</property> | 1383 | <widget class="GtkVBox" id="vbox20"> |
3774 | 1392 | <property name="shadow_type">none</property> | 1384 | <property name="visible">True</property> |
3775 | 1393 | <child> | 1385 | <property name="homogeneous">False</property> |
3776 | 1394 | <widget class="GtkAlignment" id="alignment17"> | 1386 | <property name="spacing">2</property> |
3777 | 1395 | <property name="visible">True</property> | 1387 | |
3778 | 1396 | <property name="left_padding">12</property> | 1388 | <child internal-child="action_area"> |
3779 | 1397 | <child> | 1389 | <widget class="GtkHButtonBox" id="hbuttonbox1"> |
3780 | 1398 | <widget class="GtkScrolledWindow" id="scrolledwindow7"> | 1390 | <property name="visible">True</property> |
3781 | 1399 | <property name="visible">True</property> | 1391 | <property name="layout_style">GTK_BUTTONBOX_END</property> |
3782 | 1400 | <property name="can_focus">True</property> | 1392 | |
3783 | 1401 | <property name="border_width">5</property> | 1393 | <child> |
3784 | 1402 | <property name="hscrollbar_policy">never</property> | 1394 | <widget class="GtkButton" id="location_button_cancel"> |
3785 | 1403 | <property name="vscrollbar_policy">automatic</property> | 1395 | <property name="visible">True</property> |
3786 | 1404 | <property name="shadow_type">etched-in</property> | 1396 | <property name="can_focus">True</property> |
3787 | 1405 | <child> | 1397 | <property name="label">gtk-cancel</property> |
3788 | 1406 | <widget class="GtkTreeView" id="location_results_treeview"> | 1398 | <property name="use_stock">True</property> |
3789 | 1407 | <property name="visible">True</property> | 1399 | <property name="relief">GTK_RELIEF_NORMAL</property> |
3790 | 1408 | <property name="can_focus">True</property> | 1400 | <property name="focus_on_click">True</property> |
3791 | 1409 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> | 1401 | <property name="response_id">0</property> |
3792 | 1410 | </widget> | 1402 | <signal name="clicked" handler="on_location_cancel_button_clicked"/> |
3793 | 1411 | </child> | 1403 | </widget> |
3794 | 1412 | </widget> | 1404 | </child> |
3795 | 1413 | </child> | 1405 | |
3796 | 1414 | </widget> | 1406 | <child> |
3797 | 1415 | </child> | 1407 | <widget class="GtkButton" id="location_add_button"> |
3798 | 1416 | <child> | 1408 | <property name="visible">True</property> |
3799 | 1417 | <widget class="GtkLabel" id="label21"> | 1409 | <property name="can_focus">True</property> |
3800 | 1418 | <property name="visible">True</property> | 1410 | <property name="label">gtk-add</property> |
3801 | 1419 | <property name="label" translatable="yes"><b>Search result</b></property> | 1411 | <property name="use_stock">True</property> |
3802 | 1420 | <property name="use_markup">True</property> | 1412 | <property name="relief">GTK_RELIEF_NORMAL</property> |
3803 | 1421 | </widget> | 1413 | <property name="focus_on_click">True</property> |
3804 | 1422 | <packing> | 1414 | <property name="response_id">0</property> |
3805 | 1423 | <property name="type">label_item</property> | 1415 | <signal name="clicked" handler="on_location_add_button_clicked"/> |
3806 | 1424 | </packing> | 1416 | </widget> |
3807 | 1425 | </child> | 1417 | </child> |
3808 | 1426 | </widget> | 1418 | </widget> |
3809 | 1427 | <packing> | 1419 | <packing> |
3810 | 1428 | <property name="padding">5</property> | 1420 | <property name="padding">0</property> |
3811 | 1429 | <property name="position">1</property> | 1421 | <property name="expand">False</property> |
3812 | 1430 | </packing> | 1422 | <property name="fill">True</property> |
3813 | 1431 | </child> | 1423 | <property name="pack_type">GTK_PACK_END</property> |
3814 | 1432 | </widget> | 1424 | </packing> |
3815 | 1433 | <packing> | 1425 | </child> |
3816 | 1434 | <property name="position">1</property> | 1426 | |
3817 | 1435 | </packing> | 1427 | <child> |
3818 | 1436 | </child> | 1428 | <widget class="GtkVBox" id="vbox21"> |
3819 | 1437 | <child internal-child="action_area"> | 1429 | <property name="visible">True</property> |
3820 | 1438 | <widget class="GtkHButtonBox" id="hbuttonbox1"> | 1430 | <property name="homogeneous">False</property> |
3821 | 1439 | <property name="visible">True</property> | 1431 | <property name="spacing">0</property> |
3822 | 1440 | <property name="layout_style">end</property> | 1432 | |
3823 | 1441 | <child> | 1433 | <child> |
3824 | 1442 | <widget class="GtkButton" id="location_button_cancel"> | 1434 | <widget class="GtkFrame" id="frame6"> |
3825 | 1443 | <property name="label">gtk-cancel</property> | 1435 | <property name="visible">True</property> |
3826 | 1444 | <property name="visible">True</property> | 1436 | <property name="label_xalign">0</property> |
3827 | 1445 | <property name="can_focus">True</property> | 1437 | <property name="label_yalign">0.5</property> |
3828 | 1446 | <property name="receives_default">False</property> | 1438 | <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property> |
3829 | 1447 | <property name="use_stock">True</property> | 1439 | |
3830 | 1448 | <signal name="clicked" handler="on_location_cancel_button_clicked"/> | 1440 | <child> |
3831 | 1449 | </widget> | 1441 | <widget class="GtkAlignment" id="alignment16"> |
3832 | 1450 | <packing> | 1442 | <property name="visible">True</property> |
3833 | 1451 | <property name="expand">False</property> | 1443 | <property name="xalign">0.5</property> |
3834 | 1452 | <property name="fill">False</property> | 1444 | <property name="yalign">0.5</property> |
3835 | 1453 | <property name="position">0</property> | 1445 | <property name="xscale">1</property> |
3836 | 1454 | </packing> | 1446 | <property name="yscale">1</property> |
3837 | 1455 | </child> | 1447 | <property name="top_padding">5</property> |
3838 | 1456 | <child> | 1448 | <property name="bottom_padding">0</property> |
3839 | 1457 | <widget class="GtkButton" id="location_add_button"> | 1449 | <property name="left_padding">12</property> |
3840 | 1458 | <property name="label">gtk-add</property> | 1450 | <property name="right_padding">0</property> |
3841 | 1459 | <property name="visible">True</property> | 1451 | |
3842 | 1460 | <property name="can_focus">True</property> | 1452 | <child> |
3843 | 1461 | <property name="receives_default">False</property> | 1453 | <widget class="GtkHBox" id="hbox18"> |
3844 | 1462 | <property name="use_stock">True</property> | 1454 | <property name="visible">True</property> |
3845 | 1463 | <signal name="clicked" handler="on_location_add_button_clicked"/> | 1455 | <property name="homogeneous">False</property> |
3846 | 1464 | </widget> | 1456 | <property name="spacing">0</property> |
3847 | 1465 | <packing> | 1457 | |
3848 | 1466 | <property name="expand">False</property> | 1458 | <child> |
3849 | 1467 | <property name="fill">False</property> | 1459 | <widget class="GtkLabel" id="label19"> |
3850 | 1468 | <property name="position">1</property> | 1460 | <property name="visible">True</property> |
3851 | 1469 | </packing> | 1461 | <property name="label" translatable="yes">City:</property> |
3852 | 1470 | </child> | 1462 | <property name="use_underline">False</property> |
3853 | 1471 | </widget> | 1463 | <property name="use_markup">False</property> |
3854 | 1472 | <packing> | 1464 | <property name="justify">GTK_JUSTIFY_LEFT</property> |
3855 | 1473 | <property name="expand">False</property> | 1465 | <property name="wrap">False</property> |
3856 | 1474 | <property name="pack_type">end</property> | 1466 | <property name="selectable">False</property> |
3857 | 1475 | <property name="position">0</property> | 1467 | <property name="xalign">0.5</property> |
3858 | 1476 | </packing> | 1468 | <property name="yalign">0.5</property> |
3859 | 1477 | </child> | 1469 | <property name="xpad">0</property> |
3860 | 1478 | </widget> | 1470 | <property name="ypad">0</property> |
3861 | 1479 | </child> | 1471 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> |
3862 | 1480 | </widget> | 1472 | <property name="width_chars">-1</property> |
3863 | 1473 | <property name="single_line_mode">False</property> | ||
3864 | 1474 | <property name="angle">0</property> | ||
3865 | 1475 | </widget> | ||
3866 | 1476 | <packing> | ||
3867 | 1477 | <property name="padding">0</property> | ||
3868 | 1478 | <property name="expand">False</property> | ||
3869 | 1479 | <property name="fill">True</property> | ||
3870 | 1480 | </packing> | ||
3871 | 1481 | </child> | ||
3872 | 1482 | |||
3873 | 1483 | <child> | ||
3874 | 1484 | <widget class="GtkEntry" id="location_entry"> | ||
3875 | 1485 | <property name="visible">True</property> | ||
3876 | 1486 | <property name="can_default">True</property> | ||
3877 | 1487 | <property name="has_default">True</property> | ||
3878 | 1488 | <property name="can_focus">True</property> | ||
3879 | 1489 | <property name="has_focus">True</property> | ||
3880 | 1490 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> | ||
3881 | 1491 | <property name="editable">True</property> | ||
3882 | 1492 | <property name="visibility">True</property> | ||
3883 | 1493 | <property name="max_length">0</property> | ||
3884 | 1494 | <property name="text" translatable="yes"></property> | ||
3885 | 1495 | <property name="has_frame">True</property> | ||
3886 | 1496 | <property name="invisible_char">●</property> | ||
3887 | 1497 | <property name="activates_default">False</property> | ||
3888 | 1498 | <signal name="activate" handler="on_location_entry_activate"/> | ||
3889 | 1499 | </widget> | ||
3890 | 1500 | <packing> | ||
3891 | 1501 | <property name="padding">5</property> | ||
3892 | 1502 | <property name="expand">True</property> | ||
3893 | 1503 | <property name="fill">True</property> | ||
3894 | 1504 | </packing> | ||
3895 | 1505 | </child> | ||
3896 | 1506 | |||
3897 | 1507 | <child> | ||
3898 | 1508 | <widget class="GtkButton" id="location_find_button"> | ||
3899 | 1509 | <property name="visible">True</property> | ||
3900 | 1510 | <property name="can_focus">True</property> | ||
3901 | 1511 | <property name="label">gtk-find</property> | ||
3902 | 1512 | <property name="use_stock">True</property> | ||
3903 | 1513 | <property name="relief">GTK_RELIEF_NORMAL</property> | ||
3904 | 1514 | <property name="focus_on_click">True</property> | ||
3905 | 1515 | <signal name="clicked" handler="on_location_find_button_clicked"/> | ||
3906 | 1516 | </widget> | ||
3907 | 1517 | <packing> | ||
3908 | 1518 | <property name="padding">5</property> | ||
3909 | 1519 | <property name="expand">True</property> | ||
3910 | 1520 | <property name="fill">True</property> | ||
3911 | 1521 | </packing> | ||
3912 | 1522 | </child> | ||
3913 | 1523 | </widget> | ||
3914 | 1524 | </child> | ||
3915 | 1525 | </widget> | ||
3916 | 1526 | </child> | ||
3917 | 1527 | |||
3918 | 1528 | <child> | ||
3919 | 1529 | <widget class="GtkLabel" id="label20"> | ||
3920 | 1530 | <property name="visible">True</property> | ||
3921 | 1531 | <property name="label" translatable="yes"><b>Search for location</b></property> | ||
3922 | 1532 | <property name="use_underline">False</property> | ||
3923 | 1533 | <property name="use_markup">True</property> | ||
3924 | 1534 | <property name="justify">GTK_JUSTIFY_LEFT</property> | ||
3925 | 1535 | <property name="wrap">False</property> | ||
3926 | 1536 | <property name="selectable">False</property> | ||
3927 | 1537 | <property name="xalign">0.5</property> | ||
3928 | 1538 | <property name="yalign">0.5</property> | ||
3929 | 1539 | <property name="xpad">0</property> | ||
3930 | 1540 | <property name="ypad">0</property> | ||
3931 | 1541 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> | ||
3932 | 1542 | <property name="width_chars">-1</property> | ||
3933 | 1543 | <property name="single_line_mode">False</property> | ||
3934 | 1544 | <property name="angle">0</property> | ||
3935 | 1545 | </widget> | ||
3936 | 1546 | <packing> | ||
3937 | 1547 | <property name="type">label_item</property> | ||
3938 | 1548 | </packing> | ||
3939 | 1549 | </child> | ||
3940 | 1550 | </widget> | ||
3941 | 1551 | <packing> | ||
3942 | 1552 | <property name="padding">5</property> | ||
3943 | 1553 | <property name="expand">False</property> | ||
3944 | 1554 | <property name="fill">True</property> | ||
3945 | 1555 | </packing> | ||
3946 | 1556 | </child> | ||
3947 | 1557 | |||
3948 | 1558 | <child> | ||
3949 | 1559 | <widget class="GtkFrame" id="frame7"> | ||
3950 | 1560 | <property name="visible">True</property> | ||
3951 | 1561 | <property name="label_xalign">0</property> | ||
3952 | 1562 | <property name="label_yalign">0.5</property> | ||
3953 | 1563 | <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property> | ||
3954 | 1564 | |||
3955 | 1565 | <child> | ||
3956 | 1566 | <widget class="GtkAlignment" id="alignment17"> | ||
3957 | 1567 | <property name="visible">True</property> | ||
3958 | 1568 | <property name="xalign">0.5</property> | ||
3959 | 1569 | <property name="yalign">0.5</property> | ||
3960 | 1570 | <property name="xscale">1</property> | ||
3961 | 1571 | <property name="yscale">1</property> | ||
3962 | 1572 | <property name="top_padding">0</property> | ||
3963 | 1573 | <property name="bottom_padding">0</property> | ||
3964 | 1574 | <property name="left_padding">12</property> | ||
3965 | 1575 | <property name="right_padding">0</property> | ||
3966 | 1576 | |||
3967 | 1577 | <child> | ||
3968 | 1578 | <widget class="GtkScrolledWindow" id="scrolledwindow7"> | ||
3969 | 1579 | <property name="border_width">5</property> | ||
3970 | 1580 | <property name="visible">True</property> | ||
3971 | 1581 | <property name="can_focus">True</property> | ||
3972 | 1582 | <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> | ||
3973 | 1583 | <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> | ||
3974 | 1584 | <property name="shadow_type">GTK_SHADOW_NONE</property> | ||
3975 | 1585 | <property name="window_placement">GTK_CORNER_TOP_LEFT</property> | ||
3976 | 1586 | |||
3977 | 1587 | <child> | ||
3978 | 1588 | <widget class="GtkTreeView" id="location_results_treeview"> | ||
3979 | 1589 | <property name="visible">True</property> | ||
3980 | 1590 | <property name="can_focus">True</property> | ||
3981 | 1591 | <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> | ||
3982 | 1592 | <property name="headers_visible">True</property> | ||
3983 | 1593 | <property name="rules_hint">False</property> | ||
3984 | 1594 | <property name="reorderable">False</property> | ||
3985 | 1595 | <property name="enable_search">True</property> | ||
3986 | 1596 | <property name="fixed_height_mode">False</property> | ||
3987 | 1597 | <property name="hover_selection">False</property> | ||
3988 | 1598 | <property name="hover_expand">False</property> | ||
3989 | 1599 | </widget> | ||
3990 | 1600 | </child> | ||
3991 | 1601 | </widget> | ||
3992 | 1602 | </child> | ||
3993 | 1603 | </widget> | ||
3994 | 1604 | </child> | ||
3995 | 1605 | |||
3996 | 1606 | <child> | ||
3997 | 1607 | <widget class="GtkLabel" id="label21"> | ||
3998 | 1608 | <property name="visible">True</property> | ||
3999 | 1609 | <property name="label" translatable="yes"><b>Search result</b></property> | ||
4000 | 1610 | <property name="use_underline">False</property> | ||
4001 | 1611 | <property name="use_markup">True</property> | ||
4002 | 1612 | <property name="justify">GTK_JUSTIFY_LEFT</property> | ||
4003 | 1613 | <property name="wrap">False</property> | ||
4004 | 1614 | <property name="selectable">False</property> | ||
4005 | 1615 | <property name="xalign">0.5</property> | ||
4006 | 1616 | <property name="yalign">0.5</property> | ||
4007 | 1617 | <property name="xpad">0</property> | ||
4008 | 1618 | <property name="ypad">0</property> | ||
4009 | 1619 | <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> | ||
4010 | 1620 | <property name="width_chars">-1</property> | ||
4011 | 1621 | <property name="single_line_mode">False</property> | ||
4012 | 1622 | <property name="angle">0</property> | ||
4013 | 1623 | </widget> | ||
4014 | 1624 | <packing> | ||
4015 | 1625 | <property name="type">label_item</property> | ||
4016 | 1626 | </packing> | ||
4017 | 1627 | </child> | ||
4018 | 1628 | </widget> | ||
4019 | 1629 | <packing> | ||
4020 | 1630 | <property name="padding">5</property> | ||
4021 | 1631 | <property name="expand">True</property> | ||
4022 | 1632 | <property name="fill">True</property> | ||
4023 | 1633 | </packing> | ||
4024 | 1634 | </child> | ||
4025 | 1635 | </widget> | ||
4026 | 1636 | <packing> | ||
4027 | 1637 | <property name="padding">0</property> | ||
4028 | 1638 | <property name="expand">True</property> | ||
4029 | 1639 | <property name="fill">True</property> | ||
4030 | 1640 | </packing> | ||
4031 | 1641 | </child> | ||
4032 | 1642 | </widget> | ||
4033 | 1643 | </child> | ||
4034 | 1644 | </widget> | ||
4035 | 1645 | |||
4036 | 1481 | </glade-interface> | 1646 | </glade-interface> |
4037 | 1482 | 1647 | ||
4038 | === modified file 'entertainerlib/tests/test_configuration.py' | |||
4039 | --- entertainerlib/tests/test_configuration.py 2009-07-02 20:58:37 +0000 | |||
4040 | +++ entertainerlib/tests/test_configuration.py 2009-08-16 20:02:42 +0000 | |||
4041 | @@ -65,14 +65,6 @@ | |||
4042 | 65 | self.configuration.update_configuration() | 65 | self.configuration.update_configuration() |
4043 | 66 | self.assertEqual(self.configuration.get_weather_location(), new_value) | 66 | self.assertEqual(self.configuration.get_weather_location(), new_value) |
4044 | 67 | 67 | ||
4045 | 68 | def test_write_preference_value(self): | ||
4046 | 69 | """Test writing a value to the preference configuration file""" | ||
4047 | 70 | new_value = True | ||
4048 | 71 | self.configuration.write_preference_value( | ||
4049 | 72 | "General", "display_icon", new_value) | ||
4050 | 73 | self.configuration.update_configuration() | ||
4051 | 74 | self.assertEqual(self.configuration.tray_icon_enabled(), new_value) | ||
4052 | 75 | |||
4053 | 76 | def testGetThemeName(self): | 68 | def testGetThemeName(self): |
4054 | 77 | """Test getting the current theme name""" | 69 | """Test getting the current theme name""" |
4055 | 78 | current_name = "Default" | 70 | current_name = "Default" |
4056 | @@ -85,9 +77,3 @@ | |||
4057 | 85 | def testGetSlideshowStep(self): | 77 | def testGetSlideshowStep(self): |
4058 | 86 | '''Test getting the slideshow step''' | 78 | '''Test getting the slideshow step''' |
4059 | 87 | self.assertEqual(self.configuration.get_slideshow_step(), 5) | 79 | self.assertEqual(self.configuration.get_slideshow_step(), 5) |
4060 | 88 | |||
4061 | 89 | def test_hidden_files_folders(self): | ||
4062 | 90 | """Test getting the `display_hidden_files_folders` setting.""" | ||
4063 | 91 | self.assertEqual(self.configuration.display_hidden_files_folders(), | ||
4064 | 92 | False) | ||
4065 | 93 | |||
4066 | 94 | 80 | ||
4067 | === modified file 'entertainerlib/tests/test_scrollarea.py' | |||
4068 | --- entertainerlib/tests/test_scrollarea.py 2009-08-04 01:09:03 +0000 | |||
4069 | +++ entertainerlib/tests/test_scrollarea.py 2009-08-16 20:02:42 +0000 | |||
4070 | @@ -1,9 +1,6 @@ | |||
4071 | 1 | # Copyright (c) 2009 Entertainer Developers - See COPYING - GPLv2 | 1 | # Copyright (c) 2009 Entertainer Developers - See COPYING - GPLv2 |
4072 | 2 | """Tests ScrollArea""" | 2 | """Tests ScrollArea""" |
4073 | 3 | 3 | ||
4074 | 4 | import clutter | ||
4075 | 5 | |||
4076 | 6 | from entertainerlib.gui.widgets.base import Base | ||
4077 | 7 | from entertainerlib.gui.widgets.label import Label | 4 | from entertainerlib.gui.widgets.label import Label |
4078 | 8 | from entertainerlib.gui.widgets.scroll_area import ScrollArea | 5 | from entertainerlib.gui.widgets.scroll_area import ScrollArea |
4079 | 9 | from entertainerlib.tests import EntertainerTest | 6 | from entertainerlib.tests import EntertainerTest |
4080 | 10 | 7 | ||
4081 | === modified file 'entertainerlib/tests/test_transitionfactory.py' | |||
4082 | --- entertainerlib/tests/test_transitionfactory.py 2009-05-10 17:36:49 +0000 | |||
4083 | +++ entertainerlib/tests/test_transitionfactory.py 2009-08-16 20:02:42 +0000 | |||
4084 | @@ -59,14 +59,14 @@ | |||
4085 | 59 | } | 59 | } |
4086 | 60 | # Test all possible transitions | 60 | # Test all possible transitions |
4087 | 61 | for key in values_to_test.keys(): | 61 | for key in values_to_test.keys(): |
4089 | 62 | self.config.write_preference_value('General', 'transition_effect', | 62 | self.config.write_content_value('General', 'transition_effect', |
4090 | 63 | key) | 63 | key) |
4091 | 64 | self.config.update_configuration() | 64 | self.config.update_configuration() |
4092 | 65 | transition = self.factory.generate_transition() | 65 | transition = self.factory.generate_transition() |
4093 | 66 | self.assertTrue(isinstance(transition, values_to_test[key])) | 66 | self.assertTrue(isinstance(transition, values_to_test[key])) |
4094 | 67 | 67 | ||
4095 | 68 | # Test the path when the user doesn't have effects | 68 | # Test the path when the user doesn't have effects |
4097 | 69 | self.config.write_preference_value('General', 'show_effects', 'False') | 69 | self.config.write_content_value('General', 'show_effects', 'False') |
4098 | 70 | self.config.update_configuration() | 70 | self.config.update_configuration() |
4099 | 71 | transition = self.factory.generate_transition() | 71 | transition = self.factory.generate_transition() |
4100 | 72 | self.assertTrue(isinstance(transition, NoEffect)) | 72 | self.assertTrue(isinstance(transition, NoEffect)) |
Here is a branch that eliminates preferences.conf and puts the information that was in it into content.conf. Of course, it also cleans up Configuration to account for these changes. I have more changes coming for Configuration, but I want to keep these branches relatively small.
This branch is smaller than the diff makes it appear. I merged in Paul's dialog-magics branch.