|
|
/*===========================================================================*/ /* Copyright (c) 1987 - 1988, Future Soft Engineering, Inc. */ /* Houston, Texas */ /*===========================================================================*/
#define NOLSTRING TRUE /* jtf win3 mod */
#include <windows.h>
#include "port1632.h"
#include "dcrc.h"
#include "dynacomm.h"
#include "fileopen.h"
#include "task.h"
#include <direct.h> /* adding this for getcwd prototype - sdj */
/*---------------------------------------------------------------------------*/ /* File Document Data Routines [mbb] */ /*---------------------------------------------------------------------------*/
VOID getFileDocData(FILEDOCTYPE fileDocType, BYTE *filePath, BYTE *fileName, BYTE *fileExt, BYTE *title) { if(filePath != NULL) strcpy(filePath, fileDocData[fileDocType].filePath); if(fileName != NULL) strcpy(fileName, fileDocData[fileDocType].fileName); if(fileExt != NULL) strcpy(fileExt, fileDocData[fileDocType].fileExt); if(title != NULL) strcpy(title, fileDocData[fileDocType].title); }
VOID setFileDocData(FILEDOCTYPE fileDocType, BYTE *filePath, BYTE *fileName, BYTE *fileExt, BYTE *title) { if(filePath != NULL) strcpy(fileDocData[fileDocType].filePath, filePath); if(fileName != NULL) strcpy(fileDocData[fileDocType].fileName, fileName); if(fileExt != NULL) strcpy(fileDocData[fileDocType].fileExt, fileExt); if(title != NULL) { if(strlen(title) >= FO_MAXPATHLENGTH) title[FO_MAXPATHLENGTH-1] = 0; strcpy(fileDocData[fileDocType].title, title); } }
VOID getDataPath(FILEDOCTYPE fileDocType, BYTE *filePath, BYTE *fileName) { BYTE savePath[FO_MAXPATHLENGTH];
if(setPath(fileDocData[fileDocType].filePath, FALSE, savePath)) { setFilePath(fileName); #ifdef ORGCODE
_getcwd(filePath); #else
_getcwd(filePath,PATHLEN); #endif
setPath(savePath, FALSE, NULL); } }
/*---------------------------------------------------------------------------*/ /* dbFileType() - [mbb] */ /*---------------------------------------------------------------------------*/
BOOL APIENTRY dbFileType(HWND hDlg, UINT message, WPARAM wParam, LONG lParam) //HWND hDlg;
//UINT message;
//WPARAM wParam;
//LONG lParam;
{ updateTimer();
switch(message) { case WM_INITDIALOG: initDlgPos(hDlg);
switch(saveFileType) { case FILE_NDX_SETTINGS: wParam = ITMSETTINGS; break; } return(TRUE);
case WM_COMMAND: switch(GET_WM_COMMAND_ID(wParam, lParam)) { case IDOK: switch(whichGrpButton(hDlg, ITMSETTINGS, ITMMEMO)) { case ITMSETTINGS: wParam = FILE_NDX_SETTINGS; break; } break;
case IDCANCEL: wParam = FALSE; break;
default: return(TRUE); } break;
default: return(FALSE); }
EndDialog(hDlg, wParam); return(TRUE); }
/*---------------------------------------------------------------------------*/ /* doFileNew() - [mbb] */ /*---------------------------------------------------------------------------*/
VOID doFileNew() { INT fileType; BYTE szTitle[MINRESSTR];
fileType = FILE_NDX_SETTINGS;
if(childZoomStatus(0x0001, 0)) childZoomStatus(0, 0x8000);
LoadString(hInst, STR_TERMINAL, szTitle, MINRESSTR); termFile(fileDocData[fileType].filePath, NULL_STR, fileDocData[fileType].fileExt, (*fileDocData[fileType].title == 0) ? szTitle : fileDocData[fileType].title, (*fileDocData[fileType].title == 0) ? TF_DEFTITLE : 0); }
/*---------------------------------------------------------------------------*/ /* doFileOpen() - [mbb] */ /*---------------------------------------------------------------------------*/
INT_PTR APIENTRY FO_FileOpenType(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { INT fileType;
switch(message) { case WM_INITDIALOG: switch(pFOData->nType = saveFileType) { case FILE_NDX_SETTINGS: wParam = FO_IDSETTINGS; break; } break;
case WM_COMMAND: switch(GET_WM_COMMAND_ID(wParam, lParam)) { case FO_IDSETTINGS: fileType = FILE_NDX_SETTINGS; break; default: return(TRUE); } if(pFOData->nType == fileType) return(TRUE); pFOData->nType = fileType; break;
case WM_NULL: if(wParam) saveFileType = pFOData->nType; return(FALSE); }
return(FALSE); }
VOID doFileOpen() { BYTE filePath[FO_MAXPATHLENGTH]; BYTE fileName[FO_MAXFILELENGTH]; BYTE fileExt[FO_MAXEXTLENGTH]; BYTE szTitle[MINRESSTR];
*filePath = 0; *fileName = 0; *fileExt = 0;
strcpy(fileName, "*.TRM"); strcpy(fileExt, "TRM");
if(termData.filePath[strlen(termData.filePath) - 1] != '\\') strcat(termData.filePath, "\\");
if(FileOpen(termData.filePath, fileName, NULL, fileExt, NULL, FO_DBFILETYPE, FO_FileOpenType, FO_FILEEXIST | FO_FORCEEXTENT)) { strcpy(fileDocData[saveFileType].filePath, filePath); strcpy(fileDocData[saveFileType].fileName, fileName);
if(childZoomStatus(0x0001, 0)) childZoomStatus(0, 0x8000);
LoadString(hInst, STR_TERMINAL, szTitle, MINRESSTR); termFile(termData.filePath, fileName, fileDocData[FILE_NDX_SETTINGS].fileExt, (*fileDocData[FILE_NDX_SETTINGS].title == 0) ? szTitle : fileDocData[FILE_NDX_SETTINGS].title, (*fileDocData[FILE_NDX_SETTINGS].title == 0) ? TF_DEFTITLE : 0); } }
/*---------------------------------------------------------------------------*/ /* doFileClose() - [mbb] */ /*---------------------------------------------------------------------------*/
VOID doFileClose() { termCloseFile(); }
/*---------------------------------------------------------------------------*/ /* doFileSave() - [mbb] */ /*---------------------------------------------------------------------------*/
VOID doFileSave() { termSaveFile(FALSE); }
/*---------------------------------------------------------------------------*/ /* doFileSaveAs() - [mbb] */ /*---------------------------------------------------------------------------*/
VOID doFileSaveAs() { termSaveFile(TRUE); }
|