106 lines
2.7 KiB
C
106 lines
2.7 KiB
C
/*
|
|
* GIZMOINT.H
|
|
* GizmoBar Version 1.00, Win32 version August 1993
|
|
*
|
|
* Internal definitions for the GizmoBar DLL
|
|
*
|
|
* Copyright (c)1993 Microsoft Corporation, All Rights Reserved
|
|
*
|
|
* Kraig Brockschmidt, Software Design Engineer
|
|
* Microsoft Systems Developer Relations
|
|
*
|
|
* Internet : kraigb@microsoft.com
|
|
* Compuserve: >INTERNET:kraigb@microsoft.com
|
|
*/
|
|
|
|
|
|
#ifndef _GIZMOINT_H_
|
|
#define _GIZMOINT_H_
|
|
|
|
#include <bttncur.h>
|
|
#include <book1632.h>
|
|
#include "gizmo.h"
|
|
#include "gizmobar.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"
|
|
{
|
|
#endif
|
|
|
|
|
|
/*
|
|
* The main gizmobar structure itself. There's only one of these,
|
|
* but it references the first GIZMO in the list.
|
|
*/
|
|
|
|
typedef struct tagGIZMOBAR
|
|
{
|
|
LPGIZMO pGizmos; //List of gizmos we own.
|
|
HWND hWnd; //Window handle of ourselves.
|
|
HINSTANCE hInst;
|
|
HWND hWndAssociate; //Associate window handle who gets messages.
|
|
DWORD dwStyle; //Copy of GetWindowLong(hWnd, GWL_STYLE)
|
|
UINT uState; //State flags
|
|
UINT uID; //Control ID.
|
|
|
|
HBRUSH hBrFace; //Static control background color
|
|
COLORREF crFace; //Color of hBrFace
|
|
HFONT hFont; //Font in use, defaults to system, WM_SETFONT
|
|
BOOL fEnabled; //Are we enabled?
|
|
|
|
LPGIZMO pGizmoTrack; //Current pressed button.
|
|
BOOL fTracking;
|
|
BOOL fMouseOut;
|
|
} GIZMOBAR, FAR * LPGIZMOBAR;
|
|
|
|
#define CBGIZMOBAR sizeof(GIZMOBAR)
|
|
|
|
|
|
//Extra bytes for the window if the size of a local handle.
|
|
#define CBWINDOWEXTRA sizeof(LPGIZMOBAR)
|
|
|
|
#define GBWL_STRUCTURE 0
|
|
|
|
|
|
//Structure for passing paint information to a gizmo enumeration callback.
|
|
typedef struct
|
|
{
|
|
HDC hDC;
|
|
BOOL fPaint;
|
|
} PAINTGIZMO, FAR * LPPAINTGIZMO;
|
|
|
|
|
|
|
|
//Private functions specific to the control.
|
|
|
|
//INIT.C
|
|
#ifdef WIN32
|
|
extern BOOL WINAPI _CRT_INIT(HINSTANCE, DWORD, LPVOID);
|
|
extern _cexit(void);
|
|
#endif //WIN32
|
|
|
|
void FAR PASCAL WEP(int);
|
|
BOOL FRegisterControl(HINSTANCE);
|
|
LPGIZMOBAR GizmoBarPAllocate(LPINT, HWND, HINSTANCE, HWND, DWORD, UINT, UINT);
|
|
LPGIZMOBAR GizmoBarPFree(LPGIZMOBAR);
|
|
|
|
|
|
//PAINT.C
|
|
void GizmoBarPaint(HWND, LPGIZMOBAR);
|
|
BOOL FAR PASCAL FEnumPaintGizmos(LPGIZMO, UINT, DWORD);
|
|
|
|
|
|
//GIZMOBAR.C
|
|
LRESULT FAR PASCAL GizmoBarWndProc(HWND, UINT, WPARAM, LPARAM);
|
|
BOOL FAR PASCAL FEnumChangeFont(LPGIZMO, UINT, DWORD);
|
|
BOOL FAR PASCAL FEnumEnable(LPGIZMO, UINT, DWORD);
|
|
BOOL FAR PASCAL FEnumHitTest(LPGIZMO, UINT, DWORD);
|
|
|
|
|
|
//API.C Also see GIZMOBAR.H for others
|
|
LRESULT GBMessageHandler(HWND, UINT, WPARAM, LPARAM, LPGIZMOBAR);
|
|
LPGIZMO PGizmoFromHwndID(HWND, UINT);
|
|
|
|
|
|
#endif //_GIZMOINT_H_
|