]> git.sesse.net Git - vlc/commitdiff
PDA Interface:
authorJean-Paul Saman <jpsaman@videolan.org>
Sun, 9 Nov 2003 19:49:48 +0000 (19:49 +0000)
committerJean-Paul Saman <jpsaman@videolan.org>
Sun, 9 Nov 2003 19:49:48 +0000 (19:49 +0000)
* Camera tabpage is done.

modules/gui/pda/pda.glade
modules/gui/pda/pda_callbacks.c
modules/gui/pda/pda_callbacks.h
modules/gui/pda/pda_interface.c

index 97e19ba98803da7e4f4359caaf79d60b69dda310..1974d9b82e3b67916f6d8772dba8dcfcafc96a35 100644 (file)
                <widget class="GtkScrolledWindow" id="scrolledV4Lwindow">
                  <property name="visible">True</property>
                  <property name="can_focus">True</property>
-                 <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+                 <property name="hscrollbar_policy">GTK_POLICY_ALWAYS</property>
                  <property name="vscrollbar_policy">GTK_POLICY_ALWAYS</property>
-                 <property name="shadow_type">GTK_SHADOW_NONE</property>
+                 <property name="shadow_type">GTK_SHADOW_ETCHED_OUT</property>
                  <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
 
                  <child>
                    <widget class="GtkViewport" id="viewportV4L">
                      <property name="visible">True</property>
-                     <property name="shadow_type">GTK_SHADOW_IN</property>
+                     <property name="shadow_type">GTK_SHADOW_OUT</property>
 
                      <child>
                        <widget class="GtkTable" id="tableV4L">
                            </packing>
                          </child>
 
+                         <child>
+                           <widget class="GtkLabel" id="labelV4LChannel">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">Channel:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">2</property>
+                             <property name="bottom_attach">3</property>
+                             <property name="x_options">fill</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="labelV4LNorm">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">Norm:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">3</property>
+                             <property name="bottom_attach">4</property>
+                             <property name="x_options">fill</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="labelV4LSize">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">Size:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">4</property>
+                             <property name="bottom_attach">5</property>
+                             <property name="x_options">fill</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="labelV4LFrequency">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">Frequency:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">5</property>
+                             <property name="bottom_attach">6</property>
+                             <property name="x_options">fill</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="labelV4LSampleRate">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">Samplerate:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">6</property>
+                             <property name="bottom_attach">7</property>
+                             <property name="x_options">fill</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="labelV4LQuality">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">Quality:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">7</property>
+                             <property name="bottom_attach">8</property>
+                             <property name="x_options">fill</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="labelV4LTuner">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">Tuner:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">9</property>
+                             <property name="bottom_attach">10</property>
+                             <property name="x_options">fill</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="labelV4LSoundDirection">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">Sound:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">8</property>
+                             <property name="bottom_attach">9</property>
+                             <property name="x_options">fill</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="labelV4LMJPEG">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">MJPEG:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">10</property>
+                             <property name="bottom_attach">11</property>
+                             <property name="x_options">fill</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="labelV4LDecimation">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">Decimation:</property>
+                             <property name="use_underline">False</property>
+                             <property name="use_markup">False</property>
+                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="wrap">False</property>
+                             <property name="selectable">False</property>
+                             <property name="xalign">0</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                           </widget>
+                           <packing>
+                             <property name="left_attach">0</property>
+                             <property name="right_attach">1</property>
+                             <property name="top_attach">11</property>
+                             <property name="bottom_attach">12</property>
+                             <property name="x_options">fill</property>
+                             <property name="y_options"></property>
+                           </packing>
+                         </child>
+
                          <child>
                            <widget class="GtkCombo" id="comboV4lVideoDevice">
                              <property name="visible">True</property>
                                  <property name="has_frame">True</property>
                                  <property name="invisible_char" translatable="yes">*</property>
                                  <property name="activates_default">True</property>
-                                 <signal name="changed" handler="V4LBuildMRL" last_modification_time="Sun, 09 Nov 2003 15:44:46 GMT"/>
                                </widget>
                              </child>
 
                              <property name="right_attach">2</property>
                              <property name="top_attach">0</property>
                              <property name="bottom_attach">1</property>
+                             <property name="x_options">expand|shrink|fill</property>
                              <property name="y_options"></property>
                            </packing>
                          </child>
                                  <property name="has_frame">True</property>
                                  <property name="invisible_char" translatable="yes">*</property>
                                  <property name="activates_default">True</property>
-                                 <signal name="changed" handler="V4LBuildMRL" last_modification_time="Sun, 09 Nov 2003 15:45:10 GMT"/>
                                </widget>
                              </child>
 
                              <property name="right_attach">2</property>
                              <property name="top_attach">1</property>
                              <property name="bottom_attach">2</property>
-                             <property name="y_options"></property>
-                           </packing>
-                         </child>
-
-                         <child>
-                           <widget class="GtkLabel" id="labelV4LChannel">
-                             <property name="visible">True</property>
-                             <property name="label" translatable="yes">Channel:</property>
-                             <property name="use_underline">False</property>
-                             <property name="use_markup">False</property>
-                             <property name="justify">GTK_JUSTIFY_LEFT</property>
-                             <property name="wrap">False</property>
-                             <property name="selectable">False</property>
-                             <property name="xalign">0</property>
-                             <property name="yalign">0.5</property>
-                             <property name="xpad">0</property>
-                             <property name="ypad">0</property>
-                           </widget>
-                           <packing>
-                             <property name="left_attach">0</property>
-                             <property name="right_attach">1</property>
-                             <property name="top_attach">2</property>
-                             <property name="bottom_attach">3</property>
-                             <property name="x_options">fill</property>
+                             <property name="x_options">expand|shrink|fill</property>
                              <property name="y_options"></property>
                            </packing>
                          </child>
                              <property name="snap_to_ticks">False</property>
                              <property name="wrap">False</property>
                              <property name="adjustment">0 0 100 1 10 10</property>
-                             <signal name="changed" handler="V4LBuildMRL" last_modification_time="Sun, 09 Nov 2003 15:45:26 GMT"/>
                            </widget>
                            <packing>
                              <property name="left_attach">1</property>
                              <property name="right_attach">2</property>
                              <property name="top_attach">2</property>
                              <property name="bottom_attach">3</property>
-                             <property name="y_options"></property>
-                           </packing>
-                         </child>
-
-                         <child>
-                           <widget class="GtkLabel" id="labelV4LNorm">
-                             <property name="visible">True</property>
-                             <property name="label" translatable="yes">Norm:</property>
-                             <property name="use_underline">False</property>
-                             <property name="use_markup">False</property>
-                             <property name="justify">GTK_JUSTIFY_LEFT</property>
-                             <property name="wrap">False</property>
-                             <property name="selectable">False</property>
-                             <property name="xalign">0</property>
-                             <property name="yalign">0.5</property>
-                             <property name="xpad">0</property>
-                             <property name="ypad">0</property>
-                           </widget>
-                           <packing>
-                             <property name="left_attach">0</property>
-                             <property name="right_attach">1</property>
-                             <property name="top_attach">3</property>
-                             <property name="bottom_attach">4</property>
-                             <property name="x_options">fill</property>
+                             <property name="x_options">expand|shrink|fill</property>
                              <property name="y_options"></property>
                            </packing>
                          </child>
                                  <property name="has_frame">True</property>
                                  <property name="invisible_char" translatable="yes">*</property>
                                  <property name="activates_default">True</property>
-                                 <signal name="changed" handler="V4LBuildMRL" last_modification_time="Sun, 09 Nov 2003 15:45:49 GMT"/>
                                </widget>
                              </child>
 
                              <property name="right_attach">2</property>
                              <property name="top_attach">3</property>
                              <property name="bottom_attach">4</property>
-                             <property name="y_options"></property>
-                           </packing>
-                         </child>
-
-                         <child>
-                           <widget class="GtkLabel" id="labelV4LSize">
-                             <property name="visible">True</property>
-                             <property name="label" translatable="yes">Size:</property>
-                             <property name="use_underline">False</property>
-                             <property name="use_markup">False</property>
-                             <property name="justify">GTK_JUSTIFY_LEFT</property>
-                             <property name="wrap">False</property>
-                             <property name="selectable">False</property>
-                             <property name="xalign">0</property>
-                             <property name="yalign">0.5</property>
-                             <property name="xpad">0</property>
-                             <property name="ypad">0</property>
-                           </widget>
-                           <packing>
-                             <property name="left_attach">0</property>
-                             <property name="right_attach">1</property>
-                             <property name="top_attach">4</property>
-                             <property name="bottom_attach">5</property>
-                             <property name="x_options">fill</property>
+                             <property name="x_options">expand|shrink|fill</property>
                              <property name="y_options"></property>
                            </packing>
                          </child>
                                  <property name="has_frame">True</property>
                                  <property name="invisible_char" translatable="yes">*</property>
                                  <property name="activates_default">True</property>
-                                 <signal name="changed" handler="V4LBuildMRL" last_modification_time="Sun, 09 Nov 2003 15:46:04 GMT"/>
                                </widget>
                              </child>
 
                              <property name="right_attach">2</property>
                              <property name="top_attach">4</property>
                              <property name="bottom_attach">5</property>
-                             <property name="y_options"></property>
-                           </packing>
-                         </child>
-
-                         <child>
-                           <widget class="GtkLabel" id="labelV4LFrequency">
-                             <property name="visible">True</property>
-                             <property name="label" translatable="yes">Frequency:</property>
-                             <property name="use_underline">False</property>
-                             <property name="use_markup">False</property>
-                             <property name="justify">GTK_JUSTIFY_LEFT</property>
-                             <property name="wrap">False</property>
-                             <property name="selectable">False</property>
-                             <property name="xalign">0</property>
-                             <property name="yalign">0.5</property>
-                             <property name="xpad">0</property>
-                             <property name="ypad">0</property>
-                           </widget>
-                           <packing>
-                             <property name="left_attach">0</property>
-                             <property name="right_attach">1</property>
-                             <property name="top_attach">5</property>
-                             <property name="bottom_attach">6</property>
-                             <property name="x_options">fill</property>
+                             <property name="x_options">expand|shrink|fill</property>
                              <property name="y_options"></property>
                            </packing>
                          </child>
                              <property name="snap_to_ticks">False</property>
                              <property name="wrap">False</property>
                              <property name="adjustment">8692 0 65535 1 10 10</property>
-                             <signal name="changed" handler="V4LBuildMRL" last_modification_time="Sun, 09 Nov 2003 15:46:20 GMT"/>
                            </widget>
                            <packing>
                              <property name="left_attach">1</property>
                              <property name="right_attach">2</property>
                              <property name="top_attach">5</property>
                              <property name="bottom_attach">6</property>
-                             <property name="y_options"></property>
-                           </packing>
-                         </child>
-
-                         <child>
-                           <widget class="GtkLabel" id="labelV4LSampleRate">
-                             <property name="visible">True</property>
-                             <property name="label" translatable="yes">Samplerate:</property>
-                             <property name="use_underline">False</property>
-                             <property name="use_markup">False</property>
-                             <property name="justify">GTK_JUSTIFY_LEFT</property>
-                             <property name="wrap">False</property>
-                             <property name="selectable">False</property>
-                             <property name="xalign">0</property>
-                             <property name="yalign">0.5</property>
-                             <property name="xpad">0</property>
-                             <property name="ypad">0</property>
-                           </widget>
-                           <packing>
-                             <property name="left_attach">0</property>
-                             <property name="right_attach">1</property>
-                             <property name="top_attach">6</property>
-                             <property name="bottom_attach">7</property>
-                             <property name="x_options">fill</property>
+                             <property name="x_options">expand|shrink|fill</property>
                              <property name="y_options"></property>
                            </packing>
                          </child>
                              <property name="snap_to_ticks">False</property>
                              <property name="wrap">False</property>
                              <property name="adjustment">44100 0 65535 1 10 10</property>
-                             <signal name="changed" handler="V4LBuildMRL" last_modification_time="Sun, 09 Nov 2003 15:46:34 GMT"/>
                            </widget>
                            <packing>
                              <property name="left_attach">1</property>
                              <property name="right_attach">2</property>
                              <property name="top_attach">6</property>
                              <property name="bottom_attach">7</property>
-                             <property name="y_options"></property>
-                           </packing>
-                         </child>
-
-                         <child>
-                           <widget class="GtkLabel" id="labelV4LQuality">
-                             <property name="visible">True</property>
-                             <property name="label" translatable="yes">Quality:</property>
-                             <property name="use_underline">False</property>
-                             <property name="use_markup">False</property>
-                             <property name="justify">GTK_JUSTIFY_LEFT</property>
-                             <property name="wrap">False</property>
-                             <property name="selectable">False</property>
-                             <property name="xalign">0</property>
-                             <property name="yalign">0.5</property>
-                             <property name="xpad">0</property>
-                             <property name="ypad">0</property>
-                           </widget>
-                           <packing>
-                             <property name="left_attach">0</property>
-                             <property name="right_attach">1</property>
-                             <property name="top_attach">7</property>
-                             <property name="bottom_attach">8</property>
-                             <property name="x_options">fill</property>
+                             <property name="x_options">expand|shrink|fill</property>
                              <property name="y_options"></property>
                            </packing>
                          </child>
                              <property name="snap_to_ticks">False</property>
                              <property name="wrap">False</property>
                              <property name="adjustment">100 0 65535 1 10 10</property>
-                             <signal name="changed" handler="V4LBuildMRL" last_modification_time="Sun, 09 Nov 2003 15:46:51 GMT"/>
                            </widget>
                            <packing>
                              <property name="left_attach">1</property>
                              <property name="right_attach">2</property>
                              <property name="top_attach">7</property>
                              <property name="bottom_attach">8</property>
-                             <property name="y_options"></property>
-                           </packing>
-                         </child>
-
-                         <child>
-                           <widget class="GtkLabel" id="labelV4LTuner">
-                             <property name="visible">True</property>
-                             <property name="label" translatable="yes">Tuner:</property>
-                             <property name="use_underline">False</property>
-                             <property name="use_markup">False</property>
-                             <property name="justify">GTK_JUSTIFY_LEFT</property>
-                             <property name="wrap">False</property>
-                             <property name="selectable">False</property>
-                             <property name="xalign">0</property>
-                             <property name="yalign">0.5</property>
-                             <property name="xpad">0</property>
-                             <property name="ypad">0</property>
-                           </widget>
-                           <packing>
-                             <property name="left_attach">0</property>
-                             <property name="right_attach">1</property>
-                             <property name="top_attach">9</property>
-                             <property name="bottom_attach">10</property>
-                             <property name="x_options">fill</property>
-                             <property name="y_options"></property>
-                           </packing>
-                         </child>
-
-                         <child>
-                           <widget class="GtkSpinButton" id="entryV4LTuner">
-                             <property name="visible">True</property>
-                             <property name="can_focus">True</property>
-                             <property name="climb_rate">1</property>
-                             <property name="digits">0</property>
-                             <property name="numeric">True</property>
-                             <property name="update_policy">GTK_UPDATE_ALWAYS</property>
-                             <property name="snap_to_ticks">False</property>
-                             <property name="wrap">False</property>
-                             <property name="adjustment">0 -1 100 1 10 10</property>
-                             <signal name="changed" handler="V4LBuildMRL" last_modification_time="Sun, 09 Nov 2003 15:47:25 GMT"/>
-                           </widget>
-                           <packing>
-                             <property name="left_attach">1</property>
-                             <property name="right_attach">2</property>
-                             <property name="top_attach">9</property>
-                             <property name="bottom_attach">10</property>
-                             <property name="y_options"></property>
-                           </packing>
-                         </child>
-
-                         <child>
-                           <widget class="GtkLabel" id="labelV4LSoundDirection">
-                             <property name="visible">True</property>
-                             <property name="label" translatable="yes">Sound:</property>
-                             <property name="use_underline">False</property>
-                             <property name="use_markup">False</property>
-                             <property name="justify">GTK_JUSTIFY_LEFT</property>
-                             <property name="wrap">False</property>
-                             <property name="selectable">False</property>
-                             <property name="xalign">0</property>
-                             <property name="yalign">0.5</property>
-                             <property name="xpad">0</property>
-                             <property name="ypad">0</property>
-                           </widget>
-                           <packing>
-                             <property name="left_attach">0</property>
-                             <property name="right_attach">1</property>
-                             <property name="top_attach">8</property>
-                             <property name="bottom_attach">9</property>
-                             <property name="x_options">fill</property>
+                             <property name="x_options">expand|shrink|fill</property>
                              <property name="y_options"></property>
                            </packing>
                          </child>
                                  <property name="editable">True</property>
                                  <property name="visibility">True</property>
                                  <property name="max_length">0</property>
-                                 <property name="text" translatable="yes">Mono</property>
+                                 <property name="text" translatable="yes">mono</property>
                                  <property name="has_frame">True</property>
                                  <property name="invisible_char" translatable="yes">*</property>
                                  <property name="activates_default">True</property>
-                                 <signal name="changed" handler="V4LBuildMRL" last_modification_time="Sun, 09 Nov 2003 15:47:10 GMT"/>
                                </widget>
                              </child>
 
                                  <property name="selection_mode">GTK_SELECTION_BROWSE</property>
 
                                  <child>
-                                   <widget class="GtkListItem" id="itemV4LSoundDirectionMono">
+                                   <widget class="GtkListItem" id="listitem1489">
                                      <property name="visible">True</property>
                                      <property name="can_focus">True</property>
-                                     <property name="label" translatable="yes">Mono</property>
+                                     <property name="label" translatable="yes">mono</property>
                                    </widget>
                                  </child>
 
                                  <child>
-                                   <widget class="GtkListItem" id="itemV4LSoundDirectionStereo">
+                                   <widget class="GtkListItem" id="listitem1490">
                                      <property name="visible">True</property>
                                      <property name="can_focus">True</property>
-                                     <property name="label" translatable="yes">Stereo</property>
+                                     <property name="label" translatable="yes">stereo</property>
                                    </widget>
                                  </child>
                                </widget>
                              <property name="right_attach">2</property>
                              <property name="top_attach">8</property>
                              <property name="bottom_attach">9</property>
+                             <property name="x_options">expand|shrink|fill</property>
                              <property name="y_options"></property>
                            </packing>
                          </child>
 
                          <child>
-                           <widget class="GtkLabel" id="labelV4LMJPEG">
+                           <widget class="GtkSpinButton" id="entryV4LTuner">
                              <property name="visible">True</property>
-                             <property name="label" translatable="yes">MJPEG:</property>
-                             <property name="use_underline">False</property>
-                             <property name="use_markup">False</property>
-                             <property name="justify">GTK_JUSTIFY_LEFT</property>
+                             <property name="can_focus">True</property>
+                             <property name="climb_rate">1</property>
+                             <property name="digits">0</property>
+                             <property name="numeric">True</property>
+                             <property name="update_policy">GTK_UPDATE_ALWAYS</property>
+                             <property name="snap_to_ticks">False</property>
                              <property name="wrap">False</property>
-                             <property name="selectable">False</property>
-                             <property name="xalign">0</property>
-                             <property name="yalign">0.5</property>
-                             <property name="xpad">0</property>
-                             <property name="ypad">0</property>
+                             <property name="adjustment">0 -1 100 1 10 10</property>
                            </widget>
                            <packing>
-                             <property name="left_attach">0</property>
-                             <property name="right_attach">1</property>
-                             <property name="top_attach">10</property>
-                             <property name="bottom_attach">11</property>
-                             <property name="x_options">fill</property>
+                             <property name="left_attach">1</property>
+                             <property name="right_attach">2</property>
+                             <property name="top_attach">9</property>
+                             <property name="bottom_attach">10</property>
+                             <property name="x_options">expand|shrink|fill</property>
                              <property name="y_options"></property>
                            </packing>
                          </child>
                              <property name="right_attach">2</property>
                              <property name="top_attach">10</property>
                              <property name="bottom_attach">11</property>
-                             <property name="x_options">fill</property>
-                             <property name="y_options"></property>
-                           </packing>
-                         </child>
-
-                         <child>
-                           <widget class="GtkLabel" id="labelV4LDecimation">
-                             <property name="visible">True</property>
-                             <property name="label" translatable="yes">Decimation:</property>
-                             <property name="use_underline">False</property>
-                             <property name="use_markup">False</property>
-                             <property name="justify">GTK_JUSTIFY_LEFT</property>
-                             <property name="wrap">False</property>
-                             <property name="selectable">False</property>
-                             <property name="xalign">0</property>
-                             <property name="yalign">0.5</property>
-                             <property name="xpad">0</property>
-                             <property name="ypad">0</property>
-                           </widget>
-                           <packing>
-                             <property name="left_attach">0</property>
-                             <property name="right_attach">1</property>
-                             <property name="top_attach">11</property>
-                             <property name="bottom_attach">12</property>
-                             <property name="x_options">fill</property>
+                             <property name="x_options">expand|shrink|fill</property>
                              <property name="y_options"></property>
                            </packing>
                          </child>
                              <property name="snap_to_ticks">False</property>
                              <property name="wrap">False</property>
                              <property name="adjustment">1 0 100 1 10 10</property>
-                             <signal name="changed" handler="V4LBuildMRL" last_modification_time="Sun, 09 Nov 2003 15:48:07 GMT"/>
                            </widget>
                            <packing>
                              <property name="left_attach">1</property>
                              <property name="right_attach">2</property>
                              <property name="top_attach">11</property>
                              <property name="bottom_attach">12</property>
+                             <property name="x_options">expand|shrink|fill</property>
                              <property name="y_options"></property>
                            </packing>
                          </child>
index afc8c54a1001c9b4495e1790a4eaf06d26f2573f..5adea89261b0f55d1c8b6c14de3c56838943fabe 100644 (file)
@@ -2,7 +2,7 @@
  * pda_callbacks.c : Callbacks for the pda Linux Gtk+ plugin.
  *****************************************************************************
  * Copyright (C) 2000, 2001 VideoLAN
- * $Id: pda_callbacks.c,v 1.11 2003/11/09 18:52:29 jpsaman Exp $
+ * $Id: pda_callbacks.c,v 1.12 2003/11/09 19:49:48 jpsaman Exp $
  *
  * Authors: Jean-Paul Saman <jpsaman@wxs.nl>
  *
@@ -333,7 +333,7 @@ onRewind                               (GtkButton       *button,
 {
     intf_thread_t *  p_intf = GtkGetIntf( button );
 
-    if( p_intf->p_sys->p_input != NULL )
+    if (p_intf->p_sys->p_input != NULL)
     {
         input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_SLOWER );
     }
@@ -346,7 +346,7 @@ onPause                                (GtkButton       *button,
 {
     intf_thread_t *  p_intf = GtkGetIntf( button );
 
-    if( p_intf->p_sys->p_input != NULL )
+    if (p_intf->p_sys->p_input != NULL)
     {
         input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_PAUSE );
     }
@@ -360,10 +360,10 @@ onPlay                                 (GtkButton       *button,
     intf_thread_t *  p_intf = GtkGetIntf( GTK_WIDGET( button ) );
     playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, FIND_ANYWHERE );
 
-    if( p_playlist  )
+    if (p_playlist)
     {
         vlc_mutex_lock( &p_playlist->object_lock );
-        if( p_playlist->i_size )
+        if (p_playlist->i_size)
         {
             vlc_mutex_unlock( &p_playlist->object_lock );
             playlist_Play( p_playlist );
@@ -384,7 +384,7 @@ onStop                                 (GtkButton       *button,
     intf_thread_t *  p_intf = GtkGetIntf( GTK_WIDGET( button ) );
     playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST,
                                                        FIND_ANYWHERE );
-    ifp_playlist)
+    if (p_playlist)
     {
         playlist_Stop( p_playlist );
         vlc_object_release( p_playlist );
@@ -396,9 +396,9 @@ void
 onForward                              (GtkButton       *button,
                                         gpointer         user_data)
 {
-    intf_thread_t *  p_intf = GtkGetIntf( button );
+    intf_thread_t *p_intf = GtkGetIntf( button );
 
-    if( p_intf->p_sys->p_input != NULL )
+    if (p_intf->p_sys->p_input != NULL)
     {
         input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_FASTER );
     }
@@ -648,7 +648,107 @@ void
 onAddCameraToPlaylist                  (GtkButton       *button,
                                         gpointer         user_data)
 {
+    GtkTreeView  *p_tvplaylist = NULL;
+    GtkTreeModel *p_play_model;
+    GtkTreeIter   p_play_iter;
 
+    GtkSpinButton *entryV4LChannel = NULL;
+    GtkSpinButton *entryV4LFrequency = NULL;
+    GtkSpinButton *entryV4LSampleRate = NULL;
+    GtkSpinButton *entryV4LQuality = NULL;
+    GtkSpinButton *entryV4LTuner = NULL;
+    gint    i_v4l_channel;
+    gint    i_v4l_frequency;
+    gint    i_v4l_samplerate;
+    gint    i_v4l_quality;
+    gint    i_v4l_tuner;
+
+    GtkEntry      *entryV4LVideoDevice = NULL;
+    GtkEntry      *entryV4LAudioDevice = NULL;
+    GtkEntry      *entryV4LNorm = NULL;
+    GtkEntry      *entryV4LSize = NULL;
+    GtkEntry      *entryV4LSoundDirection = NULL;
+    const gchar   *p_v4l_video_device;
+    const gchar   *p_v4l_audio_device;
+    const gchar   *p_v4l_norm;
+    const gchar   *p_v4l_size;
+    const gchar   *p_v4l_sound_direction;
+
+    /* MJPEG only */
+    GtkCheckButton *checkV4LMJPEG = NULL;
+    GtkSpinButton  *entryV4LDecimation = NULL;
+    gboolean        b_v4l_mjpeg;
+    gint            i_v4l_decimation;
+    /* end MJPEG only */
+
+    char v4l_mrl[VLC_MAX_MRL];
+    int pos;
+
+    pos = snprintf( &v4l_mrl[0], VLC_MAX_MRL, "v4l://");
+
+    entryV4LChannel    = (GtkSpinButton*) lookup_widget( GTK_WIDGET(button), "entryV4LChannel" );
+    entryV4LFrequency  = (GtkSpinButton*) lookup_widget( GTK_WIDGET(button), "entryV4LFrequency" );
+    entryV4LSampleRate = (GtkSpinButton*) lookup_widget( GTK_WIDGET(button), "entryV4LSampleRate" );
+    entryV4LQuality    = (GtkSpinButton*) lookup_widget( GTK_WIDGET(button), "entryV4LQuality" );
+    entryV4LTuner      = (GtkSpinButton*) lookup_widget( GTK_WIDGET(button), "entryV4LTuner" );
+
+    entryV4LVideoDevice  = (GtkEntry*) lookup_widget( GTK_WIDGET(button), "entryV4LVideoDevice" );
+    entryV4LAudioDevice  = (GtkEntry*) lookup_widget( GTK_WIDGET(button), "entryV4LAudioDevice" );
+    entryV4LNorm  = (GtkEntry*) lookup_widget( GTK_WIDGET(button), "entryV4LNorm" );
+    entryV4LSize  = (GtkEntry*) lookup_widget( GTK_WIDGET(button), "entryV4LSize" );
+    entryV4LSoundDirection  = (GtkEntry*) lookup_widget( GTK_WIDGET(button), "entryV4LSoundDirection" );
+
+    i_v4l_channel = gtk_spin_button_get_value_as_int(entryV4LChannel);
+    i_v4l_frequency = gtk_spin_button_get_value_as_int(entryV4LFrequency);
+    i_v4l_samplerate = gtk_spin_button_get_value_as_int(entryV4LSampleRate);
+    i_v4l_quality = gtk_spin_button_get_value_as_int(entryV4LQuality);
+    i_v4l_tuner = gtk_spin_button_get_value_as_int(entryV4LTuner);
+
+    p_v4l_video_device = gtk_entry_get_text(GTK_ENTRY(entryV4LVideoDevice));
+    p_v4l_audio_device = gtk_entry_get_text(GTK_ENTRY(entryV4LAudioDevice));
+    p_v4l_norm = gtk_entry_get_text(GTK_ENTRY(entryV4LNorm));
+    p_v4l_size  = gtk_entry_get_text(GTK_ENTRY(entryV4LSize));
+    p_v4l_sound_direction = gtk_entry_get_text(GTK_ENTRY(entryV4LSoundDirection));
+
+    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":%s", (char*)p_v4l_video_device );
+    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":adev=%s", (char*)p_v4l_audio_device );
+    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":norm=%s", (char*)p_v4l_norm );
+    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":size=%s", (char*)p_v4l_size );
+    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":%s", (char*)p_v4l_sound_direction );
+
+    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":channel=%d", (int)i_v4l_channel );
+    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":frequency=%d", (int)i_v4l_frequency );
+    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":samplerate=%d", (int)i_v4l_samplerate );
+    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":quality=%d", (int)i_v4l_quality );
+    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":tuner=%d", (int)i_v4l_tuner );
+
+    /* MJPEG only */
+    checkV4LMJPEG      = (GtkCheckButton*) lookup_widget( GTK_WIDGET(button), "checkV4LMJPEG" );
+    b_v4l_mjpeg = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkV4LMJPEG));
+    if (b_v4l_mjpeg)
+    {
+        entryV4LDecimation = (GtkSpinButton*) lookup_widget( GTK_WIDGET(button), "entryV4LDecimation" );
+        i_v4l_decimation = gtk_spin_button_get_value_as_int(entryV4LDecimation);
+        pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":mjpeg:%d", (int)i_v4l_decimation );
+    }
+    /* end MJPEG only */
+
+    if (pos >= VLC_MAX_MRL)
+        v4l_mrl[VLC_MAX_MRL-1]='\0';
+
+    g_print( "%s\n", v4l_mrl );
+    p_tvplaylist = (GtkTreeView *) lookup_widget( GTK_WIDGET(button), "tvPlaylist");
+    if (NULL != p_tvplaylist)
+    {
+        p_play_model = gtk_tree_view_get_model(p_tvplaylist);
+
+        /* Add a new row to the playlist treeview model */
+        gtk_list_store_append (GTK_LIST_STORE(p_play_model), &p_play_iter);
+        gtk_list_store_set (GTK_LIST_STORE(p_play_model), &p_play_iter,
+                                0, &v4l_mrl,
+                                1, "no info",
+                                -1 );
+    }
 }
 
 
@@ -747,100 +847,6 @@ onNetworkMRLAdd                        (GtkContainer    *container,
 
 }
 
-
-
-void
-V4LBuildMRL                            (GtkEditable     *editable,
-                                        gpointer         user_data)
-{
-    GtkSpinButton *entryV4LChannel = NULL;
-    GtkSpinButton *entryV4LFrequency = NULL;
-    GtkSpinButton *entryV4LSampleRate = NULL;
-    GtkSpinButton *entryV4LQuality = NULL;
-    GtkSpinButton *entryV4LTuner = NULL;
-    gint    i_v4l_channel;
-    gint    i_v4l_frequency;
-    gint    i_v4l_samplerate;
-    gint    i_v4l_quality;
-    gint    i_v4l_tuner;
-
-    GtkEntry      *entryV4LVideoDevice = NULL;
-    GtkEntry      *entryV4LAudioDevice = NULL;
-    GtkEntry      *entryV4LNorm = NULL;
-    GtkEntry      *entryV4LSize = NULL;
-    GtkEntry      *entryV4LSoundDirection = NULL;
-    const gchar   *p_v4l_video_device;
-    const gchar   *p_v4l_audio_device;
-    const gchar   *p_v4l_norm;
-    const gchar   *p_v4l_size;
-    const gchar   *p_v4l_sound_direction;
-
-    /* MJPEG only */
-    GtkCheckButton *checkV4LMJPEG = NULL;
-    GtkSpinButton  *entryV4LDecimation = NULL;
-    gboolean        b_v4l_mjpeg;
-    gint            i_v4l_decimation;
-    /* end MJPEG only */
-
-    char v4l_mrl[VLC_MAX_MRL];
-    int pos;
-
-    pos = snprintf( &v4l_mrl[0], VLC_MAX_MRL, "v4l://");
-
-    entryV4LChannel    = (GtkSpinButton*) lookup_widget( GTK_WIDGET(editable), "entryV4LChannel" );
-    entryV4LFrequency  = (GtkSpinButton*) lookup_widget( GTK_WIDGET(editable), "entryV4LFrequency" );
-    entryV4LSampleRate = (GtkSpinButton*) lookup_widget( GTK_WIDGET(editable), "entryV4LSampleRate" );
-    entryV4LQuality    = (GtkSpinButton*) lookup_widget( GTK_WIDGET(editable), "entryV4LQuality" );
-    entryV4LTuner      = (GtkSpinButton*) lookup_widget( GTK_WIDGET(editable), "entryV4LTuner" );
-
-    entryV4LVideoDevice  = (GtkEntry*) lookup_widget( GTK_WIDGET(editable), "entryV4LVideoDevice" );
-    entryV4LAudioDevice  = (GtkEntry*) lookup_widget( GTK_WIDGET(editable), "entryV4LAudioDevice" );
-    entryV4LNorm  = (GtkEntry*) lookup_widget( GTK_WIDGET(editable), "entryV4LNorm" );
-    entryV4LSize  = (GtkEntry*) lookup_widget( GTK_WIDGET(editable), "entryV4LSize" );
-    entryV4LSoundDirection  = (GtkEntry*) lookup_widget( GTK_WIDGET(editable), "entryV4LSoundDirection" );
-    
-    i_v4l_channel = gtk_spin_button_get_value_as_int(entryV4LChannel);
-    i_v4l_frequency = gtk_spin_button_get_value_as_int(entryV4LFrequency);
-    i_v4l_samplerate = gtk_spin_button_get_value_as_int(entryV4LSampleRate);
-    i_v4l_quality = gtk_spin_button_get_value_as_int(entryV4LQuality);
-    i_v4l_tuner = gtk_spin_button_get_value_as_int(entryV4LTuner);
-
-    p_v4l_video_device = gtk_entry_get_text(GTK_ENTRY(entryV4LVideoDevice));
-    p_v4l_audio_device = gtk_entry_get_text(GTK_ENTRY(entryV4LAudioDevice));
-    p_v4l_norm = gtk_entry_get_text(GTK_ENTRY(entryV4LNorm));
-    p_v4l_size  = gtk_entry_get_text(GTK_ENTRY(entryV4LSize));
-    p_v4l_sound_direction = gtk_entry_get_text(GTK_ENTRY(entryV4LSoundDirection));
-
-    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":%s", (char*)p_v4l_video_device );
-    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":adev=%s", (char*)p_v4l_audio_device );
-    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":norm=%s", (char*)p_v4l_norm );
-    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":size=%s", (char*)p_v4l_size );
-    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":%s", (char*)p_v4l_sound_direction );
-
-    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":channel=%d", (int)i_v4l_channel );
-    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":frequency=%d", (int)i_v4l_frequency );
-    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":samplerate=%d", (int)i_v4l_samplerate );
-    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":quality=%d", (int)i_v4l_quality );
-    pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":tuner=%d", (int)i_v4l_tuner );
-
-    /* MJPEG only */
-    checkV4LMJPEG      = (GtkCheckButton*) lookup_widget( GTK_WIDGET(editable), "checkV4LMJPEG" );
-    b_v4l_mjpeg = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkV4LMJPEG));
-    if (b_v4l_mjpeg)
-    {
-        entryV4LDecimation = (GtkSpinButton*) lookup_widget( GTK_WIDGET(editable), "entryV4LDecimation" );
-        i_v4l_decimation = gtk_spin_button_get_value_as_int(entryV4LDecimation);
-        pos += snprintf( &v4l_mrl[pos], VLC_MAX_MRL - pos, ":mjpeg:%d", (int)i_v4l_decimation );
-    }
-    /* end MJPEG only */
-
-    if (pos >= VLC_MAX_MRL)
-        v4l_mrl[VLC_MAX_MRL-1]='\0';
-
-    g_print( "%s\n", v4l_mrl );
-}
-
-
 void
 onAddTranscodeToPlaylist               (GtkButton       *button,
                                         gpointer         user_data)
@@ -848,3 +854,4 @@ onAddTranscodeToPlaylist               (GtkButton       *button,
 
 }
 
+
index ad272fef4c109087eb9fbdd84430fb3bfb77b499..2f51e18532734f58075534adb2d3401c6c743e5b 100644 (file)
@@ -2,7 +2,7 @@
  * callbacks.h : pda plugin for vlc
  *****************************************************************************
  * Copyright (C) 2003 VideoLAN
- * $Id: pda_callbacks.h,v 1.6 2003/11/09 15:55:23 jpsaman Exp $
+ * $Id: pda_callbacks.h,v 1.7 2003/11/09 19:49:48 jpsaman Exp $
  *
  * Authors: Jean-Paul Saman <jpsaman@wxs.nl>
  *
@@ -151,10 +151,8 @@ void
 NetworkBuildMRL                        (GtkEditable     *editable,
                                         gpointer         user_data);
 
-void
-V4LBuildMRL                            (GtkEditable     *editable,
-                                        gpointer         user_data);
 
 void
 onAddTranscodeToPlaylist               (GtkButton       *button,
                                         gpointer         user_data);
+
index ad2c395246091b955e643d5046e0c55d83481444..96e94ed5fac102f043d3602f6ae00bab9c300837 100644 (file)
@@ -82,42 +82,42 @@ create_pda (void)
   GtkWidget *tableV4L;
   GtkWidget *labelV4lVideDevice;
   GtkWidget *labelV4LAudioDevice;
+  GtkWidget *labelV4LChannel;
+  GtkWidget *labelV4LNorm;
+  GtkWidget *labelV4LSize;
+  GtkWidget *labelV4LFrequency;
+  GtkWidget *labelV4LSampleRate;
+  GtkWidget *labelV4LQuality;
+  GtkWidget *labelV4LTuner;
+  GtkWidget *labelV4LSoundDirection;
+  GtkWidget *labelV4LMJPEG;
+  GtkWidget *labelV4LDecimation;
   GtkWidget *comboV4lVideoDevice;
   GList *comboV4lVideoDevice_items = NULL;
   GtkWidget *entryV4LVideoDevice;
   GtkWidget *comboV4lAudioDevice;
   GList *comboV4lAudioDevice_items = NULL;
   GtkWidget *entryV4LAudioDevice;
-  GtkWidget *labelV4LChannel;
   GtkObject *entryV4LChannel_adj;
   GtkWidget *entryV4LChannel;
-  GtkWidget *labelV4LNorm;
   GtkWidget *comboV4LNorm;
   GList *comboV4LNorm_items = NULL;
   GtkWidget *entryV4LNorm;
-  GtkWidget *labelV4LSize;
   GtkWidget *comboV4LSize;
   GList *comboV4LSize_items = NULL;
   GtkWidget *entryV4LSize;
-  GtkWidget *labelV4LFrequency;
   GtkObject *entryV4LFrequency_adj;
   GtkWidget *entryV4LFrequency;
-  GtkWidget *labelV4LSampleRate;
   GtkObject *entryV4LSampleRate_adj;
   GtkWidget *entryV4LSampleRate;
-  GtkWidget *labelV4LQuality;
   GtkObject *entryV4LQuality_adj;
   GtkWidget *entryV4LQuality;
-  GtkWidget *labelV4LTuner;
-  GtkObject *entryV4LTuner_adj;
-  GtkWidget *entryV4LTuner;
-  GtkWidget *labelV4LSoundDirection;
   GtkWidget *comboV4LSoundDirection;
   GList *comboV4LSoundDirection_items = NULL;
   GtkWidget *entryV4LSoundDirection;
-  GtkWidget *labelV4LMJPEG;
+  GtkObject *entryV4LTuner_adj;
+  GtkWidget *entryV4LTuner;
   GtkWidget *checkV4LMJPEG;
-  GtkWidget *labelV4LDecimation;
   GtkObject *entryV4LDecimation_adj;
   GtkWidget *entryV4LDecimation;
   GtkWidget *hbox16;
@@ -493,12 +493,13 @@ create_pda (void)
   gtk_widget_set_name (scrolledV4Lwindow, "scrolledV4Lwindow");
   gtk_widget_show (scrolledV4Lwindow);
   gtk_box_pack_start (GTK_BOX (vbox7), scrolledV4Lwindow, TRUE, TRUE, 0);
-  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledV4Lwindow), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS);
+  gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledV4Lwindow), GTK_SHADOW_ETCHED_OUT);
 
   viewportV4L = gtk_viewport_new (NULL, NULL);
   gtk_widget_set_name (viewportV4L, "viewportV4L");
   gtk_widget_show (viewportV4L);
   gtk_container_add (GTK_CONTAINER (scrolledV4Lwindow), viewportV4L);
+  gtk_viewport_set_shadow_type (GTK_VIEWPORT (viewportV4L), GTK_SHADOW_OUT);
 
   tableV4L = gtk_table_new (12, 2, FALSE);
   gtk_widget_set_name (tableV4L, "tableV4L");
@@ -523,13 +524,103 @@ create_pda (void)
   gtk_label_set_justify (GTK_LABEL (labelV4LAudioDevice), GTK_JUSTIFY_LEFT);
   gtk_misc_set_alignment (GTK_MISC (labelV4LAudioDevice), 0, 0.5);
 
+  labelV4LChannel = gtk_label_new (_("Channel:"));
+  gtk_widget_set_name (labelV4LChannel, "labelV4LChannel");
+  gtk_widget_show (labelV4LChannel);
+  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LChannel, 0, 1, 2, 3,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_label_set_justify (GTK_LABEL (labelV4LChannel), GTK_JUSTIFY_LEFT);
+  gtk_misc_set_alignment (GTK_MISC (labelV4LChannel), 0, 0.5);
+
+  labelV4LNorm = gtk_label_new (_("Norm:"));
+  gtk_widget_set_name (labelV4LNorm, "labelV4LNorm");
+  gtk_widget_show (labelV4LNorm);
+  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LNorm, 0, 1, 3, 4,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_label_set_justify (GTK_LABEL (labelV4LNorm), GTK_JUSTIFY_LEFT);
+  gtk_misc_set_alignment (GTK_MISC (labelV4LNorm), 0, 0.5);
+
+  labelV4LSize = gtk_label_new (_("Size:"));
+  gtk_widget_set_name (labelV4LSize, "labelV4LSize");
+  gtk_widget_show (labelV4LSize);
+  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LSize, 0, 1, 4, 5,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_label_set_justify (GTK_LABEL (labelV4LSize), GTK_JUSTIFY_LEFT);
+  gtk_misc_set_alignment (GTK_MISC (labelV4LSize), 0, 0.5);
+
+  labelV4LFrequency = gtk_label_new (_("Frequency:"));
+  gtk_widget_set_name (labelV4LFrequency, "labelV4LFrequency");
+  gtk_widget_show (labelV4LFrequency);
+  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LFrequency, 0, 1, 5, 6,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_label_set_justify (GTK_LABEL (labelV4LFrequency), GTK_JUSTIFY_LEFT);
+  gtk_misc_set_alignment (GTK_MISC (labelV4LFrequency), 0, 0.5);
+
+  labelV4LSampleRate = gtk_label_new (_("Samplerate:"));
+  gtk_widget_set_name (labelV4LSampleRate, "labelV4LSampleRate");
+  gtk_widget_show (labelV4LSampleRate);
+  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LSampleRate, 0, 1, 6, 7,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_label_set_justify (GTK_LABEL (labelV4LSampleRate), GTK_JUSTIFY_LEFT);
+  gtk_misc_set_alignment (GTK_MISC (labelV4LSampleRate), 0, 0.5);
+
+  labelV4LQuality = gtk_label_new (_("Quality:"));
+  gtk_widget_set_name (labelV4LQuality, "labelV4LQuality");
+  gtk_widget_show (labelV4LQuality);
+  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LQuality, 0, 1, 7, 8,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_label_set_justify (GTK_LABEL (labelV4LQuality), GTK_JUSTIFY_LEFT);
+  gtk_misc_set_alignment (GTK_MISC (labelV4LQuality), 0, 0.5);
+
+  labelV4LTuner = gtk_label_new (_("Tuner:"));
+  gtk_widget_set_name (labelV4LTuner, "labelV4LTuner");
+  gtk_widget_show (labelV4LTuner);
+  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LTuner, 0, 1, 9, 10,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_label_set_justify (GTK_LABEL (labelV4LTuner), GTK_JUSTIFY_LEFT);
+  gtk_misc_set_alignment (GTK_MISC (labelV4LTuner), 0, 0.5);
+
+  labelV4LSoundDirection = gtk_label_new (_("Sound:"));
+  gtk_widget_set_name (labelV4LSoundDirection, "labelV4LSoundDirection");
+  gtk_widget_show (labelV4LSoundDirection);
+  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LSoundDirection, 0, 1, 8, 9,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_label_set_justify (GTK_LABEL (labelV4LSoundDirection), GTK_JUSTIFY_LEFT);
+  gtk_misc_set_alignment (GTK_MISC (labelV4LSoundDirection), 0, 0.5);
+
+  labelV4LMJPEG = gtk_label_new (_("MJPEG:"));
+  gtk_widget_set_name (labelV4LMJPEG, "labelV4LMJPEG");
+  gtk_widget_show (labelV4LMJPEG);
+  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LMJPEG, 0, 1, 10, 11,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_label_set_justify (GTK_LABEL (labelV4LMJPEG), GTK_JUSTIFY_LEFT);
+  gtk_misc_set_alignment (GTK_MISC (labelV4LMJPEG), 0, 0.5);
+
+  labelV4LDecimation = gtk_label_new (_("Decimation:"));
+  gtk_widget_set_name (labelV4LDecimation, "labelV4LDecimation");
+  gtk_widget_show (labelV4LDecimation);
+  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LDecimation, 0, 1, 11, 12,
+                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (0), 0, 0);
+  gtk_label_set_justify (GTK_LABEL (labelV4LDecimation), GTK_JUSTIFY_LEFT);
+  gtk_misc_set_alignment (GTK_MISC (labelV4LDecimation), 0, 0.5);
+
   comboV4lVideoDevice = gtk_combo_new ();
   g_object_set_data (G_OBJECT (GTK_COMBO (comboV4lVideoDevice)->popwin),
                      "GladeParentKey", comboV4lVideoDevice);
   gtk_widget_set_name (comboV4lVideoDevice, "comboV4lVideoDevice");
   gtk_widget_show (comboV4lVideoDevice);
   gtk_table_attach (GTK_TABLE (tableV4L), comboV4lVideoDevice, 1, 2, 0, 1,
-                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL),
                     (GtkAttachOptions) (0), 0, 0);
   gtk_combo_set_value_in_list (GTK_COMBO (comboV4lVideoDevice), TRUE, TRUE);
   comboV4lVideoDevice_items = g_list_append (comboV4lVideoDevice_items, (gpointer) _("/dev/video"));
@@ -550,7 +641,7 @@ create_pda (void)
   gtk_widget_set_name (comboV4lAudioDevice, "comboV4lAudioDevice");
   gtk_widget_show (comboV4lAudioDevice);
   gtk_table_attach (GTK_TABLE (tableV4L), comboV4lAudioDevice, 1, 2, 1, 2,
-                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL),
                     (GtkAttachOptions) (0), 0, 0);
   comboV4lAudioDevice_items = g_list_append (comboV4lAudioDevice_items, (gpointer) _("/dev/dsp"));
   comboV4lAudioDevice_items = g_list_append (comboV4lAudioDevice_items, (gpointer) _("/dev/audio"));
@@ -565,40 +656,22 @@ create_pda (void)
   gtk_entry_set_text (GTK_ENTRY (entryV4LAudioDevice), _("/dev/dsp"));
   gtk_entry_set_activates_default (GTK_ENTRY (entryV4LAudioDevice), TRUE);
 
-  labelV4LChannel = gtk_label_new (_("Channel:"));
-  gtk_widget_set_name (labelV4LChannel, "labelV4LChannel");
-  gtk_widget_show (labelV4LChannel);
-  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LChannel, 0, 1, 2, 3,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_label_set_justify (GTK_LABEL (labelV4LChannel), GTK_JUSTIFY_LEFT);
-  gtk_misc_set_alignment (GTK_MISC (labelV4LChannel), 0, 0.5);
-
   entryV4LChannel_adj = gtk_adjustment_new (0, 0, 100, 1, 10, 10);
   entryV4LChannel = gtk_spin_button_new (GTK_ADJUSTMENT (entryV4LChannel_adj), 1, 0);
   gtk_widget_set_name (entryV4LChannel, "entryV4LChannel");
   gtk_widget_show (entryV4LChannel);
   gtk_table_attach (GTK_TABLE (tableV4L), entryV4LChannel, 1, 2, 2, 3,
-                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL),
                     (GtkAttachOptions) (0), 0, 0);
   gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (entryV4LChannel), TRUE);
 
-  labelV4LNorm = gtk_label_new (_("Norm:"));
-  gtk_widget_set_name (labelV4LNorm, "labelV4LNorm");
-  gtk_widget_show (labelV4LNorm);
-  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LNorm, 0, 1, 3, 4,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_label_set_justify (GTK_LABEL (labelV4LNorm), GTK_JUSTIFY_LEFT);
-  gtk_misc_set_alignment (GTK_MISC (labelV4LNorm), 0, 0.5);
-
   comboV4LNorm = gtk_combo_new ();
   g_object_set_data (G_OBJECT (GTK_COMBO (comboV4LNorm)->popwin),
                      "GladeParentKey", comboV4LNorm);
   gtk_widget_set_name (comboV4LNorm, "comboV4LNorm");
   gtk_widget_show (comboV4LNorm);
   gtk_table_attach (GTK_TABLE (tableV4L), comboV4LNorm, 1, 2, 3, 4,
-                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL),
                     (GtkAttachOptions) (0), 0, 0);
   comboV4LNorm_items = g_list_append (comboV4LNorm_items, (gpointer) _("pal"));
   comboV4LNorm_items = g_list_append (comboV4LNorm_items, (gpointer) _("ntsc"));
@@ -613,22 +686,13 @@ create_pda (void)
   gtk_entry_set_text (GTK_ENTRY (entryV4LNorm), _("pal"));
   gtk_entry_set_activates_default (GTK_ENTRY (entryV4LNorm), TRUE);
 
-  labelV4LSize = gtk_label_new (_("Size:"));
-  gtk_widget_set_name (labelV4LSize, "labelV4LSize");
-  gtk_widget_show (labelV4LSize);
-  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LSize, 0, 1, 4, 5,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_label_set_justify (GTK_LABEL (labelV4LSize), GTK_JUSTIFY_LEFT);
-  gtk_misc_set_alignment (GTK_MISC (labelV4LSize), 0, 0.5);
-
   comboV4LSize = gtk_combo_new ();
   g_object_set_data (G_OBJECT (GTK_COMBO (comboV4LSize)->popwin),
                      "GladeParentKey", comboV4LSize);
   gtk_widget_set_name (comboV4LSize, "comboV4LSize");
   gtk_widget_show (comboV4LSize);
   gtk_table_attach (GTK_TABLE (tableV4L), comboV4LSize, 1, 2, 4, 5,
-                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL),
                     (GtkAttachOptions) (0), 0, 0);
   comboV4LSize_items = g_list_append (comboV4LSize_items, (gpointer) _("240x192"));
   comboV4LSize_items = g_list_append (comboV4LSize_items, (gpointer) _("320x240"));
@@ -646,139 +710,76 @@ create_pda (void)
   gtk_entry_set_text (GTK_ENTRY (entryV4LSize), _("240x192"));
   gtk_entry_set_activates_default (GTK_ENTRY (entryV4LSize), TRUE);
 
-  labelV4LFrequency = gtk_label_new (_("Frequency:"));
-  gtk_widget_set_name (labelV4LFrequency, "labelV4LFrequency");
-  gtk_widget_show (labelV4LFrequency);
-  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LFrequency, 0, 1, 5, 6,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_label_set_justify (GTK_LABEL (labelV4LFrequency), GTK_JUSTIFY_LEFT);
-  gtk_misc_set_alignment (GTK_MISC (labelV4LFrequency), 0, 0.5);
-
   entryV4LFrequency_adj = gtk_adjustment_new (8692, 0, 65535, 1, 10, 10);
   entryV4LFrequency = gtk_spin_button_new (GTK_ADJUSTMENT (entryV4LFrequency_adj), 1, 0);
   gtk_widget_set_name (entryV4LFrequency, "entryV4LFrequency");
   gtk_widget_show (entryV4LFrequency);
   gtk_table_attach (GTK_TABLE (tableV4L), entryV4LFrequency, 1, 2, 5, 6,
-                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL),
                     (GtkAttachOptions) (0), 0, 0);
   gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (entryV4LFrequency), TRUE);
 
-  labelV4LSampleRate = gtk_label_new (_("Samplerate:"));
-  gtk_widget_set_name (labelV4LSampleRate, "labelV4LSampleRate");
-  gtk_widget_show (labelV4LSampleRate);
-  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LSampleRate, 0, 1, 6, 7,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_label_set_justify (GTK_LABEL (labelV4LSampleRate), GTK_JUSTIFY_LEFT);
-  gtk_misc_set_alignment (GTK_MISC (labelV4LSampleRate), 0, 0.5);
-
   entryV4LSampleRate_adj = gtk_adjustment_new (44100, 0, 65535, 1, 10, 10);
   entryV4LSampleRate = gtk_spin_button_new (GTK_ADJUSTMENT (entryV4LSampleRate_adj), 1, 0);
   gtk_widget_set_name (entryV4LSampleRate, "entryV4LSampleRate");
   gtk_widget_show (entryV4LSampleRate);
   gtk_table_attach (GTK_TABLE (tableV4L), entryV4LSampleRate, 1, 2, 6, 7,
-                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL),
                     (GtkAttachOptions) (0), 0, 0);
   gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (entryV4LSampleRate), TRUE);
 
-  labelV4LQuality = gtk_label_new (_("Quality:"));
-  gtk_widget_set_name (labelV4LQuality, "labelV4LQuality");
-  gtk_widget_show (labelV4LQuality);
-  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LQuality, 0, 1, 7, 8,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_label_set_justify (GTK_LABEL (labelV4LQuality), GTK_JUSTIFY_LEFT);
-  gtk_misc_set_alignment (GTK_MISC (labelV4LQuality), 0, 0.5);
-
   entryV4LQuality_adj = gtk_adjustment_new (100, 0, 65535, 1, 10, 10);
   entryV4LQuality = gtk_spin_button_new (GTK_ADJUSTMENT (entryV4LQuality_adj), 1, 0);
   gtk_widget_set_name (entryV4LQuality, "entryV4LQuality");
   gtk_widget_show (entryV4LQuality);
   gtk_table_attach (GTK_TABLE (tableV4L), entryV4LQuality, 1, 2, 7, 8,
-                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL),
                     (GtkAttachOptions) (0), 0, 0);
   gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (entryV4LQuality), TRUE);
 
-  labelV4LTuner = gtk_label_new (_("Tuner:"));
-  gtk_widget_set_name (labelV4LTuner, "labelV4LTuner");
-  gtk_widget_show (labelV4LTuner);
-  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LTuner, 0, 1, 9, 10,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_label_set_justify (GTK_LABEL (labelV4LTuner), GTK_JUSTIFY_LEFT);
-  gtk_misc_set_alignment (GTK_MISC (labelV4LTuner), 0, 0.5);
-
-  entryV4LTuner_adj = gtk_adjustment_new (0, -1, 100, 1, 10, 10);
-  entryV4LTuner = gtk_spin_button_new (GTK_ADJUSTMENT (entryV4LTuner_adj), 1, 0);
-  gtk_widget_set_name (entryV4LTuner, "entryV4LTuner");
-  gtk_widget_show (entryV4LTuner);
-  gtk_table_attach (GTK_TABLE (tableV4L), entryV4LTuner, 1, 2, 9, 10,
-                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (entryV4LTuner), TRUE);
-
-  labelV4LSoundDirection = gtk_label_new (_("Sound:"));
-  gtk_widget_set_name (labelV4LSoundDirection, "labelV4LSoundDirection");
-  gtk_widget_show (labelV4LSoundDirection);
-  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LSoundDirection, 0, 1, 8, 9,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_label_set_justify (GTK_LABEL (labelV4LSoundDirection), GTK_JUSTIFY_LEFT);
-  gtk_misc_set_alignment (GTK_MISC (labelV4LSoundDirection), 0, 0.5);
-
   comboV4LSoundDirection = gtk_combo_new ();
   g_object_set_data (G_OBJECT (GTK_COMBO (comboV4LSoundDirection)->popwin),
                      "GladeParentKey", comboV4LSoundDirection);
   gtk_widget_set_name (comboV4LSoundDirection, "comboV4LSoundDirection");
   gtk_widget_show (comboV4LSoundDirection);
   gtk_table_attach (GTK_TABLE (tableV4L), comboV4LSoundDirection, 1, 2, 8, 9,
-                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL),
                     (GtkAttachOptions) (0), 0, 0);
   gtk_combo_set_value_in_list (GTK_COMBO (comboV4LSoundDirection), TRUE, TRUE);
   gtk_combo_set_use_arrows_always (GTK_COMBO (comboV4LSoundDirection), TRUE);
-  comboV4LSoundDirection_items = g_list_append (comboV4LSoundDirection_items, (gpointer) _("Mono"));
-  comboV4LSoundDirection_items = g_list_append (comboV4LSoundDirection_items, (gpointer) _("Stereo"));
+  comboV4LSoundDirection_items = g_list_append (comboV4LSoundDirection_items, (gpointer) _("mono"));
+  comboV4LSoundDirection_items = g_list_append (comboV4LSoundDirection_items, (gpointer) _("stereo"));
   gtk_combo_set_popdown_strings (GTK_COMBO (comboV4LSoundDirection), comboV4LSoundDirection_items);
   g_list_free (comboV4LSoundDirection_items);
 
   entryV4LSoundDirection = GTK_COMBO (comboV4LSoundDirection)->entry;
   gtk_widget_set_name (entryV4LSoundDirection, "entryV4LSoundDirection");
   gtk_widget_show (entryV4LSoundDirection);
-  gtk_entry_set_text (GTK_ENTRY (entryV4LSoundDirection), _("Mono"));
+  gtk_entry_set_text (GTK_ENTRY (entryV4LSoundDirection), _("mono"));
   gtk_entry_set_activates_default (GTK_ENTRY (entryV4LSoundDirection), TRUE);
 
-  labelV4LMJPEG = gtk_label_new (_("MJPEG:"));
-  gtk_widget_set_name (labelV4LMJPEG, "labelV4LMJPEG");
-  gtk_widget_show (labelV4LMJPEG);
-  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LMJPEG, 0, 1, 10, 11,
-                    (GtkAttachOptions) (GTK_FILL),
+  entryV4LTuner_adj = gtk_adjustment_new (0, -1, 100, 1, 10, 10);
+  entryV4LTuner = gtk_spin_button_new (GTK_ADJUSTMENT (entryV4LTuner_adj), 1, 0);
+  gtk_widget_set_name (entryV4LTuner, "entryV4LTuner");
+  gtk_widget_show (entryV4LTuner);
+  gtk_table_attach (GTK_TABLE (tableV4L), entryV4LTuner, 1, 2, 9, 10,
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL),
                     (GtkAttachOptions) (0), 0, 0);
-  gtk_label_set_justify (GTK_LABEL (labelV4LMJPEG), GTK_JUSTIFY_LEFT);
-  gtk_misc_set_alignment (GTK_MISC (labelV4LMJPEG), 0, 0.5);
+  gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (entryV4LTuner), TRUE);
 
   checkV4LMJPEG = gtk_check_button_new_with_mnemonic (_("enable"));
   gtk_widget_set_name (checkV4LMJPEG, "checkV4LMJPEG");
   gtk_widget_show (checkV4LMJPEG);
   gtk_table_attach (GTK_TABLE (tableV4L), checkV4LMJPEG, 1, 2, 10, 11,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-
-  labelV4LDecimation = gtk_label_new (_("Decimation:"));
-  gtk_widget_set_name (labelV4LDecimation, "labelV4LDecimation");
-  gtk_widget_show (labelV4LDecimation);
-  gtk_table_attach (GTK_TABLE (tableV4L), labelV4LDecimation, 0, 1, 11, 12,
-                    (GtkAttachOptions) (GTK_FILL),
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL),
                     (GtkAttachOptions) (0), 0, 0);
-  gtk_label_set_justify (GTK_LABEL (labelV4LDecimation), GTK_JUSTIFY_LEFT);
-  gtk_misc_set_alignment (GTK_MISC (labelV4LDecimation), 0, 0.5);
 
   entryV4LDecimation_adj = gtk_adjustment_new (1, 0, 100, 1, 10, 10);
   entryV4LDecimation = gtk_spin_button_new (GTK_ADJUSTMENT (entryV4LDecimation_adj), 1, 0);
   gtk_widget_set_name (entryV4LDecimation, "entryV4LDecimation");
   gtk_widget_show (entryV4LDecimation);
   gtk_table_attach (GTK_TABLE (tableV4L), entryV4LDecimation, 1, 2, 11, 12,
-                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+                    (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL),
                     (GtkAttachOptions) (0), 0, 0);
 
   hbox16 = gtk_hbox_new (FALSE, 0);
@@ -1017,39 +1018,6 @@ create_pda (void)
   g_signal_connect ((gpointer) AddNetworkPlaylist, "pressed",
                     G_CALLBACK (onAddNetworkPlaylist),
                     NULL);
-  g_signal_connect ((gpointer) entryV4LVideoDevice, "changed",
-                    G_CALLBACK (V4LBuildMRL),
-                    NULL);
-  g_signal_connect ((gpointer) entryV4LAudioDevice, "changed",
-                    G_CALLBACK (V4LBuildMRL),
-                    NULL);
-  g_signal_connect ((gpointer) entryV4LChannel, "changed",
-                    G_CALLBACK (V4LBuildMRL),
-                    NULL);
-  g_signal_connect ((gpointer) entryV4LNorm, "changed",
-                    G_CALLBACK (V4LBuildMRL),
-                    NULL);
-  g_signal_connect ((gpointer) entryV4LSize, "changed",
-                    G_CALLBACK (V4LBuildMRL),
-                    NULL);
-  g_signal_connect ((gpointer) entryV4LFrequency, "changed",
-                    G_CALLBACK (V4LBuildMRL),
-                    NULL);
-  g_signal_connect ((gpointer) entryV4LSampleRate, "changed",
-                    G_CALLBACK (V4LBuildMRL),
-                    NULL);
-  g_signal_connect ((gpointer) entryV4LQuality, "changed",
-                    G_CALLBACK (V4LBuildMRL),
-                    NULL);
-  g_signal_connect ((gpointer) entryV4LTuner, "changed",
-                    G_CALLBACK (V4LBuildMRL),
-                    NULL);
-  g_signal_connect ((gpointer) entryV4LSoundDirection, "changed",
-                    G_CALLBACK (V4LBuildMRL),
-                    NULL);
-  g_signal_connect ((gpointer) entryV4LDecimation, "changed",
-                    G_CALLBACK (V4LBuildMRL),
-                    NULL);
   g_signal_connect ((gpointer) AddCameraToPlaylist, "pressed",
                     G_CALLBACK (onAddCameraToPlaylist),
                     NULL);
@@ -1135,32 +1103,32 @@ create_pda (void)
   GLADE_HOOKUP_OBJECT (pda, tableV4L, "tableV4L");
   GLADE_HOOKUP_OBJECT (pda, labelV4lVideDevice, "labelV4lVideDevice");
   GLADE_HOOKUP_OBJECT (pda, labelV4LAudioDevice, "labelV4LAudioDevice");
+  GLADE_HOOKUP_OBJECT (pda, labelV4LChannel, "labelV4LChannel");
+  GLADE_HOOKUP_OBJECT (pda, labelV4LNorm, "labelV4LNorm");
+  GLADE_HOOKUP_OBJECT (pda, labelV4LSize, "labelV4LSize");
+  GLADE_HOOKUP_OBJECT (pda, labelV4LFrequency, "labelV4LFrequency");
+  GLADE_HOOKUP_OBJECT (pda, labelV4LSampleRate, "labelV4LSampleRate");
+  GLADE_HOOKUP_OBJECT (pda, labelV4LQuality, "labelV4LQuality");
+  GLADE_HOOKUP_OBJECT (pda, labelV4LTuner, "labelV4LTuner");
+  GLADE_HOOKUP_OBJECT (pda, labelV4LSoundDirection, "labelV4LSoundDirection");
+  GLADE_HOOKUP_OBJECT (pda, labelV4LMJPEG, "labelV4LMJPEG");
+  GLADE_HOOKUP_OBJECT (pda, labelV4LDecimation, "labelV4LDecimation");
   GLADE_HOOKUP_OBJECT (pda, comboV4lVideoDevice, "comboV4lVideoDevice");
   GLADE_HOOKUP_OBJECT (pda, entryV4LVideoDevice, "entryV4LVideoDevice");
   GLADE_HOOKUP_OBJECT (pda, comboV4lAudioDevice, "comboV4lAudioDevice");
   GLADE_HOOKUP_OBJECT (pda, entryV4LAudioDevice, "entryV4LAudioDevice");
-  GLADE_HOOKUP_OBJECT (pda, labelV4LChannel, "labelV4LChannel");
   GLADE_HOOKUP_OBJECT (pda, entryV4LChannel, "entryV4LChannel");
-  GLADE_HOOKUP_OBJECT (pda, labelV4LNorm, "labelV4LNorm");
   GLADE_HOOKUP_OBJECT (pda, comboV4LNorm, "comboV4LNorm");
   GLADE_HOOKUP_OBJECT (pda, entryV4LNorm, "entryV4LNorm");
-  GLADE_HOOKUP_OBJECT (pda, labelV4LSize, "labelV4LSize");
   GLADE_HOOKUP_OBJECT (pda, comboV4LSize, "comboV4LSize");
   GLADE_HOOKUP_OBJECT (pda, entryV4LSize, "entryV4LSize");
-  GLADE_HOOKUP_OBJECT (pda, labelV4LFrequency, "labelV4LFrequency");
   GLADE_HOOKUP_OBJECT (pda, entryV4LFrequency, "entryV4LFrequency");
-  GLADE_HOOKUP_OBJECT (pda, labelV4LSampleRate, "labelV4LSampleRate");
   GLADE_HOOKUP_OBJECT (pda, entryV4LSampleRate, "entryV4LSampleRate");
-  GLADE_HOOKUP_OBJECT (pda, labelV4LQuality, "labelV4LQuality");
   GLADE_HOOKUP_OBJECT (pda, entryV4LQuality, "entryV4LQuality");
-  GLADE_HOOKUP_OBJECT (pda, labelV4LTuner, "labelV4LTuner");
-  GLADE_HOOKUP_OBJECT (pda, entryV4LTuner, "entryV4LTuner");
-  GLADE_HOOKUP_OBJECT (pda, labelV4LSoundDirection, "labelV4LSoundDirection");
   GLADE_HOOKUP_OBJECT (pda, comboV4LSoundDirection, "comboV4LSoundDirection");
   GLADE_HOOKUP_OBJECT (pda, entryV4LSoundDirection, "entryV4LSoundDirection");
-  GLADE_HOOKUP_OBJECT (pda, labelV4LMJPEG, "labelV4LMJPEG");
+  GLADE_HOOKUP_OBJECT (pda, entryV4LTuner, "entryV4LTuner");
   GLADE_HOOKUP_OBJECT (pda, checkV4LMJPEG, "checkV4LMJPEG");
-  GLADE_HOOKUP_OBJECT (pda, labelV4LDecimation, "labelV4LDecimation");
   GLADE_HOOKUP_OBJECT (pda, entryV4LDecimation, "entryV4LDecimation");
   GLADE_HOOKUP_OBJECT (pda, hbox16, "hbox16");
   GLADE_HOOKUP_OBJECT (pda, AddCameraToPlaylist, "AddCameraToPlaylist");