1. Trang chủ
  2. » Công Nghệ Thông Tin

o'reilly - palm programming the developer's guide

351 321 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Palm Programming: The Developer's Guide
Trường học Unknown University
Chuyên ngành Palm Programming
Thể loại Guide
Định dạng
Số trang 351
Dung lượng 3,94 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

DmReleaseRecord : Sales application example 1downloading data to Palm device : Sales application example;conduits : downloading to Palm device : Sales application example;Palm devices :

Trang 1

Palm Programming: The Developer's Guide - Index

About Application menu item;help : About Application menu item;programs (see applications) 1

About menu, handling items of;AbtShowAbout( ) 1

AboutBoxAlert (Sales example) 1

alarms;sound : alarms 1

alerts 1 2 3 4 5

alerts : customizing messages in 1

alerts : marking records as private 1

alerts : Sales application (example) 1

alerts : selecting unusable menu items 1

allocating : form handles;deallocating form handles 1

allocating : memory;memory : allocating 1

AppendDuplicateRecord( ) (CBaseTable) 1 2

AppInfo block : reading;reading : AppInfo block;databases : AppInfo block : reading 1

Palm Programming: The Developer's Guide - Index

http://www.palmos.com/dev/tech/docs/devguide/ (1 of 33) [4/21/2001 4:41:17 AM]

Trang 2

AppInfo block : structure packing;databases : AppInfo block : structure packing 1

AppInfo block : writing during download;databases : AppInfo block : writing during download 1

AppInfoType type 1

Apple Computer;Newton computer 1

application event loop;events : application event loop 1 2

application info block;databases : application info block 1 2 3

ApplicationHandleEvent( ) 1

ApplicationHandleEvent( ) : Sales application (example) 1

ApplicationHandleEvent( );forms : loading;ApplicationHandleEvent( ) : Hello World (example) 1

applications : Backup conduit for 1

applications : barcode scanning support 1 2

applications : components of;designing applications : application components;Palm OS® platform : applications (see applications) 1applications : Find request responses;Find feature : application responses 1

applications : Find request responses;Find feature : application responses;databases : searching (see Find feature) 1

applications : inactive, communicating with;inactive applications, communicating with;closed applications, communicating

with;Palm OS® platform : calling inactive applications;events : communicating with inactive applications 1 2

applications : structure of;designing applications : application structure 1 2

AppNetRefnum variable 1 2

AppNetTimeout variable 1

appStopEvent event 1 2

archived database records 1

archived database records : iterating around;deleting : database records : iterating around deleted records;records : deleting/archiving: iterating through records 1

archived database records : sorting;deleting : database records : sorting deleted records;records : deleting/archiving : sorting recordsand 1

archived database records : uploading to desktop and;deleting : database records : iterating around deleted records;records :

deleting/archiving : uploading to database and 1 2

ASDK;SDKs (Software Development Kits) : ASDK 1

AskDeleteCustomer( ) (Sales example) 1

Assembly programming 1

Assign( ) (CBaseRecord) 1 2

atoport utility 1

AUTOID keyword (PilRC) 1

automatic sleep, preventing;performance : automatic sleep, preventing;power auto-off feature;sleep, automatic 1 2

Palm Programming: The Developer's Guide - Index

Trang 3

B

-backtrace command (GDB) 1

Backup conduit;conduits : Backup conduit 1

barcode scanner;scanning barcodes;reading : barcodes 1 2

basemon class;basetabl class 1

basemon class;basetbl class 1

beaming : implementation checklist;conduits : implementation checklist 1 2

bitmap objects;form objects : bitmaps 1 2

break command (GDB) 1

breakpoints in conduit code 1

buttons 1

buttons : alert buttons 1 2

byte ordering;Palm OS® platform : byte ordering;sorting : byte ordering 1 2

C

-C/C++ languages 1

C/C++ languages : CodeWarrior environment 1

C/C++ languages : conduit development 1 2

C/C++ languages : Satellite Forms environment 1

C/C++, CDK 3.0 requirements 1

Callback.h header file 1 2

CALLBACK_PROLOGUE, CALLBACK_EPILOGUE macros 1

capitalization of button text 1

Trang 4

categories of database records : beaming 1

categories of database records : Categories structure (example) 1

categories of database records : managing;Category Manager;databases : managing with Category Manager 1categories of database records : names of;names : database record categories 1 2

categories of database records : sorting by;names : categories of database records : sorting by 1

checkboxes;form objects : checkboxes 1

checkboxTableItem data type 1

CHHMgr class 1

class name for conduits;names : conduit class (Java) 1

classes for conduits : Generic Conduit;Generic Conduit : conduit classes for 1 2

Trang 5

CodeWarrior development environment : debugging commands;Metrowerks CodeWarrior : debugging commands 1

CodeWarrior development environment : source-level debugging;Metrowerks CodeWarrior : source-level debugging;debugging :CodeWarrior for;source-level debugging : CodeWarrior environment 1 2

CodeWarrior development environment;Metrowerks CodeWarrior;applications : development environment : CodeWarrior (seeCodeWarrior development environment);CodeWarrior development environment : Constructor (see Metrowerks Constructor) 1CodeWarrior development environment;Metrowerks CodeWarrior;development environment : CodeWarrior (see CodeWarrior) 1CodeWarrior development environment;Metrowerks CodeWarrior;Palm OS® platform : development environment : CodeWarrior(see CodeWarrior) 1

communications methods 1 2 3

CompareRecordFunc( ) (example) 1

comparison routine for sorting 1

comparison routine for sorting : Sales application (example);sorting : database records : Sales application (example);records : sorting: Sales application (example) 1

conduits : Backup conduit;Backup conduit 1 2

conduits : CDK (Conduit Development Kit);CDK (Conduit Development Kit) 1 2

conduits : CDK (Conduit Development Kit);CDK (Conduit Development Kit);C/C++ languages : conduit development 1

conduits : Conduit SDK, Java Edition;SDKs (Software Development Kits) : Conduit SDK, Java Edition;Java language : conduitdevelopment 1 2 3

conduits : Conduit SDK;SDKs (Software Development Kits) : Conduit SDK 1

conduits : creating, opening, closing databases 1 2

conduits : debugging : common problems;troubleshooting : conduits;debugging : conduits : common problems 1 2

conduits : debugging;debugging : conduits 1 2

conduits : defined 1

conduits : designing 1

conduits : entry points;entry points, conduits 1 2

conduits : handling deleted database records 1

conduits : Palm-created (built-in) 1

conduits : registering and unregistering;registering conduits 1

conduits : registering and unregistering;registering conduits;unregistering conduits 1 2

Palm Programming: The Developer's Guide - Index

http://www.palmos.com/dev/tech/docs/devguide/ (5 of 33) [4/21/2001 4:41:17 AM]

Trang 6

conduits : requirements for 1

conduits : Sales application (example) : class-based;Sales application (example) : conduits : class-based;two-way syncing : Salesapplication (example) : class-based 1 2

conduits : Sales application (example) : Generic based;Sales application (example) : conduits : Generic

Conduit-based;two-way syncing : Sales application (example) : Generic Conduit- based 1

conduits : Sales application (example) : Generic based;Sales application (example) : conduits : Generic

Conduit-based;two-way syncing : Sales application (example) : Generic Conduit- based;Generic Conduit 1

conduits : testing and troubleshooting;troubleshooting : conduits 1 2

conduits : two-way syncing : conduit classes;classes for conduits;two-way syncing : conduit classes 1 2

conduits : two-way syncing;two-way syncing 1

conduits : two-way syncing;two-way syncing;two-way syncing : Generic Conduit;conduits : two-way syncing : Generic Conduit 1conduits;Palm devices : syncing (see conduits);desktop conduits (see conduits);syncing (see conduits) 1

conduits;transfers between devices (see conduits);HotSyncing (see conduits);data transfer (see conduits) 1

ConfigureConduit( ) 1 2 3

ConfigureSubscription( ) 1

confirmation alerts;? for confirmation alerts 1

console mode 1 2

Console window (CodeWarrior) 1

constants for resource IDs;resources : constants for resource IDs;symbolic constants for resource IDs 1 2 3

Constructor (Metrowerks) : menu construction;Metrowerks Constructor : menu construction;resources : creating with Constructor :menu construction 1 2

Constructor (Metrowerks) : menu definitions (Sales example);PalmRez tool : menu definitions (Sales example);MetrowerksConstructor : menu definitions (Sales example) 1 2

Constructor (Metrowerks) : menubar specification;Metrowerks Constructor : menubar specification;resources : creating withConstructor : menubar specification 1

Constructor (Metrowerks);Metrowerks Constructor;resources : creating with Constructor 1 2 3 4

copying between devices (see conduits) 1

Palm Programming: The Developer's Guide - Index

Trang 7

copying memory bytes 1

CSalesConduitMonitor class (example);CBaseConduitMonitor class : Sales application (example) 1 2

CSalesDTLinkConverter class (example);CDTLinkConverter class : Sales application (example) 1 2

CSalesPCMgr class (example);CPcMgr class : Sales application (example) 1 2

CSalesRecord class (example);CBaseRecord class : Sales application (example) 1 2

CSalesSchema class (example);CBaseSchema class : Sales application (example) 1 2

CSalesSynchronizer class (example);CSynchronizer class : Sales application (example) 1 2

CSalesTable class (example);CBaseTable class : Sales application (example) 1 2

CustomerHandleEvent( ) (Sales example) 1

customers (Sales example) : beaming 1 2

customers (Sales example) : beaming information about;beaming : customer data (Sales example);conduits : beaming (see

beaming);beaming : (see also conduits) 1

customers (Sales example) : beaming information about;beaming : customer data (Sales example);Sales application (example) :beaming customer information 1 2

customers (Sales example) : creating new 1 2 3

Palm Programming: The Developer's Guide - Index

http://www.palmos.com/dev/tech/docs/devguide/ (7 of 33) [4/21/2001 4:41:17 AM]

Trang 8

customers (Sales example) : Customer structure 1

customers (Sales example) : CustomerHandleEvent( ) 1

customers (Sales example) : CustomersFormOpen( ) 1

customers (Sales example) : CustomersHandleEvent( ) 1

customers (Sales example) : CustomersHandleMenuEvent( ) 1

customers (Sales example) : database for 1

customers (Sales example) : downloading to Palm device 1 2

customers (Sales example) : editing information about;editing custom data (Sales example) 1 2

customers (Sales example) : editing information about;editing customer data (Sales example) 1 2

customers (Sales example) : initializing database for 1

customers (Sales example) : listing;listing customers (Sales example) 1 2 3 4

customers (Sales example) : listing;listing customers (Sales example);sorting : customers (Sales example) 1 2

customers (Sales example) : PackedCustomer structure;PackedCustomer structure (Sales example) 1

customers (Sales example) : reading and writing;reading from database records : customers (Sales example);writing to databaserecords : customers (Sales example);records : reading : customers (Sales example) 1 2

customers (Sales example) : uploading to desktop 1 2

CustomerToRawRecord( ) (example) 1

CustomLoadItem( ) (example) 1

customTableItem data type 1

D

-data entry : during serial communications 1

data entry : limiting text input;input (see data entry);text input (see data entry) 1

data types for tables;tables : data types for 1

data types for tables;tables : data types for;cells, table (see tables) 1

databases 1 2 3

databases : creating 1 2 3

databases : downloading from/uploading to desktop 1

databases : downloading from/uploading to desktop : Sales application (example) 1 2

databases : downloading from/uploading to desktop;databases : downloading from/uploading to desktop : (see also conduits) 1databases : opening and closing 1 2

databases : records : local IDs for;records : local IDs for;local IDs for database records : searching by;IDs for database records :searching by 1 2

databases : records : local IDs for;records : local IDs for;local IDs for database records;IDs for database records 1

databases : Sales application (example) 1

Palm Programming: The Developer's Guide - Index

Trang 9

databases : Sales application (example);Sales application (example) : databases in;records : Sales application (example) 1 2

databases : Sales application (example);structuring databases : Sales application (example);Sales application (example) : databasestructure;databases : structuring 1

databases : structuring;databases : Sales application (example);Sales application (example) : database structure;designing applications: databases (see databases);applications : databases for (see databases) 1

databases : structuring;structuring databases 1

Dates application;Address Book application;To Do List application;Memo Pad application;Calculator application;Password

Protection application;applications 1

dates in tables 1

dateTableItem data type 1

debug versions of conduits 1 2

debugging 1

debugging : beaming 1

debugging : beaming;testing (see debugging) 1

debugging : CodeWarrior for 1

debugging : debug resets 1

debugging : debug ROMs;storage area of memory : debug ROMs 1

debugging : GNU PalmPilot SDK;source-level debugging : GNU PalmPilot SDK for;GCC (GNU C Compiler) : source-level

debugging;compiling applications : GCC for : source-level debugging 1

debugging : GNU PalmPilot SDK;source-level debugging : GNU PalmPilot SDK for;GCC (GNU C Compiler) : source-level

debugging;compiling applications : GCC for : source-level debugging;GDB debugger 1

debugging;applications : debugging (see debugging) 1

deleting : customers (Sales example) 1

deleting : customers (Sales example);customers (Sales example) : deleting 1 2 3 4 5

deleting : database records : when downloading to device;records : deleting/archiving : when downloading to device;purging (seedeleting) 1

deleting : database records;records : deleting/archiving 1

deleting : order form items (Sales example);products (Sales example) : deleting from order form;DeleteNthItem( ) (Sales example) 1deleting : sales products (Sales example) 1 2

designing applications 1

designing applications : design elements 1

designing applications : general design 1 2

designing applications : user interface (see user interface);interface (see user interface) 1

designing applications;Palm OS® platform : designing in (see designing applications) 1

desktop, uploading to : data storage format;uploading to desktop : data storage format;conduits : uploading to desktop : data storageformat;Palm devices : uploading to desktop : data storage format 1 2

desktop, uploading to : Sales application (example);uploading to desktop : Sales application (example);conduits : uploading toPalm Programming: The Developer's Guide - Index

http://www.palmos.com/dev/tech/docs/devguide/ (9 of 33) [4/21/2001 4:41:17 AM]

Trang 10

desktop;Palm devices : uploading to desktop : Sales application (example) 1 2

desktop, uploading to;uploading to desktop;conduits : uploading to desktop;Palm devices : uploading to desktop 1 2

Details dialog (Sales example) 1

development environment : alternative;applications : development environment : alternative;Palm OS® platform : developmentenvironment : alternative 1

development environment : conduit development;applications : development environment : conduit development;Palm OS® platform: development environment : conduit development;conduits : development tools 1 2

development environment : high-level forms development;applications : development environment : high-level forms

development;Palm OS® platform : development environment : high-level development tools 1 2

development environment : POSE (see POSE application) 1

development environment : recommendations;applications : development environment : recommendations;Palm OS® platform :development environment : recommendations 1 2

development environment : resources for developers 1 2

development environment : tools for;applications : development environment : tools for;Palm OS® platform : development

environment : tools for 1 2

development environment;applications : development environment;Palm OS® platform : development environment 1 2

dialogs;dialogs : (see also alerts) 1

dir command (CodeWarrior) 1

directories for conduits 1

Trang 11

DmReleaseRecord( ) : Sales application (example) 1

downloading data to Palm device : Sales application (example);conduits : downloading to Palm device : Sales application

(example);Palm devices : downloading data to : Sales application (example) 1 2

downloading data to Palm device;conduits : downloading to Palm device;Palm devices : downloading data to 1

downloading data to Palm device;conduits : downloading to Palm device;Palm devices : downloading data to;Palm devices :

downloading data to : (see also conduits) 1

drawing routine (example);CustomDrawItem( ) (example);lines, drawing (example) 1

DrawOneCustomerInListWithFont( ) (Sales example) 1

DrawOneProductInList( ) (Sales example) 1

dynamic memory 1

dynamic memory : application requirements;memory : application requirements;permanent storage space : application

requirements;storage area of memory : application requirements 1

E

-Edit menu 1

Edit menu : handling items of 1 2

Edit menu : Sales application (example);Options menu (Sales example) 1

editable data types 1

EditCustomer( ) (Sales example) 1

EditCustomerWithSelection( ) (example);customers (Sales example) : EditCustomerWithSelection( ) (example) 1

editing database records : customers (Sales example);customers (Sales example) : editing;EditCustomerWithSelection( )

(example);modifying database records : customers (Sales example) 1 2

editing database records : customers (Sales example);modifying database records : customers (Sales example) 1 2

editing database records : order form items (Sales example);OrderSaveAmount( ) (Sales example);modifying database records : orderform items (Sales example) 1

editing database records : products (Sales example);modifying database records : products (Sales example) 1 2

editing database records;records : writing/editing;modifying database records;writing to database records 1

editing database records;records : writing/editing;writing to database records;modifying database records;Field Manager, editingrecords in place;string fields, editing in place 1

email, sending (example);sending email (example);mail, sending (example);SMTP server, sending mail to (example);TCP/IP

Palm Programming: The Developer's Guide - Index

http://www.palmos.com/dev/tech/docs/devguide/ (11 of 33) [4/21/2001 4:41:17 AM]

Trang 12

communications : sending mail (example) 1 2

EngageStandard( ) (CBaseConduitMonitor) 1 2 3

error alerts;" stop sign" for error alerts 1

events 1

events : barcode scanning 1

events : clarifying flow of 1

events : form objects;form objects : events from;forms : events from form objects 1 2

events : scrollbars 1

events : table-related;tables : events for 1 2

events : table-related;tables : events for;tblEnterEvent event 1 2

events;applications : events (see events);Palm OS® platform : events (see events) 1

EvtGetEvent( ) 1

EvtGetEvent( );events : handling with EvtGetEvent( ) 1 2

EvtResetAutoOffTimer( );automatic sleep, preventing;performance : automatic sleep, preventing;power auto-off feature;sleep,automatic 1

examples, learning from;Sales application (example) 1

Exchange Manager 1

ExgReceive( ) 1

ExgRegisterData( ) 1 2

ExgSend( ) 1

ExitInstance( ) : CSalesCondDll class (example) 1

Expense application (example) 1

extensibility of Palm devices 1

F

-fast syncing;conduits : -fast syncing 1 2

Field Manager, editing records in place;string fields, editing in place 1

File Linking feature 1

File Linking feature : entry points for;conduits : File Linking (see File Linking feature);HotSync : File Linking (see File Linkingfeature) 1

File Streaming Manager;files, storing large database records 1

filename extension for archive files;archive filename extension 1

Trang 13

FldDelete( );deleting : field text 1

FldDelete( );deleting : field text;FldInsert( );inserting field text 1

form objects : setting in modal forms 1

form objects;forms : elements of (see form objects) 1

forms 1 2 3 4 5 6

forms : adding resources to 1

forms : getting objects from;form objects : getting from forms;FrmGetObjectPtr( ) 1 2forms : high-level development;high-level forms development 1

forms : switching between (Sales example);switching between forms (example) 1 2forms;controls;user interface : forms;user interface : controls;API, Palm OS 1

Free Software Foundation 1

Trang 14

-gadget objects : example of 1 2

gadget objects : Gremlins utility and 1

gadget objects;form objects : gadgets 1 2 3

GadgetTap( ) (example) 1

GargetDraw( ) (example);horizontal line, drawing (example);vertical line, drawing (example) 1

Garmin 12 GPS device 1

GCC (GNU C Compiler) : callbacks;compiling applications : GCC for : callbacks;callbacks in GCC 1 2

GCC (GNU C Compiler);compiling applications : GCC for 1 2

GCC (GNU C Compiler);compiling applications : GCC for;C/C++ languages : GNU C Compiler (see GCC) 1

Trang 15

GetCustomerIDForNthCustomer( ) (Sales example) 1

GetID( ) (CBaseRecord) 1

GetLockedAppInfo( ) (Sales example) 1

GetOrCreateOrderForCustomer( ) (Sales example) 1

GetProductFromProductId( ) (Sales example);finding database records : Sales application (example);records : finding : Salesapplication (example) 1

Global Position System communications (example);GPS device communications (example);serial communications : GPS deviceexample 1 2

GNU PalmPilot SDK (see GCC);SDKs (Software Development Kits) : GNU PalmPilot SDK (see GCC) 1

GoToItem( ) (example) 1

GotReply( ) (example) 1

Graffiti 1 2

Graffiti : menu item shortcuts;shortcuts for menu items;hot keys (menu items);menus and menu items : shortcuts 1 2 3

Graffiti : shift indicator;shift indicator, Graffiti;form objects : Graffiti shift indicator 1

Graffiti language : debugging shortcuts;shortcut characters (Graffiti);debugging : Graffiti shortcuts for 1 2

Graffiti language : mouse to write in 1

Graffiti language : shortcut to use serial port;serial port : using instead of IR 1

heaps;memory : dynamic heaps 1

heaps;memory : dynamic heaps;storage area of memory : heap support (Palm 3.0) 1

heaps;memory : dynamic heaps;storage area of memory : heap support (Palm 3.0);Palm OS® platform : storage space (see storagearea of memory) 1

Hello World application (example) 1 2

help command (CodeWarrior) 1

help command (GDB) 1

Hewgill, Greg 1

Palm Programming: The Developer's Guide - Index

http://www.palmos.com/dev/tech/docs/devguide/ (15 of 33) [4/21/2001 4:41:17 AM]

Trang 16

HotSync : launch flags;debugging : conduits : HotSync launch flags;conduits : debugging : HotSync launch flags 1 2

HotSync : logging activity;logging HotSync activity;conduits : HotSync log 1 2 3 4

HotSync : step-by-step event sequence;conduits : syncing process 1 2

HotSync : testing conduits 1

HotSync : timeouts, avoiding 1

ht command (CodeWarrior) 1

I

-image, creating database from 1

ImportData( ) 1

information alerts;i for information buttons;buttons : info buttons (modal dialogs);help : info buttons on dialogs 1

information alerts;user interface : guidelines for : modal dialogs;UI Guidelines : modal dialogs;info buttons (modal dialogs);buttons :info buttons (modal dialogs);help : info buttons on dialogs;i for information buttons 1

initializing : Sales databases (example);databases : initializing (Sales example) 1 2

initializing : string fields (database) 1

initializing : tables;tables : initializing 1 2 3 4

InitInstance( ) : CSalesCondDll class (example) 1

InitInstance( );ExitInstance( ) 1

InitNumberCustomers( ) (Sales example) 1

Install.exe program 1

installing conduits;uninstalling conduits automatically;conduits : installing/uninstalling automatically;registering conduits :

installing/uinstalling automatically;unregistering conduits : installing/uinstalling automatically 1 2

installing conduits;uninstalling conduits;conduits : installing and uninstalling 1

IsDeleted( ) (CBaseRecord);IsModified( ) (CBaseRecord);IsAdded( ) (CBaseRecord);IsArchived( ) (CBaseRecord);IsNone( )(CBaseRecord);IsPending( ) (CBaseRecord) 1

Item Details form (Sales example);products (Sales example) : Item Details form 1

Item form (Sales example);orders, placing (Sales example) : Item form 1

Item structure (Sales example);products, ordering (Sales example) : Item structure 1

ItemFormOpen( ) (Sales example) 1

ItemHandleEvent( ) (Sales example) 1 2

J

-JDBC (Java Database Classes) 1

journals about Palm Computing;magazine about Palm Computing 1

Jump development environment;Java language : Jump development environment 1

Palm Programming: The Developer's Guide - Index

Trang 17

-label objects : in tables 1

label objects;form objects : labels 1 2 3

labelTableItem data type 1

launch codes 1 2 3

launch flags 1

Linux, sending mail on (example) 1 2

list objects : custom vs noncustom;customizing list objects;form objects : lists : custom vs noncustom;performance : custom vs.noncustom lists 1 2

list objects;form objects : lists 1 2

ListDrawFunc( ) (example) 1

load routines for tables (example) 1

LoadTable( ) (example) 1

locking blocks of memory 1 2

locking database records : closing database and;records : locking 1

Trang 18

-Macintosh operating system : conduit development;conduits : -Macintosh OS development 1

Macintosh operating system : developing applications on 1 2

Macintosh operating system : POSE commands specific to;Windows operating system : POSE commands specific to 1mailing lists for Palm Computing 1

main event loop : Hello World (example);Hello World application (example) : main event loop 1

main event loop;events : main event loop 1

memory : allocating;dynamic memory : allocating;allocating : memory 1

memory : API for 1

memory : dynamic table field changes 1

memory : Find feature 1

memory : leaks, editable text fields and;leaking memory, editable text fields;tips and tricks : memory leaks 1

memory : write protection for databases;databases : write protection 1

Memory Manager 1

memory;applications : memory (see memory) 1

memory;dynamic memory;allocating : memory;memory : allocating 1

Palm Programming: The Developer's Guide - Index

Trang 19

MenuHandleEvent( );menus and menu items : events 1 2

menus and menu items 1 2 3 4

menus and menu items : arranging;sorting : menus and menu items 1

menus and menu items : duplicate menus 1

menus and menu items : items common among applications 1

menus and menu items : multiple sets of menus 1

menus and menu items : refreshing after shortcut use;refreshing : screen after menu shortcuts;screen : refreshing after using menushortcuts;shortcuts for menu items : refreshing screen after using 1 2

menus and menu items : standard interface framework 1

menus and menu items : standard interface framework;user interface : menus (see menus and menu items) 1

menus and menu items : unusable items, handling;unusable menu items;deleting : unusable menu items;disabling unusable menuitems 1 2

menus and menu items;menubars;form objects : menus (see menus and menu items);form objects : menubars (see menubars) 1Microsoft Corporation;PalmPC platform 1

Mobile Generation Software' s Real Estate Companion;Real Estate Companion (Mobile Generation Software) 1

modal dialogs : Delete Customer (Sales example);dialogs : modal dialogs : Delete Customer (Sales example) 1

modal dialogs;forms : modal dialogs;dialogs : modal dialogs 1 2

modal dialogs;modeless dialogs;dialogs : modal dialogs;forms : modal dialogs;dialogs : modeless dialogs;forms : modelessdialogs;modal dialogs : alerts (see alerts) 1

MyFormHandleEvent( ) 1

MyFormHandleMenuEvent( ) 1

Palm Programming: The Developer's Guide - Index

http://www.palmos.com/dev/tech/docs/devguide/ (19 of 33) [4/21/2001 4:41:17 AM]

Trang 20

N

-names : conduit DLLs 1

names : conduits 1

names : databases 1 2

names : databases;types of databases;creator, database 1

narrowTextTableItem data type 1

nested locking of memory blocks 1

New Customer dialog (Sales example) 1

New Order button (Sales example) 1

-ObEx Infrared Data Association (IrDA) standard;IrDA standard;Infrared Data Association (IrDA) standard 1

object pointers, types of;pointers to objects, types of 1

OpenFrom( ) (CBaseTable);ExportTo( ) (CBaseTable) 1

opening databases : Sales application (example);closing databases : Sales application (example);databases : opening and closing :Sales application (example);databases : creating : Sales application (example) 1 2

opening databases;databases : opening and closing 1 2

OpenNthCustomer( ) (Sales example) 1

Palm Programming: The Developer's Guide - Index

Trang 21

OpenOrCreateDB( ) (Sales example) 1

operator==( ) (CBaseRecord);== operator (CBaseRecord) 1 2

optimizing applications : beaming;performance : beaming 1

OrderDrawProductName( ) (Sales example) 1

OrderExistsForCustomer( ) (Sales example) 1

OrderFormClose( ) (Sales example 1

OrderRecordNumber( ) (Sales example) 1

orders, placing (Sales example) 1 2

orders, placing (Sales example) : database for 1

orders, placing (Sales example) : databases for 1 2 3

orders, placing (Sales example) : editing order 1

orders, placing (Sales example) : editing order;customer order form (see orders, placing) 1

orders, placing (Sales example) : menubars for 1

orders, placing (Sales example) : order form 1 2

orders, placing (Sales example) : Order structure 1

orders, placing (Sales example) : OrderDeinitNumberField( ) 1

orders, placing (Sales example) : OrderDrawNumber( ) 1

orders, placing (Sales example) : OrderHandleEvent( ) 1

orders, placing (Sales example) : OrderHandleKey( );key events, handling in tables 1

orders, placing (Sales example) : OrderHandleMenuEvent( ) 1

orders, placing (Sales example) : OrderInitTableRow( ) 1

orders, placing (Sales example) : OrderSelectNumericCell( );pen events : handling in tables (example) 1

orders, placing (Sales example) : OrderTapInActiveField( );pen events : handling in tables (example) 1

orders, placing (Sales example) : uploading to desktop 1 2

owner IDs 1

P

-pack pragma (Visual C++) 1

PackCustomer( ) (Sales example) 1

packed products (Sales example);unpacked products (Sales example) 1

PackedCategories structure (Sales example);categories of database records : PackedCategories structure (example) 1PackedOrder structure (Sales example);orders, placing (Sales example) : Packed Order structure 1

PackProduct( ) (Sales example) 1

Palm OS® platform 1 2 3

Palm Programming: The Developer's Guide - Index

http://www.palmos.com/dev/tech/docs/devguide/ (21 of 33) [4/21/2001 4:41:18 AM]

Trang 22

Palm OS® platform : conduits (see conduits);designing applications : conduits (see conduits) 1

Palm OS® platform : documentation;documentation for Palm OS;help : Palm OS documentation 1 2

Palm OS® platform : operating system elements 1

Palm OS® platform : operating system elements : Palm 3.0 OS features;Palm 3.0 OS 1 2

Palm OS® platform : operating system elements;Palm OS (see Palm OS® platform);operating system : Palm (see Palm OS®platform);operating system : Windows (see Windows operating system) 1

Palm OS® platform : tutorial;tutorial for Palm OS;help : Palm OS tutorial 1

Palm OS® platform : version support : checking version number (example);versions, Palm OS : checking version number

(example);performance : supporting Palm OS versions : checking version number (example) 1

Palm OS® platform : version support : serial communications;versions, Palm OS : serial communications;performance : supportingPalm OS versions : serial communications 1

Palm OS® platform : version support;versions, Palm OS;performance : supporting Palm OS versions 1

Palm devices : cost;cost of Palm devices 1

Palm devices : features, existing and missing 1

Palm devices : features, existing and missing;hardware (see Palm devices);Palm OS® platform : machines for (see Palm devices) 1Palm devices : machine size and weight;size : Palm devices;weight of Palm devices;design of Palm devices 1 2

Palm devices : Palm III 1 2

Palm devices : Pilot 1000;Palm devices : Pilot 5000;Pilot 1000;Pilot 5000 1

Palm devices : resets;resetting Palm devices;debugging : device resets 1

Palm devices : uploading to desktop : (see also conduits) 1

Palm Software Development Kit (SDK);SDKs (Software Development Kits) : Palm SDK 1

PalmCentral web site 1

PalmPC platform 1

PalmRez tool 1 2

paths for Java conduit classes 1

PC-card slots 1

pen events : handling;tapping (see pen events) 1

pen events : penDownEvent 1 2

pen events : penDownEvent;pen events : penMoveEvent 1

pen events;events : pen events;stylus events (see pen events) 1

Pendragon Forms application;Windows operating system : Pendragon Forms 1

Perform( ) (CSalesSynchronizer\; example) 1

performance : Find feature 1

performance : Generic Conduit;tips and tricks : Generic Conduit 1 2

performance : locking and unlocking memory 1

Palm Programming: The Developer's Guide - Index

Trang 23

performance : optimizing;optimizing applications;applications : optimizing;Palm OS® platform : optimizing for (see optimizingapplications);optimizing applications : (see also designing applications) 1

performance;applications : performance (see performance);Palm OS® platform : performance (see performance);speed, application(see performance) 1

permanent storage space;storage area of memory;disk space (see storage area of memory);ROM (see storage area of memory) 1Pilot 1000;Palm devices : Pilot 1000 1

Pilot vs Palm (naming) 1

PilotMain( ) 1

PilotMain( ) : handling Find requests 1 2

PilRC resource compiler : menu construction;resources : PilRC resource compiler : menu construction 1

PilRC resource compiler : menubar specification;resources : PilRC resource compiler : menubar specification 1

PilRC resource compiler : Sales application constants (example);resources : PilRC resource compiler : Sales application constants(example) 1

PilRC resource compiler;resources : PilRC resource compiler 1 2 3

PilrcUI application 1

Platinum certification 1

popSelectEvent event 1 2

pop-up triggers : events for tap start;triggers : pop-up triggers : events for tap start 1

pop-up triggers : in tables 1

pop-up triggers;triggers : pop-up triggers 1

pop-up triggers;triggers : pop-up triggers;pop-up triggers : (see also list objects) 1

popupTriggerTableItem data type 1

portability of conduit use;conduits : portability issues;troubleshooting : conduit portability;performance : conduit portability 1 2POSE application 1 2

POSE application : CodeWarrior environment 1

POSE application : future of 1

POSE application : GNU PalmPilot SDK with 1

POSE application : GNU PalmPilot SDK with;GDB debugger 1

POSE application : Simulator vs.;Simulator application;Macintosh operating system : Simulator application;CodeWarrior

development environment : Simulator application (Mac OS);Metrowerks CodeWarrior : Simulator application (Mac OS);debugging :Simulator application 1

POSE application : testing conduits;conduits : debugging : POSE application for;debugging : POSE application, testing conduits 1POSE application;emulating Palm OS (see POSE application\; Simulator application);Palm OS® platform : emulating (see POSEapplication\; Simulator application) 1

PrefSetAppPreferences( ) 1

prevFieldChr character;nextFieldChr character;Graffiti : navigating text field characters 1

Palm Programming: The Developer's Guide - Index

http://www.palmos.com/dev/tech/docs/devguide/ (23 of 33) [4/21/2001 4:41:18 AM]

Trang 24

print command (GDB) 1

priority, conduit 1

processor-intensive tasks;performance : processor-intensive tasks;memory : processor-intensive tasks;off-loading processor-intensivetasks 1 2

product database (Sales example) 1

products (Sales example) : adding to tables;orders, placing (Sales example) : OrderDrawProductName( ) 1

products (Sales example) : initializing database for 1 2

products (Sales example) : ordering (see orders, placing);products (Sales example) : deleting (see deleting sales products);items forsale (example) (see products) 1

products (Sales example) : reading and writing;reading from database records : products (Sales example);writing to database records :products (Sales example);reading from database records : products (Sales example) 1 2

products, ordering (Sales example) : downloading products to handheld 1

products, ordering (Sales example) : downloading products to handheld;products, ordering (Sales example) : (see also orders,

placing) 1

products, ordering (Sales example) : PackedProduct structure;PackedProduct structure (Sales example) 1

products, ordering (Sales example) : Product structure 1

-RAM (see memory) 1

rapid prototyping;prototyping with Satellite Forms 1

Trang 25

ReadCustomer( ) (example);customers (Sales example) : ReadCustomer( ) 1 2

reading from database records : when uploading to desktop;records : reading : when uploading to desktop 1 2

ReadIntoNewRecord( ) (example) 1

ReadProduct( ) (example) 1

ReadReply( ) (example) 1

ReceiveBeam( ) (example) 1 2

Record menu (Sales example) 1

records : conflicts during syncing;conduits : record conflicts 1

records : creating new : Sales application (example);adding records to database : Sales application (example) 1 2

records : creating new : Sales application (example);adding records to database : Sales application (example);AddNewItem( ) (Salesexample) 1

records : creating new;DmNewRecord( );adding records to database 1

records : deleting/archiving : sorting records and;deleting : database records : sorting deleted records;archived database records :sorting 1 2

records : finding;finding database records 1 2 3

records : iterating through;iterating through database records : when uploading to deskop;categories of database records : iteratingthrough 1

records : iterating through;iterating through database records;categories of database records : iterating through 1

records : private (secret) : Find feature and;private database records : Find feature and;secret database records : Find feature

and;categories of database records : handling secret records : Find feature;records : beaming (see beaming\; conduits) 1

records : private (secret);private database records;secret database records;categories of database records : handling secret records 1records : private (secret);private database records;secret database records;categories of database records : handling secret

records;records : categories (see categories for database records) 1

records : sorting;sorting : database records;comparison routine for sorting 1

records : writing/editing : when downloading to device;writing to database records : when downloading to device;handhelds (seePalm devices) 1

records;databases : records 1

records;databases : records : managing 1 2

records;databases : records;records : (see also databases) 1

refreshing : table cells;forms : refreshing (see refreshing) 1

repeating buttons;buttons : repeating buttons 1

ReplaceTabs( ) (CSalesTable\; example) 1

resource database;.PRC files 1 2

resources 1 2 3

resources : menus and menu items;menus and menu items : resources for 1 2

resources : reading;reading : resources;Resource Manager, obtaining resources with 1

Palm Programming: The Developer's Guide - Index

http://www.palmos.com/dev/tech/docs/devguide/ (25 of 33) [4/21/2001 4:41:18 AM]

Trang 26

resources for further reading;Palm OS® platform : developer support resources 1

RetrieveDB( ) (CSalesPcMgr\; example) 1

RoadCoders web site 1

RomIncompatibleAlert (Sales example) 1

RomVersionCompatible( ) (example);Palm OS® platform : version support : RomVersionCompatible( ) (example);versions, Palm

OS : RomVersionCompatible( ) (example);performance : supporting Palm OS versions : RomVersionCompatible( ) (example) 1

S

-Sales application (example) : adding menus to;menus and menu items : -Sales application (example) 1 2

Sales application (example) : beaming customer information;customers (Sales example) : beaming information about 1

Sales application (example) : beaming;beaming : Sales application (example) 1

Sales application (example) : beaming;beaming : Sales application (example);beaming 1

Sales application (example) : conduit design;conduits : Sales application (example);conduits : designing;Sales application (example)1

Sales application (example) : conduit design;conduits : Sales application (example);Sales application (example) 1

Sales application (example) : conduits : extended;conduits : Sales application (example) : extended 1 2

Sales application (example) : conduits : minimal;conduits : Sales application (example) : minimal 1 2

Sales application (example) : design tradeoffs;designing applications : tradeoffs (Sales example) 1 2

Sales application (example) : designing for small screen 1 2

Sales application (example) : Find feature with;Find feature : Sales application (example) 1 2

Sales application (example) : resources and form objects;resources : Sales application (example);form objects : Sales application(example);forms : Sales application (example) 1 2

Sales application (example) : start screen 1

Sales application (example) : tables in;tables : Sales application (example) 1 2

Sales application (example) : user interface;user interface : Sales application (example) 1 2

Satellite Forms environment;SoftMagic' s Satelline Forms environment 1 2

Satellite Forms environment;SoftMagic' s Satelline Forms environment;forms : high-level development;high-level forms

development 1

save routine for tables (example);CustomSaveItem( ) (example) 1

SaveTo( ) (CBaseTable) 1

SaveTo( ) (CBaseTable);OpenFrom( ) (CBaseTable) 1 2

scanBatteryErrorEvent event;battery, too low for scanning;troubleshooting : battery too low for scanning 1

scanBatteryErrorEvent event;troubleshooting : battery too low for scanning 1

Trang 27

scrollbar objects : updating;form objects : scrollbars : updating;updating scrollbars 1

scrollbar objects;form objects : scrollbars 1 2 3

Select All menu item;Keyboard menu item;Graffiti : Graffiti Help menu item;help : Graffiti Help menu item 1

SelectACategory( ) (Sales example) 1

selector triggers;triggers : selector triggers;form objects : buttons (see buttons);form objects : triggers (see triggers) 1

Send( ) (example) 1

SendBody( ) (example) 1

sendmail protocol, using (example) 1 2

SendSingleBodyLine( ) (example) 1

separator bars in menus 1

serErrAlreadyOpen error;open port error;serial port : opening;troubleshooting : serial communications 1

serErrLineErr error;SerClearError( );SerReceiveFlush( ) 1

Set Active Configuration (Build menu item) 1

Palm Programming: The Developer's Guide - Index

http://www.palmos.com/dev/tech/docs/devguide/ (27 of 33) [4/21/2001 4:41:18 AM]

Trang 28

SetRecordId( ) (CBaseRecord);GetRecordId( ) (CBaseRecord);SetStatus( ) (CBaseRecord);GetStatus( ) (CBaseRecord) 1

size : calculating automatically (PilRC) 1

size : database records;records : size of 1 2 3

size : label strings;resources : label string length and;label objects : string length problems;troubleshooting : label string length 1size : memory chunks, determining 1

size : modal forms 1

size : string handles in text fields 1

size : tables and table elements;tables : sizing 1

slow syncing;conduits : slow syncing 1 2

sort info block 1

sorting : database records;records : sorting 1 2

sorting : user interface elements;alphabetical order;organizing elements (see small screen, designing for\; sorting\; user interface) 1sound;audio (see sound) 1

source-level debugging : conduits;conduits : debugging : source-level debugging 1

source-level debugging : conduits;conduits : debugging : source-level debugging;breakpoints in conduit code 1

SPT 1500;Symbol' s SPT 1500;Palm devices : Symbol' s SPT 1500 1

start screen;user interface : start screen;screen : start screen 1

Trang 29

StopApplication( ) 1

StopApplication( ) : Sales application (example) 1

storage area of memory 1

storage area of memory : application requirements;permanent storage space : application requirements;Palm OS® platform : memory(see memory);applications : data storage (see storage area of memory) 1

storage area of memory : chunking large database records;chunks, memory (see memory\; storage area of memory) 1

storage area of memory : receiving buffer size;size : receiving buffer (serial communications);receiving buffer size 1

storage area of memory : storing conduit data;conduits : storing uploaded/downloaded data 1 2

storage area of memory : where databases are stored;databases : storage location 1

StoreDB( ) (CSalesPcMgr\; example) 1

string list resources 1

strings support 1

StrListType structure 1

structure packing;Palm OS® platform : structure packing;compiling applications : structure packing 1

structuring databases : Sales application (example);Sales application (example) 1

SubscriptionSupported( ) 1

SwapDWordToIntel( ) 1

SwapDWordToMotor( );ConvertToRemote( ) (CDTLink-Converter) 1

SwitchForm( ) (Sales example);FrmGotoForm( ) 1

Symbol' s SPT 1500 : barcode scanner;Palm devices : Symbol' s SPT 1500 : barcode scanner;SPT 1500 : barcode scanner 1 2Symbol' s SPT 1500 : data entry on;Palm devices : Symbol' s SPT 1500 : data entry on;SPT 1500 : data entry on 1

Symbol' s SPT 1500;Palm devices : Symbol' s SPT 1500;SPT 1500 1

Trang 31

tblSelectEvent event 1 2

TCP/IP communications;communications methods : TCP/IP communications 1 2

technical support 1

text in table columns 1

text objects (entry fields) : focus;form objects : text entry fields : focus;form objects : text entry fields : focus;editable text objects :focus;focus for editable text fields 1

text objects (entry fields) : getting text;form objects : text entry fields : getting text;form objects : text entry fields : getting

text;editable text objects : getting text 1

text objects (entry fields) : modifying text;form objects : text entry fields : modifying text;form objects : text entry fields : modifyingtext;editable text objects : modifying text 1

text objects (entry fields) : setting text;form objects : text entry fields : setting text;form objects : text entry fields : setting

text;editable text objects : setting text 1

text objects (entry fields);form objects : text entry fields;editable text objects 1

text objects (entry fields);form objects : text entry fields;editable text objects;fields (see text objects);entry fields (see text objects) 1text objects (entry fields);form objects : text entry fields;form objects : text entry fields;editable text objects;data entry : fields for (seetext objects) 1

text recognition software, absence of 1

textTableItem data type 1

textWithNoteTableItem data type 1

timeouts, avoiding when debugging;conduits : debugging : avoiding timeouts;debugging : avoiding timeouts 1 2

TimeUntilNextRead( ) 1

tips and tricks : alerts 1

tips and tricks : beaming;beaming : programming tips 1 2

tips and tricks : Gremlins utility 1

tips and tricks : modal forms;tips and tricks : (see also troubleshooting) 1

tips and tricks : Serial Manager use 1

tips and tricks : Serial Manager use;troubleshooting : serial communications 1

tips and tricks : TCP/IP 1 2

transaction processing;conduits : transaction processing 1

troubleshooting : conduits;conduits : testing and troubleshooting 1

troubleshooting : conduits;conduits : testing and troubleshooting;HotSync : testing conduits 1

troubleshooting : editable text fields;tips and tricks : editable text fields 1

troubleshooting : menu generation in Constructor 1

two-way syncing;conduits : two-way syncing;mirror-image synchronization (see two-way syncing) 1

Palm Programming: The Developer's Guide - Index

http://www.palmos.com/dev/tech/docs/devguide/ (31 of 33) [4/21/2001 4:41:18 AM]

Trang 32

U

-Undo menu item;Cut menu item;Copy menu item;Paste menu item 1

Unix OS, developing applications on 1

UnpackCustomer( ) (Sales example) 1

UnpackProduct( ) (Sales example) 1

unsuccessful taps, events for 1

UpdateScrollbar( ) (example);scrollbar objects : updating;form objects : scrollbars : updating;updating scrollbars 1

UpdateTables( ) 1

upload-only conduits;download-only conduits 1

user interface : dynamic;dynamic UI features 1

user interface : elements of 1

user interface : elements of : initializing;initializing : user interface elements 1

user interface : elements of;applications : interface (see user interface);Palm OS® platform : user interface (see user interface) 1user interface : guidelines for : modal dialogs;UI Guidelines : modal dialogs;info buttons (modal dialogs);buttons : info buttons(modal dialogs);help : info buttons on dialogs 1

user interface : guidelines for;UI Guidelines;UI Guidelines : (see also user interface) 1

user interface : small screen size concerns;Palm devices : screen size;small screen, designing for;designing applications : small screenconsiderations 1 2

user interface : small screen size concerns;Palm devices : screen size;small screen, designing for;designing applications : small screenconsiderations;size : screen (see small screen, designing for);screen : designing for (see small screen, designing for) 1

v flag (HotSync) 1

V

-variables, global, CALLBACK_PROLOGUE and;global -variables, CALLBACK_PROLOGUE and 1

verbose modes (HotSync);-v flag (HotSync) 1

versions, Palm OS 1

virtual machine, Java 1

W

-Wademan.com web site 1

warning alerts;! for warning alerts 1

When Beam All Customers option (Sales example);IR beaming (see beaming information) 1

Palm Programming: The Developer's Guide - Index

Trang 33

WhichTextColumn( ) 1

windows 1

Windows operating system : conduit development;conduits : Windows OS development 1 2

Windows operating system : developing applications on 1 2

WriteRecord( ) (example) 1 2

writing resources;resources : writing 1

writing to database records : syncing conflicts;modifying database records : syncing conflicts;editing database records : syncingconflicts;records : writing/editing : syncing conflicts;databases : record writing conflicts 1

writing to database records : when downloading to device 1

writing to database records;modifying database records;editing database records;records : writing/editing;DmGetRecord( );lockingdatabase records;records : locking;DmReleaseRecord( ) 1

writing to database records;reading from database records;records : writing/editing;DmQueryRecord( );querying database

records;records : reading 1

# | | " | 3 | A | B | C | D | E | F | G | H | I | J | K | - | L | M | N | O | P | Q | R | S | T | U | - | V | W Palm Programming: The Developer'sGuide

Copyright © 1999, O'Rielly and Associates, Inc

Published on the web by permission of O'Rielly and Associates, Inc Contents modified for web display

Palm Programming: The Developer's Guide - Index

http://www.palmos.com/dev/tech/docs/devguide/ (33 of 33) [4/21/2001 4:41:18 AM]

Trang 34

Palm Programming: The Developer's Guide - Table

of Contents

Foreword

Foreword

Preface

The Palm Phenomenon

Who This Book Is For-C Programmers

What This Book Is About and How

Whom We Need to Thank

I Palm-Why It Works and How to Program It

1 The Palm Solution

Why Palm Succeeded Where So

Many Failed

Designing Applications for Palm Devices

Elements in a Palm Application

Summary

2 Development Environments and Languages

Overview

Handheld Development

Alternative Development Environments

High-Level Forms Development

Conduit Development

Conclusion

Palm Programming: The Developer's Guide - Table of Contents

Trang 35

3 Designing a Solution

User Interface Elements

in an Application

General Design of a Palm Application

How the Sample Applications Are Useful

User Interface of the Sales Application

Developing a Prototype

Design Tradeoffs in the Sample Application

Designing for a Small Screen

Designing the Databases

Designing the Conduit

Memory Is Extremely Limited

Other Times Your Application Is Called

Resources, Forms, and Form Objects

in the Sales Application

6 Databases

Overview of Databases and Records

Creating, Opening, and Closing Databases

Working with Records

Examining Databases in the Sales Sample

7 Menus

Menu User Interface

Menu Resources

Application Code for Menus

Adding Menus to the Sample Application

Palm Programming: The Developer's Guide - Table of Contents

http://www.palmos.com/dev/tech/docs/devguide/TableOfContents.htm (2 of 4) [4/21/2001 4:41:22 AM]

Trang 36

Graffiti Shortcut Characters

Source-Level Debugging with CodeWarrior

Source-Level Debugging with GNU PalmPilot SDK

Using Simulator on Mac OS

Gremlins

III Designing Conduits

11 Getting Started with Conduits

Overview of Conduits

Registering and Unregistering a Conduit

Conduit Entry Points

The HotSync Log

When the HotSync Button Gets Pressed

Using the Backup Conduit

Creating a Minimal Sales Conduit

12 Uploading and Downloading Data with a Conduit

Conduit Requirements

Where to Store Data

Creating, Opening, and Closing Databases

Downloading to the Handheld

Uploading to the Desktop

When the HotSync Button Gets Pressed

Portability Issues

The Sales Conduit

Palm Programming: The Developer's Guide - Table of Contents

Trang 37

13 Two-Way Syncing

The Logic of Syncing

The Conduit Classes

Sales Conduit Sample Based

Avoiding Timeouts While Debugging

Conduit Problems You Might Have

Test with POSE

Turn Off Other Conduits During Testing

Use the Log, Luke

Appendix: Where to Go From Here

Palm Programming Book Web Site

The Official Palm Developer Site

Palm Programming Mailing Lists

Third-Party Palm Programming Resources

Third-Party Palm Programming FAQ

RoadCoders, Handheld Developers

PalmCentral

Journals and Magazines

Palm Programming: The Developer's Guide

Copyright © 1999, O'Rielly and Associates, Inc.

Published on the web by permission of O'Rielly and Associates, Inc Contents modified for web display Palm Programming: The Developer's Guide - Table of Contents

http://www.palmos.com/dev/tech/docs/devguide/TableOfContents.htm (4 of 4) [4/21/2001 4:41:22 AM]

Trang 38

The overall flow and content of a Palm OS application is the subject of this chapter You will learn:

The standard code routines found in every Palm application

An application window (what many people would think of as a view) that usually covers the entire screen A form optionally contains

controls, text areas, and menus In a Palm OS application, there is only one active form allowed at a time Chapter 5, Forms and

Form Objects, covers forms in detail.

Window

A rectangular area in which things like dialogs, forms, and menus are drawn by the application The Window Manager makes surethat windows properly display relative to each other (for example, it has the ability to restore the old contents when a window isclosed) Note in a rather Shakespearian twist of logic that all forms are windows, even though all windows are not forms

Trang 39

A data structure that describes things that happen in an application Events can be low-level hardware events like a pen down, pen up,

or hardware key press They can also be higher-level events like a character entered, a menu item selected, or a software buttonpressed

The Palm OS is an event-driven system Only one application is open at a time When that application is running, it runs an event loop

that retrieves events and continues to handle them until the user starts another application

Main event loop

The main loop of execution in an application, which repeatedly retrieves events and then acts on them

Launch code

A parameter passed to an application that specifies what the application should do when that particular launch code is executed Anapplication typically handles more than one launch code This is the communication method used between the OS and an applicationand between applications

Menu

Menus are stored in resources grouped together into menubars and are displayed when the user taps the menu area See Chapter 7,

Menus, for more details.

A warning or information dialog that needs to be dismissed by the user

These brief descriptions cover the most important terminology In the following section, we look at the basic elements of a very smallPalm OS application

A Simple Application

Creating a small application before tackling a more complex one is a good way to gain familiarity with a new coding challenge First,

we tell you what our little application does and show you the code for it After that we do a code walkthrough and point out importantelements

What the Application Does

Our Hello World application displays the words "Hello World" and provides a button to press Pressing the button displays an alert,

as shown in Figure 4-1, which is dismissed by tapping OK There are two menus, each with one menu item (see Figure 4-2) As this

is a very simple application, you just get a beep when you choose either menu item

-Figure 4- 1 Dialog shown after tapping the button

4 Structure of an Application

http://www.palmos.com/dev/tech/docs/devguide/ch04.htm (2 of 17) [4/21/2001 4:41:34 AM]

Trang 40

Figure 4- 2 The menus of Hello World

The Hello World Source Code

Now that you have an idea of what the application can do, look at Example 4-1 to see the code that produces it Once you havelooked through it for yourself, we will discuss it

-Example 4- 1 The Hello World Source Code

Ngày đăng: 25/03/2014, 10:51