]> git.sur5r.net Git - bacula/bacula/commitdiff
ebl add gen bsr button
authorEric Bollengier <eric@eb.homelinux.org>
Mon, 11 Sep 2006 18:57:37 +0000 (18:57 +0000)
committerEric Bollengier <eric@eb.homelinux.org>
Mon, 11 Sep 2006 18:57:37 +0000 (18:57 +0000)
git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@3455 91ce42f0-d328-0410-95d8-f526ca767f89

gui/brestore/brestore.glade
gui/brestore/brestore.pl

index 76dd4515dfc43a81cb91b7a9747b40267e213399..587fcc78973f09db572b01b9cec78477004c5cbd 100644 (file)
          </child>
 
          <child>
-           <placeholder/>
+           <widget class="GtkToolItem" id="toolitem11">
+             <property name="visible">True</property>
+             <property name="visible_horizontal">True</property>
+             <property name="visible_vertical">True</property>
+             <property name="is_important">False</property>
+
+             <child>
+               <widget class="GtkLabel" id="label53">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes"> Location : </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.5</property>
+                 <property name="yalign">0.5</property>
+                 <property name="xpad">0</property>
+                 <property name="ypad">0</property>
+                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                 <property name="width_chars">-1</property>
+                 <property name="single_line_mode">False</property>
+                 <property name="angle">0</property>
+               </widget>
+             </child>
+           </widget>
+           <packing>
+             <property name="expand">False</property>
+             <property name="homogeneous">False</property>
+           </packing>
          </child>
        </widget>
        <packing>
@@ -337,22 +366,77 @@ This year</property>
              <property name="is_important">False</property>
 
              <child>
-               <widget class="GtkLabel" id="label17">
+               <widget class="GtkButton" id="button3">
                  <property name="visible">True</property>
-                 <property name="label" translatable="yes"> Location : </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.5</property>
-                 <property name="yalign">0.5</property>
-                 <property name="xpad">0</property>
-                 <property name="ypad">0</property>
-                 <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                 <property name="width_chars">-1</property>
-                 <property name="single_line_mode">False</property>
-                 <property name="angle">0</property>
+                 <property name="can_default">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="relief">GTK_RELIEF_NORMAL</property>
+                 <property name="focus_on_click">True</property>
+                 <signal name="clicked" handler="on_location_go_button_clicked" last_modification_time="Tue, 30 May 2006 22:47:59 GMT"/>
+
+                 <child>
+                   <widget class="GtkAlignment" id="alignment21">
+                     <property name="visible">True</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xscale">0</property>
+                     <property name="yscale">0</property>
+                     <property name="top_padding">0</property>
+                     <property name="bottom_padding">0</property>
+                     <property name="left_padding">0</property>
+                     <property name="right_padding">0</property>
+
+                     <child>
+                       <widget class="GtkHBox" id="hbox17">
+                         <property name="visible">True</property>
+                         <property name="homogeneous">False</property>
+                         <property name="spacing">2</property>
+
+                         <child>
+                           <widget class="GtkImage" id="image8">
+                             <property name="visible">True</property>
+                             <property name="stock">gtk-jump-to</property>
+                             <property name="icon_size">4</property>
+                             <property name="xalign">0.5</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkLabel" id="label54">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">Location</property>
+                             <property name="use_underline">True</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.5</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xpad">0</property>
+                             <property name="ypad">0</property>
+                             <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                             <property name="width_chars">-1</property>
+                             <property name="single_line_mode">False</property>
+                             <property name="angle">0</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+                       </widget>
+                     </child>
+                   </widget>
+                 </child>
                </widget>
              </child>
            </widget>
@@ -402,29 +486,6 @@ This year</property>
                  <property name="visible">True</property>
                  <property name="layout_style">GTK_BUTTONBOX_DEFAULT_STYLE</property>
                  <property name="spacing">0</property>
-
-                 <child>
-                   <widget class="GtkButton" id="button3">
-                     <property name="visible">True</property>
-                     <property name="can_default">True</property>
-                     <property name="can_focus">True</property>
-                     <property name="relief">GTK_RELIEF_NORMAL</property>
-                     <property name="focus_on_click">True</property>
-                     <signal name="clicked" handler="on_location_go_button_clicked" last_modification_time="Tue, 30 May 2006 22:47:59 GMT"/>
-
-                     <child>
-                       <widget class="GtkImage" id="image3">
-                         <property name="visible">True</property>
-                         <property name="stock">gtk-jump-to</property>
-                         <property name="icon_size">4</property>
-                         <property name="xalign">0.5</property>
-                         <property name="yalign">0.5</property>
-                         <property name="xpad">0</property>
-                         <property name="ypad">0</property>
-                       </widget>
-                     </child>
-                   </widget>
-                 </child>
                </widget>
              </child>
            </widget>
@@ -833,6 +894,82 @@ This year</property>
                          </child>
                        </widget>
                      </child>
+
+                     <child>
+                       <widget class="GtkButton" id="button7">
+                         <property name="visible">True</property>
+                         <property name="tooltip" translatable="yes">Generate a bootstrap file</property>
+                         <property name="can_default">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="relief">GTK_RELIEF_NORMAL</property>
+                         <property name="focus_on_click">True</property>
+                         <signal name="clicked" handler="on_gen_bsr_clicked" last_modification_time="Mon, 11 Sep 2006 17:00:34 GMT"/>
+
+                         <child>
+                           <widget class="GtkAlignment" id="alignment20">
+                             <property name="visible">True</property>
+                             <property name="xalign">0.5</property>
+                             <property name="yalign">0.5</property>
+                             <property name="xscale">0</property>
+                             <property name="yscale">0</property>
+                             <property name="top_padding">0</property>
+                             <property name="bottom_padding">0</property>
+                             <property name="left_padding">0</property>
+                             <property name="right_padding">0</property>
+
+                             <child>
+                               <widget class="GtkHBox" id="hbox16">
+                                 <property name="visible">True</property>
+                                 <property name="homogeneous">False</property>
+                                 <property name="spacing">2</property>
+
+                                 <child>
+                                   <widget class="GtkImage" id="image7">
+                                     <property name="visible">True</property>
+                                     <property name="stock">gtk-justify-left</property>
+                                     <property name="icon_size">4</property>
+                                     <property name="xalign">0.5</property>
+                                     <property name="yalign">0.5</property>
+                                     <property name="xpad">0</property>
+                                     <property name="ypad">0</property>
+                                   </widget>
+                                   <packing>
+                                     <property name="padding">0</property>
+                                     <property name="expand">False</property>
+                                     <property name="fill">False</property>
+                                   </packing>
+                                 </child>
+
+                                 <child>
+                                   <widget class="GtkLabel" id="label52">
+                                     <property name="visible">True</property>
+                                     <property name="label" translatable="yes">Gen BSR</property>
+                                     <property name="use_underline">True</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.5</property>
+                                     <property name="yalign">0.5</property>
+                                     <property name="xpad">0</property>
+                                     <property name="ypad">0</property>
+                                     <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                     <property name="width_chars">-1</property>
+                                     <property name="single_line_mode">False</property>
+                                     <property name="angle">0</property>
+                                   </widget>
+                                   <packing>
+                                     <property name="padding">0</property>
+                                     <property name="expand">False</property>
+                                     <property name="fill">False</property>
+                                   </packing>
+                                 </child>
+                               </widget>
+                             </child>
+                           </widget>
+                         </child>
+                       </widget>
+                     </child>
                    </widget>
                    <packing>
                      <property name="padding">0</property>
index 035817c3c62eb93d98fa61f046a3bb2334c7f176..b34b8bdc062b60d0b2cd8205be494c51ca3baf1b 100755 (executable)
@@ -1033,6 +1033,54 @@ sub on_estimate_clicked
     return 0;
 }
 
+sub on_gen_bsr_clicked
+{
+    my ($self) = @_;
+    
+    my @options = ("Choose a bsr file", $self->{mainwin}, 'save', 
+                  'gtk-save','ok', 'gtk-cancel', 'cancel');
+
+    
+    my $w = new Gtk2::FileChooserDialog ( @options );
+    my $ok = 0;
+    my $save;
+    while (!$ok) {
+       my $a = $w->run();
+       if ($a eq 'cancel') {
+           $ok = 1;
+       }
+
+       if ($a eq 'ok') {
+           my $f = $w->get_filename();
+           if (-f $f) {
+               my $dlg = Gtk2::MessageDialog->new($self->{mainwin}, 
+                                                  'destroy-with-parent', 
+                                                  'warning', 'ok-cancel', 'This file already exists, do you want to overwrite it ?');
+               if ($dlg->run() eq 'ok') {
+                   $save = $f;
+               }
+               $dlg->destroy();
+           } else {
+               $save = $f;
+           }
+           $ok = 1;
+       }
+    }
+
+    $w->destroy();
+    
+    if ($save) {
+       if (open(FP, ">$save")) {
+           my $bsr = $self->create_filelist();
+           print FP $bsr;
+           close(FP);
+           $self->set_status("Dumping BSR to $save ok");
+       } else {
+           $self->set_status("Can't dump BSR to $save: $!");
+       }
+    }
+}
+
 use File::Temp qw/tempfile/;
 
 sub on_go_button_clicked