]> git.lyx.org Git - lyx.git/commitdiff
GTK Float dialog and Note dialog. Today is rhyming dialog day!
authorJohn Spray <spray@lyx.org>
Mon, 15 Nov 2004 16:02:57 +0000 (16:02 +0000)
committerJohn Spray <spray@lyx.org>
Mon, 15 Nov 2004 16:02:57 +0000 (16:02 +0000)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9254 a592a061-630c-0410-9148-cb99ea01b6c8

src/frontends/gtk/ChangeLog
src/frontends/gtk/Dialogs.C
src/frontends/gtk/GFloat.C [new file with mode: 0644]
src/frontends/gtk/GFloat.h [new file with mode: 0644]
src/frontends/gtk/GNote.C [new file with mode: 0644]
src/frontends/gtk/GNote.h [new file with mode: 0644]
src/frontends/gtk/Makefile.am
src/frontends/gtk/glade/float.glade [new file with mode: 0644]
src/frontends/gtk/glade/note.glade [new file with mode: 0644]

index 63f3c2ede5c81b11b644aa43e7672585f3bc2da2..272f673df53475da822fc2fe683f21176e01b836 100644 (file)
@@ -1,5 +1,9 @@
 2004-11-15  John Spray  <spray_john@users.sourceforge.net>
 
+       * The Note Dialog:
+         Dialogs.C, Makefile.am, GNote.C, GNote.h
+       * The Float Dialog:
+         Dialogs.C, Makefile.am, GFloat.C, GFloat.h
        * ghelpers.[Ch]: getGTKStockIcon added to choose gtk
                stock icons for FuncRequests
        * GToolbar.C: use getGTKStockIcon for toolbutton icons
index 7d7460d112c769517e0a12abb5f52aeebfd5d46f..7d5b4d122220d840e532db57f25c24f9df140b69 100644 (file)
@@ -63,7 +63,7 @@
 #include "GErrorList.h"
 #include "GERT.h"
 #include "FormExternal.h"
-#include "FormFloat.h"
+#include "GFloat.h"
 #include "GGraphics.h"
 #include "FormInclude.h"
 #include "GLog.h"
@@ -72,7 +72,7 @@
 #include "GMathsMatrix.h"
 #include "FormMathsSpace.h"
 #include "FormMathsStyle.h"
-#include "FormNote.h"
+#include "GNote.h"
 #include "GParagraph.h"
 #include "FormPreamble.h"
 #include "FormPreferences.h"
@@ -237,8 +237,9 @@ Dialogs::DialogPtr Dialogs::build(string const & name)
                dialog->setView(new GSearch(*dialog));
                dialog->bc().bp(new NoRepeatedApplyReadOnlyPolicy);
        } else if (name == "float") {
+               dialog->bc().view(new GBC(dialog->bc()));
                dialog->setController(new ControlFloat(*dialog));
-               dialog->setView(new FormFloat(*dialog));
+               dialog->setView(new GFloat(*dialog));
                dialog->bc().bp(new NoRepeatedApplyReadOnlyPolicy);
        } else if (name == "graphics") {
                dialog->bc().view(new GBC(dialog->bc()));
@@ -452,8 +453,9 @@ Dialogs::DialogPtr Dialogs::build(string const & name)
                dialog->setView(new FormMathsStyle(*dialog));
                dialog->bc().bp(new IgnorantPolicy);
        } else if (name == "note") {
+               dialog->bc().view(new GBC(dialog->bc()));
                dialog->setController(new ControlNote(*dialog));
-               dialog->setView(new FormNote(*dialog));
+               dialog->setView(new GNote(*dialog));
                dialog->bc().bp(new OkApplyCancelReadOnlyPolicy);
        } else if (name == "branch") {
                dialog->setController(new ControlBranch(*dialog));
diff --git a/src/frontends/gtk/GFloat.C b/src/frontends/gtk/GFloat.C
new file mode 100644 (file)
index 0000000..1596a9f
--- /dev/null
@@ -0,0 +1,219 @@
+/**
+ * \file GFloat.C
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author John Spray
+ *
+ * Full author contact details are available in file CREDITS.
+ */
+
+#include <config.h>
+
+#include "GFloat.h"
+#include "ControlFloat.h"
+
+#include "ghelpers.h"
+
+#include "insets/insetfloat.h"
+
+#include "support/lstrings.h"
+
+#include <libglademm.h>
+
+using std::string;
+
+namespace lyx {
+
+using support::contains;
+
+namespace frontend {
+
+GFloat::GFloat(Dialog & parent)
+       : GViewCB<ControlFloat, GViewGladeB>(parent, _("Float Settings"), false)
+{}
+
+
+void GFloat::doBuild()
+{
+       string const gladeName = findGladeFile("float");
+       xml_ = Gnome::Glade::Xml::create(gladeName);
+
+       Gtk::Button * cancelbutton;
+       xml_->get_widget("Close", cancelbutton);
+       setCancel(cancelbutton);
+
+       xml_->get_widget("Default", defaultradio_);
+       xml_->get_widget("HereDefinitely", heredefinitelyradio_);
+       xml_->get_widget("Alternative", alternativeradio_);
+       xml_->get_widget("Top", topcheck_);
+       xml_->get_widget("Bottom", bottomcheck_);
+       xml_->get_widget("PageOfFloats", pageoffloatscheck_);
+       xml_->get_widget("HereIfPossible", hereifpossiblecheck_);
+       xml_->get_widget("IgnoreRules", ignorerulescheck_);
+       xml_->get_widget("SpanColumns", spancolumnscheck_);
+       xml_->get_widget("RotateSideways", rotatesidewayscheck_);
+
+       defaultradio_->signal_toggled().connect(
+               sigc::mem_fun(*this, &GFloat::apply));
+       heredefinitelyradio_->signal_toggled().connect(
+               sigc::mem_fun(*this, &GFloat::apply));
+       alternativeradio_->signal_toggled().connect(
+               sigc::mem_fun(*this, &GFloat::apply));
+       topcheck_->signal_toggled().connect(
+               sigc::mem_fun(*this, &GFloat::apply));
+       bottomcheck_->signal_toggled().connect(
+               sigc::mem_fun(*this, &GFloat::apply));
+       pageoffloatscheck_->signal_toggled().connect(
+               sigc::mem_fun(*this, &GFloat::apply));
+       hereifpossiblecheck_->signal_toggled().connect(
+               sigc::mem_fun(*this, &GFloat::apply));
+       ignorerulescheck_->signal_toggled().connect(
+               sigc::mem_fun(*this, &GFloat::apply));
+       spancolumnscheck_->signal_toggled().connect(
+               sigc::mem_fun(*this, &GFloat::apply));
+       rotatesidewayscheck_->signal_toggled().connect(
+               sigc::mem_fun(*this, &GFloat::apply));
+
+       bcview().addReadOnly(defaultradio_);
+       bcview().addReadOnly(heredefinitelyradio_);
+       bcview().addReadOnly(alternativeradio_);
+       bcview().addReadOnly(topcheck_);
+       bcview().addReadOnly(bottomcheck_);
+       bcview().addReadOnly(pageoffloatscheck_);
+       bcview().addReadOnly(hereifpossiblecheck_);
+       bcview().addReadOnly(ignorerulescheck_);
+       bcview().addReadOnly(spancolumnscheck_);
+       bcview().addReadOnly(rotatesidewayscheck_);
+}
+
+
+void GFloat::update()
+{
+       applylock_ = true;
+
+       bc().refreshReadOnly();
+
+       string placement(controller().params().placement);
+       bool const wide = controller().params().wide;
+       bool const sideways = controller().params().sideways;
+
+       bool const here_definitely = contains(placement, 'H');
+
+       bool const top    = contains(placement, 't');
+       bool const bottom = contains(placement, 'b');
+       bool const page   = contains(placement, 'p');
+       bool const here   = contains(placement, 'h');
+       bool const force  = contains(placement, '!');
+       bool const alternatives = top || bottom || page || (here && !wide);
+
+       if (alternatives) {
+               alternativeradio_->set_active(true);
+       } else if (here_definitely) {
+               heredefinitelyradio_->set_active(true);
+       } else {
+               defaultradio_->set_active(true);
+       }
+       ignorerulescheck_->set_active(force);
+       topcheck_->set_active(top);
+       bottomcheck_->set_active(bottom);
+       pageoffloatscheck_->set_active(page);
+       hereifpossiblecheck_->set_active(here);
+       spancolumnscheck_->set_active(wide);
+       rotatesidewayscheck_->set_active(sideways);
+
+       updateSensitivity();
+
+       applylock_ = false;
+}
+
+
+void GFloat::updateSensitivity()
+{
+       bool const wide = spancolumnscheck_->get_active();
+       bool const sideways = rotatesidewayscheck_->get_active();
+       bool const sideways_possible = (controller().params().type == "figure"
+               || controller().params().type == "table");
+       bool const alternatives = alternativeradio_->get_active();
+       bool const readonly = readOnly();
+
+       heredefinitelyradio_->set_sensitive(!wide && !sideways && !readonly);
+       ignorerulescheck_->set_sensitive(alternatives && !sideways && !readonly);
+       topcheck_->set_sensitive(alternatives && !sideways && !readonly);
+       bottomcheck_->set_sensitive(alternatives && !sideways && !readonly);
+       pageoffloatscheck_->set_sensitive(alternatives && !sideways && !readonly);
+       hereifpossiblecheck_->set_sensitive(alternatives && !wide && !sideways && !readonly);
+       spancolumnscheck_->set_sensitive(!sideways && !readonly);
+       defaultradio_->set_sensitive(!sideways && !readonly);
+       alternativeradio_->set_sensitive(!sideways && !readonly);
+       rotatesidewayscheck_->set_sensitive(sideways_possible && !readonly);
+}
+
+
+void GFloat::apply()
+{
+       if (applylock_)
+               return;
+
+       updateSensitivity();
+
+       bool const wide = spancolumnscheck_->get_active();
+       bool const sideways = rotatesidewayscheck_->get_active();
+
+       int placementmode = 0; //default
+       if (heredefinitelyradio_->get_active())
+               placementmode = 1; // "Here, definitely"
+       else if (alternativeradio_->get_active())
+               placementmode = 2; // "Alternative"
+
+       string placement;
+       switch (placementmode) {
+       case 2:
+               // "Alternative"
+               if (ignorerulescheck_->get_active()) {
+                       // Ignore internal LaTeX rules
+                       placement += '!';
+               }
+               if (topcheck_->get_active()) {
+                       // Top of page
+                       placement += 't';
+               }
+               if (bottomcheck_->get_active()) {
+                       // Bottom of page
+                       placement += 'b';
+               }
+               if (pageoffloatscheck_->get_active()) {
+                       // Page of floats
+                       placement += 'p';
+               }
+               // ignore if wide is selected
+               if (!wide && hereifpossiblecheck_->get_active()) {
+                       // Here, if possible
+                       placement += 'h';
+               }
+               if (placement == "!") {
+                       // ignore placement if only force is selected.
+                       placement.erase();
+               }
+               break;
+
+       case 1:
+               // Here, definitely
+               placement = "H";
+               break;
+
+       case 0:
+               // default, do nothing.
+               break;
+       }
+
+       controller().params().placement = placement;
+       controller().params().wide = wide;
+       controller().params().sideways = sideways;
+
+       controller().dispatchParams();
+}
+
+} // namespace frontend
+} // namespace lyx
+
diff --git a/src/frontends/gtk/GFloat.h b/src/frontends/gtk/GFloat.h
new file mode 100644 (file)
index 0000000..b30f24b
--- /dev/null
@@ -0,0 +1,52 @@
+// -*- C++ -*-
+/**
+ * \file GFloat.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author John Spray
+ *
+ * Full author contact details are available in file CREDITS.
+ */
+
+#ifndef GFLOAT_H
+#define GFLOAT_H
+
+#include "GViewBase.h"
+
+namespace lyx {
+namespace frontend {
+
+class ControlFloat;
+
+/** This class provides a GTK+ implementation of the ERT Dialog.
+ */
+class GFloat : public GViewCB<ControlFloat, GViewGladeB> {
+public:
+       GFloat(Dialog & parent);
+private:
+       virtual void apply();
+       virtual void doBuild();
+       virtual void update();
+
+       void updateSensitivity();
+
+       // apply() won't act when this is true
+       bool applylock_;
+
+       Gtk::RadioButton * defaultradio_;
+       Gtk::RadioButton * heredefinitelyradio_;
+       Gtk::RadioButton * alternativeradio_;
+       Gtk::CheckButton * topcheck_;
+       Gtk::CheckButton * bottomcheck_;
+       Gtk::CheckButton * pageoffloatscheck_;
+       Gtk::CheckButton * hereifpossiblecheck_;
+       Gtk::CheckButton * ignorerulescheck_;
+       Gtk::CheckButton * spancolumnscheck_;
+       Gtk::CheckButton * rotatesidewayscheck_;
+};
+
+} // namespace frontend
+} // namespace lyx
+
+#endif // GFLOAT_H
diff --git a/src/frontends/gtk/GNote.C b/src/frontends/gtk/GNote.C
new file mode 100644 (file)
index 0000000..6fe76dd
--- /dev/null
@@ -0,0 +1,98 @@
+/**
+ * \file GNote.C
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author John Spray
+ *
+ * Full author contact details are available in file CREDITS.
+ */
+
+#include <config.h>
+
+#include "GNote.h"
+#include "ControlNote.h"
+#include "ghelpers.h"
+
+#include "insets/insetnote.h"
+
+#include <libglademm.h>
+
+using std::string;
+
+namespace lyx {
+namespace frontend {
+
+GNote::GNote(Dialog & parent)
+       : GViewCB<ControlNote, GViewGladeB>(parent, _("Note Settings"), false)
+{}
+
+
+void GNote::doBuild()
+{
+       string const gladeName = findGladeFile("note");
+       xml_ = Gnome::Glade::Xml::create(gladeName);
+
+       Gtk::Button * cancelbutton;
+       xml_->get_widget("Close", cancelbutton);
+       setCancel(cancelbutton);
+
+       xml_->get_widget("LyXNote", lyxnoteradio_);
+       xml_->get_widget("Comment", commentradio_);
+       xml_->get_widget("GreyedOut", greyedoutradio_);
+
+       lyxnoteradio_->signal_toggled().connect(
+               sigc::mem_fun(*this, &GNote::apply));
+       commentradio_->signal_toggled().connect(
+               sigc::mem_fun(*this, &GNote::apply));
+       greyedoutradio_->signal_toggled().connect(
+               sigc::mem_fun(*this, &GNote::apply));
+
+       bcview().addReadOnly(lyxnoteradio_);
+       bcview().addReadOnly(commentradio_);
+       bcview().addReadOnly(greyedoutradio_);
+}
+
+
+void GNote::update()
+{
+       applylock_ = true;
+
+       bc().refreshReadOnly();
+
+       switch (controller().params().type) {
+       case InsetNoteParams::Note:
+               lyxnoteradio_->set_active(true);
+               break;
+       case InsetNoteParams::Comment:
+               commentradio_->set_active(true);
+               break;
+       case InsetNoteParams::Greyedout:
+               greyedoutradio_->set_active(true);
+               break;
+       }
+
+       applylock_ = false;
+}
+
+
+void GNote::apply()
+{
+       if (applylock_)
+               return;
+
+       InsetNoteParams::Type type;
+
+       if (lyxnoteradio_->get_active())
+               type = InsetNoteParams::Note;
+       else if (greyedoutradio_->get_active())
+               type = InsetNoteParams::Greyedout;
+       else
+               type = InsetNoteParams::Comment;
+
+       controller().params().type = type;
+       controller().dispatchParams();
+}
+
+} // namespace frontend
+} // namespace lyx
diff --git a/src/frontends/gtk/GNote.h b/src/frontends/gtk/GNote.h
new file mode 100644 (file)
index 0000000..8b03455
--- /dev/null
@@ -0,0 +1,43 @@
+// -*- C++ -*-
+/**
+ * \file GNote.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author John Spray
+ *
+ * Full author contact details are available in file CREDITS.
+ */
+
+#ifndef GNOTE_H
+#define GNOTE_H
+
+#include "GViewBase.h"
+
+namespace lyx {
+namespace frontend {
+
+class ControlNote;
+
+/** This class provides a GTK+ implementation of the Note Dialog.
+ */
+class GNote : public GViewCB<ControlNote, GViewGladeB> {
+public:
+       GNote(Dialog & parent);
+private:
+       virtual void apply();
+       virtual void doBuild();
+       virtual void update();
+
+       // apply() won't act when this is true
+       bool applylock_;
+
+       Gtk::RadioButton * lyxnoteradio_;
+       Gtk::RadioButton * commentradio_;
+       Gtk::RadioButton * greyedoutradio_;
+};
+
+} // namespace frontend
+} // namespace lyx
+
+#endif // GNOTE_H
index a5274cf42c696e0ddd69dea7e8f121eedf73c9f5..f8997542db3fd691a2d74032795127c3a9d26942 100644 (file)
@@ -34,6 +34,8 @@ libgtk_la_SOURCES = \
        GErrorList.h \
        GERT.C \
        GERT.h \
+       GFloat.C \
+       GFloat.h \
        GGraphics.C \
        GGraphics.h \
        GLog.C \
@@ -50,6 +52,8 @@ libgtk_la_SOURCES = \
        GMenubar.h \
        GMiniBuffer.C \
        GMiniBuffer.h \
+       GNote.C \
+       GNote.h \
        GPainter.C \
        GPainter.h \
        GParagraph.C \
@@ -119,13 +123,11 @@ xforms_objects = \
        ../xforms/FormDialogView.lo \
        ../xforms/FormDocument.lo \
        ../xforms/FormExternal.lo \
-       ../xforms/FormFloat.lo \
        ../xforms/FormInclude.lo \
        ../xforms/FormMathsBitmap.lo \
        ../xforms/FormMathsDelim.lo \
        ../xforms/FormMathsSpace.lo \
        ../xforms/FormMathsStyle.lo \
-       ../xforms/FormNote.lo \
        ../xforms/FormPreamble.lo \
        ../xforms/FormPreferences.lo \
        ../xforms/FormRef.lo \
diff --git a/src/frontends/gtk/glade/float.glade b/src/frontends/gtk/glade/float.glade
new file mode 100644 (file)
index 0000000..f291c08
--- /dev/null
@@ -0,0 +1,391 @@
+<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
+<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
+
+<glade-interface>
+
+<widget class="GtkDialog" id="dialog">
+  <property name="visible">True</property>
+  <property name="title" translatable="yes">dialog1</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">False</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="has_separator">False</property>
+
+  <child internal-child="vbox">
+    <widget class="GtkVBox" id="dialog-vbox1">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">0</property>
+
+      <child internal-child="action_area">
+       <widget class="GtkHButtonBox" id="dialog-action_area1">
+         <property name="visible">True</property>
+         <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+         <child>
+           <widget class="GtkButton" id="Close">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-close</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-7</property>
+             <accelerator key="Escape" modifiers="0" signal="clicked"/>
+           </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>
+
+      <child>
+       <widget class="GtkVBox" id="vbox1">
+         <property name="border_width">12</property>
+         <property name="visible">True</property>
+         <property name="homogeneous">False</property>
+         <property name="spacing">0</property>
+
+         <child>
+           <widget class="GtkLabel" id="label2">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes">&lt;b&gt;Placement&lt;/b&gt;</property>
+             <property name="use_underline">False</property>
+             <property name="use_markup">True</property>
+             <property name="justify">GTK_JUSTIFY_LEFT</property>
+             <property name="wrap">False</property>
+             <property name="selectable">False</property>
+             <property name="xalign">0</property>
+             <property name="yalign">0.5</property>
+             <property name="xpad">0</property>
+             <property name="ypad">0</property>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkAlignment" id="alignment1">
+             <property name="visible">True</property>
+             <property name="xalign">0.5</property>
+             <property name="yalign">0.5</property>
+             <property name="xscale">1</property>
+             <property name="yscale">1</property>
+             <property name="top_padding">0</property>
+             <property name="bottom_padding">0</property>
+             <property name="left_padding">12</property>
+             <property name="right_padding">0</property>
+
+             <child>
+               <widget class="GtkVBox" id="vbox2">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">0</property>
+
+                 <child>
+                   <widget class="GtkRadioButton" id="Default">
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="label" translatable="yes">_Document Default</property>
+                     <property name="use_underline">True</property>
+                     <property name="relief">GTK_RELIEF_NORMAL</property>
+                     <property name="focus_on_click">True</property>
+                     <property name="active">False</property>
+                     <property name="inconsistent">False</property>
+                     <property name="draw_indicator">True</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkRadioButton" id="HereDefinitely">
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="label" translatable="yes">_Here, definitely</property>
+                     <property name="use_underline">True</property>
+                     <property name="relief">GTK_RELIEF_NORMAL</property>
+                     <property name="focus_on_click">True</property>
+                     <property name="active">False</property>
+                     <property name="inconsistent">False</property>
+                     <property name="draw_indicator">True</property>
+                     <property name="group">Default</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkRadioButton" id="Alternative">
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="label" translatable="yes">_Alternative:</property>
+                     <property name="use_underline">True</property>
+                     <property name="relief">GTK_RELIEF_NORMAL</property>
+                     <property name="focus_on_click">True</property>
+                     <property name="active">False</property>
+                     <property name="inconsistent">False</property>
+                     <property name="draw_indicator">True</property>
+                     <property name="group">Default</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkAlignment" id="alignment1">
+                     <property name="visible">True</property>
+                     <property name="xalign">0.5</property>
+                     <property name="yalign">0.5</property>
+                     <property name="xscale">1</property>
+                     <property name="yscale">1</property>
+                     <property name="top_padding">0</property>
+                     <property name="bottom_padding">0</property>
+                     <property name="left_padding">11</property>
+                     <property name="right_padding">0</property>
+
+                     <child>
+                       <widget class="GtkVBox" id="vbox3">
+                         <property name="visible">True</property>
+                         <property name="homogeneous">False</property>
+                         <property name="spacing">0</property>
+
+                         <child>
+                           <widget class="GtkCheckButton" id="Top">
+                             <property name="visible">True</property>
+                             <property name="sensitive">False</property>
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes">_Top of page</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                             <property name="active">False</property>
+                             <property name="inconsistent">False</property>
+                             <property name="draw_indicator">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkCheckButton" id="Bottom">
+                             <property name="visible">True</property>
+                             <property name="sensitive">False</property>
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes">_Bottom of page</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                             <property name="active">False</property>
+                             <property name="inconsistent">False</property>
+                             <property name="draw_indicator">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkCheckButton" id="PageOfFloats">
+                             <property name="visible">True</property>
+                             <property name="sensitive">False</property>
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes">_Page of floats</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                             <property name="active">False</property>
+                             <property name="inconsistent">False</property>
+                             <property name="draw_indicator">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkCheckButton" id="HereIfPossible">
+                             <property name="visible">True</property>
+                             <property name="sensitive">False</property>
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes">He_re, if possible</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                             <property name="active">False</property>
+                             <property name="inconsistent">False</property>
+                             <property name="draw_indicator">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+
+                         <child>
+                           <widget class="GtkCheckButton" id="IgnoreRules">
+                             <property name="visible">True</property>
+                             <property name="sensitive">False</property>
+                             <property name="can_focus">True</property>
+                             <property name="label" translatable="yes">_Ignore LaTeX rules</property>
+                             <property name="use_underline">True</property>
+                             <property name="relief">GTK_RELIEF_NORMAL</property>
+                             <property name="focus_on_click">True</property>
+                             <property name="active">False</property>
+                             <property name="inconsistent">False</property>
+                             <property name="draw_indicator">True</property>
+                           </widget>
+                           <packing>
+                             <property name="padding">0</property>
+                             <property name="expand">False</property>
+                             <property name="fill">False</property>
+                           </packing>
+                         </child>
+                       </widget>
+                     </child>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">True</property>
+                     <property name="fill">True</property>
+                   </packing>
+                 </child>
+               </widget>
+             </child>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">True</property>
+             <property name="fill">True</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkLabel" id="label1">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes">&lt;b&gt;Other&lt;/b&gt;</property>
+             <property name="use_underline">False</property>
+             <property name="use_markup">True</property>
+             <property name="justify">GTK_JUSTIFY_LEFT</property>
+             <property name="wrap">False</property>
+             <property name="selectable">False</property>
+             <property name="xalign">0</property>
+             <property name="yalign">0.5</property>
+             <property name="xpad">0</property>
+             <property name="ypad">0</property>
+           </widget>
+           <packing>
+             <property name="padding">0</property>
+             <property name="expand">False</property>
+             <property name="fill">False</property>
+           </packing>
+         </child>
+
+         <child>
+           <widget class="GtkAlignment" id="alignment2">
+             <property name="visible">True</property>
+             <property name="xalign">0.5</property>
+             <property name="yalign">0.5</property>
+             <property name="xscale">1</property>
+             <property name="yscale">1</property>
+             <property name="top_padding">0</property>
+             <property name="bottom_padding">0</property>
+             <property name="left_padding">12</property>
+             <property name="right_padding">0</property>
+
+             <child>
+               <widget class="GtkVBox" id="vbox4">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">0</property>
+
+                 <child>
+                   <widget class="GtkCheckButton" id="SpanColumns">
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="label" translatable="yes">_Span columns</property>
+                     <property name="use_underline">True</property>
+                     <property name="relief">GTK_RELIEF_NORMAL</property>
+                     <property name="focus_on_click">True</property>
+                     <property name="active">False</property>
+                     <property name="inconsistent">False</property>
+                     <property name="draw_indicator">True</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkCheckButton" id="RotateSideways">
+                     <property name="visible">True</property>
+                     <property name="can_focus">True</property>
+                     <property name="label" translatable="yes">R_otate sideways</property>
+                     <property name="use_underline">True</property>
+                     <property name="relief">GTK_RELIEF_NORMAL</property>
+                     <property name="focus_on_click">True</property>
+                     <property name="active">False</property>
+                     <property name="inconsistent">False</property>
+                     <property name="draw_indicator">True</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+               </widget>
+             </child>
+           </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">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+</glade-interface>
diff --git a/src/frontends/gtk/glade/note.glade b/src/frontends/gtk/glade/note.glade
new file mode 100644 (file)
index 0000000..bd1cc5d
--- /dev/null
@@ -0,0 +1,175 @@
+<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
+<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
+
+<glade-interface>
+
+<widget class="GtkDialog" id="dialog">
+  <property name="visible">True</property>
+  <property name="title" translatable="yes">dialog1</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">False</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="has_separator">False</property>
+
+  <child internal-child="vbox">
+    <widget class="GtkVBox" id="dialog-vbox1">
+      <property name="visible">True</property>
+      <property name="homogeneous">False</property>
+      <property name="spacing">0</property>
+
+      <child internal-child="action_area">
+       <widget class="GtkHButtonBox" id="dialog-action_area1">
+         <property name="visible">True</property>
+         <property name="layout_style">GTK_BUTTONBOX_END</property>
+
+         <child>
+           <widget class="GtkButton" id="Close">
+             <property name="visible">True</property>
+             <property name="can_default">True</property>
+             <property name="can_focus">True</property>
+             <property name="label">gtk-close</property>
+             <property name="use_stock">True</property>
+             <property name="relief">GTK_RELIEF_NORMAL</property>
+             <property name="focus_on_click">True</property>
+             <property name="response_id">-7</property>
+             <accelerator key="Escape" modifiers="0" signal="clicked"/>
+           </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>
+
+      <child>
+       <widget class="GtkFrame" id="frame1">
+         <property name="border_width">12</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_NONE</property>
+
+         <child>
+           <widget class="GtkAlignment" id="alignment1">
+             <property name="visible">True</property>
+             <property name="xalign">0.5</property>
+             <property name="yalign">0.5</property>
+             <property name="xscale">1</property>
+             <property name="yscale">1</property>
+             <property name="top_padding">0</property>
+             <property name="bottom_padding">0</property>
+             <property name="left_padding">12</property>
+             <property name="right_padding">0</property>
+
+             <child>
+               <widget class="GtkVBox" id="vbox1">
+                 <property name="visible">True</property>
+                 <property name="homogeneous">False</property>
+                 <property name="spacing">0</property>
+
+                 <child>
+                   <widget class="GtkRadioButton" id="LyXNote">
+                     <property name="visible">True</property>
+                     <property name="tooltip" translatable="yes">Display note in LyX only</property>
+                     <property name="can_focus">True</property>
+                     <property name="label" translatable="yes">LyX _Note</property>
+                     <property name="use_underline">True</property>
+                     <property name="relief">GTK_RELIEF_NORMAL</property>
+                     <property name="focus_on_click">True</property>
+                     <property name="active">False</property>
+                     <property name="inconsistent">False</property>
+                     <property name="draw_indicator">True</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkRadioButton" id="Comment">
+                     <property name="visible">True</property>
+                     <property name="tooltip" translatable="yes">Export to LaTeX/Docbook but don't print</property>
+                     <property name="can_focus">True</property>
+                     <property name="label" translatable="yes">C_omment</property>
+                     <property name="use_underline">True</property>
+                     <property name="relief">GTK_RELIEF_NORMAL</property>
+                     <property name="focus_on_click">True</property>
+                     <property name="active">False</property>
+                     <property name="inconsistent">False</property>
+                     <property name="draw_indicator">True</property>
+                     <property name="group">LyXNote</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+
+                 <child>
+                   <widget class="GtkRadioButton" id="GreyedOut">
+                     <property name="visible">True</property>
+                     <property name="tooltip" translatable="yes">Print as gray text</property>
+                     <property name="can_focus">True</property>
+                     <property name="label" translatable="yes">_Grayed out</property>
+                     <property name="use_underline">True</property>
+                     <property name="relief">GTK_RELIEF_NORMAL</property>
+                     <property name="focus_on_click">True</property>
+                     <property name="active">False</property>
+                     <property name="inconsistent">False</property>
+                     <property name="draw_indicator">True</property>
+                     <property name="group">LyXNote</property>
+                   </widget>
+                   <packing>
+                     <property name="padding">0</property>
+                     <property name="expand">False</property>
+                     <property name="fill">False</property>
+                   </packing>
+                 </child>
+               </widget>
+             </child>
+           </widget>
+         </child>
+
+         <child>
+           <widget class="GtkLabel" id="label1">
+             <property name="visible">True</property>
+             <property name="label" translatable="yes">&lt;b&gt;Type&lt;/b&gt;</property>
+             <property name="use_underline">False</property>
+             <property name="use_markup">True</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>
+       <packing>
+         <property name="padding">0</property>
+         <property name="expand">True</property>
+         <property name="fill">True</property>
+       </packing>
+      </child>
+    </widget>
+  </child>
+</widget>
+
+</glade-interface>