summaryrefslogtreecommitdiff
path: root/utils/hlfaceposer/mxbitmapwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'utils/hlfaceposer/mxbitmapwindow.cpp')
-rw-r--r--utils/hlfaceposer/mxbitmapwindow.cpp84
1 files changed, 84 insertions, 0 deletions
diff --git a/utils/hlfaceposer/mxbitmapwindow.cpp b/utils/hlfaceposer/mxbitmapwindow.cpp
new file mode 100644
index 0000000..d79d9c0
--- /dev/null
+++ b/utils/hlfaceposer/mxbitmapwindow.cpp
@@ -0,0 +1,84 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+// $NoKeywords: $
+//
+//=============================================================================//
+
+#include <mxtk/mxWindow.h>
+#include "mxBitmapWindow.h"
+#define WIN32_LEAN_AND_MEAN
+#include <windows.h>
+#include "tier0/dbg.h"
+
+//-----------------------------------------------------------------------------
+// Purpose:
+// Input : *parent -
+// x -
+// y -
+// w -
+// h -
+// 0 -
+// 0 -
+//-----------------------------------------------------------------------------
+mxBitmapWindow::mxBitmapWindow(mxWindow *parent, int x, int y, int w, int h, int style /*= 0*/, const char *bitmap /*=0*/ )
+: mxWindow( parent, x, y, w, h, "", style )
+{
+ m_Bitmap.valid = false;
+
+ if ( bitmap && bitmap[ 0 ] )
+ {
+ Load( bitmap );
+ }
+}
+
+//-----------------------------------------------------------------------------
+// Purpose:
+//-----------------------------------------------------------------------------
+mxBitmapWindow::~mxBitmapWindow( void )
+{
+ if ( m_Bitmap.valid )
+ {
+ DeleteObject( m_Bitmap.image );
+ m_Bitmap.valid = NULL;
+ }
+}
+
+//-----------------------------------------------------------------------------
+// Purpose:
+// Input : *bitmap -
+// Output : virtual void
+//-----------------------------------------------------------------------------
+void mxBitmapWindow::setImage( const char *bitmap )
+{
+ if ( m_Bitmap.valid )
+ {
+ DeleteObject( m_Bitmap.image );
+ m_Bitmap.valid = NULL;
+ }
+ if ( bitmap && bitmap[ 0 ] )
+ {
+ Load( bitmap );
+ }
+}
+
+//-----------------------------------------------------------------------------
+// Purpose:
+// Input : *bitmap -
+// Output : mxImage
+//-----------------------------------------------------------------------------
+bool mxBitmapWindow::Load( const char *bitmap )
+{
+ Assert( !m_Bitmap.valid );
+ return LoadBitmapFromFile( bitmap, m_Bitmap );
+}
+
+//-----------------------------------------------------------------------------
+// Purpose:
+// Output : void mxBitmapWindow::redraw
+//-----------------------------------------------------------------------------
+void mxBitmapWindow::redraw ()
+{
+ DrawBitmapToWindow( this, 0, 0, w(), h(), m_Bitmap );
+} \ No newline at end of file