include/vcl/ctrl.hxx | 2 ++ include/vcl/uitest/uiobject.hxx | 2 ++ vcl/source/control/ctrl.cxx | 11 +++++++++-- vcl/source/uitest/uiobject.cxx | 17 +++++++++++++++++ 4 files changed, 30 insertions(+), 2 deletions(-)
New commits: commit 09e8815066c133b6a53fd5bc2f3d3ab8ad6e4248 Author: Saurav Chirania <saurav.c...@gmail.com> Date: Wed Jul 4 13:55:50 2018 +0530 uitest logger: log the events calling CallEventListeners() Some events directly call CallEventListeners() instead of calling ImplCallEventListenersAndHandler. This patch thus moves logAction to CallEventListeners() Further, this patch adds logging for EditSelectionChanged which is broadcasted using CallEventListeners(). Change-Id: Ib15367688cdbcdb542f6139d270d8d463f214fde Reviewed-on: https://gerrit.libreoffice.org/56952 Tested-by: Jenkins Reviewed-by: Markus Mohrhard <markus.mohrh...@googlemail.com> diff --git a/include/vcl/ctrl.hxx b/include/vcl/ctrl.hxx index 5529cf86b912..48daf0e5401e 100644 --- a/include/vcl/ctrl.hxx +++ b/include/vcl/ctrl.hxx @@ -76,6 +76,8 @@ protected: VclEventId nEvent, std::function<void()> const & callHandler ); + void CallEventListeners( VclEventId nEvent, void* pData = nullptr ); + /** draws the given text onto the given device If no reference device is set, the draw request will simply be forwarded to OutputDevice::DrawText. Otherwise, diff --git a/include/vcl/uitest/uiobject.hxx b/include/vcl/uitest/uiobject.hxx index 37f9f883f058..5ff62735ea02 100644 --- a/include/vcl/uitest/uiobject.hxx +++ b/include/vcl/uitest/uiobject.hxx @@ -189,6 +189,8 @@ public: static std::unique_ptr<UIObject> create(vcl::Window* pWindow); + virtual OUString get_action(VclEventId nEvent) const override; + protected: virtual OUString get_name() const override; diff --git a/vcl/source/control/ctrl.cxx b/vcl/source/control/ctrl.cxx index a807409bdd2d..edf535e2968e 100644 --- a/vcl/source/control/ctrl.cxx +++ b/vcl/source/control/ctrl.cxx @@ -296,12 +296,19 @@ void Control::AppendLayoutData( const Control& rSubControl ) const } } -bool Control::ImplCallEventListenersAndHandler( VclEventId nEvent, std::function<void()> const & callHandler ) +void Control::CallEventListeners( VclEventId nEvent, void* pData) { VclPtr<Control> xThis(this); UITestLogger::getInstance().logAction(xThis, nEvent); - CallEventListeners( nEvent ); + vcl::Window::CallEventListeners(nEvent, pData); +} + +bool Control::ImplCallEventListenersAndHandler( VclEventId nEvent, std::function<void()> const & callHandler ) +{ + VclPtr<Control> xThis(this); + + Control::CallEventListeners( nEvent ); if ( !xThis->IsDisposed() ) { diff --git a/vcl/source/uitest/uiobject.cxx b/vcl/source/uitest/uiobject.cxx index b098205470eb..5b72f2ab1945 100644 --- a/vcl/source/uitest/uiobject.cxx +++ b/vcl/source/uitest/uiobject.cxx @@ -684,6 +684,23 @@ StringMap EditUIObject::get_state() return aMap; } +OUString EditUIObject::get_action(VclEventId nEvent) const +{ + if (nEvent == VclEventId::EditSelectionChanged) + { + const Selection& rSelection = mxEdit->GetSelection(); + long nMin = rSelection.Min(); + long nMax = rSelection.Max(); + return this->get_type() + " Action:SELECT Id:" + + mxEdit->get_id() + + " Parent:" + get_top_parent(mxEdit)->get_id() + + " {\"FROM\": \"" + OUString::number(nMin) + "\", \"TO\": \"" + + OUString::number(nMax) + "\"}"; + } + else + return WindowUIObject::get_action(nEvent); +} + OUString EditUIObject::get_name() const { return OUString("EditUIObject"); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits