HAL
splitter_anchor.h
Go to the documentation of this file.
1
// MIT License
2
//
3
// Copyright (c) 2019 Ruhr University Bochum, Chair for Embedded Security. All Rights reserved.
4
// Copyright (c) 2019 Marc Fyrbiak, Sebastian Wallat, Max Hoffmann ("ORIGINAL AUTHORS"). All rights reserved.
5
// Copyright (c) 2021 Max Planck Institute for Security and Privacy. All Rights reserved.
6
// Copyright (c) 2021 Jörn Langheinrich, Julian Speith, Nils Albartus, René Walendy, Simon Klix ("ORIGINAL AUTHORS"). All Rights reserved.
7
//
8
// Permission is hereby granted, free of charge, to any person obtaining a copy
9
// of this software and associated documentation files (the "Software"), to deal
10
// in the Software without restriction, including without limitation the rights
11
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12
// copies of the Software, and to permit persons to whom the Software is
13
// furnished to do so, subject to the following conditions:
14
//
15
// The above copyright notice and this permission notice shall be included in all
16
// copies or substantial portions of the Software.
17
//
18
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
24
// SOFTWARE.
25
26
#pragma once
27
28
#include "
gui/content_anchor/content_anchor.h
"
29
30
#include <QList>
31
#include <QObject>
32
33
namespace
hal
34
{
35
class
DockBar;
36
class
Splitter;
37
class
ContentFrame;
38
class
ContentWidget;
39
48
class
SplitterAnchor
:
public
QObject
,
public
ContentAnchor
49
{
50
Q_OBJECT
51
52
public
:
60
SplitterAnchor
(
DockBar
*
DockBar
,
Splitter
*
Splitter
,
QObject
*
parent
=
nullptr
);
61
69
virtual
void
add
(
ContentWidget
* widget,
int
index = -1)
override
;
70
77
virtual
void
remove
(
ContentWidget
* widget)
override
;
78
86
virtual
void
detach
(
ContentWidget
* widget)
override
;
87
95
virtual
void
reattach
(
ContentWidget
* widget)
override
;
96
102
virtual
void
open
(
ContentWidget
* widget)
override
;
103
109
virtual
void
close
(
ContentWidget
* widget)
override
;
110
116
int
count
()
const override
;
117
122
void
clear
();
123
124
Q_SIGNALS
:
125
129
void
contentChanged
();
130
131
private
:
132
DockBar
* mDockBar;
133
Splitter
* mSplitter;
134
QList<ContentFrame*>
mDetachedFrames;
135
};
136
}
hal::ContentAnchor
An abstract class that provides the interface for specific anchors (see SplitterAnchor or TabWidget )...
Definition:
content_anchor.h:38
hal::ContentWidget
Abstract class for Widgets within HAL's ContentArea.
Definition:
content_widget.h:50
hal::DockBar
Contains and handles DockButtons.
Definition:
dock_bar.h:48
hal::SplitterAnchor
Adds specific ContentWidgets to HALs main content area.
Definition:
splitter_anchor.h:49
hal::SplitterAnchor::open
virtual void open(ContentWidget *widget) override
Definition:
splitter_anchor.cpp:69
hal::SplitterAnchor::count
int count() const override
Definition:
splitter_anchor.cpp:98
hal::SplitterAnchor::close
virtual void close(ContentWidget *widget) override
Definition:
splitter_anchor.cpp:83
hal::SplitterAnchor::add
virtual void add(ContentWidget *widget, int index=-1) override
Definition:
splitter_anchor.cpp:21
hal::SplitterAnchor::reattach
virtual void reattach(ContentWidget *widget) override
Definition:
splitter_anchor.cpp:58
hal::SplitterAnchor::contentChanged
void contentChanged()
hal::SplitterAnchor::SplitterAnchor
SplitterAnchor(DockBar *DockBar, Splitter *Splitter, QObject *parent=nullptr)
Definition:
splitter_anchor.cpp:13
hal::SplitterAnchor::remove
virtual void remove(ContentWidget *widget) override
Definition:
splitter_anchor.cpp:32
hal::SplitterAnchor::clear
void clear()
Definition:
splitter_anchor.cpp:103
hal::SplitterAnchor::detach
virtual void detach(ContentWidget *widget) override
Definition:
splitter_anchor.cpp:42
hal::Splitter
A QSplitter that can be checked if it is unused or not.
Definition:
splitter.h:39
content_anchor.h
hal
Definition:
parser_liberty.cpp:10
QList
QObject
QObject::Q_OBJECT
Q_OBJECTQ_OBJECT
QObject::Q_SIGNALS
Q_SIGNALSQ_SIGNALS
QObject::parent
QObject * parent() const const
plugins
gui
include
gui
docking_system
splitter_anchor.h
Generated on Fri Feb 14 2025 14:22:41 for HAL by
1.9.1