From f8fcf2ae5882a38bc29470712bb65610db204853 Mon Sep 17 00:00:00 2001 From: leo Date: Fri, 20 Jul 2012 21:32:27 +0000 Subject: [PATCH] Added support for new minifig accessory categories. --- common/minifig.cpp | 218 +++++++++++++++++++++++---------------------- common/minifig.h | 28 +++--- win/Figdlg.cpp | 93 +++++++++---------- win/Figdlg.h | 28 +++--- win/LeoCAD.rc | 126 +++++++++++++------------- win/resource.h | 120 +++++++++++++------------ 6 files changed, 316 insertions(+), 297 deletions(-) diff --git a/common/minifig.cpp b/common/minifig.cpp index 430bfd0b..59f151df 100644 --- a/common/minifig.cpp +++ b/common/minifig.cpp @@ -586,23 +586,6 @@ MinifigWizard::MinifigWizard (GLWindow *share) ParseSettings(MemSettings); } - const int ColorCodes[LC_MFW_NUMITEMS] = { 4, 14, 1, 7, 4, 4, 14, 14, 7, 7, 0, 0, 0, 7, 7 }; - const char *pieces[LC_MFW_NUMITEMS] = { "3624", "3626BP01", "973", "None", "3819", "3818", "3820", "3820", - "None", "None", "3815", "3817", "3816", "None", "None" }; - int i; - - for (i = 0; i < LC_MFW_NUMITEMS; i++) - { - m_Colors[i] = lcGetColorIndex(ColorCodes[i]); - m_Angles[i] = 0; - - m_Info[i] = lcGetPiecesLibrary()->FindPieceInfo(pieces[i]); - if (m_Info[i] != NULL) - m_Info[i]->AddRef(); - } - - Calculate(); - m_MinifigCount = 0; m_MinifigNames = NULL; m_MinifigTemplates = NULL; @@ -647,18 +630,17 @@ MinifigWizard::MinifigWizard (GLWindow *share) void MinifigWizard::OnInitialUpdate() { - const int ColorCodes[LC_MFW_NUMITEMS] = { 4, 14, 1, 7, 4, 4, 14, 14, 7, 7, 0, 0, 0, 7, 7 }; - const char *pieces[LC_MFW_NUMITEMS] = { "3624", "3626BP01", "973", "None", "3819", "3818", "3820", "3820", - "None", "None", "3815", "3817", "3816", "None", "None" }; - MakeCurrent(); + const int ColorCodes[LC_MFW_NUMITEMS] = { 4, 7, 14, 7, 1, 0, 7, 4, 4, 14, 14, 7, 7, 0, 0, 7, 7 }; + const char* Pieces[LC_MFW_NUMITEMS] = { "3624", "None", "3626BP01", "None", "973", "3815", "None", "3819", "3818", "3820", "3820", "None", "None", "3817", "3816", "None", "None" }; + for (int i = 0; i < LC_MFW_NUMITEMS; i++) { m_Colors[i] = lcGetColorIndex(ColorCodes[i]); m_Angles[i] = 0; - m_Info[i] = lcGetPiecesLibrary()->FindPieceInfo(pieces[i]); + m_Info[i] = lcGetPiecesLibrary()->FindPieceInfo(Pieces[i]); if (m_Info[i] != NULL) m_Info[i]->AddRef(); } @@ -719,21 +701,23 @@ void MinifigWizard::ParseSettings(lcFile& Settings) { const char* SectionNames[LC_MFW_NUMITEMS] = { - "[HATS]", // LC_MFW_HAT - "[HEAD]", // LC_MFW_HEAD - "[BODY]", // LC_MFW_TORSO - "[NECK]", // LC_MFW_NECK - "[RARM]", // LC_MFW_LEFT_ARM - "[LARM]", // LC_MFW_RIGHT_ARM - "[RHAND]", // LC_MFW_LEFT_HAND - "[LHAND]", // LC_MFW_RIGHT_HAND - "[RHANDA]", // LC_MFW_LEFT_TOOL - "[LHANDA]", // LC_MFW_RIGHT_TOOL - "[BODY2]", // LC_MFW_HIPS - "[RLEG]", // LC_MFW_LEFT_LEG - "[LLEG]", // LC_MFW_RIGHT_LEG - "[RLEGA]", // LC_MFW_LEFT_SHOE - "[LLEGA]", // LC_MFW_RIGHT_SHOE + "[HATS]", // LC_MFW_HATS + "[HATS2]", // LC_MFW_HATS2 + "[HEAD]", // LC_MFW_HEAD + "[NECK]", // LC_MFW_NECK + "[BODY]", // LC_MFW_BODY + "[BODY2]", // LC_MFW_BODY2 + "[BODY3]", // LC_MFW_BODY3 + "[RARM]", // LC_MFW_RARM + "[LARM]", // LC_MFW_LARM + "[RHAND]", // LC_MFW_RHAND + "[LHAND]", // LC_MFW_LHAND + "[RHANDA]", // LC_MFW_RHANDA + "[LHANDA]", // LC_MFW_LHANDA + "[RLEG]", // LC_MFW_RLEG + "[LLEG]", // LC_MFW_LLEG + "[RLEGA]", // LC_MFW_RLEGA + "[LLEGA]", // LC_MFW_LLEGA }; for (int SectionIndex = 0; SectionIndex < LC_MFW_NUMITEMS; SectionIndex++) @@ -881,11 +865,14 @@ void MinifigWizard::Calculate() float HeadOffset = 0.0f; lcMatrix44 Root, Mat, Mat2; - bool DroidTorso = m_Info[LC_MFW_TORSO] && !strcmp(m_Info[LC_MFW_TORSO]->m_strName, "30375"); - bool SkeletonTorso = m_Info[LC_MFW_TORSO] && !strcmp(m_Info[LC_MFW_TORSO]->m_strName, "6260"); + bool DroidTorso = m_Info[LC_MFW_BODY] && !strcmp(m_Info[LC_MFW_BODY]->m_strName, "30375"); + bool SkeletonTorso = m_Info[LC_MFW_BODY] && !strcmp(m_Info[LC_MFW_BODY]->m_strName, "6260"); - Root = lcMatrix44Translation(lcVector3(0, 0, 2.88f)); - m_Matrices[LC_MFW_TORSO] = lcMul(mSettings[LC_MFW_TORSO][GetSelectionIndex(LC_MFW_TORSO)].Offset, Root); + if (m_Info[LC_MFW_BODY3]) + Root = lcMatrix44Translation(lcVector3(0, 0, 2.96f)); + else + Root = lcMatrix44Translation(lcVector3(0, 0, 2.88f)); + m_Matrices[LC_MFW_BODY] = lcMul(mSettings[LC_MFW_BODY][GetSelectionIndex(LC_MFW_BODY)].Offset, Root); if (m_Info[LC_MFW_NECK]) { @@ -901,123 +888,138 @@ void MinifigWizard::Calculate() m_Matrices[LC_MFW_HEAD] = lcMul(Mat, Root); } - if (m_Info[LC_MFW_HAT]) + if (m_Info[LC_MFW_HATS]) { - Mat = lcMatrix44RotationZ(-LC_DTOR * m_Angles[LC_MFW_HAT]); - Mat = lcMul(mSettings[LC_MFW_HAT][GetSelectionIndex(LC_MFW_HAT)].Offset, Mat); - m_Matrices[LC_MFW_HAT] = lcMul(Mat, m_Matrices[LC_MFW_HEAD]); + Mat = lcMatrix44RotationZ(-LC_DTOR * m_Angles[LC_MFW_HATS]); + Mat = lcMul(mSettings[LC_MFW_HATS][GetSelectionIndex(LC_MFW_HATS)].Offset, Mat); + m_Matrices[LC_MFW_HATS] = lcMul(Mat, m_Matrices[LC_MFW_HEAD]); } - if (m_Info[LC_MFW_RIGHT_ARM]) + if (m_Info[LC_MFW_HATS2]) { - Mat = lcMatrix44RotationX(-LC_DTOR * m_Angles[LC_MFW_RIGHT_ARM]); - - if (DroidTorso || SkeletonTorso) - Mat2 = lcMatrix44Identity(); - else - Mat2 = lcMatrix44RotationY(LC_DTOR * 9.791f); - Mat2.SetTranslation(lcVector3(-0.62f, 0, -0.32f)); - - Mat = lcMul(mSettings[LC_MFW_RIGHT_ARM][GetSelectionIndex(LC_MFW_RIGHT_ARM)].Offset, Mat); - Mat = lcMul(Mat, Mat2); - m_Matrices[LC_MFW_RIGHT_ARM] = lcMul(Mat, Root); + Mat = lcMatrix44RotationX(-LC_DTOR * m_Angles[LC_MFW_HATS2]); + Mat = lcMul(mSettings[LC_MFW_HATS2][GetSelectionIndex(LC_MFW_HATS2)].Offset, Mat); + m_Matrices[LC_MFW_HATS2] = lcMul(Mat, m_Matrices[LC_MFW_HATS]); } - if (m_Info[LC_MFW_RIGHT_HAND]) + if (m_Info[LC_MFW_RARM]) { - Mat = lcMatrix44RotationY(-LC_DTOR * m_Angles[LC_MFW_RIGHT_HAND]); - Mat2 = lcMatrix44RotationX(LC_DTOR * 45); - Mat = lcMul(mSettings[LC_MFW_RIGHT_HAND][GetSelectionIndex(LC_MFW_RIGHT_HAND)].Offset, Mat); - Mat = lcMul(Mat, Mat2); - Mat.SetTranslation(lcVector3(-0.2f, -0.4f, -0.76f)); - m_Matrices[LC_MFW_RIGHT_HAND] = lcMul(Mat, m_Matrices[LC_MFW_RIGHT_ARM]); - } - - if (m_Info[LC_MFW_RIGHT_TOOL]) - { - Mat = lcMatrix44RotationZ(LC_DTOR * m_Angles[LC_MFW_RIGHT_TOOL]); - Mat.SetTranslation(lcVector3(0, -0.4f, 0)); - Mat = lcMul(mSettings[LC_MFW_RIGHT_TOOL][GetSelectionIndex(LC_MFW_RIGHT_TOOL)].Offset, Mat); - m_Matrices[LC_MFW_RIGHT_TOOL] = lcMul(Mat, m_Matrices[LC_MFW_RIGHT_HAND]); - } - - if (m_Info[LC_MFW_LEFT_ARM]) - { - Mat = lcMatrix44RotationX(-LC_DTOR * m_Angles[LC_MFW_LEFT_ARM]); + Mat = lcMatrix44RotationX(-LC_DTOR * m_Angles[LC_MFW_RARM]); if (DroidTorso || SkeletonTorso) Mat2 = lcMatrix44Identity(); else Mat2 = lcMatrix44RotationY(-LC_DTOR * 9.791f); - Mat2.SetTranslation(lcVector3(0.62f, 0.0f, -0.32f)); + Mat2.SetTranslation(lcVector3(0.62f, 0, -0.32f)); - Mat = lcMul(mSettings[LC_MFW_LEFT_ARM][GetSelectionIndex(LC_MFW_LEFT_ARM)].Offset, Mat); + Mat = lcMul(mSettings[LC_MFW_RARM][GetSelectionIndex(LC_MFW_RARM)].Offset, Mat); Mat = lcMul(Mat, Mat2); - m_Matrices[LC_MFW_LEFT_ARM] = lcMul(Mat, Root); + m_Matrices[LC_MFW_RARM] = lcMul(Mat, Root); } - if (m_Info[LC_MFW_LEFT_HAND]) + if (m_Info[LC_MFW_RHAND]) { - Mat = lcMatrix44RotationY(-LC_DTOR * m_Angles[LC_MFW_LEFT_HAND]); + Mat = lcMatrix44RotationY(-LC_DTOR * m_Angles[LC_MFW_RHAND]); Mat2 = lcMatrix44RotationX(LC_DTOR * 45); - Mat = lcMul(mSettings[LC_MFW_LEFT_HAND][GetSelectionIndex(LC_MFW_LEFT_HAND)].Offset, Mat); + Mat = lcMul(mSettings[LC_MFW_RHAND][GetSelectionIndex(LC_MFW_RHAND)].Offset, Mat); Mat = lcMul(Mat, Mat2); Mat.SetTranslation(lcVector3(0.2f, -0.4f, -0.76f)); - m_Matrices[LC_MFW_LEFT_HAND] = lcMul(Mat, m_Matrices[LC_MFW_LEFT_ARM]); + m_Matrices[LC_MFW_RHAND] = lcMul(Mat, m_Matrices[LC_MFW_RARM]); } - if (m_Info[LC_MFW_LEFT_TOOL]) + if (m_Info[LC_MFW_RHANDA]) { - Mat = lcMatrix44RotationZ(LC_DTOR * m_Angles[LC_MFW_LEFT_TOOL]); + Mat = lcMatrix44RotationZ(LC_DTOR * m_Angles[LC_MFW_RHANDA]); Mat.SetTranslation(lcVector3(0, -0.4f, 0)); - Mat = lcMul(mSettings[LC_MFW_LEFT_TOOL][GetSelectionIndex(LC_MFW_LEFT_TOOL)].Offset, Mat); - m_Matrices[LC_MFW_LEFT_TOOL] = lcMul(Mat, m_Matrices[LC_MFW_LEFT_HAND]); + Mat = lcMul(mSettings[LC_MFW_RHANDA][GetSelectionIndex(LC_MFW_RHANDA)].Offset, Mat); + m_Matrices[LC_MFW_RHANDA] = lcMul(Mat, m_Matrices[LC_MFW_RHAND]); } - if (m_Info[LC_MFW_HIPS]) + if (m_Info[LC_MFW_LARM]) + { + Mat = lcMatrix44RotationX(-LC_DTOR * m_Angles[LC_MFW_LARM]); + + if (DroidTorso || SkeletonTorso) + Mat2 = lcMatrix44Identity(); + else + Mat2 = lcMatrix44RotationY(LC_DTOR * 9.791f); + Mat2.SetTranslation(lcVector3(-0.62f, 0.0f, -0.32f)); + + Mat = lcMul(mSettings[LC_MFW_LARM][GetSelectionIndex(LC_MFW_LARM)].Offset, Mat); + Mat = lcMul(Mat, Mat2); + m_Matrices[LC_MFW_LARM] = lcMul(Mat, Root); + } + + if (m_Info[LC_MFW_LHAND]) + { + Mat = lcMatrix44RotationY(-LC_DTOR * m_Angles[LC_MFW_LHAND]); + Mat2 = lcMatrix44RotationX(LC_DTOR * 45); + Mat = lcMul(mSettings[LC_MFW_LHAND][GetSelectionIndex(LC_MFW_LHAND)].Offset, Mat); + Mat = lcMul(Mat, Mat2); + Mat.SetTranslation(lcVector3(-0.2f, -0.4f, -0.76f)); + m_Matrices[LC_MFW_LHAND] = lcMul(Mat, m_Matrices[LC_MFW_LARM]); + } + + if (m_Info[LC_MFW_LHANDA]) + { + Mat = lcMatrix44RotationZ(LC_DTOR * m_Angles[LC_MFW_LHANDA]); + Mat.SetTranslation(lcVector3(0, -0.4f, 0)); + Mat = lcMul(mSettings[LC_MFW_LHANDA][GetSelectionIndex(LC_MFW_LHANDA)].Offset, Mat); + m_Matrices[LC_MFW_LHANDA] = lcMul(Mat, m_Matrices[LC_MFW_LHAND]); + } + + if (m_Info[LC_MFW_BODY2]) { Mat = lcMatrix44Identity(); Mat.SetTranslation(lcVector3(0, 0, -1.28f)); - Mat = lcMul(mSettings[LC_MFW_HIPS][GetSelectionIndex(LC_MFW_HIPS)].Offset, Mat); - m_Matrices[LC_MFW_HIPS] = lcMul(Mat, Root); + Mat = lcMul(mSettings[LC_MFW_BODY2][GetSelectionIndex(LC_MFW_BODY2)].Offset, Mat); + m_Matrices[LC_MFW_BODY2] = lcMul(Mat, Root); } - if (m_Info[LC_MFW_RIGHT_LEG]) + if (m_Info[LC_MFW_BODY3]) { - Mat = lcMatrix44RotationX(-LC_DTOR * m_Angles[LC_MFW_RIGHT_LEG]); - Mat.SetTranslation(lcVector3(0, 0, -1.76f)); - Mat = lcMul(mSettings[LC_MFW_RIGHT_LEG][GetSelectionIndex(LC_MFW_RIGHT_LEG)].Offset, Mat); - m_Matrices[LC_MFW_RIGHT_LEG] = lcMul(Mat, Root); + Mat = lcMatrix44Identity(); + Mat.SetTranslation(lcVector3(0, 0, -1.28f)); + Mat = lcMul(mSettings[LC_MFW_BODY3][GetSelectionIndex(LC_MFW_BODY3)].Offset, Mat); + m_Matrices[LC_MFW_BODY3] = lcMul(Mat, Root); } - if (m_Info[LC_MFW_RIGHT_SHOE]) + if (m_Info[LC_MFW_RLEG]) + { + Mat = lcMatrix44RotationX(-LC_DTOR * m_Angles[LC_MFW_RLEG]); + Mat.SetTranslation(lcVector3(0, 0, -1.76f)); + Mat = lcMul(mSettings[LC_MFW_RLEG][GetSelectionIndex(LC_MFW_RLEG)].Offset, Mat); + m_Matrices[LC_MFW_RLEG] = lcMul(Mat, Root); + } + + if (m_Info[LC_MFW_RLEGA]) { lcVector3 Center(-0.4f, -0.04f, -1.12f); - Mat = lcMatrix44RotationZ(LC_DTOR * m_Angles[LC_MFW_RIGHT_SHOE]); - Mat2 = mSettings[LC_MFW_RIGHT_SHOE][GetSelectionIndex(LC_MFW_RIGHT_SHOE)].Offset; + Mat = lcMatrix44RotationZ(LC_DTOR * m_Angles[LC_MFW_RLEGA]); + Mat2 = mSettings[LC_MFW_RLEGA][GetSelectionIndex(LC_MFW_RLEGA)].Offset; Mat2.SetTranslation(lcMul31(-Center, Mat2)); Mat = lcMul(Mat2, Mat); Mat.SetTranslation(lcMul31(Center, Mat2)); - m_Matrices[LC_MFW_RIGHT_SHOE] = lcMul(Mat, m_Matrices[LC_MFW_RIGHT_LEG]); + m_Matrices[LC_MFW_RLEGA] = lcMul(Mat, m_Matrices[LC_MFW_RLEG]); } - if (m_Info[LC_MFW_LEFT_LEG]) + if (m_Info[LC_MFW_LLEG]) { - Mat = lcMatrix44RotationX(-LC_DTOR * m_Angles[LC_MFW_LEFT_LEG]); + Mat = lcMatrix44RotationX(-LC_DTOR * m_Angles[LC_MFW_LLEG]); Mat.SetTranslation(lcVector3(0, 0, -1.76f)); - Mat = lcMul(mSettings[LC_MFW_LEFT_LEG][GetSelectionIndex(LC_MFW_LEFT_LEG)].Offset, Mat); - m_Matrices[LC_MFW_LEFT_LEG] = lcMul(Mat, Root); + Mat = lcMul(mSettings[LC_MFW_LLEG][GetSelectionIndex(LC_MFW_LLEG)].Offset, Mat); + m_Matrices[LC_MFW_LLEG] = lcMul(Mat, Root); } - if (m_Info[LC_MFW_LEFT_SHOE]) + if (m_Info[LC_MFW_LLEGA]) { lcVector3 Center(0.4f, -0.04f, -1.12f); - Mat = lcMatrix44RotationZ(LC_DTOR * m_Angles[LC_MFW_LEFT_SHOE]); - Mat2 = mSettings[LC_MFW_LEFT_SHOE][GetSelectionIndex(LC_MFW_LEFT_SHOE)].Offset; + Mat = lcMatrix44RotationZ(LC_DTOR * m_Angles[LC_MFW_LLEGA]); + Mat2 = mSettings[LC_MFW_LLEGA][GetSelectionIndex(LC_MFW_LLEGA)].Offset; Mat2.SetTranslation(lcMul31(-Center, Mat2)); Mat = lcMul(Mat2, Mat); Mat.SetTranslation(lcMul31(Center, Mat2)); - m_Matrices[LC_MFW_LEFT_SHOE] = lcMul(Mat, m_Matrices[LC_MFW_LEFT_LEG]); + m_Matrices[LC_MFW_LLEGA] = lcMul(Mat, m_Matrices[LC_MFW_LLEG]); } } diff --git a/common/minifig.h b/common/minifig.h index 30a16e4c..4fea4498 100644 --- a/common/minifig.h +++ b/common/minifig.h @@ -9,21 +9,23 @@ class PieceInfo; enum LC_MFW_TYPES { - LC_MFW_HAT, + LC_MFW_HATS, + LC_MFW_HATS2, LC_MFW_HEAD, - LC_MFW_TORSO, LC_MFW_NECK, - LC_MFW_LEFT_ARM, - LC_MFW_RIGHT_ARM, - LC_MFW_LEFT_HAND, - LC_MFW_RIGHT_HAND, - LC_MFW_LEFT_TOOL, - LC_MFW_RIGHT_TOOL, - LC_MFW_HIPS, - LC_MFW_LEFT_LEG, - LC_MFW_RIGHT_LEG, - LC_MFW_LEFT_SHOE, - LC_MFW_RIGHT_SHOE, + LC_MFW_BODY, + LC_MFW_BODY2, + LC_MFW_BODY3, + LC_MFW_RARM, + LC_MFW_LARM, + LC_MFW_RHAND, + LC_MFW_LHAND, + LC_MFW_RHANDA, + LC_MFW_LHANDA, + LC_MFW_RLEG, + LC_MFW_LLEG, + LC_MFW_RLEGA, + LC_MFW_LLEGA, LC_MFW_NUMITEMS }; diff --git a/win/Figdlg.cpp b/win/Figdlg.cpp index 82151c47..b3d2b204 100644 --- a/win/Figdlg.cpp +++ b/win/Figdlg.cpp @@ -15,7 +15,7 @@ static char THIS_FILE[] = __FILE__; CMinifigDlg::CMinifigDlg(void* param, CWnd* pParent /*=NULL*/) : CDialog(CMinifigDlg::IDD, pParent) { - m_pMinifig = (MinifigWizard*)param; + m_pMinifig = (MinifigWizard*)param; m_pMinifigWnd = NULL; //{{AFX_DATA_INIT(CMinifigDlg) @@ -27,21 +27,23 @@ void CMinifigDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CMinifigDlg) - DDX_Control(pDX, IDC_MF_HANDLCOLOR, m_clrHandLeft); - DDX_Control(pDX, IDC_MF_TORSOCOLOR, m_clrTorso); - DDX_Control(pDX, IDC_MF_TOOLLCOLOR, m_clrToolLeft); - DDX_Control(pDX, IDC_MF_SHOELCOLOR, m_clrShoeLeft); - DDX_Control(pDX, IDC_MF_LEGLCOLOR, m_clrLegLeft); + DDX_Control(pDX, IDC_MF_HATSCOLOR, m_clrHats); + DDX_Control(pDX, IDC_MF_HATS2COLOR, m_clrHats2); DDX_Control(pDX, IDC_MF_HEADCOLOR, m_clrHead); - DDX_Control(pDX, IDC_MF_ARMLCOLOR, m_clrArmLeft); - DDX_Control(pDX, IDC_MF_TOOLRCOLOR, m_clrToolRight); - DDX_Control(pDX, IDC_MF_SHOERCOLOR, m_clrShoeRight); - DDX_Control(pDX, IDC_MF_LEGRCOLOR, m_clrLegRight); - DDX_Control(pDX, IDC_MF_HIPSCOLOR, m_clrHips); - DDX_Control(pDX, IDC_MF_HANDRCOLOR, m_clrHandRight); - DDX_Control(pDX, IDC_MF_ARMRCOLOR, m_clrArmRight); DDX_Control(pDX, IDC_MF_NECKCOLOR, m_clrNeck); - DDX_Control(pDX, IDC_MF_HATCOLOR, m_clrHat); + DDX_Control(pDX, IDC_MF_BODYCOLOR, m_clrBody); + DDX_Control(pDX, IDC_MF_BODY2COLOR, m_clrBody2); + DDX_Control(pDX, IDC_MF_BODY3COLOR, m_clrBody3); + DDX_Control(pDX, IDC_MF_ARMLCOLOR, m_clrArmLeft); + DDX_Control(pDX, IDC_MF_ARMRCOLOR, m_clrArmRight); + DDX_Control(pDX, IDC_MF_HANDLCOLOR, m_clrHandLeft); + DDX_Control(pDX, IDC_MF_HANDRCOLOR, m_clrHandRight); + DDX_Control(pDX, IDC_MF_TOOLLCOLOR, m_clrToolLeft); + DDX_Control(pDX, IDC_MF_TOOLRCOLOR, m_clrToolRight); + DDX_Control(pDX, IDC_MF_LEGLCOLOR, m_clrLegLeft); + DDX_Control(pDX, IDC_MF_LEGRCOLOR, m_clrLegRight); + DDX_Control(pDX, IDC_MF_SHOELCOLOR, m_clrShoeLeft); + DDX_Control(pDX, IDC_MF_SHOERCOLOR, m_clrShoeRight); //}}AFX_DATA_MAP } @@ -50,8 +52,8 @@ BEGIN_MESSAGE_MAP(CMinifigDlg, CDialog) //{{AFX_MSG_MAP(CMinifigDlg) //}}AFX_MSG_MAP ON_MESSAGE(CPN_SELENDOK, OnColorSelEndOK) - ON_CONTROL_RANGE(CBN_SELENDOK, IDC_MF_HAT, IDC_MF_SHOER, OnPieceSelEndOK) - ON_CONTROL_RANGE(EN_CHANGE, IDC_MF_HATANGLE, IDC_MF_SHOERANGLE, OnChangeAngle) + ON_CONTROL_RANGE(CBN_SELENDOK, IDC_MF_HATS, IDC_MF_SHOER, OnPieceSelEndOK) + ON_CONTROL_RANGE(EN_CHANGE, IDC_MF_HATSANGLE, IDC_MF_SHOERANGLE, OnChangeAngle) END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// @@ -61,62 +63,61 @@ BOOL CMinifigDlg::OnInitDialog() { CDialog::OnInitDialog(); - ModifyStyle (0, WS_CLIPCHILDREN, 0); + ModifyStyle(0, WS_CLIPCHILDREN, 0); RECT r; - //RECT r = { 200, 15, 400, 320 }; - ::GetWindowRect (::GetDlgItem(m_hWnd, IDC_PREVIEWSTATIC), &r); - ScreenToClient (&r); + ::GetWindowRect(::GetDlgItem(m_hWnd, IDC_PREVIEWSTATIC), &r); + ScreenToClient(&r); HINSTANCE hInst = AfxGetInstanceHandle(); WNDCLASS wndcls; -LRESULT CALLBACK GLWindowProc (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); +LRESULT CALLBACK GLWindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); #define OPENGL_CLASSNAME _T("LeoCADOpenGLClass") #define MINIFIG_CLASSNAME _T("LeoCADMinifigOpenGLClass") - // check if our class is registered - if(!(GetClassInfo (hInst, MINIFIG_CLASSNAME, &wndcls))) + // check if our class is registered + if(!(GetClassInfo(hInst, MINIFIG_CLASSNAME, &wndcls))) { - if (GetClassInfo (hInst, OPENGL_CLASSNAME, &wndcls)) - { - // set our class name - wndcls.lpszClassName = MINIFIG_CLASSNAME; - wndcls.lpfnWndProc = GLWindowProc; + if (GetClassInfo(hInst, OPENGL_CLASSNAME, &wndcls)) + { + // set our class name + wndcls.lpszClassName = MINIFIG_CLASSNAME; + wndcls.lpfnWndProc = GLWindowProc; - // register class - if (!AfxRegisterClass (&wndcls)) - AfxThrowResourceException(); - } + // register class + if (!AfxRegisterClass(&wndcls)) + AfxThrowResourceException(); + } else AfxThrowResourceException(); - } + } m_pMinifigWnd = new CWnd; - m_pMinifigWnd->CreateEx (0, MINIFIG_CLASSNAME, "LeoCAD", WS_BORDER | WS_CHILD | WS_VISIBLE, r, this, 0, m_pMinifig); + m_pMinifigWnd->CreateEx(0, MINIFIG_CLASSNAME, "LeoCAD", WS_BORDER | WS_CHILD | WS_VISIBLE, r, this, 0, m_pMinifig); for (int i = 0; i < LC_MFW_NUMITEMS; i++) - ((CColorPicker*)GetDlgItem (IDC_MF_HATCOLOR+i))->SetColorIndex (m_pMinifig->m_Colors[i]); + ((CColorPicker*)GetDlgItem(IDC_MF_HATSCOLOR+i))->SetColorIndex(m_pMinifig->m_Colors[i]); for (int i = 0; i < LC_MFW_NUMITEMS; i++) { - CComboBox* pCombo = (CComboBox*)GetDlgItem(i+IDC_MF_HAT); + CComboBox* pCombo = (CComboBox*)GetDlgItem(i+IDC_MF_HATS); ObjArray& Pieces = m_pMinifig->mSettings[i]; - for (int j = 0; j < Pieces.GetSize(); j++) + for (int j = 0; j < Pieces.GetSize(); j++) pCombo->AddString(Pieces[j].Description); } for (int i = 0; i < LC_MFW_NUMITEMS; i++) { - CComboBox* pCombo = (CComboBox*)GetDlgItem(i+IDC_MF_HAT); + CComboBox* pCombo = (CComboBox*)GetDlgItem(i + IDC_MF_HATS); pCombo->SetCurSel(m_pMinifig->GetSelectionIndex(i)); } - for (int i = IDC_MF_HATSPIN; i <= IDC_MF_SHOERSPIN; i++) + for (int i = IDC_MF_HATSSPIN; i <= IDC_MF_SHOERSPIN; i++) ((CSpinButtonCtrl*)GetDlgItem(i))->SetRange(-360, 360); - return TRUE; // return TRUE unless you set the focus to a control + return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } @@ -134,8 +135,8 @@ BOOL CMinifigDlg::DestroyWindow() LONG CMinifigDlg::OnColorSelEndOK(UINT lParam, LONG wParam) { - m_pMinifig->SetColor(wParam-IDC_MF_HATCOLOR, lParam); - m_pMinifig->Redraw (); + m_pMinifig->SetColor(wParam - IDC_MF_HATSCOLOR, lParam); + m_pMinifig->Redraw(); return TRUE; } @@ -143,21 +144,21 @@ LONG CMinifigDlg::OnColorSelEndOK(UINT lParam, LONG wParam) void CMinifigDlg::OnPieceSelEndOK(UINT nID) { CComboBox* Combo = (CComboBox*)GetDlgItem(nID); - m_pMinifig->SetSelectionIndex(nID - IDC_MF_HAT, Combo->GetCurSel()); + m_pMinifig->SetSelectionIndex(nID - IDC_MF_HATS, Combo->GetCurSel()); m_pMinifig->Redraw(); } void CMinifigDlg::OnChangeAngle(UINT nID) { - int index[] = { LC_MFW_HAT, LC_MFW_HEAD, LC_MFW_LEFT_ARM, LC_MFW_RIGHT_ARM, LC_MFW_LEFT_HAND, LC_MFW_RIGHT_HAND, - LC_MFW_LEFT_TOOL, LC_MFW_RIGHT_TOOL, LC_MFW_LEFT_LEG, LC_MFW_RIGHT_LEG, LC_MFW_LEFT_SHOE, LC_MFW_RIGHT_SHOE }; + int index[] = { LC_MFW_HATS, LC_MFW_HATS2, LC_MFW_HEAD, LC_MFW_RARM, LC_MFW_LARM, LC_MFW_RHAND, LC_MFW_LHAND, + LC_MFW_RHANDA, LC_MFW_LHANDA, LC_MFW_RLEG, LC_MFW_LLEG, LC_MFW_RLEGA, LC_MFW_LLEGA }; char tmp[65]; GetDlgItem(nID)->GetWindowText(tmp, 65); if (m_pMinifigWnd) { - m_pMinifig->SetAngle(index[nID-IDC_MF_HATANGLE], (float)strtod(tmp, NULL)); + m_pMinifig->SetAngle(index[nID-IDC_MF_HATSANGLE], (float)strtod(tmp, NULL)); m_pMinifig->Redraw(); } } diff --git a/win/Figdlg.h b/win/Figdlg.h index 974029a8..3f4be816 100644 --- a/win/Figdlg.h +++ b/win/Figdlg.h @@ -23,21 +23,23 @@ public: // Dialog Data //{{AFX_DATA(CMinifigDlg) enum { IDD = IDD_MINIFIG }; - CColorPicker m_clrHandLeft; - CColorPicker m_clrTorso; - CColorPicker m_clrToolLeft; - CColorPicker m_clrShoeLeft; - CColorPicker m_clrLegLeft; + CColorPicker m_clrHats; + CColorPicker m_clrHats2; CColorPicker m_clrHead; - CColorPicker m_clrArmLeft; - CColorPicker m_clrToolRight; - CColorPicker m_clrShoeRight; - CColorPicker m_clrLegRight; - CColorPicker m_clrHips; - CColorPicker m_clrHandRight; - CColorPicker m_clrArmRight; CColorPicker m_clrNeck; - CColorPicker m_clrHat; + CColorPicker m_clrBody; + CColorPicker m_clrBody2; + CColorPicker m_clrBody3; + CColorPicker m_clrArmLeft; + CColorPicker m_clrArmRight; + CColorPicker m_clrHandLeft; + CColorPicker m_clrHandRight; + CColorPicker m_clrToolLeft; + CColorPicker m_clrToolRight; + CColorPicker m_clrLegLeft; + CColorPicker m_clrLegRight; + CColorPicker m_clrShoeLeft; + CColorPicker m_clrShoeRight; //}}AFX_DATA // Overrides diff --git a/win/LeoCAD.rc b/win/LeoCAD.rc index b7f045ad..fccd102f 100644 --- a/win/LeoCAD.rc +++ b/win/LeoCAD.rc @@ -688,68 +688,74 @@ BEGIN PUSHBUTTON "Apply",IDAPPLY,71,28,35,11 END -IDD_MINIFIG DIALOGEX 0, 0, 520, 235 +IDD_MINIFIG DIALOGEX 0, 0, 530, 271 STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "Minifig Wizard" FONT 8, "MS Sans Serif", 0, 0, 0x0 BEGIN - DEFPUSHBUTTON "OK",IDOK,423,214,41,14 - PUSHBUTTON "Cancel",IDCANCEL,472,214,41,14 - COMBOBOX IDC_MF_HAT,7,11,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "",IDC_MF_HATCOLOR,136,11,22,12 - EDITTEXT IDC_MF_HATANGLE,162,12,28,12,ES_AUTOHSCROLL | ES_NUMBER - CONTROL "Spin1",IDC_MF_HATSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,184,11,7,12 - COMBOBOX IDC_MF_NECK,7,37,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "",IDC_MF_NECKCOLOR,136,37,22,12 - COMBOBOX IDC_MF_ARMR,7,63,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "",IDC_MF_ARMRCOLOR,136,63,22,12 - EDITTEXT IDC_MF_ARMRANGLE,162,64,28,12,ES_AUTOHSCROLL | ES_NUMBER - CONTROL "Spin1",IDC_MF_ARMRSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,184,63,8,12 - COMBOBOX IDC_MF_HANDR,7,89,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "",IDC_MF_HANDRCOLOR,136,89,22,12 - EDITTEXT IDC_MF_HANDRANGLE,162,90,28,12,ES_AUTOHSCROLL | ES_NUMBER - CONTROL "Spin1",IDC_MF_HANDRSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,184,89,8,12 - COMBOBOX IDC_MF_TOOLR,7,115,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "",IDC_MF_TOOLRCOLOR,136,115,22,12 - EDITTEXT IDC_MF_TOOLRANGLE,162,116,28,12,ES_AUTOHSCROLL | ES_NUMBER - CONTROL "Spin1",IDC_MF_TOOLRSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,184,115,8,12 - COMBOBOX IDC_MF_HIPS,7,141,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "",IDC_MF_HIPSCOLOR,136,141,22,12 - COMBOBOX IDC_MF_LEGR,7,167,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "",IDC_MF_LEGRCOLOR,136,167,22,12 - EDITTEXT IDC_MF_LEGRANGLE,162,168,28,12,ES_AUTOHSCROLL | ES_NUMBER - CONTROL "Spin1",IDC_MF_LEGRSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,184,167,8,12 - COMBOBOX IDC_MF_SHOER,7,193,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "",IDC_MF_SHOERCOLOR,136,193,22,12 - EDITTEXT IDC_MF_SHOERANGLE,162,194,28,12,ES_AUTOHSCROLL | ES_NUMBER - CONTROL "Spin1",IDC_MF_SHOERSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,184,193,8,12 - EDITTEXT IDC_MF_HEADANGLE,330,12,28,12,ES_AUTOHSCROLL | ES_NUMBER - CONTROL "Spin1",IDC_MF_HEADSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,352,12,7,12 - PUSHBUTTON "",IDC_MF_HEADCOLOR,362,11,22,12 - COMBOBOX IDC_MF_HEAD,388,11,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "",IDC_MF_TORSOCOLOR,362,37,22,12 - COMBOBOX IDC_MF_TORSO,388,37,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - EDITTEXT IDC_MF_ARMLANGLE,330,64,28,12,ES_AUTOHSCROLL | ES_NUMBER - CONTROL "Spin1",IDC_MF_ARMLSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,352,64,7,12 - PUSHBUTTON "",IDC_MF_ARMLCOLOR,362,63,22,12 - COMBOBOX IDC_MF_ARML,388,63,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - EDITTEXT IDC_MF_HANDLANGLE,330,90,28,12,ES_AUTOHSCROLL | ES_NUMBER - CONTROL "Spin1",IDC_MF_HANDLSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,352,90,7,12 - PUSHBUTTON "",IDC_MF_HANDLCOLOR,362,89,22,12 - COMBOBOX IDC_MF_HANDL,388,89,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - EDITTEXT IDC_MF_TOOLLANGLE,330,116,28,12,ES_AUTOHSCROLL | ES_NUMBER - CONTROL "Spin1",IDC_MF_TOOLLSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,352,116,7,12 - PUSHBUTTON "",IDC_MF_TOOLLCOLOR,362,115,22,12 - COMBOBOX IDC_MF_TOOLL,388,115,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - EDITTEXT IDC_MF_LEGLANGLE,330,168,28,12,ES_AUTOHSCROLL | ES_NUMBER - CONTROL "Spin1",IDC_MF_LEGLSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,352,168,7,12 - PUSHBUTTON "",IDC_MF_LEGLCOLOR,362,167,22,12 - COMBOBOX IDC_MF_LEGL,388,167,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - EDITTEXT IDC_MF_SHOELANGLE,330,194,28,12,ES_AUTOHSCROLL | ES_NUMBER - CONTROL "Spin1",IDC_MF_SHOELSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,352,194,7,12 - PUSHBUTTON "",IDC_MF_SHOELCOLOR,362,193,22,12 - COMBOBOX IDC_MF_SHOEL,388,193,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - LTEXT "",IDC_PREVIEWSTATIC,194,12,131,195,NOT WS_VISIBLE | NOT WS_GROUP + DEFPUSHBUTTON "OK",IDOK,433,250,41,14 + PUSHBUTTON "Cancel",IDCANCEL,482,250,41,14 + COMBOBOX IDC_MF_HATS,7,11,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "",IDC_MF_HATSCOLOR,136,11,22,12 + EDITTEXT IDC_MF_HATSANGLE,162,12,28,12,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "Spin1",IDC_MF_HATSSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,184,12,7,12 + COMBOBOX IDC_MF_HATS2,7,37,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "",IDC_MF_HATS2COLOR,136,37,22,12 + EDITTEXT IDC_MF_HATS2ANGLE,162,38,28,12,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "",IDC_MF_HATS2SPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,181,39,7,12 + COMBOBOX IDC_MF_NECK,7,63,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "",IDC_MF_NECKCOLOR,136,63,22,12 + COMBOBOX IDC_MF_ARMR,7,89,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "",IDC_MF_ARMRCOLOR,136,89,22,12 + EDITTEXT IDC_MF_ARMRANGLE,162,90,28,12,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "Spin1",IDC_MF_ARMRSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,184,90,8,12 + COMBOBOX IDC_MF_HANDR,7,115,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "",IDC_MF_HANDRCOLOR,136,115,22,12 + EDITTEXT IDC_MF_HANDRANGLE,162,116,28,12,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "Spin1",IDC_MF_HANDRSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,184,116,8,12 + COMBOBOX IDC_MF_TOOLR,7,141,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "",IDC_MF_TOOLRCOLOR,136,141,22,12 + EDITTEXT IDC_MF_TOOLRANGLE,162,142,28,12,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "Spin1",IDC_MF_TOOLRSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,184,142,8,12 + COMBOBOX IDC_MF_BODY2,7,167,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "",IDC_MF_BODY2COLOR,136,167,22,12 + COMBOBOX IDC_MF_LEGR,7,193,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "",IDC_MF_LEGRCOLOR,136,193,22,12 + EDITTEXT IDC_MF_LEGRANGLE,162,194,28,12,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "Spin1",IDC_MF_LEGRSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,184,194,8,12 + COMBOBOX IDC_MF_SHOER,7,219,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "",IDC_MF_SHOERCOLOR,136,219,22,12 + EDITTEXT IDC_MF_SHOERANGLE,162,220,28,12,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "Spin1",IDC_MF_SHOERSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,184,220,8,12 + EDITTEXT IDC_MF_HEADANGLE,340,12,28,12,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "Spin1",IDC_MF_HEADSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,362,13,7,12 + PUSHBUTTON "",IDC_MF_HEADCOLOR,372,11,22,12 + COMBOBOX IDC_MF_HEAD,398,11,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "",IDC_MF_BODYCOLOR,372,37,22,12 + COMBOBOX IDC_MF_BODY,398,37,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + EDITTEXT IDC_MF_ARMLANGLE,340,90,28,12,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "Spin1",IDC_MF_ARMLSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,362,90,7,12 + PUSHBUTTON "",IDC_MF_ARMLCOLOR,372,89,22,12 + COMBOBOX IDC_MF_ARML,398,89,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + EDITTEXT IDC_MF_HANDLANGLE,340,116,28,12,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "Spin1",IDC_MF_HANDLSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,361,116,7,12 + PUSHBUTTON "",IDC_MF_HANDLCOLOR,372,115,22,12 + COMBOBOX IDC_MF_HANDL,398,115,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + EDITTEXT IDC_MF_TOOLLANGLE,340,142,28,12,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "Spin1",IDC_MF_TOOLLSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,361,142,7,12 + PUSHBUTTON "",IDC_MF_TOOLLCOLOR,372,141,22,12 + COMBOBOX IDC_MF_TOOLL,398,141,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "",IDC_MF_BODY3COLOR,372,167,22,12 + COMBOBOX IDC_MF_BODY3,398,167,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + EDITTEXT IDC_MF_LEGLANGLE,340,194,28,12,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "Spin1",IDC_MF_LEGLSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,361,194,7,12 + PUSHBUTTON "",IDC_MF_LEGLCOLOR,372,193,22,12 + COMBOBOX IDC_MF_LEGL,398,193,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + EDITTEXT IDC_MF_SHOELANGLE,340,220,28,12,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "Spin1",IDC_MF_SHOELSPIN,"msctls_updown32",UDS_WRAP | UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS,361,220,7,12 + PUSHBUTTON "",IDC_MF_SHOELCOLOR,372,219,22,12 + COMBOBOX IDC_MF_SHOEL,398,219,125,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + LTEXT "",IDC_PREVIEWSTATIC,194,12,141,231,NOT WS_VISIBLE | NOT WS_GROUP END IDD_HTML DIALOG 0, 0, 187, 172 @@ -1252,9 +1258,9 @@ BEGIN IDD_MINIFIG, DIALOG BEGIN LEFTMARGIN, 7 - RIGHTMARGIN, 393 + RIGHTMARGIN, 523 TOPMARGIN, 7 - BOTTOMMARGIN, 179 + BOTTOMMARGIN, 264 END IDD_HTML, DIALOG diff --git a/win/resource.h b/win/resource.h index 52fa8baf..d370ee4d 100644 --- a/win/resource.h +++ b/win/resource.h @@ -298,100 +298,106 @@ #define IDC_SCNDLG_SKYCOLOR2 1186 #define IDC_LIBDLG_LIST 1186 #define IDC_SCNDLG_GRAD2 1186 -#define IDC_MF_HATCOLOR 1189 -#define IDC_MF_HEADCOLOR 1190 #define IDC_HTMDLG_HIGHLIGHT 1190 -#define IDC_MF_TORSOCOLOR 1191 #define IDC_GRID 1191 -#define IDC_MF_NECKCOLOR 1192 -#define IDC_MF_ARMLCOLOR 1193 -#define IDC_MF_ARMRCOLOR 1194 -#define IDC_MF_HANDLCOLOR 1195 -#define IDC_MF_HANDRCOLOR 1196 -#define IDC_MF_TOOLLCOLOR 1197 -#define IDC_MF_TOOLRCOLOR 1198 -#define IDC_MF_HIPSCOLOR 1199 -#define IDC_MF_LEGLCOLOR 1200 #define IDC_TEROPT_XPAT 1200 -#define IDC_MF_LEGRCOLOR 1201 #define IDC_TEROPT_YPAT 1201 -#define IDC_MF_SHOELCOLOR 1202 #define IDC_TEROPT_XSIZE 1202 -#define IDC_MF_SHOERCOLOR 1203 #define IDC_TEROPT_YSIZE 1203 -#define IDC_MF_HAT 1204 -#define IDC_TEROPT_COLOR 1204 -#define IDC_MF_HEAD 1205 -#define IDC_TEROPT_TEXTURENAME 1205 -#define IDC_MF_TORSO 1206 -#define IDC_TEROPT_TEXTURE 1206 +#define IDC_MF_HATSCOLOR 1187 +#define IDC_MF_HATS2COLOR 1188 +#define IDC_MF_HEADCOLOR 1189 +#define IDC_MF_NECKCOLOR 1190 +#define IDC_MF_BODYCOLOR 1191 +#define IDC_MF_BODY2COLOR 1192 +#define IDC_MF_BODY3COLOR 1193 +#define IDC_MF_ARMLCOLOR 1194 +#define IDC_MF_ARMRCOLOR 1195 +#define IDC_MF_HANDLCOLOR 1196 +#define IDC_MF_HANDRCOLOR 1197 +#define IDC_MF_TOOLLCOLOR 1198 +#define IDC_MF_TOOLRCOLOR 1199 +#define IDC_MF_LEGLCOLOR 1200 +#define IDC_MF_LEGRCOLOR 1201 +#define IDC_MF_SHOELCOLOR 1202 +#define IDC_MF_SHOERCOLOR 1203 +#define IDC_MF_HATS 1204 +#define IDC_MF_HATS2 1205 +#define IDC_MF_HEAD 1206 #define IDC_MF_NECK 1207 +#define IDC_MF_BODY 1208 +#define IDC_MF_BODY2 1209 +#define IDC_MF_BODY3 1210 +#define IDC_MF_ARML 1211 +#define IDC_MF_ARMR 1212 +#define IDC_MF_HANDL 1213 +#define IDC_MF_HANDR 1214 +#define IDC_MF_TOOLL 1215 +#define IDC_MF_TOOLR 1216 +#define IDC_MF_LEGL 1217 +#define IDC_MF_LEGR 1218 +#define IDC_MF_SHOEL 1219 +#define IDC_MF_SHOER 1220 +#define IDC_MF_HATSANGLE 1221 +#define IDC_MF_HATS2ANGLE 1222 +#define IDC_MF_HEADANGLE 1223 +#define IDC_MF_ARMLANGLE 1224 +#define IDC_MF_ARMRANGLE 1225 +#define IDC_MF_HANDLANGLE 1226 +#define IDC_MF_HANDRANGLE 1227 +#define IDC_MF_TOOLLANGLE 1228 +#define IDC_MF_TOOLRANGLE 1229 +#define IDC_MF_LEGLANGLE 1230 +#define IDC_MF_LEGRANGLE 1231 +#define IDC_MF_SHOELANGLE 1232 +#define IDC_MF_SHOERANGLE 1233 +#define IDC_MF_HATSSPIN 1234 +#define IDC_MF_HATS2SPIN 1235 +#define IDC_MF_HEADSPIN 1236 +#define IDC_MF_ARMLSPIN 1237 +#define IDC_MF_ARMRSPIN 1238 +#define IDC_MF_HANDLSPIN 1239 +#define IDC_MF_HANDRSPIN 1240 +#define IDC_MF_TOOLLSPIN 1241 +#define IDC_MF_TOOLRSPIN 1242 +#define IDC_MF_LEGLSPIN 1243 +#define IDC_MF_LEGRSPIN 1244 +#define IDC_MF_SHOELSPIN 1245 +#define IDC_MF_SHOERSPIN 1246 +#define IDC_TEROPT_COLOR 1204 +#define IDC_TEROPT_TEXTURENAME 1205 +#define IDC_TEROPT_TEXTURE 1206 #define IDC_TEROPT_TEXTUREBROWSE 1207 -#define IDC_MF_ARML 1208 #define IDC_TEROPT_SMOOTH 1208 -#define IDC_MF_ARMR 1209 -#define IDC_MF_HANDL 1210 #define IDC_EDIT1 1210 -#define IDC_MF_HANDR 1211 #define IDC_TEROPT_FLAT 1211 #define IDC_TRANSDLG_GY 1211 #define IDC_CATDLG_KEYWORDS 1211 -#define IDC_MF_TOOLL 1212 #define IDC_EDIT2 1212 #define IDC_SCNDLG_SOLID 1212 #define IDC_TRANSDLG_GZ 1212 -#define IDC_MF_TOOLR 1213 #define IDC_SCNDLG_GRADIENT 1213 #define IDC_TRANSDLG_OY 1213 -#define IDC_MF_HIPS 1214 #define IDC_SCNDLG_IMAGE 1214 #define IDC_TREE 1214 #define IDC_TRANSDLG_OZ 1214 -#define IDC_MF_LEGL 1215 -#define IDC_MF_LEGR 1216 -#define IDC_MF_SHOEL 1217 -#define IDC_MF_SHOER 1218 -#define IDC_PREVIEWSTATIC 1219 -#define IDC_MF_HATANGLE 1221 -#define IDC_MF_HEADANGLE 1222 -#define IDC_MF_ARMLANGLE 1223 +#define IDC_PREVIEWSTATIC 1186 #define IDC_HTMLDLG_HTMLEXT 1223 -#define IDC_MF_ARMRANGLE 1224 -#define IDC_MF_HANDLANGLE 1225 #define ID_LIBTEX_ADD 1225 -#define IDC_MF_HANDRANGLE 1226 #define ID_LIBTEX_REMOVE 1226 -#define IDC_MF_TOOLLANGLE 1227 -#define IDC_MF_TOOLRANGLE 1228 #define ID_LIBTEX_LIST 1228 -#define IDC_MF_LEGLANGLE 1229 #define IDC_ABTDLG_HOMEPAGE 1229 -#define IDC_MF_LEGRANGLE 1230 #define IDC_KEYDLG_CMDLIST 1230 -#define IDC_MF_SHOELANGLE 1231 -#define IDC_MF_SHOERANGLE 1232 #define IDC_KEYDLG_REMOVE 1233 -#define IDC_MF_HATSPIN 1234 -#define IDC_MF_HEADSPIN 1235 -#define IDC_MF_ARMLSPIN 1236 #define IDC_KEYDLG_RESET 1236 -#define IDC_MF_ARMRSPIN 1237 #define IDC_KEYDLG_KEYEDIT 1237 -#define IDC_MF_HANDLSPIN 1238 #define IDC_KEYDLG_ASSIGN 1238 -#define IDC_MF_HANDRSPIN 1239 #define IDC_KEYDLG_COMBO 1239 -#define IDC_MF_TOOLLSPIN 1240 #define IDC_KEYDLG_SAVE 1240 -#define IDC_MF_TOOLRSPIN 1241 #define IDC_KEYDLG_LOAD 1241 -#define IDC_MF_LEGLSPIN 1242 #define IDC_KEYDLG_FILENAME 1242 -#define IDC_MF_LEGRSPIN 1243 #define IDC_ABTDLG_VERSION 1243 -#define IDC_MF_SHOELSPIN 1244 #define IDC_GENDLG_UPDATES 1244 -#define IDC_MF_SHOERSPIN 1245 #define IDC_TRANSDLG_GX 1245 #define IDC_TRANSDLG_OX 1246 #define IDC_CATDLG_NAME 1246