Compare commits

..

10 Commits

Author SHA1 Message Date
Demetrio Cassarino cbf44a8b23 -gestione finestra con griglia dinamica 2024-12-19 11:34:50 +01:00
Demetrio Cassarino 17e647e65d Merge commit '795407767663a23291c6494074c989c18a89e262' into feature/Button_Menu 2024-11-20 08:52:55 +01:00
Demetrio Cassarino 9fd0d7d9d5 -modifica margine pannello di destra 2024-04-12 08:54:16 +02:00
Demetrio Cassarino 7cc4374ad4 -spostato note in parametri avanzati 2024-04-11 16:20:21 +02:00
Demetrio Cassarino ca6874c2b5 Merge remote-tracking branch 'origin/master' into feature/Button_Menu 2024-04-11 09:18:43 +02:00
Demetrio Cassarino 4826feb281 -cambiato note da lista a itemscontrol 2024-04-10 16:31:56 +02:00
Demetrio Cassarino adf3ba4d97 -agiunto griglia su plug-in da controllare 2024-04-04 09:19:18 +02:00
Demetrio Cassarino 8cc6324d64 -gestione interfaccia con griglia dinamica 2024-04-04 09:10:53 +02:00
Demetrio Cassarino 6fc4e0d669 -griglia dinamiica 2024-03-28 17:14:55 +01:00
Demetrio Cassarino 5fd269f6bb -gestione multi selezione bottoni 2024-03-25 10:47:28 +01:00
203 changed files with 5619 additions and 4483 deletions
+12 -12
View File
@@ -1,8 +1,8 @@
<Window x:Class="AboutBoxWndV" <Window x:Class="AboutBoxWndV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="AboutBox" Height="400" Width="360" WindowStyle="None" ResizeMode="NoResize" Title="AboutBox" Height="400" Width="360" WindowStyle="None" ResizeMode="NoResize"
ShowInTaskbar="False" WindowStartupLocation="CenterOwner"> ShowInTaskbar="False" WindowStartupLocation="CenterOwner">
<Border BorderThickness="2" BorderBrush="LightBlue"> <Border BorderThickness="2" BorderBrush="LightBlue">
<Grid > <Grid >
@@ -13,8 +13,8 @@
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="0.5*"/> <RowDefinition Height="0.5*"/>
<RowDefinition Height="1.75*"/> <RowDefinition Height="1*"/>
<RowDefinition Height="0.15*"/> <RowDefinition Height="0.25*"/>
<RowDefinition Height="0.5*"/> <RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/> <RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/> <RowDefinition Height="0.5*"/>
@@ -31,19 +31,19 @@
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Border Name="LogoBrd" Grid.Column="1" Background="White"> <Border Name="LogoBrd" Grid.Column="1" Background="White">
<Image Source="/Resources/AboutBox/EgalwareLogo.png" Stretch="Uniform"/> <Image Source="/Resources/AboutBoxImage.png" Stretch="Uniform"/>
</Border> </Border>
</Grid> </Grid>
<TextBlock Name="DescriptionLbl" Grid.Column="1" Grid.Row="3" HorizontalAlignment="Center" <TextBlock Name="DescriptionLbl" Grid.Column="1" Grid.Row="3" HorizontalAlignment="Center"
VerticalAlignment="Center" FontSize="18" /> VerticalAlignment="Center" FontSize="18" />
<TextBlock Name="VersionLbl" Grid.Column="1" Grid.Row="4" HorizontalAlignment="Center" <TextBlock Name="VersionLbl" Grid.Column="1" Grid.Row="4" HorizontalAlignment="Center"
VerticalAlignment="Center" FontSize="18"/> VerticalAlignment="Center" FontSize="18"/>
<TextBlock Name="CopyrightLbl" Grid.Column="1" Grid.Row="5" HorizontalAlignment="Center" <TextBlock Name="CopyrightLbl" Grid.Column="1" Grid.Row="5" HorizontalAlignment="Center"
VerticalAlignment="Center" FontSize="12" /> VerticalAlignment="Center" FontSize="12" />
<TextBox Name="InfoLbl" Grid.Column="1" Grid.Row="6" HorizontalAlignment="Stretch" <TextBox Name="InfoLbl" Grid.Column="1" Grid.Row="6" HorizontalAlignment="Stretch"
VerticalAlignment="Stretch" FontSize="12" IsReadOnly="True" TextWrapping="Wrap"/> VerticalAlignment="Stretch" FontSize="12" IsReadOnly="True" TextWrapping="Wrap"/>
<Button Name="ExitBtn" Grid.Column="1" Grid.Row="8" IsCancel="True" <Button Name="ExitBtn" Grid.Column="1" Grid.Row="8" IsCancel="True"
Margin="100,0"/> Margin="100,0"/>
</Grid> </Grid>
+1 -1
View File
@@ -78,7 +78,7 @@ Public Class AboutBoxWndV
End If End If
If Not bExtensions Then sInfo &= Environment.NewLine & "---" If Not bExtensions Then sInfo &= Environment.NewLine & "---"
InfoLbl.Text = sInfo InfoLbl.Text = sInfo
ExitBtn.Content = EgtMsg(10104) 'Ok ExitBtn.Content = EgtMsg(MSG_MISSINGKEYWD + 4) 'Ok
End Sub End Sub
End Class End Class
+1 -2
View File
@@ -210,8 +210,7 @@ Class Application
Friend Const GUNSTOCKMODIF As String = "GunStockModif" Friend Const GUNSTOCKMODIF As String = "GunStockModif"
Private Sub Application_DispatcherUnhandledException(ByVal sender As System.Object, ByVal e As System.Windows.Threading.DispatcherUnhandledExceptionEventArgs) Private Sub Application_DispatcherUnhandledException(ByVal sender As System.Object, ByVal e As System.Windows.Threading.DispatcherUnhandledExceptionEventArgs)
'MessageBox.Show(e.Exception.Message) MessageBox.Show(e.Exception.Message)
EgtMessageBoxV.Show(Application.Current.MainWindow, e.Exception.Message)
e.Handled = True e.Handled = True
End Sub End Sub
@@ -88,6 +88,49 @@ Public Class AutomaticCloseExpander
Exit For Exit For
End If End If
Next Next
'Dim TotalDimension As Double = 0
''Aggiungo la dimensione di tutti gli Header
'For Each Expander In ExpanderList
' If Expander IsNot SelectedExpander Then
' If Not Expander.IsExpanded Then
' TotalDimension += Expander.ActualHeight
' Else
' Dim ExpanderContent As FrameworkElement = DirectCast(Expander.Content, FrameworkElement)
' ExpanderContent.Measure(New Size(Double.PositiveInfinity, Double.PositiveInfinity))
' TotalDimension += (Expander.ActualHeight - ExpanderContent.DesiredSize.Height)
' End If
' Else
' TotalDimension += Expander.ActualHeight
' End If
'Next
'' Aggiungo la dimensione dei controlli fissi (non Expander)
'For Each OtherControl In OtherControlList
' TotalDimension += OtherControl.ActualHeight
'Next
'' Aggiungo la dimensione del contenuto dell'expander selezionato
'Dim SelectedContent As FrameworkElement = DirectCast(SelectedExpander.Content, FrameworkElement)
'SelectedContent.Measure(New Size(Double.PositiveInfinity, Double.PositiveInfinity))
'TotalDimension += SelectedContent.DesiredSize.Height
'' Verifico per tutti gli expander (tranne quello selezionato) a partire dal primo se sono espansi e nel caso se la loro dimensione totale li fa stare nello spazio disponibile
'Dim Index As Integer = 0
'For Index = 0 To ExpanderList.Count - 1
' If ExpanderList(Index) IsNot SelectedExpander Then
' If ExpanderList(Index).IsExpanded Then
' Dim ExpanderContent As FrameworkElement = DirectCast(ExpanderList(Index).Content, FrameworkElement)
' TotalDimension += ExpanderContent.ActualHeight
' If TotalDimension > Me.AssociatedObject.MaxHeight Then
' Exit For
' End If
' End If
' End If
'Next
'For CancelIndex = Index To ExpanderList.Count - 1
' If ExpanderList(CancelIndex) IsNot SelectedExpander Then
' ExpanderList(CancelIndex).IsExpanded = False
' End If
'Next
End Sub End Sub
Private Sub HorizontalVerifyDimension(SelectedExpander As Expander) Private Sub HorizontalVerifyDimension(SelectedExpander As Expander)
@@ -58,5 +58,4 @@
binding.UpdateSource() binding.UpdateSource()
End If End If
End Sub End Sub
End Class End Class
+1 -1
View File
@@ -9,7 +9,7 @@
Set(value As String) Set(value As String)
If value <> m_sTabName Then If value <> m_sTabName Then
m_sTabName = value m_sTabName = value
OnPropertyChanged(NameOf(sTabName)) OnPropertyChanged("sTabName")
End If End If
End Set End Set
End Property End Property
+16 -38
View File
@@ -1,7 +1,5 @@
Imports System.Collections.ObjectModel Imports System.Collections.ObjectModel
Imports System.ComponentModel Imports System.ComponentModel
Imports EgtUILib
Imports EgtUILib.EgtInterface
' Classe che definisce un elemento di base del TreeView ' Classe che definisce un elemento di base del TreeView
Public Class TreeViewItemBase Public Class TreeViewItemBase
@@ -15,7 +13,7 @@ Public Class TreeViewItemBase
Set(value As String) Set(value As String)
If (value <> m_Name) Then If (value <> m_Name) Then
m_Name = value m_Name = value
NotifyPropertyChanged(NameOf(Name)) NotifyPropertyChanged("Name")
End If End If
End Set End Set
End Property End Property
@@ -28,12 +26,12 @@ Public Class TreeViewItemBase
Set(value As Boolean) Set(value As Boolean)
If (value <> m_isSelected) Then If (value <> m_isSelected) Then
m_isSelected = value m_isSelected = value
NotifyPropertyChanged(NameOf(IsSelected)) NotifyPropertyChanged("IsSelected")
End If End If
End Set End Set
End Property End Property
Friend m_isExpanded As Boolean Private m_isExpanded As Boolean
Public Property IsExpanded As Boolean Public Property IsExpanded As Boolean
Get Get
Return m_isExpanded Return m_isExpanded
@@ -41,26 +39,7 @@ Public Class TreeViewItemBase
Set(value As Boolean) Set(value As Boolean)
If (value <> m_isExpanded) Then If (value <> m_isExpanded) Then
m_isExpanded = value m_isExpanded = value
If Not Map.refProjectVM.bSelObjOnScene Then NotifyPropertyChanged("IsExpanded")
Dim m_onldObjTreeOldId As Integer = Map.refManageLayerExpanderVM.m_nObjTreeOldId
If Not m_isExpanded Then
Else
For Each Item As LayerTreeViewItem In Map.refManageLayerExpanderVM.LayerList
For Each LayerItem As LayerTreeViewItem In Item.Items
If m_isExpanded = LayerItem.m_isExpanded Then
If m_onldObjTreeOldId = LayerItem.Id Then
Map.refProjectVM.SetLastInteger(LayerItem.Id)
'Map.refProjectVM.ExecuteCommand(Controller.CMD.DESELECTPARTLAYEROBJ)
'Else
'Map.refManageLayerExpanderVM.SelectIdInObjTree(LayerItem.Id)
'Map.refProjectVM.ExecuteCommand(Controller.CMD.SETCURRPARTLAYER)
End If
End If
Next
Next
End If
End If
NotifyPropertyChanged(NameOf(IsExpanded))
End If End If
End Set End Set
End Property End Property
@@ -73,7 +52,7 @@ Public Class TreeViewItemBase
Set(value As Boolean) Set(value As Boolean)
If value <> m_IsActive Then If value <> m_IsActive Then
m_IsActive = value m_IsActive = value
NotifyPropertyChanged(NameOf(IsActive)) NotifyPropertyChanged("IsActive")
End If End If
End Set End Set
End Property End Property
@@ -85,7 +64,7 @@ Public Class TreeViewItemBase
End Get End Get
Set(value As Boolean) Set(value As Boolean)
m_IsEnabled = value m_IsEnabled = value
NotifyPropertyChanged(NameOf(IsEnabled)) NotifyPropertyChanged("IsEnabled")
End Set End Set
End Property End Property
@@ -113,7 +92,6 @@ Public Class InheritableTreeViewItem
Implements INotifyPropertyChanged Implements INotifyPropertyChanged
Friend m_Name As String Friend m_Name As String
Public Property Name As String Public Property Name As String
Get Get
Return m_Name Return m_Name
@@ -121,7 +99,7 @@ Public Class InheritableTreeViewItem
Set(value As String) Set(value As String)
If (value <> m_Name) Then If (value <> m_Name) Then
m_Name = value m_Name = value
NotifyPropertyChanged(NameOf(Name)) NotifyPropertyChanged("Name")
End If End If
End Set End Set
End Property End Property
@@ -134,7 +112,7 @@ Public Class InheritableTreeViewItem
Set(value As Boolean) Set(value As Boolean)
If (value <> m_IsSelected) Then If (value <> m_IsSelected) Then
m_IsSelected = value m_IsSelected = value
NotifyPropertyChanged(NameOf(IsSelected)) NotifyPropertyChanged("IsSelected")
End If End If
End Set End Set
End Property End Property
@@ -147,7 +125,7 @@ Public Class InheritableTreeViewItem
Set(value As Boolean) Set(value As Boolean)
If (value <> m_isExpanded) Then If (value <> m_isExpanded) Then
m_isExpanded = value m_isExpanded = value
NotifyPropertyChanged(NameOf(IsExpanded)) NotifyPropertyChanged("IsExpanded")
End If End If
End Set End Set
End Property End Property
@@ -160,7 +138,7 @@ Public Class InheritableTreeViewItem
Set(value As Boolean) Set(value As Boolean)
If value <> m_IsActive Then If value <> m_IsActive Then
m_IsActive = value m_IsActive = value
NotifyPropertyChanged(NameOf(IsActive)) NotifyPropertyChanged("IsActive")
End If End If
End Set End Set
End Property End Property
@@ -172,7 +150,7 @@ Public Class InheritableTreeViewItem
End Get End Get
Set(value As Boolean) Set(value As Boolean)
m_IsEnabled = value m_IsEnabled = value
NotifyPropertyChanged(NameOf(IsEnabled)) NotifyPropertyChanged("IsEnabled")
End Set End Set
End Property End Property
@@ -184,7 +162,7 @@ Public Class InheritableTreeViewItem
Set(value As String) Set(value As String)
If value <> m_sPictureString Then If value <> m_sPictureString Then
m_sPictureString = value m_sPictureString = value
NotifyPropertyChanged(NameOf(PictureString)) NotifyPropertyChanged("PictureString")
End If End If
End Set End Set
End Property End Property
@@ -217,6 +195,7 @@ Public Class ParentItem
Inherits TreeViewItemBase Inherits TreeViewItemBase
Private m_sPictureString As String Private m_sPictureString As String
Private m_Items As ObservableCollection(Of ChildItem)
Public Property PictureString As String Public Property PictureString As String
Get Get
@@ -225,12 +204,11 @@ Public Class ParentItem
Set(value As String) Set(value As String)
If value <> m_sPictureString Then If value <> m_sPictureString Then
m_sPictureString = value m_sPictureString = value
NotifyPropertyChanged(NameOf(PictureString)) NotifyPropertyChanged("PictureString")
End If End If
End Set End Set
End Property End Property
Private m_Items As ObservableCollection(Of ChildItem)
Public Property Items As ObservableCollection(Of ChildItem) Public Property Items As ObservableCollection(Of ChildItem)
Get Get
Return m_Items Return m_Items
@@ -264,7 +242,7 @@ Public Class ChildItem
Set(value As String) Set(value As String)
If value <> m_sPictureString Then If value <> m_sPictureString Then
m_sPictureString = value m_sPictureString = value
NotifyPropertyChanged(NameOf(PictureString)) NotifyPropertyChanged("PictureString")
End If End If
End Set End Set
End Property End Property
@@ -277,4 +255,4 @@ Public Class ChildItem
MyBase.New(Name, IsSelected, IsExpanded, IsActive) MyBase.New(Name, IsSelected, IsExpanded, IsActive)
End Sub End Sub
End Class End Class
+2 -1
View File
@@ -1,4 +1,5 @@
''' <summary>
''' <summary>
''' A command whose sole purpose is to ''' A command whose sole purpose is to
''' relay its functionality to other ''' relay its functionality to other
''' objects by invoking delegates. The ''' objects by invoking delegates. The
+2 -1
View File
@@ -1,4 +1,5 @@
Module ConstDoors
Module ConstDoors
' File contenente la lista dei nomi di geometria ammessi ' File contenente la lista dei nomi di geometria ammessi
Public Const GEONAMELIST_FILE As String = "GeometryNameList.ini" Public Const GEONAMELIST_FILE As String = "GeometryNameList.ini"
-5
View File
@@ -105,15 +105,11 @@ Module ConstIni
Public Const S_IMPORT As String = "Import" Public Const S_IMPORT As String = "Import"
Public Const K_DXFSCALE As String = "DxfScale" Public Const K_DXFSCALE As String = "DxfScale"
Public Const K_STLSCALE As String = "StlScale" Public Const K_STLSCALE As String = "StlScale"
Public Const K_OFFSCALE As String = "OffScale"
Public Const K_PLYSCALE As String = "PlyScale"
Public Const K_IMGSCALE As String = "ImgScale" Public Const K_IMGSCALE As String = "ImgScale"
Public Const K_CNCFLAG As String = "CncFlag" Public Const K_CNCFLAG As String = "CncFlag"
Public Const K_BTLFLAG As String = "BtlFlag" Public Const K_BTLFLAG As String = "BtlFlag"
Public Const K_BTLAUXDIR As String = "BtlAuxDir" Public Const K_BTLAUXDIR As String = "BtlAuxDir"
Public Const K_3MFFLAG As String = "3mfFlag"
Public Const K_ADVFLAG As String = "AdvFlag" Public Const K_ADVFLAG As String = "AdvFlag"
Public Const K_ADVTOLER As String = "AdvToler"
Public Const S_EXPORT As String = "Export" Public Const S_EXPORT As String = "Export"
Public Const K_DXFFLAG As String = "DxfFlag" Public Const K_DXFFLAG As String = "DxfFlag"
@@ -159,7 +155,6 @@ Module ConstIni
Public Const K_TABLESDIR As String = "TablesDir" Public Const K_TABLESDIR As String = "TablesDir"
Public Const K_CURRMTABLE As String = "CurrMTable" Public Const K_CURRMTABLE As String = "CurrMTable"
Public Const K_MTABLEWINPLACE As String = "MTableWinPlace" Public Const K_MTABLEWINPLACE As String = "MTableWinPlace"
Public Const K_OPTIMIZEMACHFORLINE As String = "OptimizeMachForLine"
Public Const S_GUNSTOCK As String = "GunStock" Public Const S_GUNSTOCK As String = "GunStock"
Public Const K_GUNSTOCKENABLE As String = "GsEnable" Public Const K_GUNSTOCKENABLE As String = "GsEnable"
+4
View File
@@ -11,4 +11,8 @@
m_CurrSetUpVM = CurrSetUpVM m_CurrSetUpVM = CurrSetUpVM
End Sub End Sub
'Private Sub CloseWindow(bDialogResult As Boolean) Handles m_SetUpDbVM.m_CloseWindow
' Me.DialogResult = bDialogResult
'End Sub
End Class End Class
+20 -21
View File
@@ -1,4 +1,6 @@
Imports System.IO Imports System.Collections.ObjectModel
Imports System.ComponentModel
Imports System.IO
Imports EgtUILib Imports EgtUILib
Imports EgtWPFLib5 Imports EgtWPFLib5
@@ -10,7 +12,7 @@ Public Class CurrSetUpVM
Private m_Title As String Private m_Title As String
Public ReadOnly Property Title As String Public ReadOnly Property Title As String
Get Get
Return EgtMsg(6451) ' SetUp Return EgtMsg(MSG_SETUP + 1)
End Get End Get
End Property End Property
@@ -52,28 +54,28 @@ Public Class CurrSetUpVM
Public ReadOnly Property TitleMsg As String Public ReadOnly Property TitleMsg As String
Get Get
Return EgtMsg(6451) ' SetUp Return EgtMsg(MSG_SETUP + 1)
End Get End Get
End Property End Property
Public ReadOnly Property ApplyMsg As String Public ReadOnly Property ApplyMsg As String
Get Get
Return EgtMsg(6452) ' Applica Return EgtMsg(MSG_SETUP + 2)
End Get End Get
End Property End Property
Public ReadOnly Property SaveMsg As String Public ReadOnly Property SaveMsg As String
Get Get
Return EgtMsg(6453) ' Salva Return EgtMsg(MSG_SETUP + 3)
End Get End Get
End Property End Property
Public ReadOnly Property RetrieveMsg As String Public ReadOnly Property RetrieveMsg As String
Get Get
Return EgtMsg(6454) ' Recupera Return EgtMsg(MSG_SETUP + 4)
End Get End Get
End Property End Property
Public ReadOnly Property AutomaticMsg As String Public ReadOnly Property AutomaticMsg As String
Get Get
Return EgtMsg(6455) ' Auto Return EgtMsg(MSG_SETUP + 5)
End Get End Get
End Property End Property
@@ -98,7 +100,7 @@ Public Class CurrSetUpVM
' Funzione che verifica se ci sono state modifiche all'attrezzaggio corrente e permette di attivare e disattivare il bottone applica ' Funzione che verifica se ci sono state modifiche all'attrezzaggio corrente e permette di attivare e disattivare il bottone applica
Private Sub IsEnabledBtns() Private Sub IsEnabledBtns()
m_Apply_IsEnabled = Not m_SetUpVM.IsAppliedSetUp() m_Apply_IsEnabled = Not m_SetUpVM.IsAppliedSetUp()
NotifyPropertyChanged(NameOf(Apply_IsEnabled)) NotifyPropertyChanged("Apply_IsEnabled")
End Sub End Sub
#Region "COMMANDS" #Region "COMMANDS"
@@ -149,7 +151,7 @@ Public Class CurrSetUpVM
Public Sub Save() Public Sub Save()
' chiedo il nome con cui salvare il setup ' chiedo il nome con cui salvare il setup
Dim SaveFileDialogViewVM As New SaveFileDialogWithListVM With { Dim SaveFileDialogViewVM As New SaveFileDialogWithListVM With {
.Title = EgtMsg(6453) & " " & EgtMsg(6451), ' Salva SetUp .Title = EgtMsg(MSG_SETUP + 3) & " " & EgtMsg(MSG_SETUP + 1),
.Extension = ".stu", .Extension = ".stu",
.Filter = "*.stu", .Filter = "*.stu",
.Directory = m_SetUpDir_FilePath, .Directory = m_SetUpDir_FilePath,
@@ -161,8 +163,7 @@ Public Class CurrSetUpVM
sFilePath = SaveFileDialogViewVM.FileName sFilePath = SaveFileDialogViewVM.FileName
If Not m_SetUpVM.Save(sFilePath) Then If Not m_SetUpVM.Save(sFilePath) Then
EgtOutLog("Error in setup saving: can't find the directory") EgtOutLog("Error in setup saving: can't find the directory")
'MessageBox.Show("Error in saving Setup.", "Error", MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show("Error in saving Setup.", "Error", MessageBoxButton.OK, MessageBoxImage.Error)
EgtMessageBoxV.Show(Application.Current.MainWindow, "Error in saving Setup.", EgtMsg(15001), MessageBoxButton.OK, MessageBoxImage.Error) ' Errore
End If End If
End Sub End Sub
@@ -194,12 +195,11 @@ Public Class CurrSetUpVM
Return Return
End If End If
' Apertura dialogo di salvataggio ' Apertura dialogo di salvataggio
Dim OpenFileDialogView As New EgtWPFLib5.EgtOpenFileDialog With { Dim OpenFileDialogView As New EgtWPFLib5.EgtOpenFileDialog
.Title = EgtMsg(6454) & " " & EgtMsg(6451), ' Recupera SetUp OpenFileDialogView.Title = EgtMsg(MSG_SETUP + 4) & " " & EgtMsg(MSG_SETUP + 1)
.Filter = "*.stu", OpenFileDialogView.Filter = "*.stu"
.Directory = sDir, OpenFileDialogView.Directory = sDir
.FileName = String.Empty OpenFileDialogView.FileName = String.Empty
}
If Not OpenFileDialogView.EgtShowDialog Then If Not OpenFileDialogView.EgtShowDialog Then
Return Return
End If End If
@@ -258,15 +258,14 @@ Public Class CurrSetUpVM
' Verifico se l'attrezzaggio è stato modificato ' Verifico se l'attrezzaggio è stato modificato
If m_SetUpVM.IsAppliedSetUp() Then If m_SetUpVM.IsAppliedSetUp() Then
' se modificato chiedo se salvarlo prima di uscire ' se modificato chiedo se salvarlo prima di uscire
'If MessageBox.Show(EgtMsg(MSG_SETUP + 6), EgtMsg(MSG_SETUP + 2), MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.Yes Then If MessageBox.Show(EgtMsg(MSG_SETUP + 6), EgtMsg(MSG_SETUP + 2), MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.Yes Then
If EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(6456), EgtMsg(6452), MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.Yes Then ' Applicare l'attrezzaggio corrente prima di uscire? Applica
' lo salvo ' lo salvo
Apply() Apply()
End If End If
End If End If
' Resetto tutti i delegate usati ' Resetto tutti i delegate usati
ExitToolAssociation.m_delIsModifiedSetUp = Nothing ExitToolAssociation.m_delIsModifiedSetUp = Nothing
' Reset lua ' Reset lua
EgtLuaResetGlobVar("STU") EgtLuaResetGlobVar("STU")
@@ -1,4 +0,0 @@
Public Interface IListItemConverter
Function Convert(ByVal masterListItem As Object) As Object
Function ConvertBack(ByVal targetListItem As Object) As Object
End Interface
@@ -1,80 +0,0 @@
Imports System.Windows.Controls.Primitives
Imports System.ComponentModel
Public Class MultiSelectorBehaviours
Public Shared ReadOnly SynchronizedSelectedItemsProperty As DependencyProperty = DependencyProperty.RegisterAttached("SynchronizedSelectedItems", GetType(IList), GetType(MultiSelectorBehaviours), New PropertyMetadata(Nothing, AddressOf OnSynchronizedSelectedItemsChanged))
Public Shared ReadOnly SynchronizationManagerProperty As DependencyProperty = DependencyProperty.RegisterAttached("SynchronizationManager", GetType(SynchronizationManager), GetType(MultiSelectorBehaviours), New PropertyMetadata(Nothing))
Public Shared Function GetSynchronizedSelectedItems(ByVal dependencyObject As DependencyObject) As IList
Return CType(dependencyObject.GetValue(SynchronizedSelectedItemsProperty), IList)
End Function
Public Shared Sub SetSynchronizedSelectedItems(ByVal dependencyObject As DependencyObject, ByVal value As IList)
dependencyObject.SetValue(SynchronizedSelectedItemsProperty, value)
End Sub
Private Shared Function GetSynchronizationManager(ByVal dependencyObject As DependencyObject) As SynchronizationManager
Return CType(dependencyObject.GetValue(SynchronizationManagerProperty), SynchronizationManager)
End Function
Private Shared Sub SetSynchronizationManager(ByVal dependencyObject As DependencyObject, ByVal value As SynchronizationManager)
dependencyObject.SetValue(SynchronizationManagerProperty, value)
End Sub
Private Shared Sub OnSynchronizedSelectedItemsChanged(ByVal dependencyObject As DependencyObject, ByVal e As DependencyPropertyChangedEventArgs)
If e.OldValue IsNot Nothing Then
Dim synchronizer As SynchronizationManager = GetSynchronizationManager(dependencyObject)
synchronizer.StopSynchronizing()
SetSynchronizationManager(dependencyObject, Nothing)
End If
Dim list As IList = TryCast(e.NewValue, IList)
Dim selector As Selector = TryCast(dependencyObject, Selector)
If list IsNot Nothing AndAlso selector IsNot Nothing Then
Dim synchronizer As SynchronizationManager = GetSynchronizationManager(dependencyObject)
If synchronizer Is Nothing Then
synchronizer = New SynchronizationManager(selector)
SetSynchronizationManager(dependencyObject, synchronizer)
End If
synchronizer.StartSynchronizingList()
End If
End Sub
Private Class SynchronizationManager
Private ReadOnly _multiSelector As Selector
Private _synchronizer As TwoListSynchronizer
Friend Sub New(ByVal selector As Selector)
_multiSelector = selector
End Sub
Public Sub StartSynchronizingList()
Dim list As IList = GetSynchronizedSelectedItems(_multiSelector)
If list IsNot Nothing Then
_synchronizer = New TwoListSynchronizer(GetSelectedItemsCollection(_multiSelector), list)
_synchronizer.StartSynchronizing()
End If
End Sub
Public Sub StopSynchronizing()
_synchronizer.StopSynchronizing()
End Sub
Public Shared Function GetSelectedItemsCollection(ByVal selector As Selector) As IList
If TypeOf selector Is MultiSelector Then
Return (TryCast(selector, MultiSelector)).SelectedItems
ElseIf TypeOf selector Is ListBox Then
Return (TryCast(selector, ListBox)).SelectedItems
Else
Throw New InvalidOperationException("Target object has no SelectedItems property to bind.")
End If
End Function
End Class
End Class
@@ -1,163 +0,0 @@
Imports System.Collections.Specialized
Public Class TwoListSynchronizer
Implements IWeakEventListener
Private Shared ReadOnly DefaultConverter As IListItemConverter = New DoNothingListItemConverter()
Private ReadOnly _masterList As IList
Private ReadOnly _masterTargetConverter As IListItemConverter
Private ReadOnly _targetList As IList
Public Sub New(ByVal masterList As IList, ByVal targetList As IList, ByVal masterTargetConverter As IListItemConverter)
_masterList = masterList
_targetList = targetList
_masterTargetConverter = masterTargetConverter
End Sub
Public Sub New(ByVal masterList As IList, ByVal targetList As IList)
Me.New(masterList, targetList, DefaultConverter)
End Sub
Private Delegate Sub ChangeListAction(ByVal list As IList, ByVal e As NotifyCollectionChangedEventArgs, ByVal converter As Converter(Of Object, Object))
Public Sub StartSynchronizing()
ListenForChangeEvents(_masterList)
ListenForChangeEvents(_targetList)
SetListValuesFromSource(_masterList, _targetList, New Converter(Of Object, Object)(AddressOf ConvertFromMasterToTarget))
If Not TargetAndMasterCollectionsAreEqual() Then
SetListValuesFromSource(_targetList, _masterList, New Converter(Of Object, Object)(AddressOf ConvertFromTargetToMaster))
End If
End Sub
Public Sub StopSynchronizing()
StopListeningForChangeEvents(_masterList)
StopListeningForChangeEvents(_targetList)
End Sub
Public Function ReceiveWeakEvent(ByVal managerType As Type, ByVal sender As Object, ByVal e As EventArgs) As Boolean Implements IWeakEventListener.ReceiveWeakEvent
HandleCollectionChanged(TryCast(sender, IList), TryCast(e, NotifyCollectionChangedEventArgs))
Return True
End Function
Protected Sub ListenForChangeEvents(ByVal list As IList)
If TypeOf list Is INotifyCollectionChanged Then
CollectionChangedEventManager.AddListener(TryCast(list, INotifyCollectionChanged), Me)
End If
End Sub
Protected Sub StopListeningForChangeEvents(ByVal list As IList)
If TypeOf list Is INotifyCollectionChanged Then
CollectionChangedEventManager.RemoveListener(TryCast(list, INotifyCollectionChanged), Me)
End If
End Sub
Private Sub AddItems(ByVal list As IList, ByVal e As NotifyCollectionChangedEventArgs, ByVal converter As Converter(Of Object, Object))
Dim itemCount As Integer = e.NewItems.Count
For i As Integer = 0 To itemCount - 1
Dim insertionPoint As Integer = e.NewStartingIndex + i
If insertionPoint > list.Count Then
list.Add(converter(e.NewItems(i)))
Else
list.Insert(insertionPoint, converter(e.NewItems(i)))
End If
Next
End Sub
Private Function ConvertFromMasterToTarget(ByVal masterListItem As Object) As Object
Return If(_masterTargetConverter Is Nothing, masterListItem, _masterTargetConverter.Convert(masterListItem))
End Function
Private Function ConvertFromTargetToMaster(ByVal targetListItem As Object) As Object
Return If(_masterTargetConverter Is Nothing, targetListItem, _masterTargetConverter.ConvertBack(targetListItem))
End Function
Private Sub HandleCollectionChanged(ByVal sender As Object, ByVal e As NotifyCollectionChangedEventArgs)
Dim sourceList As IList = TryCast(sender, IList)
Select Case e.Action
Case NotifyCollectionChangedAction.Add
PerformActionOnAllLists(AddressOf AddItems, sourceList, e)
Case NotifyCollectionChangedAction.Move
PerformActionOnAllLists(AddressOf MoveItems, sourceList, e)
Case NotifyCollectionChangedAction.Remove
PerformActionOnAllLists(AddressOf RemoveItems, sourceList, e)
Case NotifyCollectionChangedAction.Replace
PerformActionOnAllLists(AddressOf ReplaceItems, sourceList, e)
Case NotifyCollectionChangedAction.Reset
UpdateListsFromSource(TryCast(sender, IList))
Case Else
End Select
End Sub
Private Sub MoveItems(ByVal list As IList, ByVal e As NotifyCollectionChangedEventArgs, ByVal converter As Converter(Of Object, Object))
RemoveItems(list, e, converter)
AddItems(list, e, converter)
End Sub
Private Sub PerformActionOnAllLists(ByVal action As ChangeListAction, ByVal sourceList As IList, ByVal collectionChangedArgs As NotifyCollectionChangedEventArgs)
If sourceList Is _masterList Then
PerformActionOnList(_targetList, action, collectionChangedArgs, New Converter(Of Object, Object)(AddressOf ConvertFromMasterToTarget))
Else
PerformActionOnList(_masterList, action, collectionChangedArgs, New Converter(Of Object, Object)(AddressOf ConvertFromTargetToMaster))
End If
End Sub
Private Sub PerformActionOnList(ByVal list As IList, ByVal action As ChangeListAction, ByVal collectionChangedArgs As NotifyCollectionChangedEventArgs, ByVal converter As Converter(Of Object, Object))
StopListeningForChangeEvents(list)
action(list, collectionChangedArgs, converter)
ListenForChangeEvents(list)
End Sub
Private Sub RemoveItems(ByVal list As IList, ByVal e As NotifyCollectionChangedEventArgs, ByVal converter As Converter(Of Object, Object))
If e.OldItems.Count = 1 AndAlso e.OldStartingIndex <= list.Count - 1 Then
list.RemoveAt(e.OldStartingIndex)
Else
For Each Item In e.OldItems
list.Remove(Item)
Next
End If
End Sub
Private Sub ReplaceItems(ByVal list As IList, ByVal e As NotifyCollectionChangedEventArgs, ByVal converter As Converter(Of Object, Object))
RemoveItems(list, e, converter)
AddItems(list, e, converter)
End Sub
Private Sub SetListValuesFromSource(ByVal sourceList As IList, ByVal targetList As IList, ByVal converter As Converter(Of Object, Object))
StopListeningForChangeEvents(targetList)
targetList.Clear()
For Each o As Object In sourceList
targetList.Add(converter(o))
Next
ListenForChangeEvents(targetList)
End Sub
Private Function TargetAndMasterCollectionsAreEqual() As Boolean
Return _masterList.Cast(Of Object)().SequenceEqual(_targetList.Cast(Of Object)().[Select](Function(item) ConvertFromTargetToMaster(item)))
End Function
Private Sub UpdateListsFromSource(ByVal sourceList As IList)
If sourceList Is _masterList Then
SetListValuesFromSource(_masterList, _targetList, New Converter(Of Object, Object)(AddressOf ConvertFromMasterToTarget))
Else
SetListValuesFromSource(_targetList, _masterList, New Converter(Of Object, Object)(AddressOf ConvertFromTargetToMaster))
End If
End Sub
Friend Class DoNothingListItemConverter
Implements IListItemConverter
Public Function Convert(ByVal masterListItem As Object) As Object Implements IListItemConverter.Convert
Return masterListItem
End Function
Public Function ConvertBack(ByVal targetListItem As Object) As Object Implements IListItemConverter.ConvertBack
Return targetListItem
End Function
End Class
End Class
+226 -60
View File
@@ -14,20 +14,47 @@
<TextBlock Text="{Binding Draw2DMsg}"/> <TextBlock Text="{Binding Draw2DMsg}"/>
</Expander.Header> </Expander.Header>
<UniformGrid Columns="3"> <UniformGrid Columns="3">
<Button ToolTip="{Binding PointToolTip}" Style="{StaticResource DrawPanelButton}" <Button x:Name="PuntoBtn" ToolTip="Punto" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" Command="{Binding PointBaseCommand}" IsEnabled="{Binding bLayerOk}">
Command="{Binding PointCommand}" IsEnabled="{Binding bLayerOk}"> <Image Source="/Resources/DrawPanel/Point+.png" Stretch="Uniform"/>
<Image Source="/Resources/DrawPanel/Point.png" Stretch="Uniform"/> <Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Vettore" Style="{StaticResource DrawPanelButton}"
Command="{Binding PointVectorCommand}">
<Image Source="/Resources/DrawPanel/Point.png" Stretch="Uniform"/>
</Button>
<Button ToolTip="Riferimento" Style="{StaticResource DrawPanelButton}"
Command="{Binding PointReferenceCommand}">
<Image Source="/Resources/DrawPanel/Point.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding Line2PToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Linea 2 Punti" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding Line2PCommand}" IsEnabled="{Binding bLayerOk}"> Command="{Binding Line2PBaseCommand}" IsEnabled="{Binding bLayerOk}">
<Image Source="/Resources/DrawPanel/Line2P.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/Line2P+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Linea 2 Punti con Continuazione" Style="{StaticResource DrawPanelButton}"
Command="{Binding Line2PContinuationCommand}">
<Image Source="/Resources/DrawPanel/Line2P.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding LinePDLToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Linea Punto Direzione Lunghezza" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding LinePDLCommand}" IsEnabled="{Binding bLayerOk}"> Command="{Binding LinePDLBaseCommand}" IsEnabled="{Binding bLayerOk}">
<Image Source="/Resources/DrawPanel/LinePDL.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/LinePDL+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Linea Punto Vettore Direzione Lunghezza" Style="{StaticResource DrawPanelButton}"
Command="{Binding LinePDLVectorCommand}">
<Image Source="/Resources/DrawPanel/Line2P.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding ArcCSEToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="{Binding ArcCSEToolTip}" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
@@ -39,10 +66,18 @@
Command="{Binding Arc3PCommand}" IsEnabled="{Binding bLayerOk}"> Command="{Binding Arc3PCommand}" IsEnabled="{Binding bLayerOk}">
<Image Source="/Resources/DrawPanel/Arc3P.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/Arc3P.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="{Binding ArcPDPToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Arco " Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding ArcPDPCommand}" IsEnabled="{Binding bLayerOk}"> Command="{Binding ArcPDPCommand}" IsEnabled="{Binding bLayerOk}">
<Image Source="/Resources/DrawPanel/ArcPDP.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/ArcPDP+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Linea Punto Vettore Direzione Lunghezza" Style="{StaticResource DrawPanelButton}"
Command="{Binding LinePDLVectorCommand}">
<Image Source="/Resources/DrawPanel/ArcPDP.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding CirclePDToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="{Binding CirclePDToolTip}" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
@@ -74,25 +109,57 @@
Command="{Binding PolygonSideCommand}" IsEnabled="{Binding bLayerOk}"> Command="{Binding PolygonSideCommand}" IsEnabled="{Binding bLayerOk}">
<Image Source="/Resources/DrawPanel/PolygonSide.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/PolygonSide.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="{Binding LinearDimensionToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Quota Lineare" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding LinearDimensionCommand}" IsEnabled="{Binding bLayerOk}"> Command="{Binding LinearDimensionBaseCommand}" IsEnabled="{Binding bLayerOk}">
<Image Source="/Resources/DrawPanel/LinearDimension.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/LinearDimension+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Quota Allineata" Style="{StaticResource DrawPanelButton}"
Command="{Binding AlignedDimensionCommand}">
<Image Source="/Resources/DrawPanel/LinearDimension.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding AngularDimensionToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Quota Angolare" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding AngularDimensionCommand}" IsEnabled="{Binding bLayerOk}"> Command="{Binding AngularDimensionBaseCommand}" IsEnabled="{Binding bLayerOk}">
<Image Source="/Resources/DrawPanel/AngularDimension.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/AngularDimension +.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Quota Angolare Avanzata" Style="{StaticResource DrawPanelButton}"
Command="{Binding AlignedDimensionPlusCommand}">
<Image Source="/Resources/DrawPanel/AngularDimension.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding DiamRadDimensionToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Quota Diametrale" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding DiamRadDimensionCommand}" IsEnabled="{Binding bLayerOk}"> Command="{Binding DiamDimensionCommand}" IsEnabled="{Binding bLayerOk}">
<Image Source="/Resources/DrawPanel/DiametralDimension.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/DiametralDimension+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Quota Radiale" Style="{StaticResource DrawPanelButton}"
Command="{Binding RadDimensionCommand}">
<Image Source="/Resources/DrawPanel/DiametralDimension.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding TextToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Testo" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding TextCommand}" IsEnabled="{Binding bLayerOk}"> Command="{Binding TextBaseCommand}" IsEnabled="{Binding bLayerOk}">
<Image Source="/Resources/DrawPanel/Text.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/Text+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Testo Avanzato" Style="{StaticResource DrawPanelButton}"
Command="{Binding TextPlusCommand}">
<Image Source="/Resources/DrawPanel/TextA.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
</UniformGrid> </UniformGrid>
</Expander> </Expander>
@@ -102,10 +169,18 @@
<TextBlock Text="{Binding Draw3DMsg}"/> <TextBlock Text="{Binding Draw3DMsg}"/>
</Expander.Header> </Expander.Header>
<UniformGrid Columns="3"> <UniformGrid Columns="3">
<Button ToolTip="{Binding PlaneToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Piano Contornato" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding PlaneCommand}" IsEnabled="{Binding bLayerOkAndSelOk}"> Command="{Binding FloorCommand}" IsEnabled="{Binding bLayerOkAndSelOk}">
<Image Source="/Resources/DrawPanel/Plane.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/Plane+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Regione Piana" Style="{StaticResource DrawPanelButton}"
Command="{Binding RegionCommand}">
<Image Source="/Resources/DrawPanel/Plane.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding ExtrudeToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="{Binding ExtrudeToolTip}" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
@@ -137,15 +212,31 @@
Command="{Binding SolidAddSurfCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding SolidAddSurfCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/SolidAddSurf.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/SolidAddSurf.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="{Binding SolidSubtractSurfToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Sottrai Superfici e Regioni Piane" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding SolidSubtractSurfCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding SubtractSurfacesCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/SolidSubtractSurf.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/SolidSubtractSurf+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Taglia Superficie con Superficie Inversa" Style="{StaticResource DrawPanelButton}"
Command="{Binding CutSurfacesCommand}">
<Image Source="/Resources/DrawPanel/SolidSubtractSurf.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding SolidIntersectSurfToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Interseca Superfici e Regioni Piane" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding SolidIntersectSurfCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding IntersectSurfCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/SolidIntersectSurf.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/SolidIntersectSurf+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Taglia Superficie con Superficie" Style="{StaticResource DrawPanelButton}"
Command="{Binding CutSurfCommand}">
<Image Source="/Resources/DrawPanel/SolidIntersectSurf.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding IntersectSurfSurfToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="{Binding IntersectSurfSurfToolTip}" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
@@ -162,10 +253,18 @@
Command="{Binding ExtractFacetLoopsCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding ExtractFacetLoopsCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/ExtractFacetLoops.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/ExtractFacetLoops.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="{Binding ExplodeSurfToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Esplodi Superfici e Regioni Piane" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding ExplodeSurfCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding ExplodeSurfaceCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/ExplodeSurf.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/ExplodeSurf+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Esplodi Superfici Mesh in Triangoli" Style="{StaticResource DrawPanelButton}"
Command="{Binding ExplodeSurfaceMeshCommand}">
<Image Source="/Resources/DrawPanel/ExplodeSurf.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding ExtractSurfFacetToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="{Binding ExtractSurfFacetToolTip}" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
@@ -187,10 +286,18 @@
Command="{Binding ApproxSurfCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding ApproxSurfCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/ApproxSurf.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/ApproxSurf.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="{Binding StmMoveVertexFacetToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Muovi Vertice di Superficie" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding MoveStmVertexFacetCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding MoveStmVertexCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/StmMoveVertex.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/StmMoveVertex+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Muovi Faccia di Superficie" Style="{StaticResource DrawPanelButton}"
Command="{Binding MoveStmFacetCommand}">
<Image Source="/Resources/DrawPanel/StmMoveVertex.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
</UniformGrid> </UniformGrid>
</Expander> </Expander>
@@ -204,14 +311,22 @@
Command="{Binding DeleteCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding DeleteCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/Delete.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/Delete.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="{Binding ChangeLayerToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Cambia Layer" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding ChangeLayerCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding ChangeLayerBaseCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/ChangeLayer.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/ChangeLayer+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Cambia Layer con Trasformazioni" Style="{StaticResource DrawPanelButton}"
Command="{Binding ChangeLayerTrasfCommand}">
<Image Source="/Resources/DrawPanel/ChangeLayer.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding ChangeStatusToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="{Binding ChangeStatusToolTip}" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding ChangeStatusCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding ChangeStatusCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/ChangeStatus.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/ChangeStatus.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="{Binding ChangeColorToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="{Binding ChangeColorToolTip}" Style="{StaticResource DrawPanelButton}"
@@ -264,10 +379,22 @@
Command="{Binding ExplodeCurveCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding ExplodeCurveCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/ExplodeCurve.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/ExplodeCurve.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="{Binding JoinCurveToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Unisci Curve" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding JoinCurveCommand}" IsEnabled="{Binding bLayerOkAndSelOk}"> Command="{Binding JoinCurveBasCommand}" IsEnabled="{Binding bLayerOkAndSelOk}">
<Image Source="/Resources/DrawPanel/JoinCurve.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/JoinCurve+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Unisci Curve creando una Copia" Style="{StaticResource DrawPanelButton}"
Command="{Binding JoinCurveCopyCommand}">
<Image Source="/Resources/DrawPanel/JoinCurve.png" Stretch="Uniform"/>
</Button>
<Button ToolTip="Fondi Curve nella Composita" Style="{StaticResource DrawPanelButton}"
Command="{Binding JoinCurveCompositeCommand}">
<Image Source="/Resources/DrawPanel/JoinCurve.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding OffsetToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="{Binding OffsetToolTip}" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
@@ -284,30 +411,69 @@
Command="{Binding ChamferCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding ChamferCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/Chamfer.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/Chamfer.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="{Binding ArcFlipToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Arco Capovolto" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" Command="{Binding UpsideDownArchCommand}" ToolTipService.ShowOnDisabled="True" IsEnabled="{Binding bSelOk}">
Command="{Binding ArcFlipCommand}" IsEnabled="{Binding bSelOk}"> <Image Source="/Resources/DrawPanel/ArcFlip+.png" Stretch="Uniform"/>
<Image Source="/Resources/DrawPanel/ArcFlip.png" Stretch="Uniform"/> <Button.ContextMenu >
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Arco Esplementare" Style="{StaticResource DrawPanelButton}"
Command="{Binding ComplementaryArchCommand}">
<Image Source="/Resources/DrawPanel/ArcFlip.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding ModifyCurveToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="{Binding ModifyCurveToolTip}" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding ModifyCurveCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding ModifyCurveCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/ModifyCurve.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/ModifyCurve.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="{Binding AddPointCurveToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Aggiungi Punto" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding AddPointCurveCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding AddPointCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/AddPointCurve.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/AddPointCurve+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Trasforma in Arco" Style="{StaticResource DrawPanelButton}"
Command="{Binding TrasformArcCommand}">
<Image Source="/Resources/DrawPanel/AddPointCurve.png" Stretch="Uniform"/>
</Button>
<Button ToolTip="Chiudi Curva Composita" Style="{StaticResource DrawPanelButton}"
Command="{Binding CloseCurveCommand}">
<Image Source="/Resources/DrawPanel/AddPointCurve.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding RemovePointCurveToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Rimuovi Punto" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding RemovePointCurveCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding RemoveCurveCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/RemovePointCurve.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/RemovePointCurve+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Trasforma in Retta" Style="{StaticResource DrawPanelButton}"
Command="{Binding TrasformRectCommand}">
<Image Source="/Resources/DrawPanel/RemovePointCurve.png" Stretch="Uniform"/>
</Button>
<Button ToolTip="Apri Curva Composita" Style="{StaticResource DrawPanelButton}"
Command="{Binding OpenCurveCommand}">
<Image Source="/Resources/DrawPanel/RemovePointCurve.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding ApproxCurveToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="Approssima Curva" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
Command="{Binding ApproxCurveCommand}" IsEnabled="{Binding bSelOk}"> Command="{Binding ApproxCurveBaseCommand}" IsEnabled="{Binding bSelOk}">
<Image Source="/Resources/DrawPanel/ApproxCurve.png" Stretch="Uniform"/> <Image Source="/Resources/DrawPanel/ApproxCurve+.png" Stretch="Uniform"/>
<Button.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenu_Button}">
<Button ToolTip="Approssima Curva con Linee" Style="{StaticResource DrawPanelButton}"
Command="{Binding ApproxCurveLineCommand}">
<Image Source="/Resources/DrawPanel/ApproxCurve.png" Stretch="Uniform"/>
</Button>
</ContextMenu>
</Button.ContextMenu>
</Button> </Button>
<Button ToolTip="{Binding ModifyArcRadiusToolTip}" Style="{StaticResource DrawPanelButton}" <Button ToolTip="{Binding ModifyArcRadiusToolTip}" Style="{StaticResource DrawPanelButton}"
ToolTipService.ShowOnDisabled="True" ToolTipService.ShowOnDisabled="True"
+1087 -78
View File
File diff suppressed because it is too large Load Diff
+35 -37
View File
@@ -161,18 +161,6 @@
<DependentUpon>CurrSetUpV.xaml</DependentUpon> <DependentUpon>CurrSetUpV.xaml</DependentUpon>
</Compile> </Compile>
<Compile Include="CurrSetUp\CurrSetUpVM.vb" /> <Compile Include="CurrSetUp\CurrSetUpVM.vb" />
<Compile Include="EgtColorPicker\EgtColorPickerV.xaml.vb">
<DependentUpon>EgtColorPickerV.xaml</DependentUpon>
</Compile>
<Compile Include="EgtManageFileDialog\EgtManageFileDialogV.xaml.vb">
<DependentUpon>EgtManageFileDialogV.xaml</DependentUpon>
</Compile>
<Compile Include="EgtMessageBox\EgtMessageBoxV.xaml.vb">
<DependentUpon>EgtMessageBoxV.xaml</DependentUpon>
</Compile>
<Compile Include="DataGridMultiselectManaging\IListItemConverter.vb" />
<Compile Include="DataGridMultiselectManaging\MultiSelectorBehaviours.vb" />
<Compile Include="DataGridMultiselectManaging\TwoListSynchronizer.vb" />
<Compile Include="LeftTray\LeftTrayV.xaml.vb"> <Compile Include="LeftTray\LeftTrayV.xaml.vb">
<DependentUpon>LeftTrayV.xaml</DependentUpon> <DependentUpon>LeftTrayV.xaml</DependentUpon>
</Compile> </Compile>
@@ -437,6 +425,7 @@
<DependentUpon>GunStockWndV.xaml</DependentUpon> <DependentUpon>GunStockWndV.xaml</DependentUpon>
</Compile> </Compile>
<Compile Include="Special-GunStock\GunStockWndVM.vb" /> <Compile Include="Special-GunStock\GunStockWndVM.vb" />
<Compile Include="Utility\TMDbParamVisibility.vb" />
<Compile Include="StructureDataForMessenger.vb" /> <Compile Include="StructureDataForMessenger.vb" />
<Compile Include="OptionPanel\MachiningOptionPanel\OperationExpander\DispositionParameterExpander\DispositionUtility.vb" /> <Compile Include="OptionPanel\MachiningOptionPanel\OperationExpander\DispositionParameterExpander\DispositionUtility.vb" />
<Compile Include="ToolsDbWindow\ToolsUpdate.vb" /> <Compile Include="ToolsDbWindow\ToolsUpdate.vb" />
@@ -467,18 +456,6 @@
<Generator>MSBuild:Compile</Generator> <Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType> <SubType>Designer</SubType>
</Page> </Page>
<Page Include="EgtColorPicker\EgtColorPickerV.xaml">
<SubType>Designer</SubType>
<Generator>XamlIntelliSenseFileGenerator</Generator>
</Page>
<Page Include="EgtManageFileDialog\EgtManageFileDialogV.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="EgtMessageBox\EgtMessageBoxV.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="EstimationsDetailsWnd\EstimationsDetailsWndV.xaml"> <Page Include="EstimationsDetailsWnd\EstimationsDetailsWndV.xaml">
<SubType>Designer</SubType> <SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator> <Generator>MSBuild:Compile</Generator>
@@ -1059,43 +1036,64 @@
<Resource Include="Resources\DrawPanel\StmMoveVertex.png" /> <Resource Include="Resources\DrawPanel\StmMoveVertex.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Resource Include="Resources\EgtMessageBox\Error.png" /> <Resource Include="Resources\DrawPanel\Point+.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Resource Include="Resources\EgtMessageBox\Information.png" /> <Resource Include="Resources\DrawPanel\Line2P+.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Resource Include="Resources\EgtMessageBox\Question.png" /> <Resource Include="Resources\DrawPanel\LinePDL+.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Resource Include="Resources\EgtMessageBox\Warning.png" /> <Resource Include="Resources\DrawPanel\ArcPDP+.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Resource Include="Resources\EgtDialog\Folder.png" /> <Resource Include="Resources\DrawPanel\Text+.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Resource Include="Resources\EgtDialog\New.png" /> <Resource Include="Resources\DrawPanel\TextA.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Resource Include="Resources\EgtDialog\Restore.png" /> <Resource Include="Resources\DrawPanel\ArcFlip+.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Resource Include="Resources\EgtDialog\Root.png" /> <Resource Include="Resources\DrawPanel\LinearDimension+.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Resource Include="Resources\EgtMessageBox\Asterisk.png" /> <Resource Include="Resources\DrawPanel\AngularDimension +.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Resource Include="Resources\EgtMessageBox\Exclamation.png" /> <Resource Include="Resources\DrawPanel\DiametralDimension+.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Resource Include="Resources\EgtMessageBox\Hand.png" /> <Resource Include="Resources\DrawPanel\Plane+.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Resource Include="Resources\AboutBox\EgalwareLogo.png" /> <Resource Include="Resources\DrawPanel\SolidSubtractSurf+.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Resource Include="Resources\Egalware.ico" /> <Resource Include="Resources\DrawPanel\SolidIntersectSurf+.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\DrawPanel\ExplodeSurf+.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\DrawPanel\StmMoveVertex+.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\DrawPanel\ChangeLayer+.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\DrawPanel\JoinCurve+.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\DrawPanel\AddPointCurve+.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\DrawPanel\RemovePointCurve+.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\DrawPanel\ApproxCurve+.png" />
</ItemGroup> </ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<PropertyGroup> <PropertyGroup>
-266
View File
@@ -1,266 +0,0 @@
<EgtWPFLib5:EgtCustomWindow x:Class="EgtColorPickerV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Title="{Binding sTitle}"
WindowStartupLocation="CenterOwner"
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="32"
IsMinimizable="False" ShowInTaskbar="False"
Width="750" Height="450"
CloseCommand="{Binding Close_Command,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}">
<Grid Margin="5,5,5,0">
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid Margin="5,5,5,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid Margin="5,5,5,0">
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<TabControl>
<TabItem Header="{Binding BasicColor_Msg}">
<Grid HorizontalAlignment="Center"
VerticalAlignment="Center">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<ListBox ItemsSource="{Binding BasicColors}"
SelectedItem="{Binding SelColor}"
HorizontalAlignment="Center"
BorderThickness="0">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Columns="13"/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate>
<Rectangle Width="20"
Height="20"
Margin="2"
Stroke="Black"
StrokeThickness="0.5"
Fill="{Binding Fill}"/>
</DataTemplate>
</ListBox.ItemTemplate>
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="Margin" Value="0"/>
<Setter Property="Padding" Value="0"/>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
</Grid>
</TabItem>
<TabItem Header="{Binding ColorPicker_Msg}">
<TabItem.Resources>
<Style TargetType="{x:Type EgtWPFLib5:EgtHexItem}" BasedOn="{StaticResource EgtHexItem}">
<Setter Property="BorderThickness" Value="1.5"/>
<Setter Property="BorderBrush" Value="White"/>
</Style>
</TabItem.Resources>
<EgtWPFLib5:EgtHexList ItemsSource="{Binding HexList}"
SelectedItem="{Binding sHexSelColor}"
Orientation="Vertical"
Margin="2.5"
RowCount="13"
ColumnCount="13"
Height="300"
Width="350"
Style="{StaticResource EgtHexList}">
<EgtWPFLib5:EgtHexList.ItemTemplate>
<DataTemplate/>
</EgtWPFLib5:EgtHexList.ItemTemplate>
<EgtWPFLib5:EgtHexList.ItemContainerStyle>
<Style TargetType="EgtWPFLib5:EgtHexItem" BasedOn="{StaticResource EgtHexItem}">
<Setter Property="Grid.Row" Value="{Binding nRow}"/>
<Setter Property="Grid.Column" Value="{Binding nColumn}"/>
<Setter Property="Background" Value="{Binding Background}"/>
</Style>
</EgtWPFLib5:EgtHexList.ItemContainerStyle>
</EgtWPFLib5:EgtHexList>
</TabItem>
<TabItem Header="{Binding ColorPickerTheme_Msg}">
<Grid HorizontalAlignment="Center"
VerticalAlignment="Center">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<ListBox ItemsSource="{Binding BasicColorsTheme}"
SelectedItem="{Binding SelColorTheme}"
BorderThickness="0">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Columns="13"/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate>
<Rectangle Width="20"
Height="20"
Margin="2"
Stroke="Black"
StrokeThickness="0.5"
Fill="{Binding Fill}"/>
</DataTemplate>
</ListBox.ItemTemplate>
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="Margin" Value="0"/>
<Setter Property="Padding" Value="0"/>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
</Grid>
</TabItem>
</TabControl>
</Grid>
<Grid Grid.Column="1"
Margin="5,0,0,0">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding CustomColor_Msg}"
Margin="5,18,5,10"
Style="{StaticResource DialogWindow_TextBlock}"/>
<Grid Grid.Row="1">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<ListBox ItemsSource="{Binding CustomColors}"
SelectedItem="{Binding SelCustomColor}"
HorizontalAlignment="Center"
BorderThickness="0">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Columns="13"/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate>
<Rectangle Width="20"
Height="20"
Margin="2"
Stroke="Black"
StrokeThickness="0.5"
Fill="{Binding Fill}"/>
</DataTemplate>
</ListBox.ItemTemplate>
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="Margin" Value="0"/>
<Setter Property="Padding" Value="0"/>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
</Grid>
<Grid Grid.Row="2"
Margin="0,20,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid Margin="0,10,5,0"
HorizontalAlignment="Left">
<Grid.RowDefinitions>
<RowDefinition Height="1*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Rectangle Width="100"
Height="70"
Stroke="Black"
StrokeThickness="0.5"
Fill="{Binding CurrColor}"/>
<Button x:Name="SaveColor"
Grid.Row="1"
Margin="0,10,0,0"
Content="{Binding AddCColor_Msg}"
Command="{Binding SaveColor_Command}"
Style="{StaticResource LeftPanel_TextButton}"/>
</Grid>
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding Red_Msg}"
Margin="0,10,5,0"
HorizontalAlignment="Right"
Style="{StaticResource DialogWindow_TextBlock}"/>
<TextBox Grid.Column="1"
HorizontalAlignment="Right"
Margin="0,10,5,0"
IsReadOnly="False"
Text="{Binding Red, UpdateSourceTrigger=PropertyChanged}"
Style="{StaticResource ColorPicker_TextBox}"/>
<TextBlock Grid.Row="1"
Text="{Binding Green_Msg}"
Margin="5,5,5,0"
HorizontalAlignment="Right"
Style="{StaticResource DialogWindow_TextBlock}"/>
<TextBox Grid.Column="1"
Grid.Row="1"
HorizontalAlignment="Right"
Margin="5,5,5,0"
IsReadOnly="False"
Text="{Binding Green, UpdateSourceTrigger=PropertyChanged}"
Style="{StaticResource ColorPicker_TextBox}"/>
<TextBlock Grid.Row="2"
Text="{Binding Blu_Msg}"
Margin="5,5,5,0"
HorizontalAlignment="Right"
Style="{StaticResource DialogWindow_TextBlock}"/>
<TextBox Grid.Column="1"
Grid.Row="2"
HorizontalAlignment="Right"
Margin="5,5,5,0"
IsReadOnly="False"
Text="{Binding Blue, UpdateSourceTrigger=PropertyChanged}"
Style="{StaticResource ColorPicker_TextBox}"/>
<TextBlock Grid.Row="3"
Text="{Binding Hexadecimal_Msg}"
Margin="5,5,5,0"
HorizontalAlignment="Right"
Style="{StaticResource DialogWindow_TextBlock}"/>
<TextBox Grid.Column="1"
Grid.Row="3"
HorizontalAlignment="Right"
Margin="5,5,5,0"
Text="{Binding Hexadecimal}"
Style="{StaticResource ColorPicker_TextBox}"/>
</Grid>
</Grid>
</Grid>
</Grid>
<UniformGrid Grid.Row="2"
Rows="1"
Margin="10,10,10,0">
<Button IsDefault="True"
Content="OK"
Command="{Binding Ok_Command}"
Margin="2.5,0,2.5,0"
Style="{StaticResource RightPanel_HalfRound_Button}"/>
<Button Content="Cancel"
Command="{Binding Cancel_Command}"
Margin="2.5,0,2.5,0"
Style="{StaticResource RightPanel_HalfRound_Button}"/>
</UniformGrid>
</Grid>
</EgtWPFLib5:EgtCustomWindow>
-68
View File
@@ -1,68 +0,0 @@
Imports System.Windows.Forms
Imports EgtWPFLib5
Public Class EgtColorPickerV
#Region "FIELDS & PROPERTIES"
Private WithEvents m_EgtColorPickerVM As EgtColorPickerVM
Private Shadows DialogResult As DialogResult
Public Property CustomColors As Integer()
Get
Return m_EgtColorPickerVM.GetCustomColors()
End Get
Set(value As Integer())
m_EgtColorPickerVM.SetCustomColors(value)
End Set
End Property
Public Property Color As System.Drawing.Color
Get
Return System.Drawing.Color.FromArgb(255, CInt(m_EgtColorPickerVM.Red), CInt(m_EgtColorPickerVM.Green), CInt(m_EgtColorPickerVM.Blue))
End Get
Set(value As System.Drawing.Color)
m_EgtColorPickerVM.Red = CStr(value.R)
m_EgtColorPickerVM.Green = CStr(value.G)
m_EgtColorPickerVM.Blue = CStr(value.B)
End Set
End Property
#End Region ' Fields & Properties
#Region "CONTRUCTORS"
Sub New(Owner As Window, EtgColorPickerVM As EgtColorPickerVM)
MyBase.New(Owner)
InitializeComponent()
Me.DataContext = EtgColorPickerVM
' Assegno al riferimento locale al VM il VM preso dal DataContext
m_EgtColorPickerVM = EtgColorPickerVM
End Sub
#End Region ' Constructors
#Region "EVENTS"
Private Sub CloseWindow(DialogResult As MessageBoxResult) Handles m_EgtColorPickerVM.m_CloseWindow
Me.DialogResult = CType(DialogResult, DialogResult)
Me.Close()
End Sub
#End Region ' Events
#Region "METHODS"
''' <summary>
''' Apre una finestra EgtColorPicker
''' </summary>
''' <returns></returns>
Public Overloads Function ShowDialog() As DialogResult
MyBase.ShowDialog()
Return Me.DialogResult
End Function
#End Region ' Methods
End Class
@@ -1,400 +0,0 @@
<EgtWPFLib5:EgtCustomWindow x:Class="EgtManageFileDialogV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Title="{Binding sTitle}"
WindowStartupLocation="CenterOwner"
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="32"
IsMinimizable="False" ShowInTaskbar="False"
Height="500" Width="800"
CloseCommand="{Binding Close_Command,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}">
<Grid Margin="5,5,5,0">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid Margin="5,5,5,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Command="{Binding GoBack_Command}"
Style="{StaticResource RightPanel_Button}">
<Image Source="\Resources\EgtDialog\Restore.png"
Style="{StaticResource Button_Image}"/>
</Button>
<TextBlock Grid.Column="1"
Margin="5"
Text="{Binding sSelPath}"
HorizontalAlignment="Left"
Style="{StaticResource DialogWindow_TextBlock}"/>
<ComboBox Grid.Column="2"
HorizontalAlignment="Right"
IsSynchronizedWithCurrentItem="True"
ItemsSource="{Binding ViewModeList}"
SelectedItem="{Binding SelViewMode}"
Margin="2.5,5,2.5,5"
Style="{StaticResource RightPanel_ComboBox}"/>
</Grid>
<Grid Grid.Row="1"
Margin="5,5,5,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="4*"/>
</Grid.ColumnDefinitions>
<TreeView x:Name="FileTree"
ItemsSource="{Binding RootList}"
Margin="10"
FontSize="15"
BorderBrush="White">
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type EgtWPFLib5:EgtFolder}"
ItemsSource="{Binding TreeItemList_View}">
<StackPanel Orientation="Horizontal">
<Image Source="{Binding sIconSource}"
Height="15"
Style="{StaticResource Button_Image}"/>
<TextBlock Text="{Binding sName}"
Style="{StaticResource DialogWindow_TextBlock}"/>
</StackPanel>
</HierarchicalDataTemplate>
<DataTemplate DataType="{x:Type EgtWPFLib5:EgtItem}">
<StackPanel Orientation="Horizontal">
<Image Source="{Binding sIconSource}"
Height="15"
Style="{StaticResource Button_Image}"/>
<TextBlock Text="{Binding sName}"
Style="{StaticResource DialogWindow_TextBlock}"/>
</StackPanel>
</DataTemplate>
</TreeView.Resources>
<TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}">
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}"/>
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}"/>
</Style>
</TreeView.ItemContainerStyle>
</TreeView>
<TabControl Grid.Column="1"
Background="Transparent"
BorderBrush="White"
BorderThickness="0"
SelectedIndex="{Binding nSelTab}">
<TabControl.ItemContainerStyle>
<Style TargetType="{x:Type TabItem}">
<Setter Property="Visibility" Value="Collapsed"/>
</Style>
</TabControl.ItemContainerStyle>
<TabItem Header="LISTBOX">
<ListBox x:Name="FileList"
Grid.Row="1"
Margin="5,5,5,5"
BorderBrush="White"
IsSynchronizedWithCurrentItem="True"
ItemsSource="{Binding SelTreeItem.FolderList, Mode=TwoWay}"
SelectedItem="{Binding ItemSelected, Mode=TwoWay}">
<ListBox.Resources>
<DataTemplate x:Key="ListTemplateView"
DataType="{x:Type EgtWPFLib5:EgtDirectory}">
<Grid Margin="5,5,5,0"
Height="20">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Image Source="{Binding sIconSource}"
Height="15"
Style="{StaticResource Button_Image}"/>
<TextBlock Grid.Column="1"
Text="{Binding sName}"
Style="{StaticResource DialogWindow_TextBlock}"/>
</Grid>
</DataTemplate>
<DataTemplate x:Key="TilesTemplateView"
DataType="{x:Type EgtWPFLib5:EgtDirectory}">
<Grid Margin="5,5,5,0"
Height="50"
Width="250">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Image Source="{Binding sIconSource}"
Style="{StaticResource Button_Image}"/>
<UniformGrid Grid.Column="1"
Rows="3"
Margin="2.5,0,2.5,5">
<TextBlock TextAlignment="Left"
Text="{Binding sName}"
HorizontalAlignment="Left"
Style="{StaticResource DialogWindow_TextBlock}"/>
<TextBlock TextAlignment="Left"
Text="{Binding ghTypeItem}"
HorizontalAlignment="Left"
Style="{StaticResource DialogWindow_TextBlock}"/>
<TextBlock TextAlignment="Left"
Text="{Binding sDimension}"
HorizontalAlignment="Left"
Style="{StaticResource DialogWindow_TextBlock}"/>
</UniformGrid>
</Grid>
</DataTemplate>
<DataTemplate x:Key="ContentTemplateView"
DataType="{x:Type EgtWPFLib5:EgtDirectory}">
<Grid Margin="5,5,5,0"
Height="50">
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Image Source="{Binding sIconSource}"
Style="{StaticResource Button_Image}"/>
<UniformGrid Grid.Column="1"
Rows="2"
Margin="2.5,0,2.5,5">
<TextBlock TextAlignment="Left"
HorizontalAlignment="Left"
Text="{Binding sName}"
Style="{StaticResource DialogWindow_TextBlock}"/>
<TextBlock TextAlignment="Left"
HorizontalAlignment="Left"
Text="{Binding ghTypeItem}"
Style="{StaticResource DialogWindow_TextBlock}"/>
</UniformGrid>
<UniformGrid Grid.Column="2"
Rows="2"
Margin="2.5,0,2.5,5">
<TextBlock TextAlignment="Left"
HorizontalAlignment="Left"
Text="{Binding sLastModifyDate}"
Style="{StaticResource DialogWindow_TextBlock}"/>
<TextBlock TextAlignment="Left"
HorizontalAlignment="Left"
Text="{Binding sDimension}"
Style="{StaticResource DialogWindow_TextBlock}"/>
</UniformGrid>
</Grid>
<Border Grid.Row="1"
BorderThickness="1"
BorderBrush="LightGray"/>
</Grid>
</DataTemplate>
</ListBox.Resources>
<ListBox.ItemTemplate>
<DataTemplate DataType="{x:Type EgtWPFLib5:EgtDirectory}">
<ContentControl Content="{Binding}">
<ContentControl.Style>
<Style TargetType="{x:Type ContentControl}">
<Style.Triggers>
<DataTrigger Binding="{Binding DataContext.nSelTempleteListView, RelativeSource={RelativeSource AncestorType={x:Type EgtWPFLib5:EgtCustomWindow}}}" Value="0">
<Setter Property="ContentTemplate" Value="{StaticResource ListTemplateView}" />
</DataTrigger>
<DataTrigger Binding="{Binding DataContext.nSelTempleteListView, RelativeSource={RelativeSource AncestorType={x:Type EgtWPFLib5:EgtCustomWindow}}}" Value="1">
<Setter Property="ContentTemplate" Value="{StaticResource TilesTemplateView}" />
</DataTrigger>
<DataTrigger Binding="{Binding DataContext.nSelTempleteListView, RelativeSource={RelativeSource AncestorType={x:Type EgtWPFLib5:EgtCustomWindow}}}" Value="2">
<Setter Property="ContentTemplate" Value="{StaticResource ContentTemplateView}" />
</DataTrigger>
</Style.Triggers>
</Style>
</ContentControl.Style>
</ContentControl>
</DataTemplate>
</ListBox.ItemTemplate>
<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}" BasedOn="{StaticResource {x:Type ListBoxItem}}">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<EventSetter Event="MouseDoubleClick" Handler="ListBoxItem_MouseDoubleClick"/>
</Style>
</ListBox.ItemContainerStyle>
<ListBox.Style>
<Style TargetType="{x:Type ListBox}">
<Style.Triggers>
<DataTrigger Binding="{Binding DataContext.nSelTempleteListView, RelativeSource={RelativeSource AncestorType={x:Type EgtWPFLib5:EgtCustomWindow}}}"
Value="0">
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/>
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Disabled"/>
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<WrapPanel Orientation="Vertical"/>
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
</DataTrigger>
<DataTrigger Binding="{Binding DataContext.nSelTempleteListView, RelativeSource={RelativeSource AncestorType={x:Type EgtWPFLib5:EgtCustomWindow}}}"
Value="1">
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Disabled"/>
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<WrapPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
</DataTrigger>
<DataTrigger Binding="{Binding DataContext.nSelTempleteListView, RelativeSource={RelativeSource AncestorType={x:Type EgtWPFLib5:EgtCustomWindow}}}"
Value="2">
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Disabled"/>
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<StackPanel Orientation="Vertical"
HorizontalAlignment="Stretch"/>
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</ListBox.Style>
</ListBox>
</TabItem>
<TabItem Header="DATAGRID">
<DataGrid AutoGenerateColumns="False"
IsReadOnly="True"
HeadersVisibility="Column"
ItemsSource="{Binding SelTreeItem.FolderList, Mode=TwoWay}"
SelectedItem="{Binding ItemSelected}">
<!-- ColumnHeaderStyle="{StaticResource DataGridColumnHeader}"
RowStyle="{StaticResource RowDataGrid_CustomHighLight}"-->
<DataGrid.Columns>
<DataGridTemplateColumn Width="5*">
<DataGridTemplateColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding DataContext.Name_Msg, RelativeSource={RelativeSource AncestorType=DataGrid}}"
HorizontalAlignment="Left"/>
</DataTemplate>
</DataGridTemplateColumn.HeaderTemplate>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Image Source="{Binding sIconSource}"
Margin="2.5,0,2.5,0"
Style="{StaticResource Button_Image}"/>
<TextBlock Grid.Column="1"
Text="{Binding sName}"
VerticalAlignment="Center"
Margin="2.5,0,0,0"/>
</Grid>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Binding="{Binding sLastModifyDate}"
Width="2*">
<DataGridTextColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding DataContext.LastModify_Msg, RelativeSource={RelativeSource AncestorType=DataGrid}}"
HorizontalAlignment="Left"/>
</DataTemplate>
</DataGridTextColumn.HeaderTemplate>
<DataGridTextColumn.ElementStyle>
<Style TargetType="TextBlock">
<Setter Property="HorizontalAlignment" Value="Left"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="TextAlignment" Value="Left"/>
<Setter Property="Padding" Value="12,6,12,6"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn Binding="{Binding ghTypeItem}"
Width="1*">
<DataGridTextColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding DataContext.Type_Msg, RelativeSource={RelativeSource AncestorType=DataGrid}}"
HorizontalAlignment="Left"/>
</DataTemplate>
</DataGridTextColumn.HeaderTemplate>
<DataGridTextColumn.ElementStyle>
<Style TargetType="TextBlock">
<Setter Property="HorizontalAlignment" Value="Left"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="TextAlignment" Value="Left"/>
<Setter Property="Padding" Value="12,6,12,6"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn Binding="{Binding sDimension}"
Width="1*">
<DataGridTextColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding DataContext.Dimension_Msg, RelativeSource={RelativeSource AncestorType=DataGrid}}"
HorizontalAlignment="Left"/>
</DataTemplate>
</DataGridTextColumn.HeaderTemplate>
<DataGridTextColumn.ElementStyle>
<Style TargetType="TextBlock">
<Setter Property="HorizontalAlignment" Value="Right"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="TextAlignment" Value="Right"/>
<Setter Property="Padding" Value="12,6,12,6"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
</DataGrid.Columns>
<DataGrid.InputBindings>
<MouseBinding MouseAction="LeftDoubleClick" Command="{Binding DataContext.DoubleClick_Command, RelativeSource={RelativeSource AncestorType={x:Type EgtWPFLib5:EgtCustomWindow}}}"/>
</DataGrid.InputBindings>
</DataGrid>
</TabItem>
</TabControl>
</Grid>
<Grid Grid.Row="2"
Margin="5,5,5,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Margin="5,5,5,5"
Text="{Binding FileName_Msg}"
HorizontalAlignment="Right"
Style="{StaticResource DialogWindow_TextBlock}"/>
<TextBox Grid.Column="1"
Margin="2.5,2.5,2.5,5"
TextAlignment="Left"
HorizontalAlignment="Stretch"
Text="{Binding sSaveFileName, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
Style="{StaticResource ParameterList_TextBox}"/>
<ComboBox Grid.Column="2"
IsSynchronizedWithCurrentItem="True"
ItemsSource="{Binding FilterList}"
SelectedItem="{Binding SelFilter, Mode=OneWayToSource}"
DisplayMemberPath="sNameExstension"
HorizontalAlignment="Right"
Margin="10,2.5,2.5,5"
Style="{StaticResource RightPanel_ComboBox}"/>
</Grid>
<UniformGrid Grid.Row="3"
Rows="1"
Margin="2.5,0,2.5,0">
<Button IsDefault="True"
Content="OK"
Command="{Binding Ok_Command}"
HorizontalAlignment="Right"
Margin="15,0,2.5,0"
Style="{StaticResource RightPanel_HalfRound_Button}"/>
<Button Content="Cancel"
Command="{Binding Cancel_Command}"
HorizontalAlignment="Left"
Margin="2.5,0,0,0"
Style="{StaticResource RightPanel_HalfRound_Button}"/>
</UniformGrid>
</Grid>
</EgtWPFLib5:EgtCustomWindow>
@@ -1,141 +0,0 @@
Imports System.Windows.Forms
Imports EgtWPFLib5
Public Class EgtManageFileDialogV
#Region "FIELDS & PROPERTIES"
Private WithEvents m_EgtManageFileDialogVM As EgtManageFileDialogVM
Private Shadows DialogResult As DialogResult
''' <summary>
''' Stringa che specifica il titolo da mostrare
''' </summary>
Public Overloads Property Title As String
Get
Return m_EgtManageFileDialogVM.sTitle
End Get
Set(value As String)
m_EgtManageFileDialogVM.sTitle = value
End Set
End Property
Public Property Filter As String
Get
Return m_EgtManageFileDialogVM.sFilter
End Get
Set(value As String)
m_EgtManageFileDialogVM.sFilter = value
End Set
End Property
Public Property InitialDirectory As String
Get
Return m_EgtManageFileDialogVM.sInitialDirectory
End Get
Set(value As String)
m_EgtManageFileDialogVM.sInitialDirectory = value
End Set
End Property
Public Property SafeFileName As String
Get
Return m_EgtManageFileDialogVM.sSaveFileName
End Get
Set(value As String)
m_EgtManageFileDialogVM.sSaveFileName = value
End Set
End Property
Public Property FileName As String
Get
Return m_EgtManageFileDialogVM.sFileName
End Get
Set(value As String)
m_EgtManageFileDialogVM.sFileName = value
End Set
End Property
Public Property FilterIndex As Integer
Get
Return m_EgtManageFileDialogVM.nFilterIndex
End Get
Set(value As Integer)
m_EgtManageFileDialogVM.nFilterIndex = value
End Set
End Property
Public Property Mode As Integer
Get
Return m_EgtManageFileDialogVM.nMode
End Get
Set(value As Integer)
m_EgtManageFileDialogVM.nMode = value
End Set
End Property
Public Property CheckFileExists As Boolean
Get
Return m_EgtManageFileDialogVM.bCheckFileExists
End Get
Set(value As Boolean)
m_EgtManageFileDialogVM.bCheckFileExists = value
End Set
End Property
Public Property ValidateNames As Boolean
Get
Return m_EgtManageFileDialogVM.bValidateNames
End Get
Set(value As Boolean)
m_EgtManageFileDialogVM.bValidateNames = value
End Set
End Property
Public Property OverwritePrompt As Boolean
Get
Return m_EgtManageFileDialogVM.bOverwritePrompt
End Get
Set(value As Boolean)
m_EgtManageFileDialogVM.bOverwritePrompt = value
End Set
End Property
#End Region ' FIELDS & PROPERTIES
#Region "CONTRUCTORS"
Sub New(Owner As Window, EgtManageFileDialogVM As EgtManageFileDialogVM)
MyBase.New(Owner)
InitializeComponent()
Me.DataContext = EgtManageFileDialogVM
' Assegno al riferimento locale al VM il VM preso dal DataContext
m_EgtManageFileDialogVM = EgtManageFileDialogVM
End Sub
#End Region
#Region "EVENTS"
Private Sub CloseWindow(DialogResult As DialogResult) Handles m_EgtManageFileDialogVM.m_CloseWindow
Me.DialogResult = DialogResult
Me.Close()
End Sub
#End Region
#Region "METHODS"
Public Overloads Function ShowDialog() As DialogResult
MyBase.ShowDialog()
Return Me.DialogResult
End Function
Private Sub ListBoxItem_MouseDoubleClick(sender As Object, e As MouseButtonEventArgs)
m_EgtManageFileDialogVM.MouseDoubleClick()
End Sub
#End Region ' METHODS
End Class
-49
View File
@@ -1,49 +0,0 @@
<EgtWPFLib5:EgtCustomWindow x:Class="EgtMessageBoxV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Title="{Binding sTitle}"
SizeToContent="WidthAndHeight"
WindowStartupLocation="CenterOwner"
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="32"
IsMinimizable="False" ShowInTaskbar="False"
CloseCommand="{Binding Close_Command,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}">
<Grid Margin="2.5,2.5,2.5,0">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid Margin="20,20,20,20">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Image Source="{Binding sIconSource}"
Margin="0,0,0,0"/>
<TextBlock Grid.Column="1"
Text="{Binding sMessage}"
Margin="5,0,5,0"
Style="{StaticResource DialogWindow_TextBlock}"/>
</Grid>
<ItemsControl Grid.Row="1"
ItemsSource="{Binding ButtonList}"
HorizontalAlignment="Center">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Rows="1"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Button IsDefault="{Binding bIsDefault}"
Content="{Binding sMessage}"
Command="{Binding Command_Command}"
Margin="2.5,0,2.5,0"
Style="{StaticResource RightPanel_HalfRound_Button}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</Grid>
</EgtWPFLib5:EgtCustomWindow>
-109
View File
@@ -1,109 +0,0 @@
Imports EgtWPFLib5
Public Class EgtMessageBoxV
#Region "FIELDS & PROPERTIES"
Private WithEvents m_EgtMessageBoxVM As EgtMessageBoxVM
Private Shadows DialogResult As MessageBoxResult
#End Region ' FIELDS & PROPERTIES
#Region "CONTRUCTORS"
Sub New(Owner As Window, EgtMessageBoxVM As EgtMessageBoxVM)
MyBase.New(Owner)
' This call is required by the designer.
InitializeComponent()
Me.DataContext = EgtMessageBoxVM
' Assegno al riferimento locale al VM il VM preso dal DataContext
m_EgtMessageBoxVM = EgtMessageBoxVM
End Sub
#End Region
#Region "METHODS"
''' <summary>
''' Apre una EgtMessageBox con un messaggio che ritorna un risultato
''' </summary>
''' <param name="Owner">Finestra di appartenenza</param>
''' <param name="sMessageBoxText">Stringa che specifica il messaggio da mostrare</param>
''' <returns>Valore che specifica quale bottone e' stato premuto dall'utente</returns>
Public Overloads Shared Function Show(Owner As Window, sMessageBoxText As String) As MessageBoxResult
Dim NewMessagebox As New EgtMessageBoxV(Owner, New EgtMessageBoxVM(sMessageBoxText))
NewMessagebox.ShowDialog()
Return NewMessagebox.DialogResult
End Function
''' <summary>
''' Apre una EgtMessageBox con un titolo ed un messaggio che ritorna un risultato
''' </summary>
''' <param name="Owner">Finestra di appartenenza</param>
''' <param name="sMessageBoxText">Stringa che specifica il messaggio da mostrare</param>
''' <param name="sCaption">Stringa che specifica il titolo da mostrare</param>
''' <returns>Valore che specifica quale bottone e' stato premuto dall'utente</returns>
Public Overloads Shared Function Show(Owner As Window, sMessageBoxText As String, sCaption As String) As MessageBoxResult
Dim NewMessagebox As New EgtMessageBoxV(Owner, New EgtMessageBoxVM(sMessageBoxText, sCaption))
NewMessagebox.ShowDialog()
Return NewMessagebox.DialogResult
End Function
''' <summary>
''' Apre una EgtMessageBox con un titolo ed un messaggio che ritorna un risultato
''' </summary>
''' <param name="Owner">Finestra di appartenenza</param>
''' <param name="sMessageBoxText">Stringa che specifica il messaggio da mostrare</param>
''' <param name="sCaption">Stringa che specifica il titolo da mostrare</param>
''' <param name="Button">Valore che specifica quali bottoni mostrare</param>
''' <returns>Valore che specifica quale bottone e' stato premuto dall'utente</returns>
Public Overloads Shared Function Show(Owner As Window, sMessageBoxText As String, sCaption As String, Button As MessageBoxButton) As MessageBoxResult
Dim NewMessagebox As New EgtMessageBoxV(Owner, New EgtMessageBoxVM(sMessageBoxText, sCaption, Button))
NewMessagebox.ShowDialog()
Return NewMessagebox.DialogResult
End Function
''' <summary>
''' Apre una EgtMessageBox con un titolo ed un messaggio che ritorna un risultato
''' </summary>
''' <param name="Owner">Finestra di appartenenza</param>
''' <param name="sMessageBoxText">Stringa che specifica il messaggio da mostrare</param>
''' <param name="sCaption">Stringa che specifica il titolo da mostrare</param>
''' <param name="Button">Valore che specifica quali bottoni mostrare</param>
''' <param name="Icon">Valore che specifica quale icona mostrare</param>
''' <returns>Valore che specifica quale bottone e' stato premuto dall'utente</returns>
Public Overloads Shared Function Show(Owner As Window, sMessageBoxText As String, sCaption As String, Button As MessageBoxButton, Icon As MessageBoxImage) As MessageBoxResult
Dim NewMessagebox As New EgtMessageBoxV(Owner, New EgtMessageBoxVM(sMessageBoxText, sCaption, Button, Icon))
NewMessagebox.ShowDialog()
Return NewMessagebox.DialogResult
End Function
''' <summary>
''' Apre una EgtMessageBox con un titolo ed un messaggio che ritorna un risultato
''' </summary>
''' <param name="Owner">Finestra di appartenenza</param>
''' <param name="sMessageBoxText">Stringa che specifica il messaggio da mostrare</param>
''' <param name="sCaption">Stringa che specifica il titolo da mostrare</param>
''' <param name="Button">Valore che specifica quali bottoni mostrare</param>
''' <param name="Icon">Valore che specifica quale icona mostrare</param>
''' <param name="DefaultResult">Valore che specifica il bottone di default</param>
''' <returns>Valore che specifica quale bottone e' stato premuto dall'utente</returns>
Public Overloads Shared Function Show(Owner As Window, sMessageBoxText As String, sCaption As String, Button As MessageBoxButton, Icon As MessageBoxImage, DefaultResult As MessageBoxResult) As MessageBoxResult
Dim NewMessagebox As New EgtMessageBoxV(Owner, New EgtMessageBoxVM(sMessageBoxText, sCaption, Button, Icon, DefaultResult))
NewMessagebox.ShowDialog()
Return NewMessagebox.DialogResult
End Function
#End Region ' METHODS
#Region "EVENTS"
Private Sub CloseWindow(DialogResult As MessageBoxResult) Handles m_EgtMessageBoxVM.m_CloseWindow
Me.DialogResult = DialogResult
Me.Close()
End Sub
#End Region
End Class
@@ -1,14 +1,14 @@
<EgtWPFLib5:EgtCustomWindow x:Class="EstimationsDetailsWndV" <EgtWPFLib5:EgtCustomWindow x:Class="EstimationsDetailsWndV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5" xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Title="{Binding TitleMsg}" Title="{Binding TitleMsg}"
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}" Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="32" WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="32"
Width="300" Height="300" Width="300" Height="300"
IsResizable="True" IsResizable="True"
IsMinimizable="False" WindowStartupLocation="CenterOwner" ShowInTaskbar="False"> IsMinimizable="False" WindowStartupLocation="CenterOwner" ShowInTaskbar="False">
<WebBrowser Name="EstimationsWebBrowser" Margin="10"/> <WebBrowser Name="EstimationsWebBrowser" Margin="10"/>
</EgtWPFLib5:EgtCustomWindow> </EgtWPFLib5:EgtCustomWindow>
@@ -16,12 +16,16 @@ Public Class EstimationsDetailsWndVM
Public ReadOnly Property TitleMsg As String Public ReadOnly Property TitleMsg As String
Get Get
Return EgtMsg(5344) ' Estimation details Return EgtMsg(MSG_SIMULATION + 44) ' Estimation details
End Get End Get
End Property End Property
#End Region ' Messages #End Region ' Messages
' Definizione comandi
Private m_cmdOk As ICommand
Private m_cmdCancel As ICommand
#End Region 'FIELDS & PROPERTIES #End Region 'FIELDS & PROPERTIES
#Region "CONSTRUCTOR" #Region "CONSTRUCTOR"
@@ -32,4 +36,8 @@ Public Class EstimationsDetailsWndVM
#End Region ' CONSTRUCTOR #End Region ' CONSTRUCTOR
#Region "METHODS"
#End Region ' METHODS
End Class End Class
+1 -1
View File
@@ -6,7 +6,7 @@
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<Button Command="{Binding ExecCommand}" ToolTip="{Binding ExecToolTip}" <Button Command="{Binding ExecCommand}" ToolTip="{Binding ExecToolTip}"
Style="{StaticResource GridViewPanelButton}" ContextMenuService.Placement="Bottom"> Style="{StaticResource GridViewPanelButton}" ContextMenuService.Placement="Bottom">
<Button.ContextMenu> <Button.ContextMenu>
<ContextMenu ItemsSource="{Binding MruScriptNames}" ItemContainerStyle="{StaticResource MruScriptItem}"> <ContextMenu ItemsSource="{Binding MruScriptNames}" ItemContainerStyle="{StaticResource MruScriptItem}">
</ContextMenu> </ContextMenu>
+1 -1
View File
@@ -32,7 +32,7 @@ Public Class ExecutePanelVM
Public ReadOnly Property ExecToolTip As String Public ReadOnly Property ExecToolTip As String
Get Get
Return EgtMsg(5108) ' Esegui Script<br/>Esegui Script recenti (Tasto Destro) Return EgtMsg(MSG_TOPCOMMANDBAR + 8)
End Get End Get
End Property End Property
+2 -2
View File
@@ -1,6 +1,6 @@
<UserControl x:Class="GridPanelV" <UserControl x:Class="GridPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel Background="Transparent" Orientation="Horizontal"> <StackPanel Background="Transparent" Orientation="Horizontal">
<Button Command="{Binding CPlaneTopCommand}" ToolTip="{Binding CPlaneTopToolTip}" Style="{StaticResource GridViewPanelButton}"> <Button Command="{Binding CPlaneTopCommand}" ToolTip="{Binding CPlaneTopToolTip}" Style="{StaticResource GridViewPanelButton}">
+8 -8
View File
@@ -19,42 +19,42 @@ Public Class GridPanelVM
Public ReadOnly Property CPlaneTopToolTip As String Public ReadOnly Property CPlaneTopToolTip As String
Get Get
Return EgtMsg(5269) ' Griglia da Sopra Return EgtMsg(MSG_GRIDVIEWPANEL + 19)
End Get End Get
End Property End Property
Public ReadOnly Property CPlaneFrontToolTip As String Public ReadOnly Property CPlaneFrontToolTip As String
Get Get
Return EgtMsg(5270) ' Griglia di Fronte Return EgtMsg(MSG_GRIDVIEWPANEL + 20)
End Get End Get
End Property End Property
Public ReadOnly Property CPlaneRightToolTip As String Public ReadOnly Property CPlaneRightToolTip As String
Get Get
Return EgtMsg(5271) ' Griglia da Destra Return EgtMsg(MSG_GRIDVIEWPANEL + 21)
End Get End Get
End Property End Property
Public ReadOnly Property CPlaneBackToolTip As String Public ReadOnly Property CPlaneBackToolTip As String
Get Get
Return EgtMsg(5272) ' Griglia da Dietro Return EgtMsg(MSG_GRIDVIEWPANEL + 22)
End Get End Get
End Property End Property
Public ReadOnly Property CPlaneLeftToolTip As String Public ReadOnly Property CPlaneLeftToolTip As String
Get Get
Return EgtMsg(5273) ' Griglia da Sinistra Return EgtMsg(MSG_GRIDVIEWPANEL + 23)
End Get End Get
End Property End Property
Public ReadOnly Property CPlaneBottomToolTip As String Public ReadOnly Property CPlaneBottomToolTip As String
Get Get
Return EgtMsg(5274) ' Griglia da Sotto Return EgtMsg(MSG_GRIDVIEWPANEL + 24)
End Get End Get
End Property End Property
Public ReadOnly Property CPlaneElevationToolTip As String Public ReadOnly Property CPlaneElevationToolTip As String
Get Get
Return EgtMsg(5276) ' Elevazione Griglia Return EgtMsg(MSG_GRIDVIEWPANEL + 26)
End Get End Get
End Property End Property
Public ReadOnly Property CPlaneOriginToolTip As String Public ReadOnly Property CPlaneOriginToolTip As String
Get Get
Return EgtMsg(5277) ' Origine Griglia Return EgtMsg(MSG_GRIDVIEWPANEL + 27)
End Get End Get
End Property End Property
+13 -11
View File
@@ -1,15 +1,17 @@
<EgtFloating:EgtFloatingPanel x:Class="InstrumentPanelV" <EgtFloating:EgtFloatingPanel x:Class="InstrumentPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5" xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"
IsTopDockable="True" IsBottomDockable="True" IsLeftDockable="False" IsRightDockable="False" IsTopDockable="True" IsBottomDockable="True" IsLeftDockable="False" IsRightDockable="False"
TitleBarOrientation="Horizontal"> TitleBarOrientation="Horizontal">
<ToggleButton ToolTip="{Binding AnalyzeToolTip}" Style="{StaticResource GridViewPanelToggleButton}" IsChecked="{Binding AnalyzeIsChecked}" IsEnabled="{Binding AnalyzeIsEnabled}"> <!--<StackPanel Background="Transparent" Orientation="Horizontal">-->
<Image Source="/Resources/GridViewPanel/Analyze.png" Stretch="Uniform"/> <ToggleButton ToolTip="{Binding AnalyzeToolTip}" Style="{StaticResource GridViewPanelToggleButton}" IsChecked="{Binding AnalyzeIsChecked}" IsEnabled="{Binding AnalyzeIsEnabled}">
</ToggleButton> <Image Source="/Resources/GridViewPanel/Analyze.png" Stretch="Uniform"/>
<ToggleButton ToolTip="{Binding GetDistToolTip}" Style="{StaticResource GridViewPanelToggleButton}" IsChecked="{Binding GetDistIsChecked}"> </ToggleButton>
<Image Source="/Resources/GridViewPanel/GetDist.png" Stretch="Uniform"/> <ToggleButton ToolTip="{Binding GetDistToolTip}" Style="{StaticResource GridViewPanelToggleButton}" IsChecked="{Binding GetDistIsChecked}">
</ToggleButton> <Image Source="/Resources/GridViewPanel/GetDist.png" Stretch="Uniform"/>
</ToggleButton>
<!--</StackPanel>-->
</EgtFloating:EgtFloatingPanel> </EgtFloating:EgtFloatingPanel>
+5 -5
View File
@@ -9,12 +9,12 @@ Public Class InstrumentPanelVM
Public ReadOnly Property AnalyzeToolTip As String Public ReadOnly Property AnalyzeToolTip As String
Get Get
Return EgtMsg(5267) ' Analizza Return EgtMsg(MSG_GRIDVIEWPANEL + 17)
End Get End Get
End Property End Property
Public ReadOnly Property GetDistToolTip As String Public ReadOnly Property GetDistToolTip As String
Get Get
Return EgtMsg(5268) ' Distanza Return EgtMsg(MSG_GRIDVIEWPANEL + 18)
End Get End Get
End Property End Property
@@ -37,7 +37,7 @@ Public Class InstrumentPanelVM
Analyze.EraseAnalyzeGroup() Analyze.EraseAnalyzeGroup()
EgtDraw() EgtDraw()
End If End If
OnPropertyChanged(NameOf(AnalyzeIsChecked)) OnPropertyChanged("AnalyzeIsChecked")
End If End If
End Set End Set
End Property End Property
@@ -50,7 +50,7 @@ Public Class InstrumentPanelVM
Set(value As Boolean) Set(value As Boolean)
If value <> m_AnalyzeIsEnabled Then If value <> m_AnalyzeIsEnabled Then
m_AnalyzeIsEnabled = value m_AnalyzeIsEnabled = value
OnPropertyChanged(NameOf(AnalyzeIsEnabled)) OnPropertyChanged("AnalyzeIsEnabled")
End If End If
End Set End Set
End Property End Property
@@ -70,7 +70,7 @@ Public Class InstrumentPanelVM
Map.refProjectVM.GetScene.ResetStatusGetDistance() Map.refProjectVM.GetScene.ResetStatusGetDistance()
Map.refStatusBarVM.NotifyStatusOutput(String.Empty) Map.refStatusBarVM.NotifyStatusOutput(String.Empty)
End If End If
OnPropertyChanged(NameOf(GetDistIsChecked)) OnPropertyChanged("GetDistIsChecked")
End If End If
End Set End Set
End Property End Property
+1 -2
View File
@@ -3,7 +3,6 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:EgtCAM5" xmlns:local="clr-namespace:EgtCAM5"
DockPanel.Dock="Left"> DockPanel.Dock="Left">
<local:DrawPanelV DataContext="{StaticResource DrawPanelViewModel}"/> <local:DrawPanelV DataContext="{StaticResource DrawPanelViewModel}"/>
</Grid> </Grid>
+16 -20
View File
@@ -1,4 +1,8 @@
Imports System.IO Imports System.Collections.ObjectModel
Imports System.IO
Imports EgtCAM5.MyMachinePanelVM
Imports System.Security.Cryptography
Imports System.Windows.Forms.AxHost
Imports EgtUILib Imports EgtUILib
Imports EgtWPFLib5 Imports EgtWPFLib5
@@ -68,8 +72,7 @@ Public Class MyMachGroupPanelVM
' se la lista gruppi è vuota creo un nuovo gruppo ' se la lista gruppi è vuota creo un nuovo gruppo
If MachGroupList.Count = 0 Then If MachGroupList.Count = 0 Then
' Vuoi creare un nuovo Gruppo di Lavoro con i pezzi selezionati ? - LAVORA ' Vuoi creare un nuovo Gruppo di Lavoro con i pezzi selezionati ? - LAVORA
'If MessageBox.Show(EgtMsg(5552), EgtMsg(5002), MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.Yes Then If MessageBox.Show(EgtMsg(5552), EgtMsg(5002), MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.Yes Then
If EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(5552), EgtMsg(5002), MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.Yes Then ' Vuoi creare un nuovo Gruppo di Lavoro<br/>con i pezzi selezionati ? Sicuro di voler cancellare il Gruppo di Lavorazione?
Return If(AddNewMachGroup(nGroupId, vPart), 0, 1) Return If(AddNewMachGroup(nGroupId, vPart), 0, 1)
Else Else
Return -2 Return -2
@@ -93,10 +96,9 @@ Public Class MyMachGroupPanelVM
' altrimenti creo il primo gruppo ' altrimenti creo il primo gruppo
Else Else
' Vuoi creare un nuovo Gruppo di Lavoro con i pezzi selezionati ? - LAVORA ' Vuoi creare un nuovo Gruppo di Lavoro con i pezzi selezionati ? - LAVORA
'If MessageBox.Show(EgtMsg(5552), EgtMsg(5002), MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.Yes Then If MessageBox.Show(EgtMsg(5552), EgtMsg(5002), MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.Yes Then
If EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(5552), EgtMsg(5002), MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.Yes Then ' Vuoi creare un nuovo Gruppo di Lavoro<br/>con i pezzi selezionati ? Sicuro di voler cancellare il Gruppo di Lavorazione?
Return If(AddNewMachGroup(nGroupId, vPart), 0, 1) Return If(AddNewMachGroup(nGroupId, vPart), 0, 1)
Else Else
Return -2 Return -2
End If End If
End If End If
@@ -104,10 +106,7 @@ Public Class MyMachGroupPanelVM
Else Else
' se ci sono gruppi di lavorazione ' se ci sono gruppi di lavorazione
If bMachGroup Then If bMachGroup Then
nGroupId = EgtGetCurrMachGroup() nGroupId = EgtGetFirstMachGroup()
If nGroupId = GDB_ID.NULL Then
nGroupId = EgtGetFirstMachGroup()
End If
Return If(EgtSetCurrMachGroup(nGroupId), 0, 1) Return If(EgtSetCurrMachGroup(nGroupId), 0, 1)
' se altrimenti ammessi gruppi di lavoro vuoti ' se altrimenti ammessi gruppi di lavoro vuoti
ElseIf bAllowEmpty Then ElseIf bAllowEmpty Then
@@ -127,8 +126,7 @@ Public Class MyMachGroupPanelVM
EgtLuaSetGlobStringVar("DISP.PARTS", sParts) EgtLuaSetGlobStringVar("DISP.PARTS", sParts)
If Not EgtLuaExecFile(sScriptPath) Then If Not EgtLuaExecFile(sScriptPath) Then
EgtOutLog("Error executing disposition init script " & sScriptPath) EgtOutLog("Error executing disposition init script " & sScriptPath)
'MessageBox.Show(EgtMsg(MSG_DISPOSITIONERRORS + 2) & " " & sScriptPath, EgtMsg(MSG_DISPOSITIONERRORS + 1), MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(EgtMsg(MSG_DISPOSITIONERRORS + 2) & " " & sScriptPath, EgtMsg(MSG_DISPOSITIONERRORS + 1), MessageBoxButton.OK, MessageBoxImage.Error)
EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(5462) & " " & sScriptPath, EgtMsg(5461), MessageBoxButton.OK, MessageBoxImage.Error) ' Errore nella esecuzione dello script automatico di disposizione ERRORE DI ESECUZIONE SCRIPT
Return False Return False
End If End If
Dim nErr As Integer = 999 Dim nErr As Integer = 999
@@ -305,8 +303,7 @@ Public Class MyMachGroupPanelVM
If Not String.IsNullOrEmpty(sDefaultSetUpName) Then If Not String.IsNullOrEmpty(sDefaultSetUpName) Then
If Not EgtImportSetup(String.Empty) Then If Not EgtImportSetup(String.Empty) Then
EgtOutLog("Error loading default setup " & sDefaultSetUpName) EgtOutLog("Error loading default setup " & sDefaultSetUpName)
'MessageBox.Show(EgtMsg(MSG_SETUPERRORS + 9) & " " & sDefaultSetUpName, EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(EgtMsg(MSG_SETUPERRORS + 9) & " " & sDefaultSetUpName, EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error)
EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(6479) & " " & sDefaultSetUpName, EgtMsg(15001), MessageBoxButton.OK, MessageBoxImage.Error) ' Errore nel caricamento del setup Errore
End If End If
End If End If
End Sub End Sub
@@ -329,7 +326,7 @@ Public Class MyMachGroupPanelVM
Case Else Case Else
' Se il materiale specificato nel file INI della macchina non corrisponde ai 4 sopracitati viene emesso un messaggio di errore ' Se il materiale specificato nel file INI della macchina non corrisponde ai 4 sopracitati viene emesso un messaggio di errore
EgtWPFLib5.MachiningTreeViewItem.m_MatType = Nothing EgtWPFLib5.MachiningTreeViewItem.m_MatType = Nothing
MsgBox(EgtMsg(31409), MsgBoxStyle.Exclamation, EgtMsg(31551)) ' Errore MsgBox(EgtMsg(31409), MsgBoxStyle.Exclamation, EgtMsg(31551))
End Select End Select
End Sub End Sub
@@ -373,8 +370,7 @@ Public Class MyMachGroupPanelVM
Dim nSelectedMachGroupIndex As Integer = MachGroupList.IndexOf(SelectedMachGroup) Dim nSelectedMachGroupIndex As Integer = MachGroupList.IndexOf(SelectedMachGroup)
If nSelectedMachGroupIndex = 0 And MachGroupList.Count = 1 Then If nSelectedMachGroupIndex = 0 And MachGroupList.Count = 1 Then
' chiedo conferma prima di cancellare il gruppo di lavorazione ' chiedo conferma prima di cancellare il gruppo di lavorazione
'Select Case MessageBox.Show(EgtMsg(MSG_MACHGROUP + 2), "", MessageBoxButton.YesNo, MessageBoxImage.Question) Select Case MessageBox.Show(EgtMsg(MSG_MACHGROUP + 2), "", MessageBoxButton.YesNo, MessageBoxImage.Question)
Select Case EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(5502), "", MessageBoxButton.YesNo, MessageBoxImage.Question) ' Sicuro di voler cancellare il Gruppo di Lavorazione?
Case MessageBoxResult.Yes Case MessageBoxResult.Yes
' cancello il gruppo corrente ' cancello il gruppo corrente
EgtRemoveMachGroup(EgtGetMachGroupId(MachGroupList(nSelectedMachGroupIndex).Name)) EgtRemoveMachGroup(EgtGetMachGroupId(MachGroupList(nSelectedMachGroupIndex).Name))
@@ -387,8 +383,7 @@ Public Class MyMachGroupPanelVM
End Select End Select
Else Else
' chiedo conferma prima di cancellare il gruppo di lavorazione ' chiedo conferma prima di cancellare il gruppo di lavorazione
'Select Case MessageBox.Show(EgtMsg(MSG_MACHGROUP + 2), "", MessageBoxButton.YesNo, MessageBoxImage.Question) Select Case MessageBox.Show(EgtMsg(MSG_MACHGROUP + 2), "", MessageBoxButton.YesNo, MessageBoxImage.Question)
Select Case EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(5502), "", MessageBoxButton.YesNo, MessageBoxImage.Question) ' Sicuro di voler cancellare il Gruppo di Lavorazione?
Case MessageBoxResult.Yes Case MessageBoxResult.Yes
Dim nNewInd As Integer = -1 Dim nNewInd As Integer = -1
If nSelectedMachGroupIndex = 0 And MachGroupList.Count > 1 Then If nSelectedMachGroupIndex = 0 And MachGroupList.Count > 1 Then
@@ -423,7 +418,8 @@ Public Class MyMachGroupPanelVM
Map.refOperationsListExpanderVM.LoadOperationList(GDB_ID.NULL) Map.refOperationsListExpanderVM.LoadOperationList(GDB_ID.NULL)
Map.refMachinePanelVM.UpdateCurrentMachine() Map.refMachinePanelVM.UpdateCurrentMachine()
Map.refMachiningTreeExpanderVM.UpdateOperationMachiningList() Map.refMachiningTreeExpanderVM.UpdateOperationMachiningList()
Map.refEstimationsExpanderVM.Estimation_IsEnabled = (EgtUILib.GetPrivateProfileInt(S_ESTIMATIONS, K_EST_ENABLE, 0, IniFile.m_sCurrMachIniFilePath) <> 0) Map.refEstimationsExpanderVM.Estimation_IsEnabled =
(EgtUILib.GetPrivateProfileInt(S_ESTIMATIONS, K_EST_ENABLE, 0, IniFile.m_sCurrMachIniFilePath) <> 0)
' Setto il Materiale in base alla Macchina associata al MachGroup corrente ' Setto il Materiale in base alla Macchina associata al MachGroup corrente
LoadMaterialType() LoadMaterialType()
' Zoom all ' Zoom all
+13 -13
View File
@@ -1,21 +1,21 @@
<EgtWPFLib5:EgtCustomWindow x:Class="MachOptionV" <EgtWPFLib5:EgtCustomWindow x:Class="MachOptionV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:EgtCAM5" xmlns:local="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5" xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Title="{Binding Title}" Icon="/Resources/EgtCAM5.ico" Title="{Binding Title}" Icon="/Resources/EgtCAM5.ico"
TitleBarBrush="{StaticResource EgaltechBlue1}" TitleBarBrush="{StaticResource EgaltechBlue1}"
BorderBrush="{StaticResource EgaltechBlue1}" BorderBrush="{StaticResource EgaltechBlue1}"
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="False" WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="False"
IsMinimizable="False" WindowStartupLocation="CenterOwner" ShowInTaskbar="False" IsMinimizable="False" WindowStartupLocation="CenterOwner" ShowInTaskbar="False"
CloseCommand="{Binding CloseMachOptionsCommand, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" SizeToContent="WidthAndHeight"> CloseCommand="{Binding CloseMachOptionsCommand, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" SizeToContent="WidthAndHeight">
<EgtWPFLib5:EgtCustomWindow.Resources> <EgtWPFLib5:EgtCustomWindow.Resources>
<local:SplitArcTypeConverter x:Key="SplitArcTypeConverter"/> <local:SplitArcTypeConverter x:Key="SplitArcTypeConverter"/>
</EgtWPFLib5:EgtCustomWindow.Resources> </EgtWPFLib5:EgtCustomWindow.Resources>
<Grid Margin="10"> <Grid Margin="10">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
@@ -65,9 +65,9 @@
<UniformGrid Grid.Row="5" Columns="2"> <UniformGrid Grid.Row="5" Columns="2">
<TextBlock Text="{Binding DefaultSetUpMsg}" VerticalAlignment="Center"/> <TextBlock Text="{Binding DefaultSetUpMsg}" VerticalAlignment="Center"/>
<ComboBox ItemsSource="{Binding ArchivedSetUpList}" Height="25" Margin="10,0,0,0" <ComboBox ItemsSource="{Binding ArchivedSetUpList}" Height="25" Margin="10,0,0,0"
SelectedItem="{Binding SelectedDefaultSetUp}" IsEnabled="{Binding IsActiveDefaultSetUp}"/> SelectedItem="{Binding SelectedDefaultSetUp}" IsEnabled="{Binding IsActiveDefaultSetUp}"/>
</UniformGrid> </UniformGrid>
</Grid> </Grid>
</EgtWPFLib5:EgtCustomWindow> </EgtWPFLib5:EgtCustomWindow>
+10 -10
View File
@@ -106,36 +106,36 @@ Public Class MachOptionVM
Public ReadOnly Property SafeZMsg As String Public ReadOnly Property SafeZMsg As String
Get Get
Return EgtMsg(6401) ' Z di sicurezza Return EgtMsg(MSG_MACHININGOPTIONPAGE + 1)
End Get End Get
End Property End Property
Public ReadOnly Property SafeAggrBottZMsg As String Public ReadOnly Property SafeAggrBottZMsg As String
Get Get
Return EgtMsg(6408) ' Sicurezza rinvio da sotto Return EgtMsg(MSG_MACHININGOPTIONPAGE + 8)
End Get End Get
End Property End Property
Public ReadOnly Property HolesToleranceMsg As String Public ReadOnly Property HolesToleranceMsg As String
Get Get
Return EgtMsg(6409) ' Tolleranza fori Return EgtMsg(MSG_MACHININGOPTIONPAGE + 9)
End Get End Get
End Property End Property
Public ReadOnly Property ApproxLinTolMsg As String Public ReadOnly Property ApproxLinTolMsg As String
Get Get
Return EgtMsg(6410) ' Tolleranza di approssimazione Return EgtMsg(6410) ' Tolleranza di approssimazione
End Get End Get
End Property End Property
Public ReadOnly Property SplitArcsMsg As String Public ReadOnly Property SplitArcsMsg As String
Get Get
Return EgtMsg(6402) ' Spezzatura archi Return EgtMsg(MSG_MACHININGOPTIONPAGE + 2)
End Get End Get
End Property End Property
Public ReadOnly Property DefaultSetUpMsg As String Public ReadOnly Property DefaultSetUpMsg As String
Get Get
Return EgtMsg(6407) ' Attrezzaggio predefinito Return EgtMsg(MSG_MACHININGOPTIONPAGE + 7)
End Get End Get
End Property End Property
@@ -226,13 +226,13 @@ Public Class SplitArcTypeConverter
Public Function Convert(value As Object, targetType As Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements IValueConverter.Convert Public Function Convert(value As Object, targetType As Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements IValueConverter.Convert
Select Case CInt(value) Select Case CInt(value)
Case MCH_SA.NEVER Case MCH_SA.NEVER
Return EgtMsg(6403) ' Mai Return EgtMsg(MSG_MACHININGOPTIONPAGE + 3)
Case MCH_SA.GEN_PLANE Case MCH_SA.GEN_PLANE
Return EgtMsg(6404) ' Piano generico Return EgtMsg(MSG_MACHININGOPTIONPAGE + 4)
Case MCH_SA.NO_XY_PLANE Case MCH_SA.NO_XY_PLANE
Return EgtMsg(6405) ' Piano diverso da XY Return EgtMsg(MSG_MACHININGOPTIONPAGE + 5)
Case Else Case Else
Return EgtMsg(6406) ' Sempre Return EgtMsg(MSG_MACHININGOPTIONPAGE + 6)
End Select End Select
End Function End Function
+11 -11
View File
@@ -7,14 +7,14 @@
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<!--Combobox per selezionare la macchina corrente--> <!--Combobox per selezionare la macchina corrente-->
<ComboBox ItemsSource="{Binding Path=MachinesList}" DisplayMemberPath="Name" <ComboBox ItemsSource="{Binding Path=MachinesList}" DisplayMemberPath="Name"
SelectedItem="{Binding Path=SelectedMachine}" SelectedValuePath="Name" SelectedItem="{Binding Path=SelectedMachine}" SelectedValuePath="Name"
Height="22" Width="150" IsEnabled="{Binding MachineListIsEnabled}" Margin="2,0"/> Height="22" Width="150" IsEnabled="{Binding MachineListIsEnabled}" Margin="2,0"/>
<Button Content="{Binding ToolDBMsg}" <Button Content="{Binding ToolDBMsg}"
Command="{Binding ToolDbCommand}" Command="{Binding ToolDbCommand}"
IsEnabled="{Binding ToolDb_IsEnabled}" IsEnabled="{Binding ToolDb_IsEnabled}"
Width="55" Width="55"
ToolTip="{Binding ToolDBToolTip}" ToolTip="{Binding ToolDBToolTip}"
Style="{StaticResource GridViewPanelButton}"/> Style="{StaticResource GridViewPanelButton}"/>
<Button Content="{Binding MachiningDbMsg}" <Button Content="{Binding MachiningDbMsg}"
Command="{Binding MachDbCommand}" Command="{Binding MachDbCommand}"
IsEnabled="{Binding MachDb_IsEnabled}" IsEnabled="{Binding MachDb_IsEnabled}"
@@ -28,10 +28,10 @@
ToolTip="{Binding SetUpDbToolTip}" ToolTip="{Binding SetUpDbToolTip}"
Style="{StaticResource GridViewPanelButton}"/> Style="{StaticResource GridViewPanelButton}"/>
<Button Command="{Binding MachOptionsCommand}" <Button Command="{Binding MachOptionsCommand}"
ToolTip="{Binding MachOptionsToolTip}"> ToolTip="{Binding MachOptionsToolTip}">
<Image Source="/Resources/MachinePanel/MachineOptions.png" <Image Source="/Resources/MachinePanel/MachineOptions.png"
Height="22" /> Height="22" />
</Button> </Button>
</StackPanel> </StackPanel>
</EgtFloating:EgtFloatingPanel> </EgtFloating:EgtFloatingPanel>
+41 -29
View File
@@ -64,7 +64,8 @@ Public Class MyMachinePanelVM
IniFile.m_sCurrMachToolsDirPath = m_SelectedMachine.MachineDirPath & "\Tools" IniFile.m_sCurrMachToolsDirPath = m_SelectedMachine.MachineDirPath & "\Tools"
IniFile.m_sCurrMachSetUpDirPath = m_SelectedMachine.MachineDirPath & "\SetUp" IniFile.m_sCurrMachSetUpDirPath = m_SelectedMachine.MachineDirPath & "\SetUp"
IniFile.m_sCurrMachScriptsDirPath = m_SelectedMachine.MachineDirPath & "\Scripts" IniFile.m_sCurrMachScriptsDirPath = m_SelectedMachine.MachineDirPath & "\Scripts"
NotifyPropertyChanged(NameOf(SelectedMachine)) UpdateToolAndMachDbParamVisibility()
NotifyPropertyChanged("SelectedMachine")
End If End If
End If End If
End Set End Set
@@ -77,7 +78,7 @@ Public Class MyMachinePanelVM
End Get End Get
Set(value As Boolean) Set(value As Boolean)
m_MachineListIsEnabled = value m_MachineListIsEnabled = value
NotifyPropertyChanged(NameOf(MachineListIsEnabled)) NotifyPropertyChanged("MachineListIsEnabled")
End Set End Set
End Property End Property
@@ -96,17 +97,17 @@ Public Class MyMachinePanelVM
Public ReadOnly Property ToolDBMsg As String Public ReadOnly Property ToolDBMsg As String
Get Get
Return EgtMsg(5006) ' Db Ut. Return EgtMsg(MSG_MAINWINDOW + 6)
End Get End Get
End Property End Property
Public ReadOnly Property MachiningDbMsg As String Public ReadOnly Property MachiningDbMsg As String
Get Get
Return EgtMsg(5007) ' Db Lav. Return EgtMsg(MSG_MAINWINDOW + 7)
End Get End Get
End Property End Property
Public ReadOnly Property SetUpDbMsg As String Public ReadOnly Property SetUpDbMsg As String
Get Get
Return EgtMsg(5009) ' Db Att. Return EgtMsg(MSG_MAINWINDOW + 9)
End Get End Get
End Property End Property
@@ -116,22 +117,22 @@ Public Class MyMachinePanelVM
Public ReadOnly Property ToolDBToolTip As String Public ReadOnly Property ToolDBToolTip As String
Get Get
Return EgtMsg(5003) ' Db Utensili Return EgtMsg(MSG_MAINWINDOW + 3)
End Get End Get
End Property End Property
Public ReadOnly Property MachiningDbToolTip As String Public ReadOnly Property MachiningDbToolTip As String
Get Get
Return EgtMsg(5004) ' Db Lavorazioni Return EgtMsg(MSG_MAINWINDOW + 4)
End Get End Get
End Property End Property
Public ReadOnly Property SetUpDbToolTip As String Public ReadOnly Property SetUpDbToolTip As String
Get Get
Return EgtMsg(5010) ' Db Attrezzaggio Return EgtMsg(MSG_MAINWINDOW + 10)
End Get End Get
End Property End Property
Public ReadOnly Property MachOptionsToolTip As String Public ReadOnly Property MachOptionsToolTip As String
Get Get
Return EgtMsg(5008) ' Opzioni Macchina Return EgtMsg(MSG_MAINWINDOW + 8)
End Get End Get
End Property End Property
@@ -208,8 +209,7 @@ Public Class MyMachinePanelVM
' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa) ' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa)
If Not EgtTdbReload() Then If Not EgtTdbReload() Then
EgtOutLog("Impossible reloading tool Db") EgtOutLog("Impossible reloading tool Db")
'MessageBox.Show(EgtMsg(MSG_TOOLSERRORS + 30), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(EgtMsg(MSG_TOOLSERRORS + 30), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error)
EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(6130), EgtMsg(15001), MessageBoxButton.OK, MessageBoxImage.Error) ' Impossibile ricaricare il database utensili. Se la cartella delle macchine è su un server, verificare che la connessione sia attiva. Errore
Return Return
End If End If
@@ -232,10 +232,15 @@ Public Class MyMachinePanelVM
' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa) ' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa)
If Not EgtTdbReload() Then If Not EgtTdbReload() Then
EgtOutLog("Impossible reloading tool Db") EgtOutLog("Impossible reloading tool Db")
'MessageBox.Show(EgtMsg(MSG_TOOLSERRORS + 30), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(EgtMsg(MSG_TOOLSERRORS + 30), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error)
EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(6130), EgtMsg(15001), MessageBoxButton.OK, MessageBoxImage.Error) ' Impossibile ricaricare il database utensili. Se la cartella delle macchine è su un server, verificare che la connessione sia attiva. Errore
Return Return
End If End If
'Dim ToolDbWindow As New ToolsDbV
'ToolDbWindow.Height = 640
'ToolDbWindow.Width = 1024
'ToolDbWindow.DataContext = New ToolsDbVM
'ToolDbWindow.Owner = Application.Current.MainWindow
'ToolDbWindow.ShowDialog()
Dim sMachineDir As String = IniFile.m_sMachinesRoot & "\" & IniFile.m_sMachineName Dim sMachineDir As String = IniFile.m_sMachinesRoot & "\" & IniFile.m_sMachineName
Dim ToolDbWindowVM As New MyToolDbWindowVM(sMachineDir, IniFile.m_sCurrMachIniFilePath, IniFile.m_ProjectSceneContext, "Wood", IniFile.m_nUserLevel > 9) Dim ToolDbWindowVM As New MyToolDbWindowVM(sMachineDir, IniFile.m_sCurrMachIniFilePath, IniFile.m_ProjectSceneContext, "Wood", IniFile.m_nUserLevel > 9)
@@ -258,15 +263,14 @@ Public Class MyMachinePanelVM
' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa) ' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa)
If Not EgtMdbReload() Then If Not EgtMdbReload() Then
EgtOutLog("Impossible reloading machining Db") EgtOutLog("Impossible reloading machining Db")
'MessageBox.Show(EgtMsg(MSG_MACHININGSERRORS + 7), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(EgtMsg(MSG_MACHININGSERRORS + 7), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error)
EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(6377), EgtMsg(15001), MessageBoxButton.OK, MessageBoxImage.Error) ' Impossibile ricaricare database lavorazioni. Se la cartella delle macchine è su un server, verificare che la connessione sia attiva. Errore
Return Return
End If End If
Dim MachDbWindowVM As New EgtWPFLib5.MachiningDbWindowVM(IniFile.m_sCurrMachIniFilePath, IniFile.m_ProjectSceneContext, "Wood", IniFile.m_nUserLevel > 9, True) Dim MachDbWindowVM As New EgtWPFLib5.MachiningDbWindowVM(IniFile.m_sCurrMachIniFilePath, IniFile.m_ProjectSceneContext, "Wood", IniFile.m_nUserLevel > 9, True)
Dim MachDbWindowV As New EgtWPFLib5.MachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM) Dim MachDbWindowV As New EgtWPFLib5.MachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM)
If EgtWPFLib5.MachiningTreeViewItem.m_MatType <> 0 Then If EgtWPFLib5.MachiningTreeViewItem.m_MatType <> 0 Then
MachDbWindowV.Height = 800 '674 MachDbWindowV.Height = 800 '674
MachDbWindowV.Width = 1150 '1024 MachDbWindowV.Width = 1024
MachDbWindowV.Owner = Application.Current.MainWindow MachDbWindowV.Owner = Application.Current.MainWindow
MachDbWindowV.ShowDialog() MachDbWindowV.ShowDialog()
End If End If
@@ -280,15 +284,14 @@ Public Class MyMachinePanelVM
' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa) ' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa)
If Not EgtMdbReload() Then If Not EgtMdbReload() Then
EgtOutLog("Impossible reloading machining Db") EgtOutLog("Impossible reloading machining Db")
'MessageBox.Show(EgtMsg(MSG_MACHININGSERRORS + 7), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(EgtMsg(MSG_MACHININGSERRORS + 7), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error)
EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(6377), EgtMsg(15001), MessageBoxButton.OK, MessageBoxImage.Error) ' Impossibile ricaricare database lavorazioni. Se la cartella delle macchine è su un server, verificare che la connessione sia attiva. Errore
Return Return
End If End If
Dim MachDbWindowVM As New EgtWPFLib5.MachiningDbWindowVM(IniFile.m_sCurrMachIniFilePath, IniFile.m_ProjectSceneContext, "Wood", IniFile.m_nUserLevel > 9, True) Dim MachDbWindowVM As New EgtWPFLib5.MachiningDbWindowVM(IniFile.m_sCurrMachIniFilePath, IniFile.m_ProjectSceneContext, "Wood", IniFile.m_nUserLevel > 9, True)
Dim MachDbWindowV As New EgtWPFLib5.MachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM) Dim MachDbWindowV As New EgtWPFLib5.MachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM)
If EgtWPFLib5.MachiningTreeViewItem.m_MatType <> 0 Then If EgtWPFLib5.MachiningTreeViewItem.m_MatType <> 0 Then
MachDbWindowV.Height = 800 '674 MachDbWindowV.Height = 800 '674
MachDbWindowV.Width = 1150 '1024 MachDbWindowV.Width = 1024
MachDbWindowV.Owner = Application.Current.MainWindow MachDbWindowV.Owner = Application.Current.MainWindow
MachDbWindowV.ShowDialog() MachDbWindowV.ShowDialog()
If Not IsNothing(Map.refMachiningTreeExpanderVM) Then Map.refMachiningTreeExpanderVM.UpdateOperationMachiningList() If Not IsNothing(Map.refMachiningTreeExpanderVM) Then Map.refMachiningTreeExpanderVM.UpdateOperationMachiningList()
@@ -306,8 +309,7 @@ Public Class MyMachinePanelVM
' verifico che il file di configurazione attrezzaggio (lua) della macchina esista ' verifico che il file di configurazione attrezzaggio (lua) della macchina esista
If Not File.Exists(IniFile.m_sCurrMachScriptsDirPath & "\" & SETUP_LUA) Then If Not File.Exists(IniFile.m_sCurrMachScriptsDirPath & "\" & SETUP_LUA) Then
EgtOutLog("SetUp error: SetUp configuration file doesn't exist ") EgtOutLog("SetUp error: SetUp configuration file doesn't exist ")
'MessageBox.Show(EgtMsg(MSG_SETUPERRORS + 7), EgtMsg(MSG_SETUPERRORS + 1), MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(EgtMsg(MSG_SETUPERRORS + 7), EgtMsg(MSG_SETUPERRORS + 1), MessageBoxButton.OK, MessageBoxImage.Error)
EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(6477), EgtMsg(6471), MessageBoxButton.OK, MessageBoxImage.Error) ' Il file di configurazione non esiste! Errore
Return Return
End If End If
' carico Lua che contiene le funzioni per ottenere le posizioni valide dell'utensile selezionato, ' carico Lua che contiene le funzioni per ottenere le posizioni valide dell'utensile selezionato,
@@ -326,8 +328,7 @@ Public Class MyMachinePanelVM
EgtLuaGetGlobIntVar("STU.ERR", nErr) EgtLuaGetGlobIntVar("STU.ERR", nErr)
If nErr = 0 Then If nErr = 0 Then
If EgtGetHeadExitCount(sHead) = 0 Then If EgtGetHeadExitCount(sHead) = 0 Then
'MessageBox.Show(EgtMsg(MSG_SETUPERRORS + 8), EgtMsg(MSG_SETUPERRORS + 1), MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(EgtMsg(MSG_SETUPERRORS + 8), EgtMsg(MSG_SETUPERRORS + 1), MessageBoxButton.OK, MessageBoxImage.Error)
EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(6478), EgtMsg(6471), MessageBoxButton.OK, MessageBoxImage.Error) ' L'attrezzaggio usa una testa che non esiste sulla macchina! Errore
Return Return
End If End If
End If End If
@@ -357,10 +358,11 @@ Public Class MyMachinePanelVM
''' Execute the Exec. This method is invoked by the ExecCommand. ''' Execute the Exec. This method is invoked by the ExecCommand.
''' </summary> ''' </summary>
Public Overrides Sub MachOptions(ByVal param As Object) Public Overrides Sub MachOptions(ByVal param As Object)
Dim MachOptionWindow As New MachOptionV With { Dim MachOptionWindow As New MachOptionV
.DataContext = New MachOptionVM, 'MachOptionWindow.Height = 614
.Owner = Application.Current.MainWindow 'MachOptionWindow.Width = 256
} MachOptionWindow.DataContext = New MachOptionVM
MachOptionWindow.Owner = Application.Current.MainWindow
MachOptionWindow.ShowDialog() MachOptionWindow.ShowDialog()
End Sub End Sub
@@ -378,7 +380,7 @@ Public Class MyMachinePanelVM
If String.IsNullOrWhiteSpace(IniFile.m_sMachinesRoot) OrElse If String.IsNullOrWhiteSpace(IniFile.m_sMachinesRoot) OrElse
Not Directory.Exists(IniFile.m_sMachinesRoot) OrElse Directory.GetDirectories(IniFile.m_sMachinesRoot).Count = 0 Then Not Directory.Exists(IniFile.m_sMachinesRoot) OrElse Directory.GetDirectories(IniFile.m_sMachinesRoot).Count = 0 Then
IniFile.m_ProjectMode = ProjectModeOpt.ONLYDRAW IniFile.m_ProjectMode = ProjectModeOpt.ONLYDRAW
EgtOutLog(EgtMsg(6801)) ' Direttorio Machines non trovato. EgtCAM5 funzionerà in modo solo CAD. EgtOutLog(EgtMsg(MSG_STATUSBAR + 1))
Return Return
End If End If
' Cerco le macchine ' Cerco le macchine
@@ -388,7 +390,7 @@ Public Class MyMachinePanelVM
Next Next
If m_MachinesList.Count = 0 Then If m_MachinesList.Count = 0 Then
IniFile.m_ProjectMode = ProjectModeOpt.ONLYDRAW IniFile.m_ProjectMode = ProjectModeOpt.ONLYDRAW
EgtOutLog(EgtMsg(6801)) ' Direttorio Machines non trovato. EgtCAM5 funzionerà in modo solo CAD. EgtOutLog(EgtMsg(MSG_STATUSBAR + 1))
Return Return
End If End If
End Sub End Sub
@@ -446,4 +448,14 @@ Public Class MyMachinePanelVM
End Class End Class
Private Sub UpdateToolAndMachDbParamVisibility()
If EgtUILib.GetPrivateProfileInt(S_MACHININGS, K_SAWINGONARCS, 0, IniFile.m_sCurrMachIniFilePath) <> 0 Then
Sawing(39) = Visibility.Visible ' StepExtArc
Sawing(40) = Visibility.Visible ' StepIntArc
Else
Sawing(39) = Visibility.Collapsed ' StepExtArc
Sawing(40) = Visibility.Collapsed ' StepIntArc
End If
End Sub
End Class End Class
+127 -63
View File
@@ -1,22 +1,85 @@
<EgtWPFLib5:EgtCustomWindow x:Class="MyMachiningDbV" <EgtWPFLib5:EgtCustomWindow x:Class="MyMachiningDbV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5" xmlns:sys="clr-namespace:System;assembly=mscorlib"
Title="{Binding Title}" Icon="/Resources/EgtCAM5.ico" xmlns:interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
TitleBarBrush="{StaticResource EgaltechBlue1}" xmlns:local="clr-namespace:EgtCAM5"
BorderBrush="{StaticResource EgaltechBlue1}" xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="False" Title="{Binding Title}" Icon="/Resources/EgtCAM5.ico"
IsMinimizable="False" WindowStartupLocation="CenterScreen" ShowInTaskbar="False" TitleBarBrush="{StaticResource EgaltechBlue1}"
CloseCommand="{Binding CloseMachiningsDbCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}" BorderBrush="{StaticResource EgaltechBlue1}"
CloseCommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"> WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="False"
IsMinimizable="False" WindowStartupLocation="CenterScreen" ShowInTaskbar="False"
CloseCommand="{Binding CloseMachiningsDbCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}"
CloseCommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}">
<EgtWPFLib5:EgtCustomWindow.InputBindings> <EgtWPFLib5:EgtCustomWindow.InputBindings>
<KeyBinding Key="Escape" Command="{Binding ReloadMachiningCommand}" <KeyBinding Key="Escape" Command="{Binding ReloadMachiningCommand}"
CommandParameter="{Binding Path=SelectedItem,ElementName=MachiningsTreeView}"/> CommandParameter="{Binding Path=SelectedItem,ElementName=MachiningsTreeView}"/>
</EgtWPFLib5:EgtCustomWindow.InputBindings> </EgtWPFLib5:EgtCustomWindow.InputBindings>
<EgtWPFLib5:EgtCustomWindow.Resources> <EgtWPFLib5:EgtCustomWindow.Resources>
<EgtWPFLib5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtWPFLib5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<EgtWPFLib5:ErrorVisibilityConverter x:Key="ErrorVisibilityConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLap">47</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SelectedSolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</EgtWPFLib5:EgtCustomWindow.Resources> </EgtWPFLib5:EgtCustomWindow.Resources>
<Grid> <Grid>
@@ -26,70 +89,71 @@
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Grid> <Grid>
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="1*"/> <RowDefinition Height="1*"/>
<RowDefinition Height="11*"/> <RowDefinition Height="11*"/>
</Grid.RowDefinitions> </Grid.RowDefinitions>
<UniformGrid Grid.Row="0" Columns="3"> <UniformGrid Grid.Row="0" Columns="3">
<Button Content="New" Command="{Binding NewCommand}" <Button Content="New" Command="{Binding NewCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledNewBtn, Mode=OneWay}"/> IsEnabled="{Binding IsEnabledNewBtn, Mode=OneWay}"/>
<Button Content="Save" Command="{Binding SaveCommand}" <Button Content="Save" Command="{Binding SaveCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledSaveBtn, Mode=OneWay}"/> IsEnabled="{Binding IsEnabledSaveBtn, Mode=OneWay}"/>
<Button Content="Remove" Command="{Binding RemoveCommand}" <Button Content="Remove" Command="{Binding RemoveCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledRemoveBtn, Mode=OneWay}"/> IsEnabled="{Binding IsEnabledRemoveBtn, Mode=OneWay}"/>
</UniformGrid> </UniformGrid>
<TreeView Name="MachiningsTreeView" Grid.Row="1" <TreeView Name="MachiningsTreeView" Grid.Row="1"
ItemsSource="{Binding Path=MachiningsList}"> ItemsSource="{Binding Path=MachiningsList}">
<TreeView.ItemContainerStyle> <TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}"> <Style TargetType="{x:Type TreeViewItem}">
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" /> <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" /> <Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
<Setter Property="IsEnabled" Value="{Binding IsEnabled, Mode=TwoWay}" /> <Setter Property="IsEnabled" Value="{Binding IsEnabled, Mode=TwoWay}" />
</Style> </Style>
</TreeView.ItemContainerStyle> </TreeView.ItemContainerStyle>
<TreeView.Resources> <TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type EgtWPFLib5:FamilyMachiningTreeViewItem}" ItemsSource="{Binding Items}"> <HierarchicalDataTemplate DataType="{x:Type EgtWPFLib5:FamilyMachiningTreeViewItem}" ItemsSource="{Binding Items}">
<Grid > <Grid >
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Width="32" Margin="0,8,6,4" /> <Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Width="32" Margin="0,8,6,4" />
<TextBlock Grid.Column="1" Text="{Binding Name}" FontSize="15" Margin="10" /> <TextBlock Grid.Column="1" Text="{Binding Name}" FontSize="15" Margin="10" />
</Grid> </Grid>
</HierarchicalDataTemplate> </HierarchicalDataTemplate>
<DataTemplate DataType="{x:Type EgtWPFLib5:MachiningTreeViewItem}"> <DataTemplate DataType="{x:Type EgtWPFLib5:MachiningTreeViewItem}">
<Grid > <Grid >
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TextBlock Grid.Column="1" Text="{Binding NamePar}" Height="18" FontSize="15" Margin="10"/> <!--<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Margin="0,8,6,4" />-->
<TextBlock Grid.Column="1" Text="{Binding NamePar}" Height="18" FontSize="15" Margin="10"/>
</Grid> </Grid>
</DataTemplate> </DataTemplate>
</TreeView.Resources> </TreeView.Resources>
</TreeView> </TreeView>
</Grid> </Grid>
<ContentControl Content="{Binding ParamPageV}" Grid.Column="1" Grid.ColumnSpan="2"/>
<ContentControl Content="{Binding ParamPageV}" Grid.Column="1" Grid.ColumnSpan="2"/>
</Grid> </Grid>
</EgtWPFLib5:EgtCustomWindow> </EgtWPFLib5:EgtCustomWindow>
+2 -1
View File
@@ -10,7 +10,8 @@
MinHeight="600" MinWidth="800" WindowStyle="None" ResizeMode="NoResize" MinHeight="600" MinWidth="800" WindowStyle="None" ResizeMode="NoResize"
AboutBoxCommand="{Binding AboutBoxCommand}" AboutBoxCommand="{Binding AboutBoxCommand}"
AllowDrop="True" Drop="MainWindow_Drop" AllowDrop="True" Drop="MainWindow_Drop"
CloseCommand="{Binding CloseApplicationCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}"> SnapsToDevicePixels="True"
CloseCommand="{Binding CloseApplicationCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}">
<EgtWPFLib5:EgtCustomWindow.TitlePanel> <EgtWPFLib5:EgtCustomWindow.TitlePanel>
<local:TopCommandBarV DataContext="{StaticResource TopCommandBarViewModel}"/> <local:TopCommandBarV DataContext="{StaticResource TopCommandBarViewModel}"/>
</EgtWPFLib5:EgtCustomWindow.TitlePanel> </EgtWPFLib5:EgtCustomWindow.TitlePanel>
+2 -1
View File
@@ -1,4 +1,5 @@
Imports EgtWPFLib5 Imports System.ComponentModel
Imports EgtWPFLib5
Class MainWindowV Class MainWindowV
Inherits EgtCustomWindow Inherits EgtCustomWindow
+30 -35
View File
@@ -1,4 +1,7 @@
Imports System.Threading Imports System.Collections.ObjectModel
Imports System.Threading
Imports System.Windows.Threading
Imports System.Runtime.InteropServices
Imports System.Math Imports System.Math
Imports EgtUILib Imports EgtUILib
Imports EgtWPFLib5 Imports EgtWPFLib5
@@ -13,6 +16,7 @@ Public Class MainWindowVM
Private m_sDataRoot As String = String.Empty Private m_sDataRoot As String = String.Empty
Private m_sConfigDir As String = String.Empty Private m_sConfigDir As String = String.Empty
Private m_OnTerminateProcessCallback As New OnTerminateProcessCallback(AddressOf OnTerminateProcess) Private m_OnTerminateProcessCallback As New OnTerminateProcessCallback(AddressOf OnTerminateProcess)
Private m_IndexTab As Integer = 0
' EGALTECH ENVIRONMENT FIELDS WITH PROPERTY ' EGALTECH ENVIRONMENT FIELDS WITH PROPERTY
@@ -38,7 +42,7 @@ Public Class MainWindowVM
Set(value As String) Set(value As String)
If value <> m_Title Then If value <> m_Title Then
m_Title = value m_Title = value
OnPropertyChanged(NameOf(Title)) OnPropertyChanged("Title")
End If End If
End Set End Set
End Property End Property
@@ -58,9 +62,8 @@ Public Class MainWindowVM
Public ReadOnly Property TopCommandBar As TopCommandBarV Public ReadOnly Property TopCommandBar As TopCommandBarV
Get Get
If IsNothing(m_TopCommandBar) Then If IsNothing(m_TopCommandBar) Then
m_TopCommandBar = New TopCommandBarV With { m_TopCommandBar = New TopCommandBarV
.DataContext = New TopCommandBarVM m_TopCommandBar.DataContext = New TopCommandBarVM
}
End If End If
Return m_TopCommandBar Return m_TopCommandBar
End Get End Get
@@ -73,9 +76,8 @@ Public Class MainWindowVM
Get Get
If m_bfirst Then If m_bfirst Then
m_bfirst = False m_bfirst = False
m_StatusBar = New StatusBarV With { m_StatusBar = New StatusBarV
.DataContext = New MyStatusBarVM m_StatusBar.DataContext = New MyStatusBarVM
}
End If End If
Return m_StatusBar Return m_StatusBar
End Get End Get
@@ -87,9 +89,8 @@ Public Class MainWindowVM
Get Get
If m_bFirstProjectPage Then If m_bFirstProjectPage Then
m_bFirstProjectPage = False m_bFirstProjectPage = False
m_ProjectPage = New ProjectV With { m_ProjectPage = New ProjectV
.DataContext = New ProjectVM m_ProjectPage.DataContext = New ProjectVM
}
End If End If
Return m_ProjectPage Return m_ProjectPage
End Get End Get
@@ -97,11 +98,11 @@ Public Class MainWindowVM
Public ReadOnly Property IconSource As String Public ReadOnly Property IconSource As String
Get Get
#If PLATFORM = "x64" Then #If PLATFORM = "x64" Then
Return "/Resources/EgtCAM5_64.ico" Return "/Resources/EgtCAM5_64.ico"
#Else #else
Return "/Resources/EgtCAM5.ico" Return "/Resources/EgtCAM5.ico"
#End If #End If
End Get End Get
End Property End Property
@@ -137,9 +138,8 @@ Public Class MainWindowVM
' Manage the MainWindow_Unloaded event. This method is invoked by the cmdMainWindow_Unloaded. ' Manage the MainWindow_Unloaded event. This method is invoked by the cmdMainWindow_Unloaded.
Public Sub AboutBox(ByVal param As Object) Public Sub AboutBox(ByVal param As Object)
Dim AboutBoxWindow As New AboutBoxWndV With { Dim AboutBoxWindow As New AboutBoxWndV
.Owner = Application.Current.MainWindow AboutBoxWindow.Owner = Application.Current.MainWindow
}
AboutBoxWindow.ShowDialog() AboutBoxWindow.ShowDialog()
End Sub End Sub
@@ -386,8 +386,8 @@ Public Class MainWindowVM
EgtSetLockId(sLockId) EgtSetLockId(sLockId)
End If End If
' Recupero livello e opzioni della chiave ' Recupero livello e opzioni della chiave
Dim bKey As Boolean = EgtGetKeyLevel(3279, 2703, 1, IniFile.m_nKeyLevel) And Dim bKey As Boolean = EgtGetKeyLevel(3279, 2611, 1, IniFile.m_nKeyLevel) And
EgtGetKeyOptions(3279, 2703, 1, IniFile.m_nKeyOptions) EgtGetKeyOptions(3279, 2611, 1, IniFile.m_nKeyOptions)
' Leggo e imposto livello utilizzatore ' Leggo e imposto livello utilizzatore
IniFile.m_nUserLevel = Math.Min(IniFile.m_nKeyLevel, GetPrivateProfileInt(S_GENERAL, K_USERLEVEL, 1)) IniFile.m_nUserLevel = Math.Min(IniFile.m_nKeyLevel, GetPrivateProfileInt(S_GENERAL, K_USERLEVEL, 1))
' Imposto abilitazione lavorazioni avanzate ' Imposto abilitazione lavorazioni avanzate
@@ -423,14 +423,7 @@ Public Class MainWindowVM
GetPrivateProfileString(S_GEOMDB, K_NFEFONTDIR, "", sNfeDir) GetPrivateProfileString(S_GEOMDB, K_NFEFONTDIR, "", sNfeDir)
GetPrivateProfileString(S_GEOMDB, K_DEFAULTFONT, "", OptionModule.m_sFontText) GetPrivateProfileString(S_GEOMDB, K_DEFAULTFONT, "", OptionModule.m_sFontText)
EgtSetFont(sNfeDir, OptionModule.m_sFontText) EgtSetFont(sNfeDir, OptionModule.m_sFontText)
' Imposto dir di default per libreria Lua e lancio libreria di base ' Imposto direttorio ausiliario per import/gestione BTL
Dim sLuaLibsDir As String = String.Empty
GetPrivateProfileString(S_LUA, K_LIBSDIR, "", sLuaLibsDir)
EgtSetLuaLibs(sLuaLibsDir)
Dim sLuaBaseLib As String = String.Empty
GetPrivateProfileString(S_LUA, K_BASELIB, "EgtBase", sLuaBaseLib)
EgtLuaRequire(sLuaBaseLib)
' Imposto direttorio ausiliario per import/gestione BTL (sempre dopo impostazioni lua)
Dim sBtlAuxDir As String = String.Empty Dim sBtlAuxDir As String = String.Empty
GetPrivateProfileString(S_IMPORT, K_BTLAUXDIR, "", sBtlAuxDir) GetPrivateProfileString(S_IMPORT, K_BTLAUXDIR, "", sBtlAuxDir)
EgtSetBtlAuxDir(sBtlAuxDir) EgtSetBtlAuxDir(sBtlAuxDir)
@@ -438,6 +431,13 @@ Public Class MainWindowVM
Dim sThreeJSLibDir As String = String.Empty Dim sThreeJSLibDir As String = String.Empty
GetPrivateProfileString(S_EXPORT, K_THREEJSLIBDIR, "", sThreeJSLibDir) GetPrivateProfileString(S_EXPORT, K_THREEJSLIBDIR, "", sThreeJSLibDir)
EgtSetThreeJSLibDir(sThreeJSLibDir) EgtSetThreeJSLibDir(sThreeJSLibDir)
' Imposto dir di default per libreria Lua e lancio libreria di base
Dim sLuaLibsDir As String = String.Empty
GetPrivateProfileString(S_LUA, K_LIBSDIR, "", sLuaLibsDir)
EgtSetLuaLibs(sLuaLibsDir)
Dim sLuaBaseLib As String = String.Empty
GetPrivateProfileString(S_LUA, K_BASELIB, "EgtBase", sLuaBaseLib)
EgtLuaRequire(sLuaBaseLib)
' Imposto direttorio temporaneo a EgtInterface ' Imposto direttorio temporaneo a EgtInterface
EgtSetTempDir(m_sTempDir) EgtSetTempDir(m_sTempDir)
' Imposto IniFile a EgtInterface ' Imposto IniFile a EgtInterface
@@ -598,12 +598,6 @@ Public Class MainWindowVM
' pulisco output ' pulisco output
Map.refStatusBarVM.NotifyStatusOutput("") Map.refStatusBarVM.NotifyStatusOutput("")
Map.refInputExpanderVM.ResetInputBox() Map.refInputExpanderVM.ResetInputBox()
If not IsNothing( Map.refMachiningParameterExpanderVM) Then
' Nascondo la combobox delle usernotes
Map.refMachiningParameterExpanderVM.CurrOperation.SetComboAddVisibility(Visibility.Collapsed)
'riattivo il pulsante per visualizzare la combobox delle note
Map.refMachiningParameterExpanderVM.CurrOperation.SetShowNoteListCombo_IsEnable(True)
End If
ElseIf e.Key = Key.Left OrElse e.Key = Key.Right OrElse e.Key = Key.Up OrElse e.Key = Key.Down AndAlso ElseIf e.Key = Key.Left OrElse e.Key = Key.Right OrElse e.Key = Key.Up OrElse e.Key = Key.Down AndAlso
Map.refTopCommandBarVM.MachiningIsChecked AndAlso Map.refOperationParametersExpanderVM.OperationParameters.IsEnabled Then Map.refTopCommandBarVM.MachiningIsChecked AndAlso Map.refOperationParametersExpanderVM.OperationParameters.IsEnabled Then
Map.refMachiningParameterExpanderVM.FocusSlider() Map.refMachiningParameterExpanderVM.FocusSlider()
@@ -622,11 +616,12 @@ Public Class MainWindowVM
''' </summary> ''' </summary>
Private m_allowWindowToClose As Boolean = False Private m_allowWindowToClose As Boolean = False
#End Region #End Region
#Region "MEF Plugin" #Region "MEF Plugin"
Private m_Loader As New MEFLoader() Private m_Loader As MEFLoader = New MEFLoader()
Private Function GetPathByName(ByVal name As String) As String Private Function GetPathByName(ByVal name As String) As String
Dim PluginNameSplit() As String = name.Split("."c) Dim PluginNameSplit() As String = name.Split("."c)
+3 -3
View File
@@ -30,7 +30,7 @@ Imports System.Windows
#End If #End If
<Assembly: AssemblyCompany("Egalware s.r.l.")> <Assembly: AssemblyCompany("Egalware s.r.l.")>
<Assembly: AssemblyProduct("EgtCAM5")> <Assembly: AssemblyProduct("EgtCAM5")>
<Assembly: AssemblyCopyright("Copyright © 2016-2025 by Egalware s.r.l.")> <Assembly: AssemblyCopyright("Copyright © 2016-2024 by Egalware s.r.l.")>
<Assembly: AssemblyTrademark("")> <Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(false)> <Assembly: ComVisible(false)>
@@ -70,6 +70,6 @@ Imports System.Windows
' by using the '*' as shown below: ' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")> ' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.7.3.1")> <Assembly: AssemblyVersion("2.6.11.1")>
<Assembly: AssemblyFileVersion("2.7.3.1")> <Assembly: AssemblyFileVersion("2.6.11.1")>
@@ -3,12 +3,12 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Expander IsExpanded="{Binding IsEnabled}" IsEnabled="{Binding IsEnabled}" <Expander IsExpanded="{Binding IsEnabled}" IsEnabled="{Binding IsEnabled}"
Style="{StaticResource ExpanderStyle}"> Style="{StaticResource ExpanderStyle}">
<Expander.Header> <Expander.Header>
<TextBlock Text="{Binding PropertiesMsg}"/> <TextBlock Text="{Binding PropertiesMsg}"/>
</Expander.Header> </Expander.Header>
<UniformGrid> <UniformGrid>
<TextBox Text="{Binding InfoBox, Mode=OneWay}" MaxHeight="100" IsReadOnly="True" <TextBox Text="{Binding InfoBox, Mode=OneWay}" MaxHeight="250" IsReadOnly="True"
HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto"/> HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto"/>
</UniformGrid> </UniformGrid>
</Expander> </Expander>
@@ -7,7 +7,7 @@ Public Class InfoExpanderVM
Public ReadOnly Property PropertiesMsg As String Public ReadOnly Property PropertiesMsg As String
Get Get
Return EgtMsg(5351) ' Proprietà Return EgtMsg(MSG_DRAWOPTION + 1)
End Get End Get
End Property End Property
@@ -21,7 +21,7 @@ Public Class InfoExpanderVM
Set(value As Boolean) Set(value As Boolean)
If value <> m_IsExpanded Then If value <> m_IsExpanded Then
m_IsExpanded = value m_IsExpanded = value
OnPropertyChanged(NameOf(IsEnabled)) OnPropertyChanged("IsEnabled")
End If End If
End Set End Set
End Property End Property
@@ -39,7 +39,7 @@ Public Class InfoExpanderVM
Else Else
IsEnabled = False IsEnabled = False
End If End If
OnPropertyChanged(NameOf(InfoBox)) OnPropertyChanged("InfoBox")
End If End If
End Set End Set
End Property End Property
@@ -3,9 +3,9 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Expander Header="{Binding Title}" IsExpanded="{Binding IsExpanded}" IsEnabled="{Binding IsEnabled}" <Expander Header="{Binding Title}" IsExpanded="{Binding IsExpanded}" IsEnabled="{Binding IsEnabled}"
Style="{StaticResource ExpanderStyle}"> Style="{StaticResource ExpanderStyle}">
<StackPanel> <StackPanel>
<!--<StackPanel.Style> <StackPanel.Style>
<Style TargetType="{x:Type StackPanel}"> <Style TargetType="{x:Type StackPanel}">
<Style.Triggers> <Style.Triggers>
<DataTrigger Binding="{Binding FocusTextBox}" Value="True"> <DataTrigger Binding="{Binding FocusTextBox}" Value="True">
@@ -13,78 +13,29 @@
</DataTrigger> </DataTrigger>
</Style.Triggers> </Style.Triggers>
</Style> </Style>
</StackPanel.Style>--> </StackPanel.Style>
<TextBlock Text="{Binding TextBlock}" <TextBlock Text="{Binding TextBlock}"
Visibility="{Binding TextVisibility}" Margin="5,5,0,5"/> Visibility="{Binding TextVisibility}" Margin="5,5,0,5"/>
<Grid> <TextBox Text="{Binding TextBox,UpdateSourceTrigger=PropertyChanged}"
<Grid.ColumnDefinitions> Visibility="{Binding TextVisibility}" Margin="5,0,5,5">
<ColumnDefinition Width="1*"/> <TextBox.InputBindings>
<ColumnDefinition Width="Auto"/> <KeyBinding Key="Enter" Command="{Binding DoneCommand}"/>
</Grid.ColumnDefinitions> <KeyBinding Key="S" Modifiers="Control" Command="{Binding ShowCommand}"/>
<TextBox x:Name="Txt" Text="{Binding TextBox,UpdateSourceTrigger=PropertyChanged}" </TextBox.InputBindings>
PreviewKeyDown="TextBox_PreviewKeyDown" Height="Auto" </TextBox>
Visibility="{Binding TextVisibility}" Margin="5,0,5,5" IsEnabled="True" Focusable="True" >
<TextBox.InputBindings>
<KeyBinding Key="Enter" Command="{Binding DoneCommand}"/>
<KeyBinding Key="S" Modifiers="Control" Command="{Binding ShowCommand}"/>
</TextBox.InputBindings>
</TextBox>
<Button Grid.Column="1"
Content="+"
Command="{Binding ShowInfoItemCommand}"
Visibility="Collapsed"
Width="20"
Height="20"
Margin="5,-1,5,0"
VerticalAlignment="Top"/>
<!--Visibility="{Binding ShowInfoItemVisibility}"-->
</Grid>
<CheckBox Content="{Binding CheckBoxText}" IsChecked="{Binding IsChecked}" <CheckBox Content="{Binding CheckBoxText}" IsChecked="{Binding IsChecked}"
Visibility="{Binding CheckVisibility}" Margin="5,0,5,5"/> Visibility="{Binding CheckVisibility}" Margin="5,0,5,5"/>
<ComboBox ItemsSource="{Binding ComboItemsList}" SelectedIndex="{Binding ComboSelectedIndex}" <ComboBox ItemsSource="{Binding ComboItemsList}" SelectedIndex="{Binding ComboSelectedIndex}"
Visibility="{Binding ComboVisibility}" Margin="5,5,5,5"/> Visibility="{Binding ComboVisibility}" Margin="5,0,5,5"/>
<ItemsControl ItemsSource="{Binding InfoList}"
Visibility="{Binding InfoVisibility}"
Margin="5,5,0,10">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Key}"
Width="70"
Margin="0,6,-15,0"/>
<TextBox Grid.Column="1"
Text="{Binding Valour, UpdateSourceTrigger=PropertyChanged}"
Margin="0,5,5,10">
<TextBox.InputBindings>
<KeyBinding Key="Enter" Command="{Binding DoneInfoCommand}"/>
</TextBox.InputBindings>
</TextBox>
<Button Grid.Column="2"
Content="-"
Command="{Binding RemoveInfoItemCommand}"
Width="20"
Height="20"
Margin="5,-2,5,5"/>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<Grid Margin="5,0,5,5"> <Grid Margin="5,0,5,5">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Button Command="{Binding ShowCommand}" Visibility="{Binding ShowBtnVisibility}" <Button Command="{Binding ShowCommand}" Visibility="{Binding ShowBtnVisibility}"
Content="{Binding ShowMsg}" Style="{StaticResource EgtCAM5_InputButton}"/> Content="{Binding ShowMsg}" Style="{StaticResource EgtCAM5_InputButton}"/>
<Button Command="{Binding DoneCommand}" Grid.Column="1" <Button Command="{Binding DoneCommand}" Grid.Column="1"
Content="{Binding OkMsg}" Style="{StaticResource EgtCAM5_InputButton}"/> Content="{Binding OkMsg}" Style="{StaticResource EgtCAM5_InputButton}"/>
</Grid> </Grid>
</StackPanel> </StackPanel>
</Expander> </Expander>
@@ -1,24 +1,3 @@
Public Class InputExpanderV Public Class InputExpanderV
Sub New()
' La chiamata è richiesta dalla finestra di progettazione.
InitializeComponent()
' Aggiungere le eventuali istruzioni di inizializzazione dopo la chiamata a InitializeComponent().
'TextBoxFocus.Focus()
AddHandler Map.refInputExpanderVM.m_FocusOnTextBox, AddressOf FocusOnText
End Sub
Friend Sub FocusOnText()
Me.Txt.Focus()
End Sub
Private Sub TextBox_PreviewKeyDown(sender As Object, e As KeyEventArgs)
If e.Key = Key.Enter And Keyboard.Modifiers = ModifierKeys.Shift Then
Txt.AcceptsReturn = True
Txt.TextWrapping = TextWrapping.Wrap
End If
End Sub
End Class End Class
@@ -1,31 +1,11 @@
Imports System.Collections.ObjectModel Imports System.Collections.ObjectModel
Imports EgtUILib Imports EgtUILib
Imports MS.Internal
Public Class InputExpanderVM Public Class InputExpanderVM
Inherits ViewModelBase Inherits ViewModelBase
#Region "FIELDS & PROPERTIES" #Region "FIELDS & PROPERTIES"
Friend Event m_FocusOnTextBox()
' Variabile temporanea per salvare bShow
Private m_tmpbShow As Boolean
Private m_tmpInfoList As New ObservableCollection(Of InfoItem)
''' <summary>
''' Lista temporanea delle info
''' </summary>
Private Property tmpInfoList As ObservableCollection(Of InfoItem)
Get
Return m_tmpInfoList
End Get
Set(value As ObservableCollection(Of InfoItem))
m_tmpInfoList = value
OnPropertyChanged("tmpInfoList")
End Set
End Property
' Expander fields ' Expander fields
Private m_IsExpanded As Boolean Private m_IsExpanded As Boolean
Public Property IsExpanded As Boolean Public Property IsExpanded As Boolean
@@ -34,7 +14,7 @@ Public Class InputExpanderVM
End Get End Get
Set(value As Boolean) Set(value As Boolean)
m_IsExpanded = value m_IsExpanded = value
OnPropertyChanged(NameOf(IsExpanded)) OnPropertyChanged("IsExpanded")
End Set End Set
End Property End Property
@@ -45,7 +25,7 @@ Public Class InputExpanderVM
End Get End Get
Set(value As Boolean) Set(value As Boolean)
m_IsEnabled = value m_IsEnabled = value
OnPropertyChanged(NameOf(IsEnabled)) OnPropertyChanged("IsEnabled")
End Set End Set
End Property End Property
@@ -56,7 +36,7 @@ Public Class InputExpanderVM
End Get End Get
Set(value As String) Set(value As String)
m_Title = value m_Title = value
OnPropertyChanged(NameOf(Title)) OnPropertyChanged("Title")
End Set End Set
End Property End Property
@@ -68,7 +48,7 @@ Public Class InputExpanderVM
End Get End Get
Set(value As String) Set(value As String)
m_TextBlock = value m_TextBlock = value
OnPropertyChanged(NameOf(TextBlock)) OnPropertyChanged("TextBlock")
End Set End Set
End Property End Property
@@ -81,7 +61,7 @@ Public Class InputExpanderVM
Set(value As String) Set(value As String)
m_TextBox = value m_TextBox = value
Map.refProjectVM.NotifyInputText(value) Map.refProjectVM.NotifyInputText(value)
OnPropertyChanged(NameOf(TextBox)) OnPropertyChanged("TextBox")
End Set End Set
End Property End Property
@@ -93,7 +73,7 @@ Public Class InputExpanderVM
Set(value As Visibility) Set(value As Visibility)
If value <> m_TextVisibility Then If value <> m_TextVisibility Then
m_TextVisibility = value m_TextVisibility = value
OnPropertyChanged(NameOf(TextVisibility)) OnPropertyChanged("TextVisibility")
End If End If
End Set End Set
End Property End Property
@@ -105,7 +85,7 @@ Public Class InputExpanderVM
End Get End Get
Set(value As Boolean) Set(value As Boolean)
m_FocusTextBox = value m_FocusTextBox = value
OnPropertyChanged(NameOf(FocusTextBox)) OnPropertyChanged("FocusTextBox")
End Set End Set
End Property End Property
@@ -117,7 +97,7 @@ Public Class InputExpanderVM
End Get End Get
Set(value As String) Set(value As String)
m_CheckBoxText = value m_CheckBoxText = value
OnPropertyChanged(NameOf(CheckBoxText)) OnPropertyChanged("CheckBoxText")
End Set End Set
End Property End Property
@@ -130,7 +110,7 @@ Public Class InputExpanderVM
If value <> m_IsChecked Then If value <> m_IsChecked Then
Map.refProjectVM.SetLastBoolean(value) Map.refProjectVM.SetLastBoolean(value)
m_IsChecked = value m_IsChecked = value
OnPropertyChanged(NameOf(IsChecked)) OnPropertyChanged("IsChecked")
End If End If
End Set End Set
End Property End Property
@@ -143,7 +123,7 @@ Public Class InputExpanderVM
Set(value As Visibility) Set(value As Visibility)
If value <> m_CheckVisibility Then If value <> m_CheckVisibility Then
m_CheckVisibility = value m_CheckVisibility = value
OnPropertyChanged(NameOf(CheckVisibility)) OnPropertyChanged("CheckVisibility")
End If End If
End Set End Set
End Property End Property
@@ -156,21 +136,7 @@ Public Class InputExpanderVM
End Get End Get
Set(value As ObservableCollection(Of String)) Set(value As ObservableCollection(Of String))
m_ComboItemsList = value m_ComboItemsList = value
OnPropertyChanged(NameOf(ComboItemsList)) OnPropertyChanged("ComboItemsList")
End Set
End Property
Private m_InfoList As New ObservableCollection(Of InfoItem)
''' <summary>
''' Lista delle info modificate
''' </summary>
Public Property InfoList As ObservableCollection(Of InfoItem)
Get
Return m_InfoList
End Get
Set(value As ObservableCollection(Of InfoItem))
m_InfoList = value
OnPropertyChanged("InfoList")
End Set End Set
End Property End Property
@@ -180,27 +146,9 @@ Public Class InputExpanderVM
Return m_ComboSelectedIndex Return m_ComboSelectedIndex
End Get End Get
Set(value As Integer) Set(value As Integer)
If m_tmpbShow Then Map.refProjectVM.SetLastInteger(value) Map.refProjectVM.SetLastInteger(value)
m_ComboSelectedIndex = value m_ComboSelectedIndex = value
' Assegno l'indice selezionato ad una variabile temporanea per utilizzarlo quando rimuovo l'info dalla lista OnPropertyChanged("ComboSelectedIndex")
Dim tmpComboSelectedIndex As Integer = ComboSelectedIndex
' Controllo se l'indice è maggiore o uguale a zero e la lista tmp contiene valori
If m_ComboSelectedIndex >= 0 AndAlso tmpInfoList.Count > 0 Then
' Controllo se la info è contenuta nella lista ComboItemsList
If ComboItemsList.Contains(tmpInfoList(m_ComboSelectedIndex).sKey) Then
' Aggiungo la info alla lista per visualizzarla
InfoList.Add(New InfoItem(tmpInfoList(m_ComboSelectedIndex).nId, tmpInfoList(m_ComboSelectedIndex).sKey, m_tmpInfoList(m_ComboSelectedIndex).sValour))
' Nascondo la combobox
ComboVisibility = Visibility.Collapsed
' Rimuovo la info dalla ComboItemsList
ComboItemsList.Remove(tmpInfoList(m_ComboSelectedIndex).sKey)
End If
' Rimuovo la info dalla tmpInfoList
tmpInfoList.Remove(tmpInfoList(tmpComboSelectedIndex))
End If
OnPropertyChanged(NameOf(ComboSelectedIndex))
OnPropertyChanged("ComboItemsList")
OnPropertyChanged("InfoList")
End Set End Set
End Property End Property
@@ -212,7 +160,7 @@ Public Class InputExpanderVM
Set(value As Visibility) Set(value As Visibility)
If value <> m_ComboVisibility Then If value <> m_ComboVisibility Then
m_ComboVisibility = value m_ComboVisibility = value
OnPropertyChanged(NameOf(ComboVisibility)) OnPropertyChanged("ComboVisibility")
End If End If
End Set End Set
End Property End Property
@@ -225,58 +173,24 @@ Public Class InputExpanderVM
End Get End Get
Set(value As Visibility) Set(value As Visibility)
m_ShowBtnVisibility = value m_ShowBtnVisibility = value
OnPropertyChanged(NameOf(ShowBtnVisibility)) OnPropertyChanged("ShowBtnVisibility")
End Set
End Property
Private m_ShowInfoItemVisibility As Visibility
''' <summary>
''' Propietà visibilità bottone +
''' </summary>
Public Property ShowInfoItemVisibility As Visibility
Get
Return m_ShowInfoItemVisibility
End Get
Set(value As Visibility)
If value <> m_ShowInfoItemVisibility Then
m_ShowInfoItemVisibility = value
OnPropertyChanged("ShowInfoItemVisibility")
End If
End Set
End Property
Private m_InfoVisibility As Visibility
''' <summary>
''' Propietà visibilità lista info modificate
''' </summary>
Public Property InfoVisibility As Visibility
Get
Return m_InfoVisibility
End Get
Set(value As Visibility)
If value <> m_InfoVisibility Then
m_InfoVisibility = value
OnPropertyChanged("InfoVisibility")
End If
End Set End Set
End Property End Property
' Commands definition ' Commands definition
Private m_cmdShow As ICommand Private m_cmdShow As ICommand
Private m_cmdDone As ICommand Private m_cmdDone As ICommand
Private m_cmdShowInfoItem As ICommand
Private m_cmdRemoveInfoItem As ICommand
#Region "Messages" #Region "Messages"
Public ReadOnly Property ShowMsg As String Public ReadOnly Property ShowMsg As String
Get Get
Return EgtMsg(5364) ' Mostra Return EgtMsg(MSG_DRAWOPTION + 14)
End Get End Get
End Property End Property
Public ReadOnly Property OkMsg As String Public ReadOnly Property OkMsg As String
Get Get
Return EgtMsg(5365) ' Conferma Return EgtMsg(MSG_DRAWOPTION + 15)
End Get End Get
End Property End Property
@@ -343,15 +257,6 @@ Public Class InputExpanderVM
''' Execute the Point. This method is invoked by the PointCommand. ''' Execute the Point. This method is invoked by the PointCommand.
''' </summary> ''' </summary>
Public Sub Done(ByVal param As Object) Public Sub Done(ByVal param As Object)
' Controllo se la lista contenente la info modificata sia presente
If InfoList.Count > 0 Then
' Ciclo sulla lista
For Each Item As InfoItem In InfoList
Map.refProjectVM.NotifyInputText((Item.Key & "=" & Item.Valour).Trim())
' Assegno a m_TextBox la info modificata
m_TextBox &= vbCrLf & (Item.Key & "=" & Item.Valour).Trim() & vbCrLf
Next
End If
Map.refProjectVM.Done(m_TextBox) Map.refProjectVM.Done(m_TextBox)
End Sub End Sub
@@ -364,75 +269,23 @@ Public Class InputExpanderVM
#End Region ' DoneCommand #End Region ' DoneCommand
#Region "ShowInfoItemCommand"
''' <summary>
''' Comando per la visualizzazione della combobox
''' </summary>
Public ReadOnly Property ShowInfoItemCommand As ICommand
Get
If m_cmdShowInfoItem Is Nothing Then
m_cmdShowInfoItem = New Command(AddressOf ShowInfoItem)
End If
Return m_cmdShowInfoItem
End Get
End Property
''' <summary>
''' Funzione per la visualizzazione della combobox
''' </summary>
''' <param name="param"></param>
Public Sub ShowInfoItem(ByVal param As Object)
ComboVisibility = Visibility.Visible
End Sub
#End Region ' ShowInfoItemCommand
#End Region #End Region
#Region "METHODS" #Region "METHODS"
Friend Sub FocusText()
RaiseEvent m_FocusOnTextBox()
End Sub
Friend Sub PrepareInputBox(PrepareInputBoxParam As PrepareInputBoxParam) Friend Sub PrepareInputBox(PrepareInputBoxParam As PrepareInputBoxParam)
Title = PrepareInputBoxParam.sTitle Title = PrepareInputBoxParam.sTitle
If PrepareInputBoxParam.sLabel <> "" Then If PrepareInputBoxParam.sLabel <> "" Then
TextBlock = PrepareInputBoxParam.sLabel TextBlock = PrepareInputBoxParam.sLabel
TextBox = "" TextBox = ""
TextVisibility = Visibility.Visible TextVisibility = Visibility.Visible
' Controllo se il titolo è uguale a INFO se si
If Title = EgtMsg(5359).ToUpper() Then
' Metto tmpbShow a false
m_tmpbShow = False
' Rendo visibile il pulsante che mostra la lista delle info
ShowInfoItemVisibility = Visibility.Visible
' Rendo visibile la lista delle info selezionate
InfoVisibility = Visibility.Visible
' Pulisco la lista tmpInfoList
tmpInfoList.Clear()
' Pulisco la lista InfoList
InfoList.Clear()
' Pulisco la lista ComboItemsList
ComboItemsList.Clear()
' Popolo la lista ComboItemsList
ComboInfo()
End If
End If End If
If PrepareInputBoxParam.sCheckLabel <> "" Then If PrepareInputBoxParam.sCheckLabel <> "" Then
CheckBoxText = PrepareInputBoxParam.sCheckLabel CheckBoxText = PrepareInputBoxParam.sCheckLabel
CheckVisibility = Visibility.Visible CheckVisibility = Visibility.Visible
End If End If
If PrepareInputBoxParam.bShowCombo Then If PrepareInputBoxParam.bShowCombo Then
' Assegno a tmpbShow PrepareInputBoxParam.bShowCombo
m_tmpbShow = PrepareInputBoxParam.bShowCombo
' Pulisco la lista ComboItemsList
ComboItemsList.Clear() ComboItemsList.Clear()
' Pulisco la lista tmpInfoList
tmpInfoList.Clear()
' Pulisco la lista InfoList
InfoList.Clear()
ComboVisibility = Visibility.Visible ComboVisibility = Visibility.Visible
End If End If
If PrepareInputBoxParam.bShowBtn Then If PrepareInputBoxParam.bShowBtn Then
@@ -441,17 +294,14 @@ Public Class InputExpanderVM
IsEnabled = True IsEnabled = True
IsExpanded = True IsExpanded = True
FocusTextBox = True FocusTextBox = True
FocusText()
End Sub End Sub
Friend Sub ResetInputBox() Friend Sub ResetInputBox()
Title = EgtMsg(5355) ' Parametri di disegno Title = EgtMsg(MSG_DRAWOPTION + 5)
TextVisibility = Visibility.Collapsed TextVisibility = Visibility.Collapsed
CheckVisibility = Visibility.Collapsed CheckVisibility = Visibility.Collapsed
ComboVisibility = Visibility.Collapsed ComboVisibility = Visibility.Collapsed
ShowBtnVisibility = Visibility.Collapsed ShowBtnVisibility = Visibility.Collapsed
ShowInfoItemVisibility = Visibility.Collapsed
InfoVisibility = Visibility.Collapsed
IsExpanded = False IsExpanded = False
IsEnabled = False IsEnabled = False
End Sub End Sub
@@ -459,7 +309,6 @@ Public Class InputExpanderVM
Friend Function SetInputBoxText(ByVal sVal As String) As Boolean Friend Function SetInputBoxText(ByVal sVal As String) As Boolean
TextBox = sVal TextBox = sVal
FocusTextBox = True FocusTextBox = True
FocusText()
Return True Return True
End Function End Function
@@ -480,44 +329,12 @@ Public Class InputExpanderVM
Private Function AddInputBoxCombo(ByVal sText As String, ByVal bSelected As Boolean) As Boolean Private Function AddInputBoxCombo(ByVal sText As String, ByVal bSelected As Boolean) As Boolean
ComboItemsList.Add(sText) ComboItemsList.Add(sText)
If bSelected Then If bSelected Then
ComboSelectedIndex = ComboItemsList.Count - 1 ComboSelectedIndex = ComboItemsList.Count - 1
End If End If
Return True Return True
End Function End Function
''' <summary>
''' Rimovi nota da info lista
''' </summary>
''' <param name="InfoItem">Informazione da eliminare</param>
Friend Sub RemoveItemInfo(InfoItem As InfoItem)
' Rimuovo info da lista modifica
InfoList.Remove(InfoItem)
' Riaggiungo la info eliminata
ComboItemsList.Add(InfoItem.sKey)
' Riaggiungo la info eliminata
tmpInfoList.Add(InfoItem)
End Sub
''' <summary>
''' Funzione che popola la lista ComboItemsList
''' </summary>
Private Sub ComboInfo()
'''''''''''''''''''''''''''''' Recuperare funzione egtgetallinfo quando sarà pronta
Dim val As Integer
If Not m_tmpbShow Then
For Ind As Integer = 0 To 6
val += Ind
tmpInfoList.Add(New InfoItem(Ind, "A" & +Ind, val.ToString()))
Next
For Each InfoItem As InfoItem In tmpInfoList
ComboItemsList.Add(InfoItem.sKey)
Next
End If
End Sub
#End Region ' Methods #End Region ' Methods
End Class End Class
@@ -69,7 +69,7 @@ Public Class LayerTreeViewItem
Return m_bOnOff Return m_bOnOff
End Get End Get
Set(value As Boolean) Set(value As Boolean)
'If Map.refProjectVM.GetController().GetStep() <> 0 Then Return If Map.refProjectVM.GetController().GetStep() <> 0 Then Return
If m_bOnOff <> value Then If m_bOnOff <> value Then
m_bOnOff = value m_bOnOff = value
' se abilitato, eseguo operazione ' se abilitato, eseguo operazione
@@ -115,7 +115,7 @@ Public Class LayerTreeViewItem
Public Sub SetHidden(bVal As Boolean) Public Sub SetHidden(bVal As Boolean)
If bVal <> m_bHidden Then If bVal <> m_bHidden Then
m_bHidden = bVal m_bHidden = bVal
NotifyPropertyChanged(Name(IsHidden)) NotifyPropertyChanged("IsHidden")
End If End If
End Sub End Sub
@@ -127,7 +127,7 @@ Public Class LayerTreeViewItem
Set(value As String) Set(value As String)
If value <> m_sPictureString Then If value <> m_sPictureString Then
m_sPictureString = value m_sPictureString = value
NotifyPropertyChanged(NameOf(PictureString)) NotifyPropertyChanged("PictureString")
End If End If
End Set End Set
End Property End Property
@@ -20,10 +20,9 @@
<Button Content="{Binding NewLayerMsg}" Command="{Binding NewLayerCommand}" Height="30"/> <Button Content="{Binding NewLayerMsg}" Command="{Binding NewLayerCommand}" Height="30"/>
<Button Content="{Binding ColorMsg}" Command="{Binding LayerColorCommand}" Height="30"/> <Button Content="{Binding ColorMsg}" Command="{Binding LayerColorCommand}" Height="30"/>
</UniformGrid> </UniformGrid>
<TreeView x:Name="LayerTreeView" MinHeight="150" MaxHeight="250" <TreeView Name="LayerTreeView" MinHeight="250" MaxHeight="400"
ItemsSource="{Binding Path=LayerList}" ItemsSource="{Binding Path=LayerList}"
SelectedItemChanged="LayerTreeView_SelectedItemChanged"
VirtualizingStackPanel.IsVirtualizing = "True" VirtualizingStackPanel.IsVirtualizing = "True"
VirtualizingStackPanel.VirtualizationMode = "Recycling"> VirtualizingStackPanel.VirtualizationMode = "Recycling">
<interactivity:Interaction.Triggers> <interactivity:Interaction.Triggers>
@@ -51,17 +50,18 @@
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<ToggleButton Style="{StaticResource EgtCAM5_LampToggleButton}" Grid.Column="0" <ToggleButton Style="{StaticResource EgtCAM5_LampToggleButton}" Grid.Column="0"
IsChecked="{Binding OnOff}" Visibility="{Binding IsHidden}" Focusable="True" Height="15" Width="15" Margin="0,0,5,0"/> IsChecked="{Binding OnOff}" Visibility="{Binding IsHidden}" Focusable="False" Height="15" Width="15" Margin="0,0,5,0"/>
<Image Grid.Column="1" Source="{Binding PictureString}" Height="15" Margin="0,0,5,0"/> <Image Grid.Column="1" Source="{Binding PictureString}" Height="15" Margin="0,0,5,0"/>
<TextBlock Grid.Column="2" Text="{Binding Name}" Margin="0,0,5,0" Name="Pippo"/> <TextBlock Grid.Column="2" Text="{Binding Name}" Margin="0,0,5,0"/>
<Ellipse Grid.Column="3" Height="10" Width="10" Fill="{Binding LayerColor}" /> <Ellipse Grid.Column="3" Height="10" Width="10" Fill="{Binding LayerColor}" />
</Grid> </Grid>
</HierarchicalDataTemplate> </HierarchicalDataTemplate>
</TreeView.Resources> </TreeView.Resources>
<!--Style dei nodi CathegoryItem che li riquadra di azzurro quando clicckati ed elimina l'ombra grigia <!--Style dei nodi CathegoryItem che li riquadra di azzurro quando clicckati ed elimina l'ombra grigia
che si presenta quando la categoria rimane vuota (ombra causata dal multibinding).--> che si presenta quando la categoria rimane vuota (ombra causata dal multibinding).-->
<TreeView.ItemContainerStyle> <TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}"> <Style TargetType="{x:Type TreeViewItem}">
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" /> <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
@@ -1,10 +1,3 @@
Public Class ManageLayerExpanderV Public Class ManageLayerExpanderV
Private Sub LayerTreeView_SelectedItemChanged(sender As Object, e As RoutedPropertyChangedEventArgs(Of Object))
If Not IsNothing(LayerTreeView.SelectedItem) Then
' Metti il focus sul TreeView e sul nodo
LayerTreeView.Focus()
End If
End Sub
End Class End Class
@@ -1,6 +1,6 @@
Imports System.Collections.ObjectModel Imports System.Collections.ObjectModel
Imports System.Security.Cryptography
Imports EgtUILib Imports EgtUILib
Imports EgtCAM5.IniFile
Public Class ManageLayerExpanderVM Public Class ManageLayerExpanderVM
Inherits ViewModelBase Inherits ViewModelBase
@@ -15,7 +15,7 @@ Public Class ManageLayerExpanderVM
End Get End Get
Set(value As String) Set(value As String)
m_HeaderName = value m_HeaderName = value
OnPropertyChanged(NameOf(HeaderName)) OnPropertyChanged("HeaderName")
End Set End Set
End Property End Property
@@ -26,7 +26,7 @@ Public Class ManageLayerExpanderVM
End Get End Get
Set(value As SolidColorBrush) Set(value As SolidColorBrush)
m_HeaderColor = value m_HeaderColor = value
OnPropertyChanged(NameOf(HeaderColor)) OnPropertyChanged("HeaderColor")
End Set End Set
End Property End Property
@@ -75,57 +75,57 @@ Public Class ManageLayerExpanderVM
Public ReadOnly Property NewPartMsg As String Public ReadOnly Property NewPartMsg As String
Get Get
Return EgtMsg(5352) ' Nuovo Pezzo Return EgtMsg(MSG_DRAWOPTION + 2)
End Get End Get
End Property End Property
Public ReadOnly Property NewLayerMsg As String Public ReadOnly Property NewLayerMsg As String
Get Get
Return EgtMsg(5353) ' Nuovo Layer Return EgtMsg(MSG_DRAWOPTION + 3)
End Get End Get
End Property End Property
Public ReadOnly Property ColorMsg As String Public ReadOnly Property ColorMsg As String
Get Get
Return EgtMsg(5354) ' Colore Return EgtMsg(MSG_DRAWOPTION + 4)
End Get End Get
End Property End Property
Public ReadOnly Property SelectMsg As String Public ReadOnly Property SelectMsg As String
Get Get
Return EgtMsg(5356) ' Seleziona Return EgtMsg(MSG_DRAWOPTION + 6)
End Get End Get
End Property End Property
Public ReadOnly Property DeselectMsg As String Public ReadOnly Property DeselectMsg As String
Get Get
Return EgtMsg(5357) ' Deseleziona Return EgtMsg(MSG_DRAWOPTION + 7)
End Get End Get
End Property End Property
Public ReadOnly Property NameMsg As String Public ReadOnly Property NameMsg As String
Get Get
Return EgtMsg(5358) ' Nome Return EgtMsg(MSG_DRAWOPTION + 8)
End Get End Get
End Property End Property
Public ReadOnly Property InfoMsg As String Public ReadOnly Property InfoMsg As String
Get Get
Return EgtMsg(5359) ' Info Return EgtMsg(MSG_DRAWOPTION + 9)
End Get End Get
End Property End Property
Public ReadOnly Property RelocateMsg As String Public ReadOnly Property RelocateMsg As String
Get Get
Return EgtMsg(5360) ' Sposta Return EgtMsg(MSG_DRAWOPTION + 10)
End Get End Get
End Property End Property
Public ReadOnly Property CopyMsg As String Public ReadOnly Property CopyMsg As String
Get Get
Return EgtMsg(5361) ' Copia Return EgtMsg(MSG_DRAWOPTION + 11)
End Get End Get
End Property End Property
Public ReadOnly Property DeleteMsg As String Public ReadOnly Property DeleteMsg As String
Get Get
Return EgtMsg(5362) ' Elimina Return EgtMsg(MSG_DRAWOPTION + 12)
End Get End Get
End Property End Property
Public ReadOnly Property SaveMsg As String Public ReadOnly Property SaveMsg As String
Get Get
Return EgtMsg(5363) ' Salva Return EgtMsg(MSG_DRAWOPTION + 13)
End Get End Get
End Property End Property
@@ -480,8 +480,9 @@ Public Class ManageLayerExpanderVM
' Se è un pezzo con lavorazioni, devo chiedere conferma della cancellazione ' Se è un pezzo con lavorazioni, devo chiedere conferma della cancellazione
If EgtIsPart(RightClickedTreeItemId) And EgtExistsInfo(RightClickedTreeItemId, GDB_SI_LIST) Then If EgtIsPart(RightClickedTreeItemId) And EgtExistsInfo(RightClickedTreeItemId, GDB_SI_LIST) Then
' Pezzo in lavorazione, vuoi cancellarlo lo stesso ? - Erase Confirm ' Pezzo in lavorazione, vuoi cancellarlo lo stesso ? - Erase Confirm
'If MessageBox.Show(EgtMsg(MSG_DRAWOPTION + 17), EgtMsg(MSG_DRAWOPTION + 16), MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.No Then Return If MessageBox.Show(EgtMsg(MSG_DRAWOPTION + 17), EgtMsg(MSG_DRAWOPTION + 16), MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.No Then
If EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(5367), EgtMsg(5366), MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.No Then Return ' Pezzo in lavorazione, vuoi cancellarlo lo stesso ? Conferma Cancellazione Return
End If
End If End If
' Recupero Id vicino per prossimo selezionato in albero ' Recupero Id vicino per prossimo selezionato in albero
Dim nNewId As Integer = EgtGetNext(RightClickedTreeItemId) Dim nNewId As Integer = EgtGetNext(RightClickedTreeItemId)
@@ -527,7 +528,7 @@ Public Class ManageLayerExpanderVM
#Region "METHODS" #Region "METHODS"
Private WithEvents ObjTreeTimer As New System.Windows.Threading.DispatcherTimer Private WithEvents ObjTreeTimer As New System.Windows.Threading.DispatcherTimer
Friend m_nObjTreeOldId As Integer = GDB_ID.NULL Private m_nObjTreeOldId As Integer = GDB_ID.NULL
Private m_nObjTreeMenuId As Integer = GDB_ID.NULL Private m_nObjTreeMenuId As Integer = GDB_ID.NULL
Private m_bEnableUpdateObjInObjTree As Boolean = True Private m_bEnableUpdateObjInObjTree As Boolean = True
@@ -678,7 +679,7 @@ Public Class ManageLayerExpanderVM
'se gruppo 'se gruppo
If nType = GDB_TY.GROUP Then If nType = GDB_TY.GROUP Then
AddGroupInObjTree(nId, nLevel, nMode, nDepth + 1, CurrNodColl) AddGroupInObjTree(nId, nLevel, nMode, nDepth + 1, CurrNodColl)
'se oggetto geometrico 'se oggetto geometrico
ElseIf nType >= GDB_TY.GEO_VECTOR Then ElseIf nType >= GDB_TY.GEO_VECTOR Then
Dim sTitle As String = String.Empty Dim sTitle As String = String.Empty
EgtGetTitle(nId, sTitle) EgtGetTitle(nId, sTitle)
@@ -807,7 +808,7 @@ Public Class ManageLayerExpanderVM
If Not IsNothing(tNode) Then If Not IsNothing(tNode) Then
If Not bMark Then LayerTreeViewItem.m_MarkOnSel = False If Not bMark Then LayerTreeViewItem.m_MarkOnSel = False
tNode.IsSelected = True tNode.IsSelected = True
tNode.NotifyPropertyChanged(NameOf(tNode.IsSelected)) tNode.NotifyPropertyChanged("IsSelected")
If Not bMark Then LayerTreeViewItem.m_MarkOnSel = True If Not bMark Then LayerTreeViewItem.m_MarkOnSel = True
tNode.IsExpanded = True tNode.IsExpanded = True
m_nObjTreeOldId = nId m_nObjTreeOldId = nId
+20 -5
View File
@@ -1,15 +1,30 @@
<UserControl x:Class="DrawOptionPanelV" <UserControl x:Class="DrawOptionPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="250" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"> xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5">
<StackPanel Name="ciao" Background="Transparent" Margin="0,0,3.5001,0" MaxHeight="{Binding MaxHeight,RelativeSource={RelativeSource AncestorType={x:Type EgtFloating:EgtFloatingPanel}}}"> <!--<StackPanel Name="ciao" Background="Transparent" MaxHeight="{Binding MaxHeight,RelativeSource={RelativeSource AncestorType={x:Type EgtFloating:EgtFloatingPanel}}}">
--><!--ContentPresenter that contains the ManageLayerExpander--><!--
<ContentPresenter Content="{Binding ManageLayerExpander,Mode=OneWay}"/>
--><!--ContentPresenter that contains the InfoExpander--><!--
<ContentPresenter Content="{Binding InfoExpander}"/>
--><!--ContentPresenter that contains the InputExpander--><!--
<ContentPresenter Content="{Binding InputExpander}"/>
</StackPanel>-->
<Grid Name="ciao" Background="Transparent" MaxHeight="{Binding MaxHeight,RelativeSource={RelativeSource AncestorType={x:Type EgtFloating:EgtFloatingPanel}}}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<!--ContentPresenter that contains the ManageLayerExpander--> <!--ContentPresenter that contains the ManageLayerExpander-->
<ContentPresenter Content="{Binding ManageLayerExpander,Mode=OneWay}"/> <ContentPresenter Content="{Binding ManageLayerExpander,Mode=OneWay}"/>
<GridSplitter Grid.Row="0" Height="5" Background="Transparent" HorizontalAlignment="Stretch" VerticalAlignment="Bottom"/>
<!--ContentPresenter that contains the InfoExpander--> <!--ContentPresenter that contains the InfoExpander-->
<ContentPresenter Content="{Binding InfoExpander}"/> <ContentPresenter Grid.Row="1" Content="{Binding InfoExpander}"/>
<GridSplitter Grid.Row="1" Height="5" Background="Transparent" HorizontalAlignment="Stretch" VerticalAlignment="Bottom"/>
<!--ContentPresenter that contains the InputExpander--> <!--ContentPresenter that contains the InputExpander-->
<ContentPresenter Content="{Binding InputExpander}"/> <ContentPresenter Grid.Row="2" Content="{Binding InputExpander}"/>
</StackPanel> </Grid>
</UserControl> </UserControl>
+11 -16
View File
@@ -1,16 +1,15 @@
Public Class DrawOptionPanelVM Imports EgtUILib
Inherits ViewModelBase
Private m_InputExpanderVM As InputExpanderVM Public Class DrawOptionPanelVM
Inherits ViewModelBase
' GRAPHICAL ELEMENTS ' GRAPHICAL ELEMENTS
Private m_ManageLayerExpander As ManageLayerExpanderV Private m_ManageLayerExpander As ManageLayerExpanderV
Public ReadOnly Property ManageLayerExpander As ContentControl Public ReadOnly Property ManageLayerExpander As ContentControl
Get Get
If IsNothing(m_ManageLayerExpander) Then If IsNothing(m_ManageLayerExpander) Then
m_ManageLayerExpander = New ManageLayerExpanderV With { m_ManageLayerExpander = New ManageLayerExpanderV
.DataContext = New ManageLayerExpanderVM m_ManageLayerExpander.DataContext = New ManageLayerExpanderVM
}
End If End If
Return m_ManageLayerExpander Return m_ManageLayerExpander
End Get End Get
@@ -20,9 +19,8 @@
Public ReadOnly Property InfoExpander As ContentControl Public ReadOnly Property InfoExpander As ContentControl
Get Get
If IsNothing(m_InfoExpander) Then If IsNothing(m_InfoExpander) Then
m_InfoExpander = New InfoExpanderV With { m_InfoExpander = New InfoExpanderV
.DataContext = New InfoExpanderVM m_InfoExpander.DataContext = New InfoExpanderVM
}
End If End If
Return m_InfoExpander Return m_InfoExpander
End Get End Get
@@ -32,13 +30,8 @@
Public ReadOnly Property InputExpander As ContentControl Public ReadOnly Property InputExpander As ContentControl
Get Get
If IsNothing(m_InputExpander) Then If IsNothing(m_InputExpander) Then
'm_InputExpander = New InputExpanderV With { m_InputExpander = New InputExpanderV
' .DataContext = New InputExpanderVM m_InputExpander.DataContext = New InputExpanderVM
'}
m_InputExpanderVM = New InputExpanderVM()
m_InputExpander = New InputExpanderV With {
.DataContext = m_InputExpanderVM
}
End If End If
Return m_InputExpander Return m_InputExpander
End Get End Get
@@ -56,10 +49,12 @@
#Region "METHODS" #Region "METHODS"
Friend Function InitDrawOptionPanel() As Boolean Friend Function InitDrawOptionPanel() As Boolean
'EgtZoom(ZM.ALL)
Return True Return True
End Function End Function
Friend Function ExitDrawOptionPanel() As Boolean Friend Function ExitDrawOptionPanel() As Boolean
Return True Return True
End Function End Function
@@ -1,4 +1,5 @@
Imports System.IO Imports System.Collections.ObjectModel
Imports System.IO
Imports EgtUILib Imports EgtUILib
Imports EgtWPFLib5 Imports EgtWPFLib5
@@ -28,7 +29,7 @@ Public Class EstimationsExpanderVM
End Get End Get
Set(value As Boolean) Set(value As Boolean)
m_Estimation_IsEnabled = value m_Estimation_IsEnabled = value
NotifyPropertyChanged(NameOf(Estimation_IsEnabled)) NotifyPropertyChanged("Estimation_IsEnabled")
End Set End Set
End Property End Property
@@ -54,8 +55,7 @@ Public Class EstimationsExpanderVM
' Verifico che il file esista ' Verifico che il file esista
If Not File.Exists(sEstFile) Then If Not File.Exists(sEstFile) Then
' File delle stime non trovato ' File delle stime non trovato
'MessageBox.Show(EgtMsg(MSG_SIMULATION + 18), EgtMsg(MSG_SIMULATION + 15), MessageBoxButton.OK, MessageBoxImage.Warning) MessageBox.Show(EgtMsg(MSG_SIMULATION + 18), EgtMsg(MSG_SIMULATION + 15), MessageBoxButton.OK, MessageBoxImage.Warning)
EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(5318), EgtMsg(5315), MessageBoxButton.OK, MessageBoxImage.Warning) ' File delle stime non trovato AVVERTIMENTO
Return Return
End If End If
' Visualizzazione ' Visualizzazione
@@ -77,14 +77,14 @@ Public Class EstimationsExpanderVM
' Abilito la selezione di tutti i tipi di geometria ' Abilito la selezione di tutti i tipi di geometria
Map.refProjectVM.SceneSelMode = SceneSelModeOpt.PARTCURVESANDSURFACES Map.refProjectVM.SceneSelMode = SceneSelModeOpt.PARTCURVESANDSURFACES
CalcEstimation() CalcEstimation()
NotifyPropertyChanged(NameOf(Time)) NotifyPropertyChanged("Time")
NotifyPropertyChanged(NameOf(CutLen)) NotifyPropertyChanged("CutLen")
m_Estimation_IsExpanded = True m_Estimation_IsExpanded = True
Map.refOperationParametersExpanderVM.OperParamsViewIsEnabled = False Map.refOperationParametersExpanderVM.OperParamsViewIsEnabled = False
Map.refOperationsListExpanderVM.EstimationExpander_Get_IsExpanded(True) Map.refOperationsListExpanderVM.EstimationExpander_Get_IsExpanded(True)
NotifyPropertyChanged(NameOf(Estimation_IsExpanded)) NotifyPropertyChanged("Estimation_IsExpanded")
Map.refMachiningOptionPanelVM.OnPropertyChanged(NameOf(Map.refMachiningOptionPanelVM.GenerateIsEnabled)) Map.refMachiningOptionPanelVM.OnPropertyChanged("GenerateIsEnabled")
' disattivo database utensili, lavorazioni e setup se vado in stima ' disattivo database utensili, lavorazioni e setup se vado in stima
Map.refMachinePanelVM.ToolMachSetUpIsEnabled(False, False, False) Map.refMachinePanelVM.ToolMachSetUpIsEnabled(False, False, False)
' disattivo MTable e SpecialPanel se vado in stima ' disattivo MTable e SpecialPanel se vado in stima
@@ -97,8 +97,8 @@ Public Class EstimationsExpanderVM
m_Estimation_IsExpanded = False m_Estimation_IsExpanded = False
Map.refOperationParametersExpanderVM.OperParamsViewIsEnabled = True Map.refOperationParametersExpanderVM.OperParamsViewIsEnabled = True
Map.refOperationsListExpanderVM.EstimationExpander_Get_IsExpanded(False) Map.refOperationsListExpanderVM.EstimationExpander_Get_IsExpanded(False)
NotifyPropertyChanged(NameOf(Estimation_IsExpanded)) NotifyPropertyChanged("Estimation_IsExpanded")
Map.refMachiningOptionPanelVM.OnPropertyChanged(NameOf(Map.refMachiningOptionPanelVM.GenerateIsEnabled)) Map.refMachiningOptionPanelVM.OnPropertyChanged("GenerateIsEnabled")
' attivo database utensili, lavorazioni e setup se esco dalla stima ' attivo database utensili, lavorazioni e setup se esco dalla stima
Map.refMachinePanelVM.ToolMachSetUpIsEnabled(True, True, True) Map.refMachinePanelVM.ToolMachSetUpIsEnabled(True, True, True)
' attivo MTable e SpecialPanel se esco dalla stima ' attivo MTable e SpecialPanel se esco dalla stima
@@ -115,8 +115,7 @@ Public Class EstimationsExpanderVM
If bAskSave Then If bAskSave Then
If String.IsNullOrEmpty(sCurrFilePath) OrElse EgtGetModified() Then If String.IsNullOrEmpty(sCurrFilePath) OrElse EgtGetModified() Then
' Il progetto deve essere salvato prima di poter essere generato. Vuoi farlo ? ' Il progetto deve essere salvato prima di poter essere generato. Vuoi farlo ?
'If MessageBox.Show(EgtMsg(MSG_SIMULATION + 31), EgtMsg(MSG_SIMULATION + 15), MessageBoxButton.YesNo, MessageBoxImage.Warning) = MessageBoxResult.No Then If MessageBox.Show(EgtMsg(MSG_SIMULATION + 31), EgtMsg(MSG_SIMULATION + 15), MessageBoxButton.YesNo, MessageBoxImage.Warning) = MessageBoxResult.No Then
If EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(5331), EgtMsg(5315), MessageBoxButton.YesNo, MessageBoxImage.Warning) = MessageBoxResult.No Then ' Il progetto deve essere salvato prima della generazione CN. Vuoi farlo ? AVVERTIMENTO
' Abbandono ' Abbandono
bOk = False bOk = False
Else Else
@@ -131,8 +130,7 @@ Public Class EstimationsExpanderVM
Else Else
If String.IsNullOrEmpty(sCurrFilePath) Then If String.IsNullOrEmpty(sCurrFilePath) Then
' File delle stime non trovato ' File delle stime non trovato
'MessageBox.Show(EgtMsg(MSG_SIMULATION + 18), EgtMsg(MSG_SIMULATION + 15), MessageBoxButton.OK, MessageBoxImage.Warning) MessageBox.Show(EgtMsg(MSG_SIMULATION + 18), EgtMsg(MSG_SIMULATION + 15), MessageBoxButton.OK, MessageBoxImage.Warning)
EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(5318), EgtMsg(5315), MessageBoxButton.OK, MessageBoxImage.Warning) ' File delle stime non trovato AVVERTIMENTO
bOk = False bOk = False
End If End If
End If End If
@@ -1,7 +1,9 @@
<UserControl x:Class="EstimationsExpanderV" <UserControl x:Class="EstimationsExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<StackPanel> <StackPanel>
<Expander Header="{Binding EstimationMsg}" <Expander Header="{Binding EstimationMsg}"
@@ -1,13 +1,19 @@
<UserControl x:Class="MachiningTreeExpanderV" <UserControl x:Class="MachiningTreeExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:EgtCAM5"> xmlns:interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:local="clr-namespace:EgtCAM5">
<Expander Header="{Binding MachListHdr}" IsExpanded="{Binding IsEnabled}" IsEnabled="{Binding IsEnabled}" <Expander Header="{Binding MachListHdr}" IsExpanded="{Binding IsEnabled}" IsEnabled="{Binding IsEnabled}"
Style="{StaticResource ExpanderStyle}"> Style="{StaticResource ExpanderStyle}">
<UniformGrid MaxHeight="300"> <UniformGrid MaxHeight="300">
<TreeView Name="MachiningsTreeView" Grid.Row="1" <TreeView Name="MachiningsTreeView" Grid.Row="1"
ItemsSource="{Binding Path=MachiningsList}"> ItemsSource="{Binding Path=MachiningsList}">
<!--<interactivity:Interaction.Triggers>
<interactivity:EventTrigger EventName="MouseDoubleClick">
<interactivity:InvokeCommandAction Command="{Binding TreeViewDoubleClickCommand}" CommandParameter="{Binding ElementName=MachiningsTreeView,Path=SelectedItem}"/>
</interactivity:EventTrigger>
</interactivity:Interaction.Triggers>-->
<TreeView.InputBindings> <TreeView.InputBindings>
<KeyBinding Key="Escape" Command="{Binding CancelNewCommand}" CommandParameter="Escape"/> <KeyBinding Key="Escape" Command="{Binding CancelNewCommand}" CommandParameter="Escape"/>
</TreeView.InputBindings> </TreeView.InputBindings>
@@ -28,7 +34,7 @@
</Grid> </Grid>
<!--Assegna ai nodi ToolItem lo Style normale dei TreeViewItem, eliminando l'ombra, data dal <!--Assegna ai nodi ToolItem lo Style normale dei TreeViewItem, eliminando l'ombra, data dal
multibinding quando sono attivi.--> multibinding quando sono attivi.-->
<HierarchicalDataTemplate.ItemContainerStyle> <HierarchicalDataTemplate.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}" > <Style TargetType="{x:Type TreeViewItem}" >
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" /> <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
@@ -2,6 +2,12 @@
' Evento necessario per impedire che venga creata la lavorazione quando si fa doppio click sulla ScrollBar ' Evento necessario per impedire che venga creata la lavorazione quando si fa doppio click sulla ScrollBar
Private Sub MachiningsTreeView_MouseDoubleClick(sender As Object, e As System.Windows.Input.MouseButtonEventArgs) Private Sub MachiningsTreeView_MouseDoubleClick(sender As Object, e As System.Windows.Input.MouseButtonEventArgs)
'Dim src As DependencyObject = VisualTreeHelper.GetParent(DirectCast(e.OriginalSource, DependencyObject))
'' Your logic here
'If TypeOf src Is Control AndAlso src.[GetType]() <> GetType(Grid) Then
' e.Handled = True
'End If
' recupero il viewmodel associato a questa view in cui è presente la funzione che l'evento deve lanciare ' recupero il viewmodel associato a questa view in cui è presente la funzione che l'evento deve lanciare
Dim MachiningTreeExpanderViewModel As MachiningTreeExpanderVM = DirectCast(Me.DataContext, MachiningTreeExpanderVM) Dim MachiningTreeExpanderViewModel As MachiningTreeExpanderVM = DirectCast(Me.DataContext, MachiningTreeExpanderVM)
' recupero il treeviewitem clickato(sorgente dell'evento) ' recupero il treeviewitem clickato(sorgente dell'evento)
@@ -36,7 +36,7 @@ Public Class MachiningTreeExpanderVM
Public ReadOnly Property MachListHdr As String Public ReadOnly Property MachListHdr As String
Get Get
Return EgtMsg(5412) ' Nuove Lavorazioni Return EgtMsg(MSG_OPERATION + 12) ' Nuove Lavorazioni
End Get End Get
End Property End Property
@@ -85,8 +85,7 @@ Public Class MachiningTreeExpanderVM
' Se l'operazione non è andata a buon fine ' Se l'operazione non è andata a buon fine
If MachiningId = GDB_ID.NULL Then If MachiningId = GDB_ID.NULL Then
' Inserimento lavorazione non riuscito ERRORE ' Inserimento lavorazione non riuscito ERRORE
'MessageBox.Show(EgtMsg(MSG_OPERATION + 19), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(EgtMsg(MSG_OPERATION + 19), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error)
EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(5419), EgtMsg(15001), MessageBoxButton.OK, MessageBoxImage.Error) ' Inserimento lavorazione non riuscito Errore
Map.refOperationsListExpanderVM.CancelOperationCmd() Map.refOperationsListExpanderVM.CancelOperationCmd()
Return Return
End If End If
@@ -128,31 +127,31 @@ Public Class MachiningTreeExpanderVM
Private Function MachiningTypeToString(Type As Integer) As String Private Function MachiningTypeToString(Type As Integer) As String
Select Case Type Select Case Type
Case MCH_MY.DRILLING Case MCH_MY.DRILLING
Return EgtMsg(6201) ' Foratura Return EgtMsg(MSG_MACHININGSDBPAGE + 1)
Case MCH_MY.SAWING Case MCH_MY.SAWING
Return EgtMsg(6202) ' Taglio di lama Return EgtMsg(MSG_MACHININGSDBPAGE + 2)
Case MCH_MY.MILLING Case MCH_MY.MILLING
Return EgtMsg(6203) ' Fresatura Return EgtMsg(MSG_MACHININGSDBPAGE + 3)
Case MCH_MY.POCKETING Case MCH_MY.POCKETING
Return EgtMsg(6204) ' Svuotatura Return EgtMsg(MSG_MACHININGSDBPAGE + 4)
Case MCH_MY.MORTISING Case MCH_MY.MORTISING
Return EgtMsg(6205) ' Mortasatura Return EgtMsg(MSG_MACHININGSDBPAGE + 5)
Case MCH_MY.SAWROUGHING Case MCH_MY.SAWROUGHING
Return EgtMsg(6206) ' Sgrossatura con lama Return EgtMsg(MSG_MACHININGSDBPAGE + 6)
Case MCH_MY.SAWFINISHING Case MCH_MY.SAWFINISHING
Return EgtMsg(6207) ' Finitura con lama Return EgtMsg(MSG_MACHININGSDBPAGE + 7)
Case MCH_MY.GENMACHINING Case MCH_MY.GENMACHINING
Return EgtMsg(6208) ' Lav. generica Return EgtMsg(MSG_MACHININGSDBPAGE + 8)
Case MCH_MY.CHISELING Case MCH_MY.CHISELING
Return EgtMsg(6209) ' Scalpellatura Return EgtMsg(MSG_MACHININGSDBPAGE + 9)
Case MCH_MY.SURFROUGHING Case MCH_MY.SURFROUGHING
Return EgtMsg(6210) ' Sgrossatura superfici Return EgtMsg(MSG_MACHININGSDBPAGE + 10)
Case MCH_MY.SURFFINISHING Case MCH_MY.SURFFINISHING
Return EgtMsg(6211) ' Finitura superfici Return EgtMsg(MSG_MACHININGSDBPAGE + 11)
Case MCH_MY.WATERJETTING Case MCH_MY.WATERJETTING
Return EgtMsg(6212) ' WaterJet Return EgtMsg(MSG_MACHININGSDBPAGE + 12)
Case MCH_MY.FIVEAXISMILLING Case MCH_MY.FIVEAXISMILLING
Return EgtMsg(31213) ' Lav. 5 assi Return EgtMsg(31213)
Case Else Case Else
Return "Mach" Return "Mach"
End Select End Select
@@ -200,7 +199,7 @@ Public Class MachiningTreeExpanderVM
Map.refProjectVM.SceneSelMode = SceneSelModeOpt.ALL Map.refProjectVM.SceneSelMode = SceneSelModeOpt.ALL
CodeCommand = False CodeCommand = False
OnPropertyChanged(NameOf(IsEnabled)) OnPropertyChanged("IsEnabled")
Return True Return True
End Function End Function
@@ -214,11 +213,11 @@ Public Class MachiningTreeExpanderVM
If Not CodeCommand Then If Not CodeCommand Then
Map.refOperationsListExpanderVM.CancelOperationCmd() Map.refOperationsListExpanderVM.CancelOperationCmd()
CodeCommand = False CodeCommand = False
OnPropertyChanged(NameOf(IsEnabled)) OnPropertyChanged("IsEnabled")
Return False Return False
End If End If
CodeCommand = False CodeCommand = False
OnPropertyChanged(NameOf(IsEnabled)) OnPropertyChanged("IsEnabled")
Return True Return True
End Function End Function
@@ -63,6 +63,7 @@ Public Class MachiningTreeViewExpanderItem
End Class End Class
''' <summary> ''' <summary>
''' Class that represent a FamilyMachining in the treeview. ''' Class that represent a FamilyMachining in the treeview.
''' It's an element in the treeview that represent a folder, but also a machining family ''' It's an element in the treeview that represent a folder, but also a machining family
@@ -1,7 +1,7 @@
<UserControl x:Class="DispositionParameterExpanderV" <UserControl x:Class="DispositionParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"> xmlns:sys="clr-namespace:System;assembly=mscorlib">
<UserControl.Resources> <UserControl.Resources>
<sys:Int32 x:Key="TL">1</sys:Int32> <sys:Int32 x:Key="TL">1</sys:Int32>
@@ -13,28 +13,28 @@
<StackPanel> <StackPanel>
<Expander Header="RawPart" IsExpanded="{Binding RawPartIsExpanded}" <Expander Header="RawPart" IsExpanded="{Binding RawPartIsExpanded}"
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1"> Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
<StackPanel> <StackPanel>
<ContentPresenter Name="RawPartOptions" Content="{Binding RawPartOptions ,Mode=OneWay}"/> <ContentPresenter Name="RawPartOptions" Content="{Binding RawPartOptions ,Mode=OneWay}"/>
</StackPanel> </StackPanel>
</Expander> </Expander>
<Expander Header="Part" IsExpanded="{Binding PartIsExpanded}" <Expander Header="Part" IsExpanded="{Binding PartIsExpanded}"
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1"> Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
</Expander> </Expander>
<Expander Header="Fixture" IsExpanded="{Binding FixtureIsExpanded}" <Expander Header="Fixture" IsExpanded="{Binding FixtureIsExpanded}"
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1"> Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
<!--ContentPresenter that contains the Fixture options --> <!--ContentPresenter that contains the Fixture options -->
<ContentPresenter Name="FixtureParameters" Content="{Binding FixtureParameters ,Mode=OneWay}"/> <ContentPresenter Name="FixtureParameters" Content="{Binding FixtureParameters ,Mode=OneWay}"/>
</Expander> </Expander>
<UniformGrid Columns="2"> <UniformGrid Columns="2">
<RadioButton Content="Move" IsChecked="{Binding MoveIsChecked}" <RadioButton Content="Move" IsChecked="{Binding MoveIsChecked}"
Style="{StaticResource {x:Type ToggleButton}}" Height="30"/> Style="{StaticResource {x:Type ToggleButton}}" Height="30"/>
<RadioButton Content="Rotate" <RadioButton Content="Rotate"
Style="{StaticResource {x:Type ToggleButton}}" Height="30"/> Style="{StaticResource {x:Type ToggleButton}}" Height="30"/>
</UniformGrid> </UniformGrid>
<Grid Margin="0,5,0,5" Visibility="{Binding RawRefGroupVisibility}"> <Grid Margin="0,5,0,5" Visibility="{Binding RawRefGroupVisibility}">
@@ -52,28 +52,28 @@
<TextBlock Grid.ColumnSpan="4" Text="Move Raw Reference"/> <TextBlock Grid.ColumnSpan="4" Text="Move Raw Reference"/>
<RadioButton Grid.Column="1" Grid.Row="1" Command="{Binding CheckedRawRefCommand}" <RadioButton Grid.Column="1" Grid.Row="1" Command="{Binding CheckedRawRefCommand}"
CommandParameter="{StaticResource TL}" CommandParameter="{StaticResource TL}"
Style="{StaticResource {x:Type ToggleButton}}" Height="40" Width="40"> Style="{StaticResource {x:Type ToggleButton}}" Height="40" Width="40">
<Border BorderBrush="{StaticResource EgaltechBlue1}" BorderThickness="5,5,0,0" <Border BorderBrush="{StaticResource EgaltechBlue1}" BorderThickness="5,5,0,0"
Height="30" Width="30"/> Height="30" Width="30"/>
</RadioButton> </RadioButton>
<RadioButton Grid.Column="2" Grid.Row="1" Command="{Binding CheckedRawRefCommand}" <RadioButton Grid.Column="2" Grid.Row="1" Command="{Binding CheckedRawRefCommand}"
CommandParameter="{StaticResource TR}" CommandParameter="{StaticResource TR}"
Style="{StaticResource {x:Type ToggleButton}}" Height="40" Width="40"> Style="{StaticResource {x:Type ToggleButton}}" Height="40" Width="40">
<Border BorderBrush="{StaticResource EgaltechBlue1}" BorderThickness="0,5,5,0" <Border BorderBrush="{StaticResource EgaltechBlue1}" BorderThickness="0,5,5,0"
Height="30" Width="30"/> Height="30" Width="30"/>
</RadioButton> </RadioButton>
<RadioButton Grid.Column="1" Grid.Row="2" Command="{Binding CheckedRawRefCommand}" <RadioButton Grid.Column="1" Grid.Row="2" Command="{Binding CheckedRawRefCommand}"
CommandParameter="{StaticResource BL}" IsChecked="{Binding BLIsChecked,Mode=OneWay}" CommandParameter="{StaticResource BL}" IsChecked="{Binding BLIsChecked,Mode=OneWay}"
Style="{StaticResource {x:Type ToggleButton}}" Height="40" Width="40"> Style="{StaticResource {x:Type ToggleButton}}" Height="40" Width="40">
<Border BorderBrush="{StaticResource EgaltechBlue1}" BorderThickness="5,0,0,5" <Border BorderBrush="{StaticResource EgaltechBlue1}" BorderThickness="5,0,0,5"
Height="30" Width="30"/> Height="30" Width="30"/>
</RadioButton> </RadioButton>
<RadioButton Grid.Column="2" Grid.Row="2" Command="{Binding CheckedRawRefCommand}" <RadioButton Grid.Column="2" Grid.Row="2" Command="{Binding CheckedRawRefCommand}"
CommandParameter="{StaticResource BR}" CommandParameter="{StaticResource BR}"
Style="{StaticResource {x:Type ToggleButton}}" Height="40" Width="40"> Style="{StaticResource {x:Type ToggleButton}}" Height="40" Width="40">
<Border BorderBrush="{StaticResource EgaltechBlue1}" BorderThickness="0,0,5,5" <Border BorderBrush="{StaticResource EgaltechBlue1}" BorderThickness="0,0,5,5"
Height="30" Width="30"/> Height="30" Width="30"/>
</RadioButton> </RadioButton>
</Grid> </Grid>
@@ -82,18 +82,21 @@
<TextBox Text="{Binding InputValue,UpdateSourceTrigger=PropertyChanged}" Margin="5,0,5,5"> <TextBox Text="{Binding InputValue,UpdateSourceTrigger=PropertyChanged}" Margin="5,0,5,5">
<TextBox.InputBindings> <TextBox.InputBindings>
<KeyBinding Key="Enter" Command="{Binding DoneCommand}"/> <KeyBinding Key="Enter" Command="{Binding DoneCommand}"/>
<!--<KeyBinding Key="S" Modifiers="Control" Command="{Binding ShowCommand}"/>-->
</TextBox.InputBindings> </TextBox.InputBindings>
</TextBox> </TextBox>
<TextBlock Text="{Binding InputErrorMsg,Mode=OneWay}" Margin="5,5,5,5" <TextBlock Text="{Binding InputErrorMsg,Mode=OneWay}" Margin="5,5,5,5"
Style="{StaticResource ValidationErrorTextBlock}"/> Style="{StaticResource ValidationErrorTextBlock}"/>
<Grid Margin="5,0,5,5"> <Grid Margin="5,0,5,5">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<!--<Button Command="{Binding ShowCommand}" Visibility="{Binding ShowBtnVisibility}"
Content="{Binding ShowMsg}" Style="{StaticResource EgtCAM5_InputButton}"/>-->
<Button Command="{Binding DoneCommand}" Grid.Column="1" <Button Command="{Binding DoneCommand}" Grid.Column="1"
Content="{Binding OkMsg}" Style="{StaticResource EgtCAM5_InputButton}"/> Content="{Binding OkMsg}" Style="{StaticResource EgtCAM5_InputButton}"/>
</Grid> </Grid>
</StackPanel> </StackPanel>
@@ -68,12 +68,12 @@ Public Class DispositionParameterExpanderVM
End If End If
If m_MoveIsChecked Then If m_MoveIsChecked Then
m_RawRefGroupVisibility = Visibility.Visible m_RawRefGroupVisibility = Visibility.Visible
OnPropertyChanged(NameOf(RawRefGroupVisibility)) OnPropertyChanged("RawRefGroupVisibility")
End If End If
Else Else
' Nascondo i bottoni per impostare la posizione di riferimento del grezzo ' Nascondo i bottoni per impostare la posizione di riferimento del grezzo
m_RawRefGroupVisibility = Visibility.Collapsed m_RawRefGroupVisibility = Visibility.Collapsed
OnPropertyChanged(NameOf(RawRefGroupVisibility)) OnPropertyChanged("RawRefGroupVisibility")
' smarco la prima entità selezionata ' smarco la prima entità selezionata
EgtResetMark(EgtGetFirstSelectedObj) EgtResetMark(EgtGetFirstSelectedObj)
EgtDeselectAll() EgtDeselectAll()
@@ -81,7 +81,7 @@ Public Class DispositionParameterExpanderVM
End If End If
m_RawPartIsExpanded = value m_RawPartIsExpanded = value
ActiveObject = ObjectType.RAWPART ActiveObject = ObjectType.RAWPART
OnPropertyChanged(NameOf(RawPartIsExpanded)) OnPropertyChanged("RawPartIsExpanded")
End If End If
End Set End Set
End Property End Property
@@ -105,7 +105,7 @@ Public Class DispositionParameterExpanderVM
End If End If
m_PartIsExpanded = value m_PartIsExpanded = value
ActiveObject = ObjectType.PART ActiveObject = ObjectType.PART
OnPropertyChanged(NameOf(PartIsExpanded)) OnPropertyChanged("PartIsExpanded")
End If End If
End Set End Set
End Property End Property
@@ -133,7 +133,7 @@ Public Class DispositionParameterExpanderVM
End If End If
m_FixtureIsExpanded = value m_FixtureIsExpanded = value
ActiveObject = ObjectType.FIXTURE ActiveObject = ObjectType.FIXTURE
OnPropertyChanged(NameOf(FixtureIsExpanded)) OnPropertyChanged("FixtureIsExpanded")
End If End If
End Set End Set
End Property End Property
@@ -147,22 +147,22 @@ Public Class DispositionParameterExpanderVM
If value <> m_MoveIsChecked Then If value <> m_MoveIsChecked Then
Map.refProjectVM.SetMoveInDisposition(value) Map.refProjectVM.SetMoveInDisposition(value)
InputValue = String.Empty InputValue = String.Empty
OnPropertyChanged(NameOf(InputValue)) OnPropertyChanged("InputValue")
If value Then If value Then
If m_RawPartIsExpanded Then If m_RawPartIsExpanded Then
m_RawRefGroupVisibility = Visibility.Visible m_RawRefGroupVisibility = Visibility.Visible
OnPropertyChanged(NameOf(RawRefGroupVisibility)) OnPropertyChanged("RawRefGroupVisibility")
Else Else
m_RawRefGroupVisibility = Visibility.Collapsed m_RawRefGroupVisibility = Visibility.Collapsed
OnPropertyChanged(NameOf(RawRefGroupVisibility)) OnPropertyChanged("RawRefGroupVisibility")
End If End If
m_InputMsg = "Move to:" m_InputMsg = "Move to:"
Else Else
m_RawRefGroupVisibility = Visibility.Collapsed m_RawRefGroupVisibility = Visibility.Collapsed
OnPropertyChanged(NameOf(RawRefGroupVisibility)) OnPropertyChanged("RawRefGroupVisibility")
m_InputMsg = "Rotate of:" m_InputMsg = "Rotate of:"
End If End If
OnPropertyChanged(NameOf(InputMsg)) OnPropertyChanged("InputMsg")
m_MoveIsChecked = value m_MoveIsChecked = value
End If End If
End Set End Set
@@ -176,7 +176,7 @@ Public Class DispositionParameterExpanderVM
Set(value As String) Set(value As String)
If Not String.IsNullOrEmpty(m_InputErrorMsg) Then If Not String.IsNullOrEmpty(m_InputErrorMsg) Then
m_InputErrorMsg = String.Empty m_InputErrorMsg = String.Empty
OnPropertyChanged(NameOf(InputErrorMsg)) OnPropertyChanged("InputErrorMsg")
End If End If
m_InputValue = value m_InputValue = value
End Set End Set
@@ -205,9 +205,8 @@ Public Class DispositionParameterExpanderVM
Public ReadOnly Property FixtureParameters As ContentControl Public ReadOnly Property FixtureParameters As ContentControl
Get Get
If IsNothing(m_FixtureParameters) Then If IsNothing(m_FixtureParameters) Then
m_FixtureParameters = New FixtureParametersV With { m_FixtureParameters = New FixtureParametersV
.DataContext = New FixtureParametersVM(m_ExpandFixtureFunction) m_FixtureParameters.DataContext = New FixtureParametersVM(m_ExpandFixtureFunction)
}
End If End If
Return m_FixtureParameters Return m_FixtureParameters
End Get End Get
@@ -217,9 +216,8 @@ Public Class DispositionParameterExpanderVM
Public ReadOnly Property RawPartOptions As ContentControl Public ReadOnly Property RawPartOptions As ContentControl
Get Get
If IsNothing(m_RawPartOptions) Then If IsNothing(m_RawPartOptions) Then
m_RawPartOptions = New RawPartOptionV With { m_RawPartOptions = New RawPartOptionV
.DataContext = New RawPartOptionVM m_RawPartOptions.DataContext = New RawPartOptionVM
}
End If End If
Return m_RawPartOptions Return m_RawPartOptions
End Get End Get
@@ -243,7 +241,7 @@ Public Class DispositionParameterExpanderVM
Public ReadOnly Property OkMsg As String Public ReadOnly Property OkMsg As String
Get Get
Return EgtMsg(5431) ' Ok Return EgtMsg(MSG_DISPOSITION + 1)
End Get End Get
End Property End Property
@@ -259,7 +257,7 @@ Public Class DispositionParameterExpanderVM
OpenDispositionFunction = AddressOf OpenDispositionParameters OpenDispositionFunction = AddressOf OpenDispositionParameters
MoveIsChecked = True MoveIsChecked = True
m_BLIsChecked = True m_BLIsChecked = True
OnPropertyChanged(NameOf(BLIsChecked)) OnPropertyChanged("BLIsChecked")
m_RawRefPosition = MCH_CR.BL m_RawRefPosition = MCH_CR.BL
End Sub End Sub
@@ -275,7 +273,7 @@ Public Class DispositionParameterExpanderVM
End If End If
Select Case m_ActiveObject Select Case m_ActiveObject
Case ObjectType.RAWPART Case ObjectType.RAWPART
' Abilito la selezione dei Grezzi ' Abilito la selezione delle Fixture
Map.refProjectVM.SceneSelType = SceneSelTypeOpt.RAWPART Map.refProjectVM.SceneSelType = SceneSelTypeOpt.RAWPART
Case ObjectType.FIXTURE Case ObjectType.FIXTURE
' Abilito la selezione delle Fixture ' Abilito la selezione delle Fixture
@@ -319,7 +317,7 @@ Public Class DispositionParameterExpanderVM
StringToLen(Values(1), InputPoint.y) StringToLen(Values(1), InputPoint.y)
Else Else
m_InputErrorMsg = "Il valore non è una cordinata XY" m_InputErrorMsg = "Il valore non è una cordinata XY"
OnPropertyChanged(NameOf(InputErrorMsg)) OnPropertyChanged("InputErrorMsg")
Return Return
End If End If
' Vettore di movimento ' Vettore di movimento
@@ -386,7 +384,7 @@ Public Class DispositionParameterExpanderVM
Dim InputAngle As Double = 0 Dim InputAngle As Double = 0
If Not StringToDouble(sVal, InputAngle) Then If Not StringToDouble(sVal, InputAngle) Then
m_InputErrorMsg = "Il valore non è un angolo valido" m_InputErrorMsg = "Il valore non è un angolo valido"
OnPropertyChanged(NameOf(InputErrorMsg)) OnPropertyChanged("InputErrorMsg")
Return Return
End If End If
' eseguo rotazione ' eseguo rotazione
@@ -399,14 +397,14 @@ Public Class DispositionParameterExpanderVM
DispositionUtility.VerifyRawPosition(nSelId, vtOrigMove, vtRefMove) DispositionUtility.VerifyRawPosition(nSelId, vtOrigMove, vtRefMove)
Else Else
m_InputErrorMsg = "Impossibile ruotare il grezzo." m_InputErrorMsg = "Impossibile ruotare il grezzo."
OnPropertyChanged(NameOf(InputErrorMsg)) OnPropertyChanged("InputErrorMsg")
End If End If
Case ObjectType.PART Case ObjectType.PART
'EgtMove... 'EgtMove...
Case ObjectType.FIXTURE Case ObjectType.FIXTURE
If Not EgtRotateFixture(nSelId, InputAngle) Then If Not EgtRotateFixture(nSelId, InputAngle) Then
m_InputErrorMsg = "Impossibile ruotare la ventosa" m_InputErrorMsg = "Impossibile ruotare la ventosa"
OnPropertyChanged(NameOf(InputErrorMsg)) OnPropertyChanged("InputErrorMsg")
End If End If
End Select End Select
nSelId = EgtGetNextSelectedObj() nSelId = EgtGetNextSelectedObj()
@@ -214,6 +214,10 @@ Public NotInheritable Class DispositionUtility
If Not VerifyRawPartFixturePos(nMoveId, vtMove, vtRefMove) Then If Not VerifyRawPartFixturePos(nMoveId, vtMove, vtRefMove) Then
bErrorVerify = True bErrorVerify = True
End If End If
'Dim sOut As String = "VerifyRaw : Count=" & nCount & " Err=" & If(bErrorVerify, "1", "0") &
' " Move=" & LenToString(vtMove.x, 3) & "," & LenToString(vtMove.y, 3) &
' " RefMove=" & LenToString(vtRefMove.x, 3) & "," & LenToString(vtRefMove.y, 3)
'EgtOutLog(sOut)
End If End If
End If End If
' Se non c'è errore ma necessaria correzione riferimento ' Se non c'è errore ma necessaria correzione riferimento
@@ -771,9 +775,6 @@ Public NotInheritable Class DispositionUtility
m_nUsedHookId = nNearestHookId m_nUsedHookId = nNearestHookId
' Segno hook come utilizzato ' Segno hook come utilizzato
SetHookUsed(m_nUsedHookId, nMoveId, True) SetHookUsed(m_nUsedHookId, nMoveId, True)
Dim sLinkName As String = ""
EgtGetName( EgtGetParent( m_nUsedHookId), sLinkName)
EgtSetFixtureLink( nMoveId, sLinkName)
Return True Return True
End Function End Function
@@ -1,12 +1,12 @@
<UserControl x:Class="FixtureParametersV" <UserControl x:Class="FixtureParametersV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtCAM5="clr-namespace:EgtCAM5"> xmlns:EgtCAM5="clr-namespace:EgtCAM5">
<StackPanel> <StackPanel>
<ListBox Name="FixtureListBox" ItemsSource="{Binding FixtureTypeList}" <ListBox Name="FixtureListBox" ItemsSource="{Binding FixtureTypeList}"
Height="150" IsSynchronizedWithCurrentItem="True" SelectedItem="{Binding SelectedFixtureType}"> Height="150" IsSynchronizedWithCurrentItem="True" SelectedItem="{Binding SelectedFixtureType}">
<ListBox.Resources> <ListBox.Resources>
<DataTemplate DataType="{x:Type EgtCAM5:FixtureType}"> <DataTemplate DataType="{x:Type EgtCAM5:FixtureType}">
<Grid> <Grid>
@@ -24,7 +24,7 @@
<Border CornerRadius="1" Background="{StaticResource EgaltechBlue3}" FocusVisualStyle="{x:Null}"> <Border CornerRadius="1" Background="{StaticResource EgaltechBlue3}" FocusVisualStyle="{x:Null}">
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Name}" Foreground="White" Margin="5,0,0,0" <TextBlock Text="{Binding Name}" Foreground="White" Margin="5,0,0,0"
FontSize="15" FontWeight="SemiBold"/> FontSize="15" FontWeight="SemiBold"/>
</StackPanel> </StackPanel>
</Border> </Border>
</DataTemplate> </DataTemplate>
@@ -38,15 +38,15 @@
</Style> </Style>
</ListBox.ItemContainerStyle> </ListBox.ItemContainerStyle>
</ListBox> </ListBox>
<TextBlock Text="{Binding FixtureErrorMsg,Mode=OneWay}" Margin="5,5,5,5" <TextBlock Text="{Binding FixtureErrorMsg,Mode=OneWay}" Margin="5,5,5,5"
Style="{StaticResource ValidationErrorTextBlock}"/> Style="{StaticResource ValidationErrorTextBlock}"/>
<UniformGrid Columns="2"> <UniformGrid Columns="2">
<Button Content="Add" Height="30" Command="{Binding AddCommand}" CommandParameter="{Binding Path=SelectedItem, ElementName=FixtureListBox}"/> <Button Content="Add" Height="30" Command="{Binding AddCommand}" CommandParameter="{Binding Path=SelectedItem, ElementName=FixtureListBox}"/>
<Button Content="Remove" Height="30" Command="{Binding RemoveCommand}" CommandParameter="{Binding Path=SelectedItem, ElementName=FixtureListBox}"/> <Button Content="Remove" Height="30" Command="{Binding RemoveCommand}" CommandParameter="{Binding Path=SelectedItem, ElementName=FixtureListBox}"/>
</UniformGrid> </UniformGrid>
</StackPanel> </StackPanel>
</UserControl> </UserControl>
@@ -36,7 +36,7 @@ Public Class FixtureParametersVM
Public ReadOnly Property OkMsg As String Public ReadOnly Property OkMsg As String
Get Get
Return EgtMsg(5431) ' Ok Return EgtMsg(MSG_DISPOSITION + 1)
End Get End Get
End Property End Property
@@ -62,8 +62,8 @@ Public Class FixtureParametersVM
Dim nUsedFixtureId As Integer = EgtGetFirstFixture() Dim nUsedFixtureId As Integer = EgtGetFirstFixture()
While nUsedFixtureId <> GDB_ID.NULL While nUsedFixtureId <> GDB_ID.NULL
Dim sUsedFixtureName As String = String.Empty Dim sUsedFixtureName As String = String.Empty
EgtGetName(nUsedFixtureId, sUsedFixtureName)
For Index = 0 To m_FixtureTypeList.Count - 1 For Index = 0 To m_FixtureTypeList.Count - 1
EgtGetName(nUsedFixtureId, sUsedFixtureName)
If sUsedFixtureName = m_FixtureTypeList(Index).Name Then If sUsedFixtureName = m_FixtureTypeList(Index).Name Then
Dim CurrFixtureType As FixtureType = DirectCast(m_FixtureTypeList(Index), FixtureType) Dim CurrFixtureType As FixtureType = DirectCast(m_FixtureTypeList(Index), FixtureType)
CurrFixtureType.UsedNumber += 1 CurrFixtureType.UsedNumber += 1
@@ -76,8 +76,7 @@ Public Class FixtureParametersVM
Friend Sub UpdateFixtureTypeList() Friend Sub UpdateFixtureTypeList()
m_FixtureTypeList = New ObservableCollection(Of FixtureListItem)(FixtureType.ReadFixtureTypeFromMachIni()) m_FixtureTypeList = New ObservableCollection(Of FixtureListItem)(FixtureType.ReadFixtureTypeFromMachIni())
UpdateFixtureCount() OnPropertyChanged("FixtureTypeList")
OnPropertyChanged(NameOf(FixtureTypeList))
End Sub End Sub
' Definizione comandi ' Definizione comandi
@@ -116,9 +115,9 @@ Public Class FixtureParametersVM
' recupero area della tavola ' recupero area della tavola
Dim ptTableMin As Point3d Dim ptTableMin As Point3d
Dim ptTableMax As Point3d Dim ptTableMax As Point3d
If Not EgtGetTableArea(1, ptTableMin, ptTableMax) Then if Not EgtGetTableArea(1, ptTableMin, ptTableMax) Then
m_FixtureErrorMsg = "Tavola non definita" m_FixtureErrorMsg = "Tavola non definita"
OnPropertyChanged(NameOf(FixtureErrorMsg)) OnPropertyChanged("FixtureErrorMsg")
Return Return
End If End If
' dimensioni tavola ' dimensioni tavola
@@ -129,7 +128,7 @@ Public Class FixtureParametersVM
Dim nAddedFixtureId As Integer = EgtAddFixture(SelectedFixture.Name, ptTableMid, 0, 20) Dim nAddedFixtureId As Integer = EgtAddFixture(SelectedFixture.Name, ptTableMid, 0, 20)
If nAddedFixtureId = GDB_ID.NULL Then If nAddedFixtureId = GDB_ID.NULL Then
m_FixtureErrorMsg = "Impossibile posizionare la ventosa sulla tavola" m_FixtureErrorMsg = "Impossibile posizionare la ventosa sulla tavola"
OnPropertyChanged(NameOf(FixtureErrorMsg)) OnPropertyChanged("FixtureErrorMsg")
Return Return
End If End If
' Se la ventosa ha punti di hook da ancorare ' Se la ventosa ha punti di hook da ancorare
@@ -141,7 +140,6 @@ Public Class FixtureParametersVM
If Not PositionFixtureOnNearestHook(nAddedFixtureId) Then If Not PositionFixtureOnNearestHook(nAddedFixtureId) Then
' non ci sono punti liberi, quindi rimuovo la ventosa e segnalo ' non ci sono punti liberi, quindi rimuovo la ventosa e segnalo
EgtRemoveFixture(nAddedFixtureId) EgtRemoveFixture(nAddedFixtureId)
EgtSetFixtureLink( nAddedFixtureId, "")
MessageBox.Show("No free hook point!", "ERROR") MessageBox.Show("No free hook point!", "ERROR")
Return Return
End If End If
@@ -160,7 +158,7 @@ Public Class FixtureParametersVM
' sottraggo la ventosa aggiunta dal conto di quelle disponibili ' sottraggo la ventosa aggiunta dal conto di quelle disponibili
SelectedFixture.UsedNumber += 1 SelectedFixture.UsedNumber += 1
EgtDraw() EgtDraw()
OnPropertyChanged(NameOf(FixtureErrorMsg)) OnPropertyChanged("FixtureErrorMsg")
End Sub End Sub
' Funzione che cerca una posizione valida per la ventosa libera di muoversi ' Funzione che cerca una posizione valida per la ventosa libera di muoversi
@@ -299,7 +297,6 @@ Public Class FixtureParametersVM
Else Else
DispositionUtility.AddHookUsed( nCurrHookId, nFixtureId) DispositionUtility.AddHookUsed( nCurrHookId, nFixtureId)
End If End If
EgtSetFixtureLink( nFixtureId, "")
Return True Return True
Else Else
EgtStartPoint(nFixtHookId, GDB_ID.ROOT, ptFixtHook) EgtStartPoint(nFixtHookId, GDB_ID.ROOT, ptFixtHook)
@@ -323,7 +320,6 @@ Public Class FixtureParametersVM
Else Else
DispositionUtility.AddHookUsed( nCurrHookId, nFixtureId) DispositionUtility.AddHookUsed( nCurrHookId, nFixtureId)
End If End If
EgtSetFixtureLink( nFixtureId, "")
Return True Return True
Else Else
EgtStartPoint(nFixtHookId, GDB_ID.ROOT, ptFixtHook) EgtStartPoint(nFixtHookId, GDB_ID.ROOT, ptFixtHook)
@@ -352,7 +348,6 @@ Public Class FixtureParametersVM
Else Else
DispositionUtility.AddHookUsed( nCurrHookId, nFixtureId) DispositionUtility.AddHookUsed( nCurrHookId, nFixtureId)
End If End If
EgtSetFixtureLink( nFixtureId, sBarName)
Return True Return True
Else Else
EgtStartPoint(nFixtHookId, GDB_ID.ROOT, ptFixtHook) EgtStartPoint(nFixtHookId, GDB_ID.ROOT, ptFixtHook)
@@ -378,7 +373,6 @@ Public Class FixtureParametersVM
Else Else
DispositionUtility.AddHookUsed( nCurrHookId, nFixtureId) DispositionUtility.AddHookUsed( nCurrHookId, nFixtureId)
End If End If
EgtSetFixtureLink( nFixtureId, sCharName)
Return True Return True
Else Else
EgtStartPoint(nFixtHookId, GDB_ID.ROOT, ptFixtHook) EgtStartPoint(nFixtHookId, GDB_ID.ROOT, ptFixtHook)
@@ -491,7 +485,7 @@ Public Class FixtureType
Set(value As Integer) Set(value As Integer)
If value <> m_TotalNumber Then If value <> m_TotalNumber Then
m_TotalNumber = value m_TotalNumber = value
NotifyPropertyChanged(NameOf(UsedTotalRatio)) NotifyPropertyChanged("UsedTotalRatio")
End If End If
End Set End Set
End Property End Property
@@ -502,15 +496,15 @@ Public Class FixtureType
Set(value As Integer) Set(value As Integer)
If value <> m_UsedNumber Then If value <> m_UsedNumber Then
m_UsedNumber = value m_UsedNumber = value
NotifyPropertyChanged(NameOf(UsedTotalRatio)) NotifyPropertyChanged("UsedTotalRatio")
If UsedNumber >= TotalNumber Then If UsedNumber >= TotalNumber Then
m_IsEnabled = False m_IsEnabled = False
m_IsSelected = False m_IsSelected = False
NotifyPropertyChanged(NameOf(IsSelected)) NotifyPropertyChanged("IsSelected")
Else Else
m_IsEnabled = True m_IsEnabled = True
End If End If
NotifyPropertyChanged(NameOf(IsEnabled)) NotifyPropertyChanged("IsEnabled")
End If End If
End Set End Set
End Property End Property
@@ -7,7 +7,7 @@
<CheckBox Content="Move with Fixture" IsChecked="{Binding MoveWithFixture, Mode=TwoWay}"/> <CheckBox Content="Move with Fixture" IsChecked="{Binding MoveWithFixture, Mode=TwoWay}"/>
<UniformGrid Columns="2" Margin="0,5,0,0"> <UniformGrid Columns="2" Margin="0,5,0,0">
<Button Content="New" Command="{Binding NewRawPartCommand}"/> <Button Content="New" Command="{Binding NewRawPartCommand}"/>
<Button Content="Remove" Command="{Binding RemoveRawPartCommand}"/> <Button Content="Remove"/> <!--Command="{Binding RemoveRawPartCommand}"-->
</UniformGrid> </UniformGrid>
<Grid Visibility="{Binding RawPartParamVisibility, Mode=OneWay}"> <Grid Visibility="{Binding RawPartParamVisibility, Mode=OneWay}">
<Grid.RowDefinitions> <Grid.RowDefinitions>
@@ -1,4 +1,5 @@
Imports EgtUILib Imports System.ComponentModel
Imports EgtUILib
Public Class RawPartOptionVM Public Class RawPartOptionVM
Inherits ViewModelBase Inherits ViewModelBase
@@ -34,7 +35,7 @@ Public Class RawPartOptionVM
End If End If
EgtDraw() EgtDraw()
m_MoveWithFixture = value m_MoveWithFixture = value
OnPropertyChanged(NameOf(MoveWithFixture)) OnPropertyChanged("MoveWithFixture")
End If End If
End Set End Set
End Property End Property
@@ -55,32 +56,32 @@ Public Class RawPartOptionVM
Public ReadOnly Property NewMsg As String Public ReadOnly Property NewMsg As String
Get Get
Return EgtMsg(5433) ' Nuovo Return EgtMsg(MSG_DISPOSITION + 3)
End Get End Get
End Property End Property
Public ReadOnly Property RemoveMsg As String Public ReadOnly Property RemoveMsg As String
Get Get
Return EgtMsg(5434) ' Rimuovi Return EgtMsg(MSG_DISPOSITION + 4)
End Get End Get
End Property End Property
Public ReadOnly Property LenghtMsg As String Public ReadOnly Property LenghtMsg As String
Get Get
Return EgtMsg(5435) ' Lunghezza Return EgtMsg(MSG_DISPOSITION + 5)
End Get End Get
End Property End Property
Public ReadOnly Property WidthMsg As String Public ReadOnly Property WidthMsg As String
Get Get
Return EgtMsg(5436) ' Larghezza Return EgtMsg(MSG_DISPOSITION + 6)
End Get End Get
End Property End Property
Public ReadOnly Property HeightMsg As String Public ReadOnly Property HeightMsg As String
Get Get
Return EgtMsg(5437) ' Altezza Return EgtMsg(MSG_DISPOSITION + 7)
End Get End Get
End Property End Property
Public ReadOnly Property PositionMsg As String Public ReadOnly Property PositionMsg As String
Get Get
Return EgtMsg(5438) ' Posizione Return EgtMsg(MSG_DISPOSITION + 8)
End Get End Get
End Property End Property
@@ -116,46 +117,16 @@ Public Class RawPartOptionVM
End Property End Property
''' <summary> ''' <summary>
''' Execute NewRawPart. This method is invoked by the DoneCommand. ''' Execute the Point. This method is invoked by the DoneCommand.
''' </summary> ''' </summary>
Public Sub NewRawPart() Public Sub NewRawPart()
DispositionUtility.ShowParts() DispositionUtility.ShowParts()
m_bRawPartParamVisibility = Visibility.Visible m_bRawPartParamVisibility = Visibility.Visible
OnPropertyChanged(NameOf(RawPartParamVisibility)) OnPropertyChanged("RawPartParamVisibility")
End Sub End Sub
#End Region ' NewRawPartCommand #End Region ' NewRawPartCommand
#Region "RemoveRawPartCommand"
''' <summary>
''' Returns a command that do Done.
''' </summary>
Public ReadOnly Property RemoveRawPartCommand As ICommand
Get
If m_cmdRemoveRawPart Is Nothing Then
m_cmdRemoveRawPart = New RelayCommand(AddressOf RemoveRawPart)
End If
Return m_cmdRemoveRawPart
End Get
End Property
''' <summary>
''' Execute RemoveRawPart. This method is invoked by the DoneCommand.
''' </summary>
Public Sub RemoveRawPart()
' ciclo sui grezzi selezionati
Dim nSelRawPartId As Integer = EgtGetFirstSelectedObj()
While nSelRawPartId <> GDB_ID.NULL
' rimuovo il grezzo dalla disposizione
EgtRemoveRawPart(nSelRawPartId)
nSelRawPartId = EgtGetNextSelectedObj()
End While
EgtDraw()
End Sub
#End Region ' RemoveRawPartCommand
#End Region ' Commands #End Region ' Commands
End Class End Class
@@ -1,12 +1,76 @@
<UserControl x:Class="BeamMillingParameterExpanderV" <UserControl x:Class="BeamMillingParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -45,6 +109,34 @@
Visibility="{Binding SysNotes_Visibility}" Visibility="{Binding SysNotes_Visibility}"
IsReadOnly="True"/> IsReadOnly="True"/>
</UniformGrid> </UniformGrid>
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
ParamChBx="{Binding Path=Invert,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource CheckParamV_Margin}"/>
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding WorkSideTxBl}"
ParamCmBxList="{Binding Path=WorkSideList,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamCmBxSelIndex="{Binding Path=SelectedWorkSide}"
Style="{DynamicResource ComboParamV_Margin}"/>
<UniformGrid Columns="2">
<TextBlock Text="{Binding UserNotesTxBl}"
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding UserNotes, UpdateSourceTrigger=PropertyChanged}"
Style="{DynamicResource MPExpander_UserNotesTxBxMargin}">
<EgtWPFLib5:EgtTextBox.ToolTip>
<TextBlock Text="{Binding UserNotesTooltip}"/>
</EgtWPFLib5:EgtTextBox.ToolTip>
</EgtWPFLib5:EgtTextBox>
<TextBlock Text="{Binding SystemNotesTxBl}"
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"
Visibility="{Binding SysNotes_Visibility}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding SystemNotes, UpdateSourceTrigger=PropertyChanged}"
Style="{DynamicResource MPExpander_UserNotesTxBxMargin}"
Visibility="{Binding SysNotes_Visibility}"
IsReadOnly="True"/>
</UniformGrid>
</StackPanel> </StackPanel>
<StackPanel Name="AutomaticCloseExpanderStackPanel"> <StackPanel Name="AutomaticCloseExpanderStackPanel">
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander" <Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
@@ -172,7 +264,7 @@
IsReadOnly="False"/> IsReadOnly="False"/>
</TabItem> </TabItem>
<TabItem Header="CHECKBOX"> <TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/> <CheckBox IsChecked="{Binding Value}"/>
</TabItem> </TabItem>
</TabControl> </TabControl>
<Button Command="{Binding RemoveItemNoteCommand}" <Button Command="{Binding RemoveItemNoteCommand}"
@@ -202,6 +294,43 @@
</Grid> </Grid>
</Expander> </Expander>
<Expander Style="{StaticResource ExpanderStyle}">
<Expander.Header>
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadInTypeTxBl}"
ParamCmBxList="{Binding Path=LeadInTypeList,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamCmBxSelIndex="{Binding Path=SelectedLeadInType}"
Style="{DynamicResource ComboParamV_Margin}"/>
</Expander.Header>
<StackPanel>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartAddLenTxBl}"
ParamTxBx="{Binding Path=StartAddLen,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiTangTxBl}"
ParamTxBx="{Binding Path=LiTang,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiPerpTxBl}"
ParamTxBx="{Binding Path=LiPerp,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiElevTxBl}"
ParamTxBx="{Binding Path=LiElev,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiCompLenTxBl}"
ParamTxBx="{Binding Path=LiCompLen,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
</StackPanel>
</Expander>
<Expander Style="{StaticResource ExpanderStyle}"> <Expander Style="{StaticResource ExpanderStyle}">
<Expander.Header> <Expander.Header>
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadInTypeTxBl}" <EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadInTypeTxBl}"
@@ -240,6 +369,43 @@
</StackPanel> </StackPanel>
</Expander> </Expander>
<Expander Style="{StaticResource ExpanderStyle}">
<Expander.Header>
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadOutTypeTxBl}"
ParamCmBxList="{Binding Path=LeadOutTypeList,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamCmBxSelIndex="{Binding Path=SelectedLeadOutType}"
Style="{DynamicResource ComboParamV_Margin}"/>
</Expander.Header>
<StackPanel>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndAddLenTxBl}"
ParamTxBx="{Binding Path=EndAddLen,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoTangTxBl}"
ParamTxBx="{Binding Path=LoTang,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoPerpTxBl}"
ParamTxBx="{Binding Path=LoPerp,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoElevTxBl}"
ParamTxBx="{Binding Path=LoElev,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoCompLenTxBl}"
ParamTxBx="{Binding Path=LoCompLen,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
</StackPanel>
</Expander>
<Expander Style="{StaticResource ExpanderStyle}"> <Expander Style="{StaticResource ExpanderStyle}">
<Expander.Header> <Expander.Header>
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadOutTypeTxBl}" <EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadOutTypeTxBl}"
@@ -278,6 +444,53 @@
</StackPanel> </StackPanel>
</Expander> </Expander>
<Expander Style="{StaticResource ExpanderStyle}">
<Expander.Header>
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding LeaveTabTxBl}"
ParamChBx="{Binding Path=LeaveTab,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource CheckParamV_Margin}"/>
</Expander.Header>
<StackPanel Margin="2">
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabLenTxBl}"
ParamTxBx="{Binding Path=TabLen,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamErrorMsg="{Binding Path=TabLenErrorMsg}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabHeightTxBl}"
ParamTxBx="{Binding Path=TabHeight,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamErrorMsg="{Binding Path=TabHeightErrorMsg}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabAngleTxBl}"
ParamTxBx="{Binding Path=TabAngle,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamErrorMsg="{Binding Path=TabAngleErrorMsg}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabDistTxBl}"
ParamTxBx="{Binding Path=TabDist,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamErrorMsg="{Binding Path=TabDistErrorMsg}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabMinTxBl}"
ParamTxBx="{Binding Path=TabMin,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamErrorMsg="{Binding Path=TabMinErrorMsg}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabMaxTxBl}"
ParamTxBx="{Binding Path=TabMax,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamErrorMsg="{Binding Path=TabMaxErrorMsg}"
Style="{DynamicResource StringParamV_Margin}"/>
</StackPanel>
</Expander>
<Expander Style="{StaticResource ExpanderStyle}"> <Expander Style="{StaticResource ExpanderStyle}">
<Expander.Header> <Expander.Header>
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding LeaveTabTxBl}" <EgtWPFLib5:CheckParamV ParamTxBl="{Binding LeaveTabTxBl}"
@@ -358,7 +571,7 @@
Style="{DynamicResource StringParamV_Margin}"/> Style="{DynamicResource StringParamV_Margin}"/>
</StackPanel> </StackPanel>
</Expander> </Expander>
<Interactivity:Interaction.Behaviors> <Interactivity:Interaction.Behaviors>
<EgtCAM5:AutomaticCloseExpander/> <EgtCAM5:AutomaticCloseExpander/>
</Interactivity:Interaction.Behaviors> </Interactivity:Interaction.Behaviors>
@@ -1,4 +1,5 @@
Imports EgtWPFLib5.EgtFloating Imports EgtWPFLib5
Imports EgtWPFLib5.EgtFloating
Public Class BeamMillingParameterExpanderV Public Class BeamMillingParameterExpanderV
@@ -7,7 +7,70 @@
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -161,7 +224,7 @@
IsReadOnly="False"/> IsReadOnly="False"/>
</TabItem> </TabItem>
<TabItem Header="CHECKBOX"> <TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/> <CheckBox IsChecked="{Binding Value}"/>
</TabItem> </TabItem>
</TabControl> </TabControl>
<Button Command="{Binding RemoveItemNoteCommand}" <Button Command="{Binding RemoveItemNoteCommand}"
@@ -1,4 +1,5 @@
Imports EgtWPFLib5.EgtFloating Imports EgtWPFLib5
Imports EgtWPFLib5.EgtFloating
Public Class ChiselingParameterExpanderV Public Class ChiselingParameterExpanderV
@@ -1,12 +1,76 @@
<UserControl x:Class="FiveAxisMachinigParameterExpanderV" <UserControl x:Class="FiveAxisMachinigParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -80,4 +80,16 @@ Public Class FiveAxisMachinigParameterExpanderV
Return TryCast(target, T) Return TryCast(target, T)
End Function End Function
Private Sub StackPanel_PreviewKeyDown(sender As Object, e As KeyEventArgs)
If e.Key = Key.Tab Then
Dim s As EgtWPFLib5.StringParamV = TryCast(e.OriginalSource, EgtWPFLib5.StringParamV)
If Not IsNothing(s) Then
s.MoveFocus(New TraversalRequest(FocusNavigationDirection.Next))
End If
e.Handled = True
End If
End Sub
End Class End Class
@@ -1,12 +1,76 @@
<UserControl x:Class="GenMachiningParameterExpanderV" <UserControl x:Class="GenMachiningParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -150,7 +214,7 @@
IsReadOnly="False"/> IsReadOnly="False"/>
</TabItem> </TabItem>
<TabItem Header="CHECKBOX"> <TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/> <CheckBox IsChecked="{Binding Value}"/>
</TabItem> </TabItem>
</TabControl> </TabControl>
<Button Command="{Binding RemoveItemNoteCommand}" <Button Command="{Binding RemoveItemNoteCommand}"
@@ -1,4 +1,5 @@
Imports EgtWPFLib5.EgtFloating Imports EgtWPFLib5
Imports EgtWPFLib5.EgtFloating
Public Class GenMachiningParameterExpanderV Public Class GenMachiningParameterExpanderV
@@ -1,10 +1,78 @@
<UserControl x:Class="MachiningParameterExpanderV" <UserControl x:Class="MachiningParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtCAM5="clr-namespace:EgtCAM5"> xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
<sys:Int32 x:Key="TabMax">62</sys:Int32>
<sys:Int32 x:Key="TabMin">63</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel> <StackPanel>
@@ -1,3 +1,6 @@
Imports EgtWPFLib5
Imports EgtWPFLib5.EgtFloating
Public Class MachiningParameterExpanderV Public Class MachiningParameterExpanderV
Sub New() Sub New()
@@ -1,4 +1,6 @@
Imports EgtUILib Imports System.ComponentModel
Imports System.Collections.ObjectModel
Imports EgtUILib
Imports EgtWPFLib5 Imports EgtWPFLib5
Public Class MachiningParameterExpanderVM Public Class MachiningParameterExpanderVM
@@ -72,7 +74,7 @@ Public Class MachiningParameterExpanderVM
End Property End Property
Friend Sub SetViewTool(value As Boolean) Friend Sub SetViewTool(value As Boolean)
ViewTool = value ViewTool = value
NotifyPropertyChanged(NameOf(ViewTool)) NotifyPropertyChanged("ViewTool")
End Sub End Sub
' Slider per muovere l'utensile in aggiunta ai pulsanti indietro e avanti ' Slider per muovere l'utensile in aggiunta ai pulsanti indietro e avanti
@@ -83,15 +85,15 @@ Public Class MachiningParameterExpanderVM
End Get End Get
End Property End Property
Friend Sub SetSliderScale(value As Integer) Friend Sub SetSliderScale(value As Integer)
m_SliderScale = Math.Max(value, 1) m_SliderScale = Math.Max( value, 1)
If m_SliderScale <= 10 Then If m_SliderScale <= 10 Then
m_SliderTick = 1 m_SliderTick = 1
Else Else
m_SliderTick = CInt(m_SliderScale / 10) m_SliderTick = CInt( m_SliderScale / 10)
End If End If
NotifyPropertyChanged(NameOf(SliderScale)) NotifyPropertyChanged( NameOf(SliderScale))
NotifyPropertyChanged(NameOf(SliderTick)) NotifyPropertyChanged( NameOf(SliderTick))
End Sub End Sub
Private m_SliderTick As Integer = 10 Private m_SliderTick As Integer = 10
Public ReadOnly Property SliderTick As Integer Public ReadOnly Property SliderTick As Integer
@@ -276,6 +278,9 @@ Public Class MachiningParameterExpanderVM
SurfRoughExpanderV.DataContext = m_CurrOperation SurfRoughExpanderV.DataContext = m_CurrOperation
Return SurfRoughExpanderV Return SurfRoughExpanderV
End Select End Select
'MachiningParameterExpanderItem.ReadOperationParam()
Return Nothing Return Nothing
End Get End Get
End Property End Property
@@ -284,25 +289,25 @@ Public Class MachiningParameterExpanderVM
Public ReadOnly Property UpdateMachiningBtnMsg As String Public ReadOnly Property UpdateMachiningBtnMsg As String
Get Get
Return EgtMsg(5403) ' Applica Lavorazione Return EgtMsg(MSG_OPERATION + 3) 'Applica Lavorazione
End Get End Get
End Property End Property
Public ReadOnly Property ViewToolBtnMsg As String Public ReadOnly Property ViewToolBtnMsg As String
Get Get
Return EgtMsg(5413) ' Anteprima Utensile Return EgtMsg(MSG_OPERATION + 13) 'Anteprima Utensile
End Get End Get
End Property End Property
Public ReadOnly Property NextStepToolBtnMsg As String Public ReadOnly Property NextStepToolBtnMsg As String
Get Get
Return EgtMsg(5414) ' Avanti Return EgtMsg(MSG_OPERATION + 14) 'Avanti
End Get End Get
End Property End Property
Public ReadOnly Property PrevStepToolBtnMsg As String Public ReadOnly Property PrevStepToolBtnMsg As String
Get Get
Return EgtMsg(5415) ' Indietro Return EgtMsg(MSG_OPERATION + 15) 'Indietro
End Get End Get
End Property End Property
@@ -318,7 +323,7 @@ Public Class MachiningParameterExpanderVM
Sub New() Sub New()
EgtWPFLib5.MachiningDbWindowVM.m_sMachineIniPath = IniFile.m_sCurrMachIniFilePath EgtWPFLib5.MachiningDbWindowVM.m_sMachineIniPath = IniFile.m_sCurrMachIniFilePath
Map.SetRefMachiningParameterExpanderVM(Me) Map.SetRefMachiningParameterExpanderVM(Me)
NotifyPropertyChanged(NameOf(ParamExpanderPageV)) NotifyPropertyChanged("ParamExpanderPageV")
End Sub End Sub
#End Region ' Constructor #End Region ' Constructor
@@ -362,8 +367,7 @@ Public Class MachiningParameterExpanderVM
sErrorList += Environment.NewLine + " - " + m_CurrOperation.GetErrorString([property]) sErrorList += Environment.NewLine + " - " + m_CurrOperation.GetErrorString([property])
End If End If
Next [property] Next [property]
'MessageBox.Show(EgtMsg(5423) + sErrorList, EgtMsg(30009), MessageBoxButton.OK, MessageBoxImage.Exclamation) MessageBox.Show(EgtMsg(5423) + sErrorList, EgtMsg(30009), MessageBoxButton.OK, MessageBoxImage.Exclamation)
EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(5423) + sErrorList, EgtMsg(30009), MessageBoxButton.OK, MessageBoxImage.Exclamation) ' La lavorazione non può essere applicata per i seguenti motivi: ATTENZIONE
Return Return
End If End If
@@ -442,12 +446,10 @@ Public Class MachiningParameterExpanderVM
Dim sInfo As String = String.Empty Dim sInfo As String = String.Empty
EgtGetOutstrokeInfo(sInfo) EgtGetOutstrokeInfo(sInfo)
If Not String.IsNullOrEmpty(sInfo) Then sErr &= " " & sInfo If Not String.IsNullOrEmpty(sInfo) Then sErr &= " " & sInfo
'MessageBox.Show(sErr, EgtMsg(5305), MessageBoxButton.OK, MessageBoxImage.Exclamation) MessageBox.Show(sErr, EgtMsg(5305), MessageBoxButton.OK, MessageBoxImage.Exclamation)
EgtMessageBoxV.Show(Application.Current.MainWindow, sErr, EgtMsg(5305), MessageBoxButton.OK, MessageBoxImage.Exclamation) ' ERRORE
Else Else
' Errore nel calcolo della lavorazione! ' Errore nel calcolo della lavorazione!
'MessageBox.Show(EgtMsg(5345), EgtMsg(5305), MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(EgtMsg(5345), EgtMsg(5305), MessageBoxButton.OK, MessageBoxImage.Error)
EgtMessageBoxV.Show(Application.Current.MainWindow, EgtMsg(5345), EgtMsg(5305), MessageBoxButton.OK, MessageBoxImage.Error) ' Errore nel calcolo della lavorazione! ERRORE
End If End If
Else Else
If EgtGetMachMgrWarningId(0) <> 0 Then If EgtGetMachMgrWarningId(0) <> 0 Then
@@ -472,16 +474,67 @@ Public Class MachiningParameterExpanderVM
Private Sub IsModified(IsModified As Boolean) Handles m_CurrOperation.m_IsModified Private Sub IsModified(IsModified As Boolean) Handles m_CurrOperation.m_IsModified
m_CurrOperation_IsModified = IsModified m_CurrOperation_IsModified = IsModified
NotifyPropertyChanged(NameOf(UpdateMachiningBtn_Background)) ' NotifyPropertyChanged("CurrOperation_IsModified")
NotifyPropertyChanged("UpdateMachiningBtn_Background")
End Sub End Sub
Private Sub ErrorOnOperation(ErrorOnOperation As Boolean) Handles m_CurrOperation.m_ErrorOnOperation Private Sub ErrorOnOperation(ErrorOnOperation As Boolean) Handles m_CurrOperation.m_ErrorOnOperation
m_CurrOperation_ErrorOnOperation = ErrorOnOperation m_CurrOperation_ErrorOnOperation = ErrorOnOperation
NotifyPropertyChanged(NameOf(UpdateMachiningBtn_Background)) ' NotifyPropertyChanged("CurrOperation_ErrorOnOperation")
NotifyPropertyChanged("UpdateMachiningBtn_Background")
End Sub End Sub
End Class End Class
''' <summary>
''' Class that represent a Converter that use machining type and param type, to set the visibility state of the param type.
''' </summary>
Public Class OperationParamVisibilityConverter
Implements IValueConverter
Public Function Convert(value As Object, targetType As Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements IValueConverter.Convert
Select Case CInt(value)
Case MCH_OY.NONE
Return Visibility.Hidden
Case MCH_OY.DISP
Return TMDbParamVisibility.OperationDisposition(CInt(parameter))
Case MCH_OY.DRILLING
Return TMDbParamVisibility.Drilling(CInt(parameter))
Case MCH_OY.SAWING
Return TMDbParamVisibility.Sawing(CInt(parameter))
Case MCH_OY.MILLING
Return TMDbParamVisibility.Milling(CInt(parameter))
Case MCH_OY.POCKETING
Return TMDbParamVisibility.Pocketing(CInt(parameter))
Case MCH_OY.MORTISING
Return TMDbParamVisibility.Mortising(CInt(parameter))
Case MCH_OY.SAWROUGHING
Return TMDbParamVisibility.Sawroughing(CInt(parameter))
Case MCH_OY.SAWFINISHING
Return TMDbParamVisibility.Sawfinishing(CInt(parameter))
Case MCH_OY.GENMACHINING
Return TMDbParamVisibility.GenMachining(CInt(parameter))
Case MCH_OY.CHISELING
Return TMDbParamVisibility.Chiseling(CInt(parameter))
Case MCH_OY.SURFFINISHING
Return TMDbParamVisibility.SurfFinishing(CInt(parameter))
Case MCH_OY.SURFROUGHING
Return TMDbParamVisibility.SurfRoughing(CInt(parameter))
Case MCH_OY.WATERJETTING
Return TMDbParamVisibility.WaterJetting(CInt(parameter))
Case MCH_OY.FIVEAXISMILLING
Return TMDbParamVisibility.FiveAxMachining(CInt(parameter))
Case Else
Return Visibility.Hidden
End Select
End Function
Public Function ConvertBack(value As Object, targetType As Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements IValueConverter.ConvertBack
Throw New NotImplementedException
End Function
End Class
''' <summary> ''' <summary>
''' Class that represent a Converter that convert mm in inch if necessary for the param depth. ''' Class that represent a Converter that convert mm in inch if necessary for the param depth.
''' </summary> ''' </summary>
@@ -1,12 +1,76 @@
<UserControl x:Class="MortisingParameterExpanderV" <UserControl x:Class="MortisingParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -168,7 +232,7 @@
IsReadOnly="False"/> IsReadOnly="False"/>
</TabItem> </TabItem>
<TabItem Header="CHECKBOX"> <TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/> <CheckBox IsChecked="{Binding Value}"/>
</TabItem> </TabItem>
</TabControl> </TabControl>
<Button Command="{Binding RemoveItemNoteCommand}" <Button Command="{Binding RemoveItemNoteCommand}"
@@ -1,4 +1,5 @@
Imports EgtWPFLib5.EgtFloating Imports EgtWPFLib5
Imports EgtWPFLib5.EgtFloating
Public Class MortisingParameterExpanderV Public Class MortisingParameterExpanderV
@@ -1,12 +1,76 @@
<UserControl x:Class="PocketingParameterExpanderV" <UserControl x:Class="PocketingParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -65,13 +129,13 @@
UpdateSourceTrigger=PropertyChanged, UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}" ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/> Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}" <EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
ParamTxBx="{Binding Path=OffSr, ParamTxBx="{Binding Path=OffSl,
UpdateSourceTrigger=PropertyChanged, UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}" ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/> Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}" <EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
ParamTxBx="{Binding Path=OffSl, ParamTxBx="{Binding Path=OffSr,
UpdateSourceTrigger=PropertyChanged, UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}" ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/> Style="{DynamicResource StringParamV_Margin}"/>
@@ -177,7 +241,7 @@
IsReadOnly="False"/> IsReadOnly="False"/>
</TabItem> </TabItem>
<TabItem Header="CHECKBOX"> <TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/> <CheckBox IsChecked="{Binding Value}"/>
</TabItem> </TabItem>
</TabControl> </TabControl>
<Button Command="{Binding RemoveItemNoteCommand}" <Button Command="{Binding RemoveItemNoteCommand}"
@@ -1,4 +1,5 @@
Imports EgtWPFLib5.EgtFloating Imports EgtWPFLib5
Imports EgtWPFLib5.EgtFloating
Public Class PocketingParameterExpanderV Public Class PocketingParameterExpanderV
@@ -1,12 +1,76 @@
<UserControl x:Class="StoneDrillingParameterExpanderV" <UserControl x:Class="StoneDrillingParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -149,7 +213,7 @@
IsReadOnly="False"/> IsReadOnly="False"/>
</TabItem> </TabItem>
<TabItem Header="CHECKBOX"> <TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/> <CheckBox IsChecked="{Binding Value}"/>
</TabItem> </TabItem>
</TabControl> </TabControl>
<Button Command="{Binding RemoveItemNoteCommand}" <Button Command="{Binding RemoveItemNoteCommand}"
@@ -1,4 +1,5 @@
Imports EgtWPFLib5.EgtFloating Imports EgtWPFLib5
Imports EgtWPFLib5.EgtFloating
Public Class StoneDrillingParameterExpanderV Public Class StoneDrillingParameterExpanderV
@@ -1,12 +1,76 @@
<UserControl x:Class="StoneMillingParameterExpanderV" <UserControl x:Class="StoneMillingParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -153,7 +217,7 @@
IsReadOnly="False"/> IsReadOnly="False"/>
</TabItem> </TabItem>
<TabItem Header="CHECKBOX"> <TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/> <CheckBox IsChecked="{Binding Value}"/>
</TabItem> </TabItem>
</TabControl> </TabControl>
<Button Command="{Binding RemoveItemNoteCommand}" <Button Command="{Binding RemoveItemNoteCommand}"
@@ -1,4 +1,5 @@
Imports EgtWPFLib5.EgtFloating Imports EgtWPFLib5
Imports EgtWPFLib5.EgtFloating
Public Class StoneMillingParameterExpanderV Public Class StoneMillingParameterExpanderV
@@ -1,12 +1,76 @@
<UserControl x:Class="StoneSawFinishingParameterExpanderV" <UserControl x:Class="StoneSawFinishingParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -147,7 +211,7 @@
IsReadOnly="False"/> IsReadOnly="False"/>
</TabItem> </TabItem>
<TabItem Header="CHECKBOX"> <TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/> <CheckBox IsChecked="{Binding Value}"/>
</TabItem> </TabItem>
</TabControl> </TabControl>
<Button Command="{Binding RemoveItemNoteCommand}" <Button Command="{Binding RemoveItemNoteCommand}"
@@ -1,4 +1,5 @@
Imports EgtWPFLib5.EgtFloating Imports EgtWPFLib5
Imports EgtWPFLib5.EgtFloating
Public Class StoneSawFinishingParameterExpanderV Public Class StoneSawFinishingParameterExpanderV
@@ -1,12 +1,76 @@
<UserControl x:Class="StoneSawRoughingParameterExpanderV" <UserControl x:Class="StoneSawRoughingParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -145,7 +209,7 @@
IsReadOnly="False"/> IsReadOnly="False"/>
</TabItem> </TabItem>
<TabItem Header="CHECKBOX"> <TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/> <CheckBox IsChecked="{Binding Value}"/>
</TabItem> </TabItem>
</TabControl> </TabControl>
<Button Command="{Binding RemoveItemNoteCommand}" <Button Command="{Binding RemoveItemNoteCommand}"
@@ -1,4 +1,5 @@
Imports EgtWPFLib5.EgtFloating Imports EgtWPFLib5
Imports EgtWPFLib5.EgtFloating
Public Class StoneSawRoughingParameterExpanderV Public Class StoneSawRoughingParameterExpanderV
@@ -1,12 +1,76 @@
<UserControl x:Class="StoneSawingParameterExpanderV" <UserControl x:Class="StoneSawingParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -153,7 +217,7 @@
IsReadOnly="False"/> IsReadOnly="False"/>
</TabItem> </TabItem>
<TabItem Header="CHECKBOX"> <TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/> <CheckBox IsChecked="{Binding Value}"/>
</TabItem> </TabItem>
</TabControl> </TabControl>
<Button Command="{Binding RemoveItemNoteCommand}" <Button Command="{Binding RemoveItemNoteCommand}"
@@ -1,4 +1,5 @@
Imports EgtWPFLib5.EgtFloating Imports EgtWPFLib5
Imports EgtWPFLib5.EgtFloating
Public Class StoneSawingParameterExpanderV Public Class StoneSawingParameterExpanderV
@@ -1,12 +1,76 @@
<UserControl x:Class="SurfFinishingParameterExpanderV" <UserControl x:Class="SurfFinishingParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -60,6 +124,12 @@
UpdateSourceTrigger=PropertyChanged, UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}" ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/> Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadLinkTypeTxBl}"
ParamCmBxList="{Binding Path=LeadLinkTypeList,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamCmBxSelIndex="{Binding Path=SelectedLeadLinkType}"
Style="{DynamicResource ComboParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideAngleTxBl}" <EgtWPFLib5:StringParamV ParamTxBl="{Binding SideAngleTxBl}"
ParamTxBx="{Binding Path=SideAngle, ParamTxBx="{Binding Path=SideAngle,
UpdateSourceTrigger=PropertyChanged, UpdateSourceTrigger=PropertyChanged,
@@ -160,7 +230,7 @@
IsReadOnly="False"/> IsReadOnly="False"/>
</TabItem> </TabItem>
<TabItem Header="CHECKBOX"> <TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/> <CheckBox IsChecked="{Binding Value}"/>
</TabItem> </TabItem>
</TabControl> </TabControl>
<Button Command="{Binding RemoveItemNoteCommand}" <Button Command="{Binding RemoveItemNoteCommand}"
@@ -1,4 +1,5 @@
Imports EgtWPFLib5.EgtFloating Imports EgtWPFLib5
Imports EgtWPFLib5.EgtFloating
Public Class SurfFinishingParameterExpanderV Public Class SurfFinishingParameterExpanderV
@@ -1,12 +1,76 @@
<UserControl x:Class="SurfRoughingParameterExpanderV" <UserControl x:Class="SurfRoughingParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -1,12 +1,76 @@
<UserControl x:Class="WaterjettingParameterExpanderV" <UserControl x:Class="WaterjettingParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -135,7 +199,7 @@
IsReadOnly="False"/> IsReadOnly="False"/>
</TabItem> </TabItem>
<TabItem Header="CHECKBOX"> <TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/> <CheckBox IsChecked="{Binding Value}"/>
</TabItem> </TabItem>
</TabControl> </TabControl>
<Button Command="{Binding RemoveItemNoteCommand}" <Button Command="{Binding RemoveItemNoteCommand}"
@@ -1,4 +1,5 @@
Imports EgtWPFLib5.EgtFloating Imports EgtWPFLib5
Imports EgtWPFLib5.EgtFloating
Public Class WaterjettingParameterExpanderV Public Class WaterjettingParameterExpanderV
@@ -1,12 +1,76 @@
<UserControl x:Class="WoodDrillingParameterExpanderV" <UserControl x:Class="WoodDrillingParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -154,7 +218,7 @@
IsReadOnly="False"/> IsReadOnly="False"/>
</TabItem> </TabItem>
<TabItem Header="CHECKBOX"> <TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/> <CheckBox IsChecked="{Binding Value}"/>
</TabItem> </TabItem>
</TabControl> </TabControl>
<Button Command="{Binding RemoveItemNoteCommand}" <Button Command="{Binding RemoveItemNoteCommand}"
@@ -1,4 +1,5 @@
Imports EgtWPFLib5.EgtFloating Imports EgtWPFLib5
Imports EgtWPFLib5.EgtFloating
Public Class WoodDrillingParameterExpanderV Public Class WoodDrillingParameterExpanderV
@@ -1,12 +1,76 @@
<UserControl x:Class="WoodMillingParameterExpanderV" <UserControl x:Class="WoodMillingParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5" xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"> xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources> <UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources> </UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel"> <StackPanel Name="OperationParametersStackPanel">
@@ -172,7 +236,7 @@
IsReadOnly="False"/> IsReadOnly="False"/>
</TabItem> </TabItem>
<TabItem Header="CHECKBOX"> <TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/> <CheckBox IsChecked="{Binding Value}"/>
</TabItem> </TabItem>
</TabControl> </TabControl>
<Button Command="{Binding RemoveItemNoteCommand}" <Button Command="{Binding RemoveItemNoteCommand}"

Some files were not shown because too many files have changed in this diff Show More