Exemple #1
0
LRESULT CMainDlg::OnBnClickedSet(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/)
{
	// TODO: 在此添加控件通知处理程序代码
	volume_level_to_set_ = GetDlgItemFloat(m_hWnd, IDC_TXT_LEVEL);
	volume_channel_to_set_ = GetDlgItemInt( IDC_TXT_CHANNEL, 0, FALSE);
	volume_level_scaler_to_set_ = GetDlgItemFloat(m_hWnd, IDC_TXT_SCALER);

	SetVolume(volume_channel_to_set_, volume_level_to_set_, volume_level_scaler_to_set_);

	return 0;
}
Exemple #2
0
void SaveM(HWND dialog)
{
	GetWindowText(GetDlgItem(dialog, IDC_M_MSGS), scen.messages[IM_msel]);
	GetDlgItemText(dialog, IDC_M_CINEM, scen.cinem[IM_csel], 0x20);
	scen.all_techs = IsDlgButtonChecked(dialog, IDC_G_ALLTECHS);
	scen.lock_teams = IsDlgButtonChecked(dialog, IDC_G_LOCKTEAMS);
	scen.mstrings[IM_msel] = GetDlgItemInt(dialog, IDC_M_STABLE, NULL, TRUE);
	scen.next_uid = GetDlgItemInt(dialog, IDC_G_NEXTID, NULL, FALSE);
	scen.editor_pos[0] = GetDlgItemFloat(dialog, IDC_G_X);
	scen.editor_pos[1] = GetDlgItemFloat(dialog, IDC_G_Y);
}
Exemple #3
0
BOOL MarkerDialog::DialogProc(UINT uMsg, WPARAM wParam, LPARAM lParam)
{
  switch (uMsg) {
    case WM_COMMAND:
      if (HIWORD(wParam) == BN_CLICKED) {
        if (LOWORD(wParam) == IDOK) {
          char buf[40];
          GetDlgItemText(hwnd, IDC_NAME, buf, sizeof(buf));
          marker.name = buf;
          marker.latitude = GetDlgItemFloat(hwnd, IDC_LATITUDE, 0);
          marker.longitude = GetDlgItemFloat(hwnd, IDC_LONGITUDE, 0);
          if (marker.latitude > 90 || marker.latitude < -90) {
            MessageBox(hwnd, "Latitude must be between -90 and 90.", "xearth", MB_OK|MB_ICONSTOP);
            SetFocus(GetDlgItem(hwnd, IDC_LATITUDE));
            break;
          }
          if (marker.longitude > 180 || marker.longitude < -180) {
            MessageBox(hwnd, "Longitude must be between -180 and 180.", "xearth", MB_OK|MB_ICONSTOP);
            SetFocus(GetDlgItem(hwnd, IDC_LONGITUDE));
            break;
          }
        }
        EndDialog(hwnd, LOWORD(wParam));
      }
      break;
    case WM_INITDIALOG:
      if (!marker.name.empty()) {
        SetDlgItemText(hwnd, IDC_NAME, marker.name.c_str());
        SetDlgItemFloat(hwnd, IDC_LATITUDE, marker.latitude);
        SetDlgItemFloat(hwnd, IDC_LONGITUDE, marker.longitude);
      }
      return TRUE;
    default:
      return FALSE;
  }
  return TRUE;
}
void CQC_EyesDlg::GetDialogParams( CDialogParams &p )
{
	p.m_flLeftEye[0] = GetDlgItemFloat( IDC_LEFT_EYE_X );
	p.m_flLeftEye[1] = GetDlgItemFloat( IDC_LEFT_EYE_Y );
	p.m_flLeftEye[2] = GetDlgItemFloat( IDC_LEFT_EYE_Z );

	p.m_flRightEye[0] = GetDlgItemFloat( IDC_RIGHT_EYE_X );
	p.m_flRightEye[1] = GetDlgItemFloat( IDC_RIGHT_EYE_Y );
	p.m_flRightEye[2] = GetDlgItemFloat( IDC_RIGHT_EYE_Z );

	bool bYAxisUp = IsOptionChecked( IDC_Y_AXIS_UP );
	if ( bYAxisUp )
	{
		HandleYAxisUp( p.m_flLeftEye[1], p.m_flLeftEye[2] );
		HandleYAxisUp( p.m_flRightEye[1], p.m_flRightEye[2] );
	}

	GetDlgItemText( IDC_REFERENCE_FILENAME, p.m_ReferenceFilename, sizeof( p.m_ReferenceFilename ) );
	GetDlgItemText( IDC_EXPRESSIONS_FILENAME, p.m_ExpressionsFilename, sizeof( p.m_ExpressionsFilename ) );
	GetDlgItemText( IDC_MODEL_FILENAME, p.m_ModelFilename, sizeof( p.m_ModelFilename ) );

	p.m_flIrisSize = GetDlgItemFloat( IDC_IRIS_SIZE );
	p.m_flEyeballSize = GetDlgItemFloat( IDC_EYEBALL_SIZE );

	p.m_flRightUpperLidRaised = GetDlgItemFloat( IDC_UPPER_LID_RAISED );
	p.m_flRightUpperLidNeutral = GetDlgItemFloat( IDC_UPPER_LID_NEUTRAL );
	p.m_flRightUpperLidLowered = GetDlgItemFloat( IDC_UPPER_LID_LOWERED );

	p.m_flRightLowerLidRaised = GetDlgItemFloat( IDC_LOWER_LID_RAISED );
	p.m_flRightLowerLidNeutral = GetDlgItemFloat( IDC_LOWER_LID_NEUTRAL );
	p.m_flRightLowerLidLowered = GetDlgItemFloat( IDC_LOWER_LID_LOWERED );

	if ( IsIndependentLeftLidControlEnabled() )
	{
		p.m_flLeftUpperLidRaised = GetDlgItemFloat( IDC_UPPER_LEFT_LID_RAISED );
		p.m_flLeftUpperLidNeutral = GetDlgItemFloat( IDC_UPPER_LEFT_LID_NEUTRAL );
		p.m_flLeftUpperLidLowered = GetDlgItemFloat( IDC_UPPER_LEFT_LID_LOWERED );

		p.m_flLeftLowerLidRaised = GetDlgItemFloat( IDC_LOWER_LEFT_LID_RAISED );
		p.m_flLeftLowerLidNeutral = GetDlgItemFloat( IDC_LOWER_LEFT_LID_NEUTRAL );
		p.m_flLeftLowerLidLowered = GetDlgItemFloat( IDC_LOWER_LEFT_LID_LOWERED );
	}
	else
	{
		// Left lids follow the right lids.
		p.m_flLeftUpperLidRaised = p.m_flRightUpperLidRaised;
		p.m_flLeftUpperLidNeutral = p.m_flRightUpperLidNeutral;
		p.m_flLeftUpperLidLowered = p.m_flRightUpperLidLowered;

		p.m_flLeftLowerLidRaised = p.m_flRightLowerLidRaised;
		p.m_flLeftLowerLidNeutral = p.m_flRightLowerLidNeutral;
		p.m_flLeftLowerLidLowered = p.m_flRightLowerLidLowered;
	}

	// Figure out the eyeball prefix.
	if ( IsOptionChecked( IDC_EYE_COLOR_LIGHT ) )
		strcpy( p.m_EyeballPrefix, "eyeball" );
	else
		strcpy( p.m_EyeballPrefix, "dark_eyeball" );

	// Figure out the pupil prefix.
	if ( IsOptionChecked( IDC_IRIS_COLOR_BROWN ) )
		strcpy( p.m_PupilPrefix, "pupil" );
	else if ( IsOptionChecked( IDC_IRIS_COLOR_GREEN ) )
		strcpy( p.m_PupilPrefix, "grn_pupil" );
	else
		strcpy( p.m_PupilPrefix, "bl_pupil" );
}
INT_PTR CALLBACK ExpoConfig::DlgConfigProc( HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam )
{
	ExpoConfig& config = ExpoConfig::GetSingleton();

	switch (message) 
	{
	case WM_SHOWWINDOW: ::SetFocus(nullptr); break;

	case WM_INITDIALOG:
		{
			config.m_hwnd = hWnd;
			CheckRadioButton(hWnd, IDC_Config_Coord3DMax, IDC_Config_CoordOpenGL, IDC_Config_Coord3DMax + config.m_coordSystem);
			CheckDlgButton(hWnd, IDC_Config_BuildNormal, config.m_bBuildNormal);
			CheckDlgButton(hWnd, IDC_Config_UnitMeter, config.m_bUnitMeter);
			CheckDlgButton(hWnd, IDC_Config_CopyFirstFrame, config.m_bCopyFirstFrameAsLast);
			SetDlgItemInt(hWnd, IDC_Config_SampleRate, ::ceil(1 / config.m_clipSampleRate), FALSE);
			SetDlgItemFloat(hWnd, IDC_Config_ClipLengthScale, config.m_clipLengthScale);
		}
		break; 

	case WM_COMMAND:
		{
			switch (LOWORD(wParam))
			{
			case IDC_Config_Coord3DMax:
			case IDC_Config_CoordD3D:
			case IDC_Config_CoordOpenGL:
				{
					IGameConversionManager::CoordSystem type = decltype(type)(LOWORD(wParam) - IDC_Config_Coord3DMax);
					config.m_coordSystem = type;
				}
				break;

			case IDC_Config_BuildNormal:	config.m_bBuildNormal = IsDlgButtonChecked(hWnd, IDC_Config_BuildNormal); break;
			case IDC_Config_UnitMeter:		config.m_bUnitMeter = IsDlgButtonChecked(hWnd, IDC_Config_UnitMeter); break;
			case IDC_Config_CopyFirstFrame:	config.m_bCopyFirstFrameAsLast = IsDlgButtonChecked(hWnd, IDC_Config_CopyFirstFrame); break;

			case IDC_Config_SampleRate:
				{
					if (HIWORD(wParam) == EN_KILLFOCUS)
					{
						BOOL bSucceed = FALSE;
						int rate = GetDlgItemInt(hWnd, IDC_Config_SampleRate, &bSucceed, TRUE);
						if(!bSucceed || rate <= 0)
						{
							MessageBox(hWnd, "Invalid sample rate!", "Exporter config", MB_OK);
							SetDlgItemInt(hWnd, IDC_Config_SampleRate, ::ceil(1 / config.m_clipSampleRate), FALSE);
						}
						else
						{
							config.m_clipSampleRate = 1.0f / rate;
						}
					}
				}
				break;

			case IDC_Config_ClipLengthScale:
				{
					if (HIWORD(wParam) == EN_KILLFOCUS)
					{
						BOOL bSucceed = FALSE;
						float scale = GetDlgItemFloat(hWnd, IDC_Config_ClipLengthScale, &bSucceed);
						if(!bSucceed || scale <= 0)
						{
							MessageBox(hWnd, "Invalid length scale!", "Exporter config", MB_OK);
							SetDlgItemFloat(hWnd, IDC_Config_ClipLengthScale, config.m_clipLengthScale);
						}
						else
						{
							config.m_clipLengthScale = scale;
						}
					}
				}
				break;

			case IDC_Config_Ok: EndDialog(hWnd, 0); break;
			default: return FALSE;
			}
		}
		break;

	default: return FALSE;
	}

	return TRUE;
}