📄 calltoda.h
字号:
/* CallToDA.h * * by TERADA, Koichi * email: kterada@iname.com * web: http://hello.to/kterada */#ifndef __CALLTODA_H__#define __CALLTODA_H__#include "AddressDB.h"#define _toLower(c) (((c) >= 'A' && (c) <= 'Z') ? (c) + ('a' - 'A') : (c))#define chrIsHardKey(c) ((((c) >= hardKeyMin) && ((c) <= hardKeyMax)) || ((c) == calcChr))typedef unsigned char uchar;#define MAX_TEXT 60#define MAX_DISPLAY 26#define MAX_ADDR_LIST 24#define MAX_BTN_TXT 9#define mainFormLeft 10#define mainFormWidth 140#define mainFormTop 20#define mainFormHeight 95#define FrameWidth 2#define INDICATE_TOP 33#define INDICATE_LEFT 5#define INDICATE_HEIGHT 6#define INDICATE_WIDTH 15#define CallToAppID 'DACT'#define mainFormTitle "Call Lookup DA"#define optionFormTitle "Options"#define moreOptionFormTitle "Search Options"enum { MAIN_FORM, OPTION_FORM, MORE_FORM}; enum { LANG_US, LANG_JP, LANG_EU};enum { LAUNCH_ADDR_ORG, LAUNCH_ADDR_J, LAUNCH_ADDR_PLUS, LAUNCH_SUPERNAMES, LAUNCH_TEALPHONE};enum { INSERT_NAME, INSERT_NUMBER, INSERT_NAME_NUMBER, INSERT_NAME_COMPANY, INSERT_NAME_TITLE, INSERT_NAME_NUMBER_COMPANY, INSERT_NAME_NUMBER_TITLE, INSERT_COMPANY, INSERT_TITLE, INSERT_COMPANY_TITLE, INSERT_NUMBER_COMPANY, INSERT_NUMBER_TITLE, INSERT_NAME_COMPANY_TITLE, INSERT_NUMBER_COMPANY_TITLE, INSERT_NAME_NUMBER_COMPANY_TITLE};// bit 3: name// bit 2: number// bit 1: company// bit 0: title#define BITS_INSERT_NAME 0x8#define BITS_INSERT_NUMBER 0x4#define BITS_INSERT_NAME_NUMBER 0xc#define BITS_INSERT_NAME_COMPANY 0xa#define BITS_INSERT_NAME_TITLE 0x9#define BITS_INSERT_NAME_NUMBER_COMPANY 0xe#define BITS_INSERT_NAME_NUMBER_TITLE 0xd#define BITS_INSERT_COMPANY 0x2#define BITS_INSERT_TITLE 0x1#define BITS_INSERT_COMPANY_TITLE 0x3#define BITS_INSERT_NUMBER_COMPANY 0x6#define BITS_INSERT_NUMBER_TITLE 0x5#define BITS_INSERT_NAME_COMPANY_TITLE 0xb#define BITS_INSERT_NUMBER_COMPANY_TITLE 0x7#define BITS_INSERT_NAME_NUMBER_COMPANY_TITLE 0xftypedef struct { SWord lastX, lastY; Boolean includeLastname; Boolean swapFirstLast; Boolean omitComma; Boolean pasteType;// Boolean pasteCompany;// Boolean pasteTitle; Boolean ignoreCase; Boolean findNameCompany; Boolean findPhones; Boolean findAddress; Boolean findCustoms; Boolean findNote;// Boolean altStrstri; SWord language; SWord launchAppl; SWord insertStrings;} CallToPreferenceType;#define CallToPrefVersionNum 16typedef struct parameter { Word formLeft; Word formWidth; Word formTop; Word formHeight; FieldPtr fieldptr; Word start; Word end; // Word updatedEnd; Char src[MAX_TEXT]; Char buf1[MAX_TEXT]; Char buf2[MAX_TEXT]; Char mode; Word modeNum; Word optionControl; Boolean moving; Boolean insert; SWord fromX, fromY; CallToPreferenceType p; Char availPhone[numPhoneLabels]; DmOpenRef dbP; Word index; UInt indexList[MAX_ADDR_LIST]; UInt indexNum; Boolean launchAddrAppl; Char indicateStatus; Char searchAgain; Boolean noInsertField; Boolean disableInsert; WinHandle rootWindow; Boolean pasteName; Boolean pasteNumber; Boolean pasteCompany; Boolean pasteTitle; Char *ptrCompanyTitle; Boolean availPhoneText;} Param;/* Define for AddressDB access */#define Address_AppID sysFileCAddress // 'addr'#define Address_Type 'DATA'#define Address_AppID_AddressJ 'adrJ' // AddressJ#define Address_AppID_AddressPlus 'addp' // Address+#define Address_AppID_SuperNames 'SNms' // SuperNames#define Address_AppID_TealPhone 'TlPh' // TealPhone#define Address_AppName_AddressJ "AddressJ"#define Address_AppName_AddressPlus "Address+"#define Address_AppName_SuperNames "SuperNames"#define Address_AppName_TealPhone "TealPhone"typedef struct { AddrOptionsType options; // Display by company or by name AddrDBRecordFlags flags; unsigned char companyFieldOffset; // Offset from firstField char firstField;} AddrPackedDBRecord;#define BitAtPosition(pos) ((ULong)1 << (pos))#define GetBitMacro(bitfield, index) ((bitfield) & BitAtPosition(index))#define SetBitMacro(bitfield, index) ((bitfield) |= BitAtPosition(index))#define RemoveBitMacro(bitfield, index) ((bitfield) &= ~BitAtPosition(index))typedef struct { AddrOptionsType options; // Display by company or by name AddrDBRecordFlags flags; unsigned char companyFieldOffset; // Offset from firstField} AddrPackedDBRecordHeading;/* Functions prototyping */extern void displayNextIndicate( UInt index );extern void initIndicate( void );/* CallToDA_db.c */extern Word FindAddrDB( Param * );extern Boolean FindAddrList( Param * );/* CallToDA_txt.c */extern void putSelectedText(CharPtr, Param *);extern Word getSelectedText(char *, Param *);extern void reformatPastableText( CharPtr p, CharPtr buttonLabel, Param *param );extern Char *StrNCopy_fromRsrc( Char *dest, Word num, ULong type, Int id );/* CallToDA_sys.c */extern void LoadFromPrefs( Param * );extern void SaveToPrefs( Param * );extern void launchAddress( Word rec, ULong creator, Char *applName );/* End of Header */#endif/* $Revision: 1.4 $ * * $Log: CallToDA.h,v $ * Revision 1.4 2001/04/28 16:53:53 kterada * add new option * * Revision 1.3 2001/02/23 16:16:36 kterada * port to gcc * * Revision 1.2 2001/01/19 17:24:50 kterada * Update for OS3.5 support * * Revision 1.1 2001/01/19 16:12:07 kterada * add all items to repository * * Revision 1.8 2000/12/24 08:27:34 kterada * fix a bug about launch other Address * * Revision 1.7 2000/12/20 16:52:13 kterada * Add intl. comparation * Add launch other application * * Revision 1.6 2000/10/27 16:51:25 kterada * add noInsertField parameter * * Revision 1.5 2000/08/22 15:57:18 kterada * Handle kanji 1st-byte * * Revision 1.4 2000/08/08 15:23:35 kterada * debug for two or more same category phone * * Revision 1.3 2000/08/07 17:38:54 kterada * update for two or more same category * * Revision 1.2 2000/07/04 16:38:35 kterada * *** empty log message *** * */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -