/* * Xailer source code: * * Static.prg * Clase TStatic() * * Copyright 2003 Manuel Calero * Copyright 2003, 2007 Xailer.com * All rights reserved * */ #include "Xailer.ch" //-------------------------------------------------------------------------- CLASS XStatic FROM TStdControl PROTECTED: DATA cWinClassName INIT "STATIC" DATA nCtlStyle INIT nOr( WS_CHILD, SS_LEFT ) PROPERTY lTabStop INIT .F. PUBLIC: METHOD SetBitmap( oBitmap ) INLINE ::SetImage( IMAGE_BITMAP, oBitmap ) METHOD GetBitmap() INLINE ::GetImage( IMAGE_BITMAP ) METHOD SetIcon( oIcon ) INLINE ::SetImage( IMAGE_ICON, oIcon ) METHOD GetIcon() INLINE ::GetImage( IMAGE_ICON ) METHOD SetEnhMetafile( oMeta ) INLINE ::SetImage( IMAGE_ENHMETAFILE, oMeta ) METHOD GetEnhMetafile() INLINE ::GetImage( IMAGE_ENHMETAFILE ) METHOD SetImage( nType, oImage ) METHOD GetImage( nType ) ENDCLASS //-------------------------------------------------------------------------- METHOD SetImage( nType, oImage ) CLASS XStatic LOCAL nStyle := 0 IF oImage != Nil DO CASE CASE nType == IMAGE_BITMAP nStyle := SS_BITMAP CASE nType == IMAGE_ICON nStyle := SS_ICON CASE nType == IMAGE_ENHMETAFILE nStyle := SS_ENHMETAFILE ENDCASE ::ChangeCtlStyle( nStyle, oImage:Handle != 0 ) ::SendMsg( STM_SETIMAGE, nType, oImage:Handle ) ENDIF RETURN Nil //-------------------------------------------------------------------------- METHOD GetImage( nType ) CLASS XStatic LOCAL Handle := ::SendMsg( STM_GETIMAGE, nType, 0 ) LOCAL oImage IF Handle != 0 oImage := GetControlFromHandle( Handle ) ENDIF RETURN oImage //--------------------------------------------------------------------------