JavaScriptDebuggerBlackBerry.h [plain text]
#ifndef JavaScriptDebuggerBlackBerry_h
#define JavaScriptDebuggerBlackBerry_h
#if ENABLE(JAVASCRIPT_DEBUGGER)
#include "ScriptDebugListener.h"
namespace BlackBerry {
namespace WebKit {
class WebPagePrivate;
}
}
namespace WebCore {
class JavaScriptCallFrame;
class PageScriptDebugServer;
class JavaScriptDebuggerBlackBerry : public ScriptDebugListener {
public:
JavaScriptDebuggerBlackBerry(BlackBerry::WebKit::WebPagePrivate*);
~JavaScriptDebuggerBlackBerry();
void addBreakpoint(const unsigned short* url, unsigned urlLength, int lineNumber, const unsigned short* condition, unsigned conditionLength);
void updateBreakpoint(const unsigned short* url, unsigned urlLength, int lineNumber, const unsigned short* condition, unsigned conditionLength);
void removeBreakpoint(const unsigned short* url, unsigned urlLength, int lineNumber);
bool pauseOnExceptions();
void setPauseOnExceptions(bool);
void pauseInDebugger();
void resumeDebugger();
void stepOverStatementInDebugger();
void stepIntoStatementInDebugger();
void stepOutOfFunctionInDebugger();
virtual void didParseSource(const String& sourceID, const Script&);
virtual void failedToParseSource(const String& url, const String& data, int firstLine, int errorLine, const String& errorMessage);
virtual void didPause(ScriptState*, const ScriptValue& callFrames, const ScriptValue& exception);
virtual void didContinue();
protected:
void start();
void stop();
private:
BlackBerry::WebKit::WebPagePrivate* m_webPagePrivate;
PageScriptDebugServer& m_debugServer;
JavaScriptCallFrame* m_currentCallFrame;
};
}
#endif // ENABLE(JAVASCRIPT_DEBUGGER)
#endif // JavaScriptDebuggerBlackBerry_h