diff -r e41b6e1e3299 -r fc58b67d445c src/configDialog.cpp --- a/src/configDialog.cpp Wed Aug 21 11:09:39 2013 +0300 +++ b/src/configDialog.cpp Wed Aug 21 14:07:02 2013 +0300 @@ -14,6 +14,10 @@ * * You should have received a copy of the GNU General Public License * along with this program. If not, see . + * ===================================================================== + * + * configDialog.cpp: Settings dialog and everything related to it. + * Actual configuration core is in config.cpp. */ #include @@ -25,7 +29,6 @@ #include #include #include - #include "common.h" #include "configDialog.h" #include "file.h" @@ -67,6 +70,9 @@ extern_cfg (Bool, prog_isecalc_wine); extern_cfg (Bool, prog_edger2_wine); +#define act(N) extern_cfg (KeySequence, key_##N); +#include "actions.h" + const char* g_extProgPathFilter = #ifdef _WIN32 "Applications (*.exe)(*.exe);;All files (*.*)(*.*)"; @@ -74,9 +80,6 @@ ""; #endif -#define act(N) extern_cfg (KeySequence, key_##N); -#include "actions.h" - // ============================================================================= // ----------------------------------------------------------------------------- ConfigDialog::ConfigDialog (ConfigDialog::Tab deftab, QWidget* parent, Qt::WindowFlags f) : @@ -86,12 +89,12 @@ ui = new Ui_ConfigUI; ui->setupUi (this); - // Interface tab: + // Interface tab setButtonBackground (ui->backgroundColorButton, gl_bgcolor); connect (ui->backgroundColorButton, SIGNAL (clicked()), this, SLOT (slot_setGLBackground())); - setButtonBackground (ui->mainColorButton, gl_maincolor.value); + setButtonBackground (ui->mainColorButton, gl_maincolor); connect (ui->mainColorButton, SIGNAL (clicked()), this, SLOT (slot_setGLForeground())); @@ -149,6 +152,7 @@ } // ============================================================================= +// Adds a shortcut entry to the list of shortcuts. // ----------------------------------------------------------------------------- void ConfigDialog::addShortcut (KeySequenceConfig& cfg, QAction* act, ulong& i) { ShortcutListItem* item = new ShortcutListItem; @@ -166,6 +170,7 @@ } // ============================================================================= +// Initializes the table of grid stuff // ----------------------------------------------------------------------------- void ConfigDialog::initGrids() { QGridLayout* gridlayout = new QGridLayout; @@ -231,6 +236,7 @@ }; // ============================================================================= +// Initializes the stuff in the ext programs tab // ----------------------------------------------------------------------------- void ConfigDialog::initExtProgs() { QGridLayout* pathsLayout = new QGridLayout; @@ -269,12 +275,12 @@ } // ============================================================================= +// Set the settings based on widget data. // ----------------------------------------------------------------------------- void ConfigDialog::applySettings() { // Apply configuration lv_colorize = ui->colorizeObjects->isChecked(); gl_colorbfc = ui->colorBFC->isChecked(); - // edit_schemanticinline = ui->scemanticInlining->isChecked(); gl_blackedges = ui->blackEdges->isChecked(); gl_maincolor_alpha = ((double) ui->mainColorAlpha->value()) / 10.0f; gl_linethickness = ui->lineThickness->value(); @@ -287,6 +293,7 @@ ld_defaultname = ui->m_profileName->text(); ld_defaultlicense = ui->m_profileLicense->currentIndex(); + // Ensure '/' postfix to the download path if (net_downloadpath.value.right (1) != DIRSLASH) net_downloadpath += DIRSLASH; @@ -322,6 +329,7 @@ } // ============================================================================= +// A dialog button was clicked // ----------------------------------------------------------------------------- void ConfigDialog::buttonClicked (QAbstractButton* button) { typedef QDialogButtonBox QDDB; @@ -338,6 +346,7 @@ } // ============================================================================= +// Update the list of color toolbar items in the quick color tab. // ----------------------------------------------------------------------------- void ConfigDialog::updateQuickColorList (LDQuickColor* sel) { for (QListWidgetItem* item : quickColorItems) @@ -375,6 +384,7 @@ } // ============================================================================= +// Quick colors: add or edit button was clicked. // ----------------------------------------------------------------------------- void ConfigDialog::slot_setColor() { LDQuickColor* entry = null; @@ -421,6 +431,7 @@ } // ============================================================================= +// Remove a quick color // ----------------------------------------------------------------------------- void ConfigDialog::slot_delColor() { if (ui->quickColorList->selectedItems().size() == 0) @@ -432,6 +443,7 @@ } // ============================================================================= +// Move a quick color up/down // ----------------------------------------------------------------------------- void ConfigDialog::slot_moveColor() { const bool up = (static_cast (sender()) == ui->quickColor_moveUp); @@ -454,6 +466,7 @@ } // ============================================================================= +// Add a separator to quick colors // ----------------------------------------------------------------------------- void ConfigDialog::slot_addColorSeparator() { quickColors << LDQuickColor ({null, null, true}); @@ -461,6 +474,7 @@ } // ============================================================================= +// Clear all quick colors // ----------------------------------------------------------------------------- void ConfigDialog::slot_clearColors() { quickColors.clear(); @@ -468,6 +482,7 @@ } // ============================================================================= +// Pick a color and set the appropriate configuration option. // ----------------------------------------------------------------------------- void ConfigDialog::pickColor (StringConfig& conf, QPushButton* button) { QColor col = QColorDialog::getColor (QColor (conf)); @@ -494,6 +509,7 @@ } // ============================================================================= +// Sets background color of a given button. // ----------------------------------------------------------------------------- void ConfigDialog::setButtonBackground (QPushButton* button, str value) { button->setIcon (getIcon ("colorselect")); @@ -502,6 +518,7 @@ } // ============================================================================= +// Finds the given list widget item in the list of widget items given. // ----------------------------------------------------------------------------- int ConfigDialog::getItemRow (QListWidgetItem* item, List& haystack) { int i = 0; @@ -516,15 +533,17 @@ } // ============================================================================= +// Which quick color is currently selected? // ----------------------------------------------------------------------------- QListWidgetItem* ConfigDialog::getSelectedQuickColor() { if (ui->quickColorList->selectedItems().size() == 0) return null; - return ui->quickColorList->selectedItems() [0]; + return ui->quickColorList->selectedItems()[0]; } // ============================================================================= +// Get the list of shortcuts selected // ----------------------------------------------------------------------------- QList ConfigDialog::getShortcutSelection() { QList out; @@ -536,6 +555,7 @@ } // ============================================================================= +// Edit the shortcut of a given action. // ----------------------------------------------------------------------------- void ConfigDialog::slot_setShortcut() { QList sel = getShortcutSelection(); @@ -550,6 +570,7 @@ } // ============================================================================= +// Reset a shortcut to defaults // ----------------------------------------------------------------------------- void ConfigDialog::slot_resetShortcut() { QList sel = getShortcutSelection(); @@ -561,6 +582,7 @@ } // ============================================================================= +// Remove the shortcut of an action. // ----------------------------------------------------------------------------- void ConfigDialog::slot_clearShortcut() { QList sel = getShortcutSelection(); @@ -572,6 +594,7 @@ } // ============================================================================= +// Set the path of an external program // ----------------------------------------------------------------------------- void ConfigDialog::slot_setExtProgPath() { const extProgInfo* info = null; @@ -593,6 +616,7 @@ } // ============================================================================= +// '...' button pressed for the download path // ----------------------------------------------------------------------------- void ConfigDialog::slot_findDownloadFolder() { str dpath = QFileDialog::getExistingDirectory(); @@ -600,6 +624,7 @@ } // ============================================================================= +// Updates the text string for a given shortcut list item // ----------------------------------------------------------------------------- void ConfigDialog::setShortcutText (ShortcutListItem* item) { QAction* act = item->action(); @@ -609,6 +634,7 @@ } // ============================================================================= +// Gets the configuration string of the quick color toolbar // ----------------------------------------------------------------------------- str ConfigDialog::quickColorString() { str val;