interfaces Library API Documentation

highlightinginterface.h

00001 /* This file is part of the KDE project
00002    Copyright (C) 2001 Christoph Cullmann (cullmann@kde.org)
00003 
00004    This library is free software; you can redistribute it and/or
00005    modify it under the terms of the GNU Library General Public
00006    License as published by the Free Software Foundation; either
00007    version 2 of the License, or (at your option) any later version.
00008 
00009    This library is distributed in the hope that it will be useful,
00010    but WITHOUT ANY WARRANTY; without even the implied warranty of
00011    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012    Library General Public License for more details.
00013 
00014    You should have received a copy of the GNU Library General Public License
00015    along with this library; see the file COPYING.LIB.  If not, write to
00016    the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
00017    Boston, MA 02111-1307, USA.
00018 */
00019 
00020 #ifndef __ktexteditor_highlightinginterface_h__
00021 #define __ktexteditor_highlightinginterface_h__
00022 
00023 class QString;
00024 class QCString;
00025 
00026 namespace KTextEditor
00027 {
00028 
00029 /*
00030 *  This is an interface for the KTextEditor::Document class !!!
00031 */
00032 class HighlightingInterface
00033 {
00034   friend class PrivateHighlightingInterface;
00035 
00036   public:
00037     HighlightingInterface ();
00038     virtual ~HighlightingInterface ();
00039 
00040     unsigned int highlightingInterfaceNumber () const;
00041     
00042   protected:  
00043     void setHighlightingInterfaceDCOPSuffix (const QCString &suffix);  
00044 
00045   //
00046     // slots !!!
00047     //
00048   public:
00052     virtual unsigned int hlMode () = 0;
00053 
00057     virtual bool setHlMode (unsigned int mode) = 0;
00058   
00062   virtual unsigned int hlModeCount () = 0;
00063     
00067     virtual QString hlModeName (unsigned int mode) = 0;
00068     
00072   virtual QString hlModeSectionName (unsigned int mode) = 0;
00073 
00074     //
00075     // signals !!!
00076     //
00077     public:
00078       virtual void hlChanged () = 0;
00079 
00080   private:
00081     class PrivateHighlightingInterface *d;
00082     static unsigned int globalHighlightingInterfaceNumber;
00083     unsigned int myHighlightingInterfaceNumber;
00084 };
00085 
00086 HighlightingInterface *highlightingInterface (class Document *doc);
00087 
00088 }
00089 
00090 #endif
KDE Logo
This file is part of the documentation for kdelibs Version 3.1.4.
Documentation copyright © 1996-2002 the KDE developers.
Generated on Sun Feb 27 22:16:14 2005 by doxygen 1.3.4 written by Dimitri van Heesch, © 1997-2001