/*++ Copyright (c) 1996 Microsoft Corporation Module Name: faxcpl.h Abstract: Header file for fax configuration DLL Environment: Windows NT fax configuration DLL Revision History: 02/27/96 -davidx- Created it. dd-mm-yy -author- description --*/ #ifndef _FAXCPL_H_ #define _FAXCPL_H_ #include #include #include #include "faxcfg.h" #include "faxutil.h" #include "faxreg.h" #include "faxcfgrs.h" #include "faxhelp.h" #define FAX_DRIVER_NAME TEXT("Windows NT Fax Driver") #define CLIENT_OPTIONS_PAGE 0 #define CLIENT_COVERPG_PAGE 1 #define STATUS_OPTIONS_PAGE 2 #define ADVNCD_OPTIONS_PAGE 3 #define PATH_SEPARATOR '\\' #define NUL 0 // // Cover page filename extension and link filename extension // #define CP_FILENAME_EXT TEXT(".cov") #define LNK_FILENAME_EXT TEXT(".lnk") #define MAX_FILENAME_EXT 4 // // Data structure for representing a list of cover pages: // the first nServerDirs paths refer to the server cover page directory // remaining paths contain user cover page directories // #define MAX_COVERPAGE_DIRS 8 typedef struct { BOOL serverCP; INT nDirs; LPTSTR pDirPath[MAX_COVERPAGE_DIRS]; } CPDATA, *PCPDATA; // // Flag bits attached to each cover page in a listbox // #define CPFLAG_DIRINDEX 0x00FF #define CPFLAG_LINK 0x0100 #define CPACTION_BROWSE 0 #define CPACTION_OPEN 1 #define CPACTION_NEW 2 #define CPACTION_REMOVE 3 #define EQUAL_STRING 0 #define FILENAME_EXT '.' #define MAX_STRING_LEN MAX_PATH #define MAX_MESSAGE_LEN 512 //#define MemAlloc(size) ((PVOID) LocalAlloc(LMEM_FIXED, (size))) #define MemAllocZ(size) ((PVOID) MemAlloc((size))) //#define MemFree(ptr) { if (ptr) LocalFree((HLOCAL) (ptr)); } #define AllocStringZ(cch) MemAllocZ(sizeof(TCHAR) * (cch)) #define AllocStringZ(cch) MemAllocZ(sizeof(TCHAR) * (cch)) #define SizeOfString(p) ((_tcslen(p) + 1) * sizeof(TCHAR)) #define IsNulChar(c) ((c) == NUL) #define IsEmptyString(p) ((p)[0] == NUL) // // globals // extern HINSTANCE ghInstance; static ULONG_PTR userInfoHelpIDs[] = { IDC_SENDER_NAME, IDH_USERINFO_FULL_NAME, IDC_SENDER_FAX_NUMBER, IDH_USERINFO_FAX_NUMBER, IDC_SENDER_MAILBOX, IDH_USERINFO_EMAIL_ADDRESS, IDC_SENDER_COMPANY, IDH_USERINFO_COMPANY, IDC_SENDER_ADDRESS, IDH_USERINFO_ADDRESS, IDC_SENDER_TITLE, IDH_USERINFO_TITLE, IDC_SENDER_DEPT, IDH_USERINFO_DEPARTMENT, IDC_SENDER_OFFICE_LOC, IDH_USERINFO_OFFICE_LOCATION, IDC_SENDER_OFFICE_TL, IDH_USERINFO_WORK_PHONE, IDC_SENDER_HOME_TL, IDH_USERINFO_HOME_PHONE, IDC_SENDER_BILLING_CODE, IDH_USERINFO_BILLING_CODE, IDCSTATIC_FULLNAME, IDH_USERINFO_FULL_NAME, IDCSTATIC_FAX_NUMBER_GROUP, IDH_USERINFO_RETURN_FAX_GRP, IDCSTATIC_COUNTRY, IDH_USERINFO_RETURN_FAX_GRP, IDCSTATIC_FAX_NUMBER, IDH_USERINFO_FAX_NUMBER, IDCSTATIC_MAILBOX, IDH_USERINFO_EMAIL_ADDRESS, IDCSTATIC_TITLE, IDH_USERINFO_TITLE, IDCSTATIC_COMPANY, IDH_USERINFO_COMPANY, IDCSTATIC_OFFICE, IDH_USERINFO_OFFICE_LOCATION, IDCSTATIC_DEPT, IDH_USERINFO_DEPARTMENT, IDCSTATIC_HOME_PHONE, IDH_USERINFO_HOME_PHONE, IDCSTATIC_WORK_PHONE, IDH_USERINFO_WORK_PHONE, IDCSTATIC_ADDRESS, IDH_USERINFO_ADDRESS, IDCSTATIC_FAX_NUMBER_GROUP, IDH_USERINFO_RETURN_FAX_GRP, IDCSTATIC_USERINFO_ICON, IDH_INACTIVE, IDCSTATIC_USERINFO, IDH_INACTIVE, IDCSTATIC_BILLING_CODE, IDH_USERINFO_BILLING_CODE, 0, 0 }; static ULONG_PTR statusMonitorHelpIDs[] = { IDC_STATUS_TASKBAR, IDH_STATUS_DISPLAY_ON_TASKBAR, IDC_STATUS_ONTOP, IDH_STATUS_ALWAYS_ON_TOP, IDC_STATUS_VISUAL, IDH_STATUS_VISUAL_NOTIFICATION, IDC_STATUS_SOUND, IDH_STATUS_SOUND_NOTIFICATION, IDC_STATUS_MANUAL, IDH_STATUS_ENABLE_MANUAL_ANSWER, IDCSTATIC_STATUS_OPTIONS, IDH_INACTIVE, IDCSTATIC_STATUS_ICON, IDH_INACTIVE, IDC_DISPLAY_GRP, IDH_INACTIVE, IDC_ARRIVE_GRP, IDH_INACTIVE, 0, 0 }; static ULONG_PTR clientCoverpgHelpIDs[] = { IDC_COVERPG_LIST, IDH_COVERPAGE_PERSONAL_LIST, IDC_COVERPG_ADD, IDH_COVERPAGE_ADD, IDC_COVERPG_NEW, IDH_COVERPAGE_NEW, IDC_COVERPG_OPEN, IDH_COVERPAGE_OPEN, IDC_COVERPG_REMOVE, IDH_COVERPAGE_REMOVE, IDCSTATIC_COVERPAGE_ICON, IDH_INACTIVE, IDCSTATIC_COVER_PAGE, IDH_INACTIVE, IDCSTATIC_COVERPG_DESCR, IDH_INACTIVE, 0, 0 }; static ULONG_PTR advancedHelpIDs[] = { IDCSTATIC_ADVANCED_ICON, IDH_INACTIVE, IDCSTATIC_ADVANCED_OPTIONS, IDH_INACTIVE, IDCSTATIC_MMC_DESC, IDH_INACTIVE, IDC_LAUNCH_MMC, IDH_LAUNCH_FAX_SERVICE_MANAGEMENT, IDCSTATIC_LAUNCH_MMC, IDH_INACTIVE, IDC_LAUNCH_MMC_HELP, IDH_HELP_BUTTON, IDCSTATIC_LAUNCH_MMC_HELP, IDH_INACTIVE, IDC_ADD_PRINTER, IDH_ADD_FAX_PRINTER, IDCSTATIC_ADD_PRINTER, IDH_INACTIVE, 0, 0 }; static PULONG_PTR arrayHelpIDs[4] = { userInfoHelpIDs, clientCoverpgHelpIDs, statusMonitorHelpIDs, advancedHelpIDs }; // // prototypes // BOOL LoadWinfax(); VOID UnloadWinfax(); VOID SetChangedFlag( HWND hDlg, BOOL changed ); BOOL HandleHelpPopup( HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam, int index ); // // Generate a list of available user cover pages // VOID InitCoverPageList( PCPDATA pCPInfo, HWND hDlg ); // // Perform various action to manage the list of cover pages // VOID ManageCoverPageList( HWND hDlg, PCPDATA pCPInfo, HWND hwndList, INT action ); // // Enable/disable buttons for manage cover page files // VOID UpdateCoverPageControls( HWND hDlg ); // // Allocate memory to hold cover page information // PCPDATA AllocCoverPageInfo(); // // Free up memory used for cover page information // VOID FreeCoverPageInfo( PCPDATA pCPInfo ); INT GetSelectedCoverPage( PCPDATA pCPInfo, HWND hwndList, LPTSTR pBuffer ); // // Display an error message dialog // INT DisplayMessageDialog( HWND hwndParent, UINT type, INT formatStrId, INT titleStrId, ... ); LPTSTR MakeQuotedParameterString( LPTSTR pInputStr ); // // Find the cover page editor executable filename // LPTSTR GetCoverPageEditor( VOID ); #endif