| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #ifndef JOINMEETINGDIALOG_H
- #define JOINMEETINGDIALOG_H
- #include <QDialog>
- #include <QVBoxLayout>
- #include <QHBoxLayout>
- #include <QLabel>
- #include <QLineEdit>
- #include <QPushButton>
- #include <QListWidget>
- #include <QTabWidget>
- #include <QGroupBox>
- #include <QStringList>
- class JoinMeetingDialog : public QDialog
- {
- Q_OBJECT
- public:
- explicit JoinMeetingDialog(QWidget *parent = nullptr);
- ~JoinMeetingDialog();
- // 获取选择的会议ID
- QString getSelectedMeetingId() const;
-
- // 设置可用的会议列表
- void setAvailableMeetings(const QStringList &meetingIds, const QStringList &meetingNames);
- public slots:
- void accept() override;
- void reject() override;
- private slots:
- void onMeetingItemClicked();
- void onMeetingIdChanged();
- void validateInput();
- private:
- void setupUI();
- void applyStyles();
-
- // UI组件
- QVBoxLayout *m_mainLayout;
- QTabWidget *m_tabWidget;
-
- // 手动输入标签页
- QWidget *m_manualTab;
- QVBoxLayout *m_manualLayout;
- QLabel *m_manualLabel;
- QLineEdit *m_meetingIdEdit;
-
- // 选择会议标签页
- QWidget *m_selectTab;
- QVBoxLayout *m_selectLayout;
- QLabel *m_selectLabel;
- QListWidget *m_meetingListWidget;
-
- // 按钮
- QHBoxLayout *m_buttonLayout;
- QPushButton *m_joinButton;
- QPushButton *m_cancelButton;
-
- // 数据
- QString m_selectedMeetingId;
- QStringList m_meetingIds;
- QStringList m_meetingNames;
- };
- #endif // JOINMEETINGDIALOG_H
|