From 210a336e5db2c9572e329f7c27d4a558f239aa8f Mon Sep 17 00:00:00 2001 From: Emmanuele Sassi Date: Sun, 10 Jul 2016 17:54:50 +0000 Subject: [PATCH] EgtCAM5 : - Migliorie varie. --- Application.xaml.vb | 9 +- .../GridViewPanel/GridViewPanelView.xaml | 6 +- .../GridViewPanel/GridViewPanelViewModel.vb | 204 +++++++++++------- .../InfoExpander/InfoExpanderView.xaml | 2 +- .../InfoExpander/InfoExpanderViewModel.vb | 14 ++ .../InputExpander/InputExpanderView.xaml | 4 +- .../ManageLayerExpanderView.xaml | 2 +- .../ManageLayerExpanderViewModel.vb | 10 +- ProjectPage/ProjectViewModel.vb | 23 +- 9 files changed, 176 insertions(+), 98 deletions(-) diff --git a/Application.xaml.vb b/Application.xaml.vb index ad146d9..20f1143 100644 --- a/Application.xaml.vb +++ b/Application.xaml.vb @@ -57,9 +57,10 @@ Class Application Friend Const ISOVIEWSE As String = "IsoViewSE" Friend Const ISOVIEWNE As String = "IsoViewNE" Friend Const ISOVIEWNW As String = "IsoViewNW" - Friend Const CURVEDIR As String = "CurveDir" - Friend Const ANALYZE As String = "Analyze" - Friend Const GETDIST As String = "GetDist" + Friend Const SETSTATUSANALYZE As String = "SetStatusAnalyze" + Friend Const RESETSTATUSANALYZE As String = "ResetStatusAnalyze" + Friend Const SETSTATUSGETDISTANCE As String = "SetStatusGetDistance" + Friend Const RESETSTATUSGETDISTANCE As String = "ResetStatusGetDistance" Friend Const CPLANETOP As String = "CPlaneTop" Friend Const CPLANEFRONT As String = "CPlaneFront" Friend Const CPLANERIGHT As String = "CPlaneRight" @@ -133,6 +134,8 @@ Class Application Friend Const UPDATEHEADERCOLOR As String = "UpdateHeaderColor" Friend Const UPDATEOBJTREEOLDID As String = "UpdateObjTreeOldId" Friend Const DRAWOPTIONPANEL_CLOSING As String = "DrawOptionPanel_Closing" + Friend Const UPDATEOBJDATAINOBJTREE As String = "UpdateObjDataInObjTree" + Friend Const SETINFOBOX As String = "SetInfoBox" ' StatusBar messages Friend Const STATUSGRIDCOMMAND As String = "StatusGridCommand" diff --git a/ProjectPage/GridViewPanel/GridViewPanelView.xaml b/ProjectPage/GridViewPanel/GridViewPanelView.xaml index 49cb954..fe8ff64 100644 --- a/ProjectPage/GridViewPanel/GridViewPanelView.xaml +++ b/ProjectPage/GridViewPanel/GridViewPanelView.xaml @@ -49,13 +49,13 @@ - + - + - + diff --git a/ProjectPage/GridViewPanel/GridViewPanelViewModel.vb b/ProjectPage/GridViewPanel/GridViewPanelViewModel.vb index 500dfda..b21694e 100644 --- a/ProjectPage/GridViewPanel/GridViewPanelViewModel.vb +++ b/ProjectPage/GridViewPanel/GridViewPanelViewModel.vb @@ -15,6 +15,60 @@ Namespace EgtCAM5 End Set End Property + Private m_CurveDirIsChecked As Boolean + Public Property CurveDirIsChecked As Boolean + Get + Return m_CurveDirIsChecked + End Get + Set(value As Boolean) + If value <> m_CurveDirIsChecked Then + m_CurveDirIsChecked = value + EgtSetShowCurveDirection(value) + OnPropertyChanged("CurveDirIsChecked") + End If + End Set + End Property + + Private m_AnalyzeIsChecked As Boolean + Public Property AnalyzeIsChecked As Boolean + Get + Return m_AnalyzeIsChecked + End Get + Set(value As Boolean) + If value <> m_AnalyzeIsChecked Then + m_AnalyzeIsChecked = value + GetDistIsChecked = False + If value Then + Application.Msn.NotifyColleagues(Application.SETSTATUSANALYZE) + Else + Application.Msn.NotifyColleagues(Application.RESETSTATUSANALYZE) + End If + OnPropertyChanged("GetDistIsChecked") + OnPropertyChanged("AnalyzeIsChecked") + End If + End Set + End Property + + Private m_GetDistIsChecked As Boolean + Public Property GetDistIsChecked As Boolean + Get + Return m_GetDistIsChecked + End Get + Set(value As Boolean) + If value <> m_GetDistIsChecked Then + m_GetDistIsChecked = value + AnalyzeIsChecked = False + If value Then + Application.Msn.NotifyColleagues(Application.SETSTATUSGETDISTANCE) + Else + Application.Msn.NotifyColleagues(Application.RESETSTATUSGETDISTANCE) + End If + OnPropertyChanged("GetDistIsChecked") + OnPropertyChanged("AnalyzeIsChecked") + End If + End Set + End Property + 'Proprietà ToolTip Public ReadOnly Property RenderingWFToolTip As String Get @@ -686,95 +740,95 @@ Namespace EgtCAM5 #End Region ' IsoViewNWCommand -#Region "CurveDirCommand" + '#Region "CurveDirCommand" - ''' - ''' Returns a command that do CurveDir. - ''' - Public ReadOnly Property CurveDirCommand As ICommand - Get - If m_cmdCurveDir Is Nothing Then - m_cmdCurveDir = New RelayCommand(AddressOf CurveDir, AddressOf CanCurveDir) - End If - Return m_cmdCurveDir - End Get - End Property + ' ''' + ' ''' Returns a command that do CurveDir. + ' ''' + ' Public ReadOnly Property CurveDirCommand As ICommand + ' Get + ' If m_cmdCurveDir Is Nothing Then + ' m_cmdCurveDir = New RelayCommand(AddressOf CurveDir, AddressOf CanCurveDir) + ' End If + ' Return m_cmdCurveDir + ' End Get + ' End Property - ''' - ''' Execute the CurveDir. This method is invoked by the CurveDirCommand. - ''' - Public Sub CurveDir(ByVal param As Object) - Application.Msn.NotifyColleagues(Application.CURVEDIR) - End Sub + ' ''' + ' ''' Execute the CurveDir. This method is invoked by the CurveDirCommand. + ' ''' + ' Public Sub CurveDir(ByVal param As Object) + ' Application.Msn.NotifyColleagues(Application.CURVEDIR) + ' End Sub - ''' - ''' Returns always true. - ''' - Private Function CanCurveDir(ByVal param As Object) As Boolean - Return True - End Function + ' ''' + ' ''' Returns always true. + ' ''' + ' Private Function CanCurveDir(ByVal param As Object) As Boolean + ' Return True + ' End Function -#End Region ' CurveDirCommand + '#End Region ' CurveDirCommand -#Region "AnalyzeCommand" + '#Region "AnalyzeCommand" - ''' - ''' Returns a command that do Analyze. - ''' - Public ReadOnly Property AnalyzeCommand As ICommand - Get - If m_cmdAnalyze Is Nothing Then - m_cmdAnalyze = New RelayCommand(AddressOf Analyze, AddressOf CanAnalyze) - End If - Return m_cmdAnalyze - End Get - End Property + ' ''' + ' ''' Returns a command that do Analyze. + ' ''' + ' Public ReadOnly Property AnalyzeCommand As ICommand + ' Get + ' If m_cmdAnalyze Is Nothing Then + ' m_cmdAnalyze = New RelayCommand(AddressOf Analyze, AddressOf CanAnalyze) + ' End If + ' Return m_cmdAnalyze + ' End Get + ' End Property - ''' - ''' Execute the Analyze. This method is invoked by the AnalyzeCommand. - ''' - Public Sub Analyze(ByVal param As Object) - Application.Msn.NotifyColleagues(Application.ANALYZE) - End Sub + ' ''' + ' ''' Execute the Analyze. This method is invoked by the AnalyzeCommand. + ' ''' + ' Public Sub Analyze(ByVal param As Object) + ' Application.Msn.NotifyColleagues(Application.ANALYZE) + ' End Sub - ''' - ''' Returns always true. - ''' - Private Function CanAnalyze(ByVal param As Object) As Boolean - Return True - End Function + ' ''' + ' ''' Returns always true. + ' ''' + ' Private Function CanAnalyze(ByVal param As Object) As Boolean + ' Return True + ' End Function -#End Region ' AnalyzeCommand + '#End Region ' AnalyzeCommand -#Region "GetDistCommand" + '#Region "GetDistCommand" - ''' - ''' Returns a command that do GetDist. - ''' - Public ReadOnly Property GetDistCommand As ICommand - Get - If m_cmdGetDist Is Nothing Then - m_cmdGetDist = New RelayCommand(AddressOf GetDist, AddressOf CanGetDist) - End If - Return m_cmdGetDist - End Get - End Property + ' ''' + ' ''' Returns a command that do GetDist. + ' ''' + ' Public ReadOnly Property GetDistCommand As ICommand + ' Get + ' If m_cmdGetDist Is Nothing Then + ' m_cmdGetDist = New RelayCommand(AddressOf GetDist, AddressOf CanGetDist) + ' End If + ' Return m_cmdGetDist + ' End Get + ' End Property - ''' - ''' Execute the GetDist. This method is invoked by the GetDistCommand. - ''' - Public Sub GetDist(ByVal param As Object) - Application.Msn.NotifyColleagues(Application.GETDIST) - End Sub + ' ''' + ' ''' Execute the GetDist. This method is invoked by the GetDistCommand. + ' ''' + ' Public Sub GetDist(ByVal param As Object) + ' Application.Msn.NotifyColleagues(Application.GETDIST) + ' End Sub - ''' - ''' Returns always true. - ''' - Private Function CanGetDist(ByVal param As Object) As Boolean - Return True - End Function + ' ''' + ' ''' Returns always true. + ' ''' + ' Private Function CanGetDist(ByVal param As Object) As Boolean + ' Return True + ' End Function -#End Region ' GetDistCommand + '#End Region ' GetDistCommand #Region "CPlaneTopCommand" diff --git a/ProjectPage/OptionPanel/DrawOptionPanel/InfoExpander/InfoExpanderView.xaml b/ProjectPage/OptionPanel/DrawOptionPanel/InfoExpander/InfoExpanderView.xaml index ede5488..570287b 100644 --- a/ProjectPage/OptionPanel/DrawOptionPanel/InfoExpander/InfoExpanderView.xaml +++ b/ProjectPage/OptionPanel/DrawOptionPanel/InfoExpander/InfoExpanderView.xaml @@ -3,7 +3,7 @@ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:EgtCAM5.EgtCAM5"> - + diff --git a/ProjectPage/OptionPanel/DrawOptionPanel/InfoExpander/InfoExpanderViewModel.vb b/ProjectPage/OptionPanel/DrawOptionPanel/InfoExpander/InfoExpanderViewModel.vb index 42c2c5c..5c24d6a 100644 --- a/ProjectPage/OptionPanel/DrawOptionPanel/InfoExpander/InfoExpanderViewModel.vb +++ b/ProjectPage/OptionPanel/DrawOptionPanel/InfoExpander/InfoExpanderViewModel.vb @@ -26,11 +26,25 @@ Namespace EgtCAM5 Set(value As String) If value <> m_InfoBox Then m_InfoBox = value + If value <> String.Empty Then + IsEnabled = True + Else + IsEnabled = False + End If OnPropertyChanged("InfoBox") End If End Set End Property + Sub New() + Application.Msn.Register(Application.UPDATEOBJDATAINOBJTREE, Sub(Id As Integer) + UpdateObjDataInObjTree(Id) + End Sub) + Application.Msn.Register(Application.SETINFOBOX, Sub(sString As String) + InfoBox = sString + End Sub) + End Sub + Private Sub UpdateObjDataInObjTree(ByVal nId As Integer) ' recupero il tipo del nuovo oggetto Dim nType As Integer = EgtGetType(nId) diff --git a/ProjectPage/OptionPanel/DrawOptionPanel/InputExpander/InputExpanderView.xaml b/ProjectPage/OptionPanel/DrawOptionPanel/InputExpander/InputExpanderView.xaml index e3d63eb..a3f2ea2 100644 --- a/ProjectPage/OptionPanel/DrawOptionPanel/InputExpander/InputExpanderView.xaml +++ b/ProjectPage/OptionPanel/DrawOptionPanel/InputExpander/InputExpanderView.xaml @@ -2,10 +2,10 @@ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> - + -