| 176 | }; |
| 177 | |
| 178 | class NetHackQtPlayerSelector : private QDialog |
| 179 | { |
| 180 | Q_OBJECT |
| 181 | public: |
| 182 | enum { R_None = -1, R_Quit = -2, R_Rand = -3 }; |
| 183 | |
| 184 | NetHackQtPlayerSelector(NetHackQtKeyBuffer &); |
| 185 | |
| 186 | protected: |
| 187 | virtual void done(int); |
| 188 | |
| 189 | public slots: |
| 190 | void Quit(); |
| 191 | void Random(); |
| 192 | |
| 193 | void selectName(const QString &n); |
| 194 | void selectRole(); |
| 195 | void selectRace(); |
| 196 | void setupOthers(); |
| 197 | void selectGender(int); |
| 198 | void selectAlignment(int); |
| 199 | |
| 200 | public: |
| 201 | bool Choose(); |
| 202 | |
| 203 | private: |
| 204 | NetHackQtKeyBuffer &keysource; |
| 205 | NhPSListView *role; |
| 206 | NhPSListView *race; |
| 207 | QRadioButton **gender; |
| 208 | QRadioButton **alignment; |
| 209 | bool fully_specified_role; |
| 210 | }; |
| 211 | |
| 212 | class NetHackQtStringRequestor : QDialog |
| 213 | { |