variableinterface.h
00001 /* 00002 This library is free software; you can redistribute it and/or 00003 modify it under the terms of the GNU Library General Public 00004 License version 2 as published by the Free Software Foundation. 00005 00006 This library is distributed in the hope that it will be useful, 00007 but WITHOUT ANY WARRANTY; without even the implied warranty of 00008 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00009 Library General Public License for more details. 00010 00011 You should have received a copy of the GNU Library General Public License 00012 along with this library; see the file COPYING.LIB. If not, write to 00013 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 00014 Boston, MA 02110-1301, USA. 00015 00016 --- 00017 Copyright (C) 2004, Anders Lund <anders@alweb.dk> 00018 */ 00019 #ifndef _KTEXTEDITOR_VARIABLE_INTERFACE_H_ 00020 #define _KTEXTEDITOR_VARIABLE_INTERFACE_H_ 00021 00022 #include <kdelibs_export.h> 00023 00024 class QString; 00025 00026 namespace KTextEditor { 00027 00041 class KTEXTEDITOR_EXPORT VariableInterface 00042 { 00043 public: 00044 VariableInterface(); 00045 virtual ~VariableInterface(); 00046 00047 unsigned int variableInterfaceNumber(); 00048 00053 virtual QString variable( const QString &name ) const = 0; 00054 00055 // 00056 // signals!! 00057 // 00058 public: 00062 virtual void variableChanged( const QString &variable, const QString &value ) = 0; 00063 00064 private: 00065 static unsigned int globalVariableInterfaceNumber; 00066 unsigned int myVariableInterfaceNumber; 00067 }; 00068 00069 00070 KTEXTEDITOR_EXPORT VariableInterface *variableInterface( class Document * ); 00071 } // namespace KTextEditor 00072 #endif //_KTEXTEDITOR_VARIABLE_INTERFACE_H_