void CTabsDlg::SetX(long selected) { if (selected) { float x; if (selected == -3) { m_textPara->GetRightIndent(&x); } else if (selected == -2) { m_textPara->GetFirstLineIndent(&x); } else if (selected == -1) { m_textPara->GetLeftIndent(&x); } else // Tab { m_textPara->GetTab(selected-1, &x, NULL, NULL); } SetDlgItemValue(m_hWnd, IDC_TABS_X, x, UNIT_PT); } else { SetDlgItemText(IDC_TABS_X, ""); } }
void CStrokeDlg::SetControlValues() { // Weight { double strokeWeight = tomUndefined; for (int i = 0; i < m_targetObjects.GetSize(); i++) { CComPtr<IPDStrokeSettings> stroke = m_targetObjects[i]; double strokeWeight2; stroke->get_strokeWeight(&strokeWeight2); if (i == 0) { strokeWeight = strokeWeight2; } else if (strokeWeight != strokeWeight2) { strokeWeight = tomUndefined; break; } } if (strokeWeight != tomUndefined) SetDlgItemValue(m_hWnd, IDC_STROKE_WEIGHT, strokeWeight, UNIT_PT); else SetDlgItemText(IDC_STROKE_WEIGHT, ""); } // Cap { long strokeCap = tomUndefined; for (int i = 0; i < m_targetObjects.GetSize(); i++) { CComPtr<IPDStrokeSettings> stroke = m_targetObjects[i]; long strokeCap2; stroke->get_strokeCap(&strokeCap2); if (i == 0) { strokeCap = strokeCap2; } else if (strokeCap != strokeCap2) { strokeCap = tomUndefined; break; } } CheckRadioButton(IDC_STROKE_CAP0, IDC_STROKE_CAP2, IDC_STROKE_CAP0+strokeCap); } // Join { double strokeJoin = tomUndefined; for (int i = 0; i < m_targetObjects.GetSize(); i++) { CComPtr<IPDStrokeSettings> stroke = m_targetObjects[i]; long strokeJoin2; stroke->get_strokeJoin(&strokeJoin2); if (i == 0) { strokeJoin = strokeJoin2; } else if (strokeJoin != strokeJoin2) { strokeJoin = tomUndefined; break; } } CheckRadioButton(IDC_STROKE_JOIN0, IDC_STROKE_JOIN2, IDC_STROKE_JOIN0+strokeJoin); } // MiterLimit { double miterLimit = tomUndefined; for (int i = 0; i < m_targetObjects.GetSize(); i++) { CComPtr<IPDStrokeSettings> stroke = m_targetObjects[i]; double miterLimit2; stroke->get_strokeMiterLimit(&miterLimit2); if (i == 0) { miterLimit = miterLimit2; } else if (miterLimit != miterLimit2) { miterLimit = tomUndefined; break; } } if (miterLimit != tomUndefined) SetDlgItemInt(IDC_STROKE_MITERLIMIT, miterLimit); else SetDlgItemText(IDC_STROKE_MITERLIMIT, ""); } // Dashes { double dashValues[6]; long dashedCount = 0; for (int i = 0; i < m_targetObjects.GetSize(); i++) { CComPtr<IPDStrokeSettings> stroke = m_targetObjects[i]; long dashedCount2; stroke->get_dashedCount(&dashedCount2); if (i == 0) { dashedCount = dashedCount2; } else if (dashedCount != dashedCount2) { dashedCount = 0; break; } for (int j = 0; j < dashedCount2; j++) { double value2; stroke->getDashedValue(j, &value2); if (i == 0) { dashValues[j] = value2; } else if (dashValues[j] != value2) { break; } } if (j < dashedCount2) { dashedCount = 0; break; } } for (i = 0; i < 6; i++) { if (i < dashedCount) SetDlgItemValue(m_hWnd, IDC_STROKE_DASHED0+i, dashValues[i], UNIT_PT); else SetDlgItemText(IDC_STROKE_DASHED0+i, ""); } } }