Merge lp:~nico-inattendu/luciole/nico-3 into lp:luciole/0.7

Proposed by NicoInattendu
Status: Merged
Approved by: NicoInattendu
Approved revision: 29
Merged at revision: not available
Proposed branch: lp:~nico-inattendu/luciole/nico-3
Merge into: lp:luciole/0.7
Diff against target: None lines
To merge this branch: bzr merge lp:~nico-inattendu/luciole/nico-3
Reviewer Review Type Date Requested Status
NicoInattendu Pending
Review via email: mp+6287@code.launchpad.net
To post a comment you must log in.
Revision history for this message
NicoInattendu (nico-inattendu) wrote :

New functionalties/blueprints :
  * Asynchronous Image capture from gstreamer . Tracked through Bug #371910.

Fixed Bugs :
  * Bug #372105: Luciole theme on jaunty
  * Bug #371604: Luciole text typo mismatch
  * Bug #372728: Webcam acquisition does not work with macbook iSight webcam
  * Bug #372739: "Old" Labtec webcam does not work with luciole
  * Bug #371602: In Luciole assistant the luciole_logo is displayed with a text 'luciole logo'
  * Bug #372753: No indication when no webcam are available

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'images/capture.png'
2Binary files images/capture.png 2009-03-08 18:06:41 +0000 and images/capture.png 2009-05-05 22:52:48 +0000 differ
3=== modified file 'images/luciole.glade'
4--- images/luciole.glade 2009-05-01 14:42:17 +0000
5+++ images/luciole.glade 2009-05-06 17:15:46 +0000
6@@ -1,12 +1,10 @@
7-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
8-<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
9-<!--Generated with glade3 3.4.5 on Fri May 1 16:39:49 2009 -->
10+<?xml version="1.0"?>
11 <glade-interface>
12+ <!-- interface-requires gtk+ 2.16 -->
13+ <!-- interface-naming-policy toplevel-contextual -->
14 <widget class="GtkWindow" id="window1">
15 <property name="icon">luciole.png</property>
16 <property name="icon_name">Luciole</property>
17- <signal name="delete_event" handler="on_window1_delete_event"/>
18- <signal name="destroy_event" handler="on_window1_destroy_event"/>
19 <child>
20 <widget class="GtkVBox" id="vbox1">
21 <property name="visible">True</property>
22@@ -23,8 +21,8 @@
23 <property name="visible">True</property>
24 <child>
25 <widget class="GtkImageMenuItem" id="file_new">
26+ <property name="label">gtk-new</property>
27 <property name="visible">True</property>
28- <property name="label" translatable="yes">gtk-new</property>
29 <property name="use_underline">True</property>
30 <property name="use_stock">True</property>
31 <signal name="activate" handler="on_file_new_activate"/>
32@@ -32,8 +30,8 @@
33 </child>
34 <child>
35 <widget class="GtkImageMenuItem" id="file_open">
36+ <property name="label">gtk-open</property>
37 <property name="visible">True</property>
38- <property name="label" translatable="yes">gtk-open</property>
39 <property name="use_underline">True</property>
40 <property name="use_stock">True</property>
41 <signal name="activate" handler="on_file_open_activate"/>
42@@ -88,8 +86,8 @@
43 </child>
44 <child>
45 <widget class="GtkImageMenuItem" id="file_save">
46+ <property name="label">gtk-save</property>
47 <property name="visible">True</property>
48- <property name="label" translatable="yes">gtk-save</property>
49 <property name="use_underline">True</property>
50 <property name="use_stock">True</property>
51 <signal name="activate" handler="on_file_save_activate"/>
52@@ -97,8 +95,8 @@
53 </child>
54 <child>
55 <widget class="GtkImageMenuItem" id="file_save_as">
56+ <property name="label">gtk-save-as</property>
57 <property name="visible">True</property>
58- <property name="label" translatable="yes">gtk-save-as</property>
59 <property name="use_underline">True</property>
60 <property name="use_stock">True</property>
61 <signal name="activate" handler="on_file_save_as_activate"/>
62@@ -111,13 +109,14 @@
63 </child>
64 <child>
65 <widget class="GtkImageMenuItem" id="file_import">
66- <property name="visible">True</property>
67 <property name="label" translatable="yes">Import images</property>
68- <property name="use_underline">True</property>
69+ <property name="visible">True</property>
70+ <property name="use_stock">False</property>
71 <signal name="activate" handler="on_file_import_activate"/>
72 <child internal-child="image">
73- <widget class="GtkImage" id="menu-item-image1">
74+ <widget class="GtkImage" id="image7">
75 <property name="visible">True</property>
76+ <property name="xalign">0.47999998927116394</property>
77 <property name="stock">gtk-add</property>
78 </widget>
79 </child>
80@@ -125,12 +124,12 @@
81 </child>
82 <child>
83 <widget class="GtkImageMenuItem" id="file_export">
84- <property name="visible">True</property>
85 <property name="label" translatable="yes">Export</property>
86- <property name="use_underline">True</property>
87+ <property name="visible">True</property>
88+ <property name="use_stock">False</property>
89 <signal name="activate" handler="on_file_export_activate"/>
90 <child internal-child="image">
91- <widget class="GtkImage" id="menu-item-image2">
92+ <widget class="GtkImage" id="image8">
93 <property name="visible">True</property>
94 <property name="stock">gtk-convert</property>
95 </widget>
96@@ -140,14 +139,12 @@
97 <child>
98 <widget class="GtkSeparatorMenuItem" id="menuitem1">
99 <property name="visible">True</property>
100- <property name="label" translatable="yes">menuitem1</property>
101- <property name="use_underline">True</property>
102 </widget>
103 </child>
104 <child>
105 <widget class="GtkImageMenuItem" id="file_close">
106+ <property name="label">gtk-close</property>
107 <property name="visible">True</property>
108- <property name="label" translatable="yes">gtk-close</property>
109 <property name="use_underline">True</property>
110 <property name="use_stock">True</property>
111 <signal name="activate" handler="on_file_close_activate"/>
112@@ -155,8 +152,8 @@
113 </child>
114 <child>
115 <widget class="GtkImageMenuItem" id="file_quit">
116+ <property name="label">gtk-quit</property>
117 <property name="visible">True</property>
118- <property name="label" translatable="yes">gtk-quit</property>
119 <property name="use_underline">True</property>
120 <property name="use_stock">True</property>
121 <signal name="activate" handler="on_file_quit_activate"/>
122@@ -176,13 +173,13 @@
123 <property name="visible">True</property>
124 <child>
125 <widget class="GtkImageMenuItem" id="view_project">
126+ <property name="label" translatable="yes">Project properties</property>
127 <property name="visible">True</property>
128 <property name="tooltip" translatable="yes">Project Properties</property>
129- <property name="label" translatable="yes">Project Properties</property>
130- <property name="use_underline">True</property>
131+ <property name="use_stock">False</property>
132 <signal name="activate" handler="on_view_project_activate"/>
133 <child internal-child="image">
134- <widget class="GtkImage" id="menu-item-image3">
135+ <widget class="GtkImage" id="image4">
136 <property name="visible">True</property>
137 <property name="stock">gtk-properties</property>
138 </widget>
139@@ -191,12 +188,13 @@
140 </child>
141 <child>
142 <widget class="GtkImageMenuItem" id="Preferences">
143- <property name="visible">True</property>
144 <property name="label" translatable="yes">Preferences</property>
145- <property name="use_underline">True</property>
146+ <property name="visible">True</property>
147+ <property name="use_stock">False</property>
148 <signal name="activate" handler="on_Preferences_activate"/>
149 <child internal-child="image">
150- <widget class="GtkImage" id="menu-item-image4">
151+ <widget class="GtkImage" id="image6">
152+ <property name="visible">True</property>
153 <property name="stock">gtk-preferences</property>
154 </widget>
155 </child>
156@@ -216,9 +214,9 @@
157 <property name="visible">True</property>
158 <child>
159 <widget class="GtkImageMenuItem" id="help_about">
160+ <property name="label">gtk-about</property>
161 <property name="visible">True</property>
162 <property name="tooltip" translatable="yes">About</property>
163- <property name="label" translatable="yes">gtk-about</property>
164 <property name="use_underline">True</property>
165 <property name="use_stock">True</property>
166 <signal name="activate" handler="on_help_about_activate"/>
167@@ -231,6 +229,7 @@
168 </widget>
169 <packing>
170 <property name="expand">False</property>
171+ <property name="position">0</property>
172 </packing>
173 </child>
174 <child>
175@@ -247,7 +246,7 @@
176 <property name="border_width">7</property>
177 <property name="label_xalign">0</property>
178 <property name="label_yalign">0</property>
179- <property name="shadow_type">GTK_SHADOW_IN</property>
180+ <property name="shadow_type">in</property>
181 <property name="xalign">0.10000000149011612</property>
182 <property name="yalign">0.10000000149011612</property>
183 <property name="ratio">1.25</property>
184@@ -260,6 +259,9 @@
185 </widget>
186 </child>
187 </widget>
188+ <packing>
189+ <property name="position">0</property>
190+ </packing>
191 </child>
192 <child>
193 <widget class="GtkFixed" id="fixed7">
194@@ -276,7 +278,7 @@
195 <widget class="GtkAspectFrame" id="aspectframe2">
196 <property name="visible">True</property>
197 <property name="label_xalign">0</property>
198- <property name="shadow_type">GTK_SHADOW_NONE</property>
199+ <property name="shadow_type">none</property>
200 <child>
201 <widget class="GtkHBox" id="hbox_acquisition">
202 <property name="height_request">51</property>
203@@ -288,6 +290,9 @@
204 <property name="visible">True</property>
205 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
206 </widget>
207+ <packing>
208+ <property name="position">0</property>
209+ </packing>
210 </child>
211 <child>
212 <widget class="GtkToggleButton" id="acquisition_button">
213@@ -295,11 +300,11 @@
214 <property name="height_request">46</property>
215 <property name="visible">True</property>
216 <property name="can_focus">True</property>
217+ <property name="receives_default">False</property>
218 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
219 <property name="has_tooltip">True</property>
220 <property name="tooltip" translatable="yes">Activate/Deactivate camera preview</property>
221 <property name="focus_on_click">False</property>
222- <property name="response_id">0</property>
223 <signal name="toggled" handler="on_acquisition_button_toggled"/>
224 <child>
225 <widget class="GtkImage" id="acquisition_button_image">
226@@ -330,13 +335,14 @@
227 <widget class="GtkButton" id="snapshot_button">
228 <property name="visible">True</property>
229 <property name="can_focus">True</property>
230+ <property name="can_default">True</property>
231+ <property name="has_default">True</property>
232 <property name="receives_default">True</property>
233 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
234 <property name="has_tooltip">True</property>
235 <property name="tooltip" translatable="yes" comments="Capturer une image">make a snapshot</property>
236- <property name="response_id">0</property>
237 <signal name="clicked" handler="on_button_capture_clicked"/>
238- <accelerator key="c" modifiers="" signal="clicked"/>
239+ <accelerator key="c" signal="clicked"/>
240 <child>
241 <widget class="GtkImage" id="image5">
242 <property name="visible">True</property>
243@@ -369,29 +375,31 @@
244 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
245 <child>
246 <widget class="GtkCheckButton" id="mixer_checkbutton">
247+ <property name="label" translatable="yes">Mixer</property>
248 <property name="visible">True</property>
249- <property name="can_focus">True</property>
250+ <property name="can_focus">False</property>
251+ <property name="receives_default">False</property>
252 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
253 <property name="has_tooltip">True</property>
254 <property name="tooltip" translatable="yes">Mixer activation (onion skin)</property>
255- <property name="label" translatable="yes">Mixer</property>
256- <property name="relief">GTK_RELIEF_HALF</property>
257- <property name="response_id">0</property>
258+ <property name="relief">half</property>
259 <property name="draw_indicator">True</property>
260 <signal name="toggled" handler="on_mixer_checkbutton_toggled"/>
261 </widget>
262+ <packing>
263+ <property name="position">0</property>
264+ </packing>
265 </child>
266 <child>
267 <widget class="GtkHScale" id="alpha_hscale">
268 <property name="visible">True</property>
269- <property name="can_focus">True</property>
270 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
271 <property name="has_tooltip">True</property>
272 <property name="tooltip" translatable="yes">Transparency level</property>
273- <property name="update_policy">GTK_UPDATE_DISCONTINUOUS</property>
274+ <property name="update_policy">discontinuous</property>
275 <property name="adjustment">1 0 4 1 1 0</property>
276 <property name="digits">0</property>
277- <property name="value_pos">GTK_POS_LEFT</property>
278+ <property name="value_pos">left</property>
279 <signal name="value_changed" handler="on_alpha_hscale_value_changed"/>
280 </widget>
281 <packing>
282@@ -422,14 +430,16 @@
283 <widget class="GtkLabel" id="label_fpi">
284 <property name="visible">True</property>
285 <property name="label" translatable="yes">Image per seconds</property>
286- <property name="justify">GTK_JUSTIFY_CENTER</property>
287+ <property name="justify">center</property>
288 </widget>
289+ <packing>
290+ <property name="position">0</property>
291+ </packing>
292 </child>
293 <child>
294 <widget class="GtkHScale" id="hscale_fps">
295 <property name="width_request">125</property>
296 <property name="visible">True</property>
297- <property name="can_focus">True</property>
298 <property name="adjustment">1 1 6 1 1 1</property>
299 <property name="digits">0</property>
300 <signal name="value_changed" handler="on_hscale_fps_value_changed"/>
301@@ -462,6 +472,9 @@
302 </packing>
303 </child>
304 </widget>
305+ <packing>
306+ <property name="position">0</property>
307+ </packing>
308 </child>
309 <child>
310 <widget class="GtkHBox" id="hbox2">
311@@ -473,14 +486,15 @@
312 <packing>
313 <property name="expand">False</property>
314 <property name="fill">False</property>
315+ <property name="position">0</property>
316 </packing>
317 </child>
318 <child>
319 <widget class="GtkViewport" id="viewport2">
320 <property name="width_request">215</property>
321 <property name="visible">True</property>
322- <property name="resize_mode">GTK_RESIZE_QUEUE</property>
323- <property name="shadow_type">GTK_SHADOW_ETCHED_OUT</property>
324+ <property name="resize_mode">queue</property>
325+ <property name="shadow_type">etched-out</property>
326 <child>
327 <widget class="GtkVBox" id="vbox5">
328 <property name="width_request">215</property>
329@@ -490,16 +504,18 @@
330 <property name="width_request">215</property>
331 <property name="visible">True</property>
332 <property name="can_focus">True</property>
333- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
334- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
335- <property name="shadow_type">GTK_SHADOW_IN</property>
336+ <property name="hscrollbar_policy">automatic</property>
337+ <property name="vscrollbar_policy">automatic</property>
338+ <property name="shadow_type">in</property>
339 <child>
340 <widget class="GtkTreeView" id="treeview_capture">
341 <property name="visible">True</property>
342- <property name="can_focus">True</property>
343 </widget>
344 </child>
345 </widget>
346+ <packing>
347+ <property name="position">0</property>
348+ </packing>
349 </child>
350 <child>
351 <widget class="GtkVBox" id="vbox6">
352@@ -512,6 +528,7 @@
353 <packing>
354 <property name="expand">False</property>
355 <property name="fill">False</property>
356+ <property name="position">0</property>
357 </packing>
358 </child>
359 <child>
360@@ -522,25 +539,27 @@
361 <widget class="GtkFixed" id="fixed3">
362 <property name="visible">True</property>
363 </widget>
364+ <packing>
365+ <property name="position">0</property>
366+ </packing>
367 </child>
368 <child>
369 <widget class="GtkButton" id="button_import">
370 <property name="width_request">45</property>
371 <property name="height_request">45</property>
372 <property name="visible">True</property>
373- <property name="can_focus">True</property>
374- <property name="receives_default">True</property>
375+ <property name="can_focus">False</property>
376+ <property name="receives_default">False</property>
377 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
378 <property name="has_tooltip">True</property>
379 <property name="tooltip" translatable="yes" comments="Caller une image sur le flux video">Import images</property>
380- <property name="response_id">0</property>
381 <signal name="clicked" handler="on_button_import_clicked"/>
382 <child>
383 <widget class="GtkImage" id="image2">
384 <property name="visible">True</property>
385 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
386 <property name="stock">gtk-add</property>
387- <property name="icon_size">5</property>
388+ <property name="icon-size">5</property>
389 </widget>
390 </child>
391 </widget>
392@@ -562,18 +581,17 @@
393 <widget class="GtkButton" id="button_trash_capture">
394 <property name="width_request">45</property>
395 <property name="height_request">45</property>
396- <property name="can_focus">True</property>
397- <property name="receives_default">True</property>
398+ <property name="can_focus">False</property>
399+ <property name="receives_default">False</property>
400 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
401- <property name="tooltip" translatable="yes" comments="Jeter à la poubelle">To trash</property>
402- <property name="response_id">0</property>
403+ <property name="tooltip" translatable="yes" comments="Jeter &#xE0; la poubelle">To trash</property>
404 <signal name="clicked" handler="on_button_trash_capture_clicked"/>
405 <child>
406 <widget class="GtkImage" id="image1">
407 <property name="visible">True</property>
408 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
409 <property name="stock">gtk-delete</property>
410- <property name="icon_size">5</property>
411+ <property name="icon-size">5</property>
412 </widget>
413 </child>
414 </widget>
415@@ -596,18 +614,17 @@
416 <property name="width_request">45</property>
417 <property name="height_request">45</property>
418 <property name="visible">True</property>
419- <property name="can_focus">True</property>
420- <property name="receives_default">True</property>
421+ <property name="can_focus">False</property>
422+ <property name="receives_default">False</property>
423 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
424- <property name="tooltip" translatable="yes" comments="Déplacer des images capturées dans la zone de montage">Move snapshot to montage area</property>
425- <property name="response_id">0</property>
426+ <property name="tooltip" translatable="yes" comments="D&#xE9;placer des images captur&#xE9;es dans la zone de montage">Move snapshot to montage area</property>
427 <signal name="clicked" handler="on_button_capture_to_montage_clicked"/>
428 <child>
429 <widget class="GtkImage" id="image3">
430 <property name="visible">True</property>
431 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
432 <property name="stock">gtk-go-forward</property>
433- <property name="icon_size">5</property>
434+ <property name="icon-size">5</property>
435 </widget>
436 </child>
437 </widget>
438@@ -647,7 +664,7 @@
439 <packing>
440 <property name="expand">False</property>
441 <property name="fill">False</property>
442- <property name="pack_type">GTK_PACK_END</property>
443+ <property name="pack_type">end</property>
444 <property name="position">1</property>
445 </packing>
446 </child>
447@@ -676,8 +693,8 @@
448 <widget class="GtkViewport" id="viewport1">
449 <property name="width_request">215</property>
450 <property name="visible">True</property>
451- <property name="resize_mode">GTK_RESIZE_QUEUE</property>
452- <property name="shadow_type">GTK_SHADOW_ETCHED_OUT</property>
453+ <property name="resize_mode">queue</property>
454+ <property name="shadow_type">etched-out</property>
455 <child>
456 <widget class="GtkVBox" id="vbox7">
457 <property name="width_request">215</property>
458@@ -687,9 +704,9 @@
459 <property name="width_request">215</property>
460 <property name="visible">True</property>
461 <property name="can_focus">True</property>
462- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
463- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
464- <property name="shadow_type">GTK_SHADOW_IN</property>
465+ <property name="hscrollbar_policy">automatic</property>
466+ <property name="vscrollbar_policy">automatic</property>
467+ <property name="shadow_type">in</property>
468 <child>
469 <widget class="GtkTreeView" id="treeview_montage">
470 <property name="visible">True</property>
471@@ -697,6 +714,9 @@
472 </widget>
473 </child>
474 </widget>
475+ <packing>
476+ <property name="position">0</property>
477+ </packing>
478 </child>
479 <child>
480 <widget class="GtkVBox" id="vbox3">
481@@ -709,6 +729,7 @@
482 <packing>
483 <property name="expand">False</property>
484 <property name="fill">False</property>
485+ <property name="position">0</property>
486 </packing>
487 </child>
488 <child>
489@@ -719,24 +740,26 @@
490 <widget class="GtkFixed" id="fixed17">
491 <property name="visible">True</property>
492 </widget>
493+ <packing>
494+ <property name="position">0</property>
495+ </packing>
496 </child>
497 <child>
498 <widget class="GtkButton" id="button_up">
499 <property name="width_request">45</property>
500 <property name="height_request">45</property>
501 <property name="visible">True</property>
502- <property name="can_focus">True</property>
503- <property name="receives_default">True</property>
504+ <property name="can_focus">False</property>
505+ <property name="receives_default">False</property>
506 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
507 <property name="tooltip" translatable="yes" comments="Monter un/ou plusieurs images">Move up one or several images</property>
508- <property name="response_id">0</property>
509 <signal name="clicked" handler="on_button_up_clicked"/>
510 <child>
511 <widget class="GtkImage" id="image14">
512 <property name="visible">True</property>
513 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
514 <property name="stock">gtk-go-up</property>
515- <property name="icon_size">5</property>
516+ <property name="icon-size">5</property>
517 </widget>
518 </child>
519 </widget>
520@@ -759,18 +782,17 @@
521 <property name="width_request">45</property>
522 <property name="height_request">45</property>
523 <property name="visible">True</property>
524- <property name="can_focus">True</property>
525- <property name="receives_default">True</property>
526+ <property name="can_focus">False</property>
527+ <property name="receives_default">False</property>
528 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
529 <property name="tooltip" translatable="yes" comments="Descendre un/ou plusieurs images">Move down one or several images</property>
530- <property name="response_id">0</property>
531 <signal name="clicked" handler="on_button_down_clicked"/>
532 <child>
533 <widget class="GtkImage" id="image16">
534 <property name="visible">True</property>
535 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
536 <property name="stock">gtk-go-down</property>
537- <property name="icon_size">5</property>
538+ <property name="icon-size">5</property>
539 </widget>
540 </child>
541 </widget>
542@@ -793,18 +815,17 @@
543 <property name="width_request">45</property>
544 <property name="height_request">45</property>
545 <property name="visible">True</property>
546- <property name="can_focus">True</property>
547- <property name="receives_default">True</property>
548+ <property name="can_focus">False</property>
549+ <property name="receives_default">False</property>
550 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
551- <property name="tooltip" translatable="yes" comments="Jeter à la poubelle">To trash</property>
552- <property name="response_id">0</property>
553+ <property name="tooltip" translatable="yes" comments="Jeter &#xE0; la poubelle">To trash</property>
554 <signal name="clicked" handler="on_button_trash_clicked"/>
555 <child>
556 <widget class="GtkImage" id="image12">
557 <property name="visible">True</property>
558 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
559 <property name="stock">gtk-delete</property>
560- <property name="icon_size">5</property>
561+ <property name="icon-size">5</property>
562 </widget>
563 </child>
564 </widget>
565@@ -827,16 +848,15 @@
566 <property name="width_request">45</property>
567 <property name="height_request">45</property>
568 <property name="visible">True</property>
569- <property name="can_focus">True</property>
570- <property name="receives_default">True</property>
571+ <property name="can_focus">False</property>
572+ <property name="receives_default">False</property>
573 <property name="tooltip" translatable="yes">Play video</property>
574- <property name="response_id">0</property>
575 <signal name="toggled" handler="on_button_play_toggled"/>
576 <child>
577 <widget class="GtkImage" id="image_play_pause">
578 <property name="visible">True</property>
579 <property name="stock">gtk-media-play</property>
580- <property name="icon_size">5</property>
581+ <property name="icon-size">5</property>
582 </widget>
583 </child>
584 </widget>
585@@ -874,7 +894,7 @@
586 <packing>
587 <property name="expand">False</property>
588 <property name="fill">False</property>
589- <property name="pack_type">GTK_PACK_END</property>
590+ <property name="pack_type">end</property>
591 <property name="position">1</property>
592 </packing>
593 </child>
594@@ -918,6 +938,9 @@
595 <property name="visible">True</property>
596 <property name="spacing">2</property>
597 </widget>
598+ <packing>
599+ <property name="position">0</property>
600+ </packing>
601 </child>
602 <child>
603 <widget class="GtkProgressBar" id="progressbar_status">
604@@ -944,8 +967,8 @@
605 <widget class="GtkFileChooserDialog" id="filechooserdialog_open">
606 <property name="border_width">5</property>
607 <property name="title" translatable="yes">Select a Luciole project</property>
608- <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
609- <property name="type_hint">GDK_WINDOW_TYPE_HINT_MENU</property>
610+ <property name="window_position">center-on-parent</property>
611+ <property name="type_hint">menu</property>
612 <property name="has_separator">False</property>
613 <child internal-child="vbox">
614 <widget class="GtkVBox" id="dialog-vbox1">
615@@ -957,7 +980,7 @@
616 <child internal-child="action_area">
617 <widget class="GtkHButtonBox" id="dialog-action_area1">
618 <property name="visible">True</property>
619- <property name="layout_style">GTK_BUTTONBOX_END</property>
620+ <property name="layout_style">end</property>
621 <child>
622 <placeholder/>
623 </child>
624@@ -967,7 +990,8 @@
625 </widget>
626 <packing>
627 <property name="expand">False</property>
628- <property name="pack_type">GTK_PACK_END</property>
629+ <property name="pack_type">end</property>
630+ <property name="position">0</property>
631 </packing>
632 </child>
633 </widget>
634@@ -978,8 +1002,8 @@
635 <property name="border_width">5</property>
636 <property name="title" translatable="yes">About Luciole</property>
637 <property name="resizable">False</property>
638- <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
639- <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
640+ <property name="window_position">center-on-parent</property>
641+ <property name="type_hint">dialog</property>
642 <property name="has_separator">False</property>
643 <property name="program_name">Luciole</property>
644 <property name="version">0.7</property>
645@@ -1023,11 +1047,12 @@
646 <widget class="GtkHButtonBox" id="dialog-action_area9">
647 <property name="visible">True</property>
648 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
649- <property name="layout_style">GTK_BUTTONBOX_END</property>
650+ <property name="layout_style">end</property>
651 </widget>
652 <packing>
653 <property name="expand">False</property>
654- <property name="pack_type">GTK_PACK_END</property>
655+ <property name="pack_type">end</property>
656+ <property name="position">0</property>
657 </packing>
658 </child>
659 </widget>
660@@ -1036,8 +1061,9 @@
661 <widget class="GtkDialog" id="export1">
662 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
663 <property name="border_width">5</property>
664- <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
665- <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
666+ <property name="title" translatable="yes">Video Export</property>
667+ <property name="window_position">center-on-parent</property>
668+ <property name="type_hint">dialog</property>
669 <property name="has_separator">False</property>
670 <child internal-child="vbox">
671 <widget class="GtkVBox" id="dialog-vbox11">
672@@ -1061,6 +1087,7 @@
673 <packing>
674 <property name="expand">False</property>
675 <property name="fill">False</property>
676+ <property name="position">0</property>
677 </packing>
678 </child>
679 <child>
680@@ -1073,6 +1100,9 @@
681 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
682 <property name="label" translatable="yes">Choose export format.</property>
683 </widget>
684+ <packing>
685+ <property name="position">0</property>
686+ </packing>
687 </child>
688 <child>
689 <widget class="GtkFixed" id="fixed37">
690@@ -1097,7 +1127,7 @@
691 <widget class="GtkViewport" id="viewport4">
692 <property name="visible">True</property>
693 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
694- <property name="resize_mode">GTK_RESIZE_QUEUE</property>
695+ <property name="resize_mode">queue</property>
696 <child>
697 <widget class="GtkVBox" id="vbox15">
698 <property name="visible">True</property>
699@@ -1115,6 +1145,7 @@
700 <packing>
701 <property name="expand">False</property>
702 <property name="fill">False</property>
703+ <property name="position">0</property>
704 </packing>
705 </child>
706 <child>
707@@ -1154,6 +1185,7 @@
708 <property name="expand">False</property>
709 <property name="fill">False</property>
710 <property name="padding">10</property>
711+ <property name="position">0</property>
712 </packing>
713 </child>
714 <child>
715@@ -1169,6 +1201,7 @@
716 <packing>
717 <property name="expand">False</property>
718 <property name="fill">False</property>
719+ <property name="position">0</property>
720 </packing>
721 </child>
722 <child>
723@@ -1217,7 +1250,7 @@
724 <packing>
725 <property name="expand">False</property>
726 <property name="fill">False</property>
727- <property name="pack_type">GTK_PACK_END</property>
728+ <property name="pack_type">end</property>
729 <property name="position">3</property>
730 </packing>
731 </child>
732@@ -1245,6 +1278,7 @@
733 <packing>
734 <property name="expand">False</property>
735 <property name="fill">False</property>
736+ <property name="position">0</property>
737 </packing>
738 </child>
739 <child>
740@@ -1272,6 +1306,9 @@
741 </packing>
742 </child>
743 </widget>
744+ <packing>
745+ <property name="position">0</property>
746+ </packing>
747 </child>
748 <child>
749 <widget class="GtkHBox" id="hbox21">
750@@ -1286,6 +1323,7 @@
751 <packing>
752 <property name="expand">False</property>
753 <property name="fill">False</property>
754+ <property name="position">0</property>
755 </packing>
756 </child>
757 <child>
758@@ -1305,7 +1343,7 @@
759 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
760 <property name="use_preview_label">False</property>
761 <property name="do_overwrite_confirmation">True</property>
762- <property name="action">GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER</property>
763+ <property name="action">select-folder</property>
764 <property name="title" translatable="yes">Select a folder</property>
765 </widget>
766 <packing>
767@@ -1318,7 +1356,7 @@
768 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
769 </widget>
770 <packing>
771- <property name="pack_type">GTK_PACK_END</property>
772+ <property name="pack_type">end</property>
773 <property name="position">3</property>
774 </packing>
775 </child>
776@@ -1368,15 +1406,16 @@
777 <packing>
778 <property name="expand">False</property>
779 <property name="fill">False</property>
780+ <property name="position">0</property>
781 </packing>
782 </child>
783 <child>
784 <widget class="GtkCheckButton" id="checkbutton1">
785+ <property name="label" translatable="yes">Export video with sound.</property>
786 <property name="visible">True</property>
787 <property name="can_focus">True</property>
788+ <property name="receives_default">False</property>
789 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
790- <property name="label" translatable="yes">Export video with sound.</property>
791- <property name="response_id">0</property>
792 <property name="draw_indicator">True</property>
793 </widget>
794 <packing>
795@@ -1387,6 +1426,9 @@
796 <placeholder/>
797 </child>
798 </widget>
799+ <packing>
800+ <property name="position">0</property>
801+ </packing>
802 </child>
803 <child>
804 <widget class="GtkFixed" id="fixed61">
805@@ -1425,7 +1467,7 @@
806 </widget>
807 <packing>
808 <property name="expand">False</property>
809- <property name="pack_type">GTK_PACK_END</property>
810+ <property name="pack_type">end</property>
811 <property name="position">5</property>
812 </packing>
813 </child>
814@@ -1448,6 +1490,9 @@
815 </packing>
816 </child>
817 </widget>
818+ <packing>
819+ <property name="position">0</property>
820+ </packing>
821 </child>
822 </widget>
823 <packing>
824@@ -1458,50 +1503,60 @@
825 <widget class="GtkHButtonBox" id="dialog-action_area11">
826 <property name="visible">True</property>
827 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
828- <property name="layout_style">GTK_BUTTONBOX_END</property>
829+ <property name="layout_style">end</property>
830 <child>
831 <widget class="GtkButton" id="button13">
832- <property name="visible">True</property>
833- <property name="can_focus">True</property>
834- <property name="receives_default">True</property>
835- <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
836 <property name="label" translatable="yes">gtk-cancel</property>
837- <property name="use_stock">True</property>
838 <property name="response_id">-6</property>
839+ <property name="visible">True</property>
840+ <property name="can_focus">True</property>
841+ <property name="receives_default">True</property>
842+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
843+ <property name="use_stock">True</property>
844 </widget>
845+ <packing>
846+ <property name="expand">False</property>
847+ <property name="fill">False</property>
848+ <property name="position">0</property>
849+ </packing>
850 </child>
851 <child>
852 <widget class="GtkButton" id="button16">
853- <property name="visible">True</property>
854- <property name="can_focus">True</property>
855- <property name="receives_default">True</property>
856- <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
857 <property name="label" translatable="yes">gtk-apply</property>
858- <property name="use_stock">True</property>
859 <property name="response_id">-10</property>
860+ <property name="visible">True</property>
861+ <property name="can_focus">True</property>
862+ <property name="receives_default">True</property>
863+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
864+ <property name="use_stock">True</property>
865 </widget>
866 <packing>
867+ <property name="expand">False</property>
868+ <property name="fill">False</property>
869 <property name="position">1</property>
870 </packing>
871 </child>
872 <child>
873 <widget class="GtkButton" id="button18">
874- <property name="visible">True</property>
875- <property name="can_focus">True</property>
876- <property name="receives_default">True</property>
877- <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
878 <property name="label" translatable="yes">gtk-close</property>
879- <property name="use_stock">True</property>
880 <property name="response_id">-7</property>
881+ <property name="visible">True</property>
882+ <property name="can_focus">True</property>
883+ <property name="receives_default">True</property>
884+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
885+ <property name="use_stock">True</property>
886 </widget>
887 <packing>
888+ <property name="expand">False</property>
889+ <property name="fill">False</property>
890 <property name="position">2</property>
891 </packing>
892 </child>
893 </widget>
894 <packing>
895 <property name="expand">False</property>
896- <property name="pack_type">GTK_PACK_END</property>
897+ <property name="pack_type">end</property>
898+ <property name="position">0</property>
899 </packing>
900 </child>
901 </widget>
902@@ -1509,8 +1564,8 @@
903 </widget>
904 <widget class="GtkDialog" id="dialog_project_properties">
905 <property name="border_width">5</property>
906- <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
907- <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
908+ <property name="window_position">center-on-parent</property>
909+ <property name="type_hint">dialog</property>
910 <property name="has_separator">False</property>
911 <child internal-child="vbox">
912 <widget class="GtkVBox" id="dialog-vbox4">
913@@ -1522,7 +1577,7 @@
914 <child internal-child="action_area">
915 <widget class="GtkHButtonBox" id="dialog-action_area4">
916 <property name="visible">True</property>
917- <property name="layout_style">GTK_BUTTONBOX_END</property>
918+ <property name="layout_style">end</property>
919 <child>
920 <placeholder/>
921 </child>
922@@ -1535,7 +1590,8 @@
923 </widget>
924 <packing>
925 <property name="expand">False</property>
926- <property name="pack_type">GTK_PACK_END</property>
927+ <property name="pack_type">end</property>
928+ <property name="position">0</property>
929 </packing>
930 </child>
931 </widget>
932@@ -1544,8 +1600,8 @@
933 <widget class="GtkDialog" id="Dialog_preferences">
934 <property name="border_width">5</property>
935 <property name="title" translatable="yes">Preferences</property>
936- <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
937- <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
938+ <property name="window_position">center-on-parent</property>
939+ <property name="type_hint">dialog</property>
940 <property name="has_separator">False</property>
941 <child internal-child="vbox">
942 <widget class="GtkVBox" id="dialog-vbox3">
943@@ -1559,8 +1615,8 @@
944 <widget class="GtkViewport" id="viewport3">
945 <property name="height_request">40</property>
946 <property name="visible">True</property>
947- <property name="resize_mode">GTK_RESIZE_QUEUE</property>
948- <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
949+ <property name="resize_mode">queue</property>
950+ <property name="shadow_type">etched-in</property>
951 <child>
952 <widget class="GtkLabel" id="label_preferences">
953 <property name="visible">True</property>
954@@ -1570,6 +1626,7 @@
955 </widget>
956 <packing>
957 <property name="padding">26</property>
958+ <property name="position">0</property>
959 </packing>
960 </child>
961 <child>
962@@ -1581,6 +1638,9 @@
963 <property name="xalign">0.10000000149011612</property>
964 <property name="label" translatable="yes">Select Theme</property>
965 </widget>
966+ <packing>
967+ <property name="position">0</property>
968+ </packing>
969 </child>
970 <child>
971 <widget class="GtkComboBox" id="combobox_theme">
972@@ -1602,10 +1662,10 @@
973 </child>
974 <child>
975 <widget class="GtkCheckButton" id="checkbutton_trash">
976- <property name="visible">True</property>
977- <property name="can_focus">True</property>
978 <property name="label" translatable="yes">Add Trash to montage view</property>
979- <property name="response_id">0</property>
980+ <property name="visible">True</property>
981+ <property name="can_focus">True</property>
982+ <property name="receives_default">False</property>
983 <property name="draw_indicator">True</property>
984 </widget>
985 <packing>
986@@ -1621,7 +1681,7 @@
987 <child internal-child="action_area">
988 <widget class="GtkHButtonBox" id="dialog-action_area3">
989 <property name="visible">True</property>
990- <property name="layout_style">GTK_BUTTONBOX_END</property>
991+ <property name="layout_style">end</property>
992 <child>
993 <placeholder/>
994 </child>
995@@ -1631,7 +1691,8 @@
996 </widget>
997 <packing>
998 <property name="expand">False</property>
999- <property name="pack_type">GTK_PACK_END</property>
1000+ <property name="pack_type">end</property>
1001+ <property name="position">0</property>
1002 </packing>
1003 </child>
1004 </widget>
1005
1006=== modified file 'images/luciole.xml'
1007--- images/luciole.xml 2009-05-01 14:42:17 +0000
1008+++ images/luciole.xml 2009-05-06 17:15:46 +0000
1009@@ -1,5 +1,4 @@
1010 <?xml version="1.0"?>
1011-<!--Generated with glade3 3.4.5 on Fri May 1 16:39:49 2009 -->
1012 <interface>
1013 <object class="GtkAdjustment" id="adjustment1">
1014 <property name="upper">4</property>
1015@@ -23,13 +22,13 @@
1016 </columns>
1017 <data>
1018 <row>
1019- <col id="0">DV format (raw DV)</col>
1020- </row>
1021- <row>
1022- <col id="0">Format DVD (mpeg2)</col>
1023- </row>
1024- <row>
1025- <col id="0">Format divx/xvid (avi)</col>
1026+ <col id="0" translatable="yes">DV format (raw DV)</col>
1027+ </row>
1028+ <row>
1029+ <col id="0" translatable="yes">Format DVD (mpeg2)</col>
1030+ </row>
1031+ <row>
1032+ <col id="0" translatable="yes">Format divx/xvid (avi)</col>
1033 </row>
1034 </data>
1035 </object>
1036@@ -39,10 +38,10 @@
1037 </columns>
1038 <data>
1039 <row>
1040- <col id="0">Default</col>
1041+ <col id="0" translatable="yes">Default</col>
1042 </row>
1043 <row>
1044- <col id="0">Tropical</col>
1045+ <col id="0" translatable="yes">Tropical</col>
1046 </row>
1047 </data>
1048 </object>
1049@@ -57,14 +56,14 @@
1050 </child>
1051 <child>
1052 <object class="GtkAction" id="file_new">
1053- <property name="stock_id" translatable="yes">gtk-new</property>
1054+ <property name="stock_id">gtk-new</property>
1055 <property name="name">file_new</property>
1056 <signal handler="on_file_new_activate" name="activate"/>
1057 </object>
1058 </child>
1059 <child>
1060 <object class="GtkAction" id="file_open">
1061- <property name="stock_id" translatable="yes">gtk-open</property>
1062+ <property name="stock_id">gtk-open</property>
1063 <property name="name">file_open</property>
1064 <signal handler="on_file_open_activate" name="activate"/>
1065 </object>
1066@@ -107,14 +106,14 @@
1067 </child>
1068 <child>
1069 <object class="GtkAction" id="file_save">
1070- <property name="stock_id" translatable="yes">gtk-save</property>
1071+ <property name="stock_id">gtk-save</property>
1072 <property name="name">file_save</property>
1073 <signal handler="on_file_save_activate" name="activate"/>
1074 </object>
1075 </child>
1076 <child>
1077 <object class="GtkAction" id="file_save_as">
1078- <property name="stock_id" translatable="yes">gtk-save-as</property>
1079+ <property name="stock_id">gtk-save-as</property>
1080 <property name="name">file_save_as</property>
1081 <signal handler="on_file_save_as_activate" name="activate"/>
1082 </object>
1083@@ -137,14 +136,14 @@
1084 </child>
1085 <child>
1086 <object class="GtkAction" id="file_close">
1087- <property name="stock_id" translatable="yes">gtk-close</property>
1088+ <property name="stock_id">gtk-close</property>
1089 <property name="name">file_close</property>
1090 <signal handler="on_file_close_activate" name="activate"/>
1091 </object>
1092 </child>
1093 <child>
1094 <object class="GtkAction" id="file_quit">
1095- <property name="stock_id" translatable="yes">gtk-quit</property>
1096+ <property name="stock_id">gtk-quit</property>
1097 <property name="name">file_quit</property>
1098 <signal handler="on_file_quit_activate" name="activate"/>
1099 </object>
1100@@ -160,7 +159,7 @@
1101 <property name="stock_id">gtk-properties</property>
1102 <property name="name">view_project</property>
1103 <property name="tooltip" translatable="yes">Project Properties</property>
1104- <property name="label" translatable="yes">Project Properties</property>
1105+ <property name="label" translatable="yes">Project properties</property>
1106 <signal handler="on_view_project_activate" name="activate"/>
1107 </object>
1108 </child>
1109@@ -180,7 +179,7 @@
1110 </child>
1111 <child>
1112 <object class="GtkAction" id="help_about">
1113- <property name="stock_id" translatable="yes">gtk-about</property>
1114+ <property name="stock_id">gtk-about</property>
1115 <property name="name">help_about</property>
1116 <property name="tooltip" translatable="yes">About</property>
1117 <signal handler="on_help_about_activate" name="activate"/>
1118@@ -219,11 +218,11 @@
1119 </menubar>
1120 </ui>
1121 </object>
1122+ <!-- interface-requires gtk+ 2.16 -->
1123+ <!-- interface-naming-policy toplevel-contextual -->
1124 <object class="GtkWindow" id="window1">
1125 <property name="icon">luciole.png</property>
1126 <property name="icon_name">Luciole</property>
1127- <signal handler="on_window1_delete_event" name="delete_event"/>
1128- <signal handler="on_window1_destroy_event" name="destroy_event"/>
1129 <child>
1130 <object class="GtkVBox" id="vbox1">
1131 <property name="visible">True</property>
1132@@ -233,6 +232,7 @@
1133 </object>
1134 <packing>
1135 <property name="expand">False</property>
1136+ <property name="position">0</property>
1137 </packing>
1138 </child>
1139 <child>
1140@@ -249,7 +249,7 @@
1141 <property name="border_width">7</property>
1142 <property name="label_xalign">0</property>
1143 <property name="label_yalign">0</property>
1144- <property name="shadow_type">GTK_SHADOW_IN</property>
1145+ <property name="shadow_type">in</property>
1146 <property name="xalign">0.10000000149011612</property>
1147 <property name="yalign">0.10000000149011612</property>
1148 <property name="ratio">1.25</property>
1149@@ -262,6 +262,9 @@
1150 </object>
1151 </child>
1152 </object>
1153+ <packing>
1154+ <property name="position">0</property>
1155+ </packing>
1156 </child>
1157 <child>
1158 <object class="GtkFixed" id="fixed7">
1159@@ -278,7 +281,7 @@
1160 <object class="GtkAspectFrame" id="aspectframe2">
1161 <property name="visible">True</property>
1162 <property name="label_xalign">0</property>
1163- <property name="shadow_type">GTK_SHADOW_NONE</property>
1164+ <property name="shadow_type">none</property>
1165 <child>
1166 <object class="GtkHBox" id="hbox_acquisition">
1167 <property name="height_request">51</property>
1168@@ -290,6 +293,9 @@
1169 <property name="visible">True</property>
1170 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1171 </object>
1172+ <packing>
1173+ <property name="position">0</property>
1174+ </packing>
1175 </child>
1176 <child>
1177 <object class="GtkToggleButton" id="acquisition_button">
1178@@ -297,6 +303,7 @@
1179 <property name="height_request">46</property>
1180 <property name="visible">True</property>
1181 <property name="can_focus">True</property>
1182+ <property name="receives_default">False</property>
1183 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1184 <property name="has_tooltip">True</property>
1185 <property name="tooltip-text" translatable="yes">Activate/Deactivate camera preview</property>
1186@@ -331,12 +338,14 @@
1187 <object class="GtkButton" id="snapshot_button">
1188 <property name="visible">True</property>
1189 <property name="can_focus">True</property>
1190+ <property name="can_default">True</property>
1191+ <property name="has_default">True</property>
1192 <property name="receives_default">True</property>
1193 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1194 <property name="has_tooltip">True</property>
1195 <property comments="Capturer une image" name="tooltip-text" translatable="yes">make a snapshot</property>
1196 <signal handler="on_button_capture_clicked" name="clicked"/>
1197- <accelerator key="c" modifiers="" signal="clicked"/>
1198+ <accelerator key="c" signal="clicked"/>
1199 <child>
1200 <object class="GtkImage" id="image5">
1201 <property name="visible">True</property>
1202@@ -369,28 +378,31 @@
1203 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1204 <child>
1205 <object class="GtkCheckButton" id="mixer_checkbutton">
1206+ <property name="label" translatable="yes">Mixer</property>
1207 <property name="visible">True</property>
1208- <property name="can_focus">True</property>
1209+ <property name="can_focus">False</property>
1210+ <property name="receives_default">False</property>
1211 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1212 <property name="has_tooltip">True</property>
1213 <property name="tooltip-text" translatable="yes">Mixer activation (onion skin)</property>
1214- <property name="label" translatable="yes">Mixer</property>
1215- <property name="relief">GTK_RELIEF_HALF</property>
1216+ <property name="relief">half</property>
1217 <property name="draw_indicator">True</property>
1218 <signal handler="on_mixer_checkbutton_toggled" name="toggled"/>
1219 </object>
1220+ <packing>
1221+ <property name="position">0</property>
1222+ </packing>
1223 </child>
1224 <child>
1225 <object class="GtkHScale" id="alpha_hscale">
1226 <property name="visible">True</property>
1227- <property name="can_focus">True</property>
1228 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1229 <property name="has_tooltip">True</property>
1230 <property name="tooltip-text" translatable="yes">Transparency level</property>
1231- <property name="update_policy">GTK_UPDATE_DISCONTINUOUS</property>
1232+ <property name="update_policy">discontinuous</property>
1233 <property name="adjustment">adjustment1</property>
1234 <property name="digits">0</property>
1235- <property name="value_pos">GTK_POS_LEFT</property>
1236+ <property name="value_pos">left</property>
1237 <signal handler="on_alpha_hscale_value_changed" name="value_changed"/>
1238 </object>
1239 <packing>
1240@@ -421,14 +433,16 @@
1241 <object class="GtkLabel" id="label_fpi">
1242 <property name="visible">True</property>
1243 <property name="label" translatable="yes">Image per seconds</property>
1244- <property name="justify">GTK_JUSTIFY_CENTER</property>
1245+ <property name="justify">center</property>
1246 </object>
1247+ <packing>
1248+ <property name="position">0</property>
1249+ </packing>
1250 </child>
1251 <child>
1252 <object class="GtkHScale" id="hscale_fps">
1253 <property name="width_request">125</property>
1254 <property name="visible">True</property>
1255- <property name="can_focus">True</property>
1256 <property name="adjustment">adjustment2</property>
1257 <property name="digits">0</property>
1258 <signal handler="on_hscale_fps_value_changed" name="value_changed"/>
1259@@ -461,6 +475,9 @@
1260 </packing>
1261 </child>
1262 </object>
1263+ <packing>
1264+ <property name="position">0</property>
1265+ </packing>
1266 </child>
1267 <child>
1268 <object class="GtkHBox" id="hbox2">
1269@@ -472,14 +489,15 @@
1270 <packing>
1271 <property name="expand">False</property>
1272 <property name="fill">False</property>
1273+ <property name="position">0</property>
1274 </packing>
1275 </child>
1276 <child>
1277 <object class="GtkViewport" id="viewport2">
1278 <property name="width_request">215</property>
1279 <property name="visible">True</property>
1280- <property name="resize_mode">GTK_RESIZE_QUEUE</property>
1281- <property name="shadow_type">GTK_SHADOW_ETCHED_OUT</property>
1282+ <property name="resize_mode">queue</property>
1283+ <property name="shadow_type">etched-out</property>
1284 <child>
1285 <object class="GtkVBox" id="vbox5">
1286 <property name="width_request">215</property>
1287@@ -489,16 +507,18 @@
1288 <property name="width_request">215</property>
1289 <property name="visible">True</property>
1290 <property name="can_focus">True</property>
1291- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
1292- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
1293- <property name="shadow_type">GTK_SHADOW_IN</property>
1294+ <property name="hscrollbar_policy">automatic</property>
1295+ <property name="vscrollbar_policy">automatic</property>
1296+ <property name="shadow_type">in</property>
1297 <child>
1298 <object class="GtkTreeView" id="treeview_capture">
1299 <property name="visible">True</property>
1300- <property name="can_focus">True</property>
1301 </object>
1302 </child>
1303 </object>
1304+ <packing>
1305+ <property name="position">0</property>
1306+ </packing>
1307 </child>
1308 <child>
1309 <object class="GtkVBox" id="vbox6">
1310@@ -511,6 +531,7 @@
1311 <packing>
1312 <property name="expand">False</property>
1313 <property name="fill">False</property>
1314+ <property name="position">0</property>
1315 </packing>
1316 </child>
1317 <child>
1318@@ -521,14 +542,17 @@
1319 <object class="GtkFixed" id="fixed3">
1320 <property name="visible">True</property>
1321 </object>
1322+ <packing>
1323+ <property name="position">0</property>
1324+ </packing>
1325 </child>
1326 <child>
1327 <object class="GtkButton" id="button_import">
1328 <property name="width_request">45</property>
1329 <property name="height_request">45</property>
1330 <property name="visible">True</property>
1331- <property name="can_focus">True</property>
1332- <property name="receives_default">True</property>
1333+ <property name="can_focus">False</property>
1334+ <property name="receives_default">False</property>
1335 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1336 <property name="has_tooltip">True</property>
1337 <property comments="Caller une image sur le flux video" name="tooltip-text" translatable="yes">Import images</property>
1338@@ -538,7 +562,7 @@
1339 <property name="visible">True</property>
1340 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1341 <property name="stock">gtk-add</property>
1342- <property name="icon_size">5</property>
1343+ <property name="icon-size">5</property>
1344 </object>
1345 </child>
1346 </object>
1347@@ -560,8 +584,8 @@
1348 <object class="GtkButton" id="button_trash_capture">
1349 <property name="width_request">45</property>
1350 <property name="height_request">45</property>
1351- <property name="can_focus">True</property>
1352- <property name="receives_default">True</property>
1353+ <property name="can_focus">False</property>
1354+ <property name="receives_default">False</property>
1355 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1356 <property comments="Jeter &#xE0; la poubelle" name="tooltip-text" translatable="yes">To trash</property>
1357 <signal handler="on_button_trash_capture_clicked" name="clicked"/>
1358@@ -570,7 +594,7 @@
1359 <property name="visible">True</property>
1360 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1361 <property name="stock">gtk-delete</property>
1362- <property name="icon_size">5</property>
1363+ <property name="icon-size">5</property>
1364 </object>
1365 </child>
1366 </object>
1367@@ -593,8 +617,8 @@
1368 <property name="width_request">45</property>
1369 <property name="height_request">45</property>
1370 <property name="visible">True</property>
1371- <property name="can_focus">True</property>
1372- <property name="receives_default">True</property>
1373+ <property name="can_focus">False</property>
1374+ <property name="receives_default">False</property>
1375 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1376 <property comments="D&#xE9;placer des images captur&#xE9;es dans la zone de montage" name="tooltip-text" translatable="yes">Move snapshot to montage area</property>
1377 <signal handler="on_button_capture_to_montage_clicked" name="clicked"/>
1378@@ -603,7 +627,7 @@
1379 <property name="visible">True</property>
1380 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1381 <property name="stock">gtk-go-forward</property>
1382- <property name="icon_size">5</property>
1383+ <property name="icon-size">5</property>
1384 </object>
1385 </child>
1386 </object>
1387@@ -643,7 +667,7 @@
1388 <packing>
1389 <property name="expand">False</property>
1390 <property name="fill">False</property>
1391- <property name="pack_type">GTK_PACK_END</property>
1392+ <property name="pack_type">end</property>
1393 <property name="position">1</property>
1394 </packing>
1395 </child>
1396@@ -672,8 +696,8 @@
1397 <object class="GtkViewport" id="viewport1">
1398 <property name="width_request">215</property>
1399 <property name="visible">True</property>
1400- <property name="resize_mode">GTK_RESIZE_QUEUE</property>
1401- <property name="shadow_type">GTK_SHADOW_ETCHED_OUT</property>
1402+ <property name="resize_mode">queue</property>
1403+ <property name="shadow_type">etched-out</property>
1404 <child>
1405 <object class="GtkVBox" id="vbox7">
1406 <property name="width_request">215</property>
1407@@ -683,9 +707,9 @@
1408 <property name="width_request">215</property>
1409 <property name="visible">True</property>
1410 <property name="can_focus">True</property>
1411- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
1412- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
1413- <property name="shadow_type">GTK_SHADOW_IN</property>
1414+ <property name="hscrollbar_policy">automatic</property>
1415+ <property name="vscrollbar_policy">automatic</property>
1416+ <property name="shadow_type">in</property>
1417 <child>
1418 <object class="GtkTreeView" id="treeview_montage">
1419 <property name="visible">True</property>
1420@@ -693,6 +717,9 @@
1421 </object>
1422 </child>
1423 </object>
1424+ <packing>
1425+ <property name="position">0</property>
1426+ </packing>
1427 </child>
1428 <child>
1429 <object class="GtkVBox" id="vbox3">
1430@@ -705,6 +732,7 @@
1431 <packing>
1432 <property name="expand">False</property>
1433 <property name="fill">False</property>
1434+ <property name="position">0</property>
1435 </packing>
1436 </child>
1437 <child>
1438@@ -715,14 +743,17 @@
1439 <object class="GtkFixed" id="fixed17">
1440 <property name="visible">True</property>
1441 </object>
1442+ <packing>
1443+ <property name="position">0</property>
1444+ </packing>
1445 </child>
1446 <child>
1447 <object class="GtkButton" id="button_up">
1448 <property name="width_request">45</property>
1449 <property name="height_request">45</property>
1450 <property name="visible">True</property>
1451- <property name="can_focus">True</property>
1452- <property name="receives_default">True</property>
1453+ <property name="can_focus">False</property>
1454+ <property name="receives_default">False</property>
1455 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1456 <property comments="Monter un/ou plusieurs images" name="tooltip-text" translatable="yes">Move up one or several images</property>
1457 <signal handler="on_button_up_clicked" name="clicked"/>
1458@@ -731,7 +762,7 @@
1459 <property name="visible">True</property>
1460 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1461 <property name="stock">gtk-go-up</property>
1462- <property name="icon_size">5</property>
1463+ <property name="icon-size">5</property>
1464 </object>
1465 </child>
1466 </object>
1467@@ -754,8 +785,8 @@
1468 <property name="width_request">45</property>
1469 <property name="height_request">45</property>
1470 <property name="visible">True</property>
1471- <property name="can_focus">True</property>
1472- <property name="receives_default">True</property>
1473+ <property name="can_focus">False</property>
1474+ <property name="receives_default">False</property>
1475 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1476 <property comments="Descendre un/ou plusieurs images" name="tooltip-text" translatable="yes">Move down one or several images</property>
1477 <signal handler="on_button_down_clicked" name="clicked"/>
1478@@ -764,7 +795,7 @@
1479 <property name="visible">True</property>
1480 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1481 <property name="stock">gtk-go-down</property>
1482- <property name="icon_size">5</property>
1483+ <property name="icon-size">5</property>
1484 </object>
1485 </child>
1486 </object>
1487@@ -787,8 +818,8 @@
1488 <property name="width_request">45</property>
1489 <property name="height_request">45</property>
1490 <property name="visible">True</property>
1491- <property name="can_focus">True</property>
1492- <property name="receives_default">True</property>
1493+ <property name="can_focus">False</property>
1494+ <property name="receives_default">False</property>
1495 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1496 <property comments="Jeter &#xE0; la poubelle" name="tooltip-text" translatable="yes">To trash</property>
1497 <signal handler="on_button_trash_clicked" name="clicked"/>
1498@@ -797,7 +828,7 @@
1499 <property name="visible">True</property>
1500 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1501 <property name="stock">gtk-delete</property>
1502- <property name="icon_size">5</property>
1503+ <property name="icon-size">5</property>
1504 </object>
1505 </child>
1506 </object>
1507@@ -820,15 +851,15 @@
1508 <property name="width_request">45</property>
1509 <property name="height_request">45</property>
1510 <property name="visible">True</property>
1511- <property name="can_focus">True</property>
1512- <property name="receives_default">True</property>
1513+ <property name="can_focus">False</property>
1514+ <property name="receives_default">False</property>
1515 <property name="tooltip-text" translatable="yes">Play video</property>
1516 <signal handler="on_button_play_toggled" name="toggled"/>
1517 <child>
1518 <object class="GtkImage" id="image_play_pause">
1519 <property name="visible">True</property>
1520 <property name="stock">gtk-media-play</property>
1521- <property name="icon_size">5</property>
1522+ <property name="icon-size">5</property>
1523 </object>
1524 </child>
1525 </object>
1526@@ -866,7 +897,7 @@
1527 <packing>
1528 <property name="expand">False</property>
1529 <property name="fill">False</property>
1530- <property name="pack_type">GTK_PACK_END</property>
1531+ <property name="pack_type">end</property>
1532 <property name="position">1</property>
1533 </packing>
1534 </child>
1535@@ -910,6 +941,9 @@
1536 <property name="visible">True</property>
1537 <property name="spacing">2</property>
1538 </object>
1539+ <packing>
1540+ <property name="position">0</property>
1541+ </packing>
1542 </child>
1543 <child>
1544 <object class="GtkProgressBar" id="progressbar_status">
1545@@ -936,8 +970,8 @@
1546 <object class="GtkFileChooserDialog" id="filechooserdialog_open">
1547 <property name="border_width">5</property>
1548 <property name="title" translatable="yes">Select a Luciole project</property>
1549- <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
1550- <property name="type_hint">GDK_WINDOW_TYPE_HINT_MENU</property>
1551+ <property name="window_position">center-on-parent</property>
1552+ <property name="type_hint">menu</property>
1553 <property name="has_separator">False</property>
1554 <child internal-child="vbox">
1555 <object class="GtkVBox" id="dialog-vbox1">
1556@@ -949,7 +983,7 @@
1557 <child internal-child="action_area">
1558 <object class="GtkHButtonBox" id="dialog-action_area1">
1559 <property name="visible">True</property>
1560- <property name="layout_style">GTK_BUTTONBOX_END</property>
1561+ <property name="layout_style">end</property>
1562 <child>
1563 <placeholder/>
1564 </child>
1565@@ -959,7 +993,8 @@
1566 </object>
1567 <packing>
1568 <property name="expand">False</property>
1569- <property name="pack_type">GTK_PACK_END</property>
1570+ <property name="pack_type">end</property>
1571+ <property name="position">0</property>
1572 </packing>
1573 </child>
1574 </object>
1575@@ -970,8 +1005,8 @@
1576 <property name="border_width">5</property>
1577 <property name="title" translatable="yes">About Luciole</property>
1578 <property name="resizable">False</property>
1579- <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
1580- <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
1581+ <property name="window_position">center-on-parent</property>
1582+ <property name="type_hint">dialog</property>
1583 <property name="has_separator">False</property>
1584 <property name="program_name">Luciole</property>
1585 <property name="version">0.7</property>
1586@@ -1015,11 +1050,12 @@
1587 <object class="GtkHButtonBox" id="dialog-action_area9">
1588 <property name="visible">True</property>
1589 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1590- <property name="layout_style">GTK_BUTTONBOX_END</property>
1591+ <property name="layout_style">end</property>
1592 </object>
1593 <packing>
1594 <property name="expand">False</property>
1595- <property name="pack_type">GTK_PACK_END</property>
1596+ <property name="pack_type">end</property>
1597+ <property name="position">0</property>
1598 </packing>
1599 </child>
1600 </object>
1601@@ -1028,8 +1064,9 @@
1602 <object class="GtkDialog" id="export1">
1603 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1604 <property name="border_width">5</property>
1605- <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
1606- <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
1607+ <property name="title" translatable="yes">Video Export</property>
1608+ <property name="window_position">center-on-parent</property>
1609+ <property name="type_hint">dialog</property>
1610 <property name="has_separator">False</property>
1611 <child internal-child="vbox">
1612 <object class="GtkVBox" id="dialog-vbox11">
1613@@ -1053,6 +1090,7 @@
1614 <packing>
1615 <property name="expand">False</property>
1616 <property name="fill">False</property>
1617+ <property name="position">0</property>
1618 </packing>
1619 </child>
1620 <child>
1621@@ -1065,6 +1103,9 @@
1622 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1623 <property name="label" translatable="yes">Choose export format.</property>
1624 </object>
1625+ <packing>
1626+ <property name="position">0</property>
1627+ </packing>
1628 </child>
1629 <child>
1630 <object class="GtkFixed" id="fixed37">
1631@@ -1089,7 +1130,7 @@
1632 <object class="GtkViewport" id="viewport4">
1633 <property name="visible">True</property>
1634 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1635- <property name="resize_mode">GTK_RESIZE_QUEUE</property>
1636+ <property name="resize_mode">queue</property>
1637 <child>
1638 <object class="GtkVBox" id="vbox15">
1639 <property name="visible">True</property>
1640@@ -1107,6 +1148,7 @@
1641 <packing>
1642 <property name="expand">False</property>
1643 <property name="fill">False</property>
1644+ <property name="position">0</property>
1645 </packing>
1646 </child>
1647 <child>
1648@@ -1150,6 +1192,7 @@
1649 <property name="expand">False</property>
1650 <property name="fill">False</property>
1651 <property name="padding">10</property>
1652+ <property name="position">0</property>
1653 </packing>
1654 </child>
1655 <child>
1656@@ -1165,6 +1208,7 @@
1657 <packing>
1658 <property name="expand">False</property>
1659 <property name="fill">False</property>
1660+ <property name="position">0</property>
1661 </packing>
1662 </child>
1663 <child>
1664@@ -1213,7 +1257,7 @@
1665 <packing>
1666 <property name="expand">False</property>
1667 <property name="fill">False</property>
1668- <property name="pack_type">GTK_PACK_END</property>
1669+ <property name="pack_type">end</property>
1670 <property name="position">3</property>
1671 </packing>
1672 </child>
1673@@ -1241,6 +1285,7 @@
1674 <packing>
1675 <property name="expand">False</property>
1676 <property name="fill">False</property>
1677+ <property name="position">0</property>
1678 </packing>
1679 </child>
1680 <child>
1681@@ -1268,6 +1313,9 @@
1682 </packing>
1683 </child>
1684 </object>
1685+ <packing>
1686+ <property name="position">0</property>
1687+ </packing>
1688 </child>
1689 <child>
1690 <object class="GtkHBox" id="hbox21">
1691@@ -1282,6 +1330,7 @@
1692 <packing>
1693 <property name="expand">False</property>
1694 <property name="fill">False</property>
1695+ <property name="position">0</property>
1696 </packing>
1697 </child>
1698 <child>
1699@@ -1301,7 +1350,7 @@
1700 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1701 <property name="use_preview_label">False</property>
1702 <property name="do_overwrite_confirmation">True</property>
1703- <property name="action">GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER</property>
1704+ <property name="action">select-folder</property>
1705 <property name="title" translatable="yes">Select a folder</property>
1706 </object>
1707 <packing>
1708@@ -1314,7 +1363,7 @@
1709 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1710 </object>
1711 <packing>
1712- <property name="pack_type">GTK_PACK_END</property>
1713+ <property name="pack_type">end</property>
1714 <property name="position">3</property>
1715 </packing>
1716 </child>
1717@@ -1364,14 +1413,16 @@
1718 <packing>
1719 <property name="expand">False</property>
1720 <property name="fill">False</property>
1721+ <property name="position">0</property>
1722 </packing>
1723 </child>
1724 <child>
1725 <object class="GtkCheckButton" id="checkbutton1">
1726+ <property name="label" translatable="yes">Export video with sound.</property>
1727 <property name="visible">True</property>
1728 <property name="can_focus">True</property>
1729+ <property name="receives_default">False</property>
1730 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1731- <property name="label" translatable="yes">Export video with sound.</property>
1732 <property name="draw_indicator">True</property>
1733 </object>
1734 <packing>
1735@@ -1382,6 +1433,9 @@
1736 <placeholder/>
1737 </child>
1738 </object>
1739+ <packing>
1740+ <property name="position">0</property>
1741+ </packing>
1742 </child>
1743 <child>
1744 <object class="GtkFixed" id="fixed61">
1745@@ -1417,7 +1471,7 @@
1746 </object>
1747 <packing>
1748 <property name="expand">False</property>
1749- <property name="pack_type">GTK_PACK_END</property>
1750+ <property name="pack_type">end</property>
1751 <property name="position">5</property>
1752 </packing>
1753 </child>
1754@@ -1440,6 +1494,9 @@
1755 </packing>
1756 </child>
1757 </object>
1758+ <packing>
1759+ <property name="position">0</property>
1760+ </packing>
1761 </child>
1762 </object>
1763 <packing>
1764@@ -1450,53 +1507,62 @@
1765 <object class="GtkHButtonBox" id="dialog-action_area11">
1766 <property name="visible">True</property>
1767 <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1768- <property name="layout_style">GTK_BUTTONBOX_END</property>
1769+ <property name="layout_style">end</property>
1770 <child>
1771 <object class="GtkButton" id="button13">
1772- <property name="visible">True</property>
1773- <property name="can_focus">True</property>
1774- <property name="receives_default">True</property>
1775- <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1776 <property name="label" translatable="yes">gtk-cancel</property>
1777+ <property name="visible">True</property>
1778+ <property name="can_focus">True</property>
1779+ <property name="receives_default">True</property>
1780+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1781 <property name="use_stock">True</property>
1782 </object>
1783+ <packing>
1784+ <property name="expand">False</property>
1785+ <property name="fill">False</property>
1786+ <property name="position">0</property>
1787+ </packing>
1788 </child>
1789 <child>
1790 <object class="GtkButton" id="button16">
1791- <property name="visible">True</property>
1792- <property name="can_focus">True</property>
1793- <property name="receives_default">True</property>
1794- <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1795 <property name="label" translatable="yes">gtk-apply</property>
1796+ <property name="visible">True</property>
1797+ <property name="can_focus">True</property>
1798+ <property name="receives_default">True</property>
1799+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1800 <property name="use_stock">True</property>
1801 </object>
1802 <packing>
1803+ <property name="expand">False</property>
1804+ <property name="fill">False</property>
1805 <property name="position">1</property>
1806 </packing>
1807 </child>
1808 <child>
1809 <object class="GtkButton" id="button18">
1810- <property name="visible">True</property>
1811- <property name="can_focus">True</property>
1812- <property name="receives_default">True</property>
1813- <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1814 <property name="label" translatable="yes">gtk-close</property>
1815+ <property name="visible">True</property>
1816+ <property name="can_focus">True</property>
1817+ <property name="receives_default">True</property>
1818+ <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
1819 <property name="use_stock">True</property>
1820 </object>
1821 <packing>
1822+ <property name="expand">False</property>
1823+ <property name="fill">False</property>
1824 <property name="position">2</property>
1825 </packing>
1826 </child>
1827 </object>
1828 <packing>
1829 <property name="expand">False</property>
1830- <property name="pack_type">GTK_PACK_END</property>
1831+ <property name="pack_type">end</property>
1832+ <property name="position">0</property>
1833 </packing>
1834 </child>
1835 </object>
1836 </child>
1837 <action-widgets>
1838- <action-widget response="0">checkbutton1</action-widget>
1839 <action-widget response="-6">button13</action-widget>
1840 <action-widget response="-10">button16</action-widget>
1841 <action-widget response="-7">button18</action-widget>
1842@@ -1504,8 +1570,8 @@
1843 </object>
1844 <object class="GtkDialog" id="dialog_project_properties">
1845 <property name="border_width">5</property>
1846- <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
1847- <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
1848+ <property name="window_position">center-on-parent</property>
1849+ <property name="type_hint">dialog</property>
1850 <property name="has_separator">False</property>
1851 <child internal-child="vbox">
1852 <object class="GtkVBox" id="dialog-vbox4">
1853@@ -1517,7 +1583,7 @@
1854 <child internal-child="action_area">
1855 <object class="GtkHButtonBox" id="dialog-action_area4">
1856 <property name="visible">True</property>
1857- <property name="layout_style">GTK_BUTTONBOX_END</property>
1858+ <property name="layout_style">end</property>
1859 <child>
1860 <placeholder/>
1861 </child>
1862@@ -1530,7 +1596,8 @@
1863 </object>
1864 <packing>
1865 <property name="expand">False</property>
1866- <property name="pack_type">GTK_PACK_END</property>
1867+ <property name="pack_type">end</property>
1868+ <property name="position">0</property>
1869 </packing>
1870 </child>
1871 </object>
1872@@ -1539,8 +1606,8 @@
1873 <object class="GtkDialog" id="Dialog_preferences">
1874 <property name="border_width">5</property>
1875 <property name="title" translatable="yes">Preferences</property>
1876- <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
1877- <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
1878+ <property name="window_position">center-on-parent</property>
1879+ <property name="type_hint">dialog</property>
1880 <property name="has_separator">False</property>
1881 <child internal-child="vbox">
1882 <object class="GtkVBox" id="dialog-vbox3">
1883@@ -1554,8 +1621,8 @@
1884 <object class="GtkViewport" id="viewport3">
1885 <property name="height_request">40</property>
1886 <property name="visible">True</property>
1887- <property name="resize_mode">GTK_RESIZE_QUEUE</property>
1888- <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
1889+ <property name="resize_mode">queue</property>
1890+ <property name="shadow_type">etched-in</property>
1891 <child>
1892 <object class="GtkLabel" id="label_preferences">
1893 <property name="visible">True</property>
1894@@ -1565,6 +1632,7 @@
1895 </object>
1896 <packing>
1897 <property name="padding">26</property>
1898+ <property name="position">0</property>
1899 </packing>
1900 </child>
1901 <child>
1902@@ -1576,6 +1644,9 @@
1903 <property name="xalign">0.10000000149011612</property>
1904 <property name="label" translatable="yes">Select Theme</property>
1905 </object>
1906+ <packing>
1907+ <property name="position">0</property>
1908+ </packing>
1909 </child>
1910 <child>
1911 <object class="GtkComboBox" id="combobox_theme">
1912@@ -1602,9 +1673,10 @@
1913 </child>
1914 <child>
1915 <object class="GtkCheckButton" id="checkbutton_trash">
1916- <property name="visible">True</property>
1917- <property name="can_focus">True</property>
1918 <property name="label" translatable="yes">Add Trash to montage view</property>
1919+ <property name="visible">True</property>
1920+ <property name="can_focus">True</property>
1921+ <property name="receives_default">False</property>
1922 <property name="draw_indicator">True</property>
1923 </object>
1924 <packing>
1925@@ -1620,7 +1692,7 @@
1926 <child internal-child="action_area">
1927 <object class="GtkHButtonBox" id="dialog-action_area3">
1928 <property name="visible">True</property>
1929- <property name="layout_style">GTK_BUTTONBOX_END</property>
1930+ <property name="layout_style">end</property>
1931 <child>
1932 <placeholder/>
1933 </child>
1934@@ -1630,14 +1702,12 @@
1935 </object>
1936 <packing>
1937 <property name="expand">False</property>
1938- <property name="pack_type">GTK_PACK_END</property>
1939+ <property name="pack_type">end</property>
1940+ <property name="position">0</property>
1941 </packing>
1942 </child>
1943 </object>
1944 </child>
1945- <action-widgets>
1946- <action-widget response="0">checkbutton_trash</action-widget>
1947- </action-widgets>
1948 </object>
1949 <object class="GtkWindow" id="window2">
1950 <child>
1951
1952=== modified file 'lucioLib/controller/controller_load_project.py'
1953--- lucioLib/controller/controller_load_project.py 2009-04-28 13:36:55 +0000
1954+++ lucioLib/controller/controller_load_project.py 2009-05-07 09:27:18 +0000
1955@@ -77,12 +77,13 @@
1956 """
1957 _TIMEOUT = 10 # 10 ms timer
1958
1959- def __init__(self, project, gui, cb_on_finish, cb_acq_error) :
1960+ def __init__(self, project, gui, cb_on_finish, cb_acq_error, cb_image_capture_done) :
1961 """ Init Thread, init gobject timer and clear progressbar """
1962 self.project = project
1963 self.gui = gui
1964 self._cb_on_finish = cb_on_finish
1965 self._cb_acq_error = cb_acq_error
1966+ self._cb_image_capture_done = cb_image_capture_done
1967
1968 self._progress_bar_widget = self.gui.status_progress_bar
1969
1970@@ -155,18 +156,16 @@
1971
1972 # update acquisition object
1973 if self.project['hardtype'] == LCONST.DIGICAM :
1974- # acquisition for digital camera
1975- acq_obj = LACQ.luciole_acquisition_digicam(
1976- self.gui.display,
1977- project_dir = self.project['project_dir']
1978- )
1979+ # No acquisition for digital camera
1980+ acq_obj = None
1981 elif self.project['hardtype'] == LCONST.WEBCAM :
1982 # acquisition for WEBCAM
1983 acq_obj = LACQ.luciole_acquisition_webcam(
1984 self.gui.display,
1985 data = self.project['webcam_data'],
1986 project_dir = self.project['project_dir'],
1987- cb_error = self._cb_acq_error)
1988+ cb_error = self._cb_acq_error,
1989+ cb_capture_done = self._cb_image_capture_done)
1990 else :
1991 # default acquisition load i.e. DVCAM
1992 acq_obj = LACQ.luciole_acquisition(
1993@@ -174,8 +173,9 @@
1994 False,
1995 self.project['hardtype'],
1996 project_dir = self.project['project_dir'],
1997- cb_error = self._cb_acq_error)
1998-
1999+ cb_error = self._cb_acq_error,
2000+ cb_capture_done = self._cb_image_capture_done)
2001+
2002
2003
2004 # for mixer initialisation set image to miw with the last image of the capture view. only if capture image is not empty
2005
2006=== modified file 'lucioLib/gui/assistant_new_project.py'
2007--- lucioLib/gui/assistant_new_project.py 2009-04-20 13:11:10 +0000
2008+++ lucioLib/gui/assistant_new_project.py 2009-05-07 09:27:18 +0000
2009@@ -28,15 +28,13 @@
2010
2011 from .. import luciole_constants as LCONST
2012 from .. import luciole_image as LIMG
2013+import webcam_detection_widget as LWDW
2014 import dialog as GMSG
2015
2016-
2017-
2018 import gtk
2019 import os.path
2020 import re
2021 import threading
2022-import webcam_detection_widget as LWDW
2023 from gettext import gettext as _
2024
2025
2026@@ -120,7 +118,6 @@
2027
2028 def project_name_changed(self,widget):
2029 """ indicate project name change. Set page complete if non blank text is set."""
2030- print type(widget)
2031 if widget.get_text() == "" :
2032 self.assistant.set_page_complete(self,False)
2033 else :
2034@@ -147,7 +144,7 @@
2035 l_state = True
2036 else :
2037 l_state = False
2038- msg = _("%s is noy valid. Not valid project name. Should be a combination of alhanumeric and '_' characters "%l_project_name)
2039+ msg = _("%s is not valid. Not valid project name. Should be a combination of alhanumeric and '_' characters "%l_project_name)
2040 #GMSG.Dialog.ErrorMessage(assistant,msg)
2041 print msg
2042 if (l_state==True) :
2043@@ -223,7 +220,8 @@
2044 HBox.add(radiobutton)
2045
2046 l_hardtype = LCONST.DIGICAM
2047- radiobutton = gtk.RadioButton(group=radiobutton1, label= LCONST.HardTypeName[l_hardtype])
2048+ desc=_(" Other device.\n(Manual import)")
2049+ radiobutton = gtk.RadioButton(group=radiobutton1, label= desc )
2050 # conect toggled signal to button
2051 radiobutton.connect('toggled',self.radiobutton_toggled,l_hardtype)
2052 HBox.add(radiobutton)
2053@@ -307,12 +305,12 @@
2054
2055 def _on_webcam_detect_complete(self,webcam_obj) :
2056 """ callback , executed when webcam detection is complete """
2057- # assisant page can now be set as complete
2058- self.assistant.set_page_complete(self,True)
2059
2060- super(Page_webcam,self)._on_webcam_detect_complete(webcam_obj)
2061-
2062-
2063+ nb_webcam = super(Page_webcam,self)._on_webcam_detect_complete(webcam_obj)
2064+ if nb_webcam > 0 :
2065+ # almost one webcam detected
2066+ # assisant page can now be set as complete
2067+ self.assistant.set_page_complete(self,True)
2068 class Page_summary(gtk.VBox) :
2069 """ Asistant summary page : show lucuile project info"""
2070
2071@@ -354,7 +352,7 @@
2072 string = "%s : %s "%( _('Number of frames per seconds'), fps)
2073 text_list.append(string)
2074
2075- # display Hardware type
2076+ # display Hardware type
2077 string = "%s : %s "%( _('Hardware type'), LCONST.HardTypeName[self.project_data['hardtype']] )
2078 text_list.append(string)
2079
2080@@ -412,8 +410,8 @@
2081
2082 self.assistant.set_property('title',_('Luciole project assistant'))
2083
2084- # assistant logo
2085- image = LIMG.Image('images/luciole_logo.png',True,2)
2086+ # assistant logo with no text
2087+ image = LIMG.Image('images/luciole_logo.png',True,2,False)
2088
2089
2090 #
2091@@ -441,7 +439,8 @@
2092 self.p3 = Page_webcam( self.assistant, self.project_data)
2093 self.assistant.append_page(self.p3)
2094 self.assistant.set_page_title( self.p3, _(' Webcam detection '))
2095- self.assistant.set_page_type( self.p3, gtk.ASSISTANT_PAGE_PROGRESS)
2096+ #self.assistant.set_page_type( self.p3, gtk.ASSISTANT_PAGE_PROGRESS)
2097+ self.assistant.set_page_type( self.p3, gtk.ASSISTANT_PAGE_CONTENT)
2098 self.assistant.set_page_side_image(self.p1,image.pixbuf_thumb)
2099
2100 #
2101@@ -470,7 +469,6 @@
2102
2103 def page_func(self,page_num) :
2104 """ call back to verify the validity of the pages """
2105- print "entering page func , page id : ",page_num
2106 page_out = page_num
2107 if (self.verify_page_ok(page_num)) :
2108 if (page_out == 1 ) and (self.project_data['hardtype'] != LCONST.WEBCAM) :
2109
2110=== modified file 'lucioLib/gui/gui_controller.py'
2111--- lucioLib/gui/gui_controller.py 2009-04-28 10:37:08 +0000
2112+++ lucioLib/gui/gui_controller.py 2009-05-04 22:24:14 +0000
2113@@ -134,6 +134,15 @@
2114
2115 def f_get_status_progress_bar(self) : return Gui_status_controller(self._status_bar,self._status_progress_bar)
2116 status_progress_bar = property(f_get_status_progress_bar,None,None, 'The status progress bar')
2117+
2118+
2119+ def f_get_is_button_snapshot_sensitive(self) :
2120+ return self._snapshot_button.get_property('sensitive')
2121+ def f_set_is_button_snapshot_sensitive(self, value) :
2122+ if type(value) == bool :
2123+ self._snapshot_button.set_sensitive(value)
2124+ self._snapshot_button.grab_focus()
2125+ is_button_snapshot_sensitive = property(f_get_is_button_snapshot_sensitive,f_set_is_button_snapshot_sensitive,None, 'Snapshot button sensitivity')
2126
2127 def __init__(self, ctrl_obj) :
2128
2129
2130=== modified file 'lucioLib/gui/webcam_detection_widget.py'
2131--- lucioLib/gui/webcam_detection_widget.py 2009-04-20 08:50:43 +0000
2132+++ lucioLib/gui/webcam_detection_widget.py 2009-05-07 08:24:31 +0000
2133@@ -155,14 +155,16 @@
2134 def prepare_webcam_detection(self) :
2135 """ prepare assistant page for the webcam detection page """
2136
2137- # destroy label for webcam status
2138- self.label.destroy()
2139+ # Hide label for webcam status
2140+ self.label.hide()
2141
2142 # launch webcam detection thread
2143 t_webcam = Webcam_detection_thread(self.progressbar,self._on_webcam_detect_complete)
2144
2145 def _on_webcam_detect_complete(self,webcam_obj) :
2146- """ callback , executed when webcam detection is complete """
2147+ """ callback , executed when webcam detection is complete
2148+ Return the number of detected webcams"""
2149+ status = 0
2150
2151 if webcam_obj != None and webcam_obj.webcam_devices != None:
2152 vbox = self.VBox
2153@@ -183,10 +185,13 @@
2154 if webcam_index == 0 :
2155 # select by default.
2156 self.project_data['webcam_data'] = webcam_obj.get_gst_best_input(webcam_index)
2157- self.label.set_text(_('Detected webcam'))
2158+ self.label.set_text(_('Detected webcam(s)'))
2159+ status = len(webcam_obj.webcam_devices)
2160 else :
2161+ self.project_data['webcam_data'] = None
2162 self.label.set_text(_('No webcam detected'))
2163 self.label.show()
2164+ return status
2165
2166 def on_webcam_radio_button_clicked(self,widget,webcam_index,webcam_obj):
2167 """ callback for webcam rasdio button.
2168
2169=== modified file 'lucioLib/lucioWebCamDetect/luciole_webcam_detection.py'
2170--- lucioLib/lucioWebCamDetect/luciole_webcam_detection.py 2009-03-08 18:06:41 +0000
2171+++ lucioLib/lucioWebCamDetect/luciole_webcam_detection.py 2009-05-06 16:38:41 +0000
2172@@ -101,7 +101,7 @@
2173 # a format was detected : prepare pipeline info
2174 webcam_bin_data['width'] = width
2175 webcam_bin_data['height'] = height
2176- webcam_bin_data['source_input'] = self._webcam_devices[webcam_device_index]['webcam_data']['gstreamer_src']
2177+ webcam_bin_data['source_input'] = self._webcam_devices[webcam_device_index]['v4l_driver']
2178 webcam_bin_data['device'] = self._webcam_devices[webcam_device_index]['device']
2179 webcam_bin_data['name'] = self._webcam_devices[webcam_device_index]['name']
2180
2181@@ -142,6 +142,15 @@
2182 webcam_device["name"] = dev.GetProperty ('info.product')
2183 if webcam_device["name"] == None : webcam_device["name"] = "Unknown"
2184 webcam_device["device"] = dev.GetProperty ('video4linux.device')
2185+
2186+ # detect if need to use v4lsrc or v4l2sec ; property :video4linux.version
2187+ # for robustness if version = 1 , than use v4lsrc else use v4l2src
2188+ version = dev.GetProperty ('video4linux.version')
2189+ # default is v4l2src
2190+ webcam_device['v4l_driver'] = 'v4l2src'
2191+ if version != None and int(version) == 1 :
2192+ webcam_device['v4l_driver'] = 'v4lsrc'
2193+
2194
2195 if (not webcam_device["device"] == None) and ( self.__is_device_readable(webcam_device["device"]) ) :
2196 self._webcam_devices.append(webcam_device)
2197@@ -162,7 +171,7 @@
2198 nb_device_detected = 0
2199 for webcam_device in self._webcam_devices :
2200 # for each detected device get the data (source type, mimetype, resolution)
2201- webcam_device_data = self.__get_gst_webcam_data(webcam_device["device"])
2202+ webcam_device_data = self.__get_gst_webcam_data(webcam_device["device"], webcam_device["v4l_driver"])
2203 if webcam_device_data != None :
2204 webcam_device["webcam_data"] = webcam_device_data
2205 nb_device_detected = nb_device_detected +1
2206@@ -185,40 +194,37 @@
2207 return is_readable
2208 __is_device_readable = staticmethod(__is_device_readable)
2209
2210- def __get_gst_webcam_data(device_name) :
2211+ def __get_gst_webcam_data(device_name,driver) :
2212 """ get data from the webcam test compatible sources
2213 input device_name is the file path ( ex. /dev/video0)
2214 """
2215+ # creation of a fake gstreamer to test webcam with v4lsrc ot v4l2src
2216 webcam_device=dict()
2217- for videoSource in GSTREAMER_VIDEO_SOURCES :
2218- # creation of a fake gstreamer to test webcam with v4lsrc ot v4l2src
2219- pipeline_desc = "%s name=source device =%s ! fakesink" %(videoSource, device_name)
2220- pipeline = gst.parse_launch(pipeline_desc)
2221-
2222- #Start pipeline and check for state
2223- pipeline.set_state(gst.STATE_PLAYING)
2224- ret = pipeline.get_state(timeout=10000*gst.MSECOND)
2225-
2226- if ret[0] == gst.STATE_CHANGE_SUCCESS :
2227- # webcam is detected succefully
2228- pipeline.set_state(gst.STATE_PAUSED)
2229-
2230- # get source element name and webcam name
2231- src = pipeline.get_by_name('source')
2232- name = src.get_property('device-name')
2233-
2234- # store video source to use
2235- webcam_device["gstreamer_src"] = videoSource
2236-
2237- # start detection of source video formats
2238- # video formats are accesible in the capabilities
2239- # of the source "src" pad
2240- pad = src.get_pad("src")
2241- caps = pad.get_caps()
2242- luciole_webcam_detection.gst_get_supported_video_formats(webcam_device,caps)
2243+
2244+ pipeline_desc = "%s name=source device =%s ! fakesink" %(driver, device_name)
2245+ pipeline = gst.parse_launch(pipeline_desc)
2246+
2247+ #Start pipeline and check for state
2248+ pipeline.set_state(gst.STATE_PLAYING)
2249+ ret = pipeline.get_state(timeout=10000*gst.MSECOND)
2250+
2251+ if ret[0] == gst.STATE_CHANGE_SUCCESS :
2252+ # webcam is detected succefully
2253+ pipeline.set_state(gst.STATE_PAUSED)
2254+
2255+ # get source element name and webcam name
2256+ src = pipeline.get_by_name('source')
2257+ name = src.get_property('device-name')
2258+
2259+
2260+ # start detection of source video formats
2261+ # video formats are accesible in the capabilities
2262+ # of the source "src" pad
2263+ pad = src.get_pad("src")
2264+ caps = pad.get_caps()
2265+ luciole_webcam_detection.gst_get_supported_video_formats(webcam_device,caps)
2266 # stop playing with webcam
2267 pipeline.set_state(gst.STATE_NULL)
2268- #for k,v in webcam_device.iteritems() : print "%s : %s"%(k,v)
2269 return webcam_device
2270 __get_gst_webcam_data = staticmethod(__get_gst_webcam_data)
2271
2272@@ -294,13 +300,17 @@
2273 gst_get_supported_video_formats = staticmethod(__gst_get_supported_video_formats)
2274
2275
2276-#CamObj = luciole_webcam_detection()
2277-#val = CamObj.detect_webcam()
2278-#print " found %s webCam device "%val
2279-
2280-#if val >0 :
2281-# for device in CamObj.webcam_devices :
2282-# for k,j in device.iteritems() : print "%s : %s"%(k,j)
2283+
2284+if __name__ == '__main__' :
2285+ # TEST PURPOSE : for webcam detection
2286+ CamObj = luciole_webcam_detection()
2287+ val = CamObj.detect_webcam()
2288+ print " found %s webCam device "%val
2289+
2290+ if val >0 :
2291+ for device in CamObj.webcam_devices :
2292+ for k,j in device.iteritems() : print "%s : %s"%(k,j)
2293+ print "----------------------------------------------------------------"
2294
2295
2296
2297
2298=== modified file 'lucioLib/luciole_acquisition.py'
2299--- lucioLib/luciole_acquisition.py 2009-04-16 11:55:24 +0000
2300+++ lucioLib/luciole_acquisition.py 2009-05-07 09:27:18 +0000
2301@@ -59,21 +59,26 @@
2302 def get_HardType(self) : return self.__HardType
2303 HardType = property(get_HardType,None,None,"Hard type for acquisition " )
2304
2305- def __init__(self,displayWidget,IsOnionSkinActive = False,HardType=LCONST.FAKE, project_dir = None, cb_error = None ):
2306+ def __init__(self,displayWidget,IsOnionSkinActive = False,HardType=LCONST.FAKE, project_dir = None, cb_error = None, cb_capture_done = None ):
2307 """ Init of class luciole_acquisition :
2308 inputs :
2309 - displayWidget : The gtk.DrawingArea object for display the acquired stream from video
2310 - IsOnionSkinActive : Is onion skin need to be activated
2311 - HardType : Type of video to acquire
2312 - project_dir : path to the project dir
2313+ - cb_error : callback to indicate gstreamer error
2314+ - cb_capture_done : callback to indicate is done and a file is available
2315 """
2316 self.__HardType = HardType
2317 self.__project_dir = project_dir
2318
2319 self._ctrller_on_error = cb_error
2320+ self._cb_capture_done = cb_capture_done
2321+
2322+
2323 if self.__HardType != LCONST.DIGICAM :
2324 # Acquistion is gstreamer based
2325- self.GstObj = MGST.LucioleGstreamer(displayWidget,self.__project_dir,self._cb_on_error)
2326+ self.GstObj = MGST.LucioleGstreamer(displayWidget,self.__project_dir,self._cb_on_error, self._cb_capture_done)
2327
2328 self.Image2save = os.path.join(project_dir, LCONST.ACQUIRED_IMAGE_NAME)
2329 self.__Image2Mix = None #No image to mix at creation
2330@@ -121,7 +126,7 @@
2331
2332 def capture_image(self) :
2333 """ capture/snapshot of an image from video device """
2334- pass
2335+ self.GstObj.capture()
2336 # commented by nbd@grape : Now job of controller
2337 # if self.GstObj.is_playing():
2338 # # copy of snapshot on capture Treeview
2339@@ -183,33 +188,20 @@
2340
2341
2342 class luciole_acquisition_digicam(luciole_acquisition) :
2343- """ Heritage of luciole_acquisition class to handle digicam device """
2344+ """ Heritage of luciole_acquisition class to handle digicam device : Dummy class dor debug purpose only. """
2345
2346 def __init__(self,display):
2347 """ constructor :
2348 - display : The gtk.DrawingArea object for display the image acquired from digicam. REMARK Is this needed ??
2349 """
2350 luciole_acquisition.__init__(self,display,False,LCONST.DIGICAM,None)
2351- try :
2352- pass
2353- # tbd
2354- except M_EXCEP.LucioException, err:
2355- print err.message
2356-
2357- def start_acquisition(self) :
2358- """ open only the menu dialog to import images from digicam source """
2359- fileList = self.importObj.get_images_from_source()
2360- # nbd@grape : ????? what is the job here
2361- # map(lambda x :self.tvCapture.AppendFromCapture(x), fileList)
2362-
2363-
2364
2365 class luciole_acquisition_webcam(luciole_acquisition) :
2366 """ Heritage of luciole acquisition for webcam usage """
2367
2368- def __init__(self,displayWidget,IsOnionSkinActive = False,data=None, project_dir = None, cb_error = None ):
2369+ def __init__(self,displayWidget,IsOnionSkinActive = False,data=None, project_dir = None, cb_error = None, cb_capture_done = None):
2370 """ module init as parent + new param (data) """
2371- luciole_acquisition.__init__( self, displayWidget, HardType = LCONST.WEBCAM ,project_dir = project_dir, cb_error = cb_error )
2372+ luciole_acquisition.__init__( self, displayWidget, HardType = LCONST.WEBCAM ,project_dir = project_dir, cb_error = cb_error , cb_capture_done = cb_capture_done )
2373
2374 # add webcam data info to gst obj
2375 self.GstObj.webcam_data = data
2376
2377=== modified file 'lucioLib/luciole_constants.py'
2378--- lucioLib/luciole_constants.py 2009-04-27 13:12:50 +0000
2379+++ lucioLib/luciole_constants.py 2009-05-07 09:27:18 +0000
2380@@ -25,6 +25,7 @@
2381
2382 # Luciole constants file
2383
2384+from gettext import gettext as _
2385
2386 ########################################
2387 # Hardware constants
2388@@ -34,7 +35,12 @@
2389 WEBCAM = 2
2390 DIGICAM= 3
2391 HardType=(FAKE,DVCAM,WEBCAM,DIGICAM)
2392-HardTypeName=("FAKE","DVCAM","WEBCAM","DIGICAM")
2393+HardTypeName=(
2394+ "FAKE",
2395+ "DVCAM",
2396+ "WEBCAM",
2397+ _("OTHER DEVICE"),
2398+ )
2399
2400 ########################################
2401 # Image screen display constants
2402
2403=== modified file 'lucioLib/luciole_controller.py'
2404--- lucioLib/luciole_controller.py 2009-05-01 16:18:25 +0000
2405+++ lucioLib/luciole_controller.py 2009-05-07 09:27:18 +0000
2406@@ -41,7 +41,7 @@
2407
2408 import gui as LTK
2409 import time
2410-
2411+import threading
2412 import os.path
2413
2414 from gettext import gettext as _
2415@@ -190,21 +190,28 @@
2416 def image_capture(self) :
2417 """ add an image from capture """
2418 if self._acquirer_active == True and self.acq_obj.IsStreamingActive == True :
2419- # streaming is active video capture can be made is active
2420-
2421 # play sound
2422 self.sound_player.play()
2423- try :
2424- # 1. copy it to rush dir and rename it
2425- l_rush_imagename = self.__move_capture_to_rush_folder()
2426- except L_EXCEP.LucioException,err :
2427- print " DEBUG ERROR in image capture :", err
2428- else :
2429- #2.append it to rush and capture obj
2430- self.__append_image_to_project(l_rush_imagename)
2431
2432-
2433-
2434+ #inactive(sentitivity) snapshot button
2435+ self.gui.is_button_snapshot_sensitive = False
2436+
2437+ # streaming is active video capture can be made is active
2438+ self.acq_obj.capture_image()
2439+
2440+ def _cb_image_catpure_done(self):
2441+ """ callback to indicate capture is done. Now image can be proccessed into poject"""
2442+ try :
2443+ # 1. copy it to rush dir and rename it
2444+ l_rush_imagename = self.__move_capture_to_rush_folder()
2445+ except L_EXCEP.LucioException,err :
2446+ print " DEBUG ERROR in image capture :", err
2447+ else :
2448+ #2.append it to rush and capture obj
2449+ self.__append_image_to_project(l_rush_imagename)
2450+
2451+ #active(sentitivity) snapshot button
2452+ self.gui.is_button_snapshot_sensitive = True
2453
2454 def image_import(self) :
2455 """ import images from external source """
2456@@ -409,6 +416,14 @@
2457 self._set_acquirer(False) # stop acquirer
2458 self._set_imager(True) # allow imager
2459 self._set_player(False) # diasallow player
2460+ else :
2461+ # check if ack obj is None due to DIGICAM hardware
2462+ if self.project['hardtype'] == LCONST.DIGICAM :
2463+ self.gui.acquisition_widget_hide()
2464+ self._set_acquirer(False) # stop acquirer
2465+ msg = _("No acquisition available. Use 'import image' button to load images in project.")
2466+ LTK.Dialog.ErrorMessage(self.gui.window, msg)
2467+
2468 else :
2469 # deactivate acqusition button acquisition not allowed when palyer is active
2470 self.gui.acquisition_widget_hide()
2471@@ -582,7 +597,7 @@
2472 for item in intersect :
2473 if item == 'Theme' :
2474 self.conf_obj.conf_options[item] = modif_options[item]
2475- msg = _('Please restart luciole to take into acount the new theme ')
2476+ msg = _('Please restart luciole to take into account the new theme ')
2477 self.status_bar.display_message(msg)
2478
2479 if item == 'CaptureTrashDisplay' :
2480@@ -606,20 +621,20 @@
2481 """ load treview, pepare acquiistion rush list , etc .."""
2482 self.time = time.time()
2483 if self.project != None :
2484- #print "---------------------------------------------------------------------"
2485- #print "TEST Luciole_controller project info: "
2486- #print "---------------------------------------------------------------------"
2487- #for k,v in self.project.iteritems() :
2488- # print "**%s** : %s "%(k,v)
2489- #print "---------------------------------------------------------------------"
2490+ print "---------------------------------------------------------------------"
2491+ print "TEST Luciole_controller project info: "
2492+ print "---------------------------------------------------------------------"
2493+ for k,v in self.project.iteritems() :
2494+ print "**%s** : %s "%(k,v)
2495+ print "---------------------------------------------------------------------"
2496
2497 # Initilaisation of rush ogbj is threaded because its take a while (generation of images pixbufs)
2498 # When rush load is finish : __on_rush_finish is called
2499
2500- LC_LOAD.Controller_load_project(self.project, self.gui, self.__cb_project_load_finsih, self._cb_acq_error)
2501+ LC_LOAD.Controller_load_project(self.project, self.gui, self.__cb_project_load_finsih, self._cb_acq_error, self._cb_image_catpure_done)
2502
2503 def __cb_project_load_finsih(self,rush_obj,acq_obj) :
2504- if (rush_obj != None) and ( acq_obj != None) :
2505+ if (rush_obj != None) :
2506
2507 self.rush_obj = rush_obj
2508 self.acq_obj = acq_obj
2509@@ -632,7 +647,7 @@
2510
2511 print ' DEBUG load time = %s'%( time.time() - self.time )
2512 else :
2513- msg = _("Failed to load project ")
2514+ msg = _("Failed to load project ")
2515 LTK.Dialog.ErrorMessage(self.gui.window, msg)
2516
2517
2518
2519=== modified file 'lucioLib/luciole_gstreamer.py'
2520--- lucioLib/luciole_gstreamer.py 2009-05-01 15:22:38 +0000
2521+++ lucioLib/luciole_gstreamer.py 2009-05-06 15:57:30 +0000
2522@@ -39,28 +39,27 @@
2523 import luciole_tools as MT
2524 import os.path
2525
2526-class SaveCapturedImageBin(gst.Bin) :
2527- """ Bin Pad to save in jpeg format image from stream"""
2528-
2529- def __init__(self, imagePath) :
2530- """ Bin Pad to save in jpeg format image from stream"""
2531+
2532+class PhotoSaveBin(gst.Bin) :
2533+ """ Bin Pad to save in jpeg format image from stream. Stream alyays encoded but the result will be saved to file only when a capture is done """
2534+ def __init__(self) :
2535+ """ Pilpeline desc : jpegenc + fakseink """
2536+
2537 self.__gobject_init__()
2538 ImageBinElems=[]
2539-
2540+
2541 MyJpegenc = gst.element_factory_make("jpegenc","MyJpegenc") # jpeg encoding
2542 ImageBinElems.append(MyJpegenc)
2543-
2544- MyFilesink = gst.element_factory_make("multifilesink","MyFilesink") # save to file
2545- MyFilesink.set_property('location', imagePath)
2546- ImageBinElems.append(MyFilesink)
2547-
2548+
2549+ photosink = gst.element_factory_make("fakesink","PhotoSink")
2550+ ImageBinElems.append(photosink)
2551+
2552 for elem in ImageBinElems : self.add(elem)
2553
2554- gst.element_link_many(MyJpegenc,MyFilesink)
2555-
2556- # ghost pad only sink pad as this bin is an output one
2557+ gst.element_link_many(MyJpegenc,photosink)
2558+
2559 self.add_pad(gst.GhostPad('sink', MyJpegenc.get_pad('sink')))
2560-
2561+
2562
2563 class InputImageBin(gst.Bin):
2564 """ Load image to mix with stream"""
2565@@ -216,7 +215,7 @@
2566 ImageBinElems.append(Myvideoscale)
2567
2568 MyVideoFilter = gst.element_factory_make("capsfilter")
2569- caps = gst.Caps("video/x-raw-yuv, framerate=(fraction)10/1, width=%s,height=%s"%(image_size_d['width'],image_size_d['height'])) # scale image with caps
2570+ caps = gst.Caps("video/x-raw-yuv,width=%s,height=%s"%(image_size_d['width'],image_size_d['height'])) # scale image with caps
2571 MyVideoFilter.set_property("caps", caps)
2572 ImageBinElems.append(MyVideoFilter)
2573
2574@@ -483,12 +482,13 @@
2575 def del_webcam_data(self): del self.__webcam_data
2576 webcam_data = property(get_webcam_data, set_webcam_data, del_webcam_data, " webcam parameters for gstreamer : source_input,device,height, width ")
2577
2578- def __init__(self,videowidget,baseDirPath="/dev/tmp", on_error = None) :
2579+ def __init__(self,videowidget,baseDirPath="/dev/tmp", on_error = None, cb_capture_done = None) :
2580 """ Initialisation of class LucioleGstreamer
2581 Input parameters :
2582 - videowidget : the widget into display acquisition
2583 - baseDirPath : a base path to store the image to mix
2584 - cb_on_error : callback to inidicate error
2585+ - cb_capture_done : callback to indicate that capture is done.
2586 """
2587
2588 self.__inputType = MCONST.FAKE
2589@@ -500,6 +500,7 @@
2590 #self.DispWidget = videowidget
2591 self.videowidget = VideoWidget(videowidget)
2592 self._on_error = on_error
2593+ self._cb_capture_done = cb_capture_done
2594
2595 self.playing = False
2596 self.MixBin=None
2597@@ -548,7 +549,8 @@
2598 #
2599 queueFile = gst.element_factory_make("queue","queueFile")
2600 ElementList.append(queueFile)
2601- fileSink = SaveCapturedImageBin(self.__CaptureImagePath)
2602+ #fileSink = SaveCapturedImageBin(self.__CaptureImagePath)
2603+ fileSink = PhotoSaveBin()
2604 ElementList.append(fileSink)
2605
2606
2607@@ -643,4 +645,30 @@
2608
2609 def is_playing(self):
2610 return self.playing
2611-
2612+
2613+ def capture(self) :
2614+ """ capture is requested :
2615+ - get jpegnec src pad (output pad of jpege enc)
2616+ - and add a buffer probe with callback when frame is encoded
2617+ """
2618+ # only one src pad with jpegenc
2619+ pad = self.pipe.get_by_name("MyJpegenc").src_pads().next()
2620+ # add the probe
2621+ self.grabprobe = pad.add_buffer_probe(self._cb_process_frame)
2622+
2623+
2624+ def _cb_process_frame(self, pad, buffer):
2625+ """ Callbak to inidicate that buffer is available from probe """
2626+ # remove the prove
2627+ pad.remove_buffer_probe(self.grabprobe)
2628+
2629+ # save to file
2630+ file = open(self.__CaptureImagePath,'w')
2631+ file.write(buffer)
2632+ file.close()
2633+
2634+ # callback to indicate that job is done
2635+ # the execution here is not in the same thread as gui , so call capture_done with idle add
2636+ if self._cb_capture_done != None : gobject.idle_add(self._cb_capture_done)
2637+
2638+ return True
2639
2640=== modified file 'lucioLib/luciole_image.py'
2641--- lucioLib/luciole_image.py 2009-05-01 16:18:25 +0000
2642+++ lucioLib/luciole_image.py 2009-05-06 17:33:04 +0000
2643@@ -43,7 +43,7 @@
2644 # thumb_ratio
2645
2646
2647- def __init__(self, image_path = None, generate_pixbuf = False, thumb_ratio = LCONST.THUMB_RATIO ):
2648+ def __init__(self, image_path = None, generate_pixbuf = False, thumb_ratio = LCONST.THUMB_RATIO, generate_text = True ):
2649 """ init Image object
2650 image_path : absolute imapge path
2651 generate_pixbuf : set to True to generate pixbuf during init
2652@@ -55,8 +55,10 @@
2653 self._pixbuf_normal = None
2654 self._pixbuf_thumb = None
2655 self._thumb_ratio = thumb_ratio
2656+ self._generate_text = generate_text
2657 self.generated = False
2658
2659+
2660 if generate_pixbuf == True :
2661 # launch generation of poixbuf at init. Not threaded
2662 self._generare_pixbuf()
2663@@ -81,8 +83,8 @@
2664 self._pixbuf_thumb = self._pixbuf_normal.scale_simple( width ,
2665 height ,
2666 gtk.gdk.INTERP_BILINEAR)
2667-
2668- self._generate_thumb_with_text()
2669+ if self._generate_text == True :
2670+ self._generate_thumb_with_text()
2671
2672 self.generated =True
2673 return False
2674
2675=== modified file 'po/POTFILES.in'
2676--- po/POTFILES.in 2009-04-24 10:24:03 +0000
2677+++ po/POTFILES.in 2009-05-07 09:27:18 +0000
2678@@ -10,6 +10,7 @@
2679 lucioLib/gui/gui_controller.py
2680 lucioLib/gui/webcam_detection_widget.py
2681 lucioLib/gui/dialog.py
2682+lucioLib/luciole_constants.py
2683 lucioLib/luciole_controller.py
2684 lucioLib/luciole_image.py
2685 lucioLib/lucioExport/luciole_export.py
2686
2687=== added directory 'po/de_DE'
2688=== added file 'po/de_DE.po'
2689--- po/de_DE.po 1970-01-01 00:00:00 +0000
2690+++ po/de_DE.po 2009-05-07 09:27:18 +0000
2691@@ -0,0 +1,613 @@
2692+# German translations for nico package.
2693+# Copyright (C) 2009 THE nico'S COPYRIGHT HOLDER
2694+# This file is distributed under the same license as the nico package.
2695+# nico <nico@inattendu.org>, 2009.
2696+#
2697+msgid ""
2698+msgstr ""
2699+"Project-Id-Version: nico 3\n"
2700+"Report-Msgid-Bugs-To: \n"
2701+"POT-Creation-Date: 2009-05-07 11:21+0200\n"
2702+"PO-Revision-Date: 2009-05-06 01:02+0200\n"
2703+"Last-Translator: nico <nico@inattendu.org>\n"
2704+"Language-Team: German\n"
2705+"MIME-Version: 1.0\n"
2706+"Content-Type: text/plain; charset=ASCII\n"
2707+"Content-Transfer-Encoding: 8bit\n"
2708+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
2709+
2710+#: ../images/luciole.glade.h:1
2711+msgid ""
2712+"\n"
2713+"Tool for video capture, for making animated cartoon from image per "
2714+"image \n"
2715+msgstr ""
2716+
2717+#: ../images/luciole.glade.h:4
2718+msgid " "
2719+msgstr ""
2720+
2721+#: ../images/luciole.glade.h:5
2722+msgid " Export file name (without extension) :"
2723+msgstr ""
2724+
2725+#: ../images/luciole.glade.h:6
2726+msgid "About"
2727+msgstr ""
2728+
2729+#: ../images/luciole.glade.h:7
2730+msgid "About Luciole"
2731+msgstr ""
2732+
2733+#: ../images/luciole.glade.h:8
2734+msgid "Activate/Deactivate camera preview"
2735+msgstr ""
2736+
2737+#: ../images/luciole.glade.h:9
2738+msgid "Add Trash to montage view"
2739+msgstr ""
2740+
2741+#: ../images/luciole.glade.h:10
2742+msgid "Choose export format."
2743+msgstr ""
2744+
2745+#: ../images/luciole.glade.h:11
2746+msgid "Copyright 2009 Nicolas Bertrand /GRAPE"
2747+msgstr ""
2748+
2749+#: ../images/luciole.glade.h:12
2750+msgid ""
2751+"DV format (raw DV)\n"
2752+"Format DVD (mpeg2)\n"
2753+"Format divx/xvid (avi)"
2754+msgstr ""
2755+
2756+#: ../images/luciole.glade.h:15
2757+msgid ""
2758+"Default\n"
2759+"Tropical"
2760+msgstr ""
2761+
2762+#: ../images/luciole.glade.h:17
2763+msgid ""
2764+"Elise : elise@inattendu.org\n"
2765+"Nico : nico@inattendu.org"
2766+msgstr ""
2767+
2768+#: ../images/luciole.glade.h:19
2769+msgid "Export"
2770+msgstr ""
2771+
2772+#: ../images/luciole.glade.h:20
2773+msgid "Export path:"
2774+msgstr ""
2775+
2776+#: ../images/luciole.glade.h:21
2777+msgid "Export video with sound."
2778+msgstr ""
2779+
2780+#: ../images/luciole.glade.h:22
2781+msgid "File format :"
2782+msgstr ""
2783+
2784+#: ../images/luciole.glade.h:23
2785+msgid "Image per seconds"
2786+msgstr ""
2787+
2788+#. Caller une image sur le flux video
2789+#: ../images/luciole.glade.h:25
2790+msgid "Import images"
2791+msgstr ""
2792+
2793+#: ../images/luciole.glade.h:26
2794+msgid "Luciole on line"
2795+msgstr ""
2796+
2797+#: ../images/luciole.glade.h:27
2798+msgid "Mixer"
2799+msgstr ""
2800+
2801+#: ../images/luciole.glade.h:28
2802+msgid "Mixer activation (onion skin)"
2803+msgstr ""
2804+
2805+#. Descendre un/ou plusieurs images
2806+#: ../images/luciole.glade.h:30
2807+msgid "Move down one or several images"
2808+msgstr ""
2809+
2810+#. D&#xE9;placer des images captur&#xE9;es dans la zone de montage
2811+#: ../images/luciole.glade.h:32
2812+msgid "Move snapshot to montage area"
2813+msgstr ""
2814+
2815+#. Monter un/ou plusieurs images
2816+#: ../images/luciole.glade.h:34
2817+msgid "Move up one or several images"
2818+msgstr ""
2819+
2820+#: ../images/luciole.glade.h:35
2821+msgid "Open recent"
2822+msgstr ""
2823+
2824+#: ../images/luciole.glade.h:36
2825+msgid "Play video"
2826+msgstr ""
2827+
2828+#: ../images/luciole.glade.h:37
2829+msgid "Preferences"
2830+msgstr ""
2831+
2832+#: ../images/luciole.glade.h:38
2833+msgid "Project Properties"
2834+msgstr ""
2835+
2836+#: ../images/luciole.glade.h:39
2837+#: ../lucioLib/gui/dialog_project_properties.py:89
2838+msgid "Project properties"
2839+msgstr ""
2840+
2841+#: ../images/luciole.glade.h:40
2842+msgid "Select Theme"
2843+msgstr ""
2844+
2845+#: ../images/luciole.glade.h:41
2846+msgid "Select a Luciole project"
2847+msgstr ""
2848+
2849+#: ../images/luciole.glade.h:42 ../lucioLib/gui/assistant_new_project.py:100
2850+msgid "Select a folder"
2851+msgstr ""
2852+
2853+#: ../images/luciole.glade.h:43
2854+msgid ""
2855+"This program is free software; you can redistribute it and/or\n"
2856+"modify it under the terms of the GNU General Public License\n"
2857+"as published by the Free Software Foundation; either \n"
2858+"version 2 of the License, or (at your option) any later version.\n"
2859+"\n"
2860+"This program is distributed in the hope that it will be useful,\n"
2861+"but WITHOUT ANY WARRANTY; without even the implied \n"
2862+"warranty of MERCHANTABILITY or FITNESS FOR A \n"
2863+"PARTICULAR PURPOSE. See the GNU General Public \n"
2864+"License for more details.\n"
2865+"\n"
2866+"You should have received a copy of the GNU General Public\n"
2867+"License along with this program; if not, write to the \n"
2868+"Free Software Foundation, \n"
2869+"Inc., 59 Temple Place - \n"
2870+"Suite 330, Boston, MA 02111-1307, USA."
2871+msgstr ""
2872+
2873+#. Jeter &#xE0; la poubelle
2874+#: ../images/luciole.glade.h:60
2875+msgid "To trash"
2876+msgstr ""
2877+
2878+#: ../images/luciole.glade.h:61
2879+msgid "Transparency level"
2880+msgstr ""
2881+
2882+#: ../images/luciole.glade.h:62
2883+msgid "Video Export"
2884+msgstr ""
2885+
2886+#: ../images/luciole.glade.h:63
2887+msgid "_File"
2888+msgstr ""
2889+
2890+#: ../images/luciole.glade.h:64
2891+msgid "_Help"
2892+msgstr ""
2893+
2894+#: ../images/luciole.glade.h:65
2895+msgid "_View"
2896+msgstr ""
2897+
2898+#: ../images/luciole.glade.h:66
2899+msgid "gtk-apply"
2900+msgstr ""
2901+
2902+#: ../images/luciole.glade.h:67
2903+msgid "gtk-cancel"
2904+msgstr ""
2905+
2906+#: ../images/luciole.glade.h:68
2907+msgid "gtk-close"
2908+msgstr ""
2909+
2910+#. Capturer une image
2911+#: ../images/luciole.glade.h:70
2912+msgid "make a snapshot"
2913+msgstr ""
2914+
2915+#: ../images/luciole.glade.h:71
2916+msgid "options"
2917+msgstr ""
2918+
2919+#: ../images/luciole.glade.h:72
2920+msgid "project1"
2921+msgstr ""
2922+
2923+#: ../images/luciole.glade.h:73
2924+msgid "project2"
2925+msgstr ""
2926+
2927+#: ../images/luciole.glade.h:74
2928+msgid "project3"
2929+msgstr ""
2930+
2931+#: ../images/luciole.glade.h:75
2932+msgid "project4"
2933+msgstr ""
2934+
2935+#: ../images/luciole.glade.h:76
2936+msgid "project5"
2937+msgstr ""
2938+
2939+#: ../lucioLib/controller/controller_load_project.py:134
2940+msgid "Project Load started"
2941+msgstr ""
2942+
2943+#: ../lucioLib/controller/controller_load_project.py:139
2944+#, python-format
2945+msgid "Project %s is loaded"
2946+msgstr ""
2947+
2948+#: ../lucioLib/controller/controller_load_project.py:145
2949+#, python-format
2950+msgid "Project %s is loading"
2951+msgstr ""
2952+
2953+#: ../lucioLib/controller/controller_import.py:178
2954+msgid "Import started"
2955+msgstr ""
2956+
2957+#: ../lucioLib/controller/controller_import.py:183
2958+msgid "All images imported"
2959+msgstr ""
2960+
2961+#: ../lucioLib/controller/controller_import.py:189
2962+msgid "Importing images ..."
2963+msgstr ""
2964+
2965+#: ../lucioLib/gui/dialog_project_properties.py:41
2966+msgid "Project folder :"
2967+msgstr ""
2968+
2969+#: ../lucioLib/gui/dialog_project_properties.py:45
2970+msgid "Project name :"
2971+msgstr ""
2972+
2973+#: ../lucioLib/gui/dialog_project_properties.py:49
2974+msgid "XML file :"
2975+msgstr ""
2976+
2977+#: ../lucioLib/gui/dialog_project_properties.py:54
2978+msgid "Number of frames / image"
2979+msgstr ""
2980+
2981+#: ../lucioLib/gui/dialog_project_properties.py:58
2982+msgid "Device type"
2983+msgstr ""
2984+
2985+#: ../lucioLib/gui/dialog_project_properties.py:66
2986+msgid "Device :"
2987+msgstr ""
2988+
2989+#: ../lucioLib/gui/dialog_project_properties.py:70
2990+msgid "Webcam name :"
2991+msgstr ""
2992+
2993+#: ../lucioLib/gui/dialog_project_properties.py:75
2994+msgid "Video capture driver :"
2995+msgstr ""
2996+
2997+#: ../lucioLib/gui/dialog_project_properties.py:79
2998+msgid "Video width :"
2999+msgstr ""
3000+
3001+#: ../lucioLib/gui/dialog_project_properties.py:83
3002+msgid "Video height :"
3003+msgstr ""
3004+
3005+#: ../lucioLib/gui/dialog_project_properties.py:177
3006+#: ../lucioLib/gui/dialog_project_properties.py:193
3007+msgid "desc"
3008+msgstr ""
3009+
3010+#: ../lucioLib/gui/dialog_project_properties.py:220
3011+msgid "Webcam properties"
3012+msgstr ""
3013+
3014+#.
3015+#. Display Button fo webcam detetction
3016+#.
3017+#: ../lucioLib/gui/dialog_project_properties.py:247
3018+msgid "Webcam detection"
3019+msgstr ""
3020+
3021+#: ../lucioLib/gui/luciole_export_window.py:164
3022+#, python-format
3023+msgid ""
3024+"%s is not valid. Not valid video name. Should be a combination of "
3025+"alhanumeric and '_' characters "
3026+msgstr ""
3027+
3028+#: ../lucioLib/gui/luciole_export_window.py:184
3029+msgid "unknown video export command"
3030+msgstr ""
3031+
3032+#. Launch Dialog window to ask if export file can be overide
3033+#: ../lucioLib/gui/luciole_export_window.py:195
3034+#, python-format
3035+msgid "File %s exists. Replace file ?"
3036+msgstr ""
3037+
3038+#.
3039+#. Initailize widgets for first page
3040+#.
3041+#. A label
3042+#: ../lucioLib/gui/assistant_new_project.py:59
3043+msgid "This assistant will help you on configuration of a new luciole project."
3044+msgstr ""
3045+
3046+#. A label
3047+#: ../lucioLib/gui/assistant_new_project.py:72
3048+msgid "Select project name and destination folder."
3049+msgstr ""
3050+
3051+#. display project name
3052+#: ../lucioLib/gui/assistant_new_project.py:82
3053+#: ../lucioLib/gui/assistant_new_project.py:339
3054+msgid "Project Name"
3055+msgstr ""
3056+
3057+#: ../lucioLib/gui/assistant_new_project.py:93
3058+msgid "Folder"
3059+msgstr ""
3060+
3061+#: ../lucioLib/gui/assistant_new_project.py:147
3062+#, python-format
3063+msgid ""
3064+"%s is not valid. Not valid project name. Should be a combination of "
3065+"alhanumeric and '_' characters "
3066+msgstr ""
3067+
3068+#: ../lucioLib/gui/assistant_new_project.py:158
3069+#, python-format
3070+msgid "The project %s exists !"
3071+msgstr ""
3072+
3073+#: ../lucioLib/gui/assistant_new_project.py:203
3074+msgid "Select a device"
3075+msgstr ""
3076+
3077+#: ../lucioLib/gui/assistant_new_project.py:223
3078+msgid ""
3079+" Other device.\n"
3080+"(Manual import)"
3081+msgstr ""
3082+
3083+#: ../lucioLib/gui/assistant_new_project.py:240
3084+msgid "Images per second"
3085+msgstr ""
3086+
3087+#. display project path
3088+#: ../lucioLib/gui/assistant_new_project.py:343
3089+msgid "Project Path"
3090+msgstr ""
3091+
3092+#: ../lucioLib/gui/assistant_new_project.py:352
3093+msgid "Number of frames per seconds"
3094+msgstr ""
3095+
3096+#. display Hardware type
3097+#: ../lucioLib/gui/assistant_new_project.py:356
3098+msgid "Hardware type"
3099+msgstr ""
3100+
3101+#. webcam name
3102+#: ../lucioLib/gui/assistant_new_project.py:362
3103+msgid "Webcam name"
3104+msgstr ""
3105+
3106+#. webcam device
3107+#: ../lucioLib/gui/assistant_new_project.py:366
3108+msgid "Webcam device"
3109+msgstr ""
3110+
3111+#. webcam resolution
3112+#: ../lucioLib/gui/assistant_new_project.py:370
3113+msgid "Webcam resolution used"
3114+msgstr ""
3115+
3116+#. webcam device
3117+#: ../lucioLib/gui/assistant_new_project.py:376
3118+msgid "Webcam driver used"
3119+msgstr ""
3120+
3121+#. Final message
3122+#: ../lucioLib/gui/assistant_new_project.py:381
3123+msgid "Have fun with luciole !"
3124+msgstr ""
3125+
3126+#: ../lucioLib/gui/assistant_new_project.py:411
3127+msgid "Luciole project assistant"
3128+msgstr ""
3129+
3130+#: ../lucioLib/gui/assistant_new_project.py:422
3131+msgid " Select a project path "
3132+msgstr ""
3133+
3134+#: ../lucioLib/gui/assistant_new_project.py:431
3135+msgid " Select hardware "
3136+msgstr ""
3137+
3138+#: ../lucioLib/gui/assistant_new_project.py:441
3139+msgid " Webcam detection "
3140+msgstr ""
3141+
3142+#: ../lucioLib/gui/assistant_new_project.py:451
3143+msgid " Project overview "
3144+msgstr ""
3145+
3146+#. create New button project
3147+#: ../lucioLib/gui/open_project_widget.py:50
3148+msgid "Create a new project"
3149+msgstr ""
3150+
3151+#. create open button project
3152+#: ../lucioLib/gui/open_project_widget.py:59
3153+msgid "Open an existing project"
3154+msgstr ""
3155+
3156+#: ../lucioLib/gui/webcam_detection_widget.py:98
3157+msgid "Please wait for webcam detection"
3158+msgstr ""
3159+
3160+#: ../lucioLib/gui/webcam_detection_widget.py:103
3161+msgid "Webcam detection done"
3162+msgstr ""
3163+
3164+#: ../lucioLib/gui/webcam_detection_widget.py:188
3165+msgid "Detected webcam(s)"
3166+msgstr ""
3167+
3168+#: ../lucioLib/gui/webcam_detection_widget.py:192
3169+msgid "No webcam detected"
3170+msgstr ""
3171+
3172+#: ../lucioLib/gui/dialog.py:73
3173+msgid "Select files to import"
3174+msgstr ""
3175+
3176+#: ../lucioLib/gui/dialog.py:114
3177+msgid "Select a Folder"
3178+msgstr ""
3179+
3180+#: ../lucioLib/luciole_constants.py:42
3181+msgid "OTHER DEVICE"
3182+msgstr ""
3183+
3184+#: ../lucioLib/luciole_controller.py:157
3185+#, python-format
3186+msgid "Project %s saved"
3187+msgstr ""
3188+
3189+#: ../lucioLib/luciole_controller.py:185
3190+#, python-format
3191+msgid "Project saved as %s"
3192+msgstr ""
3193+
3194+#: ../lucioLib/luciole_controller.py:229
3195+msgid "No file or valid file choosen for image import."
3196+msgstr ""
3197+
3198+#: ../lucioLib/luciole_controller.py:233
3199+msgid "Impossible to import images when no project are loaded."
3200+msgstr ""
3201+
3202+#. nbd@grape to transform as error message
3203+#: ../lucioLib/luciole_controller.py:262
3204+msgid "Nothing to export. No project loaded"
3205+msgstr ""
3206+
3207+#. nbd@grape specify action to do err message or raise exception ?
3208+#: ../lucioLib/luciole_controller.py:280
3209+msgid "Imposible to initialize player."
3210+msgstr ""
3211+
3212+#. nbd@grape to transform as error message
3213+#: ../lucioLib/luciole_controller.py:302
3214+msgid "Can not play animantion : No image on montage view "
3215+msgstr ""
3216+
3217+#. nbd@grape to transform as error message
3218+#: ../lucioLib/luciole_controller.py:311
3219+msgid "Can not play animantion : No project loaded "
3220+msgstr ""
3221+
3222+#. nbd@grape : ask for save if save set status as loaded
3223+#: ../lucioLib/luciole_controller.py:360
3224+msgid "Save Project before closing"
3225+msgstr ""
3226+
3227+#: ../lucioLib/luciole_controller.py:386
3228+#, python-format
3229+msgid "Project %s is closed"
3230+msgstr ""
3231+
3232+#. clear message status bar
3233+#: ../lucioLib/luciole_controller.py:407
3234+msgid "Acquiring"
3235+msgstr ""
3236+
3237+#. stop acquirer
3238+#: ../lucioLib/luciole_controller.py:424
3239+msgid ""
3240+"No acquisition available. Use 'import image' button to load images in "
3241+"project."
3242+msgstr ""
3243+
3244+#: ../lucioLib/luciole_controller.py:436
3245+msgid " Can not start acquisition when no project are loaded."
3246+msgstr ""
3247+
3248+#: ../lucioLib/luciole_controller.py:445
3249+#, python-format
3250+msgid "Acquisition error. %s"
3251+msgstr ""
3252+
3253+#: ../lucioLib/luciole_controller.py:459
3254+msgid "No Acquistion"
3255+msgstr ""
3256+
3257+#. nbd@grape : ask for save if save set status as loaded
3258+#: ../lucioLib/luciole_controller.py:548
3259+msgid "Project modified. Save project before exit ?"
3260+msgstr ""
3261+
3262+#: ../lucioLib/luciole_controller.py:600
3263+msgid "Please restart luciole to take into account the new theme "
3264+msgstr ""
3265+
3266+#: ../lucioLib/luciole_controller.py:650
3267+msgid "Failed to load project "
3268+msgstr ""
3269+
3270+#: ../lucioLib/luciole_image.py:137
3271+#, python-format
3272+msgid "Not a file : %s"
3273+msgstr ""
3274+
3275+#: ../lucioLib/luciole_image.py:185
3276+msgid "rush folder not valid"
3277+msgstr ""
3278+
3279+#. error to raise
3280+#: ../lucioLib/luciole_image.py:280
3281+#, python-format
3282+msgid "Error path does not exist : %s"
3283+msgstr ""
3284+
3285+#: ../lucioLib/lucioExport/luciole_export.py:90
3286+msgid "Pass 1/2"
3287+msgstr ""
3288+
3289+#: ../lucioLib/lucioExport/luciole_export.py:99
3290+msgid "Pass 2/2"
3291+msgstr ""
3292+
3293+#. Terminated normaly
3294+#: ../lucioLib/lucioExport/luciole_export.py:202
3295+msgid "Export Done"
3296+msgstr ""
3297+
3298+#: ../lucioLib/lucioExport/luciole_export.py:205
3299+msgid "Export Canceled"
3300+msgstr ""
3301+
3302+#: ../lucioLib/lucioExport/luciole_export.py:507
3303+msgid "Unable to erase"
3304+msgstr ""
3305
3306=== added directory 'po/de_DE/LC_MESSAGES'
3307=== added file 'po/de_DE/LC_MESSAGES/luciole.mo'
3308Binary files po/de_DE/LC_MESSAGES/luciole.mo 1970-01-01 00:00:00 +0000 and po/de_DE/LC_MESSAGES/luciole.mo 2009-05-06 17:15:46 +0000 differ
3309=== modified file 'po/en_EN.po'
3310--- po/en_EN.po 2009-05-01 16:34:13 +0000
3311+++ po/en_EN.po 2009-05-07 09:27:18 +0000
3312@@ -7,7 +7,7 @@
3313 msgstr ""
3314 "Project-Id-Version: myrtille-i 18n\n"
3315 "Report-Msgid-Bugs-To: \n"
3316-"POT-Creation-Date: 2009-05-01 18:31+0200\n"
3317+"POT-Creation-Date: 2009-05-07 11:21+0200\n"
3318 "PO-Revision-Date: 2008-05-08 18:51+0200\n"
3319 "Last-Translator: nico <nico@inattendu.org>\n"
3320 "Language-Team: English\n"
3321@@ -79,8 +79,9 @@
3322 msgstr ""
3323
3324 #: ../images/luciole.glade.h:19
3325+#, fuzzy
3326 msgid "Export"
3327-msgstr "Export"
3328+msgstr "Export ..."
3329
3330 #: ../images/luciole.glade.h:20
3331 #, fuzzy
3332@@ -124,7 +125,7 @@
3333 msgid "Move down one or several images"
3334 msgstr ""
3335
3336-#. Déplacer des images capturées dans la zone de montage
3337+#. D&#xE9;placer des images captur&#xE9;es dans la zone de montage
3338 #: ../images/luciole.glade.h:32
3339 msgid "Move snapshot to montage area"
3340 msgstr ""
3341@@ -151,19 +152,24 @@
3342 msgstr ""
3343
3344 #: ../images/luciole.glade.h:39
3345+#: ../lucioLib/gui/dialog_project_properties.py:89
3346+msgid "Project properties"
3347+msgstr ""
3348+
3349+#: ../images/luciole.glade.h:40
3350 msgid "Select Theme"
3351 msgstr ""
3352
3353-#: ../images/luciole.glade.h:40
3354+#: ../images/luciole.glade.h:41
3355 #, fuzzy
3356 msgid "Select a Luciole project"
3357 msgstr "Select a myrtille project file"
3358
3359-#: ../images/luciole.glade.h:41 ../lucioLib/gui/assistant_new_project.py:102
3360+#: ../images/luciole.glade.h:42 ../lucioLib/gui/assistant_new_project.py:100
3361 msgid "Select a folder"
3362 msgstr ""
3363
3364-#: ../images/luciole.glade.h:42
3365+#: ../images/luciole.glade.h:43
3366 msgid ""
3367 "This program is free software; you can redistribute it and/or\n"
3368 "modify it under the terms of the GNU General Public License\n"
3369@@ -199,108 +205,85 @@
3370 "Inc., 59 Temple Place - \n"
3371 "Suite 330, Boston, MA 02111-1307, USA."
3372
3373-#. Jeter à la poubelle
3374-#: ../images/luciole.glade.h:59
3375+#. Jeter &#xE0; la poubelle
3376+#: ../images/luciole.glade.h:60
3377 msgid "To trash"
3378 msgstr ""
3379
3380-#: ../images/luciole.glade.h:60
3381+#: ../images/luciole.glade.h:61
3382 msgid "Transparency level"
3383 msgstr ""
3384
3385-#: ../images/luciole.glade.h:61
3386+#: ../images/luciole.glade.h:62
3387+#, fuzzy
3388+msgid "Video Export"
3389+msgstr "Export"
3390+
3391+#: ../images/luciole.glade.h:63
3392 #, fuzzy
3393 msgid "_File"
3394 msgstr "_Fichier"
3395
3396-#: ../images/luciole.glade.h:62
3397+#: ../images/luciole.glade.h:64
3398 msgid "_Help"
3399 msgstr ""
3400
3401-#: ../images/luciole.glade.h:63
3402+#: ../images/luciole.glade.h:65
3403 msgid "_View"
3404 msgstr ""
3405
3406-#: ../images/luciole.glade.h:64
3407-msgid "gtk-about"
3408-msgstr "gtk-about"
3409-
3410-#: ../images/luciole.glade.h:65
3411+#: ../images/luciole.glade.h:66
3412 msgid "gtk-apply"
3413 msgstr "gtk-apply"
3414
3415-#: ../images/luciole.glade.h:66
3416+#: ../images/luciole.glade.h:67
3417 msgid "gtk-cancel"
3418 msgstr "gtk-cancel"
3419
3420-#: ../images/luciole.glade.h:67
3421+#: ../images/luciole.glade.h:68
3422 #, fuzzy
3423 msgid "gtk-close"
3424 msgstr "gtk-open"
3425
3426-#: ../images/luciole.glade.h:68
3427-msgid "gtk-new"
3428-msgstr "gtk-new"
3429-
3430-#: ../images/luciole.glade.h:69
3431-msgid "gtk-open"
3432-msgstr "gtk-open"
3433-
3434+#. Capturer une image
3435 #: ../images/luciole.glade.h:70
3436-msgid "gtk-quit"
3437-msgstr "gtk-quit"
3438+msgid "make a snapshot"
3439+msgstr ""
3440
3441 #: ../images/luciole.glade.h:71
3442-msgid "gtk-save"
3443-msgstr "gtk-save"
3444+msgid "options"
3445+msgstr ""
3446
3447 #: ../images/luciole.glade.h:72
3448-msgid "gtk-save-as"
3449-msgstr "gtk-save-as"
3450-
3451-#. Capturer une image
3452-#: ../images/luciole.glade.h:74
3453-msgid "make a snapshot"
3454-msgstr ""
3455-
3456-#: ../images/luciole.glade.h:75
3457-msgid "menuitem1"
3458-msgstr ""
3459-
3460-#: ../images/luciole.glade.h:76
3461-msgid "options"
3462-msgstr ""
3463-
3464-#: ../images/luciole.glade.h:77
3465 msgid "project1"
3466 msgstr ""
3467
3468-#: ../images/luciole.glade.h:78
3469+#: ../images/luciole.glade.h:73
3470 msgid "project2"
3471 msgstr ""
3472
3473-#: ../images/luciole.glade.h:79
3474+#: ../images/luciole.glade.h:74
3475 msgid "project3"
3476 msgstr ""
3477
3478-#: ../images/luciole.glade.h:80
3479+#: ../images/luciole.glade.h:75
3480 msgid "project4"
3481 msgstr ""
3482
3483-#: ../images/luciole.glade.h:81
3484+#: ../images/luciole.glade.h:76
3485 msgid "project5"
3486 msgstr ""
3487
3488-#: ../lucioLib/controller/controller_load_project.py:133
3489+#: ../lucioLib/controller/controller_load_project.py:134
3490 msgid "Project Load started"
3491 msgstr ""
3492
3493-#: ../lucioLib/controller/controller_load_project.py:138
3494+#: ../lucioLib/controller/controller_load_project.py:139
3495 #, python-format
3496 msgid "Project %s is loaded"
3497 msgstr ""
3498
3499-#: ../lucioLib/controller/controller_load_project.py:144
3500+#: ../lucioLib/controller/controller_load_project.py:145
3501 #, python-format
3502 msgid "Project %s is loading"
3503 msgstr ""
3504@@ -361,10 +344,6 @@
3505 msgid "Video height :"
3506 msgstr ""
3507
3508-#: ../lucioLib/gui/dialog_project_properties.py:89
3509-msgid "Project properties"
3510-msgstr ""
3511-
3512 #: ../lucioLib/gui/dialog_project_properties.py:177
3513 #: ../lucioLib/gui/dialog_project_properties.py:193
3514 msgid "desc"
3515@@ -404,107 +383,113 @@
3516 #. Initailize widgets for first page
3517 #.
3518 #. A label
3519-#: ../lucioLib/gui/assistant_new_project.py:61
3520+#: ../lucioLib/gui/assistant_new_project.py:59
3521 msgid "This assistant will help you on configuration of a new luciole project."
3522 msgstr ""
3523
3524 #. A label
3525-#: ../lucioLib/gui/assistant_new_project.py:74
3526+#: ../lucioLib/gui/assistant_new_project.py:72
3527 msgid "Select project name and destination folder."
3528 msgstr ""
3529
3530 #. display project name
3531-#: ../lucioLib/gui/assistant_new_project.py:84
3532-#: ../lucioLib/gui/assistant_new_project.py:341
3533+#: ../lucioLib/gui/assistant_new_project.py:82
3534+#: ../lucioLib/gui/assistant_new_project.py:339
3535 msgid "Project Name"
3536 msgstr ""
3537
3538-#: ../lucioLib/gui/assistant_new_project.py:95
3539+#: ../lucioLib/gui/assistant_new_project.py:93
3540 msgid "Folder"
3541 msgstr ""
3542
3543-#: ../lucioLib/gui/assistant_new_project.py:150
3544+#: ../lucioLib/gui/assistant_new_project.py:147
3545 #, python-format
3546 msgid ""
3547-"%s is noy valid. Not valid project name. Should be a combination of "
3548+"%s is not valid. Not valid project name. Should be a combination of "
3549 "alhanumeric and '_' characters "
3550 msgstr ""
3551
3552-#: ../lucioLib/gui/assistant_new_project.py:161
3553+#: ../lucioLib/gui/assistant_new_project.py:158
3554 #, python-format
3555 msgid "The project %s exists !"
3556 msgstr ""
3557
3558-#: ../lucioLib/gui/assistant_new_project.py:206
3559+#: ../lucioLib/gui/assistant_new_project.py:203
3560 msgid "Select a device"
3561 msgstr ""
3562
3563-#: ../lucioLib/gui/assistant_new_project.py:242
3564+#: ../lucioLib/gui/assistant_new_project.py:223
3565+msgid ""
3566+" Other device.\n"
3567+"(Manual import)"
3568+msgstr ""
3569+
3570+#: ../lucioLib/gui/assistant_new_project.py:240
3571 #, fuzzy
3572 msgid "Images per second"
3573 msgstr "Images par secondes"
3574
3575 #. display project path
3576-#: ../lucioLib/gui/assistant_new_project.py:345
3577+#: ../lucioLib/gui/assistant_new_project.py:343
3578 msgid "Project Path"
3579 msgstr ""
3580
3581-#: ../lucioLib/gui/assistant_new_project.py:354
3582+#: ../lucioLib/gui/assistant_new_project.py:352
3583 #, fuzzy
3584 msgid "Number of frames per seconds"
3585 msgstr "Images par secondes"
3586
3587 #. display Hardware type
3588-#: ../lucioLib/gui/assistant_new_project.py:358
3589+#: ../lucioLib/gui/assistant_new_project.py:356
3590 msgid "Hardware type"
3591 msgstr ""
3592
3593 #. webcam name
3594-#: ../lucioLib/gui/assistant_new_project.py:364
3595+#: ../lucioLib/gui/assistant_new_project.py:362
3596 #, fuzzy
3597 msgid "Webcam name"
3598 msgstr "Web Cam"
3599
3600 #. webcam device
3601-#: ../lucioLib/gui/assistant_new_project.py:368
3602+#: ../lucioLib/gui/assistant_new_project.py:366
3603 #, fuzzy
3604 msgid "Webcam device"
3605 msgstr "Web Cam"
3606
3607 #. webcam resolution
3608-#: ../lucioLib/gui/assistant_new_project.py:372
3609+#: ../lucioLib/gui/assistant_new_project.py:370
3610 msgid "Webcam resolution used"
3611 msgstr ""
3612
3613 #. webcam device
3614-#: ../lucioLib/gui/assistant_new_project.py:378
3615+#: ../lucioLib/gui/assistant_new_project.py:376
3616 msgid "Webcam driver used"
3617 msgstr ""
3618
3619 #. Final message
3620-#: ../lucioLib/gui/assistant_new_project.py:383
3621+#: ../lucioLib/gui/assistant_new_project.py:381
3622 msgid "Have fun with luciole !"
3623 msgstr ""
3624
3625-#: ../lucioLib/gui/assistant_new_project.py:413
3626+#: ../lucioLib/gui/assistant_new_project.py:411
3627 #, fuzzy
3628 msgid "Luciole project assistant"
3629 msgstr "Select a myrtille project file"
3630
3631-#: ../lucioLib/gui/assistant_new_project.py:424
3632+#: ../lucioLib/gui/assistant_new_project.py:422
3633 #, fuzzy
3634 msgid " Select a project path "
3635 msgstr "Select a myrtille project file"
3636
3637-#: ../lucioLib/gui/assistant_new_project.py:433
3638+#: ../lucioLib/gui/assistant_new_project.py:431
3639 msgid " Select hardware "
3640 msgstr ""
3641
3642-#: ../lucioLib/gui/assistant_new_project.py:443
3643+#: ../lucioLib/gui/assistant_new_project.py:441
3644 msgid " Webcam detection "
3645 msgstr ""
3646
3647-#: ../lucioLib/gui/assistant_new_project.py:452
3648+#: ../lucioLib/gui/assistant_new_project.py:451
3649 msgid " Project overview "
3650 msgstr ""
3651
3652@@ -527,11 +512,11 @@
3653 msgid "Webcam detection done"
3654 msgstr ""
3655
3656-#: ../lucioLib/gui/webcam_detection_widget.py:186
3657-msgid "Detected webcam"
3658-msgstr ""
3659-
3660 #: ../lucioLib/gui/webcam_detection_widget.py:188
3661+msgid "Detected webcam(s)"
3662+msgstr ""
3663+
3664+#: ../lucioLib/gui/webcam_detection_widget.py:192
3665 msgid "No webcam detected"
3666 msgstr ""
3667
3668@@ -545,6 +530,10 @@
3669 msgid "Select a Folder"
3670 msgstr "Select a myrtille project file"
3671
3672+#: ../lucioLib/luciole_constants.py:42
3673+msgid "OTHER DEVICE"
3674+msgstr ""
3675+
3676 #: ../lucioLib/luciole_controller.py:157
3677 #, python-format
3678 msgid "Project %s saved"
3679@@ -555,87 +544,94 @@
3680 msgid "Project saved as %s"
3681 msgstr ""
3682
3683-#: ../lucioLib/luciole_controller.py:222
3684+#: ../lucioLib/luciole_controller.py:229
3685 msgid "No file or valid file choosen for image import."
3686 msgstr ""
3687
3688-#: ../lucioLib/luciole_controller.py:226
3689+#: ../lucioLib/luciole_controller.py:233
3690 msgid "Impossible to import images when no project are loaded."
3691 msgstr ""
3692
3693 #. nbd@grape to transform as error message
3694-#: ../lucioLib/luciole_controller.py:255
3695+#: ../lucioLib/luciole_controller.py:262
3696 msgid "Nothing to export. No project loaded"
3697 msgstr ""
3698
3699 #. nbd@grape specify action to do err message or raise exception ?
3700-#: ../lucioLib/luciole_controller.py:273
3701+#: ../lucioLib/luciole_controller.py:280
3702 msgid "Imposible to initialize player."
3703 msgstr ""
3704
3705 #. nbd@grape to transform as error message
3706-#: ../lucioLib/luciole_controller.py:295
3707+#: ../lucioLib/luciole_controller.py:302
3708 msgid "Can not play animantion : No image on montage view "
3709 msgstr ""
3710
3711 #. nbd@grape to transform as error message
3712-#: ../lucioLib/luciole_controller.py:304
3713+#: ../lucioLib/luciole_controller.py:311
3714 msgid "Can not play animantion : No project loaded "
3715 msgstr ""
3716
3717 #. nbd@grape : ask for save if save set status as loaded
3718-#: ../lucioLib/luciole_controller.py:353
3719+#: ../lucioLib/luciole_controller.py:360
3720 msgid "Save Project before closing"
3721 msgstr ""
3722
3723-#: ../lucioLib/luciole_controller.py:379
3724+#: ../lucioLib/luciole_controller.py:386
3725 #, python-format
3726 msgid "Project %s is closed"
3727 msgstr ""
3728
3729 #. clear message status bar
3730-#: ../lucioLib/luciole_controller.py:400
3731+#: ../lucioLib/luciole_controller.py:407
3732 msgid "Acquiring"
3733 msgstr ""
3734
3735-#: ../lucioLib/luciole_controller.py:421
3736+#. stop acquirer
3737+#: ../lucioLib/luciole_controller.py:424
3738+msgid ""
3739+"No acquisition available. Use 'import image' button to load images in "
3740+"project."
3741+msgstr ""
3742+
3743+#: ../lucioLib/luciole_controller.py:436
3744 msgid " Can not start acquisition when no project are loaded."
3745 msgstr ""
3746
3747-#: ../lucioLib/luciole_controller.py:430
3748+#: ../lucioLib/luciole_controller.py:445
3749 #, python-format
3750 msgid "Acquisition error. %s"
3751 msgstr ""
3752
3753-#: ../lucioLib/luciole_controller.py:444
3754+#: ../lucioLib/luciole_controller.py:459
3755 msgid "No Acquistion"
3756 msgstr ""
3757
3758 #. nbd@grape : ask for save if save set status as loaded
3759-#: ../lucioLib/luciole_controller.py:533
3760+#: ../lucioLib/luciole_controller.py:548
3761 msgid "Project modified. Save project before exit ?"
3762 msgstr ""
3763
3764-#: ../lucioLib/luciole_controller.py:585
3765-msgid "Please restart luciole to take into acount the new theme "
3766+#: ../lucioLib/luciole_controller.py:600
3767+msgid "Please restart luciole to take into account the new theme "
3768 msgstr ""
3769
3770-#: ../lucioLib/luciole_controller.py:635
3771+#: ../lucioLib/luciole_controller.py:650
3772 #, fuzzy
3773-msgid "Failed to load project "
3774+msgid "Failed to load project "
3775 msgstr "Select a myrtille project file"
3776
3777-#: ../lucioLib/luciole_image.py:135
3778+#: ../lucioLib/luciole_image.py:137
3779 #, python-format
3780 msgid "Not a file : %s"
3781 msgstr ""
3782
3783-#: ../lucioLib/luciole_image.py:183
3784+#: ../lucioLib/luciole_image.py:185
3785 msgid "rush folder not valid"
3786 msgstr ""
3787
3788 #. error to raise
3789-#: ../lucioLib/luciole_image.py:278
3790+#: ../lucioLib/luciole_image.py:280
3791 #, python-format
3792 msgid "Error path does not exist : %s"
3793 msgstr ""
3794@@ -663,6 +659,24 @@
3795 msgid "Unable to erase"
3796 msgstr ""
3797
3798+#~ msgid "gtk-about"
3799+#~ msgstr "gtk-about"
3800+
3801+#~ msgid "gtk-new"
3802+#~ msgstr "gtk-new"
3803+
3804+#~ msgid "gtk-open"
3805+#~ msgstr "gtk-open"
3806+
3807+#~ msgid "gtk-quit"
3808+#~ msgstr "gtk-quit"
3809+
3810+#~ msgid "gtk-save"
3811+#~ msgstr "gtk-save"
3812+
3813+#~ msgid "gtk-save-as"
3814+#~ msgstr "gtk-save-as"
3815+
3816 #, fuzzy
3817 #~ msgid "Import"
3818 #~ msgstr "Export"
3819@@ -696,9 +710,6 @@
3820 #~ msgid "DV cam"
3821 #~ msgstr "DV cam"
3822
3823-#~ msgid "Export ..."
3824-#~ msgstr "Export ..."
3825-
3826 #, fuzzy
3827 #~ msgid "Images per second number"
3828 #~ msgstr "Images par seconde"
3829
3830=== modified file 'po/en_EN/LC_MESSAGES/luciole.mo'
3831Binary files po/en_EN/LC_MESSAGES/luciole.mo 2009-05-01 16:34:13 +0000 and po/en_EN/LC_MESSAGES/luciole.mo 2009-05-06 17:15:46 +0000 differ
3832=== modified file 'po/en_US.po'
3833--- po/en_US.po 2009-05-01 16:34:13 +0000
3834+++ po/en_US.po 2009-05-07 09:27:18 +0000
3835@@ -7,7 +7,7 @@
3836 msgstr ""
3837 "Project-Id-Version: myrtille-i 18n\n"
3838 "Report-Msgid-Bugs-To: \n"
3839-"POT-Creation-Date: 2009-05-01 18:31+0200\n"
3840+"POT-Creation-Date: 2009-05-07 11:21+0200\n"
3841 "PO-Revision-Date: 2008-06-22 10:32+0200\n"
3842 "Last-Translator: nico <nico@inattendu.org>\n"
3843 "Language-Team: English\n"
3844@@ -126,7 +126,7 @@
3845 msgid "Move down one or several images"
3846 msgstr ""
3847
3848-#. Déplacer des images capturées dans la zone de montage
3849+#. D&#xE9;placer des images captur&#xE9;es dans la zone de montage
3850 #: ../images/luciole.glade.h:32
3851 msgid "Move snapshot to montage area"
3852 msgstr ""
3853@@ -154,20 +154,26 @@
3854 msgstr "Project name"
3855
3856 #: ../images/luciole.glade.h:39
3857+#: ../lucioLib/gui/dialog_project_properties.py:89
3858+#, fuzzy
3859+msgid "Project properties"
3860+msgstr "Project name"
3861+
3862+#: ../images/luciole.glade.h:40
3863 #, fuzzy
3864 msgid "Select Theme"
3865 msgstr "Select a folder"
3866
3867-#: ../images/luciole.glade.h:40
3868+#: ../images/luciole.glade.h:41
3869 #, fuzzy
3870 msgid "Select a Luciole project"
3871 msgstr "Select a myrtille project file"
3872
3873-#: ../images/luciole.glade.h:41 ../lucioLib/gui/assistant_new_project.py:102
3874+#: ../images/luciole.glade.h:42 ../lucioLib/gui/assistant_new_project.py:100
3875 msgid "Select a folder"
3876 msgstr "Select a folder"
3877
3878-#: ../images/luciole.glade.h:42
3879+#: ../images/luciole.glade.h:43
3880 msgid ""
3881 "This program is free software; you can redistribute it and/or\n"
3882 "modify it under the terms of the GNU General Public License\n"
3883@@ -203,115 +209,92 @@
3884 "Inc., 59 Temple Place - \n"
3885 "Suite 330, Boston, MA 02111-1307, USA."
3886
3887-#. Jeter à la poubelle
3888-#: ../images/luciole.glade.h:59
3889+#. Jeter &#xE0; la poubelle
3890+#: ../images/luciole.glade.h:60
3891 msgid "To trash"
3892 msgstr ""
3893
3894-#: ../images/luciole.glade.h:60
3895+#: ../images/luciole.glade.h:61
3896 msgid "Transparency level"
3897 msgstr "Transparency level"
3898
3899-#: ../images/luciole.glade.h:61
3900+#: ../images/luciole.glade.h:62
3901+#, fuzzy
3902+msgid "Video Export"
3903+msgstr "File export"
3904+
3905+#: ../images/luciole.glade.h:63
3906 #, fuzzy
3907 msgid "_File"
3908 msgstr "_File"
3909
3910-#: ../images/luciole.glade.h:62
3911+#: ../images/luciole.glade.h:64
3912 msgid "_Help"
3913 msgstr "_Help"
3914
3915-#: ../images/luciole.glade.h:63
3916+#: ../images/luciole.glade.h:65
3917 msgid "_View"
3918 msgstr ""
3919
3920-#: ../images/luciole.glade.h:64
3921-msgid "gtk-about"
3922-msgstr "gtk-about"
3923-
3924-#: ../images/luciole.glade.h:65
3925+#: ../images/luciole.glade.h:66
3926 msgid "gtk-apply"
3927 msgstr "gtk-apply"
3928
3929-#: ../images/luciole.glade.h:66
3930+#: ../images/luciole.glade.h:67
3931 msgid "gtk-cancel"
3932 msgstr "gtk-cancel"
3933
3934-#: ../images/luciole.glade.h:67
3935+#: ../images/luciole.glade.h:68
3936 #, fuzzy
3937 msgid "gtk-close"
3938 msgstr "gtk-open"
3939
3940-#: ../images/luciole.glade.h:68
3941-msgid "gtk-new"
3942-msgstr "gtk-new"
3943-
3944-#: ../images/luciole.glade.h:69
3945-msgid "gtk-open"
3946-msgstr "gtk-open"
3947-
3948+#. Capturer une image
3949 #: ../images/luciole.glade.h:70
3950-msgid "gtk-quit"
3951-msgstr "gtk-quit"
3952-
3953-#: ../images/luciole.glade.h:71
3954-msgid "gtk-save"
3955-msgstr "gtk-save"
3956-
3957-#: ../images/luciole.glade.h:72
3958-msgid "gtk-save-as"
3959-msgstr "gtk-save-as"
3960-
3961-#. Capturer une image
3962-#: ../images/luciole.glade.h:74
3963 #, fuzzy
3964 msgid "make a snapshot"
3965 msgstr "Snapshot"
3966
3967-#: ../images/luciole.glade.h:75
3968-msgid "menuitem1"
3969-msgstr ""
3970-
3971-#: ../images/luciole.glade.h:76
3972+#: ../images/luciole.glade.h:71
3973 msgid "options"
3974 msgstr ""
3975
3976-#: ../images/luciole.glade.h:77
3977+#: ../images/luciole.glade.h:72
3978 #, fuzzy
3979 msgid "project1"
3980 msgstr "Project name"
3981
3982-#: ../images/luciole.glade.h:78
3983+#: ../images/luciole.glade.h:73
3984 #, fuzzy
3985 msgid "project2"
3986 msgstr "Project name"
3987
3988-#: ../images/luciole.glade.h:79
3989+#: ../images/luciole.glade.h:74
3990 #, fuzzy
3991 msgid "project3"
3992 msgstr "Project name"
3993
3994-#: ../images/luciole.glade.h:80
3995+#: ../images/luciole.glade.h:75
3996 #, fuzzy
3997 msgid "project4"
3998 msgstr "Project name"
3999
4000-#: ../images/luciole.glade.h:81
4001+#: ../images/luciole.glade.h:76
4002 #, fuzzy
4003 msgid "project5"
4004 msgstr "Project name"
4005
4006-#: ../lucioLib/controller/controller_load_project.py:133
4007+#: ../lucioLib/controller/controller_load_project.py:134
4008 #, fuzzy
4009 msgid "Project Load started"
4010 msgstr "Project name"
4011
4012-#: ../lucioLib/controller/controller_load_project.py:138
4013+#: ../lucioLib/controller/controller_load_project.py:139
4014 #, fuzzy, python-format
4015 msgid "Project %s is loaded"
4016 msgstr "Project name"
4017
4018-#: ../lucioLib/controller/controller_load_project.py:144
4019+#: ../lucioLib/controller/controller_load_project.py:145
4020 #, python-format
4021 msgid "Project %s is loading"
4022 msgstr ""
4023@@ -374,11 +357,6 @@
4024 msgid "Video height :"
4025 msgstr ""
4026
4027-#: ../lucioLib/gui/dialog_project_properties.py:89
4028-#, fuzzy
4029-msgid "Project properties"
4030-msgstr "Project name"
4031-
4032 #: ../lucioLib/gui/dialog_project_properties.py:177
4033 #: ../lucioLib/gui/dialog_project_properties.py:193
4034 msgid "desc"
4035@@ -418,114 +396,120 @@
4036 #. Initailize widgets for first page
4037 #.
4038 #. A label
4039-#: ../lucioLib/gui/assistant_new_project.py:61
4040+#: ../lucioLib/gui/assistant_new_project.py:59
4041 #, fuzzy
4042 msgid "This assistant will help you on configuration of a new luciole project."
4043 msgstr ""
4044 "This assistant will help you on configuration of a new myrtille project."
4045
4046 #. A label
4047-#: ../lucioLib/gui/assistant_new_project.py:74
4048+#: ../lucioLib/gui/assistant_new_project.py:72
4049 #, fuzzy
4050 msgid "Select project name and destination folder."
4051 msgstr "Select project name and destination folder.\n"
4052
4053 #. display project name
4054-#: ../lucioLib/gui/assistant_new_project.py:84
4055-#: ../lucioLib/gui/assistant_new_project.py:341
4056+#: ../lucioLib/gui/assistant_new_project.py:82
4057+#: ../lucioLib/gui/assistant_new_project.py:339
4058 #, fuzzy
4059 msgid "Project Name"
4060 msgstr "Project name"
4061
4062-#: ../lucioLib/gui/assistant_new_project.py:95
4063+#: ../lucioLib/gui/assistant_new_project.py:93
4064 msgid "Folder"
4065 msgstr "Folder"
4066
4067-#: ../lucioLib/gui/assistant_new_project.py:150
4068+#: ../lucioLib/gui/assistant_new_project.py:147
4069 #, python-format
4070 msgid ""
4071-"%s is noy valid. Not valid project name. Should be a combination of "
4072+"%s is not valid. Not valid project name. Should be a combination of "
4073 "alhanumeric and '_' characters "
4074 msgstr ""
4075
4076-#: ../lucioLib/gui/assistant_new_project.py:161
4077+#: ../lucioLib/gui/assistant_new_project.py:158
4078 #, python-format
4079 msgid "The project %s exists !"
4080 msgstr ""
4081
4082-#: ../lucioLib/gui/assistant_new_project.py:206
4083+#: ../lucioLib/gui/assistant_new_project.py:203
4084 #, fuzzy
4085 msgid "Select a device"
4086 msgstr "Select a folder"
4087
4088-#: ../lucioLib/gui/assistant_new_project.py:242
4089+#: ../lucioLib/gui/assistant_new_project.py:223
4090+msgid ""
4091+" Other device.\n"
4092+"(Manual import)"
4093+msgstr ""
4094+
4095+#: ../lucioLib/gui/assistant_new_project.py:240
4096 #, fuzzy
4097 msgid "Images per second"
4098 msgstr "Images per seconds"
4099
4100 #. display project path
4101-#: ../lucioLib/gui/assistant_new_project.py:345
4102+#: ../lucioLib/gui/assistant_new_project.py:343
4103 #, fuzzy
4104 msgid "Project Path"
4105 msgstr "Project name"
4106
4107-#: ../lucioLib/gui/assistant_new_project.py:354
4108+#: ../lucioLib/gui/assistant_new_project.py:352
4109 #, fuzzy
4110 msgid "Number of frames per seconds"
4111 msgstr "Images per seconds"
4112
4113 #. display Hardware type
4114-#: ../lucioLib/gui/assistant_new_project.py:358
4115+#: ../lucioLib/gui/assistant_new_project.py:356
4116 msgid "Hardware type"
4117 msgstr ""
4118
4119 #. webcam name
4120-#: ../lucioLib/gui/assistant_new_project.py:364
4121+#: ../lucioLib/gui/assistant_new_project.py:362
4122 #, fuzzy
4123 msgid "Webcam name"
4124 msgstr "Web Cam"
4125
4126 #. webcam device
4127-#: ../lucioLib/gui/assistant_new_project.py:368
4128+#: ../lucioLib/gui/assistant_new_project.py:366
4129 #, fuzzy
4130 msgid "Webcam device"
4131 msgstr "Web Cam"
4132
4133 #. webcam resolution
4134-#: ../lucioLib/gui/assistant_new_project.py:372
4135+#: ../lucioLib/gui/assistant_new_project.py:370
4136 msgid "Webcam resolution used"
4137 msgstr ""
4138
4139 #. webcam device
4140-#: ../lucioLib/gui/assistant_new_project.py:378
4141+#: ../lucioLib/gui/assistant_new_project.py:376
4142 msgid "Webcam driver used"
4143 msgstr ""
4144
4145 #. Final message
4146-#: ../lucioLib/gui/assistant_new_project.py:383
4147+#: ../lucioLib/gui/assistant_new_project.py:381
4148 msgid "Have fun with luciole !"
4149 msgstr ""
4150
4151-#: ../lucioLib/gui/assistant_new_project.py:413
4152+#: ../lucioLib/gui/assistant_new_project.py:411
4153 #, fuzzy
4154 msgid "Luciole project assistant"
4155 msgstr "Select a myrtille project file"
4156
4157-#: ../lucioLib/gui/assistant_new_project.py:424
4158+#: ../lucioLib/gui/assistant_new_project.py:422
4159 #, fuzzy
4160 msgid " Select a project path "
4161 msgstr "Select a myrtille project file"
4162
4163-#: ../lucioLib/gui/assistant_new_project.py:433
4164+#: ../lucioLib/gui/assistant_new_project.py:431
4165 #, fuzzy
4166 msgid " Select hardware "
4167 msgstr "Select a folder"
4168
4169-#: ../lucioLib/gui/assistant_new_project.py:443
4170+#: ../lucioLib/gui/assistant_new_project.py:441
4171 msgid " Webcam detection "
4172 msgstr ""
4173
4174-#: ../lucioLib/gui/assistant_new_project.py:452
4175+#: ../lucioLib/gui/assistant_new_project.py:451
4176 #, fuzzy
4177 msgid " Project overview "
4178 msgstr "Project name"
4179@@ -549,11 +533,11 @@
4180 msgid "Webcam detection done"
4181 msgstr ""
4182
4183-#: ../lucioLib/gui/webcam_detection_widget.py:186
4184-msgid "Detected webcam"
4185-msgstr ""
4186-
4187 #: ../lucioLib/gui/webcam_detection_widget.py:188
4188+msgid "Detected webcam(s)"
4189+msgstr ""
4190+
4191+#: ../lucioLib/gui/webcam_detection_widget.py:192
4192 msgid "No webcam detected"
4193 msgstr ""
4194
4195@@ -567,6 +551,10 @@
4196 msgid "Select a Folder"
4197 msgstr "Select a folder"
4198
4199+#: ../lucioLib/luciole_constants.py:42
4200+msgid "OTHER DEVICE"
4201+msgstr ""
4202+
4203 #: ../lucioLib/luciole_controller.py:157
4204 #, fuzzy, python-format
4205 msgid "Project %s saved"
4206@@ -577,87 +565,94 @@
4207 msgid "Project saved as %s"
4208 msgstr "Project name"
4209
4210-#: ../lucioLib/luciole_controller.py:222
4211+#: ../lucioLib/luciole_controller.py:229
4212 msgid "No file or valid file choosen for image import."
4213 msgstr ""
4214
4215-#: ../lucioLib/luciole_controller.py:226
4216+#: ../lucioLib/luciole_controller.py:233
4217 msgid "Impossible to import images when no project are loaded."
4218 msgstr ""
4219
4220 #. nbd@grape to transform as error message
4221-#: ../lucioLib/luciole_controller.py:255
4222+#: ../lucioLib/luciole_controller.py:262
4223 msgid "Nothing to export. No project loaded"
4224 msgstr ""
4225
4226 #. nbd@grape specify action to do err message or raise exception ?
4227-#: ../lucioLib/luciole_controller.py:273
4228+#: ../lucioLib/luciole_controller.py:280
4229 msgid "Imposible to initialize player."
4230 msgstr ""
4231
4232 #. nbd@grape to transform as error message
4233-#: ../lucioLib/luciole_controller.py:295
4234+#: ../lucioLib/luciole_controller.py:302
4235 msgid "Can not play animantion : No image on montage view "
4236 msgstr ""
4237
4238 #. nbd@grape to transform as error message
4239-#: ../lucioLib/luciole_controller.py:304
4240+#: ../lucioLib/luciole_controller.py:311
4241 msgid "Can not play animantion : No project loaded "
4242 msgstr ""
4243
4244 #. nbd@grape : ask for save if save set status as loaded
4245-#: ../lucioLib/luciole_controller.py:353
4246+#: ../lucioLib/luciole_controller.py:360
4247 msgid "Save Project before closing"
4248 msgstr ""
4249
4250-#: ../lucioLib/luciole_controller.py:379
4251+#: ../lucioLib/luciole_controller.py:386
4252 #, python-format
4253 msgid "Project %s is closed"
4254 msgstr ""
4255
4256 #. clear message status bar
4257-#: ../lucioLib/luciole_controller.py:400
4258+#: ../lucioLib/luciole_controller.py:407
4259 msgid "Acquiring"
4260 msgstr ""
4261
4262-#: ../lucioLib/luciole_controller.py:421
4263+#. stop acquirer
4264+#: ../lucioLib/luciole_controller.py:424
4265+msgid ""
4266+"No acquisition available. Use 'import image' button to load images in "
4267+"project."
4268+msgstr ""
4269+
4270+#: ../lucioLib/luciole_controller.py:436
4271 msgid " Can not start acquisition when no project are loaded."
4272 msgstr ""
4273
4274-#: ../lucioLib/luciole_controller.py:430
4275+#: ../lucioLib/luciole_controller.py:445
4276 #, python-format
4277 msgid "Acquisition error. %s"
4278 msgstr ""
4279
4280-#: ../lucioLib/luciole_controller.py:444
4281+#: ../lucioLib/luciole_controller.py:459
4282 msgid "No Acquistion"
4283 msgstr ""
4284
4285 #. nbd@grape : ask for save if save set status as loaded
4286-#: ../lucioLib/luciole_controller.py:533
4287+#: ../lucioLib/luciole_controller.py:548
4288 msgid "Project modified. Save project before exit ?"
4289 msgstr ""
4290
4291-#: ../lucioLib/luciole_controller.py:585
4292-msgid "Please restart luciole to take into acount the new theme "
4293+#: ../lucioLib/luciole_controller.py:600
4294+msgid "Please restart luciole to take into account the new theme "
4295 msgstr ""
4296
4297-#: ../lucioLib/luciole_controller.py:635
4298+#: ../lucioLib/luciole_controller.py:650
4299 #, fuzzy
4300-msgid "Failed to load project "
4301+msgid "Failed to load project "
4302 msgstr "Select a myrtille project file"
4303
4304-#: ../lucioLib/luciole_image.py:135
4305+#: ../lucioLib/luciole_image.py:137
4306 #, python-format
4307 msgid "Not a file : %s"
4308 msgstr ""
4309
4310-#: ../lucioLib/luciole_image.py:183
4311+#: ../lucioLib/luciole_image.py:185
4312 msgid "rush folder not valid"
4313 msgstr ""
4314
4315 #. error to raise
4316-#: ../lucioLib/luciole_image.py:278
4317+#: ../lucioLib/luciole_image.py:280
4318 #, python-format
4319 msgid "Error path does not exist : %s"
4320 msgstr ""
4321@@ -685,6 +680,24 @@
4322 msgid "Unable to erase"
4323 msgstr ""
4324
4325+#~ msgid "gtk-about"
4326+#~ msgstr "gtk-about"
4327+
4328+#~ msgid "gtk-new"
4329+#~ msgstr "gtk-new"
4330+
4331+#~ msgid "gtk-open"
4332+#~ msgstr "gtk-open"
4333+
4334+#~ msgid "gtk-quit"
4335+#~ msgstr "gtk-quit"
4336+
4337+#~ msgid "gtk-save"
4338+#~ msgstr "gtk-save"
4339+
4340+#~ msgid "gtk-save-as"
4341+#~ msgstr "gtk-save-as"
4342+
4343 #, fuzzy
4344 #~ msgid "project_name"
4345 #~ msgstr "Project name"
4346@@ -728,9 +741,6 @@
4347 #~ msgid "Export ..."
4348 #~ msgstr "Export ..."
4349
4350-#~ msgid "File export"
4351-#~ msgstr "File export"
4352-
4353 #, fuzzy
4354 #~ msgid "Images per second number"
4355 #~ msgstr "Images per seconds"
4356
4357=== modified file 'po/en_US/LC_MESSAGES/luciole.mo'
4358Binary files po/en_US/LC_MESSAGES/luciole.mo 2009-05-01 16:34:13 +0000 and po/en_US/LC_MESSAGES/luciole.mo 2009-05-06 17:15:46 +0000 differ
4359=== modified file 'po/fr_FR.po'
4360--- po/fr_FR.po 2009-05-01 16:34:13 +0000
4361+++ po/fr_FR.po 2009-05-07 09:27:18 +0000
4362@@ -9,7 +9,7 @@
4363 msgstr ""
4364 "Project-Id-Version: myrtille export\n"
4365 "Report-Msgid-Bugs-To: \n"
4366-"POT-Creation-Date: 2009-05-01 18:31+0200\n"
4367+"POT-Creation-Date: 2009-05-07 11:21+0200\n"
4368 "PO-Revision-Date: 2009-04-30 18:04+0000\n"
4369 "Last-Translator: Lili <Unknown>\n"
4370 "Language-Team: French <gnomefr@traduc.org>\n"
4371@@ -59,7 +59,7 @@
4372 #: ../images/luciole.glade.h:11
4373 #, fuzzy
4374 msgid "Copyright 2009 Nicolas Bertrand /GRAPE"
4375-msgstr "Copyright 2009 GRAPE"
4376+msgstr "Copyright 2009 Nicolas Bertrand/GRAPE"
4377
4378 #: ../images/luciole.glade.h:12
4379 msgid ""
4380@@ -75,7 +75,7 @@
4381 msgid ""
4382 "Default\n"
4383 "Tropical"
4384-msgstr "Tropical"
4385+msgstr ""
4386
4387 #: ../images/luciole.glade.h:17
4388 msgid ""
4389@@ -83,10 +83,10 @@
4390 "Nico : nico@inattendu.org"
4391 msgstr ""
4392
4393-# msgstr "Le Fichier %s existe. Ecraser ce fichier ?"
4394 #: ../images/luciole.glade.h:19
4395+#, fuzzy
4396 msgid "Export"
4397-msgstr "Export"
4398+msgstr "Export terminé"
4399
4400 #: ../images/luciole.glade.h:20
4401 msgid "Export path:"
4402@@ -126,7 +126,7 @@
4403 msgid "Move down one or several images"
4404 msgstr "Descendre une ou plusieurs images"
4405
4406-#. Déplacer des images capturées dans la zone de montage
4407+#. D&#xE9;placer des images captur&#xE9;es dans la zone de montage
4408 #: ../images/luciole.glade.h:32
4409 msgid "Move snapshot to montage area"
4410 msgstr "Déplacer des images capturées dans la zone de montage"
4411@@ -134,7 +134,7 @@
4412 #. Monter un/ou plusieurs images
4413 #: ../images/luciole.glade.h:34
4414 msgid "Move up one or several images"
4415-msgstr "Monter une ou plusieurs images"
4416+msgstr "Monter une ou plusieurs images"
4417
4418 #: ../images/luciole.glade.h:35
4419 msgid "Open recent"
4420@@ -153,18 +153,23 @@
4421 msgstr "Propriétés du projet"
4422
4423 #: ../images/luciole.glade.h:39
4424+#: ../lucioLib/gui/dialog_project_properties.py:89
4425+msgid "Project properties"
4426+msgstr "Propriétés du projet"
4427+
4428+#: ../images/luciole.glade.h:40
4429 msgid "Select Theme"
4430 msgstr "Choisir un thème"
4431
4432-#: ../images/luciole.glade.h:40
4433+#: ../images/luciole.glade.h:41
4434 msgid "Select a Luciole project"
4435 msgstr "Choisir un projet Luciole"
4436
4437-#: ../images/luciole.glade.h:41 ../lucioLib/gui/assistant_new_project.py:102
4438+#: ../images/luciole.glade.h:42 ../lucioLib/gui/assistant_new_project.py:100
4439 msgid "Select a folder"
4440 msgstr "Sélectionner un dossier"
4441
4442-#: ../images/luciole.glade.h:42
4443+#: ../images/luciole.glade.h:43
4444 msgid ""
4445 "This program is free software; you can redistribute it and/or\n"
4446 "modify it under the terms of the GNU General Public License\n"
4447@@ -183,120 +188,99 @@
4448 "Inc., 59 Temple Place - \n"
4449 "Suite 330, Boston, MA 02111-1307, USA."
4450 msgstr ""
4451-"Ce programme est un logiciel libre, vous pouvez le redistribuer et / ou le "
4452-"modifier selon les termes de la GNU General Public License publiée par la "
4453-"Free Software Foundation ; soit la version 2 de la Licence, ou (à votre "
4454+"Ce programme est un logiciel libre, vous pouvez le redistribuer et / ou le \n"
4455+"modifier selon les termes de la GNU General Public License publiée par la \n"
4456+"Free Software Foundation ; soit la version 2 de la Licence, ou (à votre \n"
4457 "convenance) toute version ultérieure.\n"
4458-"Ce programme est distribué dans l'espoir qu'il sera utile, mais SANS AUCUNE "
4459-"GARANTIE ; sans même une garantie implicite de commercialisation ou "
4460+"Ce programme est distribué dans l'espoir qu'il sera utile, mais SANS "
4461+"AUCUNE \n"
4462+"GARANTIE ; sans même une garantie implicite de commercialisation ou \n"
4463 "d'adaptation à un USAGE PARTICULIER. Voir la GNU General Public\n"
4464 "License pour plus de détails.\n"
4465-"Vous devriez avoir reçu une copie de la GNU General Public License avec ce "
4466+"Vous devriez avoir reçu une copie de la GNU General Public License avec ce \n"
4467 "programme ; sinon, écrivez à la\n"
4468 "Free Software Foundation,\n"
4469 "Inc, 59 Temple Place -\n"
4470-"Suite 330, Boston, MA 02111-1307, USA."
4471+"Suite 330, Boston, MA 02111-1307, USA.\n"
4472
4473-#. Jeter à la poubelle
4474-#: ../images/luciole.glade.h:59
4475+#. Jeter &#xE0; la poubelle
4476+#: ../images/luciole.glade.h:60
4477 msgid "To trash"
4478 msgstr "Mettre à la poubelle"
4479
4480-#: ../images/luciole.glade.h:60
4481+#: ../images/luciole.glade.h:61
4482 msgid "Transparency level"
4483 msgstr "Niveau de transparence"
4484
4485-#: ../images/luciole.glade.h:61
4486+# msgstr "Le Fichier %s existe. Ecraser ce fichier ?"
4487+#: ../images/luciole.glade.h:62
4488+#, fuzzy
4489+msgid "Video Export"
4490+msgstr "Export"
4491+
4492+#: ../images/luciole.glade.h:63
4493 msgid "_File"
4494 msgstr "_Fichier"
4495
4496-#: ../images/luciole.glade.h:62
4497+#: ../images/luciole.glade.h:64
4498 msgid "_Help"
4499-msgstr "Aide"
4500+msgstr "_Aide"
4501
4502-#: ../images/luciole.glade.h:63
4503+#: ../images/luciole.glade.h:65
4504 msgid "_View"
4505-msgstr "_Affichage"
4506-
4507-#: ../images/luciole.glade.h:64
4508-msgid "gtk-about"
4509-msgstr ""
4510-
4511-#: ../images/luciole.glade.h:65
4512+msgstr "_Options"
4513+
4514+#: ../images/luciole.glade.h:66
4515 msgid "gtk-apply"
4516 msgstr ""
4517
4518-#: ../images/luciole.glade.h:66
4519+#: ../images/luciole.glade.h:67
4520 msgid "gtk-cancel"
4521 msgstr ""
4522
4523-#: ../images/luciole.glade.h:67
4524+#: ../images/luciole.glade.h:68
4525 msgid "gtk-close"
4526 msgstr ""
4527
4528-#: ../images/luciole.glade.h:68
4529-msgid "gtk-new"
4530-msgstr ""
4531-
4532-#: ../images/luciole.glade.h:69
4533-msgid "gtk-open"
4534-msgstr ""
4535-
4536+#. Capturer une image
4537 #: ../images/luciole.glade.h:70
4538-msgid "gtk-quit"
4539-msgstr ""
4540-
4541-#: ../images/luciole.glade.h:71
4542-msgid "gtk-save"
4543-msgstr ""
4544-
4545-#: ../images/luciole.glade.h:72
4546-msgid "gtk-save-as"
4547-msgstr ""
4548-
4549-#. Capturer une image
4550-#: ../images/luciole.glade.h:74
4551 msgid "make a snapshot"
4552 msgstr "Capturer une image"
4553
4554-#: ../images/luciole.glade.h:75
4555-msgid "menuitem1"
4556-msgstr ""
4557-
4558-#: ../images/luciole.glade.h:76
4559+#: ../images/luciole.glade.h:71
4560 msgid "options"
4561 msgstr "Options"
4562
4563-#: ../images/luciole.glade.h:77
4564+#: ../images/luciole.glade.h:72
4565 msgid "project1"
4566 msgstr ""
4567
4568-#: ../images/luciole.glade.h:78
4569+#: ../images/luciole.glade.h:73
4570 msgid "project2"
4571 msgstr ""
4572
4573-#: ../images/luciole.glade.h:79
4574+#: ../images/luciole.glade.h:74
4575 msgid "project3"
4576 msgstr ""
4577
4578-#: ../images/luciole.glade.h:80
4579+#: ../images/luciole.glade.h:75
4580 msgid "project4"
4581 msgstr ""
4582
4583-#: ../images/luciole.glade.h:81
4584+#: ../images/luciole.glade.h:76
4585 msgid "project5"
4586 msgstr ""
4587
4588-#: ../lucioLib/controller/controller_load_project.py:133
4589+#: ../lucioLib/controller/controller_load_project.py:134
4590 msgid "Project Load started"
4591 msgstr "Chargement du projet démarré"
4592
4593-#: ../lucioLib/controller/controller_load_project.py:138
4594+#: ../lucioLib/controller/controller_load_project.py:139
4595 #, python-format
4596 msgid "Project %s is loaded"
4597 msgstr "Le projet %s est chargé"
4598
4599-#: ../lucioLib/controller/controller_load_project.py:144
4600+#: ../lucioLib/controller/controller_load_project.py:145
4601 #, python-format
4602 msgid "Project %s is loading"
4603 msgstr "Le projet %s est en cours de chargement"
4604@@ -310,8 +294,9 @@
4605 msgstr "Toutes les images ont été importées"
4606
4607 #: ../lucioLib/controller/controller_import.py:189
4608+#, fuzzy
4609 msgid "Importing images ..."
4610-msgstr "Images en cours d'import ..."
4611+msgstr "Images en cours d'import..."
4612
4613 #: ../lucioLib/gui/dialog_project_properties.py:41
4614 msgid "Project folder :"
4615@@ -353,10 +338,6 @@
4616 msgid "Video height :"
4617 msgstr "Hauteur :"
4618
4619-#: ../lucioLib/gui/dialog_project_properties.py:89
4620-msgid "Project properties"
4621-msgstr "Propriétés du projet"
4622-
4623 #: ../lucioLib/gui/dialog_project_properties.py:177
4624 #: ../lucioLib/gui/dialog_project_properties.py:193
4625 msgid "desc"
4626@@ -396,105 +377,111 @@
4627 #. Initailize widgets for first page
4628 #.
4629 #. A label
4630-#: ../lucioLib/gui/assistant_new_project.py:61
4631+#: ../lucioLib/gui/assistant_new_project.py:59
4632 msgid "This assistant will help you on configuration of a new luciole project."
4633 msgstr ""
4634 "Cet assistant va vous aider dans la configuration d'un nouveau projet "
4635 "luciole."
4636
4637 #. A label
4638-#: ../lucioLib/gui/assistant_new_project.py:74
4639+#: ../lucioLib/gui/assistant_new_project.py:72
4640 msgid "Select project name and destination folder."
4641 msgstr "Choisir un nom de projet et un répertoire."
4642
4643 #. display project name
4644-#: ../lucioLib/gui/assistant_new_project.py:84
4645-#: ../lucioLib/gui/assistant_new_project.py:341
4646+#: ../lucioLib/gui/assistant_new_project.py:82
4647+#: ../lucioLib/gui/assistant_new_project.py:339
4648 msgid "Project Name"
4649 msgstr "Nom de projet"
4650
4651-#: ../lucioLib/gui/assistant_new_project.py:95
4652+#: ../lucioLib/gui/assistant_new_project.py:93
4653 msgid "Folder"
4654 msgstr "Répertoire"
4655
4656-#: ../lucioLib/gui/assistant_new_project.py:150
4657+#: ../lucioLib/gui/assistant_new_project.py:147
4658 #, python-format
4659 msgid ""
4660-"%s is noy valid. Not valid project name. Should be a combination of "
4661+"%s is not valid. Not valid project name. Should be a combination of "
4662 "alhanumeric and '_' characters "
4663 msgstr ""
4664 "%s n'est pas valide. Nom de projet invalide. Utilisez une combinaison de "
4665 "caractères alphanumériques et '_' "
4666
4667-#: ../lucioLib/gui/assistant_new_project.py:161
4668+#: ../lucioLib/gui/assistant_new_project.py:158
4669 #, python-format
4670 msgid "The project %s exists !"
4671 msgstr "Le projet %s existe déjà !"
4672
4673-#: ../lucioLib/gui/assistant_new_project.py:206
4674+#: ../lucioLib/gui/assistant_new_project.py:203
4675 msgid "Select a device"
4676 msgstr "Choisir un périphérique"
4677
4678-#: ../lucioLib/gui/assistant_new_project.py:242
4679+#: ../lucioLib/gui/assistant_new_project.py:223
4680+msgid ""
4681+" Other device.\n"
4682+"(Manual import)"
4683+msgstr ""
4684+
4685+#: ../lucioLib/gui/assistant_new_project.py:240
4686 msgid "Images per second"
4687 msgstr "Images par seconde"
4688
4689 #. display project path
4690-#: ../lucioLib/gui/assistant_new_project.py:345
4691+#: ../lucioLib/gui/assistant_new_project.py:343
4692 msgid "Project Path"
4693 msgstr "Chemin du projet"
4694
4695-#: ../lucioLib/gui/assistant_new_project.py:354
4696+#: ../lucioLib/gui/assistant_new_project.py:352
4697 msgid "Number of frames per seconds"
4698 msgstr "Nombre de frames par seconde"
4699
4700 #. display Hardware type
4701-#: ../lucioLib/gui/assistant_new_project.py:358
4702+#: ../lucioLib/gui/assistant_new_project.py:356
4703 msgid "Hardware type"
4704 msgstr "Type de matériel"
4705
4706 #. webcam name
4707-#: ../lucioLib/gui/assistant_new_project.py:364
4708+#: ../lucioLib/gui/assistant_new_project.py:362
4709 msgid "Webcam name"
4710 msgstr "Nom de la webcam"
4711
4712 #. webcam device
4713-#: ../lucioLib/gui/assistant_new_project.py:368
4714+#: ../lucioLib/gui/assistant_new_project.py:366
4715 msgid "Webcam device"
4716 msgstr "Webcam driver"
4717
4718 #. webcam resolution
4719-#: ../lucioLib/gui/assistant_new_project.py:372
4720+#: ../lucioLib/gui/assistant_new_project.py:370
4721 msgid "Webcam resolution used"
4722 msgstr "Résolution utilisée par la webcam"
4723
4724 #. webcam device
4725-#: ../lucioLib/gui/assistant_new_project.py:378
4726+#: ../lucioLib/gui/assistant_new_project.py:376
4727 msgid "Webcam driver used"
4728 msgstr "Driver de webcam utilisé"
4729
4730 #. Final message
4731-#: ../lucioLib/gui/assistant_new_project.py:383
4732+#: ../lucioLib/gui/assistant_new_project.py:381
4733 msgid "Have fun with luciole !"
4734 msgstr "Amusez-vous bien avec luciole !"
4735
4736-#: ../lucioLib/gui/assistant_new_project.py:413
4737+#: ../lucioLib/gui/assistant_new_project.py:411
4738 msgid "Luciole project assistant"
4739 msgstr "Assistant de projet luciole"
4740
4741-#: ../lucioLib/gui/assistant_new_project.py:424
4742+#: ../lucioLib/gui/assistant_new_project.py:422
4743 msgid " Select a project path "
4744 msgstr " Choisir un chemin de projet "
4745
4746-#: ../lucioLib/gui/assistant_new_project.py:433
4747+#: ../lucioLib/gui/assistant_new_project.py:431
4748 msgid " Select hardware "
4749 msgstr " Choisir un matériel "
4750
4751-#: ../lucioLib/gui/assistant_new_project.py:443
4752+#: ../lucioLib/gui/assistant_new_project.py:441
4753 msgid " Webcam detection "
4754 msgstr " Détection de webcam "
4755
4756-#: ../lucioLib/gui/assistant_new_project.py:452
4757+#: ../lucioLib/gui/assistant_new_project.py:451
4758 msgid " Project overview "
4759 msgstr " Propriétés du projet "
4760
4761@@ -516,11 +503,12 @@
4762 msgid "Webcam detection done"
4763 msgstr "Détection de webcam terminée"
4764
4765-#: ../lucioLib/gui/webcam_detection_widget.py:186
4766-msgid "Detected webcam"
4767+#: ../lucioLib/gui/webcam_detection_widget.py:188
4768+#, fuzzy
4769+msgid "Detected webcam(s)"
4770 msgstr "Webcam détectée(s)"
4771
4772-#: ../lucioLib/gui/webcam_detection_widget.py:188
4773+#: ../lucioLib/gui/webcam_detection_widget.py:192
4774 msgid "No webcam detected"
4775 msgstr "Pas de webcam détectée"
4776
4777@@ -532,6 +520,10 @@
4778 msgid "Select a Folder"
4779 msgstr "Sélectionner un dossier"
4780
4781+#: ../lucioLib/luciole_constants.py:42
4782+msgid "OTHER DEVICE"
4783+msgstr ""
4784+
4785 #: ../lucioLib/luciole_controller.py:157
4786 #, python-format
4787 msgid "Project %s saved"
4788@@ -542,86 +534,94 @@
4789 msgid "Project saved as %s"
4790 msgstr "Projet sauvegardé en tant que %s"
4791
4792-#: ../lucioLib/luciole_controller.py:222
4793+#: ../lucioLib/luciole_controller.py:229
4794 msgid "No file or valid file choosen for image import."
4795 msgstr "Pas d'image ou d'images valides choisies pour l'import."
4796
4797-#: ../lucioLib/luciole_controller.py:226
4798+#: ../lucioLib/luciole_controller.py:233
4799 msgid "Impossible to import images when no project are loaded."
4800 msgstr "Impossible d'importer des images. Aucun projet chargé."
4801
4802 #. nbd@grape to transform as error message
4803-#: ../lucioLib/luciole_controller.py:255
4804+#: ../lucioLib/luciole_controller.py:262
4805 msgid "Nothing to export. No project loaded"
4806 msgstr "Rien à exporter. Il n'y a pas de projet chargé."
4807
4808 #. nbd@grape specify action to do err message or raise exception ?
4809-#: ../lucioLib/luciole_controller.py:273
4810+#: ../lucioLib/luciole_controller.py:280
4811 msgid "Imposible to initialize player."
4812 msgstr "Impossible d'initialiser la lecture de la vidéo."
4813
4814 #. nbd@grape to transform as error message
4815-#: ../lucioLib/luciole_controller.py:295
4816+#: ../lucioLib/luciole_controller.py:302
4817 msgid "Can not play animantion : No image on montage view "
4818 msgstr "Impossible de lire la vidéo : pas d'image dans la zone de montage. "
4819
4820 #. nbd@grape to transform as error message
4821-#: ../lucioLib/luciole_controller.py:304
4822+#: ../lucioLib/luciole_controller.py:311
4823 msgid "Can not play animantion : No project loaded "
4824 msgstr "Impossible de lire la vidéo : pas de projet chargé "
4825
4826 #. nbd@grape : ask for save if save set status as loaded
4827-#: ../lucioLib/luciole_controller.py:353
4828+#: ../lucioLib/luciole_controller.py:360
4829 msgid "Save Project before closing"
4830 msgstr "Sauvegardez le projet avant de fermer ?"
4831
4832-#: ../lucioLib/luciole_controller.py:379
4833+#: ../lucioLib/luciole_controller.py:386
4834 #, python-format
4835 msgid "Project %s is closed"
4836 msgstr "Le projet %s est fermé"
4837
4838 #. clear message status bar
4839-#: ../lucioLib/luciole_controller.py:400
4840+#: ../lucioLib/luciole_controller.py:407
4841 msgid "Acquiring"
4842 msgstr "En cours d'acquisition"
4843
4844-#: ../lucioLib/luciole_controller.py:421
4845+#. stop acquirer
4846+#: ../lucioLib/luciole_controller.py:424
4847+msgid ""
4848+"No acquisition available. Use 'import image' button to load images in "
4849+"project."
4850+msgstr ""
4851+
4852+#: ../lucioLib/luciole_controller.py:436
4853 msgid " Can not start acquisition when no project are loaded."
4854 msgstr " Impossible de démarrer l'acquisition. Pas de projet chargé."
4855
4856-#: ../lucioLib/luciole_controller.py:430
4857+#: ../lucioLib/luciole_controller.py:445
4858 #, python-format
4859 msgid "Acquisition error. %s"
4860 msgstr "Erreur d'acquisition : %s"
4861
4862-#: ../lucioLib/luciole_controller.py:444
4863+#: ../lucioLib/luciole_controller.py:459
4864 msgid "No Acquistion"
4865 msgstr "Pas d'acquisition."
4866
4867 #. nbd@grape : ask for save if save set status as loaded
4868-#: ../lucioLib/luciole_controller.py:533
4869+#: ../lucioLib/luciole_controller.py:548
4870 msgid "Project modified. Save project before exit ?"
4871 msgstr "Le projet a été modifié. Le sauvegarder avant de quitter ?"
4872
4873-#: ../lucioLib/luciole_controller.py:585
4874-msgid "Please restart luciole to take into acount the new theme "
4875+#: ../lucioLib/luciole_controller.py:600
4876+msgid "Please restart luciole to take into account the new theme "
4877 msgstr "Merci de redémarrer Luciole pour prendre en compte le nouveau thème. "
4878
4879-#: ../lucioLib/luciole_controller.py:635
4880-msgid "Failed to load project "
4881-msgstr "Impossible de charger le projet "
4882+#: ../lucioLib/luciole_controller.py:650
4883+#, fuzzy
4884+msgid "Failed to load project "
4885+msgstr "Impossible de charger le projet "
4886
4887-#: ../lucioLib/luciole_image.py:135
4888+#: ../lucioLib/luciole_image.py:137
4889 #, python-format
4890 msgid "Not a file : %s"
4891 msgstr "%s n'est pas un fichier"
4892
4893-#: ../lucioLib/luciole_image.py:183
4894+#: ../lucioLib/luciole_image.py:185
4895 msgid "rush folder not valid"
4896 msgstr "Répertoire 'rush' invalide"
4897
4898 #. error to raise
4899-#: ../lucioLib/luciole_image.py:278
4900+#: ../lucioLib/luciole_image.py:280
4901 #, python-format
4902 msgid "Error path does not exist : %s"
4903 msgstr "Erreur. Le chemin %s n'existe pas."
4904
4905=== modified file 'po/fr_FR/LC_MESSAGES/luciole.mo'
4906Binary files po/fr_FR/LC_MESSAGES/luciole.mo 2009-05-01 16:34:13 +0000 and po/fr_FR/LC_MESSAGES/luciole.mo 2009-05-06 17:15:46 +0000 differ
4907=== modified file 'po/luciole.pot'
4908--- po/luciole.pot 2009-05-01 16:34:13 +0000
4909+++ po/luciole.pot 2009-05-07 09:27:18 +0000
4910@@ -8,12 +8,12 @@
4911 msgstr ""
4912 "Project-Id-Version: PACKAGE VERSION\n"
4913 "Report-Msgid-Bugs-To: \n"
4914-"POT-Creation-Date: 2009-05-01 18:31+0200\n"
4915+"POT-Creation-Date: 2009-05-07 11:21+0200\n"
4916 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
4917 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
4918 "Language-Team: LANGUAGE <LL@li.org>\n"
4919 "MIME-Version: 1.0\n"
4920-"Content-Type: text/plain; charset=UTF-8\n"
4921+"Content-Type: text/plain; charset=CHARSET\n"
4922 "Content-Transfer-Encoding: 8bit\n"
4923
4924 #: ../images/luciole.glade.h:1
4925@@ -116,7 +116,7 @@
4926 msgid "Move down one or several images"
4927 msgstr ""
4928
4929-#. Déplacer des images capturées dans la zone de montage
4930+#. D&#xE9;placer des images captur&#xE9;es dans la zone de montage
4931 #: ../images/luciole.glade.h:32
4932 msgid "Move snapshot to montage area"
4933 msgstr ""
4934@@ -143,18 +143,23 @@
4935 msgstr ""
4936
4937 #: ../images/luciole.glade.h:39
4938+#: ../lucioLib/gui/dialog_project_properties.py:89
4939+msgid "Project properties"
4940+msgstr ""
4941+
4942+#: ../images/luciole.glade.h:40
4943 msgid "Select Theme"
4944 msgstr ""
4945
4946-#: ../images/luciole.glade.h:40
4947+#: ../images/luciole.glade.h:41
4948 msgid "Select a Luciole project"
4949 msgstr ""
4950
4951-#: ../images/luciole.glade.h:41 ../lucioLib/gui/assistant_new_project.py:102
4952+#: ../images/luciole.glade.h:42 ../lucioLib/gui/assistant_new_project.py:100
4953 msgid "Select a folder"
4954 msgstr ""
4955
4956-#: ../images/luciole.glade.h:42
4957+#: ../images/luciole.glade.h:43
4958 msgid ""
4959 "This program is free software; you can redistribute it and/or\n"
4960 "modify it under the terms of the GNU General Public License\n"
4961@@ -174,106 +179,82 @@
4962 "Suite 330, Boston, MA 02111-1307, USA."
4963 msgstr ""
4964
4965-#. Jeter à la poubelle
4966-#: ../images/luciole.glade.h:59
4967+#. Jeter &#xE0; la poubelle
4968+#: ../images/luciole.glade.h:60
4969 msgid "To trash"
4970 msgstr ""
4971
4972-#: ../images/luciole.glade.h:60
4973+#: ../images/luciole.glade.h:61
4974 msgid "Transparency level"
4975 msgstr ""
4976
4977-#: ../images/luciole.glade.h:61
4978-msgid "_File"
4979-msgstr ""
4980-
4981 #: ../images/luciole.glade.h:62
4982-msgid "_Help"
4983+msgid "Video Export"
4984 msgstr ""
4985
4986 #: ../images/luciole.glade.h:63
4987-msgid "_View"
4988+msgid "_File"
4989 msgstr ""
4990
4991 #: ../images/luciole.glade.h:64
4992-msgid "gtk-about"
4993+msgid "_Help"
4994 msgstr ""
4995
4996 #: ../images/luciole.glade.h:65
4997+msgid "_View"
4998+msgstr ""
4999+
5000+#: ../images/luciole.glade.h:66
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches

to all changes: