Commit 0aec9cc4 authored by Claudio Valerio's avatar Claudio Valerio

fixed issue 765

parent 00f87f85
This diff is collapsed.
......@@ -476,6 +476,8 @@ void UBApplication::closing()
if (webController)
webController->closing();
UBSettings::settings()->closing();
UBSettings::settings()->appToolBarPositionedAtTop->set(mainWindow->toolBarArea(mainWindow->boardToolBar) == Qt::TopToolBarArea);
quit();
......
......@@ -67,8 +67,6 @@ UBPreferencesController::UBPreferencesController(QWidget *parent)
mPreferencesWindow = new UBPreferencesDialog(this,parent, Qt::Dialog);
mPreferencesUI = new Ui::preferencesDialog(); // deleted in
mPreferencesUI->setupUi(mPreferencesWindow);
connect(mPreferencesUI->Username_textBox, SIGNAL(editingFinished()), this, SLOT(onCommunityUsernameChanged()));
connect(mPreferencesUI->Password_textEdit, SIGNAL(editingFinished()), this, SLOT(onCommunityPasswordChanged()));
wire();
}
......@@ -76,7 +74,7 @@ UBPreferencesController::UBPreferencesController(QWidget *parent)
UBPreferencesController::~UBPreferencesController()
{
delete mPreferencesWindow;
delete mPreferencesWindow;
delete mPreferencesUI;
......@@ -161,6 +159,12 @@ void UBPreferencesController::wire()
connect(mMarkerProperties->pressureSensitiveCheckBox, SIGNAL(clicked(bool)), settings, SLOT(setMarkerPressureSensitive(bool)));
connect(mMarkerProperties->opacitySlider, SIGNAL(valueChanged(int)), this, SLOT(opacitySliderChanged(int)));
//network
connect(mPreferencesUI->Username_textBox, SIGNAL(editingFinished()), this, SLOT(onCommunityUsernameChanged()));
connect(mPreferencesUI->Password_textEdit, SIGNAL(editingFinished()), this, SLOT(onCommunityPasswordChanged()));
connect(mPreferencesUI->PSDataPersistenceCheckBox,SIGNAL(clicked()),this, SLOT(onCommunityPersistenceChanged()));
// about tab
connect(mPreferencesUI->checkSoftwareUpdateAtLaunchCheckBox, SIGNAL(clicked(bool)), settings->appEnableAutomaticSoftwareUpdates, SLOT(setBool(bool)));
}
......@@ -212,18 +216,36 @@ void UBPreferencesController::init()
mMarkerProperties->opacitySlider->setValue(settings->boardMarkerAlpha->get().toDouble() * 100);
//network
mPreferencesUI->PSDataPersistenceCheckBox->setChecked(settings->getCommunityDataPersistence());
persistanceCheckboxUpdate();
}
void UBPreferencesController::onCommunityUsernameChanged()
{
UBSettings* settings = UBSettings::settings();
settings->setCommunityUsername(mPreferencesUI->Username_textBox->text());
persistanceCheckboxUpdate();
}
void UBPreferencesController::onCommunityPasswordChanged()
{
UBSettings* settings = UBSettings::settings();
settings->setCommunityPassword(mPreferencesUI->Password_textEdit->text());
persistanceCheckboxUpdate();
}
void UBPreferencesController::onCommunityPersistenceChanged()
{
UBSettings::settings()->setCommunityPersistence(mPreferencesUI->PSDataPersistenceCheckBox->isChecked());
}
void UBPreferencesController::persistanceCheckboxUpdate()
{
bool checkBoxEnabled = mPreferencesUI->Username_textBox->text().length() || mPreferencesUI->Password_textEdit->text().length();
mPreferencesUI->PSDataPersistenceCheckBox->setEnabled(checkBoxEnabled);
mPreferencesUI->PSDataPersistenceCheckBox->setStyleSheet(checkBoxEnabled ? "color:black;" : "color:lightgray;");
}
......
......@@ -83,12 +83,14 @@ class UBPreferencesController : public QObject
void toolbarOrientationHorizontal(bool checked);
void onCommunityUsernameChanged();
void onCommunityPasswordChanged();
void onCommunityPersistenceChanged();
private:
static qreal sSliderRatio;
static qreal sMinPenWidth;
static qreal sMaxPenWidth;
void persistanceCheckboxUpdate();
};
......
......@@ -173,7 +173,7 @@ void UBSettings::ValidateKeyboardPaletteKeyBtnSize()
{
// if boardKeyboardPaletteKeyBtnSize is not initialized, or supportedKeyboardSizes not initialized or empty
if( !boardKeyboardPaletteKeyBtnSize ||
!supportedKeyboardSizes ||
!supportedKeyboardSizes ||
supportedKeyboardSizes->size() == 0 ) return;
// get original size value
......@@ -243,7 +243,7 @@ void UBSettings::init()
pageSize = new UBSetting(this, "Board", "DefaultPageSize", documentSizes.value(DocumentSizeRatio::Ratio4_3));
pageDpi = new UBSetting(this, "Board", "pageDpi", 0);
QStringList penLightBackgroundColors;
penLightBackgroundColors << "#000000" << "#FF0000" <<"#004080" << "#008000" << "#C87400" << "#800040" << "#008080" << "#5F2D0A";
boardPenLightBackgroundColors = new UBColorListSetting(this, "Board", "PenLightBackgroundColors", penLightBackgroundColors, 1.0);
......@@ -357,6 +357,7 @@ void UBSettings::init()
communityUser = new UBSetting(this, "Community", "Username", "");
communityPsw = new UBSetting(this, "Community", "Password", "");
communityDataPersistence = new UBSetting(this,"Community", "DataPeristence",true);
QStringList uris = UBToolsManager::manager()->allToolIDs();
......@@ -383,7 +384,7 @@ void UBSettings::init()
intranetPodcastPublishingUrl = new UBSetting(this, "IntranetPodcast", "PublishingUrl", "");
intranetPodcastAuthor = new UBSetting(this, "IntranetPodcast", "Author", "");
KeyboardLocale = new UBSetting(this, "Board", "StartupKeyboardLocale", 0);
KeyboardLocale = new UBSetting(this, "Board", "StartupKeyboardLocale", 0);
swapControlAndDisplayScreens = new UBSetting(this, "App", "SwapControlAndDisplayScreens", false);
angleTolerance = new UBSetting(this, "App", "AngleTolerance", 4);
......@@ -392,6 +393,8 @@ void UBSettings::init()
teacherGuideLessonPagesActivated = new UBSetting(this,"DockPalette","TeacherGuideActivateLessonPages",true);
libIconSize = new UBSetting(this, "Library", "LibIconSize", defaultLibraryIconSize);
cleanNonPersistentSettings();
}
......@@ -401,7 +404,7 @@ QVariant UBSettings::value ( const QString & key, const QVariant & defaultValue)
{
sAppSettings->setValue(key, defaultValue);
}
return mUserSettings->value(key, sAppSettings->value(key, defaultValue));
}
......@@ -944,7 +947,7 @@ QString UBSettings::applicationImageLibraryDirectory()
{
QString defaultRelativePath = QString("./library/pictures");
QString configPath = value("Library/ImageDirectory", QVariant(defaultRelativePath)).toString();
QString configPath = value("Library/ImageDirectory", QVariant(defaultRelativePath)).toString();
if (configPath.startsWith(".")) {
return UBPlatformUtils::applicationResourcesDirectory() + configPath.right(configPath.size() - 1);
......@@ -1180,12 +1183,17 @@ void UBSettings::setCommunityPassword(const QString &password)
communityPsw->set(QVariant(password));
}
void UBSettings::setCommunityPersistence(const bool persistence)
{
communityDataPersistence->set(QVariant(persistence));
}
int UBSettings::libraryIconSize(){
return libIconSize->get().toInt();
return libIconSize->get().toInt();
}
void UBSettings::setLibraryIconsize(const int& size){
libIconSize->set(QVariant(size));
libIconSize->set(QVariant(size));
}
bool UBSettings::checkDirectory(QString& dirPath)
......@@ -1218,3 +1226,15 @@ QString UBSettings::replaceWildcard(QString& path)
return result;
}
void UBSettings::closing()
{
cleanNonPersistentSettings();
}
void UBSettings::cleanNonPersistentSettings()
{
if(!communityDataPersistence->get().toBool()){
communityPsw->set(QVariant(""));
communityUser->set(QVariant(""));
}
}
......@@ -29,13 +29,14 @@ class UBSettings : public QObject
UBSettings(QObject *parent = 0);
virtual ~UBSettings();
void cleanNonPersistentSettings();
public:
QStringList* supportedKeyboardSizes;
void InitKeyboardPaletteKeyBtnSizes();
void ValidateKeyboardPaletteKeyBtnSize();
void closing();
int penWidthIndex();
......@@ -95,12 +96,14 @@ class UBSettings : public QObject
void setCommunityUsername(const QString& username);
QString communityPassword();
void setCommunityPassword(const QString& password);
bool getCommunityDataPersistence(){return communityDataPersistence->get().toBool();}
void setCommunityPersistence(const bool persistence);
int libraryIconSize();
void setLibraryIconsize(const int& size);
void init();
//user directories
static QString userDataDirectory();
static QString userDocumentDirectory();
......@@ -115,9 +118,9 @@ class UBSettings : public QObject
static QString userInteractiveFavoritesDirectory();
static QString userPodcastRecordingDirectory();
QString userGipLibraryDirectory();
//application directory
QString userGipLibraryDirectory();
//application directory
QString applicationShapeLibraryDirectory();
QString applicationImageLibraryDirectory();
QString applicationApplicationsLibraryDirectory();
......@@ -337,6 +340,7 @@ class UBSettings : public QObject
UBSetting* communityUser;
UBSetting* communityPsw;
UBSetting* communityDataPersistence;
UBSetting* pageSize;
UBSetting* pageDpi;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment