Create the log window after the menus. This fixes the font ugliness on windows.

Fix modality for the config dialogs on windows.
Fix the compress/decompress dialog wxString issues for MacOSX (hopefully).
Fix the DSP-LLE debugger for linux.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6031 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
Glenn Rice 2010-08-02 01:52:00 +00:00
parent 52d3137598
commit 26aee8ff76
4 changed files with 39 additions and 10 deletions

View File

@ -349,9 +349,6 @@ CFrame::CFrame(wxFrame* parent,
// Give it a console early to show potential messages from this onward // Give it a console early to show potential messages from this onward
ConsoleListener *Console = LogManager::GetInstance()->getConsoleListener(); ConsoleListener *Console = LogManager::GetInstance()->getConsoleListener();
if (SConfig::GetInstance().m_InterfaceConsole) Console->Open(); if (SConfig::GetInstance().m_InterfaceConsole) Console->Open();
m_LogWindow = new CLogWindow(this, IDM_LOGWINDOW);
m_LogWindow->Hide();
m_LogWindow->Disable();
// Start debugging mazimized // Start debugging mazimized
if (UseDebugger) this->Maximize(true); if (UseDebugger) this->Maximize(true);
@ -420,6 +417,10 @@ CFrame::CFrame(wxFrame* parent,
RecreateToolbar(); RecreateToolbar();
if (!SConfig::GetInstance().m_InterfaceToolbar) DoToggleToolbar(false); if (!SConfig::GetInstance().m_InterfaceToolbar) DoToggleToolbar(false);
m_LogWindow = new CLogWindow(this, IDM_LOGWINDOW);
m_LogWindow->Hide();
m_LogWindow->Disable();
// Create list of available plugins for the configuration window // Create list of available plugins for the configuration window
CPluginManager::GetInstance().ScanForPlugins(); CPluginManager::GetInstance().ScanForPlugins();

View File

@ -956,20 +956,34 @@ void CFrame::OnConfigMain(wxCommandEvent& WXUNUSED (event))
void CFrame::OnPluginGFX(wxCommandEvent& WXUNUSED (event)) void CFrame::OnPluginGFX(wxCommandEvent& WXUNUSED (event))
{ {
#ifdef _WIN32
Disable(); // Fake a modal dialog
#endif
CPluginManager::GetInstance().OpenConfig( CPluginManager::GetInstance().OpenConfig(
this, this,
SConfig::GetInstance().m_LocalCoreStartupParameter.m_strVideoPlugin.c_str(), SConfig::GetInstance().m_LocalCoreStartupParameter.m_strVideoPlugin.c_str(),
PLUGIN_TYPE_VIDEO PLUGIN_TYPE_VIDEO
); );
#ifdef _WIN32
Enable();
Raise();
#endif
} }
void CFrame::OnPluginDSP(wxCommandEvent& WXUNUSED (event)) void CFrame::OnPluginDSP(wxCommandEvent& WXUNUSED (event))
{ {
#ifdef _WIN32
Disable(); // Fake a modal dialog
#endif
CPluginManager::GetInstance().OpenConfig( CPluginManager::GetInstance().OpenConfig(
this, this,
SConfig::GetInstance().m_LocalCoreStartupParameter.m_strDSPPlugin.c_str(), SConfig::GetInstance().m_LocalCoreStartupParameter.m_strDSPPlugin.c_str(),
PLUGIN_TYPE_DSP PLUGIN_TYPE_DSP
); );
#ifdef _WIN32
Enable();
Raise();
#endif
} }
void CFrame::OnPluginPAD(wxCommandEvent& WXUNUSED (event)) void CFrame::OnPluginPAD(wxCommandEvent& WXUNUSED (event))
@ -998,11 +1012,18 @@ void CFrame::OnPluginPAD(wxCommandEvent& WXUNUSED (event))
void CFrame::OnPluginWiimote(wxCommandEvent& WXUNUSED (event)) void CFrame::OnPluginWiimote(wxCommandEvent& WXUNUSED (event))
{ {
#ifdef _WIN32
Disable(); // Fake a modal dialog
#endif
CPluginManager::GetInstance().OpenConfig( CPluginManager::GetInstance().OpenConfig(
this, this,
SConfig::GetInstance().m_LocalCoreStartupParameter.m_strWiimotePlugin.c_str(), SConfig::GetInstance().m_LocalCoreStartupParameter.m_strWiimotePlugin.c_str(),
PLUGIN_TYPE_WIIMOTE PLUGIN_TYPE_WIIMOTE
); );
#ifdef _WIN32
Enable();
Raise();
#endif
} }
void CFrame::OnHelp(wxCommandEvent& event) void CFrame::OnHelp(wxCommandEvent& event)

View File

@ -1286,22 +1286,21 @@ void CGameListCtrl::OnCompressGCM(wxCommandEvent& WXUNUSED (event))
{ {
if (iso->IsCompressed()) if (iso->IsCompressed())
{ {
wxString Ext; wxString FileType;
if (iso->GetPlatform() == GameListItem::WII_DISC) if (iso->GetPlatform() == GameListItem::WII_DISC)
Ext = wxT("*.iso"); FileType = wxT("All Wii ISO files (iso)|*.iso");
else else
Ext = wxT("*.gcm"); FileType = wxT("All Gamecube GCM files (gcm)|*.gcm");
path = wxFileSelector( path = wxFileSelector(
_T("Save decompressed GCM/ISO"), _T("Save decompressed GCM/ISO"),
wxString(FilePath.c_str(), *wxConvCurrent), wxString(FilePath.c_str(), *wxConvCurrent),
wxString(FileName.c_str(), *wxConvCurrent) + Ext.After('*'), wxString(FileName.c_str(), *wxConvCurrent) + FileType.After('*'),
wxEmptyString, wxEmptyString,
FileType +
wxString::Format wxString::Format
( (
_T("All GC/Wii ISO files (%s)|%s|All files (%s)|%s"), _T("|All files (%s)|%s"),
(wxChar *)Ext.After('.').wchar_str(),
(wxChar *)Ext.wchar_str(),
wxFileSelectorDefaultWildcardStr, wxFileSelectorDefaultWildcardStr,
wxFileSelectorDefaultWildcardStr wxFileSelectorDefaultWildcardStr
), ),

View File

@ -163,11 +163,19 @@ void DSPDebuggerLLE::OnShowPC(wxCommandEvent& event)
void DSPDebuggerLLE::Refresh() void DSPDebuggerLLE::Refresh()
{ {
#ifdef __linux__
if (!wxIsMainThread())
wxMutexGuiEnter();
#endif
UpdateSymbolMap(); UpdateSymbolMap();
UpdateDisAsmListView(); UpdateDisAsmListView();
UpdateRegisterFlags(); UpdateRegisterFlags();
UpdateState(); UpdateState();
m_mgr.Update(); m_mgr.Update();
#ifdef __linux__
if (!wxIsMainThread())
wxMutexGuiLeave();
#endif
} }
void DSPDebuggerLLE::FocusOnPC() void DSPDebuggerLLE::FocusOnPC()