Developer forums (C::B DEVELOPMENT STRICTLY!) > Development
Splitting debugger in two - specific debugger and common GUI
ollydbg:
--- Quote from: oBFusCATed on August 11, 2011, 09:57:01 am ---OK, I'll see what can be done tonight.
Can you show me the exact revisions of the changes in CodeLight?
--- End quote ---
It's also in the same post: codelite's way to emulate a event when ctrl pressed.
Codelite has the code repository on sourceforge:SourceForge.net: CodeLite: SCM
--- Quote ---Everything is committed now. Happy testing.
btw. DBG tooltip almost always wins (it is shown later), because there is some delay evaluating the variable. 8)
--- End quote ---
Thanks and that's great!
ollydbg:
by the way, codelite has a tip improvement, see:
--- Quote ---Revision: 4686
Author: eranif
Date: 2:39:01, 2011 1 3
Message:
- Debugger: when the option to show the debugger tip only if CTRL key is down is ON, the tip will now be shown immediately without the need to "move" the mouse
----
Modified : /trunk/LiteEditor/cl_editor.cpp
Modified : /trunk/LiteEditor/context_cpp.cpp
--- End quote ---
In this rev, an emulated event is added.
oBFusCATed:
I'll look at it.... thanks
ollydbg:
One change in the scintilla editor should be like below:
--- Code: ---Index: E:/code/cb/cb_debugger_branch/src/sdk/wxscintilla/src/scintilla/src/Editor.cxx
===================================================================
--- E:/code/cb/cb_debugger_branch/src/sdk/wxscintilla/src/scintilla/src/Editor.cxx (revision 7366)
+++ E:/code/cb/cb_debugger_branch/src/sdk/wxscintilla/src/scintilla/src/Editor.cxx (working copy)
@@ -5580,7 +5580,9 @@
}
int Editor::KeyDownWithModifiers(int key, int modifiers, bool *consumed) {
- DwellEnd(false);
+ //any key other than ctrl will cause the dwell end
+ if(modifiers!=SCI_CTRL)
+ DwellEnd(false);
int msg = kmap.Find(key, modifiers);
if (msg) {
if (consumed)
--- End code ---
Compare with my last patch: my last patch
it seem you did not use "GDBTipWindowView" or "GDBTipWindow" to show the tip?
as you said:
--- Quote ---- Added implementation of the tooltip using wxPropertyGrid
--- End quote ---
, does this tip only used for watch dialog?
I just exam the code:
--- Code: ---void cbDebuggerPlugin::ProcessValueTooltip(CodeBlocksEvent& event)
{
event.Skip();
if (cbDebuggerCommonConfig::GetFlag(cbDebuggerCommonConfig::RequireCtrlForTooltips))
{
if (!wxGetKeyState(WXK_CONTROL))
return;
}
if (!ShowValueTooltip(event.GetInt()))
return;
EditorBase* base = event.GetEditor();
cbEditor* ed = base && base->IsBuiltinEditor() ? static_cast<cbEditor*>(base) : 0;
if (!ed)
return;
if (ed->IsContextMenuOpened())
return;
// get rid of other calltips (if any) [for example the code completion one, at this time we
// want the debugger value call/tool-tip to win and be shown]
if (ed->GetControl()->CallTipActive())
ed->GetControl()->CallTipCancel();
wxPoint pt;
pt.x = event.GetX();
pt.y = event.GetY();
const wxString &token = GetEditorWordAtCaret(&pt);
if (!token.empty())
{
pt = ed->GetControl()->ClientToScreen(pt);
OnValueTooltip(token, wxRect(pt.x - 5, pt.y, 10, 10));
}
}
--- End code ---
So, where did you actually show the debugger's tip window? In the function
--- Code: ---OnValueTooltip(token, wxRect(pt.x - 5, pt.y, 10, 10));
--- End code ---
??
I can't see any code snippet to show the tip window. :D
oBFusCATed:
--- Quote from: ollydbg on August 11, 2011, 04:37:35 pm ---Compare with my last patch: my last patch
it seem you did not use "GDBTipWindowView" or "GDBTipWindow" to show the tip?
--- End quote ---
No, I don't :)
See the ValueTooltip class.
--- Quote from: ollydbg on August 11, 2011, 04:37:35 pm ---as you said:
--- Quote ---- Added implementation of the tooltip using wxPropertyGrid
--- End quote ---
, does this tip only used for watch dialog?
--- End quote ---
No, it is not used for the watches, but the value tooltips, set the ValueTooltip class...
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version