97 lines
3.8 KiB
C++
97 lines
3.8 KiB
C++
|
// Copyright (C) 2003-2008 Dolphin Project.
|
||
|
|
||
|
// 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, version 2.0.
|
||
|
|
||
|
// 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 2.0 for more details.
|
||
|
|
||
|
// A copy of the GPL 2.0 should have been included with the program.
|
||
|
// If not, see http://www.gnu.org/licenses/
|
||
|
|
||
|
// Official SVN repository and contact information can be found at
|
||
|
// http://code.google.com/p/dolphin-emu/
|
||
|
#include "AboutDolphin.h"
|
||
|
#include "svnrev.h"
|
||
|
#include "CPUDetect.h"
|
||
|
#include "../resources/dolphin_logo.cpp"
|
||
|
|
||
|
|
||
|
BEGIN_EVENT_TABLE(AboutDolphin, wxDialog)
|
||
|
EVT_CLOSE(AboutDolphin::OnClose)
|
||
|
EVT_BUTTON(ID_CLOSE, AboutDolphin::CloseClick)
|
||
|
END_EVENT_TABLE()
|
||
|
|
||
|
AboutDolphin::AboutDolphin(wxWindow *parent, wxWindowID id, const wxString &title, const wxPoint &position, const wxSize& size, long style)
|
||
|
: wxDialog(parent, id, title, position, size, style)
|
||
|
{
|
||
|
CreateGUIControls();
|
||
|
}
|
||
|
|
||
|
AboutDolphin::~AboutDolphin()
|
||
|
{
|
||
|
}
|
||
|
|
||
|
void AboutDolphin::CreateGUIControls()
|
||
|
{
|
||
|
m_Close = new wxButton(this, ID_CLOSE, wxT("Close"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator);
|
||
|
//miloszwl@miloszwl.com (miloszwl.deviantart.com)
|
||
|
|
||
|
wxMemoryInputStream istream(dolphin_logo_png, sizeof dolphin_logo_png);
|
||
|
wxImage iDolphinLogo(istream, wxBITMAP_TYPE_PNG);
|
||
|
DolphinLogo = new wxBitmap(iDolphinLogo);
|
||
|
sbDolphinLogo = new wxStaticBitmap(this, ID_LOGO, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0);
|
||
|
sbDolphinLogo->SetBitmap(*DolphinLogo);
|
||
|
|
||
|
Message = new wxStaticText(this, ID_MESSAGE,
|
||
|
wxString::Format(_T("Dolphin SVN revision %s\nCPU: %s\n\n" // Maybe add OS/arch info too?
|
||
|
"Copyright (c) by F|RES, ector, yaz0r 2003-2008\n"
|
||
|
"Additional code by Schibo and Costis.\n\n"
|
||
|
"Greets to Azimer, Caustik, Costis, Cyrus64, Desktopman, Epsilon, Hotquik, Jazzmin, mamedevs, (Lazer)Maksen, Martin64, or9, Runik, Schibo,"
|
||
|
" SculleatR, tmbinc, vEX, Zezu, Zilmar, and everyone we forget.\n\n"
|
||
|
"Special thanks to Costis, CrowTRobo, Titanik, or9 and Hotquik for their reverse engineering and docs/demos.\n\n"
|
||
|
"Big thanks to Gilles Mouchard whose Microlib PPC emulator gave our development a kickstart. "
|
||
|
"Note that Dolphin no longer uses a single line of code from it, and the first release had practically nothing left from it either.\n\n"
|
||
|
"Thanks to Frank Wille for his PowerPC disassembler, which or9 and we modified to include Gekko specifics.\n\n"
|
||
|
"Thanks to Shinji Chiba for his GC ADPCM decoder.\n\n"
|
||
|
"We are not affiliated with Nintendo in any way. Gamecube and Wii are trademarks of Nintendo.\n"
|
||
|
"The emulator is for educational purposes only and we do not support using this emulator to play games you do not legally own.\n\n"
|
||
|
"Beta testers: EFX, Falcon4ever and Shadowprince (kx)."), SVN_REV_STR, (wxString)cpu_info.Summarize()),
|
||
|
wxDefaultPosition, wxDefaultSize, 0);
|
||
|
Message->Wrap(this->GetSize().GetWidth());
|
||
|
|
||
|
sMain = new wxBoxSizer(wxVERTICAL);
|
||
|
sMainHor = new wxBoxSizer(wxHORIZONTAL);
|
||
|
sMainHor->Add(sbDolphinLogo);
|
||
|
|
||
|
sInfo = new wxBoxSizer(wxVERTICAL);
|
||
|
sInfo->Add(Message, 1, wxEXPAND|wxALL, 5);
|
||
|
sMainHor->Add(sInfo);
|
||
|
sMain->Add(sMainHor, 1, wxEXPAND);
|
||
|
|
||
|
sButtons = new wxBoxSizer(wxHORIZONTAL);
|
||
|
sButtons->Add(0, 0, 1, wxEXPAND, 5);
|
||
|
sButtons->Add(m_Close, 0, wxALL, 5);
|
||
|
sMain->Add(sButtons, 0, wxEXPAND);
|
||
|
|
||
|
this->SetSizer(sMain);
|
||
|
sMain->Layout();
|
||
|
|
||
|
SetIcon(wxNullIcon);
|
||
|
CenterOnParent();
|
||
|
Fit();
|
||
|
}
|
||
|
|
||
|
void AboutDolphin::OnClose(wxCloseEvent& WXUNUSED (event))
|
||
|
{
|
||
|
Destroy();
|
||
|
}
|
||
|
|
||
|
void AboutDolphin::CloseClick(wxCommandEvent& WXUNUSED (event))
|
||
|
{
|
||
|
Close();
|
||
|
}
|