PyFrame Guide to wxPython
Copyright and License information Home
__ A B C D E F G H I L M P R S T U V W
wxStyledTextCtrl - Indicators
IndicatorGetForeground
IndicatorGetStyle
IndicatorSetForeground
IndicatorSetStyle
Summary:
As seen in the Text Operations page, the style byte is initially set up to provide three bits for indicators; hence, you can only have three indicator styles in the default configuration, although you have a choice of five different indicator types to show (i.e., only three may be used). You can use SetStyleBits to change this allocation, but beware: everything preprogrammed into the STC for indicators and styling assumes the default configuration.
You set the style to use for each indicator by using IndicatorSetStyle.
Indicator
Value
Looks like
wxSTC_INDIC_PLAIN
0
Single-line underline
wxSTC_INDIC_SQUIGGLE
1
Squiggly underline
wxSTC_INDIC_TT
2
Line of small T-shapes
wxSTC_INDIC_DIAGONAL
3
Diagonal hatching
wxSTC_INDIC_STRIKE
4
Strike-out
The default values are probably ok for most applications (see Scintilla source file ViewStyle.cxx, ~ line 110).
Style
Indicator
Color
0
Squiggle
#007F00 (dark green)
1
Small T-shapes
#0000FF (light blue)
2
Plain (underline)
#FF0000 (light red)
There are some wxPython constants defined for masking the upper 3 bits of the style byte (assuming the default configuration where those are the indicator bytes):
Mask
Value
indicator #
wxSTC_INDIC0_MASK
0x20
0
wxSTC_INDIC1_MASK
0x40
1
wxSTC_INDIC2_MASK
0x80
2
wxSTC_INDICS_MASK
0xE0
0,1,2
You can change the color of the indicators with IndicatorSetForeground.
After setting up indicators (you can skip the setup if you're willing to accept the defaults) you can then make them appear using StartStyling. This method has pos and mask arguments: the pos is where to start and the mask tells which bits to affect. For example, mask would be wxSTC_INDICS_MASK if all you wanted to affect was the indicator bits (again, assuming that there are only three of them). Then use SetStyling to make the indicators appear, with the style argument set to wxSTC_INDIC0_MASK, wxSTC_INDIC1_MASK, or wxSTC_INDIC2_MASK (or an OR of these, depending on what you want to see).
Note: if the indic parameter in the following methods is greater than wxSTC_INDIC_MAX (7) then the operation is cancelled: the IndicatorSetXX methods do nothing and the IndicatorGetXX methods return 0. Note that you always need to ensure that indic <= the actual number of indicator bits that exist; this defaults to 3.
----
IndicatorGetForeground(indic)
This method returns a wxColour with the foreground color of the indicator specified by the integer parameter indic.
top
----
IndicatorGetStyle(indic)
Returns an integer object with the style number for an indicator indic.
top
----
IndicatorSetForeground(indic,fore)
Sets the foreground color fore for the indicator specified by indic. The parameter indic is an integer, and fore may be a wxColour object, a #RRGGBB string, or a color spec like "white". Returns None.
top
----
IndicatorSetStyle(indic,style)
Sets the style number for an indicator indic. Both style and indic are integers. Returns None.
top
----