LLE debugger work in progress: 1%, just a begin
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2797 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
37d513c53b
commit
e9232ecf95
|
@ -897,6 +897,18 @@
|
|||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="Debugger"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\Src\debugger\Debugger.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\debugger\Debugger.h"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
<File
|
||||
RelativePath=".\Src\Config.cpp"
|
||||
>
|
||||
|
|
|
@ -0,0 +1,73 @@
|
|||
// 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 "Common.h" // Common
|
||||
#include <iostream> // System
|
||||
#include <fstream>
|
||||
#include <sstream>
|
||||
|
||||
#include "Debugger.h"
|
||||
|
||||
// Event table and class
|
||||
BEGIN_EVENT_TABLE(CDebugger,wxDialog)
|
||||
EVT_CLOSE(CDebugger::OnClose) // on close event
|
||||
|
||||
//EVT_RIGHT_DOWN(CDebugger::ScrollBlocks)
|
||||
//EVT_LEFT_DOWN(CDebugger::ScrollBlocks)
|
||||
//EVT_MOUSE_EVENTS(CDebugger::ScrollBlocks)
|
||||
//EVT_MOTION(CDebugger::ScrollBlocks)
|
||||
//EVT_SCROLL(CDebugger::ScrollBlocks)
|
||||
//EVT_SCROLLWIN(CDebugger::ScrollBlocks)
|
||||
END_EVENT_TABLE()
|
||||
|
||||
CDebugger::CDebugger(wxWindow *parent, wxWindowID id, const wxString &title,
|
||||
const wxPoint &position, const wxSize& size, long style)
|
||||
: wxDialog(parent, id, title, position, size, style)
|
||||
{
|
||||
CreateGUIControls();
|
||||
}
|
||||
|
||||
CDebugger::~CDebugger()
|
||||
{
|
||||
}
|
||||
|
||||
void CDebugger::OnClose(wxCloseEvent& /*event*/)
|
||||
{
|
||||
EndModal(0);
|
||||
}
|
||||
|
||||
void CDebugger::DoHide()
|
||||
{
|
||||
Hide();
|
||||
}
|
||||
|
||||
void CDebugger::DoShow()
|
||||
{
|
||||
Show();
|
||||
//DoShowConsole(); // The console goes with the wx window
|
||||
}
|
||||
|
||||
void CDebugger::CreateGUIControls()
|
||||
{
|
||||
SetTitle(wxT("Sound Debugging"));
|
||||
|
||||
// Basic settings
|
||||
SetIcon(wxNullIcon);
|
||||
SetSize(8, 8, 200, 100); // These will become the minimin sizes allowed by resizing
|
||||
Center();
|
||||
|
||||
}
|
|
@ -0,0 +1,63 @@
|
|||
#pragma once
|
||||
|
||||
#ifndef __CDebugger_h__
|
||||
#define __CDebugger_h__
|
||||
|
||||
// general things
|
||||
#include <iostream>
|
||||
#include <vector>
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include <wx/wx.h>
|
||||
#include <wx/dialog.h>
|
||||
#else
|
||||
#include <wx/wxprec.h>
|
||||
#endif
|
||||
|
||||
#include <wx/button.h>
|
||||
#include <wx/stattext.h>
|
||||
#include <wx/statbox.h>
|
||||
#include <wx/statbmp.h>
|
||||
#include <wx/datetime.h> // for the timestamps
|
||||
|
||||
#include <wx/sizer.h>
|
||||
#include <wx/notebook.h>
|
||||
#include <wx/filepicker.h>
|
||||
#include <wx/listctrl.h>
|
||||
#include <wx/imaglist.h>
|
||||
|
||||
//#include "../Globals.h"
|
||||
|
||||
//class CPBView;
|
||||
//class IniFile;
|
||||
|
||||
// Window settings
|
||||
#undef CDebugger_STYLE
|
||||
#define CDebugger_STYLE wxDEFAULT_FRAME_STYLE | wxCLIP_CHILDREN | wxNO_FULL_REPAINT_ON_RESIZE
|
||||
|
||||
class CDebugger : public wxDialog
|
||||
{
|
||||
private:
|
||||
DECLARE_EVENT_TABLE();
|
||||
|
||||
public:
|
||||
CDebugger(wxWindow *parent, wxWindowID id = 1, const wxString &title = _("Sound Debugger"),
|
||||
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
|
||||
long style = CDebugger_STYLE);
|
||||
|
||||
virtual ~CDebugger();
|
||||
|
||||
void DoHide();
|
||||
void DoShow();
|
||||
private:
|
||||
// WARNING: Make sure these are not also elsewhere
|
||||
enum
|
||||
{
|
||||
// = 2000,
|
||||
};
|
||||
|
||||
void OnClose(wxCloseEvent& event);
|
||||
void CreateGUIControls();
|
||||
};
|
||||
|
||||
#endif
|
|
@ -34,6 +34,9 @@
|
|||
|
||||
#if defined(HAVE_WX) && HAVE_WX
|
||||
#include "DSPConfigDlgLLE.h"
|
||||
#include "debugger/Debugger.h"
|
||||
#include "Debugger/Debugger.h" // For the CDebugger class
|
||||
CDebugger* m_frame = NULL;
|
||||
#endif
|
||||
|
||||
PLUGIN_GLOBALS* globals = NULL;
|
||||
|
@ -163,6 +166,21 @@ void DoState(unsigned char **ptr, int mode)
|
|||
|
||||
void DllDebugger(HWND _hParent, bool Show)
|
||||
{
|
||||
#if defined(HAVE_WX) && HAVE_WX
|
||||
if (m_frame && Show) // if we have created it, let us show it again
|
||||
{
|
||||
m_frame->DoShow();
|
||||
}
|
||||
else if (!m_frame && Show)
|
||||
{
|
||||
m_frame = new CDebugger(NULL);
|
||||
m_frame->Show();
|
||||
}
|
||||
else if (m_frame && !Show)
|
||||
{
|
||||
m_frame->DoHide();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue