diff --git a/AboutBoxWD.xaml b/AboutBoxWD.xaml new file mode 100644 index 0000000..535472e --- /dev/null +++ b/AboutBoxWD.xaml @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SceneButtonsUC.xaml.vb b/SceneButtonsUC.xaml.vb new file mode 100644 index 0000000..8028a6c --- /dev/null +++ b/SceneButtonsUC.xaml.vb @@ -0,0 +1,52 @@ +Imports EgtUILib + +Public Class SceneButtonsUC + + 'Riferimento alla MainWindow + Dim m_MainWindow As MainWindow = Application.Current.MainWindow + + 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 + 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 + EgtSetView(VT.TOP) + End Sub + + Private Function GetCurrScene() As EgtUILib.Scene + Return m_MainWindow.CurrentProjectScene + End Function + +End Class diff --git a/Utility.vb b/Utility.vb new file mode 100644 index 0000000..a26afdc --- /dev/null +++ b/Utility.vb @@ -0,0 +1,102 @@ +Imports System.Globalization +Imports EgtUILib + +Module Utility + + '-------------------------------------------------------------------------------------------------- + Friend Sub UpdateUI() + ' Costringo ad aggiornare UI + Dim nDummy As Integer + Application.Current.Dispatcher.Invoke(Windows.Threading.DispatcherPriority.Background, _ + New Action(Function() nDummy = 0)) + End Sub + + '-------------------------------------------------------------------------------------------------- + Friend Function DoubleToString(ByVal dVal As Double, ByVal nNumDec As Integer) As String + Dim sFormat As String = "F" + Math.Abs(nNumDec).ToString() + Dim sVal As String = dVal.ToString(sFormat, CultureInfo.InvariantCulture) + If nNumDec > 0 Then + Return sVal.TrimEnd("0".ToCharArray()).TrimEnd(".".ToCharArray) + Else + Return sVal + End If + End Function + + Friend Function StringToDouble(ByVal sVal As String, ByRef dVal As Double) As Boolean + Return EgtLuaEvalNumExpr(sVal, dVal) + End Function + + Friend Function LenToString(ByVal dVal As Double, ByVal nNumDec As Integer) As String + Return DoubleToString(EgtToUiUnits(dVal), nNumDec) + End Function + + Friend Function StringToLen(ByVal sVal As String, ByRef dVal As Double) As Boolean + If EgtLuaEvalNumExpr(sVal, dVal) Then + dVal = EgtFromUiUnits(dVal) + Return True + Else + Return False + End If + End Function + + Friend Function UIExprToExpr(ByVal sUIExpr) As String + If String.IsNullOrWhiteSpace(sUIExpr) Then + Return "" + End If + Return sUIExpr.Replace("""", "*GEO.ONE_INCH") + End Function + + Friend Function ExprToUIExpr(ByVal sExpr) As String + If String.IsNullOrWhiteSpace(sExpr) Then + Return "" + End If + Return sExpr.Replace("*GEO.ONE_INCH", """") + End Function + + '-------------------------------------------------------------------------------------------------- + Public Class Language + + Private m_sLanguageName As String + Private m_sFileName As String + + Public Property LanguageName As String + Get + Return m_sLanguageName + End Get + Set(value As String) + m_sLanguageName = value + End Set + End Property + + Public Property FileName As String + Get + Return m_sFileName + End Get + Set(value As String) + m_sFileName = value + End Set + End Property + + Sub New(LanguageName As String, FileName As String) + Me.LanguageName = LanguageName + Me.FileName = FileName + End Sub + + End Class + + Public Function GetPrivateProfileLanguage( + ByVal lpAppName As String, + ByVal lpKeyName As String, + ByVal lpFileName As String) As Language + + Dim sVal As String = String.Empty + GetPrivateProfileString(lpAppName, lpKeyName, "", sVal, lpFileName) + Dim sItems() As String = sVal.Split(",".ToCharArray) + If sItems.Count() = 2 Then + Return New Language(sItems(0), sItems(1)) + End If + Return Nothing + + End Function + +End Module diff --git a/app.config b/app.config new file mode 100644 index 0000000..843d111 --- /dev/null +++ b/app.config @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + +