From c71ed93de904649a85bc166686e010fbc4cb4379 Mon Sep 17 00:00:00 2001 From: jsalmon3 <> Date: Sat, 27 Mar 2004 21:33:28 +0000 Subject: [PATCH] Moved DrawMenuButtonArea to mainscr.c --- src/include/interface.h | 2 + src/stratagus/mainloop.cpp | 92 -------------------------------------- src/ui/mainscr.cpp | 54 +++++++++++++++++++++- 3 files changed, 55 insertions(+), 93 deletions(-) diff --git a/src/include/interface.h b/src/include/interface.h index 41b43d27c..2a6616c45 100644 --- a/src/include/interface.h +++ b/src/include/interface.h @@ -355,6 +355,8 @@ extern void DoRightButton(int tx, int ty); /// Cancel the building input mode extern void CancelBuildingMode(void); + /// Draw menu button area +extern void DrawMenuButtonArea(void); /// Update messages extern void UpdateMessages(void); /// Draw messages as overlay over of the map diff --git a/src/stratagus/mainloop.cpp b/src/stratagus/mainloop.cpp index a7b83170b..aba3f3ca9 100644 --- a/src/stratagus/mainloop.cpp +++ b/src/stratagus/mainloop.cpp @@ -254,98 +254,6 @@ global void DoScrollArea(enum _scroll_state_ state, int fast) MustRedraw |= RedrawMinimap | RedrawCursors; } -/** -** Draw menu button area. -*/ -local void DrawMenuButtonArea(void) -{ - if (TheUI.MenuPanel.Graphic) { - VideoDrawSub(TheUI.MenuPanel.Graphic, 0, 0, - TheUI.MenuPanel.Graphic->Width, - TheUI.MenuPanel.Graphic->Height, - TheUI.MenuPanelX, TheUI.MenuPanelY); - } - if (!IsNetworkGame()) { - if (TheUI.MenuButton.X != -1) { - // FIXME: Transparent flag, 3rd param, has been hardcoded. - DrawMenuButton(TheUI.MenuButton.Button, - (ButtonAreaUnderCursor == ButtonAreaMenu && - ButtonUnderCursor == ButtonUnderMenu ? MenuButtonActive : 0) | - (GameMenuButtonClicked ? MenuButtonClicked : 0), /* Transparent */ 0, - TheUI.MenuButton.Width, TheUI.MenuButton.Height, - TheUI.MenuButton.X, TheUI.MenuButton.Y, - TheUI.MenuButton.Font, TheUI.MenuButton.Text, NULL, NULL); - } - } else { - if (TheUI.NetworkMenuButton.X != -1) { - // FIXME: Transparent flag, 3rd param, has been hardcoded. - DrawMenuButton(TheUI.NetworkMenuButton.Button, - (ButtonAreaUnderCursor == ButtonAreaMenu && - ButtonUnderCursor == ButtonUnderNetworkMenu ? MenuButtonActive : 0) | - (GameMenuButtonClicked ? MenuButtonClicked : 0), /* Transparent */ 0, - TheUI.NetworkMenuButton.Width, TheUI.NetworkMenuButton.Height, - TheUI.NetworkMenuButton.X, TheUI.NetworkMenuButton.Y, - TheUI.NetworkMenuButton.Font, TheUI.NetworkMenuButton.Text, NULL, NULL); - } - if (TheUI.NetworkDiplomacyButton.X != -1) { - // FIXME: Transparent flag, 3rd param, has been hardcoded. - DrawMenuButton(TheUI.NetworkDiplomacyButton.Button, - (ButtonAreaUnderCursor == ButtonAreaMenu && - ButtonUnderCursor == ButtonUnderNetworkDiplomacy ? MenuButtonActive : 0) | - (GameDiplomacyButtonClicked ? MenuButtonClicked : 0), /* Transparent */ 0, - TheUI.NetworkDiplomacyButton.Width, TheUI.NetworkDiplomacyButton.Height, - TheUI.NetworkDiplomacyButton.X, TheUI.NetworkDiplomacyButton.Y, - TheUI.NetworkDiplomacyButton.Font, TheUI.NetworkDiplomacyButton.Text, NULL, NULL); - } - } - -#ifdef DRAW_DEBUG - // - // Draw line for frame speed. - // - { int f; - - f = 168 * (NextFrameTicks - GetTicks()); - if (VideoSyncSpeed) { - f /= (100 * 1000 / CYCLES_PER_SECOND) / VideoSyncSpeed; - } - if (f < 0 || f > 168) { - f = 168; - } - if (f) { - VideoDrawHLine(ColorGreen, TheUI.MenuButtonX, TheUI.MenuButtonY, f); - } - if (168 - f) { - VideoDrawHLine(ColorRed, TheUI.MenuButtonX + f, TheUI.MenuButtonY, 168 - f); - } - } - // - // Draw line for network speed. - // - { - int i; - int f; - - if (NetworkLag) { - for (i = 0; i < PlayerMax; ++i) { - f = 16 - (16 * (NetworkStatus[i] - GameCycle)) / (NetworkLag * 2); - if (f < 0 || f > 16) { - f = 16; - } - if (f) { - VideoDrawHLine(ColorRed, - TheUI.MenuButtonX, TheUI.MenuButtonY + 1 + i, f); - } - if (16 - f) { - VideoDrawHLine(ColorGreen, - TheUI.MenuButtonX + f, TheUI.MenuButtonY + 1 + i, 16 - f); - } - } - } - } -#endif -} - /** ** Draw a map viewport. ** diff --git a/src/ui/mainscr.cpp b/src/ui/mainscr.cpp index eac377f41..61b4d3008 100644 --- a/src/ui/mainscr.cpp +++ b/src/ui/mainscr.cpp @@ -55,6 +55,58 @@ #include "ui.h" #include "map.h" #include "trigger.h" +#include "network.h" +#include "menus.h" + +/*---------------------------------------------------------------------------- +-- MENU BUTTON +----------------------------------------------------------------------------*/ + +/** +** Draw menu button area. +*/ +global void DrawMenuButtonArea(void) +{ + if (TheUI.MenuPanel.Graphic) { + VideoDrawSub(TheUI.MenuPanel.Graphic, 0, 0, + TheUI.MenuPanel.Graphic->Width, + TheUI.MenuPanel.Graphic->Height, + TheUI.MenuPanelX, TheUI.MenuPanelY); + } + if (!IsNetworkGame()) { + if (TheUI.MenuButton.X != -1) { + // FIXME: Transparent flag, 3rd param, has been hardcoded. + DrawMenuButton(TheUI.MenuButton.Button, + (ButtonAreaUnderCursor == ButtonAreaMenu && + ButtonUnderCursor == ButtonUnderMenu ? MenuButtonActive : 0) | + (GameMenuButtonClicked ? MenuButtonClicked : 0), /* Transparent */ 0, + TheUI.MenuButton.Width, TheUI.MenuButton.Height, + TheUI.MenuButton.X, TheUI.MenuButton.Y, + TheUI.MenuButton.Font, TheUI.MenuButton.Text, NULL, NULL); + } + } else { + if (TheUI.NetworkMenuButton.X != -1) { + // FIXME: Transparent flag, 3rd param, has been hardcoded. + DrawMenuButton(TheUI.NetworkMenuButton.Button, + (ButtonAreaUnderCursor == ButtonAreaMenu && + ButtonUnderCursor == ButtonUnderNetworkMenu ? MenuButtonActive : 0) | + (GameMenuButtonClicked ? MenuButtonClicked : 0), /* Transparent */ 0, + TheUI.NetworkMenuButton.Width, TheUI.NetworkMenuButton.Height, + TheUI.NetworkMenuButton.X, TheUI.NetworkMenuButton.Y, + TheUI.NetworkMenuButton.Font, TheUI.NetworkMenuButton.Text, NULL, NULL); + } + if (TheUI.NetworkDiplomacyButton.X != -1) { + // FIXME: Transparent flag, 3rd param, has been hardcoded. + DrawMenuButton(TheUI.NetworkDiplomacyButton.Button, + (ButtonAreaUnderCursor == ButtonAreaMenu && + ButtonUnderCursor == ButtonUnderNetworkDiplomacy ? MenuButtonActive : 0) | + (GameDiplomacyButtonClicked ? MenuButtonClicked : 0), /* Transparent */ 0, + TheUI.NetworkDiplomacyButton.Width, TheUI.NetworkDiplomacyButton.Height, + TheUI.NetworkDiplomacyButton.X, TheUI.NetworkDiplomacyButton.Y, + TheUI.NetworkDiplomacyButton.Font, TheUI.NetworkDiplomacyButton.Text, NULL, NULL); + } + } +} /*---------------------------------------------------------------------------- -- Icons @@ -175,7 +227,7 @@ local void DrawStats(int x, int y, int modified, int original) ** ** @param unit Pointer to unit. */ -global void DrawUnitInfo(const Unit* unit) +local void DrawUnitInfo(const Unit* unit) { char buf[64]; const UnitType* type;