Example #1
0
HRESULT CRunErr::CreateDebugger()
{
// Debugger-DLL nicht installiert	
	if (!g_SummitModuls[DEBUGGER].fIsInstalled) 
		return E_FAIL;

	EnableTriasWindow(false);

CMacroScriptExtension *pExt = (CMacroScriptExtension *)g_pTE;

	ASSERT(NULL != pExt);

	m_pScriptDebugger = new CBScriptDebug(pExt->ebInst(), pExt->MWind(), m_pOperateScripts); 
	ASSERT(NULL != m_pScriptDebugger);
	if (NULL == m_pScriptDebugger) return E_OUTOFMEMORY;
	
	if (NULL != m_pOperateScripts) {
	// öffnet Stream
		ASSERT(!m_strName.IsEmpty());
		if (!m_pScriptDebugger -> OpenStream((LPSTR)(LPCSTR)m_strName)) 
			return E_FAIL;
	}

	ASSERT(!m_strText.IsEmpty());
// immer
	if (!ebDebugger_SetText(GetDebuggerWnd(), m_strText)) 
		return E_FAIL;
	
return NOERROR;
}
Example #2
0
CRunErr::~CRunErr()
{	
// erst TRiAS wieder aktivieren, dann Debugger zerlegen, da sonst
// jemand anders als TRiAS aktiviert wird
	EnableTriasWindow(true);
	m_pScriptDebugger = NULL;
}
Example #3
0
CRunErr::~CRunErr()
{
	if (m_pOperateScripts) {
		m_pOperateScripts -> Release();
		m_pOperateScripts = NULL;
	}
			
// erst TRiAS wieder aktivieren, dann Debugger zerlegen, da sonst
// jemand anders als TRiAS aktiviert wird
	EnableTriasWindow(true);

// intern DestroyWindow()
	if (NULL != m_pScriptDebugger) {
		if (m_fRunModal) 
			m_pScriptDebugger -> Close(); 
		delete m_pScriptDebugger;
		m_pScriptDebugger = NULL;
	}
}
Example #4
0
HRESULT CRunErr::CreateDebugger(UINT uiWMClose, BOOL fOpen, ebWORD wLineNr, IObjectManagement *pIOM, IStreamInfo *pISI)
{
	ASSERT(!m_strName.IsEmpty());
	if (m_strName.IsEmpty()) return E_INVALIDARG;

	EnableTriasWindow(false);
	
	HRESULT hr = NOERROR;
	
	// Neuen Debugger kreieren, Baum füllen, DebCtrl init.
	if (NULL == m_pScriptDebugger)
		hr = ::CreateDebugger(g_pBSE -> MWind(), m_strName, fOpen, uiWMClose, pIOM, pISI, &m_pScriptDebugger);
	else // Nur neuen Script öffnen
		hr = m_pScriptDebugger -> Init(m_strName, fOpen, pIOM, pISI);

	if (FAILED(hr)) return hr;
	
	m_pScriptDebugger -> SetEditOnly(true);// Nur editieren möglich	
	ebDebugger_SelectLines(GetDebuggerWnd(), wLineNr-2, wLineNr-1, true);
	
	return hr;
}