/**************************************************************************** * Copyright (C) 2012 Dimok * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * 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. If not, see . ****************************************************************************/ #ifndef BANNERWINDOW_HPP_ #define BANNERWINDOW_HPP_ #include "GUI/gui.h" #include "GUI/gui_diskcover.h" #include "menu/GameBrowseMenu.hpp" #include "usbloader/disc.h" #include "SystemMenu/SystemMenuResources.h" #include "banner/Banner.h" #define FAVORITE_STARS 5 class BannerWindow : public GuiWindow { public: BannerWindow(GameBrowseMenu *m, struct discHdr *header); virtual ~BannerWindow(); int Run(); int GetSelectedGame() { return gameSelected; } void Draw(void); void Test(); protected: int MainLoop(); void Animate(void); void ChangeGame(bool playsound); static const float fBannerWidth = 608.f; static const float fBannerHeight = 448.f; static const float fIconWidth = 128.f; static const float fIconHeight = 96.f; static BannerFrame bannerFrame; bool reducedVol; int returnVal; int gameSelected; GameBrowseMenu *browserMenu; struct discHdr *dvdheader; const int MaxAnimSteps; int AnimStep; float AnimPosX, AnimPosY; float fAnimScale; bool AnimZoomIn; bool AnimationRunning; bool oldAnimationRunning; u8 BGAlpha; u8 BannerAlpha; Mtx modelview; Mtx44 projection; Mtx44 originalProjection; Vec2f ScreenProps; Banner *gameBanner; GuiTrigger * trigA; GuiTrigger * trigB; GuiTrigger * trigL; GuiTrigger * trigR; GuiTrigger * trigPlus; GuiTrigger * trigMinus; GuiImageData * imgLeft; GuiImageData * imgRight; GuiImage * btnLeftImg; GuiImage * btnRightImg; GuiText * playcntTxt; GuiButton * startBtn; GuiButton * backBtn; GuiButton * settingsBtn; GuiButton * btnLeft; GuiButton * btnRight; GuiSound * gameSound; }; #endif