Code::Blocks
SVN r11506
|
Code Completion Plugin Manager. More...
#include <ccmanager.h>
Public Member Functions | |
cbCodeCompletionPlugin * | GetProviderFor (cbEditor *ed=nullptr) |
Get the ccPlugin instant for the cbEditor. More... | |
void | RegisterCallTipChars (const wxString &chars, cbCodeCompletionPlugin *registrant) |
Register a new set of characters that, when typed, invoke calltip requests. More... | |
void | RegisterAutoLaunchChars (const wxString &chars, cbCodeCompletionPlugin *registrant) |
Register a new set of characters that, when typed, auto-launch codecomplete requests. More... | |
void | NotifyDocumentation () |
Let CCManager know that new results are available from cbCodeCompletionPlugin::GetDocumentation(). More... | |
void | NotifyPluginStatus () |
Let CCManager know that a change (e.g. More... | |
void | InjectAutoCompShow (int lenEntered, const wxString &itemList) |
If for some reason you need to use wxScintilla::AutoCompShow(), call this instead so CCManager does not step on you. More... | |
bool | ProcessArrow (int key) |
Used by cbStyledTextCtrl to process ArrowUp and ArrowDown key press. More... | |
void | UpdateEnvSettings () |
Called after env settings have changed, so the changes can be applied. More... | |
Private Types | |
enum | Direction { Previous, Next } |
User click the next or previous small button of the tip window. More... | |
typedef std::map< cbCodeCompletionPlugin *, std::set< wxChar > > | CCPluginCharMap |
typedef std::vector< cbCodeCompletionPlugin::CCCallTip > | CallTipVec |
Private Member Functions | |
CCManager () | |
~CCManager () override | |
void | OnCompleteCode (CodeBlocksEvent &event) |
Event handler to list the suggestion, when a user press Ctrl-space (by default). More... | |
void | OnDeactivateApp (CodeBlocksEvent &event) |
Event handler to avoid tooltips getting stuck active. More... | |
void | OnDeactivateEd (CodeBlocksEvent &event) |
Event handler to avoid tooltips getting stuck active. More... | |
void | OnEditorOpen (CodeBlocksEvent &event) |
Event handler to avoid tooltips getting stuck active. More... | |
void | OnEditorClose (CodeBlocksEvent &event) |
Event handler to avoid tooltips getting stuck active. More... | |
void | OnEditorHook (cbEditor *ed, wxScintillaEvent &event) |
Hook to the editor. More... | |
void | OnEditorTooltip (CodeBlocksEvent &event) |
Mouse hover event. More... | |
void | OnShowCallTip (CodeBlocksEvent &event) |
Event handler to show the call tip, when user press Ctrl-Shift-Space. More... | |
void | OnAutocompleteSelect (wxListEvent &event) |
Event handler to show documentation, when user changes autocomplete selection. More... | |
void | OnAutocompleteHide (wxShowEvent &event) |
Event handler to tear down documentation, when autocomplete closes. More... | |
void | OnDeferredCallTipShow (wxCommandEvent &event) |
Defer showing the calltip to avoid a crash issue. More... | |
void | OnDeferredCallTipCancel (wxCommandEvent &event) |
Defer canceling the calltip to avoid a crash issue. More... | |
void | OnPopupScroll (wxMouseEvent &event) |
Intercept cbStyledTextCtrl scroll events and forward to autocomplete/documentation popups. More... | |
void | OnHtmlLink (wxHtmlLinkEvent &event) |
A link is clicked in the document window. More... | |
void | OnTimer (wxTimerEvent &event) |
Grouped event handler for several timers. More... | |
void | OnMenuSelect (wxCommandEvent &event) |
Handle the CC related menu click. More... | |
void | DoBufferedCC (cbStyledTextCtrl *stc) |
CC launched in the same state as last run, display via cached data. More... | |
void | DoHidePopup () |
Hide the documentation popup. More... | |
void | DoShowDocumentation (cbEditor *ed) |
Show the documentation popup. More... | |
void | DoUpdateCallTip (cbEditor *ed) |
Update which tip to show next and where to show it. More... | |
void | AdvanceTip (Direction direction) |
Switch the tip window to the next item. More... | |
void | DoShowTips (const wxStringVec &tips, cbStyledTextCtrl *stc, int pos, int argsPos, int hlStart, int hlEnd) |
Format tips by breaking long lines at (hopefully) logical places. More... | |
void | CallSmartIndentCCDone (cbEditor *ed) |
Code completion as just insert some text in the editor, ask the smart indent plugin to adjust the indent. More... | |
Private Attributes | |
CCPluginCharMap | m_CallTipChars |
Chars each plugin is interested in for calltip state. More... | |
CCPluginCharMap | m_AutoLaunchChars |
Chars each plugin is interested in for autocomplete. More... | |
int | m_EditorHookID |
int | m_AutocompPosition |
Location of caret when autocomplete timer starts, if caret is still there, launch autocomplete. More... | |
int | m_CallTipActive |
Is CCManager currently displaying a calltip, and if so, where. More... | |
int | m_LastAutocompIndex |
Index of currently selected entry in autocomplete popup. More... | |
int | m_LastTipPos |
Last location a tool/call tip was displayed. More... | |
int | m_WindowBound |
Right-most boundary the documentation popup is allowed to stretch to. More... | |
bool | m_OwnsAutocomp |
Do we control the current autocomplete popup? More... | |
CallTipVec | m_CallTips |
Cached calltips. More... | |
CallTipVec::const_iterator | m_CurCallTip |
Remember current choice. More... | |
std::map< int, size_t > | m_CallTipChoiceDict |
Remember past choices. More... | |
std::map< int, size_t > | m_CallTipFuzzyChoiceDict |
Remember past choices based on prefix. More... | |
wxTimer | m_CallTipTimer |
wxTimer | m_AutoLaunchTimer |
wxTimer | m_AutocompSelectTimer |
wxSize | m_DocSize |
Size of the documentation popup. More... | |
wxPoint | m_DocPos |
Location of the documentation popup. More... | |
wxListView * | m_pAutocompPopup |
a handle to the autocomplete list window created by (wx)scintilla, needed under Windows to determine its dimensions (so the scroll event can be sent to it, if relevant) More... | |
cbEditor * | m_pLastEditor |
Last editor operated on. More... | |
cbCodeCompletionPlugin * | m_pLastCCPlugin |
The plugin handling m_pLastEditor. More... | |
UnfocusablePopupWindow * | m_pPopup |
Container for documentation popup. More... | |
wxHtmlWindow * | m_pHtml |
Documentation popup. More... | |
int | m_LastACLaunchState [2] |
std::vector< cbCodeCompletionPlugin::CCToken > | m_AutocompTokens |
Cached autocomplete list. More... | |
Friends | |
class | Mgr< CCManager > |
class | Manager |
Additional Inherited Members | |
Static Public Member Functions inherited from Mgr< CCManager > | |
static bool | Valid () |
static CCManager * | Get () |
static void | Free () |
Protected Member Functions inherited from Mgr< CCManager > | |
Mgr () | |
virtual | ~Mgr () |
Code Completion Plugin Manager.
This class manages all kinds of code completion plugins. For example, the native C/C++ code completion plugin, the Fortran code completion plugin and Python code completion plugin. The ccmanager asks some informations from the managed ccplugins. The major value passes from the ccmanager and the ccplugins are CCCallTip and CCToken.
The CCToken is needed when ccmanager needs to fill a code suggestion list, it is the ccplugin's duty to supply a collection of CCTokens.
When user is entering some function call statement, CCCallTip is used to show the function information, and especially it can highlight the current function argument.
Another kind of tip is the tooltip, this is the tip window shown when mouse hover on a specified token(such as variable token), ccmanager queries this information by asking CCToken information from ccplugin.
Note: Under Windows, scroll events are always directed to the window in focus, making it difficult to scroll the autocomplete list and the doxygen popup with the mouse. So, under Windows we catch scroll requests to the cbStyledTextCtrl, and run them through CCManager::OnPopupScroll(). This filters the event, and if the mouse is over the autocomplete list or the doxygen popup, the scroll event is instead sent there (and skipped for the editor window).
Definition at line 47 of file ccmanager.h.
|
private |
Definition at line 182 of file ccmanager.h.
|
private |
Definition at line 172 of file ccmanager.h.
|
private |
User click the next or previous small button of the tip window.
Enumerator | |
---|---|
Previous | |
Next |
Definition at line 161 of file ccmanager.h.
|
private |
Definition at line 266 of file ccmanager.cpp.
References _(), wxString::begin(), CCManagerHelper::BuildFontSizes(), cbEVT_APP_DEACTIVATED, cbEVT_COMPLETE_CODE, cbEVT_EDITOR_CLOSE, cbEVT_EDITOR_DEACTIVATED, cbEVT_EDITOR_OPEN, cbEVT_EDITOR_TOOLTIP, cbEVT_SHOW_CALL_TIP, wxString::end(), wxMenuBar::FindMenu(), Manager::Get(), Manager::GetAppFrame(), Manager::GetColourManager(), CCManagerHelper::GetDefaultHTMLFontSize(), wxMenuBar::GetMenu(), wxMenu::GetMenuItems(), idCallTipNext, idCallTipPrevious, idShowTooltip, wxMenu::Insert(), lsCaretStart, OnCompleteCode(), OnDeactivateApp(), OnDeactivateEd(), OnDeferredCallTipCancel(), OnDeferredCallTipShow(), OnEditorClose(), OnEditorHook(), OnEditorOpen(), OnEditorTooltip(), OnHtmlLink(), OnMenuSelect(), OnShowCallTip(), OnTimer(), ColourManager::RegisterColour(), Manager::RegisterEventSink(), EditorHooks::RegisterHook(), wxBORDER_SIMPLE, wxDefaultPosition, wxDefaultSize, wxEmptyString, wxEVT_TIMER, wxHW_SCROLLBAR_AUTO, wxID_ANY, wxSCI_INVALID_POSITION, wxT, and wxWHITE.
|
overrideprivate |
Definition at line 348 of file ccmanager.cpp.
References Manager::Get(), Manager::GetAppFrame(), idCallTipNext, idCallTipPrevious, idShowTooltip, OnHtmlLink(), OnMenuSelect(), Manager::RemoveAllEventSinksFor(), and EditorHooks::UnregisterHook().
|
private |
Switch the tip window to the next item.
Definition at line 430 of file ccmanager.cpp.
|
private |
Code completion as just insert some text in the editor, ask the smart indent plugin to adjust the indent.
Definition at line 1432 of file ccmanager.cpp.
References cbEVT_EDITOR_CC_DONE, Manager::Get(), and Manager::ProcessEvent().
|
private |
CC launched in the same state as last run, display via cached data.
Definition at line 1218 of file ccmanager.cpp.
References wxString::Alloc(), wxScintilla::AutoCompActive(), wxScintilla::AutoCompSelect(), wxScintilla::AutoCompShow(), wxScintilla::CallTipActive(), cbCodeCompletionPlugin::CCToken::displayName, F(), wxString::Find(), lsCaretStart, lsTknStart, wxString::Mid(), wxString::RemoveLast(), and wxT.
|
private |
Hide the documentation popup.
Definition at line 1255 of file ccmanager.cpp.
References OnPopupScroll(), and wxEVT_MOUSEWHEEL.
|
private |
Show the documentation popup.
Definition at line 1266 of file ccmanager.cpp.
References Manager::Get(), cbEditor::GetControl(), cbCodeCompletionPlugin::GetDocumentation(), wxString::IsEmpty(), OnPopupScroll(), wxEVT_MOUSEWHEEL, and wxT.
|
private |
Format tips by breaking long lines at (hopefully) logical places.
Definition at line 1350 of file ccmanager.cpp.
References wxScintilla::CallTipActive(), cbStyledTextCtrl::CallTipCancel(), wxScintilla::CallTipSetHighlight(), wxScintilla::CallTipShow(), wxString::Clear(), wxString::Find(), CCManagerHelper::FindColumn(), wxScintilla::GetColumn(), wxScintilla::GetLineEndPosition(), wxScintilla::GetMarginWidth(), wxString::IsEmpty(), wxString::Length(), wxScintilla::LineFromPosition(), wxScintilla::LinesOnScreen(), wxString::Mid(), wxScintilla::PointFromPosition(), wxScintilla::PositionFromLine(), wxScintilla::PositionFromPoint(), CCManagerHelper::RipplePts(), wxScintilla::TextWidth(), wxString::Trim(), wxScintilla::WordStartPosition(), wxSCI_MARGIN_NUMBER, wxSCI_MARGIN_SYMBOL, wxSCI_STYLE_LINENUMBER, wxT, and wxPoint::y.
|
private |
Update which tip to show next and where to show it.
Definition at line 1301 of file ccmanager.cpp.
References wxString::begin(), CCManagerHelper::CallTipToInt(), wxScintilla::GetCharAt(), cbEditor::GetControl(), wxScintilla::GetCurrentPos(), wxScintilla::GetTextRange(), wxScintilla::LineFromPosition(), wxString::npos, wxScintilla::PositionFromLine(), CCManagerHelper::RipplePts(), wxString::size(), wxScintilla::WordStartPosition(), wxIsspace(), wxSCI_INVALID_POSITION, and wxT.
cbCodeCompletionPlugin * CCManager::GetProviderFor | ( | cbEditor * | ed = nullptr | ) |
Get the ccPlugin instant for the cbEditor.
If the editor opened a c/c++ file, then it returns the native c/c++ ccPlugin.
ed | input editor, uses active editor if one is not passed; has (minimal) cache optimization |
Definition at line 367 of file ccmanager.cpp.
References cbCodeCompletionPlugin::ccpsActive, cbCodeCompletionPlugin::ccpsUniversal, Manager::Get(), EditorManager::GetBuiltinActiveEditor(), PluginManager::GetCodeCompletionOffers(), Manager::GetEditorManager(), Manager::GetPluginManager(), lsCaretStart, and wxSCI_INVALID_POSITION.
void CCManager::InjectAutoCompShow | ( | int | lenEntered, |
const wxString & | itemList | ||
) |
If for some reason you need to use wxScintilla::AutoCompShow(), call this instead so CCManager does not step on you.
Definition at line 417 of file ccmanager.cpp.
References wxScintilla::AutoCompShow(), Manager::Get(), EditorManager::GetBuiltinActiveEditor(), cbEditor::GetControl(), and Manager::GetEditorManager().
void CCManager::NotifyDocumentation | ( | ) |
Let CCManager know that new results are available from cbCodeCompletionPlugin::GetDocumentation().
Definition at line 404 of file ccmanager.cpp.
References Manager::Get(), EditorManager::GetBuiltinActiveEditor(), and Manager::GetEditorManager().
void CCManager::NotifyPluginStatus | ( | ) |
Let CCManager know that a change (e.g.
active lexer is switched) may invalidate cached active ccPlugin.
Definition at line 411 of file ccmanager.cpp.
Referenced by PluginsConfigurationDlg::EndModal(), and MainFrame::OnEditHighlightMode().
|
private |
Event handler to tear down documentation, when autocomplete closes.
Definition at line 1088 of file ccmanager.cpp.
References CALLTIP_REFRESH_DELAY, wxEVT_SHOW, and wxTIMER_ONE_SHOT.
Referenced by OnAutocompleteSelect().
|
private |
Event handler to show documentation, when user changes autocomplete selection.
Definition at line 1043 of file ccmanager.cpp.
References AUTOCOMP_SELECT_DELAY, wxScintilla::AutoCompGetMaxHeight(), Manager::Get(), EditorManager::GetBuiltinActiveEditor(), cbEditor::GetControl(), wxScintilla::GetCurrentLine(), Manager::GetEditorManager(), wxDisplay::GetFromWindow(), OnAutocompleteHide(), wxScintilla::TextHeight(), wxRect::width, wxEVT_SHOW, wxTIMER_ONE_SHOT, wxPoint::x, and wxPoint::y.
Referenced by OnEditorClose(), and OnEditorOpen().
|
private |
Event handler to list the suggestion, when a user press Ctrl-space (by default).
Definition at line 505 of file ccmanager.cpp.
References wxString::Alloc(), wxScintilla::AutoCompActive(), wxScintilla::AutoCompSelect(), wxScintilla::AutoCompSetIgnoreCase(), wxScintilla::AutoCompSetMaxHeight(), wxScintilla::AutoCompSetOrder(), wxScintilla::AutoCompSetSeparator(), wxScintilla::AutoCompSetTypeSeparator(), wxScintilla::AutoCompShow(), wxScintilla::CallTipActive(), F(), FROM_TIMER, Manager::Get(), cbCodeCompletionPlugin::GetAutocompList(), EditorManager::GetBuiltinActiveEditor(), Manager::GetConfigManager(), cbEditor::GetControl(), wxScintilla::GetCurrentPos(), Manager::GetEditorManager(), wxScintilla::GetTextRange(), lsCaretStart, lsTknStart, ConfigManager::ReadBool(), wxString::RemoveLast(), wxScintillaEvent::SetText(), wxScintilla::WordEndPosition(), wxScintilla::WordStartPosition(), wxSCI_ORDER_CUSTOM, wxSCI_ORDER_PRESORTED, and wxT.
Referenced by CCManager().
|
private |
Event handler to avoid tooltips getting stuck active.
Definition at line 600 of file ccmanager.cpp.
References wxScintilla::CallTipActive(), Manager::Get(), EditorManager::GetBuiltinActiveEditor(), cbEditor::GetControl(), Manager::GetEditorManager(), and wxSCI_INVALID_POSITION.
Referenced by CCManager().
|
private |
Event handler to avoid tooltips getting stuck active.
Definition at line 620 of file ccmanager.cpp.
References wxScintilla::CallTipActive(), cbStyledTextCtrl::CallTipCancel(), Manager::Get(), EditorManager::GetBuiltinEditor(), cbEditor::GetControl(), CodeBlocksEvent::GetEditor(), Manager::GetEditorManager(), and wxSCI_INVALID_POSITION.
Referenced by CCManager().
|
private |
Defer canceling the calltip to avoid a crash issue.
Definition at line 1111 of file ccmanager.cpp.
References Manager::Get(), EditorManager::GetBuiltinActiveEditor(), cbEditor::GetControl(), and Manager::GetEditorManager().
Referenced by CCManager().
|
private |
Defer showing the calltip to avoid a crash issue.
Launching this event directly seems to be a candidate for race condition and crash in OnShowCallTip() so we attempt to serialize it.
Definition at line 1100 of file ccmanager.cpp.
References cbEVT_SHOW_CALL_TIP, Manager::Get(), and Manager::ProcessEvent().
Referenced by CCManager().
|
private |
Event handler to avoid tooltips getting stuck active.
Definition at line 671 of file ccmanager.cpp.
References Manager::Get(), EditorManager::GetBuiltinEditor(), cbEditor::GetControl(), CodeBlocksEvent::GetEditor(), Manager::GetEditorManager(), and OnAutocompleteSelect().
Referenced by CCManager().
|
private |
Hook to the editor.
This is used so that we know some specific chars were entered, then we can decide whether it time to show a calltip or suggestion list.
Definition at line 783 of file ccmanager.cpp.
References wxScintilla::AutoCompActive(), wxScintilla::AutoCompCancel(), CALLTIP_REFRESH_DELAY, wxScintilla::CallTipActive(), cbEVT_COMPLETE_CODE, cbCodeCompletionPlugin::DoAutocomplete(), Manager::Get(), Manager::GetConfigManager(), cbEditor::GetControl(), wxScintilla::GetCurrentPos(), wxScintillaEvent::GetModificationType(), wxScintillaEvent::GetPosition(), wxScintillaEvent::GetText(), wxScintillaEvent::GetUpdated(), CCManagerHelper::IsPosVisible(), Manager::ProcessEvent(), ConfigManager::ReadInt(), SCROLL_REFRESH_DELAY, wxScintilla::WordStartPosition(), wxSCI_INVALID_POSITION, wxSCI_PERFORMED_UNDO, wxSCI_UPDATE_H_SCROLL, wxSCI_UPDATE_V_SCROLL, wxT, and wxTIMER_ONE_SHOT.
Referenced by CCManager().
|
private |
Event handler to avoid tooltips getting stuck active.
Definition at line 643 of file ccmanager.cpp.
References Manager::Get(), EditorManager::GetBuiltinEditor(), cbEditor::GetControl(), CodeBlocksEvent::GetEditor(), Manager::GetEditorManager(), OnAutocompleteSelect(), and setupColours().
Referenced by CCManager().
|
private |
Mouse hover event.
Definition at line 686 of file ccmanager.cpp.
References wxScintilla::CallTipActive(), Manager::Get(), cbCodeCompletionPlugin::GetCallTips(), Manager::GetConfigManager(), cbEditor::GetControl(), wxScintilla::GetLength(), cbEditor::GetLineIndentString(), wxScintilla::GetTextRange(), cbCodeCompletionPlugin::GetTokenAt(), CodeBlocksEvent::GetX(), EditorBase::IsBuiltinEditor(), cbStyledTextCtrl::IsCharacter(), cbStyledTextCtrl::IsComment(), EditorBase::IsContextMenuOpened(), cbStyledTextCtrl::IsPreprocessor(), cbStyledTextCtrl::IsString(), wxString::Length(), wxScintilla::LineFromPosition(), wxString::npos, wxScintilla::PositionFromLine(), wxScintilla::PositionFromPointClose(), ConfigManager::ReadInt(), tmDisable, tmKeyboundOnly, wxScintilla::WordEndPosition(), wxScintilla::WordStartPosition(), wxGetKeyState(), wxIsalpha(), WXK_CONTROL, wxSCI_INVALID_POSITION, and wxT.
Referenced by CCManager().
|
private |
A link is clicked in the document window.
Definition at line 1131 of file ccmanager.cpp.
References wxString::IsEmpty(), and cbCodeCompletionPlugin::OnDocumentationLink().
Referenced by CCManager(), and ~CCManager().
|
private |
Handle the CC related menu click.
Definition at line 1182 of file ccmanager.cpp.
References wxScintilla::CallTipActive(), cbEVT_EDITOR_TOOLTIP, Manager::Get(), EditorManager::GetBuiltinActiveEditor(), cbEditor::GetControl(), wxScintilla::GetCurrentPos(), Manager::GetEditorManager(), wxScintilla::GetStyleAt(), idCallTipNext, idCallTipPrevious, idShowTooltip, wxScintilla::PointFromPosition(), Manager::ProcessEvent(), CodeBlocksEvent::SetEditor(), CodeBlocksEvent::SetX(), CodeBlocksEvent::SetY(), wxSCI_INVALID_POSITION, wxT, wxPoint::x, and wxPoint::y.
Referenced by CCManager(), and ~CCManager().
|
private |
Intercept cbStyledTextCtrl scroll events and forward to autocomplete/documentation popups.
Definition at line 1119 of file ccmanager.cpp.
References wxMouseEvent::GetPosition(), and wxMouseEvent::GetWheelRotation().
Referenced by DoHidePopup(), and DoShowDocumentation().
|
private |
Event handler to show the call tip, when user press Ctrl-Shift-Space.
Definition at line 933 of file ccmanager.cpp.
References CCManagerHelper::CallTipToInt(), FROM_TIMER, Manager::Get(), EditorManager::GetBuiltinActiveEditor(), cbCodeCompletionPlugin::GetCallTips(), wxScintilla::GetCharAt(), Manager::GetConfigManager(), cbEditor::GetControl(), wxScintilla::GetCurrentPos(), Manager::GetEditorManager(), wxScintilla::GetStyleAt(), wxScintilla::GetTextRange(), wxString::Length(), wxScintilla::LineFromPosition(), wxScintilla::PositionFromLine(), ConfigManager::ReadInt(), wxString::RemoveLast(), wxString::size(), tmDisable, tmForceSinglePage, wxScintilla::WordStartPosition(), wxIsspace(), wxSCI_INVALID_POSITION, and wxT.
Referenced by CCManager().
|
private |
Grouped event handler for several timers.
Definition at line 1146 of file ccmanager.cpp.
References wxScintilla::AutoCompActive(), wxScintilla::AutoCompGetCurrent(), cbEVT_COMPLETE_CODE, FROM_TIMER, Manager::Get(), EditorManager::GetBuiltinActiveEditor(), cbEditor::GetControl(), wxScintilla::GetCurrentPos(), Manager::GetEditorManager(), idAutocompSelectTimer, idAutoLaunchTimer, idCallTipTimer, Manager::ProcessEvent(), and wxSCI_INVALID_POSITION.
Referenced by CCManager().
bool CCManager::ProcessArrow | ( | int | key | ) |
Used by cbStyledTextCtrl to process ArrowUp and ArrowDown key press.
This is not intended to be called by ccPlugins.
Definition at line 450 of file ccmanager.cpp.
References wxScintilla::CallTipActive(), Manager::Get(), EditorManager::GetBuiltinActiveEditor(), cbEditor::GetControl(), Manager::GetEditorManager(), WXK_DOWN, and WXK_UP.
Referenced by cbStyledTextCtrl::OnKeyDown().
void CCManager::RegisterAutoLaunchChars | ( | const wxString & | chars, |
cbCodeCompletionPlugin * | registrant | ||
) |
Register a new set of characters that, when typed, auto-launch codecomplete requests.
Use this if the default set is not appropriate.
Definition at line 398 of file ccmanager.cpp.
References wxString::begin(), and wxString::end().
void CCManager::RegisterCallTipChars | ( | const wxString & | chars, |
cbCodeCompletionPlugin * | registrant | ||
) |
Register a new set of characters that, when typed, invoke calltip requests.
Use this if the default set is not appropriate.
Definition at line 392 of file ccmanager.cpp.
References wxString::begin(), and wxString::end().
void CCManager::UpdateEnvSettings | ( | ) |
Called after env settings have changed, so the changes can be applied.
Definition at line 656 of file ccmanager.cpp.
References Manager::Get(), EditorManager::GetBuiltinEditor(), Manager::GetColourManager(), EditorManager::GetEditor(), Manager::GetEditorManager(), EditorManager::GetEditorsCount(), and setupColours().
Referenced by MainFrame::OnSettingsEnvironment().
|
friend |
Definition at line 51 of file ccmanager.h.
Definition at line 50 of file ccmanager.h.
|
private |
Location of caret when autocomplete timer starts, if caret is still there, launch autocomplete.
Definition at line 176 of file ccmanager.h.
|
private |
Definition at line 189 of file ccmanager.h.
|
private |
Cached autocomplete list.
It is the data CCManager uses to populate the (wx)scintilla autocomplete list window
Definition at line 219 of file ccmanager.h.
|
private |
Chars each plugin is interested in for autocomplete.
Definition at line 174 of file ccmanager.h.
|
private |
Definition at line 188 of file ccmanager.h.
|
private |
Is CCManager currently displaying a calltip, and if so, where.
Definition at line 177 of file ccmanager.h.
|
private |
Chars each plugin is interested in for calltip state.
Definition at line 173 of file ccmanager.h.
|
private |
Remember past choices.
Definition at line 185 of file ccmanager.h.
|
private |
Remember past choices based on prefix.
Definition at line 186 of file ccmanager.h.
|
private |
Cached calltips.
Definition at line 183 of file ccmanager.h.
|
private |
Definition at line 187 of file ccmanager.h.
|
private |
Remember current choice.
Definition at line 184 of file ccmanager.h.
|
private |
Location of the documentation popup.
Definition at line 191 of file ccmanager.h.
|
private |
Size of the documentation popup.
Definition at line 190 of file ccmanager.h.
|
private |
Definition at line 175 of file ccmanager.h.
|
private |
Definition at line 214 of file ccmanager.h.
|
private |
Index of currently selected entry in autocomplete popup.
Definition at line 178 of file ccmanager.h.
|
private |
Last location a tool/call tip was displayed.
Definition at line 179 of file ccmanager.h.
|
private |
Do we control the current autocomplete popup?
Definition at line 181 of file ccmanager.h.
|
private |
a handle to the autocomplete list window created by (wx)scintilla, needed under Windows to determine its dimensions (so the scroll event can be sent to it, if relevant)
Definition at line 197 of file ccmanager.h.
|
private |
Documentation popup.
it is the rendered doxygen documentation to display in the popup
Definition at line 212 of file ccmanager.h.
|
private |
The plugin handling m_pLastEditor.
Definition at line 201 of file ccmanager.h.
|
private |
Last editor operated on.
Definition at line 200 of file ccmanager.h.
|
private |
Container for documentation popup.
the window for the doxygen popup, with properties so it is always on top, but cannot be focused.
Definition at line 207 of file ccmanager.h.
|
private |
Right-most boundary the documentation popup is allowed to stretch to.
Definition at line 180 of file ccmanager.h.