@@ -448,30 +448,18 @@ void MainWindow::copy_text(Fl_Widget *w, void *eventData) {
448448}
449449
450450void MainWindow::font_size_incr (Fl_Widget *w, void *eventData) {
451- EditorWidget *editWidget = getEditor ();
452- if (editWidget) {
453- int size = editWidget->getFontSize ();
454- if (size < MAX_FONT_SIZE) {
455- editWidget->setFontSize (size + 1 );
456- updateConfig (editWidget);
457- _runtime->setFontSize (size + 1 );
458- }
459- } else {
460- handle (EVENT_INCREASE_FONT);
451+ int size = _runtime->getFontSize ();
452+ if (size < MAX_FONT_SIZE) {
453+ _runtime->setFontSize (size + 1 );
454+ resizeTabs (size + 1 );
461455 }
462456}
463457
464458void MainWindow::font_size_decr (Fl_Widget *w, void *eventData) {
465- EditorWidget *editWidget = getEditor ();
466- if (editWidget) {
467- int size = editWidget->getFontSize ();
468- if (size > MIN_FONT_SIZE) {
469- editWidget->setFontSize (size - 1 );
470- updateConfig (editWidget);
471- _runtime->setFontSize (size - 1 );
472- }
473- } else {
474- handle (EVENT_DECREASE_FONT);
459+ int size = _runtime->getFontSize ();
460+ if (size > MIN_FONT_SIZE) {
461+ _runtime->setFontSize (size - 1 );
462+ resizeTabs (size - 1 );
475463 }
476464}
477465
@@ -1086,7 +1074,7 @@ void MainWindow::open_file(Fl_Widget *w, void *eventData) {
10861074 Fl_Group *openFileGroup = findTab (gw_file);
10871075 if (!openFileGroup) {
10881076 openFileGroup = createTab (gw_file, fileTabName);
1089- fileWidget = new FileWidget (_out);
1077+ fileWidget = new FileWidget (_out, _runtime-> getFontSize () );
10901078 openFileGroup->resizable (fileWidget);
10911079 openFileGroup->end ();
10921080 _tabGroup->end ();
@@ -1142,7 +1130,7 @@ HelpView *MainWindow::getHelp() {
11421130 Fl_Group *helpGroup = findTab (gw_help);
11431131 if (!helpGroup) {
11441132 helpGroup = createTab (gw_help, helpTabName);
1145- help = new HelpView (_out);
1133+ help = new HelpView (_out, _runtime-> getFontSize () );
11461134 help->callback (help_contents_anchor_cb);
11471135 helpGroup->resizable (help);
11481136 _profile->setHelpTheme (help);
@@ -1382,6 +1370,27 @@ void MainWindow::resizeDisplay(int x, int y, int w, int h) {
13821370 _runtime->resize (w, h);
13831371}
13841372
1373+ void MainWindow::resizeTabs (int fontSize) {
1374+ int n = _tabGroup->children ();
1375+ for (int c = 0 ; c < n; c++) {
1376+ Fl_Group *group = (Fl_Group *)_tabGroup->child (c);
1377+ GroupWidgetEnum gw = getGroupWidget (group);
1378+ switch (gw) {
1379+ case gw_editor:
1380+ ((EditorWidget *)group->child (0 ))->setFontSize (fontSize);
1381+ break ;
1382+ case gw_help:
1383+ ((HelpWidget *)group->child (0 ))->setFontSize (fontSize);
1384+ break ;
1385+ case gw_file:
1386+ ((FileWidget *)group->child (0 ))->setFontSize (fontSize);
1387+ break ;
1388+ default :
1389+ break ;
1390+ }
1391+ }
1392+ }
1393+
13851394/* *
13861395 * returns any active tty widget
13871396 */
0 commit comments