114 lines
3.3 KiB
VB.net
114 lines
3.3 KiB
VB.net
Imports System.Collections.ObjectModel
|
|
Imports System.IO
|
|
Imports EgtBEAMWALL.Core
|
|
Imports EgtUILib
|
|
Imports EgtWPFLib5
|
|
|
|
Public Class TopPanelVM
|
|
Inherits VMBase
|
|
|
|
#Region "FIELDS & PROPERTIES"
|
|
|
|
Private Property m_GridDims As New ObservableCollection(Of GridDimension)
|
|
Public Property GridDims As ObservableCollection(Of GridDimension)
|
|
Get
|
|
Return m_GridDims
|
|
End Get
|
|
Set
|
|
m_GridDims = Value
|
|
NotifyPropertyChanged(NameOf(GridDims))
|
|
End Set
|
|
End Property
|
|
|
|
Private m_QParSplitter_Visibility As Visibility
|
|
Public ReadOnly Property QParSplitter_Visibility As Visibility
|
|
Get
|
|
Return If(Not IsNothing(Map.refProjectVM.BTLStructureVM) AndAlso Map.refProjectVM.BTLStructureVM.BTLStructureM.nPROJTYPE = BWType.WALL, Visibility.Visible, Visibility.Collapsed)
|
|
End Get
|
|
End Property
|
|
|
|
Friend Enum Tabs As Integer
|
|
OPTIMIZATION = 0
|
|
STATISTICS = 1
|
|
End Enum
|
|
|
|
Private m_SelTab As Tabs = Tabs.OPTIMIZATION
|
|
Public Property SelTab As Integer
|
|
Get
|
|
Return m_SelTab
|
|
End Get
|
|
Set(value As Integer)
|
|
m_SelTab = value
|
|
End Set
|
|
End Property
|
|
Friend Sub SetSelTab(SelTab As Tabs)
|
|
If m_SelTab = Tabs.STATISTICS Then
|
|
Map.refInstrumentPanelVM.SetStatisticsIsChecked(False)
|
|
End If
|
|
m_SelTab = SelTab
|
|
NotifyPropertyChanged(NameOf(SelTab))
|
|
End Sub
|
|
|
|
Private m_TopPanel_IsEnabled As Boolean = True
|
|
Public ReadOnly Property TopPanel_IsEnabled As Boolean
|
|
Get
|
|
Return m_TopPanel_IsEnabled
|
|
End Get
|
|
End Property
|
|
|
|
Public ReadOnly Property QParameter_Visibility As Visibility
|
|
Get
|
|
Return If(Not IsNothing(Map.refProjectVM) AndAlso Not IsNothing(Map.refProjectVM.BTLStructureVM) AndAlso Map.refProjectVM.BTLStructureVM.nPROJTYPE = BWType.WALL, Visibility.Visible, Visibility.Collapsed)
|
|
End Get
|
|
End Property
|
|
|
|
#Region "Messages"
|
|
|
|
Public ReadOnly Property ResetCALCRawPart_ToolTip As String
|
|
Get
|
|
Return EgtMsg(61924)
|
|
End Get
|
|
End Property
|
|
|
|
#End Region ' Messages
|
|
|
|
#End Region 'FIELDS & PROPERTIES
|
|
|
|
Sub New()
|
|
' imposto riferimento su mappa
|
|
Map.SetRefTopPanelVM(Me)
|
|
' imposto dimensioni colonne/righe della Grid
|
|
DimensionsIniFile.ReadGridDimensions(ConstDims.TOPPANEL_OPTIMIZER, GridDims)
|
|
End Sub
|
|
|
|
#Region "METHODS"
|
|
|
|
Friend Sub SetTopPanelIsEnabled(bIsEnabled As Boolean)
|
|
m_TopPanel_IsEnabled = bIsEnabled
|
|
NotifyPropertyChanged(NameOf(TopPanel_IsEnabled))
|
|
End Sub
|
|
|
|
Friend Sub UpdateQParameterVisibility()
|
|
NotifyPropertyChanged(NameOf(QParameter_Visibility))
|
|
End Sub
|
|
|
|
Friend Sub ManageQParamsRowVisibility(bVisible As Boolean)
|
|
If bVisible Then
|
|
DimensionsIniFile.ReadGridDimensions(ConstDims.TOPPANEL_OPTIMIZER, GridDims)
|
|
Else
|
|
GridDimension.SetSoftwareMod(True)
|
|
Dim FeatureRow = m_GridDims(4)
|
|
Dim QParRow = m_GridDims(5)
|
|
m_GridDims(4).GridLen = New GridLength(1, GridUnitType.Star)
|
|
m_GridDims(4).NotifyPropertyChanged(NameOf(FeatureRow.GridLen))
|
|
m_GridDims(5).GridLen = New GridLength(0)
|
|
m_GridDims(5).NotifyPropertyChanged(NameOf(QParRow.GridLen))
|
|
GridDimension.SetSoftwareMod(False)
|
|
End If
|
|
NotifyPropertyChanged(NameOf(QParSplitter_Visibility))
|
|
End Sub
|
|
|
|
#End Region ' METHODS
|
|
|
|
End Class
|