home *** CD-ROM | disk | FTP | other *** search
- //
- // YOWSUPP - yow! supporting functions!
- //
- // Version: 1.0 Copyright (C) 1991, Lantern Corp.
- // Author: Edward Hutchins
- // Revisions:
- // 09/11/91 added this file to reduce YOW segment size - Ed.
- //
-
- #include "yow.h"
-
- //
- // imports
- //
-
- IMPORT HANDLE hAppInst;
- IMPORT HWND hAppWnd;
- IMPORT CHAR szAppName[8];
- IMPORT CHAR szDBase[FILENAME_SIZE];
- IMPORT CHAR szEndChar[2];
-
- //
- // CreateYowClass - create the class of Yow's window
- //
-
- BOOL FAR PASCAL CreateYowClass( VOID )
- {
- WNDCLASS Class;
-
- // load the name from the resource file
- LoadString( hAppInst, IDS_NAME, szAppName, sizeof(szAppName) );
-
- Class.style = CS_HREDRAW | CS_VREDRAW | CS_BYTEALIGNCLIENT;
- Class.lpfnWndProc = YowWndProc;
- Class.cbClsExtra = 0;
- Class.cbWndExtra = 0;
- Class.hInstance = hAppInst;
- Class.hIcon = LoadIcon( hAppInst, MAKEINTRESOURCE( IDI_YOW ) );
- Class.hCursor = LoadCursor( NULL, IDC_ARROW );
- Class.hbrBackground = COLOR_BTNFACE + 1;
- Class.lpszMenuName = NULL;
- Class.lpszClassName = szAppName;
-
- return( RegisterClass( &Class ) );
- }
-
- //
- // SetYowMenu - add yow's menu items to the system menu
- //
-
- VOID NEAR PASCAL SetYowMenu( HWND hWnd, INT nFirstID, INT nLastID )
- {
- CHAR szMenuName[40];
- HMENU hMenu;
-
- hMenu = GetSystemMenu( hWnd, TRUE );
- if (hMenu == HNULL) hMenu = GetSystemMenu( hWnd, FALSE );
- if (hMenu == HNULL) return;
-
- // delete unwanted menu items
- DeleteMenu( hMenu, SC_RESTORE, MF_BYCOMMAND );
- DeleteMenu( hMenu, SC_SIZE, MF_BYCOMMAND );
- DeleteMenu( hMenu, SC_MINIMIZE, MF_BYCOMMAND );
- DeleteMenu( hMenu, SC_MAXIMIZE, MF_BYCOMMAND );
-
- while (nFirstID <= nLastID)
- {
- LoadString( hAppInst, nFirstID, szMenuName, sizeof(szMenuName) );
- ChangeMenu( hMenu, 0, szMenuName, nFirstID, MF_APPEND );
- ++nFirstID;
- }
- }
-
- //
- // CreateYowWindow - open the Yow window
- //
-
- HWND FAR PASCAL CreateYowWindow( INT nCmdShow )
- {
- HWND hWnd;
-
- hWnd = CreateWindow( szAppName, szAppName,
- WS_OVERLAPPEDWINDOW,
- CW_USEDEFAULT, 0, CW_USEDEFAULT, 0,
- HNULL, HNULL, hAppInst, NULL );
- if (hWnd == HNULL) return( HNULL );
- ShowWindow( hWnd, nCmdShow );
- UpdateWindow( hWnd );
- SetYowMenu( hWnd, IDM_OPTIONS, IDM_ABOUT );
- return( hWnd );
- }
-
- //
- // SetYowDBase - set the lines database
- //
-
- VOID FAR PASCAL SetYowDBase( LPSTR lpszFile )
- {
- CHAR szProp[40];
-
- if (!lpszFile || *lpszFile == '\0')
- {
- LoadString( hAppInst, IDS_PRPDEFDBASE, szProp, sizeof(szProp) );
- LoadString( hAppInst, IDS_DEFDBASE, szDBase, sizeof(szDBase) );
- GetProfileString( szAppName, szProp, szDBase, szDBase, sizeof(szDBase) );
- }
- else lstrcpy( szDBase, lpszFile );
-
- LoadString( hAppInst, IDS_PRPDEFENDCHAR, szProp, sizeof(szProp) );
- LoadString( hAppInst, IDS_DEFENDCHAR, szEndChar, sizeof(szEndChar) );
- GetProfileString( szAppName, szProp, szEndChar, szEndChar, sizeof(szEndChar) );
- }
-
-