X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/af88eefff25f06bec4ccf69618d033b377bfd06f..c5e2dc6f5ba909192ff6c22ead5e7600a00bad0f:/demos/forty/game.cpp diff --git a/demos/forty/game.cpp b/demos/forty/game.cpp index 9e4911741f..9eed283867 100644 --- a/demos/forty/game.cpp +++ b/demos/forty/game.cpp @@ -72,6 +72,30 @@ Game::Game(int wins, int games, int score) : } +void Game::Layout() +{ + int i; + + m_pack->SetPos(2, 2 + 4 * (CardHeight + 2)); + + m_discard->SetPos(2, 2 + 5 * (CardHeight + 2)); + + for (i = 0; i < 8; i++) + { + m_foundations[i]->SetPos(2 + (i / 4) * (CardWidth + 2), + 2 + (i % 4) * (CardHeight + 2)); + } + + for (i = 0; i < 10; i++) + { + m_bases[i]->SetPos(8 + (i + 2) * (CardWidth + 2), 2); + } + delete m_bmap; + delete m_bmapCard; + m_bmap = 0; + m_bmapCard = 0; +} + // Make sure we delete all objects created by the game object Game::~Game() { @@ -139,7 +163,7 @@ void Game::DoMove(wxDC& dc, Pile* src, Pile* dest) { if (src == dest) { - wxMessageBox("Game::DoMove() src == dest", "Debug message", + wxMessageBox(_T("Game::DoMove() src == dest"), _T("Debug message"), wxOK | wxICON_EXCLAMATION); } m_moves[m_moveIndex].src = src; @@ -151,7 +175,7 @@ void Game::DoMove(wxDC& dc, Pile* src, Pile* dest) } else { - wxMessageBox("Game::DoMove() Undo buffer full", "Debug message", + wxMessageBox(_T("Game::DoMove() Undo buffer full"), _T("Debug message"), wxOK | wxICON_EXCLAMATION); } @@ -169,8 +193,8 @@ void Game::DoMove(wxDC& dc, Pile* src, Pile* dest) if (frame) { - wxNode *node = frame->GetChildren().First(); - if (node) canvas = (wxWindow*)node->Data(); + wxNode *node = (wxNode *)frame->GetChildren().GetFirst(); + if (node) canvas = (wxWindow*)node->GetData(); } // This game is over @@ -179,8 +203,8 @@ void Game::DoMove(wxDC& dc, Pile* src, Pile* dest) // Redraw the score box to update games won DisplayScore(dc); - if (wxMessageBox("Do you wish to play again?", - "Well Done, You have won!", wxYES_NO | wxICON_QUESTION) == wxYES) + if (wxMessageBox(_T("Do you wish to play again?"), + _T("Well Done, You have won!"), wxYES_NO | wxICON_QUESTION) == wxYES) { Deal(); canvas->Refresh(); @@ -217,25 +241,25 @@ void Game::DisplayScore(wxDC& dc) int w, h; { long width, height; - dc.GetTextExtent("Average score:m_x", &width, &height); + dc.GetTextExtent(_T("Average score:m_x"), &width, &height); w = width; h = height; } dc.DrawRectangle(x + w, y, 20, 4 * h); - char str[80]; - sprintf(str, "%d", m_currentScore); - dc.DrawText("Score:", x, y); + wxString str; + str.Printf(_T("%d"), m_currentScore); + dc.DrawText(_T("Score:"), x, y); dc.DrawText(str, x + w, y); y += h; - sprintf(str, "%d", m_numGames); - dc.DrawText("Games played:", x, y); + str.Printf(_T("%d"), m_numGames); + dc.DrawText(_T("Games played:"), x, y); dc.DrawText(str, x + w, y); y += h; - sprintf(str, "%d", m_numWins); - dc.DrawText("Games won:", x, y); + str.Printf(_T("%d"), m_numWins); + dc.DrawText(_T("Games won:"), x, y); dc.DrawText(str, x + w, y); y += h; @@ -244,8 +268,8 @@ void Game::DisplayScore(wxDC& dc) { average = (2 * (m_currentScore + m_totalScore) + m_numGames ) / (2 * m_numGames); } - sprintf(str, "%d", average); - dc.DrawText("Average score:", x, y); + str.Printf(_T("%d"), average); + dc.DrawText(_T("Average score:"), x, y); dc.DrawText(str, x + w, y); } @@ -774,8 +798,8 @@ void Pack::Redraw(wxDC& dc) { Pile::Redraw(dc); - char str[10]; - sprintf(str, "%d ", m_topCard + 1); + wxString str; + str.Printf(_T("%d "), m_topCard + 1); dc.SetBackgroundMode( wxSOLID ); dc.SetTextBackground(FortyApp::BackgroundColour()); @@ -792,7 +816,7 @@ void Pack::AddCard(Card* card) } else { - wxMessageBox("Pack::AddCard() Undo error", "Forty Thieves: Warning", + wxMessageBox(_T("Pack::AddCard() Undo error"), _T("Forty Thieves: Warning"), wxOK | wxICON_EXCLAMATION); } card->TurnCard(facedown);