mirror of
https://github.com/id-Software/DOOM-3.git
synced 2026-03-20 08:59:56 +01:00
hello world
This commit is contained in:
223
neo/tools/particle/DialogParticleEditor.h
Normal file
223
neo/tools/particle/DialogParticleEditor.h
Normal file
@@ -0,0 +1,223 @@
|
||||
/*
|
||||
===========================================================================
|
||||
|
||||
Doom 3 GPL Source Code
|
||||
Copyright (C) 1999-2011 id Software LLC, a ZeniMax Media company.
|
||||
|
||||
This file is part of the Doom 3 GPL Source Code (?Doom 3 Source Code?).
|
||||
|
||||
Doom 3 Source Code is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Doom 3 Source Code is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Doom 3 Source Code. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
In addition, the Doom 3 Source Code is also subject to certain additional terms. You should have received a copy of these additional terms immediately following the terms and conditions of the GNU General Public License which accompanied the Doom 3 Source Code. If not, please request a copy in writing from id Software at the address below.
|
||||
|
||||
If you have questions concerning this license or the applicable additional terms, you may contact in writing id Software LLC, c/o ZeniMax Media Inc., Suite 120, Rockville, Maryland 20850 USA.
|
||||
|
||||
===========================================================================
|
||||
*/
|
||||
|
||||
#ifndef __DIALOGPARTICLEEDITOR_H__
|
||||
#define __DIALOGPARTICLEEDITOR_H__
|
||||
|
||||
#pragma once
|
||||
|
||||
class CRangeSlider : public CSliderCtrl {
|
||||
public:
|
||||
void SetValueRange(float _low, float _high) {
|
||||
low = _low;
|
||||
high = _high;
|
||||
}
|
||||
|
||||
void SetValuePos( float val ) {
|
||||
SetPos( GetRangeMin() + ( GetRangeMax() - GetRangeMin() ) * ( val - low ) / ( high - low ) );
|
||||
}
|
||||
|
||||
float GetValue() {
|
||||
return low + ( high - low ) * ( float )( GetPos() - GetRangeMin() ) / ( GetRangeMax() - GetRangeMin() );
|
||||
}
|
||||
private:
|
||||
float low, high;
|
||||
};
|
||||
|
||||
// CDialogParticleEditor dialog
|
||||
|
||||
class CDialogParticleEditor : public CDialog {
|
||||
|
||||
DECLARE_DYNAMIC(CDialogParticleEditor)
|
||||
|
||||
public:
|
||||
CDialogParticleEditor(CWnd* pParent = NULL); // standard constructor
|
||||
virtual ~CDialogParticleEditor();
|
||||
|
||||
void SelectParticle( const char *name );
|
||||
void SetParticleVisualization( int i );
|
||||
void SetVectorControlUpdate( idQuat rotation );
|
||||
|
||||
enum { TESTMODEL, IMPACT, MUZZLE, FLIGHT, SELECTED };
|
||||
|
||||
//{{AFX_VIRTUAL(CDialogParticleEditor)
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||
virtual BOOL OnInitDialog();
|
||||
//}}AFX_VIRTUAL
|
||||
|
||||
protected:
|
||||
//{{AFX_MSG(CDialogParticleEditor)
|
||||
afx_msg void OnCbnSelchangeComboParticles();
|
||||
afx_msg void OnCbnSelchangeComboPath();
|
||||
afx_msg void OnLbnSelchangeListStages();
|
||||
afx_msg void OnBnClickedButtonAddstage();
|
||||
afx_msg void OnBnClickedButtonRemovestage();
|
||||
afx_msg void OnBnClickedButtonBrowsematerial();
|
||||
afx_msg void OnBnClickedButtonBrowsecolor();
|
||||
afx_msg void OnBnClickedButtonBrowsefadecolor();
|
||||
afx_msg void OnBnClickedButtonBrowseEntitycolor();
|
||||
afx_msg void OnBnClickedRadioRect();
|
||||
afx_msg void OnBnClickedRadioSphere();
|
||||
afx_msg void OnBnClickedRadioCylinder();
|
||||
afx_msg void OnBnClickedRadioCone();
|
||||
afx_msg void OnBnClickedRadioOutward();
|
||||
afx_msg void OnBnClickedRadioView();
|
||||
afx_msg void OnBnClickedRadioAimed();
|
||||
afx_msg void OnBnClickedRadioX();
|
||||
afx_msg void OnBnClickedRadioY();
|
||||
afx_msg void OnBnClickedRadioZ();
|
||||
afx_msg void OnBnClickedButtonHidestage();
|
||||
afx_msg void OnBnClickedButtonShowstage();
|
||||
afx_msg void OnBnClickedCheckOneshot();
|
||||
afx_msg void OnBnClickedButtonNew();
|
||||
afx_msg void OnBnClickedButtonSave();
|
||||
afx_msg void OnBnClickedButtonSaveAs();
|
||||
afx_msg void OnBnClickedButtonSaveParticles();
|
||||
afx_msg void OnBnClickedWorldGravity();
|
||||
afx_msg void OnBnClickedEntityColor();
|
||||
afx_msg void OnBnClickedTestModel();
|
||||
afx_msg void OnBnClickedImpact();
|
||||
afx_msg void OnBnClickedMuzzle();
|
||||
afx_msg void OnBnClickedFlight();
|
||||
afx_msg void OnBnClickedSelected();
|
||||
afx_msg void OnBnClickedDoom();
|
||||
afx_msg void OnBnClickedButtonUpdate();
|
||||
afx_msg void OnBnClickedParticleMode();
|
||||
afx_msg void OnBtnYup();
|
||||
afx_msg void OnBtnYdn();
|
||||
afx_msg void OnBtnXdn();
|
||||
afx_msg void OnBtnXup();
|
||||
afx_msg void OnBtnZup();
|
||||
afx_msg void OnBtnZdn();
|
||||
afx_msg void OnBtnDrop();
|
||||
afx_msg void OnDestroy();
|
||||
afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
|
||||
//}}AFX_MSG
|
||||
|
||||
DECLARE_MESSAGE_MAP()
|
||||
|
||||
private:
|
||||
//{{AFX_DATA(CDialogParticleEditor)
|
||||
enum { IDD = IDD_DIALOG_PARTICLE_EDITOR };
|
||||
CComboBox comboParticle;
|
||||
CListBox listStages;
|
||||
CRangeSlider sliderBunching;
|
||||
CRangeSlider sliderFadeIn;
|
||||
CRangeSlider sliderFadeOut;
|
||||
CRangeSlider sliderFadeFraction;
|
||||
CRangeSlider sliderCount;
|
||||
CRangeSlider sliderTime;
|
||||
CRangeSlider sliderGravity;
|
||||
CRangeSlider sliderSpeedFrom;
|
||||
CRangeSlider sliderSpeedTo;
|
||||
CRangeSlider sliderRotationFrom;
|
||||
CRangeSlider sliderRotationTo;
|
||||
CRangeSlider sliderSizeFrom;
|
||||
CRangeSlider sliderSizeTo;
|
||||
CRangeSlider sliderAspectFrom;
|
||||
CRangeSlider sliderAspectTo;
|
||||
CVectorCtl vectorControl;
|
||||
CString depthHack;
|
||||
CString matName;
|
||||
CString animFrames;
|
||||
CString animRate;
|
||||
CString color;
|
||||
CString fadeColor;
|
||||
CString fadeIn;
|
||||
CString fadeOut;
|
||||
CString fadeFraction;
|
||||
CString count;
|
||||
CString time;
|
||||
CString timeOffset;
|
||||
CString deadTime;
|
||||
CString gravity;
|
||||
CString bunching;
|
||||
CString offset;
|
||||
CString xSize;
|
||||
CString ySize;
|
||||
CString zSize;
|
||||
CString ringOffset;
|
||||
CStatic staticDirectionParm;
|
||||
CString directionParm;
|
||||
int direction;
|
||||
int orientation;
|
||||
int distribution;
|
||||
CString viewOrigin;
|
||||
CString speedFrom;
|
||||
CString speedTo;
|
||||
CString rotationFrom;
|
||||
CString rotationTo;
|
||||
CString sizeFrom;
|
||||
CString sizeTo;
|
||||
CString aspectFrom;
|
||||
CString aspectTo;
|
||||
CString customPath;
|
||||
CString customParms;
|
||||
CString trails;
|
||||
CString trailTime;
|
||||
CString cycles;
|
||||
CEdit editRingOffset;
|
||||
BOOL worldGravity;
|
||||
BOOL entityColor;
|
||||
BOOL randomDistribution;
|
||||
CString initialAngle;
|
||||
CString boundsExpansion;
|
||||
CString customDesc;
|
||||
|
||||
BOOL particleMode;
|
||||
//}}AFX_DATA
|
||||
|
||||
int visualization;
|
||||
|
||||
private:
|
||||
void EnumParticles();
|
||||
void AddStage();
|
||||
void RemoveStage();
|
||||
void ShowStage();
|
||||
void HideStage();
|
||||
idDeclParticle * GetCurParticle();
|
||||
idParticleStage * GetCurStage();
|
||||
void ClearDlgVars();
|
||||
void CurStageToDlgVars();
|
||||
void DlgVarsToCurStage();
|
||||
void ShowCurrentStage();
|
||||
void UpdateControlInfo();
|
||||
void SetParticleView();
|
||||
void UpdateParticleData();
|
||||
CToolTipCtrl toolTipCtrl;
|
||||
BOOL PreTranslateMessage(MSG *pMsg);
|
||||
void SetSelectedModel( const char *val );
|
||||
void EnableStageControls();
|
||||
void EnableEditControls();
|
||||
void UpdateSelectedOrigin( float x, float y, float z );
|
||||
bool mapModified;
|
||||
protected:
|
||||
virtual void OnOK();
|
||||
};
|
||||
|
||||
#endif /* !__DIALOGPARTICLEEDITOR_H__ */
|
||||
Reference in New Issue
Block a user