public void Init()
{
try
{
updatingDialog = true;
Canguro.Model.Model model = services.Model;
int responseSpectrumCases = 0;
foreach (AbstractCase aCase in model.AbstractCases)
{
if (aCase is AnalysisCase && ((AnalysisCase)aCase).Properties is ModalCaseProps)
{
modalCase = (AnalysisCase)aCase;
modalAnalysisCheckBox.Checked = aCase.IsActive;
}
else if (aCase is AnalysisCase && ((AnalysisCase)aCase).Properties is PDeltaCaseProps)
{
pDeltaCase = (AnalysisCase)aCase;
pDeltaCheckBox.Checked = aCase.IsActive;
}
else if (aCase is AnalysisCase && ((AnalysisCase)aCase).Properties is ResponseSpectrumCaseProps)
{
responseCases.Add((AnalysisCase)aCase);
if (aCase.IsActive)
responseSpectrumCases++;
switch (responseSpectrumCases)
{
case 1:
case 2:
responseSpectrumCheckBox.CheckState = CheckState.Indeterminate;
break;
case 3:
responseSpectrumCheckBox.CheckState = CheckState.Checked;
break;
default:
responseSpectrumCheckBox.CheckState = CheckState.Unchecked;
break;
}
}
}
responseSpectrumFunctionsComboBox.Items.Clear();
foreach (ResponseSpectrum rs in model.ResponseSpectra)
responseSpectrumFunctionsComboBox.Items.Add(rs);
steelDesignComboBox.Items.Add(NoDesign.Instance);
concreteDesignComboBox.Items.Add(NoDesign.Instance);
foreach (DesignOptions option in model.DesignOptions)
{
if (option is SteelDesignOptions)
steelDesignComboBox.Items.Add(option);
else if (option is ConcreteDesignOptions)
concreteDesignComboBox.Items.Add(option);
}
steelDesignComboBox.SelectedItem = model.SteelDesignOptions;
concreteDesignComboBox.SelectedItem = model.ConcreteDesignOptions;
bool steelActive = false;
bool concreteActive = false;
foreach (Canguro.Model.LineElement e in model.LineList)
{
if (e != null && e.Properties is Canguro.Model.StraightFrameProps &&
((Canguro.Model.StraightFrameProps)e.Properties).Section.Material.DesignProperties is
Canguro.Model.Material.SteelDesignProps)
steelActive = true;
else if (e != null && e.Properties is Canguro.Model.StraightFrameProps &&
((Canguro.Model.StraightFrameProps)e.Properties).Section.Material.DesignProperties is
Canguro.Model.Material.ConcreteDesignProps)
concreteActive = true;
}
steelDesignComboBox.Enabled = steelActive;
concreteDesignComboBox.Enabled = concreteActive;
}
finally
{
updatingDialog = false;
}
this.Width = NormalWidth;
}