]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/gnome/GnomeBase.h
A lean, clean and working start to the new, improved gnome frontend.
[lyx.git] / src / frontends / gnome / GnomeBase.h
index fe3751474e6990fff1a6779fcd677f8be45ff730..b795b8621e8e5c0a6e51245469bbab9fe05f398e 100644 (file)
@@ -1,11 +1,11 @@
 // -*- C++ -*-
 /* This file is part of
  * =================================================
- * 
+ *
  *          LyX, The Document Processor
  *          Copyright 1995-2000 The LyX Team.
  *
- * ================================================= 
+ * =================================================
  *
  * \author Baruch Even
  **/
@@ -32,15 +32,15 @@ class Dialog;
  */
 class GnomeBase : public ViewBC<gnomeBC>, public SigC::Object {
 public:
-       /// 
-       GnomeBase(ControlButtons & c, string const & glade_file, string const & name);
+       ///
+       GnomeBase(ControlButtons & c,  string const & name);
        ///
        virtual ~GnomeBase();
 
 protected:
        /// Get the widget named 'name' from the xml representation.
        template <class T>
-       T* getWidget(char const * name) const; 
+       T* getWidget(char const * name) const;
 
        /// Get the dialog we use.
        Gnome::Dialog * dialog();
@@ -49,9 +49,20 @@ protected:
        void show();
        /// Hide the dialog.
        void hide();
-       
        /// Build the dialog. Also connects signals and prepares it for work.
        virtual void build() = 0;
+       /// Dialog is valid
+       virtual bool validate();
+       /// Default OK behaviour
+       virtual void OKClicked();
+       /// Default Cancel behaviour
+       virtual void CancelClicked();
+       /// Default Restore behaviour
+       virtual void RestoreClicked();
+       /// Default apply behaviour
+       virtual void ApplyClicked();
+       /// Default changed input behaviour
+       virtual void InputChanged();
 
 private:
        /// Loads the glade file to memory.
@@ -82,7 +93,7 @@ T* GnomeBase::getWidget(char const * name) const
 
 /**
  * This class is used to provide a simple automatic casting of the controller.
- * We chose not to make GnomeBase a template since it has some size and we 
+ * We chose not to make GnomeBase a template since it has some size and we
  * have no reason to duplicate it by making it a template.
  *
  * Basically the FormCB<Controller> template instantiates GnomeBase and passes
@@ -93,14 +104,14 @@ T* GnomeBase::getWidget(char const * name) const
 template <class Controller>
 class FormCB : public GnomeBase {
 public:
-       FormCB(Controller & c, string const & file, string const & name);
+       FormCB(Controller & c, string const & name);
 protected:
        Controller & controller();
 };
 
 template <class Controller>
-FormCB<Controller>::FormCB(Controller & c, string const & file, string const & name)
-       : GnomeBase(c, file, name)
+FormCB<Controller>::FormCB(Controller & c,  string const & name)
+       : GnomeBase(c, name)
 {}
 
 template <class Controller>