1 line
2.3 KiB
C
1 line
2.3 KiB
C
/*********************************************************/
|
|
/* This source code copyright (c) 1991-2001, Aaron Giles */
|
|
/* See the Read Me file for licensing information. */
|
|
/* Contact email: mac@aarongiles.com */
|
|
/*********************************************************/
|
|
|
|
#ifndef __SLIDESHOW__
|
|
#define __SLIDESHOW__
|
|
|
|
/*
|
|
* sSlideItem = linked list item containing information pertaining to the current
|
|
* slide image [SlideItem, *SlidePtr, **SlideHandle]
|
|
*/
|
|
|
|
typedef struct SlideItem
|
|
{
|
|
struct SlideItem **next; // pointer to next slide item
|
|
Boolean mem; // flag: true if the given image is in memory
|
|
FSSpec spec; // the filespec for the image
|
|
} SlideItem, *SlidePtr, **SlideHandle;
|
|
|
|
typedef struct LoopCheck {
|
|
struct LoopCheck *prev;
|
|
short vRefNum;
|
|
long dirID;
|
|
} LoopCheck, *LoopCheckPtr;
|
|
|
|
#if defined(powerc) || defined(__powerc)
|
|
#pragma options align=mac68k
|
|
#endif
|
|
typedef struct SlideOptions
|
|
{
|
|
Boolean userControl; // user-controlled?
|
|
long delay; // delay time, in seconds
|
|
Boolean random; // show slide in random order?
|
|
Boolean repeat; // repeat indefinitely?
|
|
Boolean noErrors; // stop when we get an error?
|
|
Boolean hideWindoids; // hide the windoids?
|
|
Boolean hideControls; // hide the controls?
|
|
Boolean autoComments; // automatically show comments?
|
|
Boolean fromMemory; // run from memory or disk?
|
|
Boolean recursive; // do a recursive directory scan?
|
|
Boolean allFiles; // try to import files?
|
|
Boolean fileNames; // display filenames?
|
|
Boolean offscreen; // render offscreen first?
|
|
} SlideOptions, *SlideOptionsPtr, **SlideOptionsHandle;
|
|
#if defined(powerc) || defined(__powerc)
|
|
#pragma options align=reset
|
|
#endif
|
|
|
|
enum {
|
|
kStopped = 0,
|
|
kRunning = 1,
|
|
kPaused = 2
|
|
};
|
|
|
|
extern WindowPtr GetSlideBackWindow(void);
|
|
extern void CloseSlideBackWindow(void);
|
|
extern void DrawSlideBackWindow(void);
|
|
extern void ResetSlideTimer(void);
|
|
extern void HandleSlideNullEvent(void);
|
|
extern void PointToPreviousSlide(void);
|
|
extern void InitSlideShow(void);
|
|
extern void ReinitSlideShow(SlideOptionsPtr oldOptions);
|
|
extern OSErr AddSlideDir(FSSpec *spec, Boolean recursive, ICMProgressProcRecordPtr theProg,
|
|
LoopCheckPtr theLoop);
|
|
extern void CleanUpSlideShow(void);
|
|
extern Boolean LoadSlide(Boolean *advance);
|
|
extern Boolean EndSlideShow(void);
|
|
extern Boolean NextSlide(Boolean *advance);
|
|
|
|
#endif
|