From c1ce889ce992cf7006120c01c336fc51b44de9d1 Mon Sep 17 00:00:00 2001 From: Neil Date: Wed, 19 Nov 2014 13:48:37 +1100 Subject: Platform overrides for some drawing and behaviour to benefit PLAT_CURSES. From Mitchell Foral. --- src/EditView.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/EditView.h') diff --git a/src/EditView.h b/src/EditView.h index 733612e8e..70af6b2bf 100644 --- a/src/EditView.h +++ b/src/EditView.h @@ -42,6 +42,8 @@ void DrawTextNoClipPhase(Surface *surface, PRectangle rc, const Style &style, XY void DrawStyledText(Surface *surface, const ViewStyle &vs, int styleOffset, PRectangle rcText, const StyledText &st, size_t start, size_t length, DrawPhase phase); +typedef void (*DrawTabArrowFn)(Surface *surface, PRectangle rcTab, int ymid); + /** * EditView draws the main text area. */ @@ -78,6 +80,14 @@ public: LineLayoutCache llc; PositionCache posCache; + int tabArrowHeight; // draw arrow heads this many pixels above/below line midpoint + /** Some platforms, notably PLAT_CURSES, do not support Scintilla's native + * DrawTabArrow function for drawing tab characters. Allow those platforms to + * override it instead of creating a new method in the Surface class that + * existing platforms must implement as empty. */ + DrawTabArrowFn customDrawTabArrow; + DrawWrapMarkerFn customDrawWrapMarker; + EditView(); virtual ~EditView(); -- cgit v1.2.3