Files
qt6-migration-pipeline/Lts/Common/LtsWidgets/lts_selection_popup.h
T

84 lines
977 B
C++
Executable File

#pragma once
#include "lts_frameless_dialog.h"
#include "lts_widgets_export.h"
namespace Ui
{
class LtsSelectionPopup;
}
class QAbstractItemModel;
class QSortFilterProxyModel;
namespace LtsWidgets
{
class LTSWIDGETS_EXPORT LtsSelectionPopup : public LtsFramelessDialog
{
Q_OBJECT
public:
LtsSelectionPopup(QAbstractItemModel *model,
int currentIndex,
QWidget *parent = nullptr);
~LtsSelectionPopup();
protected:
void showEvent(QShowEvent *event) override;
private:
Ui::LtsSelectionPopup *m_ui;
int m_currentIndex;
int m_firstIndex;
QSortFilterProxyModel *m_filter;
bool m_valid;
void refresh();
void selectItem(int row, bool bCurrentIndexChanged, bool bActivated);
signals:
void activated(int index);
void currentIndexChanged(int index);
public slots:
void accept() override;
void slotFilterChanged();
};
}