mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-05-30 23:12:40 +00:00
WX: HiDPI: CheatsWindow
Changed the Cheat Search tab to disable the scan buttons while there is not a game running and enable when it starts. Also added double-click to create code to the result list.
This commit is contained in:
parent
8fe94c3c50
commit
c893447913
7 changed files with 186 additions and 123 deletions
|
@ -27,8 +27,9 @@ wxDEFINE_EVENT(DOLPHIN_EVT_GECKOCODE_TOGGLED, wxCommandEvent);
|
|||
|
||||
namespace Gecko
|
||||
{
|
||||
static const wxString wxstr_name(wxTRANSLATE("Name: ")), wxstr_notes(wxTRANSLATE("Notes: ")),
|
||||
wxstr_creator(wxTRANSLATE("Creator: "));
|
||||
static const char str_name[] = wxTRANSLATE("Name: ");
|
||||
static const char str_notes[] = wxTRANSLATE("Notes: ");
|
||||
static const char str_creator[] = wxTRANSLATE("Creator: ");
|
||||
|
||||
CodeConfigPanel::CodeConfigPanel(wxWindow* const parent) : wxPanel(parent)
|
||||
{
|
||||
|
@ -36,40 +37,41 @@ CodeConfigPanel::CodeConfigPanel(wxWindow* const parent) : wxPanel(parent)
|
|||
m_listbox_gcodes->Bind(wxEVT_LISTBOX, &CodeConfigPanel::UpdateInfoBox, this);
|
||||
m_listbox_gcodes->Bind(wxEVT_CHECKLISTBOX, &CodeConfigPanel::ToggleCode, this);
|
||||
|
||||
m_infobox.label_name = new wxStaticText(this, wxID_ANY, wxGetTranslation(wxstr_name));
|
||||
m_infobox.label_creator = new wxStaticText(this, wxID_ANY, wxGetTranslation(wxstr_creator));
|
||||
m_infobox.label_notes = new wxStaticText(this, wxID_ANY, wxGetTranslation(wxstr_notes));
|
||||
m_infobox.label_name = new wxStaticText(this, wxID_ANY, wxGetTranslation(str_name));
|
||||
m_infobox.label_creator = new wxStaticText(this, wxID_ANY, wxGetTranslation(str_creator));
|
||||
m_infobox.label_notes = new wxStaticText(this, wxID_ANY, wxGetTranslation(str_notes));
|
||||
m_infobox.textctrl_notes = new wxTextCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition,
|
||||
wxSize(64, -1), wxTE_MULTILINE | wxTE_READONLY);
|
||||
m_infobox.listbox_codes = new wxListBox(this, wxID_ANY, wxDefaultPosition, wxSize(-1, 64));
|
||||
wxDefaultSize, wxTE_MULTILINE | wxTE_READONLY);
|
||||
m_infobox.listbox_codes =
|
||||
new wxListBox(this, wxID_ANY, wxDefaultPosition, wxDLG_UNIT(this, wxSize(-1, 48)));
|
||||
|
||||
// TODO: buttons to add/edit codes
|
||||
|
||||
// sizers
|
||||
const int space5 = FromDIP(5);
|
||||
wxBoxSizer* const sizer_infobox = new wxBoxSizer(wxVERTICAL);
|
||||
sizer_infobox->Add(m_infobox.label_name, 0, wxBOTTOM, 5);
|
||||
sizer_infobox->Add(m_infobox.label_creator, 0, wxBOTTOM, 5);
|
||||
sizer_infobox->Add(m_infobox.label_notes, 0, wxBOTTOM, 5);
|
||||
sizer_infobox->Add(m_infobox.textctrl_notes, 0, wxBOTTOM | wxEXPAND, 5);
|
||||
sizer_infobox->Add(m_infobox.listbox_codes, 1, wxEXPAND, 5);
|
||||
sizer_infobox->Add(m_infobox.label_name);
|
||||
sizer_infobox->Add(m_infobox.label_creator, 0, wxTOP, space5);
|
||||
sizer_infobox->Add(m_infobox.label_notes, 0, wxTOP, space5);
|
||||
sizer_infobox->Add(m_infobox.textctrl_notes, 0, wxEXPAND | wxTOP, space5);
|
||||
sizer_infobox->Add(m_infobox.listbox_codes, 1, wxEXPAND | wxTOP, space5);
|
||||
|
||||
// button sizer
|
||||
wxBoxSizer* const sizer_buttons = new wxBoxSizer(wxHORIZONTAL);
|
||||
btn_download = new wxButton(this, wxID_ANY, _("Download Codes (WiiRD Database)"),
|
||||
wxDefaultPosition, wxSize(128, -1));
|
||||
btn_download = new wxButton(this, wxID_ANY, _("Download Codes (WiiRD Database)"));
|
||||
btn_download->Disable();
|
||||
btn_download->Bind(wxEVT_BUTTON, &CodeConfigPanel::DownloadCodes, this);
|
||||
sizer_buttons->AddStretchSpacer(1);
|
||||
sizer_buttons->Add(btn_download, 1, wxEXPAND);
|
||||
|
||||
// horizontal sizer
|
||||
wxBoxSizer* const sizer_vert = new wxBoxSizer(wxVERTICAL);
|
||||
sizer_vert->Add(sizer_infobox, 1, wxEXPAND);
|
||||
sizer_vert->Add(sizer_buttons, 0, wxEXPAND | wxTOP, 5);
|
||||
sizer_buttons->Add(WxUtils::GiveMinSizeDIP(btn_download, wxSize(128, -1)), 1, wxEXPAND);
|
||||
|
||||
wxBoxSizer* const sizer_main = new wxBoxSizer(wxVERTICAL);
|
||||
sizer_main->Add(m_listbox_gcodes, 1, wxALL | wxEXPAND, 5);
|
||||
sizer_main->Add(sizer_vert, 0, wxALL | wxEXPAND, 5);
|
||||
sizer_main->AddSpacer(space5);
|
||||
sizer_main->Add(m_listbox_gcodes, 1, wxEXPAND | wxLEFT | wxRIGHT, space5);
|
||||
sizer_main->AddSpacer(space5);
|
||||
sizer_main->Add(sizer_infobox, 0, wxEXPAND | wxLEFT | wxRIGHT, space5);
|
||||
sizer_main->AddSpacer(space5);
|
||||
sizer_main->Add(sizer_buttons, 0, wxEXPAND | wxLEFT | wxRIGHT, space5);
|
||||
sizer_main->AddSpacer(space5);
|
||||
|
||||
SetSizerAndFit(sizer_main);
|
||||
}
|
||||
|
@ -83,7 +85,7 @@ void CodeConfigPanel::UpdateCodeList(bool checkRunning)
|
|||
// add the codes to the listbox
|
||||
for (const GeckoCode& code : m_gcodes)
|
||||
{
|
||||
m_listbox_gcodes->Append(StrToWxStr(code.name));
|
||||
m_listbox_gcodes->Append(m_listbox_gcodes->EscapeMnemonics(StrToWxStr(code.name)));
|
||||
if (code.enabled)
|
||||
{
|
||||
m_listbox_gcodes->Check(m_listbox_gcodes->GetCount() - 1, true);
|
||||
|
@ -126,7 +128,7 @@ void CodeConfigPanel::UpdateInfoBox(wxCommandEvent&)
|
|||
|
||||
if (sel > -1)
|
||||
{
|
||||
m_infobox.label_name->SetLabel(wxGetTranslation(wxstr_name) + StrToWxStr(m_gcodes[sel].name));
|
||||
m_infobox.label_name->SetLabel(wxGetTranslation(str_name) + StrToWxStr(m_gcodes[sel].name));
|
||||
|
||||
// notes textctrl
|
||||
m_infobox.textctrl_notes->Clear();
|
||||
|
@ -136,7 +138,7 @@ void CodeConfigPanel::UpdateInfoBox(wxCommandEvent&)
|
|||
}
|
||||
m_infobox.textctrl_notes->ScrollLines(-99); // silly
|
||||
|
||||
m_infobox.label_creator->SetLabel(wxGetTranslation(wxstr_creator) +
|
||||
m_infobox.label_creator->SetLabel(wxGetTranslation(str_creator) +
|
||||
StrToWxStr(m_gcodes[sel].creator));
|
||||
|
||||
// add codes to info listbox
|
||||
|
@ -147,9 +149,9 @@ void CodeConfigPanel::UpdateInfoBox(wxCommandEvent&)
|
|||
}
|
||||
else
|
||||
{
|
||||
m_infobox.label_name->SetLabel(wxGetTranslation(wxstr_name));
|
||||
m_infobox.label_name->SetLabel(wxGetTranslation(str_name));
|
||||
m_infobox.textctrl_notes->Clear();
|
||||
m_infobox.label_creator->SetLabel(wxGetTranslation(wxstr_creator));
|
||||
m_infobox.label_creator->SetLabel(wxGetTranslation(str_creator));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue