palm-os-sdk/sdk-2/include/Core/UI/UICommon.h
2016-08-25 07:53:48 -03:00

298 lines
8.6 KiB
C

#ifndef __UICOMMON_H__
#define __UICOMMON_H__
enum justifications { leftAlign, centerAlign, rightAlign };
typedef enum justifications JustificationType;
//------------------------------------------------------------
// System functions
//------------------------------------------------------------
#define min(a, b) (((a) < (b)) ? (a) : (b))
#define max(a, b) (((a) > (b)) ? (a) : (b))
//------------------------------------------------------------
// Temporary resource routines
//------------------------------------------------------------
#define strRsc 'tSTR'
#define ainRsc 'tAIN'
#define iconType 'tAIB'
#define bitmapRsc 'Tbmp'
#define alertRscType 'Talt'
#define kbdRscType 'tkbd'
#define MenuRscType 'MBAR'
#define fontRscType 'NFNT'
#define verRsc 'tver'
#define appInfoStringsRsc 'tAIS'
// Application version string ID
#define appVersionID 1
#define ainID 1000
// System Default app icon (for apps missing a tAIB)
#define defaultAppIconBitmap 10000
// System version string ID - this is hidden in
// the SystemVersion.rsrc resource, because the 'system' resources
// don't have ResEdit formats.
#define systemVersionID 10000
// System bitmaps
#define palmLogoBitmap 10000
#define keyboardBackspaceBitmap 10001
#define keyboardTabBitmap 10002
#define keyboardReturnBitmap 10003
#define InformationAlertBitmap 10004
#define ConfirmationAlertBitmap 10005
#define WarningAlertBitmap 10006
#define ErrorAlertBitmap 10007
#define keyboardShiftBitmap 10008
#define keyboardCapBitmap 10009
// System string resources
#define daysOfWeekStrID 10000
#define dayFullNamesStrID 10001
#define monthNamesStrID 10002
#define monthFullNamesStrID 10003
#define categoryAllStrID 10004
#define categoryEditStrID 10005
#define menuCommandStrID 10006
#define launcherBatteryStrID 10007
#define systemNameStrID 10008
#define phoneLookupTitleStrID 10009
#define phoneLookupAddStrID 10010
#define phoneLookupFormatStrID 10011
// System Alerts
#define SelectACategoryAlert 10000
// This alert broke 1.0 applications and is now disabled until later.
// It is redefined below (10015).
//#define RemoveCategoryAlert 10001
//#define RemoveCategoryRecordsButton 0
//#define RemoveCategoryNameButton 1
//#define RemoveCategoryCancelButton 2
#define LowBatteryAlert 10002
#define VeryLowBatteryAlert 10003
#define UndoAlert 10004
#define UndoCancelButton 1
#define MergeCategoryAlert 10005
#define MergeCategoryYes 0
#define MergeCategoryNo 1
#define privateRecordInfoAlert 10006
#define ClipboardLimitAlert 10007
#define CategoryExistsAlert 10012
#define DeviceFullAlert 10013
#define categoryAllUsedAlert 10014
#define RemoveCategoryAlert 10015 // See alert 10001
#define RemoveCategoryYes 0
#define RemoveCategoryNo 1
#define DemoUnitAlert 10016
// System Menu Bar and Menus
#define sysEditMenuID 10000
#define sysEditMenuUndoCmd 10000
#define sysEditMenuCutCmd 10001
#define sysEditMenuCopyCmd 10002
#define sysEditMenuPasteCmd 10003
#define sysEditMenuSelectAllCmd 10004
#define sysEditMenuSeparator 10005
#define sysEditMenuKeyboardCmd 10006
#define sysEditMenuGraffitiCmd 10007
// Keyboard Menu Bar and Menus
#define sysKeyboardMenuID 10100
#define sysKeyboardEditUndoCmd 100
#define sysKeyboardEditCutCmd 101
#define sysKeyboardEditCopyCmd 102
#define sysKeyboardEditPasteCmd 103
#define sysKeyboardEditSelectAllCmd 104
// Note View Menu Bar and Menus
#define noteMenuID 10200
#define noteUndoCmd 10000
#define noteCutCmd 10001
#define noteCopyCmd 10002
#define notePasteCmd 10003
#define noteSelectAllCmd 10004
#define noteSeparator 10005
#define noteKeyboardCmd 10006
#define noteGraffitiCmd 10007
#define noteTopOfPageCmd 10200
#define noteBottomOfPageCmd 10201
#define notePhoneLookupCmd 10202
// System Keyboard Dialog
#define SystemKeyboardID 10000
// Categories Edit Dialog
#define CategoriesEditForm 10000
#define CategoriesEditList 10002
#define CategoriesEditOKButton 10003
#define CategoriesEditNewButton 10004
#define CategoriesEditRenameButton 10005
#define CategoriesEditDeleteButton 10006
// Date Selector Dialog
#define DateSelectorForm 10100
#define DateSelectorYearLabel 10102
#define DateSelectorPriorYearButton 10103
#define DateSelectorNextYearButton 10104
#define DateSelectorTodayButton 10118
#define DateSelectorCancelButton 10119
#define DateSelectorDayGadget 10120
#define DateSelectorThisWeekButton 10121
#define DateSelectorThisMonthButton 10122
// Time Selector Dialog
#define TimeSelectorForm 10200
#define TimeSelectorStartTimeButton 10204
#define TimeSelectorEndTimeButton 10205
#define TimeSelectorHourList 10206
#define TimeSelectorMinuteList 10207
#define TimeSelectorOKButton 10208
#define TimeSelectorCancelButton 10209
#define TimeSelectorNoTimeButton 10210
// Onscreen Keyboard
#define KeyboardForm 10300
#define KeyboardGadget 10310
// Help Dialog
#define HelpForm 10400
#define HelpField 10402
#define HelpDoneButton 10403
#define HelpUpButton 10404
#define HelpDownButton 10405
// Find Dialog
#define FindDialog 10500
#define FindStrField 10503
#define FindOKButton 10504
// Find Results Dialog
#define FindResultsDialog 10600
#define FindResultsMsgLabel 10602
#define FindResultsTable 10603
#define FindResultsGoToButton 10604
#define FindResultsCancelButton 10605
#define FindResultsMoreButton 10606
#define FindResultsStopButton 10607
#define FindResultsSearchingStr 10607
#define FindResultsMatchesStr 10608
#define FindResultsNoMatchesStr 10609
#define FindResultsContinueStr 10610
// Note View (used by Datebook, To Do, and Address apps)
#define NoteView 10900
#define NoteField 10901
#define NoteDoneButton 10902
#define NoteSmallFontButton 10903
#define NoteLargeFontButton 10904
#define NoteDeleteButton 10905
#define NoteUpButton 10906
#define NoteDownButton 10907
#define NoteScrollBar 10908
#define NoteFontGroup 1
// About Box - used by Datebook, Memo, Address, To Do, & others
#define aboutDialog 11000
#define aboutNameLabel 11001
#define aboutVersionLabel 11002
#define aboutErrorStr 11003
// Category New Name Dialog (used for new and renamed categories)
#define categoryNewNameDialog 11100
#define categoryNewNameField 11103
#define categoryNewNameOKButton 11104
// Graffiti Reference Dialog
#define graffitiReferenceDialog 11200
#define graffitiReferenceDoneButton 11202
#define graffitiReferenceUpButton 11203
#define graffitiReferenceDownButton 11204
#define graffitiReferenceFirstBitmap 11205
// Net Library Serial Net Interface dialogs. These don't really have to
// have ID's in the system range except in the Emulator. When running on
// the device, the interface's resource file is opened up just to get these
// resources so that the ID's don't have to be unique with the application's
// resource IDs.
#define netSerStringList 11300 // String list resource ID
// Net Serial Progress Dialog
#define netSerProgressFrm 11300 // progress form ID
#define netSerProgressLabelStage 11302 // Label ID
#define netSerProgressBtnCancel 11303 // Cancel button ID
#define netSerPictPhone 11300 // resource ID of phone picture
#define netSerPictHandshake 11301 // resource ID of handshake picture
#define netSerPictBook 11302 // resource ID of book picture
#define netSerPictError 11303 // resource ID of error picture
// Net Serial Prompt Dialog
#define netSerPromptFrm 11400 // Prompt for string form ID
#define netSerPromptAsk 11402 // Label - ask string
#define netSerPromptField 11403 // answer field
#define netSerPromptBtnOK 11404 // OK button ID
#define netSerPromptBtnCancel 11405 // Cancel button ID
// Launcher Dialog
#define launcherDialog 11500
#define launcherGadget 11501
//------------------------------------------------------------
// Temporary resource routines
//------------------------------------------------------------
VoidPtr ResLoadForm (Word rscID)
SYS_TRAP(sysTrapResLoadForm);
VoidPtr ResLoadMenu (Word rscID)
SYS_TRAP(sysTrapResLoadMenu);
CharPtr ResLoadString (Word rscID);
//------------------------------------------------------------
// Temporary debugging routines
//------------------------------------------------------------
extern Boolean HeapDump (void);
#endif //__UICOMMON_H__