RE: SyncCallRemoteModule

2003-04-01 Thread Robert McKenzie
Not a lot of information to work from here, but let me point out a few areas you might look at: 1. Desktop. The CCallModuleParams structure needs to be fully set up. In particular it has information about a pair of buffers (pointer and size). If you don't use them, set their sizes to 0 and

RE: Fatal Exception -- HELP

2003-01-28 Thread Robert McKenzie
Fields and their text is a complicated subject. You are violating one of its fundamental precepts. In short, a field needs a handle for its text, NOT just a pointer. FldSetText is a convenience routine. The pointer you pass it MUST have been gotten from a handle via MemHandleLock. Using a

RE: Ending a FrmDoDialog session

2003-01-22 Thread Robert McKenzie
Easiest is to add (yourself) a ctlSelect on your dialog's OK button. If you don't have an appropriate button, you can just add one to your form and make it invisible (not usable). Make sure you don't handle your ctlSelect event and the FrmDoDialog's event loop will end your dialog and return

RE: FrmDoDialog

2002-12-17 Thread Robert McKenzie
Simple fix: FormPtr frm = FrmInitForm(FORM_ID); FrmSetActiveForm(frm); /* set fields etc here, WITHOUT calling FldDrawField */ /* now call this! */ FrmDrawForm(frm); control = FrmDoDialog(frm); ... -bob mckenzie, palmsource pdx -Original Message- From: Palm Developer [mailto:[EMAIL

RE: FrmDoDialog continued problems (fwd)

2002-12-17 Thread Robert McKenzie
problems (fwd) On Tue, 17 Dec 2002, Robert McKenzie wrote: FormPtr frm = FrmInitForm(FORM_ID); FrmSetActiveForm(frm); /* set fields etc here, WITHOUT calling FldDrawField */ /* now call this! */ FrmDrawForm(frm); control = FrmDoDialog(frm); -bob mckenzie, palmsource pdx That solved

RE: DmFindSortPosition question

2002-12-17 Thread Robert McKenzie
Just a guess, but because of possible wrapping / overflow problems, it is always safer to compare two values with each other rather than to subtract them and compare with 0. I.e. if (p1-fid p2-fid) is better than if ((p1-fid - p2-fid) 0) -Original Message- From: christy

RE: DmFindSortPosition question

2002-12-17 Thread Robert McKenzie
? --- Robert McKenzie [EMAIL PROTECTED] wrote: Just a guess, but because of possible wrapping / overflow problems, it is always safer to compare two values with each other rather than to subtract them and compare with 0. I.e. if (p1-fid p2-fid) is better than if ((p1-fid - p2-fid) 0

RE: problem with fields

2002-12-12 Thread Robert McKenzie
FldGetTextHandle takes a field pointer as its argument. I would suggest that the field pointer you are passing in is most likely NULL or has become invalid. It can become invalid if you add other objects to the field between the time that you get the field pointer and the time that you use

RE: tables - looking for advise

2002-12-11 Thread Robert McKenzie
David is right. In particular, the number of rows is ALWAYS the maximum number of rows you EVER want to display on screen. When you wish to have more rows than fit onto the screen, you actually scroll the data through your rows (not the rows through the screen) -- i.e., now your row #1 points

RE: #65279;Trouble with TblSetItemInt

2002-12-10 Thread Robert McKenzie
Eric: The code (OS 4) uses Int16 for the TblSetItemInt, then, when drawing a numericTableItem passes it to StrIToA which wants an Int32. So you have me puzzled too. Looking a little deeper, however, I find that in OS 3.1 the table keeps its ItemInts as UInt16s, so I suspect what you are

RE: Download Problems CW6

2002-11-06 Thread Robert McKenzie
It seems to me that you have done most of the obvious things. Just a wild guess, but perhaps your app has grown past its segment/memory model. Turn on the memory map in the project settings and verify that all segments actually load to less than 64K. -bob mckenzie, palmsource pdx p.s. but

RE: Download Problems CW6

2002-11-06 Thread Robert McKenzie
the smart memory model as my application is quite large. Is there any other restrictions that I should be aware of to do with 64K segements ? -Original Message- From: Robert McKenzie [mailto:Robert.McKenzie;palmsource.com] Sent: 06 November 2002 17:26 To: Palm Developer Forum Subject: RE

RE: Download Problems CW6

2002-11-06 Thread Robert McKenzie
: Wednesday, November 06, 2002 9:40 AM To: Palm Developer Forum Subject: RE: Download Problems CW6 Your write, ive reached 64K. how do I get around this ??? -Original Message- From: Robert McKenzie [mailto:Robert.McKenzie;palmsource.com] Sent: 06 November 2002 17:26 To: Palm Developer Forum

RE: Multi-Segment Apps - Is there any good info

2002-11-06 Thread Robert McKenzie
I would suggest the Targeting Palm OS document that ships with codewarrior as a good starting point. Additonal resources can be found by searching this forum or the PalmOS knowlege base. -Original Message- From: [EMAIL PROTECTED] [mailto:Richard.Anderson;Radiodetection.com] Sent:

RE: Enter 'ShortCut'..1 on the device to stop execution.

2002-11-02 Thread Robert McKenzie
These are 4 grafitti characters. 1. the shortcut character is a script lower case l, drawn like a grafitti k on its side. 2. a dot 3. a dot 4. the digit 1 It is easiest to pop open the find dialog so that you can get visual feedback as you input them. -Original Message- From:

RE: Enter 'ShortCut'..1 on the device to stop execution.

2002-11-02 Thread Robert McKenzie
posts concerning it). Hope this helps, robert mckenzie, palmsource pdx. -Original Message- From: Martan [mailto:martan;cstone.net] Sent: Saturday, November 02, 2002 11:16 AM To: Palm Developer Forum Subject: Re: Enter 'ShortCut'..1 on the device to stop execution. Just to add- what

RE: newbee's app preferences aren't sticking

2002-11-01 Thread Robert McKenzie
Richard: I do not see anything obviously wrong with your code. I do note that it uses globals, so I hope that neither routine is called at a time when globals are not available. I would suggest that you get yourself a copy of a preference viewer program such as Preference Editor, PrefViewer,

RE: hiding the icon in launcher

2002-10-30 Thread Robert McKenzie
did you fully remove the old prc prior to putting a new one on the device with a new type? -Original Message- From: Colleen Dong [mailto:cadong92692;yahoo.com] Sent: Wednesday, October 30, 2002 3:00 PM To: Palm Developer Forum Subject: RE: hiding the icon in launcher tried that i

RE: The creator of AddressDB

2002-10-28 Thread Robert McKenzie
yes, also know as 'addr'. -Original Message- From: Vo Le Phu Quy [mailto:quivo_vn;yahoo.com] Sent: Monday, October 28, 2002 5:01 AM To: Palm Developer Forum Subject: The creator of AddressDB Is there anyone know the creator of AddressDB database? It is sysFileCAddress, isn't it? Thanks

RE: Palm Datebook questions

2002-10-24 Thread Robert McKenzie
The device's datebook record format (in DatebookDB) has not changed between OS1.0 through OS 4.x. The only possible changes in OS 5.0 and 5.1 are endinan-related, but being a bit woozy this morning, I am not sure that any of those exist or not. You should be prepared, however, for changes in

RE: Conduit - App Info block data error

2002-10-21 Thread Robert McKenzie
This sounds to me like a structure packing / alignment problem. If you defined your app info type in Codewarrior and allocated it with your device application, the packing size is 2. So, for example: typedef struct { UInt8 junk; UInt32 moreJunk } MyType; has size 6. (There is a SINGLE

RE: strange FindStrInStr behaviour..

2002-10-21 Thread Robert McKenzie
FindStrInStr only finds prefix strings. That is to say, it only searches the beginning of words. I.e., True: FindStrInStr(the rain in spain, spa, pos) False: FindStrInStr(the rain in spain, ain, pos) Additionally, the search string must be normalized. -bob mckenzie, palmsource pdx

RE: Form goes bye-bye after SelectDay

2002-10-11 Thread Robert McKenzie
You are overwriting form memory. In particular, DateToDOWDMFormat simply writes a, perhaps obnoxiously long, string to the Char* it is passed, without doing any bounds checking. In this case, it is label, which is a pointer to an area in the Form's memory which contains a copy of the label

RE: modal dialogs

2002-10-11 Thread Robert McKenzie
Your call sequence is just fine. I use it myself. If you are not going to do any custom drawing, you can omit the FrmDrawForm(), as FrmDoDialog will call that if the form is not yet drawn. -Original Message- From: David Eyler [mailto:[EMAIL PROTECTED]] Sent: Thursday, October 10, 2002

RE: modal dialogs

2002-10-11 Thread Robert McKenzie
FrmSetActiveForm does is to direct events to the appropriate event handler. -Original Message- From: Robert McKenzie Sent: Friday, October 11, 2002 10:34 AM To: Palm Developer Forum Subject: RE: modal dialogs Your call sequence is just fine. I use it myself. If you are not going to do any custom

RE: layered modal forms

2002-10-11 Thread Robert McKenzie
have you tried return false from update events? -Original Message- From: David Eyler [mailto:[EMAIL PROTECTED]] Sent: Friday, October 11, 2002 10:47 AM To: Palm Developer Forum Subject: layered modal forms Hi everyone, I've been really unable to solve this problem for over a month now

RE: MemMove Clarification

2002-10-09 Thread Robert McKenzie
MemMove is just like memmove. It differs from memcpy in that the source and destination are allowed to overlap. If they do, the source will not be unchanged after the move. If they are disjoint, then there is no difference between MemMove and memcpy: the source will not change. -bob

RE: LIST MEMEORY LEAKS

2002-10-08 Thread Robert McKenzie
Are you referring to LstSetListChoices? If so, that routine tells the list where its text strings are located, but does nothing to allocate them. When you say populated from database do you mean something of the following sort: Char** gppItems; void PopulateList(ListPtr pList, UInt16

RE: LIST MEMEORY LEAKS

2002-10-07 Thread Robert McKenzie
A frmCloseEvent may cause some memory to be released. In particular, if there is memory in a field, it will be released on frmCloseEvent (specifically FrmDeleteForm takes care of this). However in general, FormClose will NOT cause memory to be released. Indeed, the general rule of thumb is:

RE: Datebook import format question

2002-10-03 Thread Robert McKenzie
I believe that the desktop can import vCal files (.vca), though I am not sure if that is true of all versions of the desktop. Additionally the user can do this, but I am not sure if it can be done programmatically. I will ask around see. -bob mckenzie, palmsource pdx -Original

RE: Datebook import format question

2002-10-03 Thread Robert McKenzie
Matt- Okay, here's the scoop. VCal import is available only on version 4.0 or higher of the Palm Desktop. There is no programmatic method of importing via vCal files. The user has to do something (drag drop or use the import menu). The Macintosh install does still include the 'Holiday'

RE: How can we start HotSync to transfer data into palm ?

2002-10-01 Thread Robert McKenzie
Pressing the cradle's button shorts together two connections on the device's serial port. The device's hardware has been made to be sensitive to this electrical change. When it happens, the device's hardware causes a cpu interrupt. OS code on the device takes over from there. If you are

RE: Checkboxes won't uncheck

2002-09-28 Thread Robert McKenzie
Two possibilities pop to the top of my pointy head. 1. You are handling an event that the checkbox needs -- Pen Down and Control Enter need to be returned false from your form's event handler. 2. You have (most likely inadvertently) tied the boxes together (or with some other controls) into

RE: DatebookDb Problem

2002-09-27 Thread Robert McKenzie
To have datebook display a record that you add to DatebookDB it must be (1) Well-Formed, and (2) added in the right place. You appear to be doing all of these in the code you include. Possibly you didn't look in the right place? The record you add should appear on 27 September 1906 (years

RE: Datebook citizen

2002-09-25 Thread Robert McKenzie
David: 5.1 is NOT the 'next big OS release', that is why I said higher than OS 5.1. The change in format and accessibility is currently planned for what is currently slated to be called OS 6.0 (did I hedge that enough? :)). Plans are to let others add, delete, edit, and read datebook

RE: Being a good datebook citizen?

2002-09-24 Thread Robert McKenzie
Michael: I am the author of WeSync's wsCalendar application. This application lives quite incestuously with DatebookDB, so I have faced these challenges. The main problems with keeping another's database open while your app is open are (1) Find, (2) Alarms, and (3) Beaming. Datebook

RE: Hotsync errors

2002-09-17 Thread Robert McKenzie
For actual values of error codes, you should see the appropriate Developer Kit (for device codes, the SDK, for conduit codes, the CDK) and search their headers. Normally error codes are defined as an (error code base) + (error code offset). On the desktop, 0x8000 is #defined in SyncMgr.h as

RE: DmFindRecordByID() working time...

2002-09-10 Thread Robert McKenzie
An alternative approach is to keep, and maintain, a sort index. This is not so difficult -- indeed, seems like CS 101 to me :), but does cost CPU cycles to maintain, adds to the memory overhead of a database, and increases system complexity and footprint. When PalmOS was created, all these

RE: Regarding Palm Database (PDB)

2002-09-04 Thread Robert McKenzie
Syed: Dave is not quite correct here. While PalmOS is single threaded for applications, applications can be sub-launched in a variety of ways. Probably the most common is during a Find. Application A can be running and the user can tap on the find button. The entire find process runs

RE: Uniqueness of UniqueIDs?

2002-08-15 Thread Robert McKenzie
You should note that if you want to store your own IDs in the Palm record header that: (1) Current Palm record IDs are 24-bit, non-zero numbers, NOT 32 bit numbers. (2) This is subject to change. The only speed savings attained by puting IDs in the header is in finding records by IDs.

RE: error with reading database

2002-08-13 Thread Robert McKenzie
There is another potential problem with the code below, with will or will not manifest depending on the state of the database in question. That is to say, if the record contains deleted records (in particular records for which DmDeleteRecord has been called), then (1) those records will still

RE: using FldNewField in a DrawCustomTableItem

2002-08-08 Thread Robert McKenzie
to. Just some thoughts... -robert mckenzie, palmsource pdx -Original Message- From: Karmen Smails [mailto:[EMAIL PROTECTED]] Sent: Thursday, August 08, 2002 2:26 PM To: Palm Developer Forum Subject: using FldNewField in a DrawCustomTableItem Hi, I am trying to set rows in my table

RE: using FldNewField in a DrawCustomTableItem

2002-08-08 Thread Robert McKenzie
Karmen: No, you are not off track, but you are, in my opinion, trying to squeeze more out of the device than the OS is really willing to support. That is to say, with only 160 x 160 pells, dynamic movement left right by a few pells just wasn't worth supporting when the table structure was

RE: INetLib and HTTP POST

2002-07-17 Thread Robert McKenzie
As WeSync, we have successfully used HTTP POST with the INetLib on Palm VII and i705 devices. There are two known limitations that you may be running into. 1. Outbound binary POSTs are not supported. Your payload should be ASCII text. You can receive binary payloads in reply, however. 2. The

RE: can record-ids take any UInt32 value?

2002-06-14 Thread Robert McKenzie
No. The only valid values are 0x0001 through 0x00ff. Or, to phrase it another way, 0 is not allowed and the top (most significant) byte must be 0. -bob mckenzie, palmsource pdx. p.s. The way they are formed are discussed in the PalmOS Companion document. -Original Message-

RE: Drawing circles with thick borders

2002-06-13 Thread Robert McKenzie
If you are working on an older or black white device, try WinEraseRectangle. If you are working on a color or grayscale device (OS 3.5 or higher) try changing the Foreground color. -bob mckenzie, palmsource pdx -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Sent:

RE: Drawing circles with thick borders

2002-06-13 Thread Robert McKenzie
: Robert McKenzie [mailto:[EMAIL PROTECTED]] Sent: 13 June 2002 18:30 To: Palm Developer Forum Subject: RE: Drawing circles with thick borders If you are working on an older or black white device, try WinEraseRectangle. If you are working on a color or grayscale device (OS 3.5 or higher) try changing

RE: MenuHideItem causes menu to freeze

2002-06-07 Thread Robert McKenzie
This is a bug in OS 3.5. (I do not know if it was fixed with some of the 3.5.x updates, but it IS fixed in 4.0.) Menu Hide Item works just fine, but then if you tap on a menu with a hidden item, there is code in the menu manager that tries to compute based on the coordinates of the pen which

RE: Palm m500 and m505

2002-05-22 Thread Robert McKenzie
OK, here's the scoop: DmNewRecord, in summary, first allocates the chunk for the record (this doesn't need/use the index pointer), then calls DmAttachRecord to get it into the database (which does needuse the index pointer). DmAttachRecord was modified in OS 4.0 to check for the index pointer

RE: Palm DBs security

2002-05-21 Thread Robert McKenzie
Pablo: Joe is correct in his facts but wrong in his conclusion. The default apps are all in ROM. If you load an application with the same creator id and a version number greater than (or equal to) that of a ROM application, the launcher will launch the one in RAM, NOT the one in ROM. This

RE: Palm m500 and m505

2002-05-21 Thread Robert McKenzie
Mesuspects that your 3 character type (in the call to OpenOrCreateDB) is the problem. Perhaps if you pad it out to an explicit 32-bit value... -bob mckenzie, palmsource pdx -Original Message- From: Salma Saad [mailto:[EMAIL PROTECTED]] Sent: Tuesday, May 21, 2002 9:37 AM To: Palm

RE: more low-level access and deleted files

2002-05-14 Thread Robert McKenzie
The chunk has MemHandleFree (or its equivalent) called on it, which disposes of its entries in the memory manager data structures and thus allows the memory to be reused. In the record's header info (which the data manager keeps), the record's chunk entry is then set to 0 (NULL). Additionally,

RE: Assistance with timestamps in database

2002-04-25 Thread Robert McKenzie
Use TimGetSeconds() to get the number of seconds past 1 Jan 1904. Use TimSecondsToDateTime to convert to a DateTime structure Use TimeToAscii and DateToAscii to convert to strings in your favorite format. Concatenate. See Chapter 29, TimeManager, in the PalmOS Reference for more details. -bob

RE: DmResizeRecord - can i assume the rec's data is untuched ?

2002-04-22 Thread Robert McKenzie
DmResizeRecord works just like MemHandleResize (indeed, both share code under the covers). If it can, current versions of the PalmOS will grow the record right where it lives and the record's data will remain completely untouched. However it may also create a brand new chunk to hold the data

RE: Palm PIM Source Code

2002-04-22 Thread Robert McKenzie
Check the sdk license. But, in short, yes, I think you can use it as long as you attribute it. There is some language you will need to add to your app -- in the help screen methinks. Dave Fedor and/or those more knowledgable than I can be more explicit. Or you can search the archives. -bob

RE: DmGetNextDatabaseByTypeCreator

2002-04-19 Thread Robert McKenzie
just a few random thoughts. DmGetNextDatabaseByTypeCreator takes a search state parameter, which it uses to record the state of its search and hence implement the next part of its name. Of course, it needs to know when it is starting the search, so it also takes a new Search parameter. Two

RE: DmGetNextDatabaseByTypeCreator

2002-04-19 Thread Robert McKenzie
My attention is drawn to that 's28' type value. You have specified 24 bits of a 32 bit value. I wonder what your particular compiler puts into the other 8 bits. You might try using NULL (which will match all types) and seeing what happens. -bob mckenzie, palmsource pdx. -Original

RE: Local Exchange Problem

2002-04-18 Thread Robert McKenzie
You are sending the data in the wrong format. Datebook does not accept data in its own internal data format, only in VCARD format. This because it is trying to be a good software citizen and use public standards for data exchange and not require other software to be aware of its internal data

RE: Urgent - Category problem

2002-04-11 Thread Robert McKenzie
yep, that covers it. I would bet serious money (maybe even five cents) that your problem lies elsewhere. The code you use to change the category looks airtight and independent investigation says that the records are in good shape after you do it. But when you go to display things, they are

RE: Urgent - Category problem

2002-04-10 Thread Robert McKenzie
You got me stumped. All seems well with this code. I do have a couple of suggestions, however. Can you exit the app after the update but prior to the display and use a database examination tool to walk the database and independently examine the state of its records after the update? In

RE: Urgent - Category problem

2002-04-10 Thread Robert McKenzie
It sounds like some data manager internals are getting clobbered. The chunk id is returnable by DmRecordInfo as the last parameter. DmQueryNextInCategory will return NULL (0) if there is no next record. I trust your loop looks for this and terminates in this case. You might call DmGetLastErr

RE: Handles and Pointers, oh my!

2002-04-05 Thread Robert McKenzie
It depends on where you got the memory that the pointer references. If it was originally from a handle, then MemPtrRecoverHandle (or some such similar function, I am shooting from memory here) will do your business for you. If it was NOT originally from a handle, then you cannot get a handle

RE: Reading from a Field

2002-04-05 Thread Robert McKenzie
Just a random thought here. DmNewRecord creates a new record and, possibly, changes the location (indexes) of existing records. Perhaps your main form is looking at the wrong record? -bob mckenzie, palmsource pdx -Original Message- From: Kathleen Aiello [mailto:[EMAIL PROTECTED]]

RE: Reading from a Field

2002-04-05 Thread Robert McKenzie
OK, second random thought. You clearly are describing one more memory location (and copy) than you need. That is, when you do the DmNewRecord, that reserves memory (and returns a handle to it), you can than MemHandleLock it and copy your field stuff (with DmWrite or DmStrCopy, or...) to it

RE: Syncing Address Book

2002-04-04 Thread Robert McKenzie
There is no api to do what you want. I would say that the easiest way to do this is to: (1) Replace the address book device app with one you write yourself, and (2) Replace the address book conduit with one you write yourself. (1) is needed to create a gui and/or method of specifying which

RE: Palm PDB Database Help

2002-04-02 Thread Robert McKenzie
Kade: You have a basic C misconception here. A DB record should (can only) contain that actual strings themselves, NOT pointers to them. -bob mckenzie, palmsource pdx. -Original Message- From: Kade P. Cole [mailto:[EMAIL PROTECTED]] Sent: Tuesday, April 02, 2002 7:35 AM To: Palm

RE: Palm PDB Database Help

2002-04-02 Thread Robert McKenzie
. The struct that I am using to access the DB record is the one with the pointers in it. Kade On 4/2/02 9:51 AM, Robert McKenzie [EMAIL PROTECTED] wrote: Kade: You have a basic C misconception here. A DB record should (can only) contain that actual strings themselves, NOT pointers to them

RE: MemoDB Structure

2002-03-22 Thread Robert McKenzie
True enough, Joe, but hardly informative. A MemoDB record is the simplest of the built-in pim applications. Each record is simply a null-terminated string. -bob mckenzie, palmsource pdx -Original Message- From: Joe [mailto:[EMAIL PROTECTED]] Sent: Friday, March 22, 2002 11:59 AM To:

RE: Application wake app

2002-03-19 Thread Robert McKenzie
No. -bob mckenzie, palmsource pdx -Original Message- From: Anton [mailto:[EMAIL PROTECTED]] Sent: Tuesday, March 19, 2002 6:26 AM To: Palm Developer Forum Subject: Re: Application wake app No, I mean the following situtation: User do something on his desktop computer and then clicks

RE: Desktop HotSync Program

2002-03-15 Thread Robert McKenzie
It is so hard to find out how to initiate a HotSync from the desktop because it is so hard to do so. It is so hard to do so because the existing architecture was set up presupposing that it will only be initiated from the device. Let me summarize the salient features of the existing

RE: Tables Databases

2002-03-13 Thread Robert McKenzie
I have done work with tables. And I also don't like the passing pointers to records that you unlock. Most unstable. Not recommended. You are setting the item style to a labelTableItem. Label table items do NOT have custom draw routines. The table's draw routine assumes that the pointer is

RE: application crashing on 1st run after sync...

2002-03-11 Thread Robert McKenzie
From the evidence you give, I would suspect that you are doing something wrong in your handling of both the reset and sync notification launch codes. Perhaps opening a database exclusively and not closing it again? A good practical way to test this hypothesis is to create a custom build of your

RE: Palm symbol set

2002-03-06 Thread Robert McKenzie
from the latest SDK. Librarian Severices Cheerfully Furnished By Robert McKenzie, PalmSource Portland ;) -Original Message- From: Adrian Pfisterer [mailto:[EMAIL PROTECTED]] Sent: Wednesday, March 06, 2002 7:18 AM To: Palm Developer Forum Subject: Re: Palm symbol set My question has

RE: Memory Manager NULL Handle Error

2002-03-06 Thread Robert McKenzie
Ravi: There are three, logically separate, convenient sources of memory for a program on a PalmOS device: The stack (function locals), the dynamic heap (MemPtrNew and MemHandleNew), and the storage heap (DmNewRecord, DmNewHandle). The stack and dynamic heap are small, particularly on older

RE: Pack/Unpack (was: palm-dev-forum digest: February 24, 2002)

2002-03-04 Thread Robert McKenzie
Shailesh: As used by the built-in apps, Joe's answer is not quite correct. When unpacking, the built-in applications do not actually copy or move any data. Instead they lock the record containing the packed data, and fill in pointers to it in the unpacked structure. These pointers can then be

RE: ctlSelect v/s PopSelectEvent

2002-02-27 Thread Robert McKenzie
Dinesh- An alternative explanation is that you are returning handled==true on ALL control select events. The expected sequence of events when the user taps on a popup trigger are: 1. penDown (user presses on trigger) 2. ctlEnter (spawned by CtlHandleEvent when it gets penDown) 3.

RE: PrefGetAppPreferences beginner's question

2002-02-27 Thread Robert McKenzie
the final argument to PrefGetAppPreferences controls whether those preferences are backed up by the system to the desktop (true) or not (false). The current in current preferences is a reference to their normal usage by applications (most especially the PIM apps). In reality, preferences is

RE: PrefGetAppPreferences beginner's question

2002-02-27 Thread Robert McKenzie
with argument false (no backup). Correct? Robert McKenzie schrieb: the final argument to PrefGetAppPreferences controls whether those preferences are backed up by the system to the desktop (true) or not (false). --- snap -- For information on using the Palm Developer Forums

RE: PalmSim glitch

2002-02-19 Thread Robert McKenzie
Terry- A technique that WILL work is to have a global (or two, or three) associated with the form with which you remember your allocation(s) when you make them and then use to free the memory on form close. Such as: static void MyFormInit(void) { gPointer = NULL; gPointer =

RE: PalmSim glitch

2002-02-19 Thread Robert McKenzie
There are various little nooks and crannies in PalmOS that you can use to save things in. Most of them just save a UInt32. I would consider allocating a chunk of memory to hold all your lists and info and stuff, then storing the address of that chunk in your particular choice of nook and/or

RE: How to find the PopupType * given the popup trigger's id?

2002-02-18 Thread Robert McKenzie
Methinks you're trying to hold back the tide here. Whether it was a good decision or not, PalmOS simply doesn't consider a FrmPopupType to be an exposed-to-the-programmer object. It just simply is the program's responsibility to duplicate the connection between a trigger and its list. On the

RE: How to find the PopupType * given the popup trigger's id?

2002-02-18 Thread Robert McKenzie
trigger's id? Robert McKenzie wrote: Methinks you're trying to hold back the tide here. Whether it was a good decision or not, PalmOS simply doesn't consider a FrmPopupType to be an exposed-to-the-programmer object. But it is exposed to the programmer; what other purpose do the SDK docs serve

RE: Table resources

2002-02-14 Thread Robert McKenzie
You are setting all of your rows to be UNusable by the third line inside your for loop! -bob mckenzie, palmsource pdx -Original Message- From: Scott Mebberson [mailto:[EMAIL PROTECTED]] Sent: Wednesday, February 13, 2002 8:21 PM To: Palm Developer Forum Subject: Table resources I

RE: lists and dynamic runtime lists

2002-02-13 Thread Robert McKenzie
A list draw callback function can get its data to draw from absolutely anywhere. In your case, all you need is a correspondence between the list index and the database record number. If the correspondence is not the identity correspondence, it is pretty simple to allocate and save (say in a

RE: Palm OS 5 and built-in apps database access

2002-02-12 Thread Robert McKenzie
As far as I know, the built in apps will not change with the first spin of OS 5. I have heard, however, that they WILL become native (and thus will change) **REAL SOON NOW**. As to what the story will be with respect to access, I don't know. -bob mckenzie, palmsource pdx -Original

RE: Table problem (compiler error)

2002-02-06 Thread Robert McKenzie
3.5.2. Does this mean that I cannot use this function? Thanks for the reply BTW... Robert McKenzie [EMAIL PROTECTED] wrote in message news:75794@palm-dev-forum... You are directly accessing a system internal (pt-items). This is a big naughty. I guarantee you that if you do this your code

RE: Table problem (compiler error)

2002-02-06 Thread Robert McKenzie
Oops. Here is the definitive word. Thanks, Jim! -bob mckenzie, palmsource pdx -Original Message- From: Jim Schram [mailto:[EMAIL PROTECTED]] Sent: Wednesday, February 06, 2002 1:23 AM To: Palm Developer Forum Subject: Re: Table problem (compiler error) At 5:18 PM +0200 2002/02/05,

RE: Table problem (compiler error)

2002-02-05 Thread Robert McKenzie
You are directly accessing a system internal (pt-items). This is a big naughty. I guarantee you that if you do this your code will not run on the next Palm OS. Please use the published APIs. In particular use: Int16 ColumnCount = TblGetNumberofColumns(pT); -bob mckenzie, palm portland.

RE: beaming and multi-segmented apps

2002-02-05 Thread Robert McKenzie
Well, not really. It just is. (No doubt it has to do with memory space issues, but...) I can, however, give you guidelines about segmenting that will work. The fail-safe guideline is: In response to a launch of your application, you may not, directly or indirectly, call any function outside

RE: i705 wireless access

2002-02-04 Thread Robert McKenzie
OS-wise, the i705 looks much like a Palm VII. In particular, it supports the InetLib for communication through its radio link. The Push technology is handled by the OS invisibly to the device applications. If something is pushed to the device, it is caught by the OS and turned over to the

RE: i705 wireless access

2002-02-04 Thread Robert McKenzie
On a VII, I would suspect that MultiMail just doesn't get its push stuff. -bob mckenzie, palm portland -Original Message- From: Brian Smith [mailto:[EMAIL PROTECTED]] Sent: Monday, February 04, 2002 10:25 AM To: Palm Developer Forum Subject: RE: i705 wireless access On Mon, 4 Feb

RE: DmGetRecord failing

2002-02-04 Thread Robert McKenzie
Just a guess here, but I would suspect that you have a perfectly valid (non-deleted) record in your database without any handle associated with it (i.e., with a NULL handle). How can this happen, I hear you ask? Simple -- Just use DmAttachRecord with a NULL new handle! There **may** be other

RE: !!Urgent - Global Find Problem

2002-01-30 Thread Robert McKenzie
There are two restrictions to code that executes in response to a find: (1) Globals are not available. (2) All code must be in Segment 1. You should additionally note that the find may run when your application is NOT running (then (1) really is enforced), OR when your app IS running (then (1)

RE: Pointers, arrays, and DmStrCopy

2002-01-29 Thread Robert McKenzie
This is a basic C programming question. Let me put on my CS101 hat and take a swing at it. char name[1]; is completely different from CharPtr name; and char* name. The later two are the same (assuming that CharPtr is typedef'd as char *, which earlier versions of Palm header files did). char

RE: Continuous Fatal Excpt on Install, fine on Pose others...

2002-01-29 Thread Robert McKenzie
To debug an app that fatal errors on install, you must identify the code that is executing on install and make it run -- in the same state -- under the debugger when the debugger loads the application. Normally this is code that runs in response to sync notification launch code. My standard

RE: How to Access the Control ID

2002-01-28 Thread Robert McKenzie
The control repeat event itself contains a (user defined) controlID field, hence : switch (event-data.ctlRepeat.controlID) { case MainKeyboardBackspaceRepeating: ...do something case MainKeyboardTabRepeating: ... ... is, and always has been, the right way to do this. Of course, it

RE: Trouble with selector triggers

2002-01-04 Thread Robert McKenzie
Todd: Dave's original comment still holds with this code. True you allocate memory with MemPtrNew and store a pointer to the newly allocated memory in startTime and endTime. But then you immediately set the startTime and endTime pointers to point to the current labels -- effectively rendering

RE: list in table cells question

2001-12-06 Thread Robert McKenzie
Bob's handy guide to rolling your own popup triggers in tables: I Initialization. You must initialize the table properly. Best is to set the item style as a customTableItem, set the item int to hold the selection (or -1 for no selection), set the item pointer to point to your list, and set a

RE: DmResizeRecord - strange error

2001-12-04 Thread Robert McKenzie
Philip: DmGetRecord does NOT lock the handle. Hence the MemHandleUnlock(handle) suggestion will result in a chunk not locked error. -bob mckenzie, palm pdx -Original Message- From: Philip Sheard [mailto:[EMAIL PROTECTED]] Sent: Tuesday, December 04, 2001 1:02 AM To: Palm Developer

RE: DmResizeRecord - strange error

2001-12-04 Thread Robert McKenzie
global, I was constantly modifying the first record. I found this by looking in memory and seeing it. I wasn't paying enough attention to it yesterday to catch that. Dan Robert McKenzie [EMAIL PROTECTED] wrote in message news:70063@palm-dev-forum... Dan: I see no errors in your pseudo code

  1   2   >