kspread Library API Documentation

damages.h

00001 /* This file is part of the KDE project
00002    Copyright 2004 Ariya Hidayat <ariya@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.
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 KSPREAD_DAMAGES
00021 #define KSPREAD_DAMAGES
00022 
00023 #include <qvaluelist.h>
00024 
00025 class KSpreadCell;
00026 class KSpreadSheet;
00027 
00028 namespace KSpread
00029 {
00030 
00031 class Damage
00032 {
00033   public:
00034   
00035     typedef enum
00036     {
00037       Nothing = 0,
00038       Document,
00039       Workbook,
00040       Sheet,
00041       Range,
00042       Cell
00043     } Type;
00044 
00045     virtual Type type() const { return Nothing; }
00046 };
00047 
00048 class CellDamage : public Damage
00049 {
00050   public:
00051   
00052     CellDamage( KSpreadCell* cell );
00053     
00054     virtual ~CellDamage();
00055     
00056     virtual Type type() const { return Cell; }
00057     
00058     KSpreadCell* cell();
00059     
00060   private:
00061     class Private;
00062     Private *d;
00063 };
00064 
00065 class SheetDamage : public Damage
00066 {
00067   public:
00068   
00069     enum
00070     {
00071       None = 0,
00072       ContentChanged,
00073       PropertiesChanged,
00074       Hidden,
00075       Shown
00076     };
00077     
00078     SheetDamage( KSpreadSheet* sheet, int action );
00079     
00080     virtual ~SheetDamage();
00081   
00082     virtual Type type() const { return Sheet; }
00083     
00084     KSpreadSheet* sheet() const;
00085     
00086     int action() const;
00087     
00088   private:
00089     class Private;
00090     Private *d;
00091 };
00092 
00093 
00094 } // namespace KSpread
00095 
00096 #endif // KSPREAD_DAMAGES
KDE Logo
This file is part of the documentation for kspread Library Version 1.4.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Mon Feb 13 09:42:44 2006 by doxygen 1.4.2 written by Dimitri van Heesch, © 1997-2003