appletundo.h

Go to the documentation of this file.
00001 
00002 /*  $Id: appletundo.h 355 2005-01-11 22:48:55Z andreradke $    */
00003 
00004 /* copyright 1991-96 UserLand Software, Inc. All Rights Reserved.*/
00005 
00006 
00007 #define undoinclude
00008 
00009 
00010 #ifndef appletdefsinclude
00011 
00012     #include "appletdefs.h"
00013     
00014 #endif
00015 
00016 
00017 
00018 #define undolistnumber 134 /*operations that can be undone, in string format*/
00019 #define cantundoitem 1
00020 #define undostring 2
00021 #define redostring 3
00022 
00023 
00024 
00025 typedef struct tystack {
00026 
00027     short topstack;
00028 
00029     short basesize;
00030 
00031     short elemsize;
00032 
00033     byte stack [];
00034     } tystack, *ptrstack, **hdlstack;
00035 
00036 
00037 typedef boolean (*undocallback) (Handle, boolean);
00038 
00039 
00040 typedef struct tyundorecord {
00041     
00042     undocallback undoroutine;
00043     
00044     Handle hundodata;
00045     
00046     boolean flactionstep; /*is this step an action record?*/
00047     } tyundorecord;
00048 
00049 
00050 typedef struct tyactionrecord {
00051     
00052     long ixaction;
00053     
00054     long globaldata;
00055     
00056     boolean flaction; /*always true for actionrecords*/
00057     } tyactionrecord;
00058 
00059 
00060 typedef struct tyundostack {
00061 
00062     short topundo;
00063     
00064     short basesize;
00065     
00066     short elemsize;
00067     
00068     short ixaction;
00069     
00070     long globaldata;
00071     
00072     tyundorecord undostep [];
00073     } tyundostack, *ptrundostack, **hdlundostack;
00074 
00075 
00076 extern hdlundostack undostack;
00077 
00078 extern hdlundostack redostack;
00079 
00080 
00081 extern boolean pushundostep (undocallback, Handle);
00082 
00083 extern boolean pushundoaction (short);
00084 
00085 extern boolean popundoaction (void);
00086 
00087 extern boolean undolastaction (boolean);
00088 
00089 extern boolean redolastaction (boolean);
00090 
00091 extern boolean getundoaction (short *);
00092 
00093 extern boolean getredoaction (short *);
00094 
00095 extern boolean getundomenuitem (bigstring, boolean *);
00096 
00097 extern void killundo (void);
00098 
00099 extern boolean newundostack (hdlundostack *);
00100 
00101 extern boolean disposeundostack (hdlundostack);
00102 
00103 
00104 

Generated on Wed May 31 18:19:44 2006 for frontierkernel 10.1.10a by  doxygen 1.4.6