DoDataExchange
(
Boolean bFromControls
)
{
if (bFromControls)
{
Boolean bUseSpecifiedVertexImageSize =
radUseSpecifiedVertexImageSize.Checked;
Single fEdgeWidth, fRelativeArrowSize, fVertexRadius,
fVertexRelativeOuterGlowSize, fVertexAlpha, fEdgeAlpha;
Single fVertexImageSize = 0;
if (
!ValidateNumericUpDown(nudVertexRadius,
"a size for simple vertex shapes", out fVertexRadius)
||
( bUseSpecifiedVertexImageSize &&
!ValidateNumericUpDown(nudVertexImageSize,
"a size for vertex images", out fVertexImageSize) )
||
!ValidateNumericUpDown(nudVertexAlpha, "a vertex opacity",
out fVertexAlpha)
||
!ValidateNumericUpDown(nudVertexRelativeOuterGlowSize,
"a vertex glow width", out fVertexRelativeOuterGlowSize)
||
!ValidateNumericUpDown(nudEdgeWidth,
"a width for unselected edges", out fEdgeWidth)
||
!ValidateNumericUpDown(nudRelativeArrowSize,
"an edge arrow size", out fRelativeArrowSize)
||
!ValidateNumericUpDown(nudEdgeAlpha, "an edge opacity",
out fEdgeAlpha)
)
{
return (false);
}
m_oGeneralUserSettingsDialogUserSettings.TabControlSelectedIndex =
tcTabControl.SelectedIndex;
m_oGeneralUserSettings.BackColor = usrBackColor.Color;
m_oGeneralUserSettings.BackgroundImageUri =
txbBackgroundImageUri.Text;
m_oGeneralUserSettings.EdgeWidth = fEdgeWidth;
m_oGeneralUserSettings.RelativeArrowSize = fRelativeArrowSize;
m_oGeneralUserSettings.EdgeColor = usrEdgeColor.Color;
m_oGeneralUserSettings.EdgeAlpha = fEdgeAlpha;
m_oGeneralUserSettings.SelectedEdgeColor =
usrSelectedEdgeColor.Color;
DoDataExchangeEdgeCurvature(true);
m_oGeneralUserSettings.VertexShape =
(VertexShape)cbxVertexShape.SelectedValue;
m_oGeneralUserSettings.VertexRadius = fVertexRadius;
m_oGeneralUserSettings.VertexImageSize =
bUseSpecifiedVertexImageSize ? fVertexImageSize :
new Nullable<Single>();
m_oGeneralUserSettings.VertexColor = usrVertexColor.Color;
m_oGeneralUserSettings.VertexAlpha = fVertexAlpha;
m_oGeneralUserSettings.VertexRelativeOuterGlowSize =
fVertexRelativeOuterGlowSize;
DoDataExchangeVertexEffect(true);
m_oGeneralUserSettings.SelectedVertexColor =
usrSelectedVertexColor.Color;
m_oGeneralUserSettings.AutoSelect = chkAutoSelect.Checked;
m_oGeneralUserSettings.AxisFont = m_oAxisFont;
m_oGeneralUserSettings.LabelUserSettings = m_oLabelUserSettings;
m_oGeneralUserSettings.AutoReadWorkbook =
chkAutoReadWorkbook.Checked;
}
else
{
tcTabControl.SelectedIndex =
m_oGeneralUserSettingsDialogUserSettings.
TabControlSelectedIndex;
usrBackColor.Color = m_oGeneralUserSettings.BackColor;
txbBackgroundImageUri.Text =
m_oGeneralUserSettings.BackgroundImageUri;
nudEdgeWidth.Value = (Decimal)m_oGeneralUserSettings.EdgeWidth;
nudRelativeArrowSize.Value =
(Decimal)m_oGeneralUserSettings.RelativeArrowSize;
usrEdgeColor.Color = m_oGeneralUserSettings.EdgeColor;
nudEdgeAlpha.Value = (Decimal)m_oGeneralUserSettings.EdgeAlpha;
usrSelectedEdgeColor.Color =
m_oGeneralUserSettings.SelectedEdgeColor;
DoDataExchangeEdgeCurvature(false);
cbxVertexShape.SelectedValue = m_oGeneralUserSettings.VertexShape;
nudVertexRadius.Value =
(Decimal)m_oGeneralUserSettings.VertexRadius;
Nullable<Single> oVertexImageSize =
m_oGeneralUserSettings.VertexImageSize;
if (oVertexImageSize.HasValue)
{
radUseSpecifiedVertexImageSize.Checked = true;
nudVertexImageSize.Value = (Decimal)oVertexImageSize.Value;
}
else
{
radUseActualVertexImageSize.Checked = true;
}
usrVertexColor.Color = m_oGeneralUserSettings.VertexColor;
nudVertexAlpha.Value = (Decimal)m_oGeneralUserSettings.VertexAlpha;
nudVertexRelativeOuterGlowSize.Value =
(Decimal)m_oGeneralUserSettings.VertexRelativeOuterGlowSize;
DoDataExchangeVertexEffect(false);
usrSelectedVertexColor.Color =
m_oGeneralUserSettings.SelectedVertexColor;
chkAutoSelect.Checked = m_oGeneralUserSettings.AutoSelect;
m_oAxisFont = m_oGeneralUserSettings.AxisFont;
m_oLabelUserSettings =
m_oGeneralUserSettings.LabelUserSettings.Copy();
chkAutoReadWorkbook.Checked =
m_oGeneralUserSettings.AutoReadWorkbook;
EnableControls();
}
return (true);
}