*
* \author Huang Ying
*
- * Full author contact details are available in file CREDITS
+ * Full author contact details are available in file CREDITS.
*/
#ifndef GVIEWBASE_H
#define GVIEWBASE_H
-#include <gtkmm.h>
-#include <libglademm.h>
-#include <boost/scoped_ptr.hpp>
#include "Dialog.h"
#include "ButtonPolicies.h"
#include "GBC.h"
-class GViewBase : public Dialog::View, public SigC::Object
-{
+#include <gtkmm.h>
+#include <libglademm.h>
+
+#include <boost/scoped_ptr.hpp>
+
+namespace lyx {
+namespace frontend {
+
+class GViewBase : public Dialog::View, public sigc::trackable {
public:
- GViewBase(Dialog &, string const &, bool allowResize);
+ GViewBase(Dialog &, std::string const &, bool allowResize);
virtual ~GViewBase();
+ void setCancel(Gtk::Button * cancel);
+ void setApply(Gtk::Button * apply);
+ void setOK(Gtk::Button * ok);
+ void setRestore(Gtk::Button * restore);
+ void setTitle(std::string const &);
+ bool readOnly() const;
protected:
// Build the dialog
virtual void build();
bool allowResize_;
};
+
template <class Dialog>
-class GViewDB : public GViewBase
-{
+class GViewDB : public GViewBase {
protected:
- GViewDB(Dialog &, string const &, bool allowResize);
- virtual const Gtk::Window * window() const;
+ GViewDB(Dialog &, std::string const &, bool allowResize);
+ virtual Gtk::Window const * window() const;
virtual Gtk::Window * window();
boost::scoped_ptr<Dialog> dialog_;
};
template <class Dialog>
-GViewDB<Dialog>::GViewDB(Dialog & parent, string const & t, bool allowResize) :
+GViewDB<Dialog>::GViewDB(Dialog & parent, std::string const & t, bool allowResize) :
GViewBase(parent, t, allowResize)
{
}
}
-class GViewGladeB : public GViewBase
-{
+class GViewGladeB : public GViewBase {
protected:
- GViewGladeB(Dialog & parent, string const & t, bool allowResize);
- virtual const Gtk::Window * window() const;
+ GViewGladeB(Dialog & parent, std::string const & t, bool allowResize);
+ virtual Gtk::Window const * window() const;
virtual Gtk::Window * window();
Glib::RefPtr<Gnome::Glade::Xml> xml_;
};
template <class Controller, class Base>
-class GViewCB : public Base
-{
+class GViewCB : public Base {
public:
Controller & controller();
Controller const & controller() const;
protected:
- GViewCB(Dialog & parent, string const & t, bool allowResize = false);
+ GViewCB(Dialog & parent, std::string const & t, bool allowResize = false);
};
template <class Controller, class Base>
-GViewCB<Controller, Base>::GViewCB(Dialog & parent, string const & t,
+GViewCB<Controller, Base>::GViewCB(Dialog & parent, std::string const & t,
bool allowResize) :
Base(parent, t, allowResize)
{
template <class Controller, class Base>
Controller & GViewCB<Controller, Base>::controller()
{
- return static_cast<Controller &>(getController());
+ return static_cast<Controller &>(this->getController());
}
template <class Controller, class Base>
Controller const & GViewCB<Controller, Base>::controller() const
{
- return static_cast<Controller const &>(getController());
+ return static_cast<Controller const &>(this->getController());
}
+} // namespace frontend
+} // namespace lyx
+
#endif