Files
wg_cpso/CPSO/Forms/51_Step/ViewComplexFrequencyStep.cs

74 lines
2.3 KiB
C#
Raw Permalink Normal View History

2026-03-25 18:20:24 +08:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.ComponentModel;
using CaeGlobals;
using DynamicTypeDescriptor;
namespace CPSO
{
[Serializable]
public class ViewComplexFrequencyStep : ViewStep
{
// Variables
private CaeModel.ComplexFrequencyStep _complexFrequencyStep;
// Properties
[Category("Data")]
[OrderedDisplayName(4, 10, "Perturbation")]
[Description("Perturbation parameter set to On applies preloads from the previous step if it exists.")]
[Id(5, 1)]
public bool Perturbation
{
get { return _complexFrequencyStep.Perturbation; }
set { _complexFrequencyStep.Perturbation = value; }
}
//
[Category("Data")]
[OrderedDisplayName(6, 10, "Number of frequencies")]
[Description("Number of eigenfrequencies to compute.")]
[Id(7, 1)]
public int NumOfFrequencies
{
get { return _complexFrequencyStep.NumOfFrequencies; }
set { _complexFrequencyStep.NumOfFrequencies = value; }
}
// Constructors
public ViewComplexFrequencyStep(CaeModel.ComplexFrequencyStep step, bool installProvider = true)
: base(step)
{
_complexFrequencyStep = step;
//
if (installProvider)
{
InstallProvider();
UpdateVisibility();
}
}
// Methods
public override CaeModel.Step GetBase()
{
return _complexFrequencyStep;
}
public override void InstallProvider()
{
base.InstallProvider();
//
_dctd.RenameBooleanPropertyToOnOff("Perturbation");
}
public override void UpdateVisibility()
{
base.UpdateVisibility();
//
_dctd.GetProperty(nameof(SolverType)).SetIsBrowsable(false);
}
}
}