gecko-dev/cmd/winfe/imagemap.h

86 строки
2.7 KiB
C
Исходник Обычный вид История

1998-03-28 05:44:41 +03:00
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef __IMAGEMAP_H
#define __IMAGEMAP_H
#ifndef __APIIMG_H
#include "apiimg.h"
#endif
class CTreeImageMap
{
protected:
int m_iImageWidth;
int m_iImageHeight;
int m_iImageCount;
int m_iBitmapWidth;
unsigned int m_iResourceID;
HBITMAP m_hBitmap;
HBITMAP m_hbmNormal;
HBITMAP m_hbmHighlight;
HBITMAP m_hbmButton;
HBITMAP m_hOriginalBitmap;
HDC m_hdcMem;
int InitializeImage (HBITMAP);
public:
CTreeImageMap (unsigned int rcid, int width = 16, int height = 16 );
~CTreeImageMap ( );
void Initialize ( void );
int GetImageHeight ( void ) { return m_iImageHeight; }
int GetImageWidth ( void ) { return m_iImageWidth; }
int GetImageCount ( void ) { return m_iImageCount; }
unsigned int GetResourceID ( void ) { return m_iResourceID; }
void DrawImage ( int idxImage, int x, int y, HDC hDestDC, BOOL bButton = FALSE );
void DrawTransImage ( int idxImage, int x, int y, HDC hDestDC );
void UseHighlight ( void );
void UseNormal ( void );
void CreateDefaults (int width = 16, int height = 16);
void ReInitialize(void);
};
class CNSImageMap : public CGenericObject,
public IImageMap
{
protected:
CTreeImageMap * m_pImageMap;
public:
CNSImageMap();
~CNSImageMap();
STDMETHODIMP QueryInterface(REFIID,LPVOID *);
// IImageMap
virtual int Initialize (unsigned int rcid, int width, int height);
virtual void DrawImage (int index,int x,int y,HDC hDestDC,BOOL bButton);
virtual void DrawTransImage (int index,int x,int y,HDC hDestDC);
virtual void DrawImage (int index,int x,int y,CDC * pDestDC,BOOL bButton);
virtual void DrawTransImage (int index,int x,int y,CDC * pDestDC);
virtual void ReInitialize (void);
virtual void UseNormal (void);
virtual void UseHighlight (void);
virtual int GetImageHeight (void);
virtual int GetImageWidth (void);
virtual int GetImageCount (void);
virtual unsigned int GetResourceID (void);
};
#endif