swift
mainwindowaccess.h
1 // SPDX-FileCopyrightText: Copyright (C) 2016 swift Project Community / Contributors
2 // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
3 
4 #ifndef SWIFT_GUI_MAINWINDOWACCESS_H
5 #define SWIFT_GUI_MAINWINDOWACCESS_H
6 
7 #include <QObject>
8 #include <QString>
9 
10 #include "gui/swiftguiexport.h"
11 #include "misc/statusmessagelist.h"
12 
13 namespace swift::gui
14 {
15  class CManagedStatusBar;
16  class COverlayMessagesFrame;
17  namespace components
18  {
19  class CLogComponent;
20  }
21 
26  {
27  public:
29  virtual ~IMainWindowAccess();
30 
33 
36 
39 
41  virtual bool displayInStatusBar(const swift::misc::CStatusMessage &message);
42 
44  virtual bool displayInOverlayWindow(const swift::misc::CStatusMessage &message,
45  std::chrono::milliseconds timeout = std::chrono::milliseconds(0));
46 
48  virtual bool displayInOverlayWindow(const swift::misc::CStatusMessageList &messages,
49  std::chrono::milliseconds timeout = std::chrono::milliseconds(0));
50 
52  virtual bool displayInOverlayWindow(const QString &html,
53  std::chrono::milliseconds timeout = std::chrono::milliseconds(0));
54 
55  protected:
56  components::CLogComponent *m_mwaLogComponent = nullptr;
57  CManagedStatusBar *m_mwaStatusBar = nullptr;
58  COverlayMessagesFrame *m_mwaOverlayFrame = nullptr;
59  };
60 } // namespace swift::gui
61 
62 Q_DECLARE_INTERFACE(swift::gui::IMainWindowAccess, "org.swift-project.swiftgui.mainwindowaccess")
63 
64 #endif // SWIFT_GUI_MAINWINDOWACCESS_H
Using this class provides a QFrame with the overlay functionality already integrated.
Direct acccess to main window`s status bar, info bar and such.
IMainWindowAccess(const IMainWindowAccess &)=delete
Copy constructor.
IMainWindowAccess & operator=(const IMainWindowAccess &)=delete
Copy assignment operator.
GUI displaying log and status messages.
Definition: logcomponent.h:45
Streamable status message, e.g.
Status messages, e.g. from Core -> GUI.
GUI related classes.
#define SWIFT_GUI_EXPORT
Export a class or function from the library.