Files
OmagCUT/Project/SceneButtonsUC.xaml.vb
Demetrio Cassarino 01ced18fad -aggiornato messaggi
2025-06-11 12:47:23 +02:00

135 lines
5.1 KiB
VB.net

Imports EgtUILib
Public Class SceneButtonsUC
'Riferimento alla MainWindow
Dim m_MainWindow As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow)
Private Sub Init() Handles Me.Initialized
TopViewBtn.ToolTip = EgtMsg(91244) & vbCrLf & EgtMsg(91245) ' Top View - Select View (Shift)
End Sub
Private Sub MeasureBtn_Checked(sender As Object, e As RoutedEventArgs) Handles MeasureBtn.Checked
GetCurrScene.SetStatusGetDistance()
Dim ptRef1 As Point3d
If EgtGetTableRef(1, ptRef1) Then
EgtSetGridFrame(New Frame3d(ptRef1))
GetCurrScene.SetGridCursorPos(True)
End If
End Sub
Private Sub MeasureBtn_Unchecked(sender As Object, e As RoutedEventArgs) Handles MeasureBtn.Unchecked
GetCurrScene.ResetStatusGetDistance()
GetCurrScene.SetStatusNull()
Select Case m_MainWindow.m_ActivePage
Case MainWindow.Pages.Open
m_MainWindow.m_OpenPage.MessageTxBx.Text = ""
m_MainWindow.m_OpenPage.MessageBrd.Background = Brushes.Transparent
Case MainWindow.Pages.Draw
m_MainWindow.m_DrawPageUC.MessageTxBx.Text = ""
m_MainWindow.m_DrawPageUC.MessageBrd.Background = Brushes.Transparent
Case MainWindow.Pages.Import
m_MainWindow.m_ImportPageUC.MessageTxBx.Text = ""
m_MainWindow.m_ImportPageUC.MessageBrd.Background = Brushes.Transparent
Case Else
m_MainWindow.m_CurrentProjectPageUC.ClearMessage()
End Select
End Sub
Private Sub ZoomAllBtn_Click(sender As Object, e As RoutedEventArgs) Handles ZoomAllBtn.Click
EgtZoom(ZM.ALL)
End Sub
Private Sub ZoomInBtn_Click(sender As Object, e As RoutedEventArgs) Handles ZoomInBtn.Click
EgtZoom(ZM.IN_)
End Sub
Private Sub ZoomOutBtn_Click(sender As Object, e As RoutedEventArgs) Handles ZoomOutBtn.Click
EgtZoom(ZM.OUT)
End Sub
'Private Sub ZoomWinBtn_Click(sender As Object, e As RoutedEventArgs) Handles ZoomWinBtn.Click
' GetCurrScene.SetStatusZoomWin()
'End Sub
Private Sub PanBtn_Click(sender As Object, e As RoutedEventArgs) Handles PanBtn.Click
If Keyboard.IsKeyDown(Key.LeftShift) Then
Dim bOrtoGraphic As Boolean = (GetPrivateProfileInt(S_SCENE, K_ORTOGRAPHIC, 1, m_MainWindow.GetIniFile()) <> 0)
EgtSetCameraType(Not bOrtoGraphic, True)
WritePrivateProfileString(S_SCENE, K_ORTOGRAPHIC, If(Not bOrtoGraphic, "1", "0"), m_MainWindow.GetIniFile())
Return
End If
GetCurrScene.SetStatusPan()
End Sub
Private Sub GenericViewBtn_Click(sender As Object, e As RoutedEventArgs) Handles GenericViewBtn.Click
If Keyboard.IsKeyDown(Key.T) Then
EgtSetView(VT.TOP)
ElseIf Keyboard.IsKeyDown(Key.F) Then
EgtSetView(VT.FRONT)
ElseIf Keyboard.IsKeyDown(Key.B) Then
EgtSetView(VT.BACK)
ElseIf Keyboard.IsKeyDown(Key.L) Then
EgtSetView(VT.LEFT)
ElseIf Keyboard.IsKeyDown(Key.R) Then
EgtSetView(VT.RIGHT)
Else
GetCurrScene.SetStatusRot()
End If
End Sub
Private Sub TopViewBtn_Click(sender As Object, e As RoutedEventArgs) Handles TopViewBtn.Click
If (Keyboard.Modifiers And ModifierKeys.Shift) > 0 Then
If ViewPopUp.IsOpen Then
ViewPopUp.IsOpen = False
Else
ViewPopUp.IsOpen = True
End If
Else
EgtSetView(VT.TOP)
End If
End Sub
Private Sub BottomViewBtn_Click(sender As Object, e As RoutedEventArgs) Handles BottomViewBtn.Click
EgtSetView(VT.BOTTOM)
End Sub
Private Sub FrontViewBtn_Click(sender As Object, e As RoutedEventArgs) Handles FrontViewBtn.Click
EgtSetView(VT.FRONT)
End Sub
Private Sub BackViewBtn_Click(sender As Object, e As RoutedEventArgs) Handles BackViewBtn.Click
EgtSetView(VT.BACK)
End Sub
Private Sub LeftViewBtn_Click(sender As Object, e As RoutedEventArgs) Handles LeftViewBtn.Click
EgtSetView(VT.LEFT)
End Sub
Private Sub RightViewBtn_Click(sender As Object, e As RoutedEventArgs) Handles RightViewBtn.Click
EgtSetView(VT.RIGHT)
End Sub
Private Function GetCurrScene() As EgtUILib.Scene
Select Case m_MainWindow.m_ActivePage
Case MainWindow.Pages.WorkInProgress
Return m_MainWindow.m_WorkInProgressPageUC.WorkInProgressScene
Case MainWindow.Pages.DirectCut
Return m_MainWindow.m_CurrentProjectPageUC.CurrentProjectScene
Case MainWindow.Pages.CadCut
Return m_MainWindow.m_CurrentProjectPageUC.CurrentProjectScene
Case MainWindow.Pages.Open
Return m_MainWindow.m_OpenPage.OpenScene
Case MainWindow.Pages.FrameCut
Return m_MainWindow.m_CurrentProjectPageUC.CurrentProjectScene
Case MainWindow.Pages.Draw
Return m_MainWindow.m_DrawPageUC.DrawScene
Case MainWindow.Pages.Import
Return m_MainWindow.m_ImportPageUC.ImportScene
Case Else
Return m_MainWindow.m_CurrentProjectPageUC.CurrentProjectScene
End Select
End Function
End Class