csgo-2018-source/hammer/dispdlg.h

315 lines
7.2 KiB
C
Raw Normal View History

2021-07-25 12:11:47 +08:00
//========= Copyright <20> 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#ifndef DISPDLG_H
#define DISPDLG_H
#pragma once
#include "resource.h"
#include "IconComboBox.h"
#include "afxwin.h"
//=============================================================================
//
// Displacement Create Dialog
//
class CDispCreateDlg : public CDialog
{
public:
CDispCreateDlg( CWnd *pParent = NULL );
//{{AFX_DATA( CDispCreateDlg )
enum { IDD = IDD_DISP_CREATE };
unsigned int m_Power;
CEdit m_editPower;
CSpinButtonCtrl m_spinPower;
//}}AFX_DATA
//{{AFX_VIRTUAL( CDispCreateDlg )
virtual void DoDataExchange( CDataExchange *pDX );
virtual BOOL OnInitDialog( void );
//}}AFX_VIRTUAL
protected:
//{{AFX_MSG( CDispCreateDlg )
afx_msg void OnVScroll( UINT nSBCode, UINT nPos, CScrollBar* pScrollBar );
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//=============================================================================
//
// Displacement Noise Dialog
//
class CDispNoiseDlg : public CDialog
{
public:
CDispNoiseDlg( CWnd *pParent = NULL );
//{{AFX_DATA( CDispNoiseDlg )
enum { IDD = IDD_DISP_NOISE };
float m_Min;
float m_Max;
CEdit m_editMin;
CEdit m_editMax;
CSpinButtonCtrl m_spinMin;
CSpinButtonCtrl m_spinMax;
//}}AFX_DATA
//{{AFX_VIRTUAL( CDispNoiseDlg )
virtual void DoDataExchange( CDataExchange *pDX );
virtual BOOL OnInitDialog( void );
//}}AFX_VIRTUAL
protected:
//{{AFX_MSG( CDispNoiseDlg )
afx_msg void CDispNoiseDlg::OnSpinUpDown( NMHDR *pNMHDR, LRESULT *pResult );
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//=============================================================================
//
// Displacement Paint Dist Dialog
//
class CDispPaintDistDlg : public CDialog
{
public:
CDispPaintDistDlg( CWnd *pParent = NULL );
~CDispPaintDistDlg();
void UpdateSpatialData( void );
//{{AFX_DATA( CDispPaintDistDlg )
enum { IDD = IDD_DISP_PAINT_DIST };
CSliderCtrl m_sliderDistance;
CSliderCtrl m_sliderRadius;
CEdit m_editDistance;
CEdit m_editRadius;
CIconComboBox m_comboboxBrush;
CComboBox m_comboboxAxis;
float m_Distance;
float m_Radius;
//}}AFX_DATA
//{{AFX_VIRTUAL( CDispPaintDistDlg )
virtual void DoDataExchange( CDataExchange *pDX );
virtual BOOL OnInitDialog( void );
//}}AFX_VIRTUAL
protected:
bool InitComboBoxBrushGeo( void );
bool InitComboBoxAxis( void );
void InitBrushType( void );
void EnableBrushTypeButtons( void );
void DisableBrushTypeButtons( void );
void FilterComboBoxBrushGeo( unsigned int nEffect, bool bInit );
void EnablePaintingComboBoxes( void );
void DisablePaintingComboBoxes( void );
void UpdateAxis( int nAxis );
void SetEffectButtonGeo( unsigned int nEffect );
void SetBrushTypeButtonGeo( unsigned int uiBrushType );
void InitDistance( void );
void UpdateSliderDistance( float flDistance, bool bForceInit );
void UpdateEditBoxDistance( float flDistance, bool bForceInit );
void InitRadius( void );
void EnableSliderRadius( void );
void DisableSliderRadius( void );
void UpdateSliderRadius( float flRadius, bool bForceInit );
void UpdateEditBoxRadius( float flRadius, bool bForceInit );
//{{AFX_MSG( CDispPaintDistDlg )
afx_msg void OnEffectRaiseLowerGeo( void );
afx_msg void OnEffectRaiseToGeo( void );
afx_msg void OnEffectSmoothGeo( void );
afx_msg void OnBrushTypeSoftEdge( void );
afx_msg void OnBrushTypeHardEdge( void );
afx_msg void OnCheckSpatial( void );
afx_msg void OnCheckAutoSew( void );
afx_msg void OnComboBoxBrushGeo( void );
afx_msg void OnComboBoxAxis( void );
afx_msg void OnHScroll( UINT nSBCode, UINT nPos, CScrollBar *pScrollBar );
afx_msg void OnEditDistance( void );
afx_msg void OnEditRadius( void );
afx_msg void OnClose( void );
afx_msg void OnDestroy( void );
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
protected:
// Save/Restore
CRect m_DialogPosRect;
unsigned int m_nPrevEffect;
int m_nPrevBrush;
int m_nPrevPaintAxis;
Vector m_vecPrevPaintAxis;
float m_flPrevRadius;
float m_flPrevDistance;
};
//=============================================================================
//
// Displacement Paint Dist Dialog
//
class CSculptPushOptions;
class CSculptCarveOptions;
class CSculptProjectOptions;
class CSculptBlendOptions;
class CPaintSculptDlg : public CDialog
{
public:
CPaintSculptDlg( CWnd *pParent = NULL );
~CPaintSculptDlg();
bool GetAutoSew( ) { return m_bAutoSew; }
void UpdateSpatialData( );
//{{AFX_DATA( CPaintSculptDlg )
enum { IDD = IDD_DISP_PAINT_SCULPT };
//}}AFX_DATA
//{{AFX_VIRTUAL( CPaintSculptDlg )
virtual void DoDataExchange( CDataExchange *pDX );
virtual BOOL OnInitDialog( );
//}}AFX_VIRTUAL
protected:
//{{AFX_MSG( CPaintSculptDlg )
afx_msg void OnCheckAutoSew( );
afx_msg void OnClose( );
afx_msg void OnDestroy( void );
afx_msg void OnLButtonUp( UINT nFlags, CPoint point );
afx_msg void OnLButtonDown( UINT nFlags, CPoint point );
afx_msg void OnMouseMove( UINT nFlags, CPoint point );
afx_msg void OnBnClickedSculptPush( );
afx_msg void OnBnClickedSculptCarve( );
afx_msg void OnBnClickedSculptProject( );
afx_msg void OnBnClickedSculptBlend( );
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
protected:
typedef enum
{
SCULPT_MODE_PUSH,
SCULPT_MODE_CARVE,
SCULPT_MODE_PROJECT,
SCULPT_MODE_BLEND,
} SculptMode;
// Save/Restore
CRect m_DialogPosRect;
CSculptPushOptions *m_PushOptions;
CSculptCarveOptions *m_CarveOptions;
CSculptProjectOptions *m_ProjectOptions;
CSculptBlendOptions *m_BlendOptions;
bool m_bAutoSew;
SculptMode m_SculptMode;
void SetActiveMode( SculptMode NewMode );
CStatic m_SculptOptionsLoc;
CButton m_AutoSew;
CButton m_PushButton;
CButton m_CarveButton;
CButton m_ProjectButton;
public:
CButton m_BlendButton;
};
//=============================================================================
//
// Displacement Paint Dist Dialog
//
class CDispPaintDataDlg : public CDialog
{
public:
CDispPaintDataDlg( CWnd *pParent = NULL );
~CDispPaintDataDlg();
//{{AFX_DATA( CDispPaintDataDlg )
enum { IDD = IDD_DISP_PAINT_DATA };
CIconComboBox m_comboboxBrush;
CComboBox m_comboboxType;
CSliderCtrl m_sliderValue;
CEdit m_editValue;
float m_fValue;
//}}AFX_DATA
//{{AFX_VIRTUAL( CDispPaintDataDlg )
virtual void DoDataExchange( CDataExchange *pDX );
virtual BOOL OnInitDialog( void );
//}}AFX_VIRTUAL
protected:
bool InitComboBoxBrushData( void );
bool InitComboBoxType( void );
void FilterComboBoxBrushData( unsigned int uiEffect, bool bInit );
void SetEffectButtonData( unsigned int effect );
void InitValue( void );
void UpdateSliderValue( float fValue );
//{{AFX_MSG( CDispPaintDataDlg )
afx_msg void OnEffectRaiseLowerData( void );
afx_msg void OnEffectRaiseToData( void );
afx_msg void OnEffectSmoothData( void );
afx_msg void OnComboBoxBrushData( void );
afx_msg void OnComboBoxType( void );
afx_msg void OnHScroll( UINT nSBCode, UINT nPos, CScrollBar *pScrollBar );
afx_msg void OnEditValue( void );
afx_msg void OnClose( void );
afx_msg void OnDestroy( void );
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
protected:
// save/restore
CRect m_DialogPosRect;
unsigned int m_uiPrevEffect;
float m_fPrevPaintValue;
int m_iPrevBrush;
};
#endif // DISPDLG_H