Repo permissions commit fix #3

This commit is contained in:
graffy76 2013-07-10 21:44:25 -05:00
parent bb049806df
commit 11178cc470
10 changed files with 27 additions and 28 deletions

View file

@ -391,10 +391,11 @@ void CSVDoc::View::resizeViewHeight (int height)
void CSVDoc::View::updateEditorSetting (const QString &settingName, const QString &settingValue) void CSVDoc::View::updateEditorSetting (const QString &settingName, const QString &settingValue)
{ {
if ( (settingName == "Record Status Display") || (settingName == "Referenceable ID Type Display") if ( (settingName == "Record Status Display") || (settingName == "Referenceable ID Type Display") )
{ {
foreach (QObject *view, mSubViewWindow.children()) foreach (QObject *view, mSubViewWindow.children())
{ {
// not all mSubviewWindow children are CSVDoc::Subview objects
CSVDoc::SubView *subview = dynamic_cast<CSVDoc::SubView *>(view); CSVDoc::SubView *subview = dynamic_cast<CSVDoc::SubView *>(view);
if (subview) if (subview)

View file

@ -43,7 +43,7 @@ namespace CSVSettings
protected: protected:
/// Creates the layout which for the blocks QGroupBox /// Creates the layout for the block's QGroupBox
QLayout *createLayout (Orientation direction, bool isZeroMargin, QWidget* parent = 0); QLayout *createLayout (Orientation direction, bool isZeroMargin, QWidget* parent = 0);
/// Creates widgets that exist as direct children of the block /// Creates widgets that exist as direct children of the block

View file

@ -19,7 +19,7 @@ void CSVSettings::AbstractWidget::buildLabelAndWidget (QWidget *widget, WidgetDe
if (!(def.caption.isEmpty() || noLabel) ) if (!(def.caption.isEmpty() || noLabel) )
{ {
QLabel *label = new QLabel (def.caption, dynamic_cast<QWidget*>(parent())); QLabel *label = new QLabel (def.caption, &dynamic_cast<QWidget &>( *parent()));
label->setBuddy (widget); label->setBuddy (widget);
mLayout->addWidget (label); mLayout->addWidget (label);

View file

@ -22,6 +22,8 @@ CSVSettings::GroupBlockDef *CSVSettings::DataDisplayFormatPage::setupDataDisplay
statusBlock->settingItems << statusItem; statusBlock->settingItems << statusItem;
statusBlock->isZeroMargin = false;
return statusBlock; return statusBlock;
} }

View file

@ -19,7 +19,7 @@ int CSVSettings::GroupBlock::build (GroupBlockDef *def)
setVisible (def->isVisible); setVisible (def->isVisible);
mBox->setLayout(createLayout (def->widgetOrientation, true)); mBox->setLayout(createLayout (def->widgetOrientation, def->isZeroMargin));
setObjectName (def->title); setObjectName (def->title);
mBox->setTitle (def->title); mBox->setTitle (def->title);

View file

@ -168,11 +168,14 @@ namespace CSVSettings
/// generic default value attribute /// generic default value attribute
QString defaultValue; QString defaultValue;
GroupBlockDef (): title(""), widgetOrientation (Orient_Vertical), isVisible (true), isProxy (false), defaultValue ("") /// shows / hides margins
bool isZeroMargin;
GroupBlockDef (): title(""), widgetOrientation (Orient_Vertical), isVisible (true), isProxy (false), defaultValue (""), isZeroMargin (true)
{} {}
GroupBlockDef (QString blockTitle) GroupBlockDef (QString blockTitle)
: title (blockTitle), widgetOrientation (Orient_Vertical), isProxy (false), isVisible (true), defaultValue ("") : title (blockTitle), widgetOrientation (Orient_Vertical), isProxy (false), isVisible (true), defaultValue (""), isZeroMargin (true)
{} {}
}; };

View file

@ -56,8 +56,8 @@ void CSVSettings::UserSettingsDialog::setWidgetStates ()
if (sectionSettings.find(pageName) != sectionSettings.end()) if (sectionSettings.find(pageName) != sectionSettings.end())
{ {
CSMSettings::SettingMap *settings = sectionSettings.value(pageName); CSMSettings::SettingMap *settings = sectionSettings.value(pageName);
AbstractPage *page = getAbstractPage (i); AbstractPage &page = getAbstractPage (i);
page->initializeWidgets(*settings); page.initializeWidgets(*settings);
} }
} }
} }
@ -96,16 +96,15 @@ void CSVSettings::UserSettingsDialog::writeSettings()
for (int i = 0; i < mStackedWidget->count(); ++i) for (int i = 0; i < mStackedWidget->count(); ++i)
{ {
AbstractPage *page = getAbstractPage (i); AbstractPage &page = getAbstractPage (i);
settings [page->objectName()] = page->getSettings(); settings [page.objectName()] = page.getSettings();
} }
CSMSettings::UserSettings::instance().writeSettings(settings); CSMSettings::UserSettings::instance().writeSettings(settings);
} }
CSVSettings::AbstractPage *CSVSettings::UserSettingsDialog::getAbstractPage (int index) CSVSettings::AbstractPage &CSVSettings::UserSettingsDialog::getAbstractPage (int index)
{ {
AbstractPage *page = dynamic_cast<AbstractPage *> (mStackedWidget->widget (index)); return dynamic_cast<AbstractPage &> (*(mStackedWidget->widget (index)));
return page;
} }
void CSVSettings::UserSettingsDialog::slotChangePage(QListWidgetItem *current, QListWidgetItem *previous) void CSVSettings::UserSettingsDialog::slotChangePage(QListWidgetItem *current, QListWidgetItem *previous)

View file

@ -36,7 +36,7 @@ namespace CSVSettings {
/// return the setting page by name /// return the setting page by name
/// performs dynamic cast to AbstractPage * /// performs dynamic cast to AbstractPage *
AbstractPage *getAbstractPage (int index); AbstractPage &getAbstractPage (int index);
void setWidgetStates (); void setWidgetStates ();
void buildPages(); void buildPages();
void writeSettings(); void writeSettings();
@ -47,7 +47,7 @@ namespace CSVSettings {
{ {
T *page = new T(mStackedWidget); T *page = new T(mStackedWidget);
mStackedWidget->addWidget (dynamic_cast<QWidget *>(page)); mStackedWidget->addWidget (&dynamic_cast<QWidget &>(*page));
new QListWidgetItem (page->objectName(), mListWidget); new QListWidgetItem (page->objectName(), mListWidget);

View file

@ -24,7 +24,7 @@ void CSVWorld::RecordStatusDelegate::updateEditorSetting (const QString &setting
mDisplayMode = Mode_IconAndText; mDisplayMode = Mode_IconAndText;
else if (settingValue == "Icon Only") else if (settingValue == "Icon Only")
mDoisplayMode = Mode_IconOnly; mDisplayMode = Mode_IconOnly;
else if (settingValue == "Text Only") else if (settingValue == "Text Only")
mDisplayMode = Mode_TextOnly; mDisplayMode = Mode_TextOnly;

View file

@ -209,23 +209,17 @@ void CSVWorld::Table::updateEditorSetting (const QString &settingName, const QSt
{ {
if (settingName == "Record Status Display") if (settingName == "Record Status Display")
{ {
RecordStatusDelegate *rsDelegate = dynamic_cast <CSVWorld::RecordStatusDelegate *> (itemDelegateForColumn(1)); RecordStatusDelegate &rsDelegate = dynamic_cast <CSVWorld::RecordStatusDelegate &> (*itemDelegateForColumn(1));
if (rsDelegate) rsDelegate.updateEditorSetting (settingName, settingValue);
{
rsDelegate->updateEditorSetting (settingName, settingValue);
emit dataChanged(mModel->index(0,1), mModel->index(mModel->rowCount()-1, 1)); emit dataChanged(mModel->index(0,1), mModel->index(mModel->rowCount()-1, 1));
} }
}
if (settingName == "Referenceable ID Type Display") if (settingName == "Referenceable ID Type Display")
{ {
RefIdTypeDelegate *refidDelegate = dynamic_cast <CSVWorld::RefIdTypeDelegate *> (itemDelegateForColumn(2)); RefIdTypeDelegate &refidDelegate = dynamic_cast <CSVWorld::RefIdTypeDelegate &> (*itemDelegateForColumn(2));
if (refidDelegate) refidDelegate.updateEditorSetting (settingName, settingValue);
{
refidDelegate->updateEditorSetting (settingName, settingValue);
emit dataChanged(mModel->index(0,1), mModel->index(mModel->rowCount()-1, 1)); emit dataChanged(mModel->index(0,1), mModel->index(mModel->rowCount()-1, 1));
} }
}
} }