// Copyright (c) 2002-2003 Rob Kaper // // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License // version 2 as published by the Free Software Foundation. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; see the file COPYING. If not, write to // the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, // Boston, MA 02110-1301, USA. #ifndef ATLANTIK_SELECTGAME_WIDGET_H #define ATLANTIK_SELECTGAME_WIDGET_H #include #include #include #include class AtlanticCore; class Game; class Player; class SelectGame : public TQWidget { Q_OBJECT TQ_OBJECT public: SelectGame(AtlanticCore *atlanticCore, TQWidget *parent, const char *name=0); void initPage(); bool validateNext(); TQString hostToConnect() const; int portToConnect(); private slots: void connectClicked(); void addGame(Game *game); void delGame(Game *game); void updateGame(Game *game); void playerChanged(Player *player); void validateConnectButton(); signals: void joinGame(int gameId); void newGame(const TQString &gameType); void leaveServer(); void msgtqStatus(const TQString &status); private: TQListViewItem *findItem(Game *game); AtlanticCore *m_atlanticCore; TQVBoxLayout *m_mainLayout; KListView *m_gameList; KPushButton *m_connectButton; }; #endif