GUI fixes
* Fixed log window docking * Fixed multi-selection in the game list * Fixed last filename selection. Dolphin remembers the last game/elf/file that you loaded and will load that if you press the Play button without a default ISO selected and without selecting anything from the game list. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4887 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
f60c3e8445
commit
c0a86df00e
|
@ -806,10 +806,6 @@ void CFrame::OnMotion(wxMouseEvent& event)
|
||||||
#if wxUSE_TIMER
|
#if wxUSE_TIMER
|
||||||
void CFrame::Update()
|
void CFrame::Update()
|
||||||
{
|
{
|
||||||
// Update the GUI while a game has not yet been loaded
|
|
||||||
if (!Core::isRunning())
|
|
||||||
UpdateGUI();
|
|
||||||
|
|
||||||
// Check if auto hide is on, or if we are already hiding the cursor all the time
|
// Check if auto hide is on, or if we are already hiding the cursor all the time
|
||||||
if(!SConfig::GetInstance().m_LocalCoreStartupParameter.bAutoHideCursor
|
if(!SConfig::GetInstance().m_LocalCoreStartupParameter.bAutoHideCursor
|
||||||
|| SConfig::GetInstance().m_LocalCoreStartupParameter.bHideCursor) return;
|
|| SConfig::GetInstance().m_LocalCoreStartupParameter.bHideCursor) return;
|
||||||
|
|
|
@ -1067,6 +1067,14 @@ void CFrame::UpdateGUI()
|
||||||
m_ToolBar->EnableTool(IDM_PLAY, true);
|
m_ToolBar->EnableTool(IDM_PLAY, true);
|
||||||
GetMenuBar()->FindItem(IDM_PLAY)->Enable(true);
|
GetMenuBar()->FindItem(IDM_PLAY)->Enable(true);
|
||||||
}
|
}
|
||||||
|
// Prepare to load last selected file, enable play button
|
||||||
|
else if (!SConfig::GetInstance().m_LastFilename.empty()
|
||||||
|
&& wxFileExists(wxString(SConfig::GetInstance().m_LastFilename.c_str(), wxConvUTF8)))
|
||||||
|
{
|
||||||
|
if (m_ToolBar)
|
||||||
|
m_ToolBar->EnableTool(IDM_PLAY, true);
|
||||||
|
GetMenuBar()->FindItem(IDM_PLAY)->Enable(true);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// No game has been selected yet, disable play button
|
// No game has been selected yet, disable play button
|
||||||
|
|
|
@ -33,6 +33,7 @@
|
||||||
#include "FileUtil.h"
|
#include "FileUtil.h"
|
||||||
#include "CDUtils.h"
|
#include "CDUtils.h"
|
||||||
#include "WxUtils.h"
|
#include "WxUtils.h"
|
||||||
|
#include "main.h"
|
||||||
|
|
||||||
#if USE_XPM_BITMAPS
|
#if USE_XPM_BITMAPS
|
||||||
#include "../resources/Flag_Europe.xpm"
|
#include "../resources/Flag_Europe.xpm"
|
||||||
|
@ -99,6 +100,7 @@ END_EVENT_TABLE()
|
||||||
BEGIN_EVENT_TABLE(CGameListCtrl, wxListCtrl)
|
BEGIN_EVENT_TABLE(CGameListCtrl, wxListCtrl)
|
||||||
EVT_SIZE(CGameListCtrl::OnSize)
|
EVT_SIZE(CGameListCtrl::OnSize)
|
||||||
EVT_RIGHT_DOWN(CGameListCtrl::OnRightClick)
|
EVT_RIGHT_DOWN(CGameListCtrl::OnRightClick)
|
||||||
|
// EVT_LEFT_DOWN(CGameListCtrl::OnLeftClick) // Disabled as stops multi-selection in the game list
|
||||||
EVT_LIST_KEY_DOWN(LIST_CTRL, CGameListCtrl::OnKeyPress)
|
EVT_LIST_KEY_DOWN(LIST_CTRL, CGameListCtrl::OnKeyPress)
|
||||||
EVT_MOTION(CGameListCtrl::OnMouseMotion)
|
EVT_MOTION(CGameListCtrl::OnMouseMotion)
|
||||||
EVT_LIST_COL_BEGIN_DRAG(LIST_CTRL, CGameListCtrl::OnColBeginDrag)
|
EVT_LIST_COL_BEGIN_DRAG(LIST_CTRL, CGameListCtrl::OnColBeginDrag)
|
||||||
|
@ -779,6 +781,24 @@ void CGameListCtrl::OnMouseMotion(wxMouseEvent& event)
|
||||||
event.Skip();
|
event.Skip();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CGameListCtrl::OnLeftClick(wxMouseEvent& event)
|
||||||
|
{
|
||||||
|
// Focus the clicked item.
|
||||||
|
int flags;
|
||||||
|
long item = HitTest(event.GetPosition(), flags);
|
||||||
|
if (item != wxNOT_FOUND)
|
||||||
|
{
|
||||||
|
if (GetItemState(item, wxLIST_STATE_SELECTED) != wxLIST_STATE_SELECTED)
|
||||||
|
{
|
||||||
|
UnselectAll();
|
||||||
|
SetItemState(item, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED );
|
||||||
|
}
|
||||||
|
SetItemState(item, wxLIST_STATE_FOCUSED, wxLIST_STATE_FOCUSED);
|
||||||
|
}
|
||||||
|
|
||||||
|
wxGetApp().GetCFrame()->UpdateGUI();
|
||||||
|
}
|
||||||
|
|
||||||
void CGameListCtrl::OnRightClick(wxMouseEvent& event)
|
void CGameListCtrl::OnRightClick(wxMouseEvent& event)
|
||||||
{
|
{
|
||||||
// Focus the clicked item.
|
// Focus the clicked item.
|
||||||
|
|
|
@ -89,6 +89,7 @@ private:
|
||||||
DECLARE_EVENT_TABLE()
|
DECLARE_EVENT_TABLE()
|
||||||
|
|
||||||
// events
|
// events
|
||||||
|
void OnLeftClick(wxMouseEvent& event);
|
||||||
void OnRightClick(wxMouseEvent& event);
|
void OnRightClick(wxMouseEvent& event);
|
||||||
void OnMouseMotion(wxMouseEvent& event);
|
void OnMouseMotion(wxMouseEvent& event);
|
||||||
void OnColumnClick(wxListEvent& event);
|
void OnColumnClick(wxListEvent& event);
|
||||||
|
|
Loading…
Reference in New Issue