summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--FL/Fl_Text_Buffer.H11
-rw-r--r--src/Fl_Text_Display.cxx4
2 files changed, 6 insertions, 9 deletions
diff --git a/FL/Fl_Text_Buffer.H b/FL/Fl_Text_Buffer.H
index f5736aa8b..cbf25f525 100644
--- a/FL/Fl_Text_Buffer.H
+++ b/FL/Fl_Text_Buffer.H
@@ -411,7 +411,6 @@ public:
/**
Returns a non 0 value if text has been selected, 0 otherwise
- \todo unicode check
*/
int selected() const { return mPrimary.selected(); }
@@ -468,7 +467,6 @@ public:
/**
Returns a non 0 value if text has been selected in the secondary
text selection, 0 otherwise
- \todo unicode check
*/
int secondary_selected() { return mSecondary.selected(); }
@@ -527,7 +525,6 @@ public:
/**
Returns the highlighted text. When you are done with the
text, free it using the free() function.
- \todo unicode check
*/
int highlight() { return mHighlight.selected(); }
@@ -786,25 +783,21 @@ public:
/**
Returns the primary selection.
- \todo unicode check
*/
const Fl_Text_Selection* primary_selection() const { return &mPrimary; }
/**
Returns the primary selection.
- \todo unicode check
*/
Fl_Text_Selection* primary_selection() { return &mPrimary; }
/**
Returns the secondary selection.
- \todo unicode check
*/
const Fl_Text_Selection* secondary_selection() const { return &mSecondary; }
/**
Returns the current highlight selection.
- \todo unicode check
*/
const Fl_Text_Selection* highlight_selection() const { return &mHighlight; }
@@ -944,6 +937,10 @@ protected:
*/
const char *address(int pos) const
{ return (pos < mGapStart) ? mBuf+pos : mBuf+pos+mGapEnd-mGapStart; }
+
+ /**
+ Convert a byte offset in buffer into a memory address.
+ */
char *address(int pos)
{ return (pos < mGapStart) ? mBuf+pos : mBuf+pos+mGapEnd-mGapStart; }
diff --git a/src/Fl_Text_Display.cxx b/src/Fl_Text_Display.cxx
index 0b72b39d3..4d1441240 100644
--- a/src/Fl_Text_Display.cxx
+++ b/src/Fl_Text_Display.cxx
@@ -1506,7 +1506,7 @@ void Fl_Text_Display::draw_vline(int visLineNum, int leftClip, int rightClip,
buf->tab_distance());
charStyle = position_style( lineStartPos, lineLen, charIndex,
outIndex + dispIndexOffset );
- for ( i = 0; i < charLen; i++ ) {
+ for ( i = 0; i < charLen; i++ ) { // FIXME: this rips apart the utf-8 sequneces
if ( i != 0 && charIndex < lineLen && lineStr[ charIndex ] == '\t' )
charStyle = position_style( lineStartPos, lineLen,
charIndex, outIndex + dispIndexOffset );
@@ -1548,7 +1548,7 @@ void Fl_Text_Display::draw_vline(int visLineNum, int leftClip, int rightClip,
buf->tab_distance());
charStyle = position_style( lineStartPos, lineLen, charIndex,
outIndex + dispIndexOffset );
- for ( i = 0; i < charLen; i++ ) {
+ for ( i = 0; i < charLen; i++ ) { // FIXME: this rips apart the utf-8 sequneces
if ( i != 0 && charIndex < lineLen && lineStr[ charIndex ] == '\t' )
charStyle = position_style( lineStartPos, lineLen,
charIndex, outIndex + dispIndexOffset );