Imports EgtWPFLib5.EgtFloating Public Class ProjectV Private m_bSpecial As Boolean = False Private m_bBeam As Boolean = False Private m_bWall As Boolean = False Private m_bDoors As Boolean = False Private m_bGunStock As Boolean = False Private Sub UserControl_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized SpecialPanel.Visibility = Visibility.Collapsed BeamPanel.Visibility = Visibility.Collapsed WallPanel.Visibility = Visibility.Collapsed DoorsPanel.Visibility = Visibility.Collapsed GunStockPanel.Visibility = Visibility.Collapsed Map.refMachGroupPanelVM.SetMachGroupPanelVisibility(False) ' MachGroupPanel.Visibility = Visibility.Collapsed End Sub Private Sub UserControl_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded ' Leggo posizioni Floating window Dim sState As String = String.Empty Dim nIndex As Integer = -1 Dim nLeft As Integer = -1 Dim nTop As Integer = -1 ShowPanel.IsFloating = False ViewPanel.IsFloating = False 'InstrumentPanel.IsFloating = False GridPanel.IsFloating = False DbPanel.IsFloating = False ExecutePanel.IsFloating = False SpecialPanel.IsFloating = False BeamPanel.IsFloating = False WallPanel.IsFloating = False BeamWallPanel.IsFloating = False DoorsPanel.IsFloating = False GunStockPanel.IsFloating = False DrawPanel.IsFloating = False OptionPanel.IsFloating = False ' MachGroupPanel.IsFloating = False ' Carico Pannelli Speciali m_bSpecial = IniFile.IsActiveSpecialPanel() m_bBeam = IniFile.IsActiveBeam() m_bWall = IniFile.IsActiveWall() m_bDoors = IniFile.IsActiveDoors() m_bGunStock = IniFile.IsActiveGunStock() Application.Msn.Register(Application.DRAWMODE_ISCHECKED, Sub() 'ShowPanel.Visibility = Visibility.Visible ViewPanel.Visibility = Visibility.Visible 'InstrumentPanel.Visibility = Visibility.Visible GridPanel.Visibility = Visibility.Visible DbPanel.Visibility = If(IniFile.m_ProjectMode = ProjectModeOpt.ONLYDRAW, Visibility.Collapsed, Visibility.Visible) ExecutePanel.Visibility = Visibility.Visible SpecialPanel.Visibility = If(m_bSpecial, Visibility.Visible, Visibility.Collapsed) BeamPanel.Visibility = If( m_bBeam, Visibility.Visible, Visibility.Collapsed) WallPanel.Visibility = If( m_bWall, Visibility.Visible, Visibility.Collapsed) BeamWallPanel.Visibility = If( m_bBeam Or m_bWall, Visibility.Visible, Visibility.Collapsed) DoorsPanel.Visibility = If(m_bDoors, Visibility.Visible, Visibility.Collapsed) GunStockPanel.Visibility = If(m_bGunStock, Visibility.Visible, Visibility.Collapsed) DrawPanel.Visibility = Visibility.Visible OptionPanel.Visibility = Visibility.Visible Map.refMachGroupPanelVM.SetMachGroupPanelVisibility(False) ' MachGroupPanel.Visibility = Visibility.Collapsed End Sub) Application.Msn.Register(Application.MACHININGMODE_ISCHECKED, Sub() 'ShowPanel.Visibility = Visibility.Visible ViewPanel.Visibility = Visibility.Visible 'InstrumentPanel.Visibility = Visibility.Visible GridPanel.Visibility = Visibility.Visible DbPanel.Visibility = Visibility.Visible ExecutePanel.Visibility = Visibility.Collapsed SpecialPanel.Visibility = Visibility.Collapsed BeamPanel.Visibility = Visibility.Collapsed WallPanel.Visibility = Visibility.Collapsed BeamWallPanel.Visibility = Visibility.Collapsed DoorsPanel.Visibility = Visibility.Collapsed GunStockPanel.Visibility = Visibility.Collapsed DrawPanel.Visibility = Visibility.Collapsed OptionPanel.Visibility = Visibility.Visible Map.refMachGroupPanelVM.SetMachGroupPanelVisibility(IniFile.m_bMachiningGroup) ' MachGroupPanel.Visibility = If(IniFile.m_bMachiningGroup, Visibility.Visible, Visibility.Collapsed) End Sub) Application.Msn.Register(Application.DBPANELVISIBILITY, Sub() DbPanel.Visibility = If(IniFile.m_ProjectMode = ProjectModeOpt.ONLYDRAW, Visibility.Collapsed, Visibility.Visible) End Sub) End Sub Private Sub PanelPositioning(FloatingPanel As EgtFloatingPanel, sState As String, nIndex As Integer, nLeft As Integer, nTop As Integer) Select Case sState Case "TOP" FloatingPanel.ChangePosition(TOPTRAY) Case "BOTTOM" FloatingPanel.ChangePosition(BOTTOMTRAY) Case "LEFT" FloatingPanel.ChangePosition(LEFTTRAY) Case "RIGHT" FloatingPanel.ChangePosition(RIGHTTRAY) Case "FLOATING" FloatingPanel.ChangePosition(New Point(nLeft, nTop)) End Select End Sub Private Sub UserControl_Unloaded(sender As Object, e As RoutedEventArgs) Handles Me.Unloaded ' Salvo le posizioni di tutti gli EgtPanel End Sub End Class