Q3270
A Qt-based 3270 Terminal Emulator
Loading...
Searching...
No Matches
SessionDialogBase.h
1/*
2 * Q3270 Terminal Emulator
3 *
4 * Copyright (c) 2020–2025 Andy Styles
5 * SPDX-License-Identifier: BSD-3-Clause
6 *
7 * This file is part of Q3270.
8 * See the LICENSE file in the project root for full license information.
9 */
10
11#ifndef SESSIONDIALOGBASE_H
12#define SESSIONDIALOGBASE_H
13
14#include <QDialog>
15#include <QList>
16#include <QCheckBox>
17
18
19#include "Models/Session.h"
20#include "Stores/SessionStore.h"
21
22namespace Ui {
23class SessionDialog;
24}
25
26class SessionDialogBase : public QDialog
27{
28 Q_OBJECT
29
30public:
31
32 explicit SessionDialogBase(SessionStore &store, QWidget *parent = nullptr);
33 virtual ~SessionDialogBase();
34
35signals:
36
37 void deleteRequested(const QString &name);
38
39protected:
40 Ui::SessionDialog *ui;
41
42 QList<Session> sessions;
43 SessionStore &store;
44
45 // Core logic
46 void setupTable();
48 void connectSignals();
49 void onRowClicked(int row);
50
51 void enableOKButton(bool enabled);
52 void setOKButtonText(const QString &text);
53
55
56 // Subclass hooks
57 virtual void onAccept();
58
59protected slots:
60
61 void doDelete(const QString &name);
62
63
64private:
65
66};
67
68#endif // SESSIONDIALOGBASE_H
Definition SessionDialogBase.h:27
void requestDeleteSelected()
SessionDialogBase::requestDeleteSelected Slot called when the delete button is clicked.
Definition SessionDialogBase.cpp:179
void connectSignals()
connectSignals Connects UI signals to their respective slots.
Definition SessionDialogBase.cpp:105
void doDelete(const QString &name)
SessionDialogBase::doDelete Deletes the specified session.
Definition SessionDialogBase.cpp:199
virtual void onAccept()
onAccept Slot called when the OK button is clicked.
Definition SessionDialogBase.cpp:142
void onRowClicked(int row)
SessionDialogBase::onRowClicked Slot called when a row in the session table is clicked.
Definition SessionDialogBase.cpp:155
void setOKButtonText(const QString &text)
setOKButtonText Sets the text of the OK button.
Definition SessionDialogBase.cpp:131
void populateSessionTable()
populateSessionTable Populates the session table with sessions from the store.
Definition SessionDialogBase.cpp:86
void setupTable()
setupTable Sets up the session table widget.
Definition SessionDialogBase.cpp:61
virtual ~SessionDialogBase()
SessionDialogBase destructor.
Definition SessionDialogBase.cpp:50
void enableOKButton(bool enabled)
enableOKButton Enables or disables the OK button.
Definition SessionDialogBase.cpp:119
Definition SessionStore.h:19