Sayonara Player
src
Gui
Library
Header
HeaderView.h
1
2
/* Copyright (C) 2011-2020 Michael Lugmair (Lucio Carreras)
3
*
4
* This file is part of sayonara player
5
*
6
* This program is free software: you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation, either version 3 of the License, or
9
* (at your option) any later version.
10
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
16
* You should have received a copy of the GNU General Public License
17
* along with this program. If not, see <http://www.gnu.org/licenses/>.
18
*/
19
20
#ifndef HEADERVIEW_H
21
#define HEADERVIEW_H
22
23
#include "Gui/Library/Header/ColumnHeader.h"
24
#include "Gui/Utils/Widgets/WidgetTemplate.h"
25
#include "Utils/Library/Sortorder.h"
26
#include "Utils/Pimpl.h"
27
28
#include <QTableView>
29
#include <QHeaderView>
30
#include <QMenu>
31
32
namespace
Library
33
{
38
class
HeaderView
:
39
public
Gui::WidgetTemplate
<QHeaderView>
40
{
41
Q_OBJECT
42
PIMPL(
HeaderView
)
43
44
signals:
45
void
sigAutoResizeToggled(
bool
b);
46
47
public
:
48
HeaderView
(Qt::Orientation orientation, QWidget* parent=
nullptr
);
49
virtual
~
HeaderView
()
override
;
50
51
void
init(
const
ColumnHeaderList
& columnHeaders,
const
QByteArray& state,
Library::SortOrder
sorting,
bool
autoResizeState);
52
void
resizeColumnsAutomatically();
53
54
Library::SortOrder
sortorder(
int
index,
Qt::SortOrder
sortorder);
55
QString columnText(
int
index)
const
;
56
void
reloadColumnTexts();
57
58
QSize sizeHint()
const override
;
59
60
private
slots:
61
void
actionTriggered(
bool
b);
62
void
actionResizeTriggered();
63
void
actionAutoResizeTriggered(
bool
b);
64
65
protected
:
66
void
languageChanged()
override
;
67
void
showEvent(QShowEvent* e)
override
;
68
void
resizeEvent(QResizeEvent* e)
override
;
69
};
70
}
71
72
#endif // HEADERVIEW_H
QList
Definition:
EngineUtils.h:33
Gui::WidgetTemplate
Template for Sayonara Widgets. This template is responsible for holding a reference to the settings.
Definition:
WidgetTemplate.h:87
Library
An interface class needed when implementing a library plugin.
Definition:
LocalLibraryWatcher.h:31
Library::HeaderView
The HeaderView class.
Definition:
HeaderView.h:40
Library::SortOrder
SortOrder
The SortOrder enum.
Definition:
Sortorder.h:32
Generated on Wed Jan 6 2021 00:00:00 for Sayonara Player by
1.8.20