LeechCraft 0.6.70-17609-g3dde4097dd
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
actionresultreporter.h
Go to the documentation of this file.
1/**********************************************************************
2 * LeechCraft - modular cross-platform feature rich internet client.
3 * Copyright (C) 2006-2014 Georg Rudoy
4 *
5 * Distributed under the Boost Software License, Version 1.0.
6 * (See accompanying file LICENSE or copy at https://www.boost.org/LICENSE_1_0.txt)
7 **********************************************************************/
8
9#pragma once
10
11#include <QDeadlineTimer>
12#include <QPointer>
13#include <QString>
15#include "guiconfig.h"
16
17class QWidget;
18
19class IEntityManager;
20
21namespace LC::Util
22{
24 {
25 IEntityManager& IEM_;
26 const QString Context_;
27
28 const Priority Priority_;
29
30 QPointer<QWidget> Parent_;
31 const bool HadParent_ = Parent_;
32
33 QDeadlineTimer Timer_;
34 public:
35 struct Config
36 {
37 QString Context_;
39 std::optional<std::chrono::milliseconds> BackgroundDelay_ {};
40 };
41
42 explicit ActionResultReporter (IEntityManager& iem, Config config, QWidget *parent = nullptr);
43
44 void operator() (const QString&);
45 };
46}
Proxy to core entity manager.
ActionResultReporter(IEntityManager &iem, Config config, QWidget *parent=nullptr)
#define UTIL_GUI_API
Definition guiconfig.h:16
Priority
Definition structures.h:215
std::optional< std::chrono::milliseconds > BackgroundDelay_