gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r6612 - gnunet-gtk


From: gnunet
Subject: [GNUnet-SVN] r6612 - gnunet-gtk
Date: Mon, 24 Mar 2008 09:34:35 -0600 (MDT)

Author: moon
Date: 2008-03-24 09:34:34 -0600 (Mon, 24 Mar 2008)
New Revision: 6612

Modified:
   gnunet-gtk/gnunet-gtk.glade
Log:
a few cosmetic fixes


Modified: gnunet-gtk/gnunet-gtk.glade
===================================================================
--- gnunet-gtk/gnunet-gtk.glade 2008-03-24 15:15:53 UTC (rev 6611)
+++ gnunet-gtk/gnunet-gtk.glade 2008-03-24 15:34:34 UTC (rev 6612)
@@ -665,87 +665,118 @@
                               <placeholder/>
                             </child>
                             <child>
-                              <widget class="GtkVBox" id="vbox8">
+                              <widget class="GtkHBox" id="hbox24">
                                 <property name="visible">True</property>
-                                <property name="homogeneous">True</property>
                                 <child>
-                                  <widget class="GtkButton" 
id="abortDownloadButton">
+                                  <widget class="GtkLabel" 
id="fs_status_URI_label">
                                     <property name="visible">True</property>
-                                    <property name="sensitive">False</property>
                                     <property name="can_focus">True</property>
-                                    <property name="tooltip" 
translatable="yes">Cancel the selected download (and all sub-downloads) and 
delete incomplete downloads.</property>
-                                    <property 
name="label">gtk-delete</property>
-                                    <property name="use_stock">True</property>
-                                    <property name="response_id">0</property>
-                                    <signal name="clicked" 
handler="on_abortDownloadButton_clicked_"/>
+                                    <property name="xpad">5</property>
+                                    <property name="label" 
translatable="yes">_Enter URI:</property>
+                                    <property 
name="use_underline">True</property>
+                                    <property name="selectable">True</property>
+                                    <property 
name="mnemonic_widget">statusDownloadURIEntry</property>
                                   </widget>
                                   <packing>
+                                    <property name="expand">False</property>
                                     <property name="fill">False</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkButton" 
id="stopDownloadButton">
+                                  <widget class="GtkEntry" 
id="statusDownloadURIEntry">
                                     <property name="visible">True</property>
-                                    <property name="sensitive">False</property>
                                     <property name="can_focus">True</property>
-                                    <property name="tooltip" 
translatable="yes">Stop the selected download (and all sub-downloads) and 
remove them from the list.  This will NOT cause the deletion of files from 
incomplete downloads.</property>
-                                    <property name="label">gtk-stop</property>
-                                    <property name="use_stock">True</property>
-                                    <property name="response_id">0</property>
-                                    <signal name="clicked" 
handler="on_stopDownloadButton_clicked_"/>
+                                    <property name="has_focus">True</property>
+                                    <property 
name="activates_default">True</property>
+                                    <property 
name="text">gnunet://ecrs/</property>
                                   </widget>
                                   <packing>
-                                    <property name="fill">False</property>
+                                    <property name="padding">5</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkButton" 
id="clearCompletedDownloadsButton">
+                                  <widget class="GtkButton" 
id="fs_status_download_button">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
-                                    <property name="tooltip" 
translatable="yes">Clear completed downloads from the download list</property>
+                                    <property name="tooltip" 
translatable="yes">Download the content specified by the URI</property>
                                     <property name="response_id">0</property>
-                                    <signal name="clicked" 
handler="on_clearCompletedDownloadsButton_clicked_"/>
                                     <child>
-                                      <widget class="GtkHBox" id="hbox26">
+                                      <widget class="GtkAlignment" 
id="alignment9">
                                         <property 
name="visible">True</property>
-                                        <property name="spacing">2</property>
+                                        <property name="xscale">0</property>
+                                        <property name="yscale">0</property>
                                         <child>
-                                          <widget class="GtkImage" 
id="image15">
+                                          <widget class="GtkHBox" id="hbox25">
                                             <property 
name="visible">True</property>
-                                            <property 
name="stock">gtk-clear</property>
+                                            <property 
name="spacing">2</property>
+                                            <child>
+                                              <widget class="GtkImage" 
id="image14">
+                                                <property 
name="visible">True</property>
+                                                <property 
name="stock">gtk-go-down</property>
+                                              </widget>
+                                              <packing>
+                                                <property 
name="expand">False</property>
+                                                <property 
name="fill">False</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <widget class="GtkLabel" 
id="label12">
+                                                <property 
name="visible">True</property>
+                                                <property name="label" 
translatable="yes">D_ownload</property>
+                                                <property 
name="use_underline">True</property>
+                                              </widget>
+                                              <packing>
+                                                <property 
name="expand">False</property>
+                                                <property 
name="fill">False</property>
+                                                <property 
name="position">1</property>
+                                              </packing>
+                                            </child>
                                           </widget>
-                                          <packing>
-                                            <property 
name="expand">False</property>
-                                            <property 
name="fill">False</property>
-                                          </packing>
                                         </child>
-                                        <child>
-                                          <widget class="GtkLabel" 
id="label14">
-                                            <property 
name="visible">True</property>
-                                            <property name="label" 
translatable="yes">_Clean</property>
-                                            <property 
name="use_underline">True</property>
-                                          </widget>
-                                          <packing>
-                                            <property 
name="expand">False</property>
-                                            <property 
name="fill">False</property>
-                                            <property 
name="position">1</property>
-                                          </packing>
-                                        </child>
                                       </widget>
                                     </child>
                                   </widget>
                                   <packing>
+                                    <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">2</property>
                                   </packing>
                                 </child>
+                                <child>
+                                  <widget class="GtkLabel" id="label13">
+                                    <property name="visible">True</property>
+                                    <property name="xpad">3</property>
+                                    <property name="label" 
translatable="yes">with _anonymity</property>
+                                    <property 
name="use_underline">True</property>
+                                    <property 
name="mnemonic_widget">fsstatusAnonymitySpin</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                    <property name="position">3</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkSpinButton" 
id="fsstatusAnonymitySpin">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="adjustment">1 0 999999 1 
10 10</property>
+                                    <property name="climb_rate">1</property>
+                                    <property name="numeric">True</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                    <property name="position">4</property>
+                                  </packing>
+                                </child>
                               </widget>
                               <packing>
-                                <property name="left_attach">1</property>
-                                <property name="right_attach">2</property>
-                                <property name="x_options"></property>
-                                <property name="x_padding">5</property>
+                                <property name="top_attach">1</property>
+                                <property name="bottom_attach">2</property>
+                                <property name="y_options"></property>
+                                <property name="y_padding">5</property>
                               </packing>
                             </child>
                             <child>
@@ -766,54 +797,60 @@
                               </widget>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox24">
+                              <widget class="GtkVBox" id="vbox8">
                                 <property name="visible">True</property>
+                                <property name="homogeneous">True</property>
                                 <child>
-                                  <widget class="GtkLabel" 
id="fs_status_URI_label">
+                                  <widget class="GtkButton" 
id="abortDownloadButton">
                                     <property name="visible">True</property>
+                                    <property name="sensitive">False</property>
                                     <property name="can_focus">True</property>
-                                    <property name="xpad">5</property>
-                                    <property name="label" 
translatable="yes">_Enter URI:</property>
-                                    <property 
name="use_underline">True</property>
-                                    <property name="selectable">True</property>
-                                    <property 
name="mnemonic_widget">statusDownloadURIEntry</property>
+                                    <property name="tooltip" 
translatable="yes">Cancel the selected download (and all sub-downloads) and 
delete incomplete downloads.</property>
+                                    <property 
name="label">gtk-delete</property>
+                                    <property name="use_stock">True</property>
+                                    <property name="response_id">0</property>
+                                    <signal name="clicked" 
handler="on_abortDownloadButton_clicked_"/>
                                   </widget>
                                   <packing>
-                                    <property name="expand">False</property>
                                     <property name="fill">False</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkEntry" 
id="statusDownloadURIEntry">
+                                  <widget class="GtkButton" 
id="stopDownloadButton">
                                     <property name="visible">True</property>
+                                    <property name="sensitive">False</property>
                                     <property name="can_focus">True</property>
-                                    <property name="has_focus">True</property>
-                                    <property 
name="activates_default">True</property>
-                                    <property 
name="text">gnunet://ecrs/</property>
+                                    <property name="tooltip" 
translatable="yes">Stop the selected download (and all sub-downloads) and 
remove them from the list.  This will NOT cause the deletion of files from 
incomplete downloads.</property>
+                                    <property name="label">gtk-stop</property>
+                                    <property name="use_stock">True</property>
+                                    <property name="response_id">0</property>
+                                    <signal name="clicked" 
handler="on_stopDownloadButton_clicked_"/>
                                   </widget>
                                   <packing>
+                                    <property name="fill">False</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkButton" 
id="fs_status_download_button">
+                                  <widget class="GtkButton" 
id="clearCompletedDownloadsButton">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
-                                    <property name="tooltip" 
translatable="yes">Download the content specified by the URI</property>
+                                    <property name="tooltip" 
translatable="yes">Clear completed downloads from the download list</property>
                                     <property name="response_id">0</property>
+                                    <signal name="clicked" 
handler="on_clearCompletedDownloadsButton_clicked_"/>
                                     <child>
-                                      <widget class="GtkAlignment" 
id="alignment9">
+                                      <widget class="GtkAlignment" 
id="alignment3">
                                         <property 
name="visible">True</property>
+                                        <property 
name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | 
GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                                         <property name="xscale">0</property>
-                                        <property name="yscale">0</property>
                                         <child>
-                                          <widget class="GtkHBox" id="hbox25">
+                                          <widget class="GtkHBox" id="hbox4">
                                             <property 
name="visible">True</property>
                                             <property 
name="spacing">2</property>
                                             <child>
-                                              <widget class="GtkImage" 
id="image14">
+                                              <widget class="GtkImage" 
id="image3">
                                                 <property 
name="visible">True</property>
-                                                <property 
name="stock">gtk-go-down</property>
+                                                <property 
name="stock">gtk-clear</property>
                                               </widget>
                                               <packing>
                                                 <property 
name="expand">False</property>
@@ -821,9 +858,9 @@
                                               </packing>
                                             </child>
                                             <child>
-                                              <widget class="GtkLabel" 
id="label12">
+                                              <widget class="GtkLabel" 
id="label5">
                                                 <property 
name="visible">True</property>
-                                                <property name="label" 
translatable="yes">D_ownload</property>
+                                                <property name="label" 
translatable="yes">_Clean</property>
                                                 <property 
name="use_underline">True</property>
                                               </widget>
                                               <packing>
@@ -843,40 +880,12 @@
                                     <property name="position">2</property>
                                   </packing>
                                 </child>
-                                <child>
-                                  <widget class="GtkLabel" id="label13">
-                                    <property name="visible">True</property>
-                                    <property name="xpad">3</property>
-                                    <property name="label" 
translatable="yes">with _anonymity</property>
-                                    <property 
name="use_underline">True</property>
-                                    <property 
name="mnemonic_widget">fsstatusAnonymitySpin</property>
-                                  </widget>
-                                  <packing>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                    <property name="position">3</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <widget class="GtkSpinButton" 
id="fsstatusAnonymitySpin">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="adjustment">1 0 999999 1 
10 10</property>
-                                    <property name="climb_rate">1</property>
-                                    <property name="numeric">True</property>
-                                  </widget>
-                                  <packing>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                    <property name="position">4</property>
-                                  </packing>
-                                </child>
                               </widget>
                               <packing>
-                                <property name="top_attach">1</property>
-                                <property name="bottom_attach">2</property>
-                                <property name="y_options"></property>
-                                <property name="y_padding">5</property>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="x_options"></property>
+                                <property name="x_padding">5</property>
                               </packing>
                             </child>
                           </widget>
@@ -966,31 +975,38 @@
                                     <property name="response_id">0</property>
                                     <signal name="clicked" 
handler="on_clearCompletedUploadsButton_clicked_"/>
                                     <child>
-                                      <widget class="GtkHBox" id="hbox5">
+                                      <widget class="GtkAlignment" 
id="alignment4">
                                         <property 
name="visible">True</property>
-                                        <property name="spacing">2</property>
+                                        <property 
name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | 
GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                                        <property name="xscale">0</property>
                                         <child>
-                                          <widget class="GtkImage" id="image4">
+                                          <widget class="GtkHBox" id="hbox5">
                                             <property 
name="visible">True</property>
-                                            <property 
name="stock">gtk-clear</property>
+                                            <property 
name="spacing">2</property>
+                                            <child>
+                                              <widget class="GtkImage" 
id="image4">
+                                                <property 
name="visible">True</property>
+                                                <property 
name="stock">gtk-clear</property>
+                                              </widget>
+                                              <packing>
+                                                <property 
name="expand">False</property>
+                                                <property 
name="fill">False</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <widget class="GtkLabel" 
id="label2">
+                                                <property 
name="visible">True</property>
+                                                <property name="label" 
translatable="yes">_Clean</property>
+                                                <property 
name="use_underline">True</property>
+                                              </widget>
+                                              <packing>
+                                                <property 
name="expand">False</property>
+                                                <property 
name="fill">False</property>
+                                                <property 
name="position">1</property>
+                                              </packing>
+                                            </child>
                                           </widget>
-                                          <packing>
-                                            <property 
name="expand">False</property>
-                                            <property 
name="fill">False</property>
-                                          </packing>
                                         </child>
-                                        <child>
-                                          <widget class="GtkLabel" id="label2">
-                                            <property 
name="visible">True</property>
-                                            <property name="label" 
translatable="yes">_Clean</property>
-                                            <property 
name="use_underline">True</property>
-                                          </widget>
-                                          <packing>
-                                            <property 
name="expand">False</property>
-                                            <property 
name="fill">False</property>
-                                            <property 
name="position">1</property>
-                                          </packing>
-                                        </child>
                                       </widget>
                                     </child>
                                   </widget>
@@ -1312,117 +1328,50 @@
                           <placeholder/>
                         </child>
                         <child>
-                          <widget class="GtkLabel" id="methodLabel">
+                          <widget class="GtkAlignment" id="alignment8">
                             <property name="visible">True</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | 
GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | 
GDK_BUTTON_RELEASE_MASK</property>
                             <property name="xalign">0</property>
-                            <property name="xpad">5</property>
-                            <property name="label" 
translatable="yes">Method:</property>
-                            <property name="use_underline">True</property>
-                            <property 
name="mnemonic_widget">indexbutton</property>
+                            <property name="xscale">0</property>
+                            <child>
+                              <widget class="GtkSpinButton" 
id="contentPrioritySpinButton1">
+                                <property name="width_request">94</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="tooltip" 
translatable="yes">How important is the file (used to prioritize data in the 
local datastore).</property>
+                                <property name="adjustment">950 0 100000000 50 
500 500</property>
+                                <property name="climb_rate">500</property>
+                                <property name="numeric">True</property>
+                              </widget>
+                            </child>
                           </widget>
                           <packing>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkRadioButton" id="indexbutton">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="tooltip" 
translatable="yes">Indexing will avoid copying the file into the GNUnet 
database.  Instead, GNUnet will try to add a symbolic link to the specified 
file.  If that fails, a copy of the file will be created.  Indexing should be 
used if the local machine is unlikely to ever be compromised by an adversary 
and if the uploaded file will not be modified or moved in the future.  Indexing 
is more efficient than insertion.</property>
-                            <property name="label" 
translatable="yes">Inde_x</property>
-                            <property name="use_underline">True</property>
-                            <property name="response_id">0</property>
-                            <property name="active">True</property>
-                            <property name="draw_indicator">True</property>
-                          </widget>
-                          <packing>
                             <property name="left_attach">1</property>
                             <property name="right_attach">2</property>
+                            <property name="top_attach">3</property>
+                            <property name="bottom_attach">4</property>
                             <property name="x_options">GTK_FILL</property>
                             <property name="y_options"></property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkRadioButton" id="insertButton">
+                          <widget class="GtkAlignment" id="alignment7">
                             <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="tooltip" 
translatable="yes">Inserting a file means that an encrypted copy will be added 
to the GNUnet database.  Without the proper key (which is not stored in 
plaintext anywhere) the file cannot be decrypted.  Use this option for small 
files, files that will be modified soon, files that maybe moved or if you are 
afraid that an adversary may detect the file in plaintext on your machine 
(after compromising your machine).</property>
-                            <property name="label" 
translatable="yes">I_nsert</property>
-                            <property name="use_underline">True</property>
-                            <property name="response_id">0</property>
-                            <property name="draw_indicator">True</property>
-                            <property name="group">indexbutton</property>
-                          </widget>
-                          <packing>
-                            <property name="left_attach">2</property>
-                            <property name="right_attach">3</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkLabel" id="scopeLabel">
-                            <property name="visible">True</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | 
GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | 
GDK_BUTTON_RELEASE_MASK</property>
                             <property name="xalign">0</property>
-                            <property name="xpad">5</property>
-                            <property name="label" 
translatable="yes">Scope:</property>
-                            <property name="use_underline">True</property>
-                            <property 
name="mnemonic_widget">scopeFileOnlyButton</property>
+                            <property name="xscale">0</property>
+                            <child>
+                              <widget class="GtkSpinButton" 
id="uploadAnonymityLevelSpinButton1">
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="tooltip" 
translatable="yes">What level of sender-anonymity is desired when sharing this 
particular file?  0 allows direct connections (no anonymity).  Higher levels 
require increasing amounts of cover traffic per shared block, increasing your 
privacy at the expense of efficiency.</property>
+                                <property name="adjustment">1 0 10000 1 10 
10</property>
+                                <property name="climb_rate">1</property>
+                                <property name="numeric">True</property>
+                              </widget>
+                            </child>
                           </widget>
                           <packing>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkLabel" id="anonymityUploadLabel">
-                            <property name="visible">True</property>
-                            <property name="xalign">0</property>
-                            <property name="xpad">5</property>
-                            <property name="label" 
translatable="yes">_Anonymity:</property>
-                            <property name="use_underline">True</property>
-                            <property 
name="mnemonic_widget">uploadAnonymityLevelSpinButton</property>
-                          </widget>
-                          <packing>
-                            <property name="top_attach">2</property>
-                            <property name="bottom_attach">3</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkRadioButton" 
id="scopeRecursiveButton">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="tooltip" 
translatable="yes">Recursively publish an entire directory tree</property>
-                            <property name="label" 
translatable="yes">_Recursive (for entire directories)</property>
-                            <property name="use_underline">True</property>
-                            <property name="response_id">0</property>
-                            <property name="draw_indicator">True</property>
-                          </widget>
-                          <packing>
-                            <property name="left_attach">2</property>
-                            <property name="right_attach">3</property>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkSpinButton" 
id="uploadAnonymityLevelSpinButton">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="tooltip" translatable="yes">What 
level of sender-anonymity is desired when sharing this particular file?  0 
allows direct connections (no anonymity).  Higher levels require increasing 
amounts of cover traffic per shared block, increasing your privacy at the 
expense of efficiency.</property>
-                            <property name="adjustment">1 0 10000 1 10 
10</property>
-                            <property name="climb_rate">1</property>
-                            <property name="numeric">True</property>
-                            <signal name="value_changed" 
handler="on_anonymity_spin_changed_"/>
-                          </widget>
-                          <packing>
                             <property name="left_attach">1</property>
                             <property name="right_attach">2</property>
                             <property name="top_attach">2</property>
@@ -1432,24 +1381,24 @@
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkCheckButton" 
id="deepIndexCheckButton">
+                          <widget class="GtkCheckButton" 
id="doExtractCheckButton">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="tooltip" translatable="yes">Should 
it be possible to directly find files in the directory?  If unchecked, it will 
only be possible for the directory itself to be found with a normal keyword 
search.  This option only really makes a difference for uploads of 
directories.</property>
+                            <property name="tooltip" 
translatable="yes">Controls if GNUnet should (automatically) extract metadata 
for files.  If unchecked, the default metadata for the upload will only contain 
the filename.  If checked, GNU libextractor will be used to provide additional 
metadata (such as thumbnails).  The option only applies when a directory is 
uploaded.  For individual files, GNU libextractor is always used (you will have 
a chance to edit the extracted metadata in a dialog).</property>
                             <property name="response_id">0</property>
                             <property name="active">True</property>
                             <property name="draw_indicator">True</property>
                             <child>
-                              <widget class="GtkAlignment" id="alignment15">
+                              <widget class="GtkAlignment" id="alignment24">
                                 <property name="visible">True</property>
                                 <property name="xscale">0</property>
                                 <property name="yscale">0</property>
                                 <child>
-                                  <widget class="GtkHBox" id="hbox52">
+                                  <widget class="GtkHBox" id="hbox66">
                                     <property name="visible">True</property>
                                     <property name="spacing">2</property>
                                     <child>
-                                      <widget class="GtkImage" id="image40">
+                                      <widget class="GtkImage" id="image49">
                                         <property 
name="visible">True</property>
                                         <property 
name="stock">gtk-index</property>
                                       </widget>
@@ -1459,9 +1408,9 @@
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkLabel" id="label128">
+                                      <widget class="GtkLabel" id="label151">
                                         <property 
name="visible">True</property>
-                                        <property name="label" 
translatable="yes">Add keywords for files in directories</property>
+                                        <property name="label" 
translatable="yes">Use libextractor for files in directories</property>
                                         <property 
name="use_underline">True</property>
                                       </widget>
                                       <packing>
@@ -1478,28 +1427,48 @@
                           <packing>
                             <property name="left_attach">2</property>
                             <property name="right_attach">3</property>
-                            <property name="top_attach">2</property>
-                            <property name="bottom_attach">3</property>
+                            <property name="top_attach">3</property>
+                            <property name="bottom_attach">4</property>
                             <property name="x_options">GTK_FILL</property>
                             <property name="y_options"></property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkButton" id="fsinsertuploadbutton">
+                          <widget class="GtkRadioButton" 
id="scopeFileOnlyButton">
                             <property name="visible">True</property>
-                            <property name="sensitive">False</property>
                             <property name="can_focus">True</property>
-                            <property name="tooltip" translatable="yes">Share 
the specified file with the selected options (you will then be prompted to 
enter meta-data and keywords)</property>
+                            <property name="tooltip" translatable="yes">Only 
publish a single file</property>
+                            <property name="label" translatable="yes">File 
onl_y</property>
+                            <property name="use_underline">True</property>
                             <property name="response_id">0</property>
-                            <signal name="clicked" 
handler="on_fsinsertuploadbutton_clicked_"/>
+                            <property name="active">True</property>
+                            <property name="draw_indicator">True</property>
+                            <property 
name="group">scopeRecursiveButton</property>
+                          </widget>
+                          <packing>
+                            <property name="left_attach">1</property>
+                            <property name="right_attach">2</property>
+                            <property name="top_attach">1</property>
+                            <property name="bottom_attach">2</property>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
+                        <child>
+                          <widget class="GtkButton" 
id="mainFileSharingInsertBrowseButton">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="tooltip" translatable="yes">Browse 
local computer for files (or directories) to publish</property>
+                            <property name="response_id">0</property>
+                            <signal name="clicked" 
handler="on_mainFileSharingInsertBrowseButton_clicked_" 
object="fsinsertfilenamecombo"/>
                             <child>
-                              <widget class="GtkHBox" id="hbox55">
+                              <widget class="GtkHBox" id="hbox60">
                                 <property name="visible">True</property>
                                 <property name="spacing">2</property>
                                 <child>
-                                  <widget class="GtkImage" id="image42">
+                                  <widget class="GtkImage" id="image46">
                                     <property name="visible">True</property>
-                                    <property name="stock">gtk-go-up</property>
+                                    <property name="stock">gtk-open</property>
                                   </widget>
                                   <packing>
                                     <property name="expand">False</property>
@@ -1507,9 +1476,9 @@
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="label137">
+                                  <widget class="GtkLabel" id="label143">
                                     <property name="visible">True</property>
-                                    <property name="label" 
translatable="yes">Pub_lish</property>
+                                    <property name="label" 
translatable="yes">_Browse</property>
                                     <property 
name="use_underline">True</property>
                                   </widget>
                                   <packing>
@@ -1524,26 +1493,32 @@
                           <packing>
                             <property name="left_attach">2</property>
                             <property name="right_attach">3</property>
-                            <property name="top_attach">5</property>
-                            <property name="bottom_attach">6</property>
+                            <property name="top_attach">4</property>
+                            <property name="bottom_attach">5</property>
                             <property name="x_options">GTK_FILL</property>
                             <property name="y_options"></property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkLabel" id="uploadFilenameLabel">
+                          <widget class="GtkAlignment" 
id="uploadFilenameAlignment">
                             <property name="visible">True</property>
-                            <property name="xalign">0</property>
-                            <property name="xpad">5</property>
-                            <property name="label" 
translatable="yes">_Filename:</property>
-                            <property name="use_underline">True</property>
-                            <property 
name="justify">GTK_JUSTIFY_CENTER</property>
-                            <property 
name="mnemonic_widget">uploadFilenameComboBoxEntry</property>
+                            <child>
+                              <widget class="GtkComboBoxEntry" 
id="uploadFilenameComboBoxEntry">
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <signal name="changed" 
handler="on_uploadFilenameComboBoxEntry_changed_"/>
+                                <child internal-child="entry">
+                                  <widget class="GtkEntry" 
id="comboboxentry-entry3">
+                                  </widget>
+                                </child>
+                              </widget>
+                            </child>
                           </widget>
                           <packing>
+                            <property name="left_attach">1</property>
+                            <property name="right_attach">2</property>
                             <property name="top_attach">4</property>
                             <property name="bottom_attach">5</property>
-                            <property name="x_options">GTK_FILL</property>
                             <property name="y_options"></property>
                           </packing>
                         </child>
@@ -1564,43 +1539,38 @@
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkAlignment" 
id="uploadFilenameAlignment">
+                          <widget class="GtkLabel" id="uploadFilenameLabel">
                             <property name="visible">True</property>
-                            <child>
-                              <widget class="GtkComboBoxEntry" 
id="uploadFilenameComboBoxEntry">
-                                <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <signal name="changed" 
handler="on_uploadFilenameComboBoxEntry_changed_"/>
-                                <child internal-child="entry">
-                                  <widget class="GtkEntry" 
id="comboboxentry-entry3">
-                                  </widget>
-                                </child>
-                              </widget>
-                            </child>
+                            <property name="xalign">0</property>
+                            <property name="xpad">5</property>
+                            <property name="label" 
translatable="yes">_Filename:</property>
+                            <property name="use_underline">True</property>
+                            <property 
name="justify">GTK_JUSTIFY_CENTER</property>
+                            <property 
name="mnemonic_widget">uploadFilenameComboBoxEntry</property>
                           </widget>
                           <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
                             <property name="top_attach">4</property>
                             <property name="bottom_attach">5</property>
+                            <property name="x_options">GTK_FILL</property>
                             <property name="y_options"></property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkButton" 
id="mainFileSharingInsertBrowseButton">
+                          <widget class="GtkButton" id="fsinsertuploadbutton">
                             <property name="visible">True</property>
+                            <property name="sensitive">False</property>
                             <property name="can_focus">True</property>
-                            <property name="tooltip" translatable="yes">Browse 
local computer for files (or directories) to publish</property>
+                            <property name="tooltip" translatable="yes">Share 
the specified file with the selected options (you will then be prompted to 
enter meta-data and keywords)</property>
                             <property name="response_id">0</property>
-                            <signal name="clicked" 
handler="on_mainFileSharingInsertBrowseButton_clicked_" 
object="fsinsertfilenamecombo"/>
+                            <signal name="clicked" 
handler="on_fsinsertuploadbutton_clicked_"/>
                             <child>
-                              <widget class="GtkHBox" id="hbox60">
+                              <widget class="GtkHBox" id="hbox55">
                                 <property name="visible">True</property>
                                 <property name="spacing">2</property>
                                 <child>
-                                  <widget class="GtkImage" id="image46">
+                                  <widget class="GtkImage" id="image42">
                                     <property name="visible">True</property>
-                                    <property name="stock">gtk-open</property>
+                                    <property name="stock">gtk-go-up</property>
                                   </widget>
                                   <packing>
                                     <property name="expand">False</property>
@@ -1608,9 +1578,9 @@
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="label143">
+                                  <widget class="GtkLabel" id="label137">
                                     <property name="visible">True</property>
-                                    <property name="label" 
translatable="yes">_Browse</property>
+                                    <property name="label" 
translatable="yes">Pub_lish</property>
                                     <property 
name="use_underline">True</property>
                                   </widget>
                                   <packing>
@@ -1625,71 +1595,31 @@
                           <packing>
                             <property name="left_attach">2</property>
                             <property name="right_attach">3</property>
-                            <property name="top_attach">4</property>
-                            <property name="bottom_attach">5</property>
+                            <property name="top_attach">5</property>
+                            <property name="bottom_attach">6</property>
                             <property name="x_options">GTK_FILL</property>
                             <property name="y_options"></property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkRadioButton" 
id="scopeFileOnlyButton">
+                          <widget class="GtkCheckButton" 
id="deepIndexCheckButton">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="tooltip" translatable="yes">Only 
publish a single file</property>
-                            <property name="label" translatable="yes">File 
onl_y</property>
-                            <property name="use_underline">True</property>
+                            <property name="tooltip" translatable="yes">Should 
it be possible to directly find files in the directory?  If unchecked, it will 
only be possible for the directory itself to be found with a normal keyword 
search.  This option only really makes a difference for uploads of 
directories.</property>
                             <property name="response_id">0</property>
                             <property name="active">True</property>
                             <property name="draw_indicator">True</property>
-                            <property 
name="group">scopeRecursiveButton</property>
-                          </widget>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkSpinButton" 
id="contentPrioritySpinButton">
-                            <property name="width_request">94</property>
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="tooltip" translatable="yes">How 
important is the file (used to prioritize data in the local 
datastore).</property>
-                            <property name="adjustment">1000 0 100000000 50 
500 500</property>
-                            <property name="climb_rate">500</property>
-                            <property name="numeric">True</property>
-                          </widget>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">3</property>
-                            <property name="bottom_attach">4</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"></property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkCheckButton" 
id="doExtractCheckButton">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="tooltip" 
translatable="yes">Controls if GNUnet should (automatically) extract metadata 
for files.  If unchecked, the default metadata for the upload will only contain 
the filename.  If checked, GNU libextractor will be used to provide additional 
metadata (such as thumbnails).  The option only applies when a directory is 
uploaded.  For individual files, GNU libextractor is always used (you will have 
a chance to edit the extracted metadata in a dialog).</property>
-                            <property name="response_id">0</property>
-                            <property name="active">True</property>
-                            <property name="draw_indicator">True</property>
                             <child>
-                              <widget class="GtkAlignment" id="alignment24">
+                              <widget class="GtkAlignment" id="alignment15">
                                 <property name="visible">True</property>
                                 <property name="xscale">0</property>
                                 <property name="yscale">0</property>
                                 <child>
-                                  <widget class="GtkHBox" id="hbox66">
+                                  <widget class="GtkHBox" id="hbox52">
                                     <property name="visible">True</property>
                                     <property name="spacing">2</property>
                                     <child>
-                                      <widget class="GtkImage" id="image49">
+                                      <widget class="GtkImage" id="image40">
                                         <property 
name="visible">True</property>
                                         <property 
name="stock">gtk-index</property>
                                       </widget>
@@ -1699,9 +1629,9 @@
                                       </packing>
                                     </child>
                                     <child>
-                                      <widget class="GtkLabel" id="label151">
+                                      <widget class="GtkLabel" id="label128">
                                         <property 
name="visible">True</property>
-                                        <property name="label" 
translatable="yes">Use libextractor for files in directories</property>
+                                        <property name="label" 
translatable="yes">Add keywords for files in directories</property>
                                         <property 
name="use_underline">True</property>
                                       </widget>
                                       <packing>
@@ -1718,12 +1648,113 @@
                           <packing>
                             <property name="left_attach">2</property>
                             <property name="right_attach">3</property>
-                            <property name="top_attach">3</property>
-                            <property name="bottom_attach">4</property>
+                            <property name="top_attach">2</property>
+                            <property name="bottom_attach">3</property>
                             <property name="x_options">GTK_FILL</property>
                             <property name="y_options"></property>
                           </packing>
                         </child>
+                        <child>
+                          <widget class="GtkRadioButton" 
id="scopeRecursiveButton">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="tooltip" 
translatable="yes">Recursively publish an entire directory tree</property>
+                            <property name="label" 
translatable="yes">_Recursive (for entire directories)</property>
+                            <property name="use_underline">True</property>
+                            <property name="response_id">0</property>
+                            <property name="draw_indicator">True</property>
+                          </widget>
+                          <packing>
+                            <property name="left_attach">2</property>
+                            <property name="right_attach">3</property>
+                            <property name="top_attach">1</property>
+                            <property name="bottom_attach">2</property>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
+                        <child>
+                          <widget class="GtkLabel" id="anonymityUploadLabel">
+                            <property name="visible">True</property>
+                            <property name="xalign">0</property>
+                            <property name="xpad">5</property>
+                            <property name="label" 
translatable="yes">_Anonymity:</property>
+                            <property name="use_underline">True</property>
+                            <property 
name="mnemonic_widget">uploadAnonymityLevelSpinButton</property>
+                          </widget>
+                          <packing>
+                            <property name="top_attach">2</property>
+                            <property name="bottom_attach">3</property>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
+                        <child>
+                          <widget class="GtkLabel" id="scopeLabel">
+                            <property name="visible">True</property>
+                            <property name="xalign">0</property>
+                            <property name="xpad">5</property>
+                            <property name="label" 
translatable="yes">Scope:</property>
+                            <property name="use_underline">True</property>
+                            <property 
name="mnemonic_widget">scopeFileOnlyButton</property>
+                          </widget>
+                          <packing>
+                            <property name="top_attach">1</property>
+                            <property name="bottom_attach">2</property>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
+                        <child>
+                          <widget class="GtkRadioButton" id="insertButton">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="tooltip" 
translatable="yes">Inserting a file means that an encrypted copy will be added 
to the GNUnet database.  Without the proper key (which is not stored in 
plaintext anywhere) the file cannot be decrypted.  Use this option for small 
files, files that will be modified soon, files that maybe moved or if you are 
afraid that an adversary may detect the file in plaintext on your machine 
(after compromising your machine).</property>
+                            <property name="label" 
translatable="yes">I_nsert</property>
+                            <property name="use_underline">True</property>
+                            <property name="response_id">0</property>
+                            <property name="draw_indicator">True</property>
+                            <property name="group">indexbutton</property>
+                          </widget>
+                          <packing>
+                            <property name="left_attach">2</property>
+                            <property name="right_attach">3</property>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
+                        <child>
+                          <widget class="GtkRadioButton" id="indexbutton">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="tooltip" 
translatable="yes">Indexing will avoid copying the file into the GNUnet 
database.  Instead, GNUnet will try to add a symbolic link to the specified 
file.  If that fails, a copy of the file will be created.  Indexing should be 
used if the local machine is unlikely to ever be compromised by an adversary 
and if the uploaded file will not be modified or moved in the future.  Indexing 
is more efficient than insertion.</property>
+                            <property name="label" 
translatable="yes">Inde_x</property>
+                            <property name="use_underline">True</property>
+                            <property name="response_id">0</property>
+                            <property name="active">True</property>
+                            <property name="draw_indicator">True</property>
+                          </widget>
+                          <packing>
+                            <property name="left_attach">1</property>
+                            <property name="right_attach">2</property>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
+                        <child>
+                          <widget class="GtkLabel" id="methodLabel">
+                            <property name="visible">True</property>
+                            <property name="xalign">0</property>
+                            <property name="xpad">5</property>
+                            <property name="label" 
translatable="yes">Method:</property>
+                            <property name="use_underline">True</property>
+                            <property 
name="mnemonic_widget">indexbutton</property>
+                          </widget>
+                          <packing>
+                            <property name="x_options">GTK_FILL</property>
+                            <property name="y_options"></property>
+                          </packing>
+                        </child>
                       </widget>
                     </child>
                   </widget>
@@ -2117,6 +2148,51 @@
                       <placeholder/>
                     </child>
                     <child>
+                      <widget class="GtkLabel" id="label1">
+                        <property name="visible">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | 
GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | 
GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="label" translatable="yes">_Room 
Name</property>
+                        <property name="use_underline">True</property>
+                        <property 
name="mnemonic_widget">chatRoomNameEntry</property>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkLabel" id="label4">
+                        <property name="visible">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | 
GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | 
GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="label" 
translatable="yes">_Moniker</property>
+                        <property name="use_underline">True</property>
+                      </widget>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <widget class="GtkEntry" id="chatRoomNameEntry">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | 
GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | 
GDK_BUTTON_RELEASE_MASK</property>
+                      </widget>
+                      <packing>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <widget class="GtkEntry" id="chatRoomMonikerEntry">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | 
GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | 
GDK_BUTTON_RELEASE_MASK</property>
+                      </widget>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                      </packing>
+                    </child>
+                    <child>
                       <widget class="GtkButton" id="on_chat_room_name_button">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
@@ -2162,51 +2238,6 @@
                         <property name="y_options"></property>
                       </packing>
                     </child>
-                    <child>
-                      <widget class="GtkEntry" id="chatRoomMonikerEntry">
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | 
GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | 
GDK_BUTTON_RELEASE_MASK</property>
-                      </widget>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkEntry" id="chatRoomNameEntry">
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | 
GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | 
GDK_BUTTON_RELEASE_MASK</property>
-                      </widget>
-                      <packing>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkLabel" id="label4">
-                        <property name="visible">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | 
GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | 
GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="label" 
translatable="yes">_Moniker</property>
-                        <property name="use_underline">True</property>
-                      </widget>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkLabel" id="label1">
-                        <property name="visible">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | 
GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | 
GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="label" translatable="yes">_Room 
Name</property>
-                        <property name="use_underline">True</property>
-                        <property 
name="mnemonic_widget">chatRoomNameEntry</property>
-                      </widget>
-                    </child>
                   </widget>
                   <packing>
                     <property name="expand">False</property>
@@ -2878,8 +2909,8 @@
                 <property name="response_id">-5</property>
                 <signal name="clicked" handler="gtk_widget_destroy" 
object="metaDisplayDialog"/>
                 <signal name="activate" handler="gtk_widget_destroy" 
object="metaDisplayDialog"/>
+                <accelerator key="Return" modifiers="" signal="activate"/>
                 <accelerator key="Escape" modifiers="" signal="activate"/>
-                <accelerator key="Return" modifiers="" signal="activate"/>
               </widget>
             </child>
           </widget>
@@ -5062,9 +5093,9 @@
     <property name="modal">True</property>
     <property name="icon_name">gtk-save-as</property>
     <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
-    <property name="do_overwrite_confirmation">True</property>
     <property name="show_hidden">True</property>
     <property name="action">GTK_FILE_CHOOSER_ACTION_SAVE</property>
+    <property name="do_overwrite_confirmation">True</property>
     <child internal-child="vbox">
       <widget class="GtkVBox" id="dialog-vbox7">
         <property name="visible">True</property>





reply via email to

[Prev in Thread] Current Thread [Next in Thread]