/* * This file is part of smolbote. It's copyrighted by the contributors recorded * in the version control history of the file, available from its original * location: https://neueland.iserlohn-fortress.net/gitea/aqua/smolbote * * SPDX-License-Identifier: GPL-3.0 */ #ifndef SMOLBOTE_SESSIONDIALOG_H #define SMOLBOTE_SESSIONDIALOG_H #include namespace Ui { class SessionDialog; } class QListWidgetItem; class SessionDialog : public QDialog { Q_OBJECT public: explicit SessionDialog(QWidget *parent = nullptr); ~SessionDialog() override; std::optional pickSession(); private slots: QListWidgetItem *addItem(const QString &path); void search(const QString &text); void openSession(const QString &filename); private: Ui::SessionDialog *ui; QMetaObject::Connection accepted_connection; }; #endif // SMOLBOTE_SESSIONDIALOG_H