*
* \author John Levon
* \author Herbert Voß
+ * \author Baruch Even
+ * \author Angus Leeming
*
* Full author contact details are available in file CREDITS.
*/
#ifndef GUIGRAPHICS_H
#define GUIGRAPHICS_H
-#include "GuiDialogView.h"
+#include "GuiDialog.h"
#include "ui_GraphicsUi.h"
-#include "ControlGraphics.h"
-#include <QDialog>
+#include "support/docstring.h"
+#include "insets/InsetGraphics.h"
#include <vector>
class QString;
namespace lyx {
-namespace frontend {
-class GuiGraphics;
+class InsetGraphics;
+class InsetGraphicsParams;
+
+namespace frontend {
-class GuiGraphicsDialog : public QDialog, public Ui::GraphicsUi
+class GuiGraphics : public GuiDialog, public Ui::GraphicsUi
{
Q_OBJECT
+
public:
- GuiGraphicsDialog(GuiGraphics * form);
- virtual void setAutoText();
- virtual void showView();
-protected Q_SLOTS:
- virtual void change_adaptor();
- virtual void change_bb();
- virtual void on_browsePB_clicked();
- virtual void on_getPB_clicked();
- virtual void on_editPB_clicked();
- virtual void on_filename_textChanged(const QString &);
- virtual void on_scaleCB_toggled(bool);
- virtual void on_WidthCB_toggled(bool);
- virtual void on_HeightCB_toggled(bool);
- virtual void on_angle_textChanged(const QString &);
-protected:
- virtual void closeEvent(QCloseEvent * e);
-private:
- GuiGraphics * form_;
-};
+ GuiGraphics(GuiView & lv);
+ void setAutoText();
+private Q_SLOTS:
+ void change_adaptor();
+ void change_bb();
+ void on_browsePB_clicked();
+ void on_getPB_clicked();
+ void on_editPB_clicked();
+ void on_filename_textChanged(const QString &);
+ void on_scaleCB_toggled(bool);
+ void on_WidthCB_toggled(bool);
+ void on_HeightCB_toggled(bool);
+ void on_angle_textChanged(const QString &);
-class GuiGraphics : public GuiView<GuiGraphicsDialog>
-{
-public:
- ///
- friend class GuiGraphicsDialog;
- ///
- GuiGraphics(GuiDialog &);
- /// parent controller
- ControlGraphics & controller()
- { return static_cast<ControlGraphics &>(this->getController()); }
- /// parent controller
- ControlGraphics const & controller() const
- { return static_cast<ControlGraphics const &>(this->getController()); }
-protected:
- virtual bool isValid();
private:
+ void closeEvent(QCloseEvent * e);
+ bool isValid();
/// Apply changes
- virtual void applyView();
+ void applyView();
/// update
- virtual void update_contents();
- /// build the dialog
- virtual void build_dialog();
+ void updateContents();
/// get bounding box from file
void getBB();
/// Store the LaTeX names for the rotation origins.
std::vector<std::string> origin_ltx;
+ ///
+ bool initialiseParams(std::string const & data);
+ /// clean-up on hide.
+ void clearParams();
+ /// clean-up on hide.
+ void dispatchParams();
+ ///
+ bool isBufferDependent() const { return true; }
+
+ /// Browse for a file
+ docstring const browse(docstring const &) const;
+ /// Read the Bounding Box from a eps or ps-file
+ std::string const readBB(std::string const & file);
+ /// Control the bb
+ bool bbChanged;
+ /// test if file exist
+ bool isFilenameValid(std::string const & fname) const;
+ /// edit file
+ void editGraphics();
+private:
+ ///
+ InsetGraphicsParams params_;
};
+
+/// get the units for the bounding box
+std::vector<std::string> const getBBUnits();
+
} // namespace frontend
} // namespace lyx