comparison libgui/src/settings-dialog.cc @ 19846:72fe9df87fe8

improve scalability of gui objects (as discussed in bug #41938) * files-dock-widget.cc (files_dock_widget): adjust size policy of combo box * history-dock-widget.cc (history_dock_widget): adjust size policy of combo box * workspace-view.cc (workspace_view): adjust size policy of combo box * file-editor-tab.cc (file_editor_tab): make size of eol, line and col indicator depending on font size * main-window.cc (construct_tool_bar): make size of combo box for worling dir depending on font size and adjust size policy * main-window.h: remove static variable for combo box width * settings-dialog.cc (read_lexer_settings): make width of labels and font combo boxes for editor styles depeding on font size * settings-dialog.ui: adjusted size policies of several objects
author Torsten <ttl@justmail.de>
date Tue, 24 Feb 2015 07:12:13 +0100
parents 4197fc428c7d
children 597fc0fd8e54
comparison
equal deleted inserted replaced
19845:29692bc97899 19846:72fe9df87fe8
448 QVector<QCheckBox*> attrib_font (3 * max_style); 448 QVector<QCheckBox*> attrib_font (3 * max_style);
449 QVector<color_picker*> color (max_style); 449 QVector<color_picker*> color (max_style);
450 QVector<color_picker*> bg_color (max_style); 450 QVector<color_picker*> bg_color (max_style);
451 int default_size = 10; 451 int default_size = 10;
452 QFont default_font = QFont (); 452 QFont default_font = QFont ();
453 int label_width;
453 QColor default_color = QColor (); 454 QColor default_color = QColor ();
454 QColor dummy_color = QColor (255,0,255); 455 QColor dummy_color = QColor (255,0,255);
455 456
456 for (int i = 0; i < max_style; i++) // create dialog elements for all styles 457 for (int i = 0; i < max_style; i++) // create dialog elements for all styles
457 { 458 {
458 QString actual_name = lexer->description (styles[i]); 459 QString actual_name = lexer->description (styles[i]);
459 QFont actual_font = lexer->font (styles[i]); 460 QFont actual_font = lexer->font (styles[i]);
460 description[i] = new QLabel (actual_name); 461 description[i] = new QLabel (actual_name);
461 description[i]->setWordWrap (true); 462 description[i]->setWordWrap (true);
462 description[i]->setMaximumSize (160,QWIDGETSIZE_MAX); 463 label_width = 24*description[i]->fontMetrics ().averageCharWidth ();
463 description[i]->setMinimumSize (160,1); 464 description[i]->setMaximumSize (label_width,QWIDGETSIZE_MAX);
465 description[i]->setMinimumSize (label_width,1);
464 select_font[i] = new QFontComboBox (); 466 select_font[i] = new QFontComboBox ();
465 select_font[i]->setObjectName (actual_name+"_font"); 467 select_font[i]->setObjectName (actual_name+"_font");
466 select_font[i]->setMaximumSize (180,QWIDGETSIZE_MAX); 468 select_font[i]->setMaximumSize (label_width,QWIDGETSIZE_MAX);
467 select_font[i]->setMinimumSize (180,1); 469 select_font[i]->setMinimumSize (label_width,1);
468 font_size[i] = new QSpinBox (); 470 font_size[i] = new QSpinBox ();
469 font_size[i]->setObjectName (actual_name+"_size"); 471 font_size[i]->setObjectName (actual_name+"_size");
470 if (styles[i] == 0) // the default 472 if (styles[i] == 0) // the default
471 { 473 {
472 select_font[i]->setCurrentFont (actual_font); 474 select_font[i]->setCurrentFont (actual_font);