diff options
author | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2016-03-30 05:27:54 +0200 |
---|---|---|
committer | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2016-06-18 17:01:51 +0200 |
commit | 073c47e3719acdc5094144a1cba813317aec88a5 (patch) | |
tree | 55bf94993175a085e87402f6496e1e27963c9227 /include/vcl | |
parent | 77dd7f82911b2e8cd076dd71f3b3901b84fb98d6 (diff) |
uitest: move declaration for the uitesting wrapper objects to include/ dir
This allows non-vcl wrapper objects to inherit from the vcl base
classes. This is especially important for the WindowUIObject base class
object.
Change-Id: I91ef69839ff4c031d3bcd21d70b4b9e7d62ad572
Diffstat (limited to 'include/vcl')
-rw-r--r-- | include/vcl/uitest/uiobject.hxx | 245 |
1 files changed, 245 insertions, 0 deletions
diff --git a/include/vcl/uitest/uiobject.hxx b/include/vcl/uitest/uiobject.hxx index 855cac3e53b5..963003e1ed3e 100644 --- a/include/vcl/uitest/uiobject.hxx +++ b/include/vcl/uitest/uiobject.hxx @@ -12,6 +12,14 @@ #include <memory> #include <vcl/window.hxx> +#include <vcl/spin.hxx> +#include <vcl/button.hxx> +#include <vcl/edit.hxx> +#include <vcl/tabpage.hxx> +#include <vcl/lstbox.hxx> +#include <vcl/combobox.hxx> +#include <vcl/spinfld.hxx> + #include <vcl/dllapi.h> enum class UIObjectType @@ -87,4 +95,241 @@ public: virtual void dumpHierarchy() const; }; +class UITEST_DLLPUBLIC WindowUIObject : public UIObject +{ + VclPtr<vcl::Window> mxWindow; + +public: + + WindowUIObject(VclPtr<vcl::Window> xWindow); + + virtual StringMap get_state() override; + + virtual void execute(const OUString& rAction, + const StringMap& rParameters) override; + + virtual UIObjectType get_type() const override; + + virtual std::unique_ptr<UIObject> get_child(const OUString& rID) override; + + virtual void dumpState() const override; + + virtual void dumpHierarchy() const override; + + static std::unique_ptr<UIObject> create(vcl::Window* pWindow); + +protected: + + virtual OUString get_name() const; + +}; + +// TODO: moggi: what about push buttons? +class UITEST_DLLPUBLIC ButtonUIObject : public WindowUIObject +{ + VclPtr<Button> mxButton; +public: + + ButtonUIObject(VclPtr<Button> xButton); + virtual ~ButtonUIObject(); + + virtual StringMap get_state() override; + + virtual void execute(const OUString& rAction, + const StringMap& rParameters) override; + + virtual UIObjectType get_type() const override; + + static std::unique_ptr<UIObject> create(vcl::Window* pWindow); + +protected: + + virtual OUString get_name() const override; +}; + +class UITEST_DLLPUBLIC DialogUIObject : public WindowUIObject +{ + VclPtr<Dialog> mxDialog; + +public: + + DialogUIObject(VclPtr<Dialog> xDialog); + virtual ~DialogUIObject(); + + virtual UIObjectType get_type() const override; + + virtual StringMap get_state() override; + + static std::unique_ptr<UIObject> create(vcl::Window* pWindow); + +protected: + + virtual OUString get_name() const override; +}; + +class UITEST_DLLPUBLIC EditUIObject : public WindowUIObject +{ + VclPtr<Edit> mxEdit; + +public: + + EditUIObject(VclPtr<Edit> xEdit); + virtual ~EditUIObject(); + + virtual void execute(const OUString& rAction, + const StringMap& rParameters) override; + + virtual StringMap get_state() override; + + virtual UIObjectType get_type() const override; + + static std::unique_ptr<UIObject> create(vcl::Window* pWindow); + +protected: + + virtual OUString get_name() const override; +}; + +// TODO: moggi: maybe let it inherit from the button case +class UITEST_DLLPUBLIC CheckBoxUIObject : public WindowUIObject +{ +private: + VclPtr<CheckBox> mxCheckBox; + +public: + CheckBoxUIObject(VclPtr<CheckBox> xCheckbox); + virtual ~CheckBoxUIObject(); + + virtual void execute(const OUString& rAction, + const StringMap& rParameters) override; + + virtual StringMap get_state() override; + + virtual UIObjectType get_type() const override; + + static std::unique_ptr<UIObject> create(vcl::Window* pWindow); + +protected: + + virtual OUString get_name() const override; +}; + +class UITEST_DLLPUBLIC TabPageUIObject : public WindowUIObject +{ +private: + VclPtr<TabPage> mxTabPage; +public: + TabPageUIObject(VclPtr<TabPage> xTabPage); + virtual ~TabPageUIObject(); + + virtual void execute(const OUString& rAction, + const StringMap& rParameters) override; + + virtual StringMap get_state() override; + + virtual UIObjectType get_type() const override; + + static std::unique_ptr<UIObject> create(vcl::Window* pWindow); + +protected: + + virtual OUString get_name() const override; +}; + +class UITEST_DLLPUBLIC ListBoxUIObject : public WindowUIObject +{ +private: + VclPtr<ListBox> mxListBox; + +public: + + ListBoxUIObject(VclPtr<ListBox> xListBox); + virtual ~ListBoxUIObject(); + + virtual void execute(const OUString& rAction, + const StringMap& rParameters) override; + + virtual StringMap get_state() override; + + virtual UIObjectType get_type() const override; + + static std::unique_ptr<UIObject> create(vcl::Window* pWindow); + +protected: + + virtual OUString get_name() const override; +}; + +// TODO: moggi: should it inherit from EditUIObject? +class UITEST_DLLPUBLIC ComboBoxUIObject : public WindowUIObject +{ +private: + VclPtr<ComboBox> mxComboBox; + +public: + + ComboBoxUIObject(VclPtr<ComboBox> xListBox); + virtual ~ComboBoxUIObject(); + + virtual void execute(const OUString& rAction, + const StringMap& rParameters) override; + + virtual StringMap get_state() override; + + virtual UIObjectType get_type() const override; + + static std::unique_ptr<UIObject> create(vcl::Window* pWindow); + +protected: + + virtual OUString get_name() const override; +}; + +class UITEST_DLLPUBLIC SpinUIObject : public WindowUIObject +{ +private: + VclPtr<SpinButton> mxSpinButton; + +public: + + SpinUIObject(VclPtr<SpinButton> xSpinButton); + virtual ~SpinUIObject(); + + virtual void execute(const OUString& rAction, + const StringMap& rParameters) override; + + virtual StringMap get_state() override; + + virtual UIObjectType get_type() const override; + + static std::unique_ptr<UIObject> create(vcl::Window* pWindow); + +protected: + + virtual OUString get_name() const override; +}; + +class UITEST_DLLPUBLIC SpinFieldUIObject : public EditUIObject +{ + VclPtr<SpinField> mxSpinField; + +public: + + SpinFieldUIObject(VclPtr<SpinField> xEdit); + virtual ~SpinFieldUIObject(); + + virtual void execute(const OUString& rAction, + const StringMap& rParameters) override; + + virtual StringMap get_state() override; + + virtual UIObjectType get_type() const override; + + static std::unique_ptr<UIObject> create(vcl::Window* pWindow); + +protected: + + virtual OUString get_name() const override; +}; + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |