From bd9e6617827818fd043452c08c606f07b78014a0 Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdesdk@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- kbabel/common/kbproject.h | 109 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 109 insertions(+) create mode 100644 kbabel/common/kbproject.h (limited to 'kbabel/common/kbproject.h') diff --git a/kbabel/common/kbproject.h b/kbabel/common/kbproject.h new file mode 100644 index 00000000..1e1ebc79 --- /dev/null +++ b/kbabel/common/kbproject.h @@ -0,0 +1,109 @@ +/* **************************************************************************** + This file is part of KBabel + + Copyright (C) 2004 by Stanislav Visnovsky + Copyright (C) 2006 by Nicolas GOUTTE + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + 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; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + + In addition, as a special exception, the copyright holders give + permission to link the code of this program with any edition of + the Qt library by Trolltech AS, Norway (or with modified versions + of Qt that use the same license as Qt), and distribute linked + combinations including the two. You must obey the GNU General + Public License in all respects for all of the code used other than + Qt. If you modify this file, you may extend this exception to + your version of the file, but you are not obligated to do so. If + you do not wish to do so, delete this exception statement from + your version. + +**************************************************************************** */ +#ifndef KBPROJECT_H +#define KBPROJECT_H + +#include + +#include +#include "catalogsettings.h" +#include "projectsettings.h" + +namespace KBabel +{ + class ProjectSettingsBase; + + class KDE_EXPORT Project : public QObject, public KShared + { + Q_OBJECT + public: + typedef KSharedPtr Ptr; + + Project( const QString& file ); + virtual ~Project (); + + QString filename () const { return _filename; } + QString name () const { return _name; } + + void setName( const QString& name ) { _name = name; } + + KConfig* config (); + /** + * Returns the KSharedConfig pointer of the project data + * @since 1.11.2 (KDE 3.5.2) + */ + KSharedConfig* sharedConfig( void ); + + ProjectSettingsBase* settings (); + + bool valid () { return _valid; } + + IdentitySettings identitySettings (); + SaveSettings saveSettings (); + MiscSettings miscSettings (); + SpellcheckSettings spellcheckSettings (); + SourceContextSettings sourceContextSettings (); + CatManSettings catManSettings (); + + void setSettings(KBabel::CatManSettings newSettings); + void setSettings(KBabel::SaveSettings newSettings); + void setSettings(KBabel::IdentitySettings newSettings); + void setSettings(KBabel::MiscSettings newSettings); + void setSettings(KBabel::SpellcheckSettings newSettings); + void setSettings(KBabel::SourceContextSettings newSettings); + + signals: + void signalIdentitySettingsChanged(); + void signalSaveSettingsChanged(); + void signalMiscSettingsChanged(); + void signalSpellcheckSettingsChanged(); + void signalSourceContextSettingsChanged(); + void signalCatManSettingsChanged(); + + /** + * This is general purpose signal emitted additionally + * to the signals above. + */ + void signalSettingsChanged(); + + private: + QString _filename; + QString _name; + bool _valid; + KSharedConfig::Ptr _config; + ProjectSettingsBase* _settings; + }; + +} + +#endif // KBPROJECT_H -- cgit v1.2.1