summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/svx/weldeditview.hxx2
-rw-r--r--svx/source/dialog/weldeditview.cxx38
2 files changed, 40 insertions, 0 deletions
diff --git a/include/svx/weldeditview.hxx b/include/svx/weldeditview.hxx
index 00f49f6965a7..11f35c2e7164 100644
--- a/include/svx/weldeditview.hxx
+++ b/include/svx/weldeditview.hxx
@@ -32,6 +32,8 @@ public:
OUString GetText() const { return m_xEditEngine->GetText(); }
+ virtual FactoryFunction GetUITestFactory() const override;
+
void SetModifyHdl(const Link<LinkParamNone*, void>& rLink)
{
m_xEditEngine->SetModifyHdl(rLink);
diff --git a/svx/source/dialog/weldeditview.cxx b/svx/source/dialog/weldeditview.cxx
index e7d90fab15b8..9f4329b7adfd 100644
--- a/svx/source/dialog/weldeditview.cxx
+++ b/svx/source/dialog/weldeditview.cxx
@@ -40,9 +40,11 @@
#include <unotools/accessiblestatesethelper.hxx>
#include <vcl/cursor.hxx>
#include <vcl/event.hxx>
+#include <vcl/layout.hxx>
#include <vcl/ptrstyle.hxx>
#include <vcl/settings.hxx>
#include <vcl/svapp.hxx>
+#include <vcl/uitest/uiobject.hxx>
WeldEditView::WeldEditView() {}
@@ -1495,4 +1497,40 @@ void WeldEditView::LoseFocus()
}
}
+namespace
+{
+class WeldEditViewUIObject final : public WindowUIObject
+{
+private:
+ WeldEditView* mpEditView;
+
+public:
+ WeldEditViewUIObject(vcl::Window* pEditViewWin, WeldEditView* pEditView)
+ : WindowUIObject(pEditViewWin)
+ , mpEditView(pEditView)
+ {
+ }
+
+ static std::unique_ptr<UIObject> create(vcl::Window* pWindow)
+ {
+ VclDrawingArea* pEditViewWin = dynamic_cast<VclDrawingArea*>(pWindow);
+ assert(pEditViewWin);
+ return std::unique_ptr<UIObject>(new WeldEditViewUIObject(
+ pEditViewWin, static_cast<WeldEditView*>(pEditViewWin->GetUserData())));
+ }
+
+ virtual StringMap get_state() override
+ {
+ StringMap aMap = WindowUIObject::get_state();
+ aMap["Text"] = mpEditView->GetText();
+ return aMap;
+ }
+
+private:
+ virtual OUString get_name() const override { return "WeldEditViewUIObject"; }
+};
+}
+
+FactoryFunction WeldEditView::GetUITestFactory() const { return WeldEditViewUIObject::create; }
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */