/**************************************************************/ /** C++ code Copyright (C) Nick V. King **/ /**************************************************************/ #ifndef SMMACMODEH #define SMMACMODEH #include #include #include #include #include #include #include #include class mac_mode; extern mac_mode* mmode; class mac_mode : public operating_mode { macscreen* Offscreen; void verbose(DREstring); public: mac_mode(const double); ~mac_mode(void); void _pol_contrast(void){} void _pol_threshold(void){} void error(DREstring); void display_status(DREstring&); void clear_status(void); void busy(DREstring&); void unbusy(void); void display_progress(const int); void undisplay_progress(void); void execute(void); void DisplayKernelMessage(Str255, RGBColor); void InitializeLocals(void); void UpdateLocals(Boolean); void SetGlobals(void); void SetUpFieldRecord(toolbarFieldRec*); void DrawToolbar(void); void DrawStatusbar(void); void ResizeOffscreen(void); void NewEditField(short, Point, Boolean); void DisposeEditField(Boolean); void UpdateEditField(void); void ActivateEditField(Boolean); void HandleEditFieldIdle(void); void HandleEditFieldEditCommands(short); void HandleEditFieldMouseDown(short, Point, short); void HandleEditFieldTab(short); void HandleEditFieldKeyDown(short, short); void HandleEditFieldButtons(toolbarFieldRec*, Point, Rect, Rect); void HandleEditFieldPopup(toolbarFieldRec*, Point); void HandleButtonMouseDown(toolbarFieldRec*, Point); void DrawRangeField(Rect, int, int); void CursorInIgnore(int); void HandleIgnore(Rect, int, DialogPtr); void HandleToolbarMouseDown(Point, short); void HandleStatusbarMouseDown(Point, short); void UpdateWindow(WindowPtr); void ActivateWindow(WindowPtr, Boolean); void UpdateScrollBars(void); void SetValues(DialogPtr, Boolean); void GetValues(DialogPtr); Boolean HandleDialog(short); void AppleMenu(short); OSErr AppleAbout(Boolean); void FileMenu(short); OSErr FileOpenAE(AppleEvent*, Boolean); void FileOpen(void); void FileOpenFSSpec(FSSpec*); void FileClose(Boolean); void FileSaveFileType(void); void FileBin(void); void FileExport(void); void FilePageSetup(void); void FilePrint(Boolean); void FilePrintAllOrRemainder(Boolean, Boolean); OSErr FileQuit(Boolean); void EditMenu(short); Boolean EditCopy(void); void EditClear(void); void PlotMenu(short); void PlotMenuItems(short); void SettingsMenu(short); void OptionsMenu(short); void FileTypeSubmenu(short, Boolean); void PlotModeSubmenu(short, Boolean); void SpacecraftModeSubmenu(short, Boolean); void PRAModeSubmenu(short, Boolean); void BrightnessLevelSubmenu(short); void SaturationLevelSubmenu(short); void PlotSizeSubmenu(short); void FontSubmenu(short); void DataColorSubmenu(short); void BackgroundColorSubmenu(short); void ToolbarMenu(short); void CommentSubmenu(short); void TomPlotRange(void); void UpdateMenuItems(short); void UpdateModeMenus(Boolean); void DoCommand(long, short, Boolean); void DoContent(WindowPtr, Point, short); void DoGrowWindow(WindowPtr, Point); void DoZoomWindow(WindowPtr, Point, short, short); void DoCloseWindow(WindowPtr, Point); void HandleNullEvent(EventRecord*); void HandleMouseDownEvent(EventRecord*); void HandleKeyDownEvent(EventRecord*); void HandleActivateEvent(EventRecord*); void HandleUpdateEvent(EventRecord*); void HandleDiskEvent(EventRecord*); void HandleOSEvent(EventRecord*); void HandleEvent(void); void AdjustCursor(Boolean); Boolean Personalize(void); Boolean SetUpInterface(void); }; pascal void* FileOpenThread(void*); pascal void* FileReplotToPrinterThread(void*); pascal void* PlotMenuItemsThread(void*); pascal OSErr OpenApplicationHandler(AppleEvent*, AppleEvent*, long); pascal OSErr OpenDocumentsHandler(AppleEvent*, AppleEvent*, long); pascal OSErr PrintDocumentsHandler(AppleEvent*, AppleEvent*, long); pascal OSErr QuitApplicationHandler(AppleEvent*, AppleEvent*, long); pascal void TrackScrollbar(ControlHandle, short); pascal short CustomDialogHook(short, DialogPtr, Ptr); pascal Boolean CustomFileFilter(ParmBlkPtr, void*); pascal Boolean NormalFilter(DialogPtr, EventRecord*, short*); pascal Boolean PersonalizeFilter(DialogPtr, EventRecord*, short*); pascal Boolean IgnoredDataFilter(DialogPtr, EventRecord*, short*); pascal void IgnoredDataIdleProcedure(DialogPtr, Point); pascal void HiliteButton(DialogPtr, short); pascal void CheckBox(DialogPtr, short, Boolean, Boolean); pascal void OutlineButton(DialogPtr, short); pascal void DottedLine(DialogPtr, short); pascal void IgnoredDataUserItem(DialogPtr, short); #endif /***********/ /** End **/ /***********/