Eneboo - Documentación para desarrolladores
|
00001 /********************************************************************** 00002 ** Copyright (C) 2005-2007 Trolltech ASA. All rights reserved. 00003 ** 00004 ** This file is part of Qt Designer. 00005 ** 00006 ** This file may be distributed and/or modified under the terms of the 00007 ** GNU General Public License version 2 as published by the Free Software 00008 ** Foundation and appearing in the file LICENSE.GPL included in the 00009 ** packaging of this file. 00010 ** 00011 ** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition 00012 ** licenses may use this file in accordance with the Qt Commercial License 00013 ** Agreement provided with the Software. 00014 ** 00015 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 00016 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 00017 ** 00018 ** See http://www.trolltech.com/gpl/ for GPL licensing information. 00019 ** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for 00020 ** information about Qt Commercial License Agreements. 00021 ** 00022 ** Contact info@trolltech.com if any conditions of this licensing are 00023 ** not clear to you. 00024 ** 00025 **********************************************************************/ 00026 00027 #ifndef SOURCEFILE_H 00028 #define SOURCEFILE_H 00029 00030 #include <qobject.h> 00031 #include "timestamp.h" 00032 00033 struct DesignerSourceFile; 00034 class SourceEditor; 00035 class Project; 00036 00037 class SourceFile : public QObject 00038 { 00039 Q_OBJECT 00040 00041 public: 00042 SourceFile( const QString &fn, bool temp, Project *p ); 00043 ~SourceFile(); 00044 00045 void setText( const QString &s ); 00046 void setModified( bool m ); 00047 00048 bool save( bool ignoreModified = FALSE ); 00049 bool saveAs( bool ignoreModified = FALSE ); 00050 bool load(); 00051 bool close(); 00052 bool closeEvent(); 00053 Project *project() const; 00054 00055 QString text() const; 00056 QString fileName() const { return filename; } 00057 bool isModified() const; 00058 00059 void checkTimeStamp(); 00060 00061 DesignerSourceFile *iFace(); 00062 00063 void setEditor( SourceEditor *e ); 00064 SourceEditor *editor() const { return ed; } 00065 00066 static QString createUnnamedFileName( const QString &extension ); 00067 00068 bool isAccepted() const { return accepted; } 00069 00070 private: 00071 bool checkFileName( bool allowBreak ); 00072 00073 private: 00074 QString filename; 00075 QString txt; 00076 DesignerSourceFile *iface; 00077 SourceEditor *ed; 00078 bool fileNameTemp; 00079 TimeStamp timeStamp; 00080 Project *pro; 00081 bool pkg; 00082 bool accepted; 00083 00084 }; 00085 00086 #endif