Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>pull/3/head
parent
d879569fce
commit
e7b18a1f57
@ -0,0 +1,118 @@
|
||||
/***************************************************************************
|
||||
* Copyright (C) 2006-2012 by Thomas Schweitzer *
|
||||
* thomas-schweitzer(at)arcor.de *
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or modify *
|
||||
* it under the terms of the GNU General Public License version 2.0 as *
|
||||
* published by the Free Software Foundation. *
|
||||
* *
|
||||
* This program is distributed in the hope that it will be useful, *
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||
* GNU General Public License for more details. *
|
||||
* *
|
||||
* You should have received a copy of the GNU General Public License *
|
||||
* along with this program in the file LICENSE.GPL; if not, write to the *
|
||||
* Free Software Foundation, Inc., *
|
||||
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
||||
***************************************************************************/
|
||||
|
||||
#ifndef UIGUISETTINGS_H
|
||||
#define UIGUISETTINGS_H
|
||||
|
||||
#include <tqmap.h>
|
||||
#include <tqobject.h>
|
||||
#include <tqstringlist.h>
|
||||
#include <tqvariant.h>
|
||||
|
||||
class TQSettings;
|
||||
|
||||
|
||||
class UiGuiSettings : public TQObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
private:
|
||||
UiGuiSettings();
|
||||
|
||||
static UiGuiSettings *m_instance;
|
||||
|
||||
public:
|
||||
static UiGuiSettings* getInstance();
|
||||
static void deleteInstance();
|
||||
|
||||
~UiGuiSettings();
|
||||
|
||||
// [--] bool registerObjectProperty(TQObject *obj, const TQString &propertyName,
|
||||
// [--] const TQString &settingName);
|
||||
// [--] bool setObjectPropertyToSettingValue(TQObject *obj, const TQString &propertyName,
|
||||
// [--] const TQString &settingName);
|
||||
// [--] bool setObjectPropertyToSettingValueRecursive(TQObject *obj);
|
||||
// [--] bool setSettingToObjectPropertyValue(TQObject *obj, const TQString &propertyName,
|
||||
// [--] const TQString &settingName);
|
||||
// [--] bool setSettingToObjectPropertyValueRecursive(TQObject *obj);
|
||||
// [--] bool registerObjectSlot(TQObject *obj, const TQString &slotName,
|
||||
// [--] const TQString &settingName);
|
||||
void loadSettings();
|
||||
void saveSettings();
|
||||
bool setValueByName(const TQString &settingName, TQVariant value);
|
||||
TQVariant getValueByName(const TQString &settingName) const;
|
||||
TQStringList& getAvailableTranslations();
|
||||
|
||||
public slots:
|
||||
// [--] void unregisterObjectProperty(TQObject *obj);
|
||||
// [--] void unregisterObjectSlot(TQObject *obj, const TQString &slotName = TQString::null,
|
||||
// [--] const TQString &settingName = TQString::null);
|
||||
// [--]
|
||||
// [--] protected:
|
||||
// [--]//---- bool invokeMethodWithValue(TQObject *obj, TQMetaMethod mMethod, TQVariant value);
|
||||
// [--]
|
||||
// [--] bool checkCustomPropertiesAndCallFunction(TQObject * obj,
|
||||
// [--] bool (UiGuiSettings::*callBackFunc)(TQObject *obj, const TQString &propertyName,
|
||||
// [--] const TQString &settingName));
|
||||
// [--]
|
||||
// [--] private slots:
|
||||
// [--] void handleObjectPropertyChange();
|
||||
// [++] void handleValueChangeFromExtern(int value);
|
||||
// [++] void handleValueChangeFromExtern(bool value);
|
||||
// [++] void handleValueChangeFromExtern(TQDate value);
|
||||
// [++] void handleValueChangeFromExtern(TQByteArray value);
|
||||
|
||||
// Each possible setting needs an own signal.
|
||||
|
||||
signals:
|
||||
// [++] void versionInSettingsFile(TQString value);
|
||||
// [++] void windowIsMaximized(bool value);
|
||||
// [++] void windowPosition(TQPoint value);
|
||||
// [++] void windowSize(TQSize value);
|
||||
// [++] void fileEncoding(TQString value);
|
||||
// [++] void recentlyOpenedListSize(int value);
|
||||
// [++] void loadLastOpenedFileOnStartup(bool value);
|
||||
// [++] void lastOpenedFiles(TQString value);
|
||||
// [++] void selectedIndenter(int value);
|
||||
// [++] void syntaxHighlightningEnabled(bool value);
|
||||
// [++] void whiteSpaceIsVisible(bool value);
|
||||
// [++] void indenterParameterTooltipsEnabled(bool value);
|
||||
// [++] void tabWidth(int value);
|
||||
// [++] void language(int value);
|
||||
// [++] void lastUpdateCheck(TQDate value);
|
||||
// [++] void mainWindowState(TQByteArray value);
|
||||
|
||||
private:
|
||||
void emitSignalForSetting(TQString settingName);
|
||||
void readAvailableTranslations();
|
||||
|
||||
// Stores the mnemonics of the available translations.
|
||||
TQStringList m_availableTranslations;
|
||||
|
||||
// The settings file.
|
||||
TQSettings *m_qsettings;
|
||||
|
||||
// This map holds all possible settings defined by their name as TQString.
|
||||
TQMap<TQString, TQVariant> m_settings;
|
||||
|
||||
// The path where the indenters are located
|
||||
TQString m_indenterDirectoryStr;
|
||||
};
|
||||
|
||||
#endif // UIGUISETTINGS_H
|
@ -1,94 +0,0 @@
|
||||
/***************************************************************************
|
||||
* Copyright (C) 2006-2012 by Thomas Schweitzer *
|
||||
* thomas-schweitzer(at)arcor.de *
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or modify *
|
||||
* it under the terms of the GNU General Public License version 2.0 as *
|
||||
* published by the Free Software Foundation. *
|
||||
* *
|
||||
* This program is distributed in the hope that it will be useful, *
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||
* GNU General Public License for more details. *
|
||||
* *
|
||||
* You should have received a copy of the GNU General Public License *
|
||||
* along with this program in the file LICENSE.GPL; if not, write to the *
|
||||
* Free Software Foundation, Inc., *
|
||||
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
||||
***************************************************************************/
|
||||
|
||||
#ifndef UIGUISETTINGS_H
|
||||
#define UIGUISETTINGS_H
|
||||
|
||||
#include <tqobject.h>
|
||||
#include <tqstringlist.h>
|
||||
/////#include <tqmultimap.h>
|
||||
|
||||
class TQSettings;
|
||||
|
||||
|
||||
class UiGuiSettings : public TQObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
private:
|
||||
UiGuiSettings();
|
||||
|
||||
static UiGuiSettings *_instance;
|
||||
|
||||
public:
|
||||
static UiGuiSettings* getInstance();
|
||||
|
||||
~UiGuiSettings();
|
||||
|
||||
bool registerObjectProperty(TQObject *obj, const TQString &propertyName,
|
||||
const TQString &settingName);
|
||||
bool registerObjectPropertyRecursive(TQObject *obj);
|
||||
bool setObjectPropertyToSettingValue(TQObject *obj, const TQString &propertyName,
|
||||
const TQString &settingName);
|
||||
bool setObjectPropertyToSettingValueRecursive(TQObject *obj);
|
||||
bool setSettingToObjectPropertyValue(TQObject *obj, const TQString &propertyName,
|
||||
const TQString &settingName);
|
||||
bool setSettingToObjectPropertyValueRecursive(TQObject *obj);
|
||||
bool registerObjectSlot(TQObject *obj, const TQString &slotName,
|
||||
const TQString &settingName);
|
||||
TQVariant getValueByName(TQString settingName);
|
||||
TQStringList getAvailableTranslations();
|
||||
|
||||
public slots:
|
||||
void setValueByName(const TQString &settingName, const TQVariant &value);
|
||||
void unregisterObjectProperty(TQObject *obj);
|
||||
void unregisterObjectSlot(TQObject *obj, const TQString &slotName = "",
|
||||
const TQString &settingName = "");
|
||||
|
||||
protected:
|
||||
bool initSettings();
|
||||
bool invokeMethodWithValue(TQObject *obj, TQMetaMethod mMethod, TQVariant value);
|
||||
|
||||
bool checkCustomPropertiesAndCallFunction(TQObject * obj,
|
||||
bool (UiGuiSettings::*callBackFunc)(TQObject *obj, const TQString &propertyName,
|
||||
const TQString &settingName));
|
||||
|
||||
private slots:
|
||||
void handleObjectPropertyChange();
|
||||
|
||||
private:
|
||||
void readAvailableTranslations();
|
||||
|
||||
//! Stores the mnemonics of the available translations.
|
||||
TQStringList _availableTranslations;
|
||||
|
||||
//! The settings file.
|
||||
TQSettings *_qsettings;
|
||||
|
||||
//! Maps an TQObject to a string list containing the property name and the associated setting
|
||||
// name.
|
||||
TQMap<TQObject*, TQStringList> _registeredObjectProperties;
|
||||
|
||||
//! Maps TQObjects to a string list containing the method name and the associated setting name.
|
||||
TQMultiMap<TQObject*, TQStringList> _registeredObjectSlots;
|
||||
|
||||
TQString _indenterDirctoryStr;
|
||||
};
|
||||
|
||||
#endif // UIGUISETTINGS_H
|
Loading…
Reference in new issue