This change to fluid's CodeEditor ought to make it honour textsize changes

that are applied at text buffer creation.

How effective this will be for etxtsize changes that occur later is
another question, but this corrects a problem identified in the
thread "Re: [fltk.general] FLUID fonts earlier



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9341 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
Ian MacArthur 2012-04-13 14:45:18 +00:00
parent 418dd143f0
commit 6f4c59079f
2 changed files with 15 additions and 1 deletions

View File

@ -114,6 +114,16 @@ const char * const CodeEditor::
"volatile"
};
// attempt to make the fluid code editor widget honour textsize setting
void CodeEditor::textsize(Fl_Fontsize s) {
Fl_Text_Editor::textsize(s); // call base class method
// now attempt to update our styletable to honour the new size...
int entries = sizeof(styletable) / sizeof(styletable[0]);
for(int iter = 0; iter < entries; iter++) {
styletable[iter].size = s;
}
} // textsize
// 'compare_keywords()' - Compare two keywords...
int CodeEditor::compare_keywords(const void *a, const void *b) {

View File

@ -59,6 +59,10 @@ class CodeEditor : public Fl_Text_Editor {
CodeEditor(int X, int Y, int W, int H, const char *L=0);
~CodeEditor();
int top_line() { return get_absolute_top_line_number(); }
// attempt to make the fluid code editor widget honour textsize setting
void textsize(Fl_Fontsize s);
};
class CodeViewer : public CodeEditor {
@ -66,7 +70,7 @@ class CodeViewer : public CodeEditor {
public:
CodeViewer(int X, int Y, int W, int H, const char *L=0);
protected:
int handle(int ev) { return Fl_Text_Display::handle(ev); }