From 460c52653ab0dcca6f19a4f492ed2c5e4e963ab0 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/kdepim@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- kode/file.h | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 kode/file.h (limited to 'kode/file.h') diff --git a/kode/file.h b/kode/file.h new file mode 100644 index 000000000..e4efdca6c --- /dev/null +++ b/kode/file.h @@ -0,0 +1,99 @@ +/* + This file is part of kdepim. + + Copyright (c) 2004 Cornelius Schumacher + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library 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 + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ +#ifndef KODE_FILE_H +#define KODE_FILE_H + +#include "license.h" +#include "code.h" +#include "class.h" +#include "membervariable.h" + +#include +#include +#include + +namespace KODE { + +class KDE_EXPORT File +{ + public: + File(); + + void setFilename( const QString & ); + QString filename() const; + + void setNameSpace( const QString & ); + QString nameSpace() const { return mNameSpace; } + + void setProject( const QString &project ); + QString project() const { return mProject; } + + void addCopyright( int year, const QString &name, const QString &email ); + QStringList copyrightStrings() const { return mCopyrightStrings; } + + void setLicense( const License & ); + License license() const { return mLicense; } + + void addInclude( const QString &include ); + QStringList includes() const { return mIncludes; } + + void insertClass( const Class & ); + Class::List classes() const { return mClasses; } + + bool hasClass( const QString &className ); + + Class findClass( const QString &name ); + + void clearClasses(); + void clearFileFunctions(); + void clearFileVariables(); + + void clearCode(); + + void addFileVariable( const Variable & ); + Variable::List fileVariables() const { return mFileVariables; } + + void addFileFunction( const Function & ); + Function::List fileFunctions() const { return mFileFunctions; } + + void addExternCDeclaration( const QString & ); + QStringList externCDeclarations() const { return mExternCDeclarations; } + + void addFileCode( const Code & ); + Code fileCode() const { return mFileCode; } + + private: + QString mFilename; + QString mNameSpace; + QString mProject; + QStringList mCopyrightStrings; + License mLicense; + QStringList mIncludes; + Class::List mClasses; + Variable::List mFileVariables; + Function::List mFileFunctions; + QStringList mExternCDeclarations; + Code mFileCode; +}; + +} + +#endif -- cgit v1.2.1