mirror of https://github.com/lianthony/NT4.0
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
402 lines
14 KiB
402 lines
14 KiB
|
|
/*
|
|
Enhanced NCSA Mosaic from Spyglass
|
|
"Guitar"
|
|
|
|
Copyright 1994 Spyglass, Inc.
|
|
All Rights Reserved
|
|
|
|
Author(s):
|
|
Eric W. Sink [email protected]
|
|
*/
|
|
|
|
/* protos.h */
|
|
|
|
#ifndef _H_WIN32GUI_PROTOS_H_
|
|
#define _H_WIN32GUI_PROTOS_H_
|
|
|
|
DCL_WinMain();
|
|
DCL_WinProc(Frame_DefProc);
|
|
|
|
BOOL Frame_RegisterClass();
|
|
BOOL Frame_CreateWindow(struct Mwin * tw);
|
|
BOOL Frame_Constructor();
|
|
|
|
HMENU MB_GetWindowsPad(HMENU hMenuBase);
|
|
VOID MB_OnInitWindowMenu(HWND hWnd, HMENU hMenu);
|
|
VOID MB_OnInitMenu(HWND hWnd, HMENU hMenu);
|
|
VOID MB_SwitchToMenu(HWND, WC_WININFO *);
|
|
LRESULT MB_OnMenuSelect(HWND, HMENU, int, HMENU, UINT);
|
|
|
|
VOID MB_InitMenu_CommonPad_Table(HWND, HMENU);
|
|
HMENU MB_GetMacrosPad(struct Mwin *tw);
|
|
HMENU MB_GetToolsPad(struct Mwin *tw);
|
|
HMENU MB_GetColorTablesPad(HMENU);
|
|
BOOL MB_LoadMenuResources();
|
|
|
|
VOID GWC_ED_SubClassIt(HWND hWnd_ed);
|
|
HWND GWC_ED_CreateToolEditControl(HWND hWnd, LPRECT r, DWORD dwStyle);
|
|
void GWC_GDOC_AddStringToURLCombobox(struct Mwin *tw, LPSTR lp);
|
|
void GWC_GDOC_EmulateURLComboboxEnter(HWND hwnd);
|
|
|
|
HWND TBar_GetCurrentGWC();
|
|
VOID TBar_LetGwcInitMenu(HWND, HMENU);
|
|
VOID TBar_UpdateTBar(struct Mwin *);
|
|
VOID TBar_SpinGlobe(struct Mwin *tw);
|
|
VOID TBar_ChangeSize(HWND);
|
|
BOOL TBar_CreateWindow(HWND);
|
|
BOOL TBar_RegisterClass();
|
|
VOID TBar_Enable(BOOL);
|
|
void TBar_ToggleGwcMenu();
|
|
int TBar_GetTotalBarHeight();
|
|
|
|
VOID ShowDialogHelp(HWND hWnd, UINT nDialogID);
|
|
|
|
VOID BrowseWindow_DoPrint(HDC hDC, struct Mwin *tw);
|
|
VOID ImageViewer_DoPrint(HDC hDC, struct Mwin *tw);
|
|
|
|
BOOL GWC_BASE_RegisterClass();
|
|
BOOL GWC_GDOC_RegisterClass();
|
|
void GWC_GDOC_RecreateGlobeBitmaps(struct Mwin *tw);
|
|
BOOL GDOC_RegisterClass();
|
|
BOOL GWC_MENU_CreateWindow(HWND hWnd);
|
|
BOOL GWC_MENU_RegisterClass();
|
|
|
|
#ifdef _GIBRALTAR
|
|
void DlgPrompt_RunDialog(HWND hWnd, char *winname, char *def, char *buf, int buflen, FARPROC proc);
|
|
#else
|
|
void DlgPrompt_RunDialog(HWND hWnd, char *winname, char *string, char *def, char *buf, int buflen, FARPROC proc);
|
|
#endif // _GIBRALTAR
|
|
|
|
BOOL GDOC_NewWindow(struct Mwin *tw);
|
|
|
|
HWND GWC_DDL_CreateToolListBox(HWND hWnd, LPRECT r, DWORD dwStyle);
|
|
VOID GWC_DDL_SubClassIt(HWND hWnd_lb);
|
|
VOID GWC_DDL_SizeOfControl(HWND hWnd, LPRECT pr, DWORD dwStyle, SIZE * ps);
|
|
|
|
BOOL BHBar_Constructor();
|
|
VOID BHBar_SetStatusField(struct Mwin *, LPCTSTR);
|
|
VOID BHBar_ChangeSize(HWND);
|
|
BOOL BHBar_CreateWindow(HWND);
|
|
BOOL BHBar_RegisterClass();
|
|
VOID BHBar_Update(struct Mwin *);
|
|
|
|
#ifdef _GIBRALTAR
|
|
|
|
VOID BHBar_ToggleBar();
|
|
VOID GWC_DOC_ToggleLocation();
|
|
|
|
#endif // _GIBRALTAR
|
|
|
|
int Plan_CloseAll(void);
|
|
int Plan_close(struct Mwin *);
|
|
|
|
struct Mwin *GetPrivateData(HWND);
|
|
|
|
VOID MD_GetLargestClientRect(HWND, LPRECT);
|
|
VOID MD_ChangeSize(HWND);
|
|
|
|
void main_EnterIdle(HWND hWnd, WPARAM wParam);
|
|
|
|
void SysBeep(int j);
|
|
VOID WV_TruncateEntrynameFromPath(LPTSTR);
|
|
|
|
VOID ERR_ReportWinError(struct Mwin *tw, int errorID, char *arg1, char *arg2);
|
|
|
|
VOID E3D_RecessedFieldText(HDC, PE3DINSTANCE, LPCTSTR, int);
|
|
VOID E3D_RecessedFieldFloat(HDC, PE3DINSTANCE, float, char *);
|
|
VOID E3D_RecessedField(HDC, PE3DINSTANCE);
|
|
|
|
VOID Font_LogFontToString(LPLOGFONT lplf, LPTSTR szFontString, int nLogPixelsY);
|
|
HFONT Font_ChooseFont(HWND, LPLOGFONT);
|
|
|
|
void ShowSplash();
|
|
void HideSplash();
|
|
BOOL Splash_UnregisterClass();
|
|
BOOL Splash_RegisterClass();
|
|
HWND Splash_CreateWindow();
|
|
|
|
VOID UpdateThermometer(struct Mwin * tw, int nTherm);
|
|
|
|
LRESULT CC_OnCommand(HWND, int, HWND, UINT);
|
|
|
|
VOID DlgAbout_RunDialog(HWND hWnd);
|
|
void DlgEdMac_RunDialog(HWND hWnd, BOOL bMoreMacros);
|
|
VOID DlgLOGO_RunDialog(HWND hWnd);
|
|
char *DlgMacEd_RunDialog(HWND hWnd, char *label, char *buffer);
|
|
VOID DlgOpen_RunDialog(HWND hWnd);
|
|
VOID DlgWinf_RunDialog(HWND hWnd);
|
|
HFONT Font_CreateFontIndirect(LOGFONT *);
|
|
BOOL PUSHBTN_RegisterClass(VOID);
|
|
BOOL ANIMBTN_RegisterClass(VOID);
|
|
void ANIMBTN_RecreateBitmaps(HWND hWnd);
|
|
|
|
BOOL TBar_SetGlobe(struct Mwin * tw, BOOL bRunning);
|
|
int WinSock_InitDLL(BOOL bNetwork);
|
|
int Font_Init();
|
|
|
|
#ifdef _GIBRALTAR
|
|
void PageSetup_Init(RECT *p);
|
|
#else
|
|
void PageSetup_Init(struct page_setup *p);
|
|
#endif // _GIBRALTAR
|
|
|
|
int WinSock_AllOK();
|
|
struct Mwin *NewMwin(int type);
|
|
|
|
void HTAA_FreeStaticStuff(void);
|
|
void Font_DeleteAll(void);
|
|
void Image_DeleteAll(void);
|
|
void HText_deleteStyles(void);
|
|
void HTAtom_deleteAll(void);
|
|
void HTDisposeConversions(void);
|
|
void HTDisposeProtocols(void);
|
|
void HTFile_deleteSuffixes(void);
|
|
int WinSock_Cleanup(void);
|
|
VOID CC_GrayUnimplemented(HMENU hMenu);
|
|
BOOL GWC_GDOC_CreateWindow(HWND hWnd);
|
|
void DlgHTML_RunDialog(HWND hWnd, char *url, char *stream);
|
|
VOID PRINT_Window(struct Mwin *tw, LPDOPRINTPROC lpfnDoPrint);
|
|
HWND PUSHBTN_CreateGrayableWindow(struct Mwin * tw, HWND hWnd,
|
|
int left_edge,
|
|
int cmd,
|
|
int up_id, int down_id, int gray_id, int cx, int cy);
|
|
HWND ANIMBTN_CreateWindow(HWND hWnd,
|
|
int left_edge, int first_id);
|
|
|
|
BOOL ANIMBTN_Start(HWND hWnd);
|
|
BOOL ANIMBTN_Stop(HWND hWnd);
|
|
|
|
void OpenLocalDocument(HWND hWnd, char *s);
|
|
void DlgHOT_RunDialog(BOOL bGlobalHistory);
|
|
BOOL DlgHOT_IsHotlistRunning(void);
|
|
BOOL DlgHOT_IsHistoryRunning(void);
|
|
void DlgHOT_RefreshHotlist(void);
|
|
void DlgHOT_RefreshHistory(void);
|
|
void DlgHOT_EnableAllWindows(BOOL bEnable);
|
|
HWND DlgHOT_GetHotlistWindow(void);
|
|
HWND DlgHOT_GetHistoryWindow(void);
|
|
|
|
BOOL DlgAbout_IsRunning(void);
|
|
|
|
VOID DlgPage_RunDialog(HWND hWnd, struct page_setup *pInfo);
|
|
BOOL DlgPage_IsRunning(void);
|
|
|
|
BOOL DlgPrnt_RunDialog(struct Mwin * tw, HWND hWnd, BOOL bReturnDC);
|
|
unsigned char *ReadGIF(unsigned char *pMem, long imagesize, long *w, long *h, RGBQUAD * colrs, long *bg);
|
|
|
|
#ifdef FEATURE_JPEG
|
|
unsigned char *ReadJPEG_Dithered(unsigned char *pMem, long len, long *w, long *h);
|
|
unsigned char *ReadJPEG_Dithered_VGA(unsigned char *pMem, long len, long *w, long *h);
|
|
unsigned char *ReadJPEG_RGB(unsigned char *pMem, long len, long *w, long *h);
|
|
#endif
|
|
|
|
void FixPathName(char *path);
|
|
int DlgSaveAs_RunDialog(HWND hWnd, char *path, char *buf, int filters, int nTitle);
|
|
unsigned char *ReadXBM(unsigned char *pMem, long *w, long *h);
|
|
|
|
|
|
void DlgPREF_RunDialog(HWND hWnd);
|
|
BOOL DlgPREF_IsRunning(void);
|
|
|
|
#ifdef _GIBRALTAR
|
|
void DlgGATE_RunDialog(HWND hWnd);
|
|
BOOL DlgGATE_IsRunning(void);
|
|
void ShowPageSetup(HWND hWnd);
|
|
void DlgCACHE_RunDialog(HWND hWnd);
|
|
BOOL DlgCACHE_IsRunning(void);
|
|
void DlgConfirm_RunDialog(struct Mwin *tw, struct Params_InitStream *pParams, ThreadID tid);
|
|
BOOL DlgConfirm_IsRunning(void);
|
|
ULONG MapiSendMail(HWND hWnd, LPSTR lpRecipient);
|
|
#endif // _GIBRALTAR
|
|
|
|
void InitPreferences(void);
|
|
void LoadPreferences(void);
|
|
void SavePreferences(void);
|
|
void DestroyPreferences(void);
|
|
|
|
int ExecuteCommand(char *cmd);
|
|
void DlgFIND_RunDialog(struct Mwin *tw);
|
|
HDC PRINT_GetPrinterDC(struct Mwin *tw, HWND hWnd);
|
|
|
|
PBITMAPINFO BIT_Make_DIB_PAL_Header_Prematched(int xsize, int ysize, CONST BYTE * pdata, unsigned int flags);
|
|
PBITMAPINFO BIT_Make_DIB_RGB_Header_Printer(int xsize, int ysize, CONST BYTE * pdata, HPALETTE hPalette, int transparent, unsigned int flags);
|
|
PBITMAPINFO BIT_Make_DIB_RGB_Header_Screen(int xsize, int ysize, CONST BYTE * pdata, HPALETTE hPalette, int transparent, unsigned int flags);
|
|
PBITMAPINFO BIT_Make_DIB_RGB_Header_VGA(int xsize, int ysize, CONST BYTE * pdata);
|
|
PBITMAPINFO BIT_Make_DIB_RGB_Header_24BIT(int xsize, int ysize, CONST BYTE * pdata);
|
|
HBITMAP LoadResourceDIBitmap(HINSTANCE hInstance, LPSTR lpID);
|
|
|
|
void GTR_FixExtraPaletteColors(void);
|
|
|
|
int Printer_StretchDIBits(HDC hdc, int XDest, int YDest, int nDestWidth, int nDestHeight,
|
|
int XSrc, int YSrc, int nSrcWidth, int nSrcHeight,
|
|
struct ImageInfo *img);
|
|
|
|
|
|
BOOL CALLBACK PRINT_AbortProc(HDC hDC, int error);
|
|
|
|
void WinSock_GetWSAData(WSADATA * wsa);
|
|
|
|
void FORM_DoSearch(struct Mwin *tw, int iElement);
|
|
void FORM_DoQuery(struct Mwin *tw, int iElement, POINT * pMouse);
|
|
|
|
void SubClass_Edit(HWND hWnd);
|
|
void SubClass_Button(HWND hWnd);
|
|
void SubClass_ListBox(HWND hWnd);
|
|
void SubClass_ComboBox(HWND hWnd);
|
|
|
|
VOID GTR_DestroyPalette(VOID);
|
|
UINT GTR_RealizePalette(HDC hDC);
|
|
BOOL GTR_CreatePalette(VOID);
|
|
|
|
BOOL myGetTextExtentPoint(HDC hdc, char *sz, int len, SIZE * psiz);
|
|
|
|
void TEMP_Init(void);
|
|
int TEMP_Add(char *filename);
|
|
void TEMP_Cleanup(void);
|
|
void FORM_DoReset(struct Mwin *tw, int iElement);
|
|
|
|
int DlgEdit_RunDialog(HWND hWnd, char *title, char *url, char *new_title, char *new_url, int new_title_len, int new_url_len);
|
|
|
|
void * GTR_DebugMalloc(char *szFile, int iLine, size_t iSize);
|
|
void * GTR_DebugCalloc(char *szFile, int iLine, size_t iSize, size_t iNum);
|
|
void * GTR_DebugRealloc(char *szFile, int iLine, void *pMem, size_t iSize);
|
|
void GTR_DebugFree(char *szFile, int iLine, void *pMem);
|
|
void GTR_MemStats(void);
|
|
void PREF_GetHomeURL(char *url);
|
|
void PREF_CreateInitialURL(char *url);
|
|
DWORD PREF_GetTempPath(DWORD cchBuffer, LPTSTR lpszTempPath);
|
|
|
|
#ifdef DISABLED_BY_DAN
|
|
void DlgSTY_RunDialog(HWND hWnd);
|
|
#endif DISABLED_BY_DAN
|
|
#ifdef FEATURE_OPTIONS_MENU
|
|
VOID DlgTemp_RunDialog(HWND hWnd);
|
|
VOID DlgHIST_RunDialog(HWND hWnd);
|
|
#endif /* FEATURE_OPTIONS_MENU */
|
|
|
|
BOOL DlgDIR_RunDialog(HWND hWnd, char *szDir);
|
|
VOID DlgAA_RunDialog(HWND hWnd, const char *Msg, char **username, char **password);
|
|
void DOS_EnforceEndingSlash(char *dir);
|
|
void DOS_MakeShortFilename(char *dest, char *src);
|
|
COLORREF PREF_GetBackgroundColor(void);
|
|
COLORREF PREF_GetForegroundColor(void);
|
|
void Image_UpdateTransparentColors(void);
|
|
void PREF_GetRootDirectory(char *s);
|
|
void PREF_GetHelpDirectory(char *s);
|
|
void PREF_HandleCustomURLMenuItem(struct Mwin *, int ndx);
|
|
void PREF_AddCustomURLMenu(HMENU hMenu);
|
|
void DlgCOLOR_RunDialog(HWND hWnd, COLORREF rgbInit, int ColorItem);
|
|
|
|
void DlgMIME_RunDialog(HWND hWnd, struct Viewer_Info *pvi, BOOL bNew);
|
|
void DlgViewers_RunDialog(HWND hWnd);
|
|
BOOL DlgViewers_IsRunning(void);
|
|
|
|
void DlgCNFP_RunDialog(HWND hWnd, struct Protocol_Info *ppi, BOOL bNew);
|
|
void DlgProtocols_RunDialog(HWND hWnd);
|
|
BOOL DlgProtocols_IsRunning(void);
|
|
void SaveProtocolsInfo(void);
|
|
|
|
void PREF_SetupToolbar(void);
|
|
void SaveViewersInfo(void);
|
|
|
|
LRESULT Net_HandleSocketMessage(WPARAM wParam, LPARAM lParam);
|
|
LRESULT Net_HandleTaskMessage(WPARAM wParam, LPARAM lParam);
|
|
|
|
VOID OpenHelpWindow(HWND hWnd);
|
|
BOOL Hidden_CreateWindow(void);
|
|
BOOL Hidden_RegisterClass(void);
|
|
void Hidden_DestroyWindow(void);
|
|
BOOL Hidden_EnableAllChildWindows(BOOL bEnable, BOOL bTakeSemaphore);
|
|
|
|
void TW_Draw(struct Mwin *tw, RECT * rWnd, BOOL bDrawFormControl, struct _position *pposStart, struct _position *pposEnd, BOOL bTextOpaque, BOOL bPrinting);
|
|
BOOL TW_EnableModalChild(HWND hDlg);
|
|
struct Mwin *TW_FindTopmostWindow(void);
|
|
void DlgERR_AddError(struct Mwin *tw, char *sz);
|
|
void DlgERR_ShowPending(struct Mwin *tw);
|
|
void DlgUNK_RunDialog(struct Mwin *tw, struct Params_InitStream *pParams, ThreadID tid);
|
|
void PREF_GetPrefsDirectory(char *s);
|
|
void PREF_GetPathToHotlistFile(char *s);
|
|
void PREF_GetPathToHistoryFile(char *s);
|
|
|
|
void TW_CreateWindowList(HWND hwnd, HMENU hMenu, HWND hListbox);
|
|
void TW_ActivateWindowFromList(int menuID, int listRow, HWND hSelectWindow);
|
|
|
|
VOID DlgSelectWindow_RunDialog(HWND hWnd);
|
|
|
|
void PREF_SaveWindowPosition(HWND hWndFrame);
|
|
|
|
void TW_CascadeWindows(void);
|
|
void TW_TileWindows(void);
|
|
void TW_RestoreWindow(HWND hwnd);
|
|
HWND TW_GetNextWindow(HWND hwnd);
|
|
|
|
VOID CC_OnOpenURL_End_Dialog(HWND hWnd);
|
|
|
|
int GTR_NewWindow(char *my_url, CONST char *szReferer, long transID,
|
|
BOOL bNoDocCache, BOOL bNoImageCache, char * szPostData, char *szProgressApp);
|
|
void CreateOrLoad(struct Mwin * twGiven, char *url, CONST char *szReferer);
|
|
void GTR_RefreshHistory(void);
|
|
|
|
void TW_EnableButton(HWND hwnd, BOOL bEnabled);
|
|
|
|
#ifdef FEATURE_VENDOR_PREFERENCES
|
|
BOOL Vendor_SetPrefsDirectory(void);
|
|
#endif /* FEATURE_VENDOR_PREFERENCES */
|
|
|
|
void TW_DrawElements(struct Mwin *tw, struct _position *start, struct _position *end, BOOL bHighlight);
|
|
|
|
char *GTR_GetString(int stringID);
|
|
char *GTR_GetStringAbsolute(int stringID, char *buffer, int bufsize);
|
|
|
|
void GTR_SetScrollRange(HWND hWnd, int fnBar, int nMinPos, int nMaxPos, int nPageSize, BOOL fRedraw);
|
|
|
|
int GTR_StretchDIBits(
|
|
struct Mwin *tw,
|
|
HDC hdc, // handle of device context
|
|
RECT rect, // bounding destination rectangle (absolute Mosaic coordinates)
|
|
int iBorder, // border width
|
|
int XSrc, // x-coordinate of upper-left corner of source rect.
|
|
int YSrc, // y-coordinate of upper-left corner of source rect.
|
|
int nSrcWidth, // width of source rectangle
|
|
int nSrcHeight, // height of source rectangle
|
|
CONST VOID *lpBits, // address of bitmap bits
|
|
CONST BITMAPINFO * lpBitsInfo, // address of bitmap data
|
|
UINT iUsage, // usage
|
|
DWORD dwRop, // raster operation code
|
|
int transparent // index of transparent color in DIB
|
|
);
|
|
|
|
void x_DisposeImage(struct ImageInfo *img);
|
|
|
|
int HT_CreateDeviceImageMap(struct Mwin *tw, struct ImageInfo *pImg);
|
|
|
|
/*
|
|
This function needs to be called whenever the background
|
|
color of the windows changes.
|
|
*/
|
|
void Image_UpdateTransparentColors(void);
|
|
int DrawTransparentBasedOnIndex(
|
|
struct Mwin *tw,
|
|
HDC hdc, // handle of device context
|
|
RECT rect, // bounding destination rectangle (absolute coordinates)
|
|
int XSrc, // x-coordinate of upper-left corner of source rect.
|
|
int YSrc, // y-coordinate of upper-left corner of source rect.
|
|
int nSrcWidth, // width of source rectangle
|
|
int nSrcHeight, // height of source rectangle
|
|
CONST VOID *lpBits, // address of bitmap bits
|
|
CONST BITMAPINFO * lpBitsInfo, // address of bitmap data
|
|
UINT iUsage, // usage
|
|
DWORD dwRop, // raster operation code
|
|
int transparent // index of transparent color in DIB
|
|
);
|
|
void DrawTransparentBasedOnColor(HDC hdc, HBITMAP hBitmap, short xStart, short yStart, COLORREF cTransparentColor);
|
|
void DrawBitmap(HDC hDC, HBITMAP hBitmap, int x, int y, int width, int height);
|
|
void DrawBackgroundImage(struct Mwin *tw, HDC hdc, RECT rect, int offsetx, int offsety);
|
|
BOOL SaveAsBitmap(char *filename, BITMAPINFOHEADER *pbi, void *pdata);
|
|
|
|
void FONT_FlushCache(void);
|
|
|
|
VOID PDLG_Destructor(VOID);
|
|
|
|
#endif /* _H_WIN32GUI_PROTOS_H_ */
|