ComSquare
sources
Debugger
ClosableWindow.hpp
Go to the documentation of this file.
1
//
2
// Created by anonymus-raccoon on 3/20/20.
3
//
4
5
#pragma once
6
7
#include <QtWidgets/QMainWindow>
8
#include <utility>
9
10
namespace
ComSquare::Debugger
11
{
12
class
ClosableWindow
:
public
QMainWindow
13
{
14
protected
:
15
void
closeEvent
(QCloseEvent *)
override
16
{
17
this->
_onClose
();
18
}
19
20
private
:
21
std::function<void ()>
_onClose
;
22
23
public
:
24
explicit
ClosableWindow
(std::function<
void
()> onClose)
25
:
_onClose
(std::move(onClose))
26
{
27
this->setContextMenuPolicy(Qt::NoContextMenu);
28
this->setAttribute(Qt::WA_QuitOnClose,
false
);
29
this->setAttribute(Qt::WA_DeleteOnClose);
30
}
31
ClosableWindow
(
const
ClosableWindow
&) =
delete
;
32
ClosableWindow
&
operator=
(
const
ClosableWindow
&) =
delete
;
33
~ClosableWindow
()
override
=
default
;
34
};
35
}
// namespace ComSquare::Debugger
ComSquare::Debugger::ClosableWindow
Definition:
ClosableWindow.hpp:12
ComSquare::Debugger
Definition:
APUDebug.cpp:11
ComSquare::Debugger::ClosableWindow::closeEvent
void closeEvent(QCloseEvent *) override
Definition:
ClosableWindow.hpp:15
ComSquare::Debugger::ClosableWindow::ClosableWindow
ClosableWindow(std::function< void()> onClose)
Definition:
ClosableWindow.hpp:24
ComSquare::Debugger::ClosableWindow::_onClose
std::function< void()> _onClose
Definition:
ClosableWindow.hpp:21
ComSquare::Debugger::ClosableWindow::~ClosableWindow
~ClosableWindow() override=default
ComSquare::Debugger::ClosableWindow::operator=
ClosableWindow & operator=(const ClosableWindow &)=delete
Generated by
1.8.17