palm-os-sdk/PalmOne/Samples/TungstenT5FlowControl/Src/Common.c

71 lines
1.6 KiB
C

/***********************************************************************
*
* Copyright (c) 2002 Palm Computing, Inc. or its subsidiaries.
* All rights reserved.
*
***********************************************************************/
/***********************************************************************
*
* File:
* Common.c
*
* Description:
* Some useful macros and functions
*
* Version 1.0 - Initial Revision (03/04/03)
*
***********************************************************************/
#include <PalmOS.h>
#include "Common.h"
/***********************************************************************
*
* FUNCTION: SetFieldTextFromStr
*
* DESCRIPTION: Set a field text.
*
* PARAMETERS: fieldP - Pointer to a field
* string - String to copy to the field
* redraw - If true, forces a redraw
*
* RETURNED: Error Code.
*
***********************************************************************/
Err SetFieldTextFromStr(FieldType *fieldP, Char *string, Boolean redraw)
{
Err err = errNone;
MemHandle textHandle = FldGetTextHandle(fieldP);
if(textHandle)
{
FldSetTextHandle(fieldP, NULL);
err = MemHandleResize(textHandle, StrLen(string)+1);
if(err != errNone) {
FldSetTextHandle(fieldP, textHandle);
goto Done;
}
}
else
{
textHandle = MemHandleNew(StrLen(string)+1);
if(!textHandle) {
err = memErrNotEnoughSpace;
goto Done;
}
}
StrCopy((Char*)MemHandleLock(textHandle), string);
MemHandleUnlock(textHandle);
FldSetTextHandle(fieldP, textHandle);
if(redraw)
FldDrawField(fieldP);
Done:
return err;
}