loplugin:constmethod in vcl
[LibreOffice.git] / include / vcl / uitest / logger.hxx
blob8bda3548875d7b3e90c858ca7480e328ec6c6b3a
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 */
10 #ifndef INCLUDED_VCL_UITEST_LOGGER_HXX
11 #define INCLUDED_VCL_UITEST_LOGGER_HXX
13 #include <vcl/dllapi.h>
15 #include <tools/stream.hxx>
16 #include <vcl/vclevent.hxx>
18 namespace com
20 namespace sun
22 namespace star
24 namespace beans
26 struct PropertyValue;
31 namespace com
33 namespace sun
35 namespace star
37 namespace uno
39 template <class E> class Sequence;
45 struct EventDescription;
46 class Control;
47 class KeyEvent;
49 class UITEST_DLLPUBLIC UITestLogger
51 private:
52 SvFileStream maStream;
54 bool mbValid;
56 OUString app_name;
58 public:
59 UITestLogger();
61 void logCommand(const OUString& rAction,
62 const css::uno::Sequence<css::beans::PropertyValue>& rArgs);
64 void logAction(VclPtr<Control> const& xUIElement, VclEventId nEvent);
66 void log(const OUString& rString);
68 void logKeyInput(VclPtr<vcl::Window> const& xUIElement, const KeyEvent& rEvent);
70 void logEvent(const EventDescription& rDescription);
72 static UITestLogger& getInstance();
74 void setAppName(OUString name) { app_name = name; }
76 OUString getAppName() const { return app_name; }
79 #endif
81 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */