//////////////////////////////////////////////////////////////////////////////// // OnMarginClick() // // This function handles the user clicks in the margin to the left of a // line of source code. We use the margin to display breakpoint indicators // so it makes sense that if you click on an breakpoint indicator, we will // clear that breakpoint. If you click on a spot that does not contain a // breakpoint indicator (but it's still in the margin), we create a new // breakpoint at that line // // Parametes: // Selection Event Object // void frmDebugger::OnMarginClick(wxStyledTextEvent &event) { int lineNo; // Check that the user clicked on the line number or breakpoint margin // We don't want to set a breakpoint when the user folds/unfolds code if (!(event.GetMargin() == 0 || event.GetMargin() == 1)) return; lineNo = m_codeViewer->LineFromPosition(event.GetPosition()); if (lineNo <= 0) return; // If we already have a breakpoint at the clickpoint, disable it, otherwise // create a new breakpoint if(m_codeViewer->MarkerGet(lineNo) & MARKERINDEX_TO_MARKERMASK(MARKER_BREAKPOINT)) { m_controller->ClearBreakpoint(lineNo); } else { m_controller->SetBreakpoint(lineNo); } m_controller->UpdateBreakpoints(); }
void ctlSQLBox::OnMarginClick(wxStyledTextEvent &event) { if (event.GetMargin() == 2) ToggleFold(LineFromPosition(event.GetPosition())); event.Skip(); }
void StyledTextCtrl::OnMarginClick(wxStyledTextEvent& event) { int lineClick = LineFromPosition(event.GetPosition()); int levelClick = GetFoldLevel(lineClick); switch (event.GetMargin()) { case MARGIN_FOLD: if ((levelClick & wxSTC_FOLDLEVELHEADERFLAG) > 0) { ToggleFold(lineClick); } break; case MARGIN_LINE_BREAKS: if (MarkerGet(lineClick) == 0) { MarkerAdd(lineClick, 0); } else { MarkerDelete(lineClick, 0); } break; case MARGIN_LINE_EDITS: break; case MARGIN_LINE_NUMBERS: break; default: break; } }
//! misc void Edit::OnMarginClick (wxStyledTextEvent &event) { if (event.GetMargin() == 2) { int lineClick = LineFromPosition (event.GetPosition()); int levelClick = GetFoldLevel (lineClick); if ((levelClick & wxSTC_FOLDLEVELHEADERFLAG) > 0) { ToggleFold (lineClick); } } }
/* TextEditor::onMarginClick * Called when a margin is clicked *******************************************************************/ void TextEditor::onMarginClick(wxStyledTextEvent& e) { if (e.GetMargin() == 1) { int line = LineFromPosition(e.GetPosition()); int level = GetFoldLevel(line); if ((level & wxSTC_FOLDLEVELHEADERFLAG) > 0) ToggleFold(line); updateFolding(); } }
void IWnd_stc::OnMarginClick (wxStyledTextEvent &evt) { if (evt.GetMargin() == StcManager::FOLDING_ID) { int lineClick = LineFromPosition (evt.GetPosition()); int levelClick = GetFoldLevel (lineClick); if ((levelClick & wxSTC_FOLDLEVELHEADERFLAG) > 0) { ToggleFold (lineClick); } } }
// Event callback when a margin is clicked, used here for code folding void SavvyEditor::AppFrame::OnMarginClick(wxStyledTextEvent& a_Event) { if (a_Event.GetMargin() == MARGIN_FOLD) { int lineClick = m_LastSelectedTextCtrl->LineFromPosition(a_Event.GetPosition()); int levelClick = m_LastSelectedTextCtrl->GetFoldLevel(lineClick); if ((levelClick & wxSTC_FOLDLEVELHEADERFLAG) > 0) { m_LastSelectedTextCtrl->ToggleFold(lineClick); } } }
void udCodeEditorPanel::OnMarginClick ( wxStyledTextEvent &event ) { if ( event.GetMargin() == 1 ) { int lineClick = m_scintillaEditor->LineFromPosition ( event.GetPosition() ); int levelClick = m_scintillaEditor->GetFoldLevel ( lineClick ); if ( ( levelClick & wxSTC_FOLDLEVELHEADERFLAG ) > 0 ) { m_scintillaEditor->ToggleFold ( lineClick ); } } }
void TextFrame::OnMarginClick(wxStyledTextEvent& event) { if (event.GetMargin() == MARGIN_FOLD) { wxStyledTextCtrl* txt = getCurrentTextCtrl(); if(txt) { int line = txt->LineFromPosition(event.GetPosition()); int levelClick = txt->GetFoldLevel (line); if ((levelClick & wxSTC_FOLDLEVELHEADERFLAG) > 0) { txt->ToggleFold (line); } } } }
void FileEditorWnd::OnMarginClick(wxStyledTextEvent& event) { switch(event.GetMargin()) { case MARGIN_BREAKPOINTS: { doBreakpoint(m_textCtrl->LineFromPosition(event.GetPosition())); } break; case MARGIN_FOLD: { int txtline = m_textCtrl->LineFromPosition(event.GetPosition()); int levelClick = m_textCtrl->GetFoldLevel(txtline); if ((levelClick & wxSTC_FOLDLEVELHEADERFLAG) > 0) { m_textCtrl->ToggleFold(txtline); } } break; } }
void OutputTabWindow::OnMarginClick(wxStyledTextEvent& e) { if(m_sci && e.GetMargin() == 4) { m_sci->ToggleFold(m_sci->LineFromPosition(e.GetPosition())); } }