1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
{$MACRO ON}
(******************************************************************************
*
* Copyright (c) 1995-2000 Palm, Inc. or its subsidiaries.
* All rights reserved.
*
* File: Category.h
*
* Release: Palm OS SDK 4.0 (63220)
*
* Description:
* This file defines category structures and routines.
*
* History:
* 03/07/95 art Created by Art Lamb
* 07/14/99 bob Fix up const junk
* 08/12/99 gap Add new constants categoryHideEditCategory & categoryDefaultEditCategoryString.
* 11/13/00 kwk The listP param for CategoryCreateList[V10] is not const.
*
*****************************************************************************)
unit category;
interface
uses palmos, coretraps, datamgr, control, list, form;
// Note: although these constants are in the range of system resource IDs, the are actually
// constants passed to CategoryCreateList, CategorySelect, and CategoryFreeList which will
// produce the desired action. The reason the constants are in this range is to keep them
// out of the numeric range that developers can use for resource IDs in the attempt to avoid
// conflicts.
const
categoryHideEditCategory = 10000;
categoryDefaultEditCategoryString = 10001;
type
AppInfoType = record
renamedCategories: UInt16;
categoryLabels: array [0..dmRecNumCategories-1, 0..dmCategoryLength-1] of Char;
categoryUniqIDs: array [0..dmRecNumCategories-1] of UInt8;
lastUniqID: UInt8; // Uniq IDs generated by the device are between
// 0 - 127. Those from the PC are 128 - 255.
padding: UInt8;
end;
AppInfoTag = AppInfoType;
AppInfoPtr = ^AppInfoType;
procedure CategoryCreateListV10(db: DmOpenRef; lst: ListPtr; currentCategory: UInt16; showAll: Boolean); syscall sysTrapCategoryCreateListV10;
procedure CategoryCreateList(db: DmOpenRef; listP: ListPtr;
currentCategory: UInt16; showAll, showUneditables: Boolean;
numUneditableCategories: UInt8; editingStrID: UInt32; resizeList: Boolean); syscall sysTrapCategoryCreateList;
procedure CategoryFreeListV10(db: DmOpenRef; lst: ListPtr); syscall sysTrapCategoryFreeListV10;
procedure CategoryFreeList(db: DmOpenRef; listP: ListPtr; showAll: Boolean; editingStrID: UInt32); syscall sysTrapCategoryFreeList;
function CategoryFind(db: DmOpenRef; const name: PChar): UInt16; syscall sysTrapCategoryFind;
procedure CategoryGetName(db: DmOpenRef; index: UInt16; name: PChar); syscall sysTrapCategoryGetName;
function CategoryEditV10(db: DmOpenRef; var category: UInt16): Boolean; syscall sysTrapCategoryEditV10;
function CategoryEditV20(db: DmOpenRef; var category: UInt16; titleStrID: UInt32): Boolean; syscall sysTrapCategoryEditV20;
function CategoryEdit(db: DmOpenRef; var category: UInt16; titleStrID: UInt32; numUneditableCategories: UInt8): Boolean; syscall sysTrapCategoryEdit;
function CategorySelectV10(db: DmOpenRef; const frm: FormPtr; ctlID, lstID: UInt16; title: Boolean;
var categoryP: UInt16; categoryName: PChar): Boolean; syscall sysTrapCategorySelectV10;
function CategorySelect(db: DmOpenRef; const frm: FormPtr; ctlID, lstID: UInt16; title: Boolean; var categoryP: UInt16;
categoryName: PChar; numUneditableCategories: UInt8; editingStrID: UInt32): Boolean; syscall sysTrapCategorySelect;
function CategoryGetNext(db: DmOpenRef; index: UInt16): UInt16; syscall sysTrapCategoryGetNext;
procedure CategorySetTriggerLabel(ctl: ControlPtr; name: PChar); syscall sysTrapCategorySetTriggerLabel;
procedure CategoryTruncateName(name: PChar; maxWidth: UInt16); syscall sysTrapCategoryTruncateName;
procedure CategoryInitialize(appInfoP: AppInfoPtr; localizedAppInfoStrID: UInt16); syscall sysTrapCategoryInitialize;
procedure CategorySetName(db: DmOpenRef; index: UInt16; const nameP: PChar); syscall sysTrapCategorySetName;
implementation
end.
|