169e62e48SStephan Aßmus /* 24c587adeSStephan Aßmus * Copyright 2008 Ralf Schülke, ralf.schuelke@googlemail.com. 34c587adeSStephan Aßmus * Copyright 2010 Adam Smith <adamd.smith@utoronto.ca> 4c6b0a589SJohn Scipione * Copyright 2014 Haiku, Inc. All rights reserved. 5c6b0a589SJohn Scipione * 6c6b0a589SJohn Scipione * Distributed under the terms of the MIT License. 7c6b0a589SJohn Scipione * 8c6b0a589SJohn Scipione * Authors: 9*fdc05529SJohn Scipione * Ralf Schülke, ralf.schuelke@googlemail.com 10c6b0a589SJohn Scipione * John Scipione, jscipione@gmail.com 11*fdc05529SJohn Scipione * Adam Smith, adamd.smith@utoronto.ca 1269e62e48SStephan Aßmus */ 1369e62e48SStephan Aßmus #ifndef PAIRS_WINDOW_H 1469e62e48SStephan Aßmus #define PAIRS_WINDOW_H 1569e62e48SStephan Aßmus 16c6b0a589SJohn Scipione 1769e62e48SStephan Aßmus #include <Window.h> 1869e62e48SStephan Aßmus 19c6b0a589SJohn Scipione 2097e1b053SJohn Scipione class BMenu; 2169e62e48SStephan Aßmus class BMessageRunner; 2297e1b053SJohn Scipione class PairsView; 2369e62e48SStephan Aßmus 2469e62e48SStephan Aßmus 2569e62e48SStephan Aßmus class PairsWindow : public BWindow { 2669e62e48SStephan Aßmus public: 2769e62e48SStephan Aßmus PairsWindow(); 2869e62e48SStephan Aßmus virtual ~PairsWindow(); 2969e62e48SStephan Aßmus 3069e62e48SStephan Aßmus virtual void MessageReceived(BMessage* message); 3169e62e48SStephan Aßmus 324c587adeSStephan Aßmus void NewGame(); 3397e1b053SJohn Scipione void SetGameSize(uint8 rows, uint8 cols); 344c587adeSStephan Aßmus 3569e62e48SStephan Aßmus private: 3697e1b053SJohn Scipione void _MakeGameView(uint8 rows, uint8 cols); 374c587adeSStephan Aßmus void _MakeMenuBar(); 3897e1b053SJohn Scipione void _ResizeWindow(uint8 rows, uint8 cols); 394c587adeSStephan Aßmus 4069e62e48SStephan Aßmus BView* fBackgroundView; 4169e62e48SStephan Aßmus PairsView* fPairsView; 424c587adeSStephan Aßmus BMenuBar* fMenuBar; 4369e62e48SStephan Aßmus BMessageRunner* fPairComparing; 4469e62e48SStephan Aßmus bool fIsFirstClick; 4569e62e48SStephan Aßmus bool fIsPairsActive; 4697e1b053SJohn Scipione int32 fPairCardPosition; 4797e1b053SJohn Scipione int32 fPairCardTmpPosition; 4897e1b053SJohn Scipione int32 fButtonTmpPosition; 4997e1b053SJohn Scipione int32 fButtonPosition; 5097e1b053SJohn Scipione int32 fButtonClicks; 5197e1b053SJohn Scipione int32 fFinishPairs; 5297e1b053SJohn Scipione BMenu* fIconSizeMenu; 5369e62e48SStephan Aßmus }; 5469e62e48SStephan Aßmus 5569e62e48SStephan Aßmus #endif // PAIRS_WINDOW_H 56