File indexing completed on 2024-05-12 04:38:24

0001 /*
0002     SPDX-FileCopyrightText: David Nolden <david.nolden.kdevelop@art-master.de>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #ifndef KDEVPLATFORM_WORKINGSETTOOLTIPWIDGET_H
0008 #define KDEVPLATFORM_WORKINGSETTOOLTIPWIDGET_H
0009 
0010 #include <QWidget>
0011 #include <QMap>
0012 
0013 class FileWidget;
0014 
0015 class QLabel;
0016 class QToolButton;
0017 class QPushButton;
0018 
0019 namespace KDevelop {
0020 
0021 class WorkingSet;
0022 class WorkingSetToolButton;
0023 
0024 class MainWindow;
0025 
0026 class WorkingSetToolTipWidget : public QWidget
0027 {
0028     Q_OBJECT
0029 
0030 public:
0031     WorkingSetToolTipWidget(QWidget* parent, WorkingSet* set, MainWindow* mainwindow);
0032 
0033 Q_SIGNALS:
0034     void shouldClose();
0035 
0036 public Q_SLOTS:
0037     void buttonClicked(bool);
0038     void updateFileButtons();
0039     void labelClicked();
0040     void nextDocument();
0041     void previousDocument();
0042 
0043 private:
0044     bool isActiveSet() const;
0045 
0046     QVector<FileWidget*> m_orderedFileWidgets;
0047     QMap<QString, FileWidget*> m_fileWidgets;
0048     WorkingSet* const m_set;
0049 
0050     QPushButton* m_mergeButton;
0051     QPushButton* m_subtractButton;
0052     QPushButton* m_openButton;
0053     QLabel* m_documentsLabel;
0054     WorkingSetToolButton* m_setButton;
0055 
0056     QPushButton* m_deleteButton;
0057 };
0058 
0059 }
0060 
0061 #endif // KDEVPLATFORM_WORKINGSETTOOLTIPWIDGET_H