paperbox r93 - in trunk: . src ui



Author: markoa
Date: Sat Jan 19 23:15:47 2008
New Revision: 93
URL: http://svn.gnome.org/viewvc/paperbox?rev=93&view=rev

Log:
Marker around selected tag, dummy category dialog

Added:
   trunk/src/dialog-categories.cc
   trunk/src/dialog-categories.hh
   trunk/src/tag-item.cc
   trunk/src/tag-item.hh
   trunk/ui/dialog-categories.glade
Modified:
   trunk/ChangeLog
   trunk/src/Makefile.am
   trunk/src/document-tile.cc
   trunk/src/main-window.cc
   trunk/src/main-window.hh
   trunk/src/paths.hh
   trunk/src/tag-cloud.cc
   trunk/src/tag-cloud.hh

Modified: trunk/src/Makefile.am
==============================================================================
--- trunk/src/Makefile.am	(original)
+++ trunk/src/Makefile.am	Sat Jan 19 23:15:47 2008
@@ -13,10 +13,12 @@
 	category.hh \
 	category-factory.cc \
 	category-factory.hh \
-	document-tag-cloud-model.cc \
-	document-tag-cloud-model.hh \
+	dialog-categories.cc \
+	dialog-categories.hh \
 	dialog-tag-entry.cc \
 	dialog-tag-entry.hh \
+	document-tag-cloud-model.cc \
+	document-tag-cloud-model.hh \
 	document.cc \
 	document.hh \
 	document-tile.cc \
@@ -33,6 +35,8 @@
 	tag-cloud-model.hh \
 	tag-cloud.cc \
 	tag-cloud.hh \
+	tag-item.cc \
+	tag-item.hh \
 	tag-link-button.cc \
 	tag-link-button.hh \
 	tag-request.cc \

Added: trunk/src/dialog-categories.cc
==============================================================================
--- (empty file)
+++ trunk/src/dialog-categories.cc	Sat Jan 19 23:15:47 2008
@@ -0,0 +1,91 @@
+// -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 4 -*-
+
+/*
+ *  PaperBox - dialog-categories.cc
+ *
+ *  Copyright (C) 2008 Marko Anastasov
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU Library General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License along
+ *  with this program; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#include <gtkmm/stock.h>
+#include "dialog-categories.hh"
+#include "paths.hh"
+
+namespace paperbox {
+
+    DialogCategories::DialogCategories(
+	    GtkDialog* cobject,
+	    const Glib::RefPtr<Gnome::Glade::Xml>& glade)
+        :
+        Gtk::Dialog(cobject),
+        glade_(glade),
+        button_save_(Gtk::Stock::SAVE)
+    {
+        init_gui();
+    }
+
+    DialogCategories::~DialogCategories()
+    {
+    }
+
+    DialogCategories*
+    DialogCategories::create()
+    {
+        Glib::RefPtr<Gnome::Glade::Xml> glade_xml =
+            Gnome::Glade::Xml::create(paperbox::glade_dialog_categories);
+
+        DialogCategories* p = 0;
+        glade_xml->get_widget_derived("dialog_categories", p);
+        return p;
+    }
+
+    void
+    DialogCategories::get_widgets()
+    {
+        glade_->get_widget("vbox_left", vbox_left_);
+        g_assert(vbox_left_);
+
+        glade_->get_widget("vbox_right", vbox_right_);
+        g_assert(vbox_right_);
+
+        glade_->get_widget("hbox_contents", hbox_contents_);
+        g_assert(hbox_contents_);
+    }
+
+    void
+    DialogCategories::init_gui()
+    {
+        get_widgets();
+
+        label_category_tags_.set_text("Here are the contents:");
+        hbox_contents_->pack_start(label_category_tags_);
+        hbox_contents_->pack_start(button_save_);
+
+        vbox_right_->pack_start(scroll_window_);
+        scroll_window_.add(text_view_);
+
+        show_all_children();
+    }
+
+    int
+    DialogCategories::run()
+    {
+        int response = Gtk::Dialog::run();
+
+        return response;
+    }
+
+} // namespace paperbox

Added: trunk/src/dialog-categories.hh
==============================================================================
--- (empty file)
+++ trunk/src/dialog-categories.hh	Sat Jan 19 23:15:47 2008
@@ -0,0 +1,65 @@
+// -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 4 -*-
+
+/*
+ *  PaperBox - dialog-categories.hh
+ *
+ *  Copyright (C) 2008 Marko Anastasov
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU Library General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License along
+ *  with this program; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#ifndef __PAPER_BOX_DIALOG_CATEGORIES_HH__
+#define __PAPER_BOX_DIALOG_CATEGORIES_HH__
+
+#include <gtkmm/button.h>
+#include <gtkmm/dialog.h>
+#include <gtkmm/label.h>
+#include <gtkmm/scrolledwindow.h>
+#include <gtkmm/textview.h>
+#include <libglademm/xml.h>
+
+namespace paperbox {
+
+    class DialogCategories : public Gtk::Dialog
+    {
+    public:
+        DialogCategories(GtkDialog* cobject,
+                         const Glib::RefPtr<Gnome::Glade::Xml>& glade);
+        virtual ~DialogCategories();
+
+        static DialogCategories* create();
+
+        int run();
+
+    protected:
+        void get_widgets();
+        void init_gui();
+
+        Glib::RefPtr<Gnome::Glade::Xml> glade_;
+
+        // containers defined in glade
+        Gtk::VBox* vbox_left_;
+        Gtk::VBox* vbox_right_;
+        Gtk::HBox* hbox_contents_;
+
+        Gtk::Label  label_category_tags_;
+        Gtk::Button button_save_;
+        Gtk::ScrolledWindow scroll_window_;
+        Gtk::TextView text_view_;
+    };
+
+} // namespace paperbox
+
+#endif // __PAPER_BOX_DIALOG_CATEGORIES_HH__

Modified: trunk/src/document-tile.cc
==============================================================================
--- trunk/src/document-tile.cc	(original)
+++ trunk/src/document-tile.cc	Sat Jan 19 23:15:47 2008
@@ -22,6 +22,7 @@
 
 #include <glib/gi18n.h>
 #include <gtk/gtklinkbutton.h>
+#include <gtk/gtkwidget.h>
 #include <glibmm-utils/ustring.h>
 #include <gtkmm/stock.h>
 #include "browser.hh"

Modified: trunk/src/main-window.cc
==============================================================================
--- trunk/src/main-window.cc	(original)
+++ trunk/src/main-window.cc	Sat Jan 19 23:15:47 2008
@@ -27,6 +27,7 @@
 #include <gtkmm-utils/tile.h>
 #include "browser.hh"
 #include "file-utils.hh"
+#include "dialog-categories.hh"
 #include "document-tag-cloud-model.hh"
 #include "document-tile.hh"
 #include "main-window.hh"
@@ -179,6 +180,7 @@
                                      bool /*path_currently_selected*/)
     {
         //TODO
+        g_debug ("cat sel");
         return true;
     }
 
@@ -201,6 +203,9 @@
         tile_view_->signal_tile_activated().connect(
             sigc::mem_fun(*this, &MainWindow::on_document_tile_selected));
 
+        button_edit_category_.signal_clicked().connect(
+            sigc::mem_fun(*this, &MainWindow::on_edit_category));
+
         button_view_all_.signal_clicked().connect(
             sigc::mem_fun(*this, &MainWindow::on_view_all));
 
@@ -267,6 +272,9 @@
 
         render_new_tile_set(docs);
         button_view_all_.set_sensitive(true);
+
+        // "manually" put a marker on the tag in the cloud
+        tag_cloud_.select_tag(tag);
     }
 
     void
@@ -276,6 +284,16 @@
         browser_->get_all_documents(docs);
         render_new_tile_set(docs);
         button_view_all_.set_sensitive(false);
+        tag_cloud_.reset_selection();
+    }
+
+    void
+    MainWindow::on_edit_category()
+    {
+        shared_ptr<DialogCategories> dialog(DialogCategories::create());
+        dialog->set_default_response(Gtk::RESPONSE_OK);
+
+        dialog->run();
     }
 
 } // namespace paperbox

Modified: trunk/src/main-window.hh
==============================================================================
--- trunk/src/main-window.hh	(original)
+++ trunk/src/main-window.hh	Sat Jan 19 23:15:47 2008
@@ -71,6 +71,7 @@
         // Handler for DocumentTileView's and TagCloud's signals
         void on_tag_clicked(const Glib::ustring& tag);
 
+        void on_edit_category();
         void on_view_all();
 
         bool on_category_selected(const Glib::RefPtr<Gtk::TreeModel>& ,

Modified: trunk/src/paths.hh
==============================================================================
--- trunk/src/paths.hh	(original)
+++ trunk/src/paths.hh	Sat Jan 19 23:15:47 2008
@@ -27,11 +27,14 @@
 
 namespace paperbox {
 
-const char* const glade_window_main =
-    PAPERBOX_PKGDATADIR G_DIR_SEPARATOR_S "window-main.glade";
+    const char* const glade_window_main =
+        PAPERBOX_PKGDATADIR G_DIR_SEPARATOR_S "window-main.glade";
 
-const char* const glade_dialog_tag_entry =
-    PAPERBOX_PKGDATADIR G_DIR_SEPARATOR_S "dialog-tag-entry.glade";
+    const char* const glade_dialog_categories =
+        PAPERBOX_PKGDATADIR G_DIR_SEPARATOR_S "dialog-categories.glade";
+
+    const char* const glade_dialog_tag_entry =
+        PAPERBOX_PKGDATADIR G_DIR_SEPARATOR_S "dialog-tag-entry.glade";
 
 } // namespace paperbox
 

Modified: trunk/src/tag-cloud.cc
==============================================================================
--- trunk/src/tag-cloud.cc	(original)
+++ trunk/src/tag-cloud.cc	Sat Jan 19 23:15:47 2008
@@ -1,7 +1,7 @@
 // -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 4 -*-
 
 /*
- * Demo tag cloud widget based on GooCanvas - tag-cloud.cc
+ * PaperBox - tag-cloud.cc
  *
  * Copyright (C) 2007 Marko Anastasov
  *
@@ -25,6 +25,9 @@
 #include <sstream>
 #include <goocanvas.h>
 #include "tag-cloud.hh"
+#include "tag-item.hh"
+
+namespace paperbox {
 
 using std::list;
 using std::map;
@@ -34,40 +37,6 @@
 static const guint32 TAG_BORDER_MIN = 5;
 static const guint32 TAG_BORDER_MAX = TAG_BORDER_MIN * 4;
 
-enum FillColor
-{
-    FILL_COLOR_BLUE       = 0x0000ffff,
-    FILL_COLOR_LIGHT_BLUE = 0x6060ffff,
-    FILL_COLOR_RED        = 0xff0000ff
-};
-
-class TagItem
-{
-public:
-    explicit TagItem(TagCloud* parent,
-                     GooCanvasItem* text_item,
-                     Glib::ustring tag,
-                     FillColor fill_color)
-        : parent_(parent),
-          text_item_(text_item),
-          tag_(tag),
-          color_(fill_color)
-        {}
-
-    ~TagItem() {}
-
-    TagCloud*      get_parent()            { return parent_; }
-    GooCanvasItem* get_canvas_item()       { return text_item_; }
-    Glib::ustring  get_tag() const         { return tag_; }
-    guint          get_fill_colour() const { return color_; }
-
-protected:
-    TagCloud*      parent_;
-    GooCanvasItem* text_item_;
-    Glib::ustring  tag_;
-    FillColor     color_;
-};
-
 static gboolean
 on_button_press (GooCanvasItem*  /* item */,
                  GooCanvasItem*  /* target */,
@@ -78,6 +47,8 @@
         tag_item->get_parent()->signal_tag_clicked();
     signal.emit(tag_item->get_tag());
 
+    tag_item->get_parent()->update_marker(tag_item);
+
     return TRUE;
 }
 
@@ -108,6 +79,7 @@
 TagCloud::TagCloud()
     :
     canvas_(0),
+    selection_(0),
     grand_(0),
     randomize_borders_(true),
     underline_tags_(false),
@@ -128,6 +100,8 @@
 
     for ( ; item_it != item_end; ++item_it) {
         goo_canvas_item_remove ((*item_it)->get_canvas_item());
+        GooCanvasItem* marker = (*item_it)->get_marker();
+        if (marker) goo_canvas_item_remove (marker);
     }
 
     delete canvas_;
@@ -334,3 +308,43 @@
 {
     redraw_tags();
 }
+
+void
+TagCloud::update_marker(TagItem* new_selection)
+{
+    if (selection_) {
+        selection_->marker_off();
+    }
+
+    new_selection->marker_on();
+    selection_ = new_selection;
+}
+
+void
+TagCloud::reset_selection()
+{
+    if (! selection_) return;
+
+    selection_->marker_off();
+    selection_ = 0;
+}
+
+// Finds a TagItem by string and causes its' rectangle marker to be drawn.
+void
+TagCloud::select_tag(const Glib::ustring& tag)
+{
+    reset_selection();
+
+    list<shared_ptr<TagItem> >::iterator item_it(text_items_.begin());
+    list<shared_ptr<TagItem> >::iterator item_end(text_items_.end());
+
+    for ( ; item_it != item_end; ++item_it) {
+        if ((*item_it)->get_tag() == tag) {
+            (*item_it)->marker_on();
+            selection_ = item_it->get();
+            break;
+        }
+    }
+}
+
+} // namespace paperbox

Modified: trunk/src/tag-cloud.hh
==============================================================================
--- trunk/src/tag-cloud.hh	(original)
+++ trunk/src/tag-cloud.hh	Sat Jan 19 23:15:47 2008
@@ -1,7 +1,7 @@
 // -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 4 -*-
 
 /*
- * Demo tag cloud widget based on GooCanvas - tag-cloud.hh
+ * PaperBox - tag-cloud.hh
  *
  * Copyright (C) 2007 Marko Anastasov
  *
@@ -31,8 +31,11 @@
 #include <gtkmm.h>
 #include "tag-cloud-model.hh"
 
+namespace paperbox {
+
 class TagItem;
 
+/// Tag cloud widget based on GooCanvas.
 class TagCloud : public Gtk::ScrolledWindow
 {
 public:
@@ -57,6 +60,12 @@
 
     SignalTagClicked& signal_tag_clicked() { return signal_tag_clicked_; }
 
+    void update_marker(TagItem* new_selection);
+
+    void reset_selection();
+
+    void select_tag(const Glib::ustring& tag);
+
 protected:
     virtual void on_size_allocate(Gdk::Rectangle& allocation);
 
@@ -71,6 +80,7 @@
     Gtk::Widget* canvas_;
     std::list<boost::shared_ptr<TagItem> > text_items_;
     boost::shared_ptr<TagCloudModel> model_;
+    TagItem* selection_;
 
     GRand* grand_;
     bool   randomize_borders_;
@@ -86,4 +96,6 @@
     TagCloud& operator=(const TagCloud& );
 };
 
+} // namespace paperbox
+
 #endif // __TAG_CLOUD_HH__

Added: trunk/src/tag-item.cc
==============================================================================
--- (empty file)
+++ trunk/src/tag-item.cc	Sat Jan 19 23:15:47 2008
@@ -0,0 +1,75 @@
+// -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 4 -*-
+
+/*
+ * PaperBox - tag-item.cc
+ *
+ * Copyright (C) 2007 Marko Anastasov
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ * See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this library; if not, write to the
+ * Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+ */
+
+#include "tag-item.hh"
+
+namespace paperbox {
+
+    TagItem::TagItem(TagCloud* parent, GooCanvasItem* text_item,
+                     Glib::ustring tag, FillColor fill_color)
+        : parent_(parent),
+          text_item_(text_item),
+          rect_marker_(0),
+          tag_(tag),
+          color_(fill_color)
+    {
+        goo_canvas_item_get_bounds (text_item, &bounds_);
+    }
+
+    void
+    TagItem::marker_on()
+    {
+        if (! rect_marker_) {
+            GooCanvasItem* new_marker = create_rectangle_marker();
+            set_marker(new_marker);
+        }
+
+        g_object_set (rect_marker_,
+                      "visibility", GOO_CANVAS_ITEM_VISIBLE,
+                      NULL);
+    }
+
+    void
+    TagItem::marker_off()
+    {
+        g_object_set (rect_marker_,
+                      "visibility", GOO_CANVAS_ITEM_INVISIBLE,
+                      NULL);
+    }
+
+    GooCanvasItem*
+    TagItem::create_rectangle_marker()
+    {
+        GooCanvasItem* new_marker;
+
+        new_marker = goo_canvas_rect_new (get_parent_item(),
+                                          get_left() - MARKER_SPACING_HALF,
+                                          get_top() - MARKER_SPACING_HALF,
+                                          get_width() + MARKER_SPACING,
+                                          get_height() + MARKER_SPACING,
+                                          NULL);
+
+        return new_marker;
+    }
+
+} // namespace paperbox

Added: trunk/src/tag-item.hh
==============================================================================
--- (empty file)
+++ trunk/src/tag-item.hh	Sat Jan 19 23:15:47 2008
@@ -0,0 +1,90 @@
+// -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 4 -*-
+
+/*
+ * PaperBox - tag-item.hh
+ *
+ * Copyright (C) 2007 Marko Anastasov
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ * See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this library; if not, write to the
+ * Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+ */
+
+#ifndef __TAG_ITEM_HH__
+#define __TAG_ITEM_HH__
+
+#include <goocanvas.h>
+#include <glibmm/ustring.h>
+
+namespace paperbox {
+
+    static const gdouble MARKER_SPACING = 4.0;
+    static const gdouble MARKER_SPACING_HALF = 2.0;
+
+    enum FillColor
+    {
+        FILL_COLOR_BLUE       = 0x0000ffff,
+        FILL_COLOR_LIGHT_BLUE = 0x6060ffff,
+        FILL_COLOR_RED        = 0xff0000ff
+    };
+
+    class TagCloud;
+
+    /// A tag, ie canvas item, in a TagCloud.
+    class TagItem
+    {
+    public:
+        explicit TagItem(TagCloud* parent,
+                         GooCanvasItem* text_item,
+                         Glib::ustring tag,
+                         FillColor fill_color);
+
+        ~TagItem() {} // the parent (TagCloud) takes care of the GooCanvasItems
+
+        TagCloud*      get_parent()       { return parent_; }
+        GooCanvasItem* get_parent_item()
+            { return goo_canvas_item_get_parent (text_item_); }
+        GooCanvasItem* get_canvas_item()  { return text_item_; }
+        GooCanvasItem* get_marker()       { return rect_marker_; }
+
+        Glib::ustring  get_tag()         const { return tag_; }
+        guint          get_fill_colour() const { return color_; }
+
+        gdouble        get_left()   const { return bounds_.x1; }
+        gdouble        get_top()    const { return bounds_.y1; }
+        gdouble        get_right()  const { return bounds_.x2; }
+        gdouble        get_bottom() const { return bounds_.y2; }
+        gdouble        get_width()  const { return bounds_.x2 - bounds_.x1; }
+        gdouble        get_height() const { return bounds_.y2 - bounds_.y1; }
+
+        void set_marker(GooCanvasItem* new_marker)
+            { rect_marker_ = new_marker; }
+
+        void marker_on();
+        void marker_off();
+
+        GooCanvasItem* create_rectangle_marker();
+
+    protected:
+        TagCloud*       parent_;
+        GooCanvasItem*  text_item_;
+        GooCanvasBounds bounds_;
+        GooCanvasItem*  rect_marker_;
+        Glib::ustring   tag_;
+        FillColor       color_;
+    };
+
+} // namespace paperbox
+
+#endif // __TAG_ITEM_HH__

Added: trunk/ui/dialog-categories.glade
==============================================================================
--- (empty file)
+++ trunk/ui/dialog-categories.glade	Sat Jan 19 23:15:47 2008
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
+<!--Generated with glade3 3.4.0 on Tue Jan 15 01:27:29 2008 -->
+<glade-interface>
+  <widget class="GtkDialog" id="dialog_categories">
+    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+    <property name="border_width">5</property>
+    <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
+    <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <widget class="GtkVBox" id="dialog-vbox1">
+        <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="spacing">2</property>
+        <child>
+          <widget class="GtkHPaned" id="hpane">
+            <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>
+            <child>
+              <widget class="GtkVBox" id="vbox_left">
+                <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>
+                <child>
+                  <placeholder/>
+                </child>
+              </widget>
+              <packing>
+                <property name="resize">False</property>
+                <property name="shrink">True</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkVBox" id="vbox_right">
+                <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="spacing">5</property>
+                <child>
+                  <widget class="GtkHBox" id="hbox_contents">
+                    <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>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                  </widget>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                  </packing>
+                </child>
+                <child>
+                  <placeholder/>
+                </child>
+                <child>
+                  <placeholder/>
+                </child>
+              </widget>
+              <packing>
+                <property name="resize">True</property>
+                <property name="shrink">True</property>
+              </packing>
+            </child>
+          </widget>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <widget class="GtkHButtonBox" id="dialog-action_area">
+            <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="layout_style">GTK_BUTTONBOX_END</property>
+            <child>
+              <widget class="GtkButton" id="button1">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">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">gtk-ok</property>
+                <property name="use_stock">True</property>
+                <property name="response_id">0</property>
+              </widget>
+            </child>
+          </widget>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">GTK_PACK_END</property>
+          </packing>
+        </child>
+      </widget>
+    </child>
+  </widget>
+</glade-interface>



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