summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/dialog.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/dialog.cc b/src/dialog.cc
index 934af086..5b8d3a13 100644
--- a/src/dialog.cc
+++ b/src/dialog.cc
@@ -101,6 +101,7 @@ char *a_Dialog_open_file(const char *msg,
void a_Dialog_text_window(const char *txt, const char *title)
{
int wh = 500, ww = 480, bh = 30;
+ int lines, line_num_width;
TextBuffer *text_buf = new TextBuffer();
text_buf->text(txt);
@@ -109,6 +110,15 @@ void a_Dialog_text_window(const char *txt, const char *title)
TextDisplay *td = new TextDisplay(0,0,ww, wh-bh);
td->buffer(text_buf);
+ /* enable wrapping lines; text uses entire width of window */
+ td->wrap_mode(true, 0);
+
+ lines = td->total_lines();
+ line_num_width = 2;
+ while (lines /= 10)
+ ++line_num_width;
+ line_num_width = (int)(line_num_width * fltk::getwidth("0"));
+ td->linenumber_width(line_num_width);
ReturnButton *b = new ReturnButton (0, wh-bh, ww, bh, "Close");
b->callback(window_close_cb, window);