Mercurial > minori
annotate include/gui/widgets/sidebar.h @ 229:adc20fa321c1
theme: force Fusion style on platforms other than Win32 or OS X
I was reluctant to do this, but most of the other styles just
look like pure shite regardless of whether I force a stylesheet
on them or not. KDE's style is actually hilariously bad paired
with my stylesheet, so I've decided to also make the stylesheet
Windows-specific as well, because that's really the only platform
where it makes sense in the first place.
| author | Paper <paper@paper.us.eu.org> |
|---|---|
| date | Wed, 10 Jan 2024 21:23:57 -0500 |
| parents | 80f49f623d30 |
| children | 862d0d8619f6 |
| rev | line source |
|---|---|
| 46 | 1 #ifndef __gui__sidebar_h |
| 2 #define __gui__sidebar_h | |
| 69 | 3 |
| 46 | 4 #include <QItemSelectionModel> |
| 5 #include <QListWidget> | |
| 85 | 6 |
| 7 class QListWidgetItem; | |
| 69 | 8 |
|
95
8043152ef9d4
include: set classes as final where appropriate
Paper <mrpapersonic@gmail.com>
parents:
85
diff
changeset
|
9 class SideBar final : public QListWidget { |
| 46 | 10 Q_OBJECT |
| 11 | |
| 12 public: | |
| 13 SideBar(QWidget* parent = nullptr); | |
| 14 QListWidgetItem* AddItem(QString name, QIcon icon = QIcon()); | |
| 15 QListWidgetItem* AddSeparator(); | |
|
112
80f49f623d30
locale: allow switching locales without restarting
Paper <mrpapersonic@gmail.com>
parents:
95
diff
changeset
|
16 int GetCurrentItem(); |
| 46 | 17 bool IndexIsSeparator(QModelIndex index) const; |
| 18 static QIcon CreateIcon(const char* file); | |
| 69 | 19 void SetBackgroundColor(QColor color); |
| 46 | 20 |
| 21 signals: | |
| 22 void CurrentItemChanged(int index); | |
| 23 | |
|
58
b7a1c0010ffd
sidebar: link view menu and sidebar together
Paper <mrpapersonic@gmail.com>
parents:
46
diff
changeset
|
24 public slots: |
|
b7a1c0010ffd
sidebar: link view menu and sidebar together
Paper <mrpapersonic@gmail.com>
parents:
46
diff
changeset
|
25 void SetCurrentItem(int index); |
|
b7a1c0010ffd
sidebar: link view menu and sidebar together
Paper <mrpapersonic@gmail.com>
parents:
46
diff
changeset
|
26 |
| 46 | 27 protected: |
| 28 virtual void mouseMoveEvent(QMouseEvent* event) override; | |
| 29 QItemSelectionModel::SelectionFlags selectionCommand(const QModelIndex& index, | |
| 30 const QEvent* event) const override; | |
| 31 int RemoveSeparatorsFromIndex(int index); | |
|
58
b7a1c0010ffd
sidebar: link view menu and sidebar together
Paper <mrpapersonic@gmail.com>
parents:
46
diff
changeset
|
32 int AddSeparatorsToIndex(int index); |
| 46 | 33 }; |
| 69 | 34 |
| 46 | 35 #endif // __gui__sidebar_h |
