📄 stc.cpp
字号:
}
// Set the current styling position to pos and the styling mask to mask.
// The styling mask can be used to protect some bits in each styling byte from modification.
void wxStyledTextCtrl::StartStyling(int pos, int mask) {
SendMsg(2032, pos, mask);
}
// Change style from current styling position for length characters to a style
// and move the current styling position to after this newly styled segment.
void wxStyledTextCtrl::SetStyling(int length, int style) {
SendMsg(2033, length, style);
}
// Is drawing done first into a buffer or direct to the screen?
bool wxStyledTextCtrl::GetBufferedDraw() {
return SendMsg(2034, 0, 0) != 0;
}
// If drawing is buffered then each line of text is drawn into a bitmap buffer
// before drawing it to the screen to avoid flicker.
void wxStyledTextCtrl::SetBufferedDraw(bool buffered) {
SendMsg(2035, buffered, 0);
}
// Change the visible size of a tab to be a multiple of the width of a space character.
void wxStyledTextCtrl::SetTabWidth(int tabWidth) {
SendMsg(2036, tabWidth, 0);
}
// Retrieve the visible size of a tab.
int wxStyledTextCtrl::GetTabWidth() {
return SendMsg(2121, 0, 0);
}
// Set the code page used to interpret the bytes of the document as characters.
void wxStyledTextCtrl::SetCodePage(int codePage) {
#if wxUSE_UNICODE
wxASSERT_MSG(codePage == wxSTC_CP_UTF8,
wxT("Only wxSTC_CP_UTF8 may be used when wxUSE_UNICODE is on."));
#else
wxASSERT_MSG(codePage != wxSTC_CP_UTF8,
wxT("wxSTC_CP_UTF8 may not be used when wxUSE_UNICODE is off."));
#endif
SendMsg(2037, codePage);
}
// Set the symbol used for a particular marker number,
// and optionally the fore and background colours.
void wxStyledTextCtrl::MarkerDefine(int markerNumber, int markerSymbol,
const wxColour& foreground,
const wxColour& background) {
SendMsg(2040, markerNumber, markerSymbol);
if (foreground.Ok())
MarkerSetForeground(markerNumber, foreground);
if (background.Ok())
MarkerSetBackground(markerNumber, background);
}
// Set the foreground colour used for a particular marker number.
void wxStyledTextCtrl::MarkerSetForeground(int markerNumber, const wxColour& fore) {
SendMsg(2041, markerNumber, wxColourAsLong(fore));
}
// Set the background colour used for a particular marker number.
void wxStyledTextCtrl::MarkerSetBackground(int markerNumber, const wxColour& back) {
SendMsg(2042, markerNumber, wxColourAsLong(back));
}
// Add a marker to a line, returning an ID which can be used to find or delete the marker.
int wxStyledTextCtrl::MarkerAdd(int line, int markerNumber) {
return SendMsg(2043, line, markerNumber);
}
// Delete a marker from a line.
void wxStyledTextCtrl::MarkerDelete(int line, int markerNumber) {
SendMsg(2044, line, markerNumber);
}
// Delete all markers with a particular number from all lines.
void wxStyledTextCtrl::MarkerDeleteAll(int markerNumber) {
SendMsg(2045, markerNumber, 0);
}
// Get a bit mask of all the markers set on a line.
int wxStyledTextCtrl::MarkerGet(int line) {
return SendMsg(2046, line, 0);
}
// Find the next line after lineStart that includes a marker in mask.
int wxStyledTextCtrl::MarkerNext(int lineStart, int markerMask) {
return SendMsg(2047, lineStart, markerMask);
}
// Find the previous line before lineStart that includes a marker in mask.
int wxStyledTextCtrl::MarkerPrevious(int lineStart, int markerMask) {
return SendMsg(2048, lineStart, markerMask);
}
// Define a marker from a bitmap
void wxStyledTextCtrl::MarkerDefineBitmap(int markerNumber, const wxBitmap& bmp) {
// convert bmp to a xpm in a string
wxMemoryOutputStream strm;
wxImage img = bmp.ConvertToImage();
if (img.HasAlpha())
img.ConvertAlphaToMask();
img.SaveFile(strm, wxBITMAP_TYPE_XPM);
size_t len = strm.GetSize();
char* buff = new char[len+1];
strm.CopyTo(buff, len);
buff[len] = 0;
SendMsg(2049, markerNumber, (long)buff);
delete [] buff;
}
// Add a set of markers to a line.
void wxStyledTextCtrl::MarkerAddSet(int line, int set) {
SendMsg(2466, line, set);
}
// Set the alpha used for a marker that is drawn in the text area, not the margin.
void wxStyledTextCtrl::MarkerSetAlpha(int markerNumber, int alpha) {
SendMsg(2476, markerNumber, alpha);
}
// Set a margin to be either numeric or symbolic.
void wxStyledTextCtrl::SetMarginType(int margin, int marginType) {
SendMsg(2240, margin, marginType);
}
// Retrieve the type of a margin.
int wxStyledTextCtrl::GetMarginType(int margin) {
return SendMsg(2241, margin, 0);
}
// Set the width of a margin to a width expressed in pixels.
void wxStyledTextCtrl::SetMarginWidth(int margin, int pixelWidth) {
SendMsg(2242, margin, pixelWidth);
}
// Retrieve the width of a margin in pixels.
int wxStyledTextCtrl::GetMarginWidth(int margin) {
return SendMsg(2243, margin, 0);
}
// Set a mask that determines which markers are displayed in a margin.
void wxStyledTextCtrl::SetMarginMask(int margin, int mask) {
SendMsg(2244, margin, mask);
}
// Retrieve the marker mask of a margin.
int wxStyledTextCtrl::GetMarginMask(int margin) {
return SendMsg(2245, margin, 0);
}
// Make a margin sensitive or insensitive to mouse clicks.
void wxStyledTextCtrl::SetMarginSensitive(int margin, bool sensitive) {
SendMsg(2246, margin, sensitive);
}
// Retrieve the mouse click sensitivity of a margin.
bool wxStyledTextCtrl::GetMarginSensitive(int margin) {
return SendMsg(2247, margin, 0) != 0;
}
// Clear all the styles and make equivalent to the global default style.
void wxStyledTextCtrl::StyleClearAll() {
SendMsg(2050, 0, 0);
}
// Set the foreground colour of a style.
void wxStyledTextCtrl::StyleSetForeground(int style, const wxColour& fore) {
SendMsg(2051, style, wxColourAsLong(fore));
}
// Set the background colour of a style.
void wxStyledTextCtrl::StyleSetBackground(int style, const wxColour& back) {
SendMsg(2052, style, wxColourAsLong(back));
}
// Set a style to be bold or not.
void wxStyledTextCtrl::StyleSetBold(int style, bool bold) {
SendMsg(2053, style, bold);
}
// Set a style to be italic or not.
void wxStyledTextCtrl::StyleSetItalic(int style, bool italic) {
SendMsg(2054, style, italic);
}
// Set the size of characters of a style.
void wxStyledTextCtrl::StyleSetSize(int style, int sizePoints) {
SendMsg(2055, style, sizePoints);
}
// Set the font of a style.
void wxStyledTextCtrl::StyleSetFaceName(int style, const wxString& fontName) {
SendMsg(2056, style, (long)(const char*)wx2stc(fontName));
}
// Set a style to have its end of line filled or not.
void wxStyledTextCtrl::StyleSetEOLFilled(int style, bool filled) {
SendMsg(2057, style, filled);
}
// Reset the default style to its state at startup
void wxStyledTextCtrl::StyleResetDefault() {
SendMsg(2058, 0, 0);
}
// Set a style to be underlined or not.
void wxStyledTextCtrl::StyleSetUnderline(int style, bool underline) {
SendMsg(2059, style, underline);
}
// Set a style to be mixed case, or to force upper or lower case.
void wxStyledTextCtrl::StyleSetCase(int style, int caseForce) {
SendMsg(2060, style, caseForce);
}
// Set a style to be a hotspot or not.
void wxStyledTextCtrl::StyleSetHotSpot(int style, bool hotspot) {
SendMsg(2409, style, hotspot);
}
// Set the foreground colour of the selection and whether to use this setting.
void wxStyledTextCtrl::SetSelForeground(bool useSetting, const wxColour& fore) {
SendMsg(2067, useSetting, wxColourAsLong(fore));
}
// Set the background colour of the selection and whether to use this setting.
void wxStyledTextCtrl::SetSelBackground(bool useSetting, const wxColour& back) {
SendMsg(2068, useSetting, wxColourAsLong(back));
}
// Get the alpha of the selection.
int wxStyledTextCtrl::GetSelAlpha() {
return SendMsg(2477, 0, 0);
}
// Set the alpha of the selection.
void wxStyledTextCtrl::SetSelAlpha(int alpha) {
SendMsg(2478, alpha, 0);
}
// Set the foreground colour of the caret.
void wxStyledTextCtrl::SetCaretForeground(const wxColour& fore) {
SendMsg(2069, wxColourAsLong(fore), 0);
}
// When key+modifier combination km is pressed perform msg.
void wxStyledTextCtrl::CmdKeyAssign(int key, int modifiers, int cmd) {
SendMsg(2070, MAKELONG(key, modifiers), cmd);
}
// When key+modifier combination km is pressed do nothing.
void wxStyledTextCtrl::CmdKeyClear(int key, int modifiers) {
SendMsg(2071, MAKELONG(key, modifiers));
}
// Drop all key mappings.
void wxStyledTextCtrl::CmdKeyClearAll() {
SendMsg(2072, 0, 0);
}
// Set the styles for a segment of the document.
void wxStyledTextCtrl::SetStyleBytes(int length, char* styleBytes) {
SendMsg(2073, length, (long)styleBytes);
}
// Set a style to be visible or not.
void wxStyledTextCtrl::StyleSetVisible(int style, bool visible) {
SendMsg(2074, style, visible);
}
// Get the time in milliseconds that the caret is on and off.
int wxStyledTextCtrl::GetCaretPeriod() {
return SendMsg(2075, 0, 0);
}
// Get the time in milliseconds that the caret is on and off. 0 = steady on.
void wxStyledTextCtrl::SetCaretPeriod(int periodMilliseconds) {
SendMsg(2076, periodMilliseconds, 0);
}
// Set the set of characters making up words for when moving or selecting by word.
// First sets deaults like SetCharsDefault.
void wxStyledTextCtrl::SetWordChars(const wxString& characters) {
SendMsg(2077, 0, (long)(const char*)wx2stc(characters));
}
// Start a sequence of actions that is undone and redone as a unit.
// May be nested.
void wxStyledTextCtrl::BeginUndoAction() {
SendMsg(2078, 0, 0);
}
// End a sequence of actions that is undone and redone as a unit.
void wxStyledTextCtrl::EndUndoAction() {
SendMsg(2079, 0, 0);
}
// Set an indicator to plain, squiggle or TT.
void wxStyledTextCtrl::IndicatorSetStyle(int indic, int style) {
SendMsg(2080, indic, style);
}
// Retrieve the style of an indicator.
int wxStyledTextCtrl::IndicatorGetStyle(int indic) {
return SendMsg(2081, indic, 0);
}
// Set the foreground colour of an indicator.
void wxStyledTextCtrl::IndicatorSetForeground(int indic, const wxColour& fore) {
SendMsg(2082, indic, wxColourAsLong(fore));
}
// Retrieve the foreground colour of an indicator.
wxColour wxStyledTextCtrl::IndicatorGetForeground(int indic) {
long c = SendMsg(2083, indic, 0);
return wxColourFromLong(c);
}
// Set the foreground colour of all whitespace and whether to use this setting.
void wxStyledTextCtrl::SetWhitespaceForeground(bool useSetting, const wxColour& fore) {
SendMsg(2084, useSetting, wxColourAsLong(fore));
}
// Set the background colour of all whitespace and whether to use this setting.
void wxStyledTextCtrl::SetWhitespaceBackground(bool useSetting, const wxColour& back) {
SendMsg(2085, useSetting, wxColourAsLong(back));
}
// Divide each styling byte into lexical class bits (default: 5) and indicator
// bits (default: 3). If a lexer requires more than 32 lexical states, then this
// is used to expand the possible states.
void wxStyledTextCtrl::SetStyleBits(int bits) {
SendMsg(2090, bits, 0);
}
// Retrieve number of bits in style bytes used to hold the lexical state.
int wxStyledTextCtrl::GetStyleBits() {
return SendMsg(2091, 0, 0);
}
// Used to hold extra styling information for each line.
void wxStyledTextCtrl::SetLineState(int line, int state) {
SendMsg(2092, line, state);
}
// Retrieve the extra styling information for a line.
int wxStyledTextCtrl::GetLineState(int line) {
return SendMsg(2093, line, 0);
}
// Retrieve the last line number that has line state.
int wxStyledTextCtrl::GetMaxLineState() {
return SendMsg(2094, 0, 0);
}
// Is the background of the line containing the caret in a different colour?
bool wxStyledTextCtrl::GetCaretLineVisible() {
return SendMsg(2095, 0, 0) != 0;
}
// Display the background of the line containing the caret in a different colour.
void wxStyledTextCtrl::SetCaretLineVisible(bool show) {
SendMsg(2096, show, 0);
}
// Get the colour of the background of the line containing the caret.
wxColour wxStyledTextCtrl::GetCaretLineBack() {
long c = SendMsg(2097, 0, 0);
return wxColourFromLong(c);
}
// Set the colour of the background of the line containing the caret.
void wxStyledTextCtrl::SetCaretLineBack(const wxColour& back) {
SendMsg(2098, wxColourAsLong(back), 0);
}
// Set a style to be changeable or not (read only).
// Experimental feature, currently buggy.
void wxStyledTextCtrl::StyleSetChangeable(int style, bool changeable) {
SendMsg(2099, style, changeable);
}
// Display a auto-completion list.
// The lenEntered parameter indicates how many characters before
// the caret should be used to provide context.
void wxStyledTextCtrl::AutoCompShow(int lenEntered, const wxString& itemList) {
SendMsg(2100, lenEntered, (long)(const char*)wx2stc(itemList));
}
// Remove the auto-completion list from the screen.
void wxStyledTextCtrl::AutoCompCancel() {
SendMsg(2101, 0, 0);
}
// Is there an auto-completion list visible?
bool wxStyledTextCtrl::AutoCompActive() {
return SendMsg(2102, 0, 0) != 0;
}
// Retrieve the position of the caret when the auto-completion list was displayed.
int wxStyledTextCtrl::AutoCompPosStart() {
return SendMsg(2103, 0, 0);
}
// User has selected an item so remove the list and insert the selection.
void wxStyledTextCtrl::AutoCompComplete() {
SendMsg(2104, 0, 0);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -