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.
161 lines
3.3 KiB
161 lines
3.3 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
//=============================================================================// |
|
|
|
#ifndef CONTROLPANEL_H |
|
#define CONTROLPANEL_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
#ifndef INCLUDED_MXWINDOW |
|
#include <mxtk/mxWindow.h> |
|
#endif |
|
|
|
#include "faceposertoolwindow.h" |
|
|
|
#define IDC_TAB 1901 |
|
#define IDC_RENDERMODE 2001 |
|
#define IDC_GROUND 2003 |
|
#define IDC_MOVEMENT 2004 |
|
#define IDC_BACKGROUND 2005 |
|
#define IDC_HITBOXES 2006 |
|
#define IDC_BONES 2007 |
|
#define IDC_ATTACHMENTS 2008 |
|
#define IDC_PHYSICSMODEL 2009 |
|
#define IDC_PHYSICSHIGHLIGHT 2010 |
|
#define IDC_MODELSPACING 2011 |
|
#define IDC_TOOLSDRIVEMOUTH 2012 |
|
|
|
#define IDC_SEQUENCE 3001 |
|
#define IDC_SPEEDSCALE 3002 |
|
#define IDC_PRIMARYBLEND 3003 |
|
#define IDC_SECONDARYBLEND 3004 |
|
|
|
#define IDC_BODYPART 4001 |
|
#define IDC_SUBMODEL 4002 |
|
#define IDC_CONTROLLER 4003 |
|
#define IDC_CONTROLLERVALUE 4004 |
|
#define IDC_SKINS 4005 |
|
|
|
#define IDC_EXPRESSIONCLASS 5001 |
|
#define IDC_EXPRESSIONTRAY 5002 |
|
#define IDC_ANIMATIONBROWSER 5003 |
|
|
|
class mxTab; |
|
class mxChoice; |
|
class mxCheckBox; |
|
class mxSlider; |
|
class mxLineEdit; |
|
class mxLabel; |
|
class mxButton; |
|
class MatSysWindow; |
|
class TextureWindow; |
|
class mxExpressionTray; |
|
class FlexPanel; |
|
class PhonemeEditor; |
|
class mxExpressionTab; |
|
class mxExpressionSlider; |
|
class ExpressionTool; |
|
class CChoreoView; |
|
|
|
|
|
class ControlPanel : public mxWindow, public IFacePoserToolWindow |
|
{ |
|
typedef mxWindow BaseClass; |
|
|
|
mxTab *tab; |
|
mxChoice *cRenderMode; |
|
mxCheckBox *cbGround, *cbMovement, *cbBackground; |
|
mxChoice *cSequence; |
|
mxSlider *slSpeedScale; |
|
mxLabel *lSpeedScale; |
|
mxChoice *cBodypart, *cController, *cSubmodel; |
|
mxSlider *slController; |
|
mxChoice *cSkin; |
|
mxLabel *lModelInfo1, *lModelInfo2; |
|
|
|
mxLineEdit *leMeshScale, *leBoneScale; |
|
mxSlider *slModelGap; |
|
|
|
mxCheckBox *cbAllWindowsDriveSpeech; |
|
|
|
public: |
|
// CREATORS |
|
ControlPanel (mxWindow *parent); |
|
virtual ~ControlPanel (); |
|
|
|
// MANIPULATORS |
|
|
|
virtual int handleEvent (mxEvent *event); |
|
virtual void redraw(); |
|
|
|
virtual void OnDelete(); |
|
virtual bool CanClose(); |
|
|
|
virtual void Think( float dt ); |
|
|
|
void dumpModelInfo (); |
|
void ChangeModel( const char *filename ); |
|
|
|
void setRenderMode (int mode); |
|
void setShowGround (bool b); |
|
void setShowMovement (bool b); |
|
void setShowBackground (bool b); |
|
void setHighlightBone( int index ); |
|
|
|
void initSequenceChoices( ); |
|
void setSequence (int index); |
|
|
|
void setSpeed( float value ); |
|
|
|
void initPoseParameters (); |
|
void setBlend(int index, float value ); |
|
|
|
void initBodypartChoices(); |
|
void setBodypart (int index); |
|
void setSubmodel (int index); |
|
|
|
void initBoneControllerChoices(); |
|
void setBoneController (int index); |
|
void setBoneControllerValue (int index, float value); |
|
|
|
void initSkinChoices(); |
|
|
|
void setModelInfo (); |
|
|
|
void centerView (); |
|
|
|
void fullscreen (); |
|
|
|
void CenterOnFace( void ); |
|
|
|
void PositionControls( int width, int height ); |
|
|
|
bool CloseClass( int classindex ); |
|
|
|
bool Close(); |
|
bool Closeall(); |
|
|
|
void Copy( void ); |
|
void Paste( void ); |
|
|
|
void Undo( void ); |
|
void Redo( void ); |
|
|
|
void UndoExpression( int index ); |
|
void RedoExpression( int index ); |
|
|
|
void DeleteExpression( int index ); |
|
|
|
float GetModelGap( void ); |
|
|
|
bool AllToolsDriveSpeech( void ); |
|
|
|
}; |
|
|
|
extern ControlPanel *g_pControlPanel; |
|
|
|
#endif // CONTROLPANEL_H
|
|
|