/************************************************************** * Name: Heather Lei Aiko Yazawa (hyazawa) * File: GUI.H * Asgn: gui * Date: Mon Mar 17 23:01:07 EST 2003 * Description: The main window with all main window functionality. **************************************************************/ #ifndef GUI_Header #define GUI_Header #include #include #include #include #include #include #include #include #include #include #include #include class GUI : public QWidget{ Q_OBJECT public: GUI(QWidget *parent = 0, const char *name = 0); virtual ~GUI(); void setUniversityName(); void setGameDate(); void setCurrentEnrollment(); void setTotalMoney(); public slots: //right column button slots void addBuildingPressed(); void addPathPressed(); void addTreePressed(); void bulldozePressed(); void statsBudgetPressed(); void volumePressed(); void loadSavePressed(); //time button void pauseTimePressed(); void slothTimePressed(); void lamaTimePressed(); void cheetahTimePressed(); void nextCycle(); signals: protected: private: //variables //main window layout QVBoxLayout* m_totalLayout; //OpenGL window and button+window layout QGLWidget* m_graphics; QHBoxLayout* m_graphicsButtonRow; QTimer* m_timer; //right column buttons and layout QPushButton* m_addBuilding; QPushButton* m_addPath; QPushButton* m_addTree; QPushButton* m_bulldoze; QPushButton* m_statsBudget; QPushButton* m_volume; QPushButton* m_loadSave; QVBoxLayout* m_rightButtonColumn; //running stats QLineEdit* m_universityName; QLineEdit* m_currentEnrollment; QLineEdit* m_totalMoney; QLineEdit* m_gameDate; QHBoxLayout* m_runningStatsRow; //game speed buttons QPushButton* m_pause; QPushButton* m_sloth; QPushButton* m_lama; QPushButton* m_cheetah; QHBoxLayout* m_speedButtonRow; QButtonGroup* m_speedButtonGroup; //layout of buttons and running stats QHBoxLayout* m_statsSpeedButtonRow; int m_day; }; #endif