]> matita.cs.unibo.it Git - helm.git/commitdiff
First release that compiles under lablgtk2 (but it does not work, actually!)
authorClaudio Sacerdoti Coen <claudio.sacerdoticoen@unibo.it>
Thu, 6 Nov 2003 16:56:53 +0000 (16:56 +0000)
committerClaudio Sacerdoti Coen <claudio.sacerdoticoen@unibo.it>
Thu, 6 Nov 2003 16:56:53 +0000 (16:56 +0000)
helm/hbugs/client/Makefile
helm/hbugs/client/hbugs_client.ml
helm/hbugs/client/hbugs_gui.glade

index 19491ded7ec174af636dd9be416be9e0ce2911ed..5cb7c6c6d884c9144b9e3af1c37a868572aa58d8 100644 (file)
@@ -1,6 +1,6 @@
 NAME = hbugs_client
 METADIR = ../meta
-REQUIRES = lablgtk threads hbugs-common
+REQUIRES = lablgtk2 threads hbugs-common
 PREDICATES = glade init
 COMMONOPTS = -package "$(REQUIRES)" -predicates "$(PREDICATES)"
 OCAMLC = OCAMLPATH="$(METADIR)" ocamlfind ocamlc $(COMMONOPTS)
@@ -16,7 +16,7 @@ byte: $(NAME)
 opt: $(NAME).opt
 
 hbugs_client_gui.ml: hbugs_gui.glade
-       lablgladecc $< > $@
+       lablgladecc2 $< > $@
 hbugs_client_gui.cmo: hbugs_client_gui.ml
        $(OCAMLC) -c $<
 hbugs_client_gui.cmx: hbugs_client_gui.ml
index 1cab49c7609e361e7de3c52c9e498d941eafc443..f15a6357b470fbbd1a1bf6742e34558d4903a7a8 100644 (file)
@@ -133,6 +133,7 @@ class hbugsClient
           subscribeWindow#subscribeWindow#show ()));
 
         (* GUI: hints list *)
+(*CSC: per farlo compilare
       ignore (mainWindow#hintsCList#connect#select_row
         (fun ~row ~column ~event ->
           match event with
@@ -141,6 +142,7 @@ class hbugsClient
           | Some event ->
               describe_hint_callback (self#hint row)
           | _ -> ()));
+*)
 
         (* GUI: main status bar *)
       let ctxt = mainWindow#mainWindowStatusBar#new_context "0" in
@@ -151,7 +153,8 @@ class hbugsClient
       ignore (subscribeWindow#subscribeWindow#event#connect#delete
         (fun _ -> subscribeWindow#subscribeWindow#misc#hide (); true));
       ignore (subscribeWindow#listTutorsButton#connect#clicked self#listTutors);
-      let tutor_id_of_row row = subscribeWindow#tutorsCList#cell_text row 0 in
+      let tutor_id_of_row row = (*CSC: per farlo compilare subscribeWindow#tutorsCList#cell_text row 0*) "Kaboom" in
+(*CSC: per farlo compilare
       ignore (subscribeWindow#tutorsCList#connect#select_row
         (fun ~row ~column ~event ->
           let new_id = tutor_id_of_row row in
@@ -162,11 +165,12 @@ class hbugsClient
         (fun ~row ~column ~event ->
           selectedTutors <-
             List.filter ((<>) (tutor_id_of_row row)) selectedTutors));
+*)
       ignore (subscribeWindow#subscribeButton#connect#clicked
         self#subscribeSelected);
       ignore (subscribeWindow#subscribeAllButton#connect#clicked
         self#subscribeAll);
-      subscribeWindow#tutorsCList#set_column ~visibility:false 0;
+      (subscribeWindow#tutorsCList#get_column 0)#set_visible false;
       let ctxt = subscribeWindow#subscribeWindowStatusBar#new_context "0" in
       subscribeWindowStatusContext <- Some ctxt;
       ignore (ctxt#push "Ready");
@@ -248,7 +252,8 @@ Error: %s"
                 List.iter
                   (fun h ->
                     (match h with Hints _ -> assert false | _ -> ());
-                    ignore (mainWindow#hintsCList#append [string_of_hint h]))
+(*CSC: per farlo compilare
+                    ignore (mainWindow#hintsCList#append [string_of_hint h])*))
                   received_hints;
                 hints <- hints @ received_hints;
                 Hbugs_messages.respond_msg (Wow myOwnId) outchan
@@ -336,7 +341,9 @@ Error: %s"
 *)
 
     method stateChange new_state =
+(*CSC: per farlo compilare
       mainWindow#hintsCList#clear ();
+*)
       hints <- [];
       self#sendReq
         ~msg:(State_change (myOwnId, new_state))
@@ -358,10 +365,12 @@ Error: %s"
               availableTutors <-  (* sort accordingly to tutor description *)
                 List.sort (fun (a,b) (c,d) -> compare (b,a) (d,c)) descriptions;
               selectedTutors <- [];
+(*CSC: per farlo compilare
               subscribeWindow#tutorsCList#clear ();
+*)
               List.iter
                 (fun (id, dsc) ->
-                  ignore (subscribeWindow#tutorsCList#append [id; dsc]))
+                  (*CSC: per farlo compilare ignore (subscribeWindow#tutorsCList#append [id; dsc])*)())
                 availableTutors
           | unexpected_msg ->
               self#showDialog
@@ -374,14 +383,17 @@ Error: %s"
         (function
           | (Subscribed (_, subscribedTutors)) as msg ->
               let sort = List.sort compare in
+(*CSC: per farlo compilare
               mainWindow#subscriptionCList#clear ();
+*)
               List.iter
                 (fun tutor_id ->
+(*CSC: per farlo compilare
                   ignore
                     (mainWindow#subscriptionCList#append
                       [ try
                           List.assoc tutor_id availableTutors;
-                        with Not_found -> assert false ]))
+                        with Not_found -> assert false ])*)())
                 tutors_id;
               subscribeWindow#subscribeWindow#misc#hide ();
               if sort subscribedTutors <> sort tutors_id then
@@ -389,7 +401,9 @@ Error: %s"
                   (sprintf "Subscription mismatch\n: %s"
                     (Hbugs_messages.string_of_msg msg))
           | unexpected_msg ->
+(*CSC: per farlo compilare
               mainWindow#subscriptionCList#clear ();
+*)
               self#showDialog
                 (sprintf "Subscription FAILED, unexpected message:\n%s"
                   (Hbugs_messages.string_of_msg unexpected_msg)))
index 46b78c2e1d65ff4fa7247c2cc9dc2bbe15dce758..f88a8c3882c1b12d5cecb05fb6a17990b107d275 100644 (file)
-<?xml version="1.0"?>
-<GTK-Interface>
-
-<project>
-  <name>hbugs_gui</name>
-  <program_name>hbugs_gui</program_name>
-  <directory></directory>
-  <source_directory>src</source_directory>
-  <pixmaps_directory>pixmaps</pixmaps_directory>
-  <language>C</language>
-  <gnome_support>False</gnome_support>
-  <gettext_support>False</gettext_support>
-</project>
-
-<widget>
-  <class>GtkWindow</class>
-  <name>hbugsMainWindow</name>
-  <visible>False</visible>
-  <title>Hbugs: your personal proof trainer!</title>
-  <type>GTK_WINDOW_TOPLEVEL</type>
-  <position>GTK_WIN_POS_NONE</position>
-  <modal>False</modal>
-  <allow_shrink>False</allow_shrink>
-  <allow_grow>True</allow_grow>
-  <auto_shrink>False</auto_shrink>
-
-  <widget>
-    <class>GtkVBox</class>
-    <name>vbox1</name>
-    <homogeneous>False</homogeneous>
-    <spacing>0</spacing>
-
-    <widget>
-      <class>GtkMenuBar</class>
-      <name>menubar</name>
-      <visible>False</visible>
-      <shadow_type>GTK_SHADOW_OUT</shadow_type>
+<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
+<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
+
+<glade-interface>
+<requires lib="gnome"/>
+
+<widget class="GtkWindow" id="hbugsMainWindow">
+  <property name="title" translatable="yes">Hbugs: your personal proof trainer!</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_NONE</property>
+  <property name="modal">False</property>
+  <property name="resizable">True</property>
+  <property name="destroy_with_parent">False</property>
+
+  <child>
+    <widget class="GtkVBox" id="vbox1">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">0</property>
+
       <child>
-       <padding>0</padding>
-       <expand>False</expand>
-       <fill>False</fill>
-      </child>
+       <widget class="GtkMenuBar" id="menubar">
 
-      <widget>
-       <class>GtkMenuItem</class>
-       <name>toolsMenu</name>
-       <label>Tools</label>
-       <right_justify>False</right_justify>
-
-       <widget>
-         <class>GtkMenu</class>
-         <name>toolsMenu_menu</name>
-
-         <widget>
-           <class>GtkCheckMenuItem</class>
-           <name>toggleDebuggingMenuItem</name>
-           <label>Debugging</label>
-           <active>False</active>
-           <always_show_toggle>True</always_show_toggle>
-         </widget>
+         <child>
+           <widget class="GtkMenuItem" id="toolsMenu">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes">Tools</property>
+             <property name="use_underline">True</property>
+
+             <child>
+               <widget class="GtkMenu" id="toolsMenu_menu">
+                 <property name="visible">True</property>
+
+                 <child>
+                   <widget class="GtkCheckMenuItem" id="toggleDebuggingMenuItem">
+                     <property name="visible">True</property>
+                     <property name="label" translatable="yes">Debugging</property>
+                     <property name="use_underline">True</property>
+                     <property name="active">False</property>
+                   </widget>
+                 </child>
+               </widget>
+             </child>
+           </widget>
+         </child>
        </widget>
-      </widget>
-    </widget>
-
-    <widget>
-      <class>GtkHBox</class>
-      <name>hbox4</name>
-      <homogeneous>False</homogeneous>
-      <spacing>2</spacing>
-      <child>
-       <padding>0</padding>
-       <expand>False</expand>
-       <fill>False</fill>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">False</property>
+       </packing>
       </child>
 
-      <widget>
-       <class>GtkLabel</class>
-       <name>label11</name>
-       <label>My URL:</label>
-       <justify>GTK_JUSTIFY_CENTER</justify>
-       <wrap>False</wrap>
-       <xalign>0.5</xalign>
-       <yalign>0.5</yalign>
-       <xpad>0</xpad>
-       <ypad>0</ypad>
-       <child>
-         <padding>0</padding>
-         <expand>False</expand>
-         <fill>False</fill>
-       </child>
-      </widget>
-
-      <widget>
-       <class>GtkEntry</class>
-       <name>clientUrlEntry</name>
-       <tooltip>Local HTTP daemon URL</tooltip>
-       <can_focus>True</can_focus>
-       <editable>False</editable>
-       <text_visible>True</text_visible>
-       <text_max_length>0</text_max_length>
-       <text></text>
-       <child>
-         <padding>0</padding>
-         <expand>True</expand>
-         <fill>True</fill>
-       </child>
-      </widget>
-
-      <widget>
-       <class>GtkButton</class>
-       <name>startLocalHttpDaemonButton</name>
-       <tooltip>Start the local HTTP daemon listening on the specified URL</tooltip>
-       <can_focus>True</can_focus>
-       <label>Start!</label>
-       <relief>GTK_RELIEF_NORMAL</relief>
-       <child>
-         <padding>0</padding>
-         <expand>False</expand>
-         <fill>False</fill>
-       </child>
-      </widget>
-
-      <widget>
-       <class>GtkButton</class>
-       <name>testLocalHttpDaemonButton</name>
-       <can_focus>True</can_focus>
-       <label>Test!</label>
-       <relief>GTK_RELIEF_NORMAL</relief>
-       <child>
-         <padding>0</padding>
-         <expand>False</expand>
-         <fill>False</fill>
-       </child>
-      </widget>
-    </widget>
-
-    <widget>
-      <class>GtkVBox</class>
-      <name>vbox4</name>
-      <homogeneous>False</homogeneous>
-      <spacing>0</spacing>
       <child>
-       <padding>0</padding>
-       <expand>False</expand>
-       <fill>True</fill>
-      </child>
+       <widget class="GtkHBox" id="hbox4">
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">2</property>
 
-      <widget>
-       <class>GtkHBox</class>
-       <name>hbox1</name>
-       <homogeneous>False</homogeneous>
-       <spacing>2</spacing>
-       <child>
-         <padding>0</padding>
-         <expand>False</expand>
-         <fill>False</fill>
-       </child>
-
-       <widget>
-         <class>GtkLabel</class>
-         <name>label1</name>
-         <label>Broker:</label>
-         <justify>GTK_JUSTIFY_CENTER</justify>
-         <wrap>False</wrap>
-         <xalign>0.5</xalign>
-         <yalign>0.5</yalign>
-         <xpad>0</xpad>
-         <ypad>0</ypad>
          <child>
-           <padding>0</padding>
-           <expand>False</expand>
-           <fill>False</fill>
+           <widget class="GtkLabel" id="label11">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes">My URL:</property>
+             <property name="use_underline">False</property>
+             <property name="use_markup">False</property>
+             <property name="justify">GTK_JUSTIFY_CENTER</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>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
          </child>
-       </widget>
 
-       <widget>
-         <class>GtkEntry</class>
-         <name>brokerUrlEntry</name>
-         <tooltip>HBugs broker URL</tooltip>
-         <can_focus>True</can_focus>
-         <editable>False</editable>
-         <text_visible>True</text_visible>
-         <text_max_length>0</text_max_length>
-         <text></text>
          <child>
-           <padding>0</padding>
-           <expand>True</expand>
-           <fill>True</fill>
+           <widget class="GtkEntry" id="clientUrlEntry">
+             <property name="visible">True</property>
+             <property name="tooltip" translatable="yes">Local HTTP daemon URL</property>
+             <property name="can_focus">True</property>
+             <property name="editable">False</property>
+             <property name="visibility">True</property>
+             <property name="max_length">0</property>
+             <property name="text" translatable="yes"></property>
+             <property name="has_frame">True</property>
+             <property name="invisible_char" translatable="yes">*</property>
+             <property name="activates_default">False</property>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
          </child>
-       </widget>
 
-       <widget>
-         <class>GtkButton</class>
-         <name>testBrokerButton</name>
-         <can_focus>True</can_focus>
-         <label>Test!</label>
-         <relief>GTK_RELIEF_NORMAL</relief>
          <child>
-           <padding>0</padding>
-           <expand>False</expand>
-           <fill>False</fill>
+           <widget class="GtkButton" id="startLocalHttpDaemonButton">
+             <property name="visible">True</property>
+             <property name="tooltip" translatable="yes">Start the local HTTP daemon listening on the specified URL</property>
+             <property name="can_focus">True</property>
+             <property name="label" translatable="yes">Start!</property>
+             <property name="use_underline">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
          </child>
-       </widget>
-      </widget>
-
-      <widget>
-       <class>GtkHBox</class>
-       <name>hbox2</name>
-       <homogeneous>False</homogeneous>
-       <spacing>2</spacing>
-       <child>
-         <padding>0</padding>
-         <expand>False</expand>
-         <fill>False</fill>
-       </child>
-
-       <widget>
-         <class>GtkLabel</class>
-         <name>label2</name>
-         <visible>False</visible>
-         <label>Client ID:</label>
-         <justify>GTK_JUSTIFY_CENTER</justify>
-         <wrap>False</wrap>
-         <xalign>0.5</xalign>
-         <yalign>0.5</yalign>
-         <xpad>0</xpad>
-         <ypad>0</ypad>
+
          <child>
-           <padding>0</padding>
-           <expand>False</expand>
-           <fill>False</fill>
+           <widget class="GtkButton" id="testLocalHttpDaemonButton">
+             <property name="visible">True</property>
+             <property name="can_focus">True</property>
+             <property name="label" translatable="yes">Test!</property>
+             <property name="use_underline">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
          </child>
        </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">False</property>
+       </packing>
+      </child>
+
+      <child>
+       <widget class="GtkVBox" id="vbox4">
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">0</property>
 
-       <widget>
-         <class>GtkLabel</class>
-         <name>clientIdLabel</name>
-         <visible>False</visible>
-         <label></label>
-         <justify>GTK_JUSTIFY_LEFT</justify>
-         <wrap>False</wrap>
-         <xalign>0.5</xalign>
-         <yalign>0.5</yalign>
-         <xpad>0</xpad>
-         <ypad>0</ypad>
          <child>
-           <padding>0</padding>
-           <expand>True</expand>
-           <fill>True</fill>
+           <widget class="GtkHBox" id="hbox1">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">2</property>
+
+             <child>
+               <widget class="GtkLabel" id="label1">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">Broker:</property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">False</property>
+                 <property name="justify">GTK_JUSTIFY_CENTER</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>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkEntry" id="brokerUrlEntry">
+                 <property name="visible">True</property>
+                 <property name="tooltip" translatable="yes">HBugs broker URL</property>
+                 <property name="can_focus">True</property>
+                 <property name="editable">False</property>
+                 <property name="visibility">True</property>
+                 <property name="max_length">0</property>
+                 <property name="text" translatable="yes"></property>
+                 <property name="has_frame">True</property>
+                 <property name="invisible_char" translatable="yes">*</property>
+                 <property name="activates_default">False</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkButton" id="testBrokerButton">
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="label" translatable="yes">Test!</property>
+                 <property name="use_underline">True</property>
+                 <property name="relief">GTK_RELIEF_NORMAL</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
          </child>
-       </widget>
 
-       <widget>
-         <class>GtkButton</class>
-         <name>registerClientButton</name>
-         <can_focus>True</can_focus>
-         <label>(Re)Register</label>
-         <relief>GTK_RELIEF_NORMAL</relief>
          <child>
-           <padding>0</padding>
-           <expand>False</expand>
-           <fill>False</fill>
+           <widget class="GtkHBox" id="hbox2">
+             <property name="visible">True</property>
+             <property name="homogeneous">False</property>
+             <property name="spacing">2</property>
+
+             <child>
+               <widget class="GtkLabel" id="label2">
+                 <property name="label" translatable="yes">Client ID:</property>
+                 <property name="use_underline">False</property>
+                 <property name="use_markup">False</property>
+                 <property name="justify">GTK_JUSTIFY_CENTER</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>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkLabel" id="clientIdLabel">
+                 <property name="label" translatable="yes"></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>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">True</property>
+                 <property name="fill">True</property>
+               </packing>
+             </child>
+
+             <child>
+               <widget class="GtkButton" id="registerClientButton">
+                 <property name="visible">True</property>
+                 <property name="can_focus">True</property>
+                 <property name="label" translatable="yes">(Re)Register</property>
+                 <property name="use_underline">True</property>
+                 <property name="relief">GTK_RELIEF_NORMAL</property>
+               </widget>
+               <packing>
+                 <property name="padding">0</property>
+                 <property name="expand">False</property>
+                 <property name="fill">False</property>
+               </packing>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
          </child>
        </widget>
-      </widget>
-    </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
 
-    <widget>
-      <class>GtkVPaned</class>
-      <name>vpaned1</name>
-      <handle_size>10</handle_size>
-      <gutter_size>6</gutter_size>
-      <position>0</position>
       <child>
-       <padding>0</padding>
-       <expand>True</expand>
-       <fill>True</fill>
-      </child>
+       <widget class="GtkVPaned" id="vpaned1">
+         <property name="visible">True</property>
+         <property name="position">0</property>
 
-      <widget>
-       <class>GtkFrame</class>
-       <name>frame3</name>
-       <border_width>4</border_width>
-       <label>Subscriptions</label>
-       <label_xalign>0</label_xalign>
-       <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
-       <child>
-         <shrink>False</shrink>
-         <resize>False</resize>
-       </child>
-
-       <widget>
-         <class>GtkHBox</class>
-         <name>hbox6</name>
-         <homogeneous>False</homogeneous>
-         <spacing>2</spacing>
-
-         <widget>
-           <class>GtkScrolledWindow</class>
-           <name>scrolledwindow3</name>
-           <hscrollbar_policy>GTK_POLICY_ALWAYS</hscrollbar_policy>
-           <vscrollbar_policy>GTK_POLICY_ALWAYS</vscrollbar_policy>
-           <hupdate_policy>GTK_UPDATE_CONTINUOUS</hupdate_policy>
-           <vupdate_policy>GTK_UPDATE_CONTINUOUS</vupdate_policy>
-           <child>
-             <padding>0</padding>
-             <expand>True</expand>
-             <fill>True</fill>
-           </child>
-
-           <widget>
-             <class>GtkCList</class>
-             <name>subscriptionCList</name>
-             <can_focus>True</can_focus>
-             <columns>1</columns>
-             <column_widths>80</column_widths>
-             <selection_mode>GTK_SELECTION_SINGLE</selection_mode>
-             <show_titles>False</show_titles>
-             <shadow_type>GTK_SHADOW_IN</shadow_type>
-
-             <widget>
-               <class>GtkLabel</class>
-               <child_name>CList:title</child_name>
-               <name>label7</name>
-               <label>label7</label>
-               <justify>GTK_JUSTIFY_CENTER</justify>
-               <wrap>False</wrap>
-               <xalign>0.5</xalign>
-               <yalign>0.5</yalign>
-               <xpad>0</xpad>
-               <ypad>0</ypad>
-             </widget>
-           </widget>
-         </widget>
-
-         <widget>
-           <class>GtkFixed</class>
-           <name>fixed1</name>
-           <child>
-             <padding>0</padding>
-             <expand>False</expand>
-             <fill>False</fill>
-           </child>
-
-           <widget>
-             <class>GtkButton</class>
-             <name>showSubscriptionWindowButton</name>
-             <x>0</x>
-             <y>0</y>
-             <width>0</width>
-             <height>0</height>
-             <can_focus>True</can_focus>
-             <label>Subscribe ...</label>
-             <relief>GTK_RELIEF_NORMAL</relief>
+         <child>
+           <widget class="GtkFrame" id="frame3">
+             <property name="border_width">4</property>
+             <property name="visible">True</property>
+             <property name="label_xalign">0</property>
+             <property name="label_yalign">0.5</property>
+             <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
+
+             <child>
+               <widget class="GtkHBox" id="hbox6">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">2</property>
+
+                 <child>
+                   <widget class="GtkScrolledWindow" id="scrolledwindow3">
+                     <property name="visible">True</property>
+                     <property name="hscrollbar_policy">GTK_POLICY_ALWAYS</property>
+                     <property name="vscrollbar_policy">GTK_POLICY_ALWAYS</property>
+                     <property name="shadow_type">GTK_SHADOW_IN</property>
+                     <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+                     <child>
+                       <widget class="GtkTreeView" id="subscriptionCList">
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="headers_visible">True</property>
+                         <property name="rules_hint">False</property>
+                         <property name="reorderable">False</property>
+                         <property name="enable_search">True</property>
+                       </widget>
+                     </child>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">True</property>
+                     <property name="fill">True</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkFixed" id="fixed1">
+                     <property name="visible">True</property>
+
+                     <child>
+                       <widget class="GtkButton" id="showSubscriptionWindowButton">
+                         <property name="width_request">0</property>
+                         <property name="height_request">0</property>
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="label" translatable="yes">Subscribe ...</property>
+                         <property name="use_underline">True</property>
+                         <property name="relief">GTK_RELIEF_NORMAL</property>
+                       </widget>
+                       <packing>
+                         <property name="x">0</property>
+                         <property name="y">0</property>
+                       </packing>
+                     </child>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+               </widget>
+             </child>
+
+             <child>
+               <widget class="GtkLabel" id="label12">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">Subscriptions</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>
+               </widget>
+               <packing>
+                 <property name="type">label_item</property>
+               </packing>
+             </child>
            </widget>
-         </widget>
-       </widget>
-      </widget>
-
-      <widget>
-       <class>GtkFrame</class>
-       <name>frame2</name>
-       <border_width>4</border_width>
-       <height>250</height>
-       <label>Hints</label>
-       <label_xalign>0</label_xalign>
-       <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
-       <child>
-         <shrink>True</shrink>
-         <resize>True</resize>
-       </child>
-
-       <widget>
-         <class>GtkVBox</class>
-         <name>vbox6</name>
-         <homogeneous>False</homogeneous>
-         <spacing>0</spacing>
-
-         <widget>
-           <class>GtkScrolledWindow</class>
-           <name>scrolledwindow2</name>
-           <width>400</width>
-           <hscrollbar_policy>GTK_POLICY_ALWAYS</hscrollbar_policy>
-           <vscrollbar_policy>GTK_POLICY_ALWAYS</vscrollbar_policy>
-           <hupdate_policy>GTK_UPDATE_CONTINUOUS</hupdate_policy>
-           <vupdate_policy>GTK_UPDATE_CONTINUOUS</vupdate_policy>
-           <child>
-             <padding>0</padding>
-             <expand>True</expand>
-             <fill>True</fill>
-           </child>
-
-           <widget>
-             <class>GtkCList</class>
-             <name>hintsCList</name>
-             <can_focus>True</can_focus>
-             <columns>1</columns>
-             <column_widths>80</column_widths>
-             <selection_mode>GTK_SELECTION_SINGLE</selection_mode>
-             <show_titles>False</show_titles>
-             <shadow_type>GTK_SHADOW_IN</shadow_type>
-
-             <widget>
-               <class>GtkLabel</class>
-               <child_name>CList:title</child_name>
-               <name>label6</name>
-               <label>label6</label>
-               <justify>GTK_JUSTIFY_CENTER</justify>
-               <wrap>False</wrap>
-               <xalign>0.5</xalign>
-               <yalign>0.5</yalign>
-               <xpad>0</xpad>
-               <ypad>0</ypad>
-             </widget>
+           <packing>
+             <property name="shrink">False</property>
+             <property name="resize">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkFrame" id="frame2">
+             <property name="border_width">4</property>
+             <property name="visible">True</property>
+             <property name="label_xalign">0</property>
+             <property name="label_yalign">0.5</property>
+             <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
+
+             <child>
+               <widget class="GtkVBox" id="vbox6">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">0</property>
+
+                 <child>
+                   <widget class="GtkScrolledWindow" id="scrolledwindow2">
+                     <property name="visible">True</property>
+                     <property name="hscrollbar_policy">GTK_POLICY_ALWAYS</property>
+                     <property name="vscrollbar_policy">GTK_POLICY_ALWAYS</property>
+                     <property name="shadow_type">GTK_SHADOW_IN</property>
+                     <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+                     <child>
+                       <widget class="GtkTreeView" id="hintsCList">
+                         <property name="visible">True</property>
+                         <property name="can_focus">True</property>
+                         <property name="headers_visible">True</property>
+                         <property name="rules_hint">False</property>
+                         <property name="reorderable">False</property>
+                         <property name="enable_search">True</property>
+                       </widget>
+                     </child>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">True</property>
+                     <property name="fill">True</property>
+                   </packing>
+                 </child>
+               </widget>
+             </child>
+
+             <child>
+               <widget class="GtkLabel" id="label13">
+                 <property name="visible">True</property>
+                 <property name="label" translatable="yes">Hints</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>
+               </widget>
+               <packing>
+                 <property name="type">label_item</property>
+               </packing>
+             </child>
            </widget>
-         </widget>
+           <packing>
+             <property name="shrink">True</property>
+             <property name="resize">True</property>
+           </packing>
+         </child>
        </widget>
-      </widget>
-    </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
 
-    <widget>
-      <class>GtkStatusbar</class>
-      <name>mainWindowStatusBar</name>
-      <visible>False</visible>
       <child>
-       <padding>0</padding>
-       <expand>False</expand>
-       <fill>False</fill>
+       <widget class="GtkStatusbar" id="mainWindowStatusBar">
+         <property name="has_resize_grip">True</property>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">False</property>
+       </packing>
       </child>
     </widget>
-  </widget>
+  </child>
 </widget>
 
-<widget>
-  <class>GtkWindow</class>
-  <name>subscribeWindow</name>
-  <visible>False</visible>
-  <title>Hbugs: subscribe ...</title>
-  <type>GTK_WINDOW_TOPLEVEL</type>
-  <position>GTK_WIN_POS_NONE</position>
-  <modal>False</modal>
-  <allow_shrink>False</allow_shrink>
-  <allow_grow>True</allow_grow>
-  <auto_shrink>False</auto_shrink>
-
-  <widget>
-    <class>GtkVBox</class>
-    <name>vbox8</name>
-    <homogeneous>False</homogeneous>
-    <spacing>0</spacing>
-
-    <widget>
-      <class>GtkButton</class>
-      <name>listTutorsButton</name>
-      <can_focus>True</can_focus>
-      <label>Refresh</label>
-      <relief>GTK_RELIEF_NORMAL</relief>
-      <child>
-       <padding>0</padding>
-       <expand>False</expand>
-       <fill>False</fill>
-      </child>
-    </widget>
+<widget class="GtkWindow" id="subscribeWindow">
+  <property name="title" translatable="yes">Hbugs: subscribe ...</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_NONE</property>
+  <property name="modal">False</property>
+  <property name="resizable">True</property>
+  <property name="destroy_with_parent">False</property>
+
+  <child>
+    <widget class="GtkVBox" id="vbox8">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">0</property>
 
-    <widget>
-      <class>GtkScrolledWindow</class>
-      <name>scrolledwindow4</name>
-      <hscrollbar_policy>GTK_POLICY_ALWAYS</hscrollbar_policy>
-      <vscrollbar_policy>GTK_POLICY_ALWAYS</vscrollbar_policy>
-      <hupdate_policy>GTK_UPDATE_CONTINUOUS</hupdate_policy>
-      <vupdate_policy>GTK_UPDATE_CONTINUOUS</vupdate_policy>
       <child>
-       <padding>0</padding>
-       <expand>True</expand>
-       <fill>True</fill>
+       <widget class="GtkButton" id="listTutorsButton">
+         <property name="visible">True</property>
+         <property name="can_focus">True</property>
+         <property name="label" translatable="yes">Refresh</property>
+         <property name="use_underline">True</property>
+         <property name="relief">GTK_RELIEF_NORMAL</property>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">False</property>
+       </packing>
       </child>
 
-      <widget>
-       <class>GtkCList</class>
-       <name>tutorsCList</name>
-       <width>600</width>
-       <height>300</height>
-       <can_focus>True</can_focus>
-       <columns>2</columns>
-       <column_widths>205,80</column_widths>
-       <selection_mode>GTK_SELECTION_EXTENDED</selection_mode>
-       <show_titles>True</show_titles>
-       <shadow_type>GTK_SHADOW_IN</shadow_type>
-
-       <widget>
-         <class>GtkLabel</class>
-         <child_name>CList:title</child_name>
-         <name>label12</name>
-         <label>Id</label>
-         <justify>GTK_JUSTIFY_CENTER</justify>
-         <wrap>False</wrap>
-         <xalign>0.5</xalign>
-         <yalign>0.5</yalign>
-         <xpad>0</xpad>
-         <ypad>0</ypad>
-       </widget>
+      <child>
+       <widget class="GtkScrolledWindow" id="scrolledwindow4">
+         <property name="visible">True</property>
+         <property name="hscrollbar_policy">GTK_POLICY_ALWAYS</property>
+         <property name="vscrollbar_policy">GTK_POLICY_ALWAYS</property>
+         <property name="shadow_type">GTK_SHADOW_IN</property>
+         <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
 
-       <widget>
-         <class>GtkLabel</class>
-         <child_name>CList:title</child_name>
-         <name>label13</name>
-         <label>Description</label>
-         <justify>GTK_JUSTIFY_CENTER</justify>
-         <wrap>False</wrap>
-         <xalign>0.5</xalign>
-         <yalign>0.5</yalign>
-         <xpad>0</xpad>
-         <ypad>0</ypad>
+         <child>
+           <widget class="GtkTreeView" id="tutorsCList">
+             <property name="visible">True</property>
+             <property name="can_focus">True</property>
+             <property name="headers_visible">True</property>
+             <property name="rules_hint">False</property>
+             <property name="reorderable">False</property>
+             <property name="enable_search">True</property>
+           </widget>
+         </child>
        </widget>
-      </widget>
-    </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
 
-    <widget>
-      <class>GtkHBox</class>
-      <name>hbox5</name>
-      <homogeneous>False</homogeneous>
-      <spacing>0</spacing>
       <child>
-       <padding>0</padding>
-       <expand>False</expand>
-       <fill>False</fill>
-      </child>
+       <widget class="GtkHBox" id="hbox5">
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">0</property>
 
-      <widget>
-       <class>GtkButton</class>
-       <name>subscribeButton</name>
-       <can_focus>True</can_focus>
-       <label>Subscribe to Selected</label>
-       <relief>GTK_RELIEF_NORMAL</relief>
-       <child>
-         <padding>0</padding>
-         <expand>True</expand>
-         <fill>True</fill>
-       </child>
-      </widget>
-
-      <widget>
-       <class>GtkButton</class>
-       <name>subscribeAllButton</name>
-       <can_focus>True</can_focus>
-       <label>Subscribe to All</label>
-       <relief>GTK_RELIEF_NORMAL</relief>
-       <child>
-         <padding>0</padding>
-         <expand>True</expand>
-         <fill>True</fill>
-       </child>
-      </widget>
-    </widget>
+         <child>
+           <widget class="GtkButton" id="subscribeButton">
+             <property name="visible">True</property>
+             <property name="can_focus">True</property>
+             <property name="label" translatable="yes">Subscribe to Selected</property>
+             <property name="use_underline">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkButton" id="subscribeAllButton">
+             <property name="visible">True</property>
+             <property name="can_focus">True</property>
+             <property name="label" translatable="yes">Subscribe to All</property>
+             <property name="use_underline">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">False</property>
+       </packing>
+      </child>
 
-    <widget>
-      <class>GtkStatusbar</class>
-      <name>subscribeWindowStatusBar</name>
       <child>
-       <padding>0</padding>
-       <expand>False</expand>
-       <fill>False</fill>
+       <widget class="GtkStatusbar" id="subscribeWindowStatusBar">
+         <property name="visible">True</property>
+         <property name="has_resize_grip">True</property>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">False</property>
+       </packing>
       </child>
     </widget>
-  </widget>
+  </child>
 </widget>
 
-<widget>
-  <class>GtkDialog</class>
-  <name>messageDialog</name>
-  <visible>False</visible>
-  <title>Message</title>
-  <type>GTK_WINDOW_TOPLEVEL</type>
-  <position>GTK_WIN_POS_CENTER</position>
-  <modal>True</modal>
-  <default_width>220</default_width>
-  <default_height>150</default_height>
-  <allow_shrink>True</allow_shrink>
-  <allow_grow>True</allow_grow>
-  <auto_shrink>False</auto_shrink>
-
-  <widget>
-    <class>GtkVBox</class>
-    <child_name>Dialog:vbox</child_name>
-    <name>dialogVbox1</name>
-    <homogeneous>False</homogeneous>
-    <spacing>0</spacing>
-
-    <widget>
-      <class>GtkHBox</class>
-      <child_name>Dialog:action_area</child_name>
-      <name>dialogAction_area1</name>
-      <border_width>2</border_width>
-      <homogeneous>True</homogeneous>
-      <spacing>5</spacing>
-      <child>
-       <padding>0</padding>
-       <expand>False</expand>
-       <fill>True</fill>
-       <pack>GTK_PACK_END</pack>
-      </child>
+<widget class="GtkDialog" id="messageDialog">
+  <property name="title" translatable="yes">Message</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_NONE</property>
+  <property name="modal">True</property>
+  <property name="default_width">220</property>
+  <property name="default_height">150</property>
+  <property name="resizable">True</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="has_separator">True</property>
+
+  <child internal-child="vbox">
+    <widget class="GtkVBox" id="dialogVbox1">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">0</property>
+
+      <child internal-child="action_area">
+       <widget class="GtkHButtonBox" id="dialogAction_area1">
+         <property name="visible">True</property>
+         <property name="layout_style">GTK_BUTTONBOX_END</property>
 
-      <widget>
-       <class>GtkButton</class>
-       <name>okDialogButton</name>
-       <can_focus>True</can_focus>
-       <label>OK</label>
-       <relief>GTK_RELIEF_NORMAL</relief>
-       <child>
-         <padding>0</padding>
-         <expand>False</expand>
-         <fill>True</fill>
-       </child>
-      </widget>
-    </widget>
+         <child>
+           <widget class="GtkButton" id="okDialogButton">
+             <property name="visible">True</property>
+             <property name="can_focus">True</property>
+             <property name="label" translatable="yes">OK</property>
+             <property name="use_underline">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="response_id">0</property>
+           </widget>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">False</property>
+         <property name="fill">True</property>
+         <property name="pack_type">GTK_PACK_END</property>
+       </packing>
+      </child>
 
-    <widget>
-      <class>GtkTable</class>
-      <name>table1</name>
-      <border_width>5</border_width>
-      <rows>1</rows>
-      <columns>1</columns>
-      <homogeneous>False</homogeneous>
-      <row_spacing>0</row_spacing>
-      <column_spacing>0</column_spacing>
       <child>
-       <padding>0</padding>
-       <expand>True</expand>
-       <fill>True</fill>
-      </child>
+       <widget class="GtkTable" id="table1">
+         <property name="border_width">5</property>
+         <property name="visible">True</property>
+         <property name="n_rows">1</property>
+         <property name="n_columns">1</property>
+         <property name="homogeneous">False</property>
+         <property name="row_spacing">0</property>
+         <property name="column_spacing">0</property>
 
-      <widget>
-       <class>GtkLabel</class>
-       <name>dialogLabel</name>
-       <label></label>
-       <justify>GTK_JUSTIFY_CENTER</justify>
-       <wrap>True</wrap>
-       <xalign>0.5</xalign>
-       <yalign>0.5</yalign>
-       <xpad>0</xpad>
-       <ypad>0</ypad>
-       <child>
-         <left_attach>0</left_attach>
-         <right_attach>1</right_attach>
-         <top_attach>0</top_attach>
-         <bottom_attach>1</bottom_attach>
-         <xpad>0</xpad>
-         <ypad>0</ypad>
-         <xexpand>True</xexpand>
-         <yexpand>True</yexpand>
-         <xshrink>False</xshrink>
-         <yshrink>False</yshrink>
-         <xfill>True</xfill>
-         <yfill>True</yfill>
-       </child>
-      </widget>
+         <child>
+           <widget class="GtkLabel" id="dialogLabel">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes"></property>
+             <property name="use_underline">False</property>
+             <property name="use_markup">False</property>
+             <property name="justify">GTK_JUSTIFY_CENTER</property>
+             <property name="wrap">True</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>
+           </widget>
+           <packing>
+             <property name="left_attach">0</property>
+             <property name="right_attach">1</property>
+             <property name="top_attach">0</property>
+             <property name="bottom_attach">1</property>
+           </packing>
+         </child>
+       </widget>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
     </widget>
-  </widget>
+  </child>
 </widget>
 
-</GTK-Interface>
+</glade-interface>