Compare commits
12 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 1ddb8a27fb | |||
| 41ca5127c6 | |||
| 860823c929 | |||
| 9cd0b4aefa | |||
| 6fc916051c | |||
| 8df36d2768 | |||
| 997ca13934 | |||
| 9b6761af37 | |||
| 732c05fd9c | |||
| 71372bf51a | |||
| a63089a0c8 | |||
| 5d6c666128 |
@@ -3,60 +3,60 @@
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
|
||||
DockPanel.Dock="Bottom">
|
||||
|
||||
<Grid Visibility="{Binding Top_Visibility}"
|
||||
|
||||
<Grid Visibility="{Binding Top_Visibility}"
|
||||
Margin="0,0,0,5">
|
||||
|
||||
<TextBlock Text="{Binding TopMsg}"/>
|
||||
<CheckBox IsChecked="{Binding TopIsChecked}"
|
||||
<TextBlock Text="{Binding TopMsg}" Foreground="{DynamicResource Omag_White}"/>
|
||||
<CheckBox IsChecked="{Binding TopIsChecked}"
|
||||
HorizontalAlignment="Right" Margin="6,0,6,0"/>
|
||||
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
<Button Content="{Binding TrfDataMsg}"
|
||||
<Button Content="{Binding TrfDataMsg}"
|
||||
Command="{Binding TrfData_Command}"
|
||||
Visibility="{Binding TrfData_Visibility}"
|
||||
Margin="0,0,0,5"
|
||||
Style="{StaticResource CompoWindow_Button}"/>
|
||||
|
||||
<Button Content="{Binding CsvDataMsg}"
|
||||
<Button Content="{Binding CsvDataMsg}"
|
||||
Command="{Binding CsvData_Command}"
|
||||
Visibility="{Binding CsvData_Visibility}"
|
||||
Margin="0,0,0,5"
|
||||
Style="{StaticResource CompoWindow_Button}"/>
|
||||
|
||||
<Grid Visibility="{Binding PartName_Visibility}"
|
||||
<Grid Visibility="{Binding PartName_Visibility}"
|
||||
Margin="0,0,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<TextBlock Text="{Binding PartNameMsg}" Grid.Column="0"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding PartName}" Grid.Column="1" Width="130"/>
|
||||
<TextBlock Text="{Binding PartNameMsg}" Grid.Column="0" Foreground="{DynamicResource Omag_White}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding PartName}" Grid.Column="1" Width="130"/>
|
||||
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
<Grid Visibility="{Binding PartNum_Visibility}"
|
||||
<Grid Visibility="{Binding PartNum_Visibility}"
|
||||
Margin="0,0,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<TextBlock Text="{Binding PartNumMsg}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding PartNum}" Grid.Column="1" Width="60"/>
|
||||
<TextBlock Text="{Binding PartNumMsg}" Foreground="{DynamicResource Omag_White}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding PartNum}" Grid.Column="1" Width="60"/>
|
||||
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
<UniformGrid Columns="2"
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5"
|
||||
Visibility="{Binding OkExit_Visibility}">
|
||||
<Button Content="{Binding OkMsg}"
|
||||
<Button Content="{Binding OkMsg}"
|
||||
Command="{Binding OkCommand}"
|
||||
Style="{StaticResource CompoWindow_Button}"/>
|
||||
<Button Content="{Binding ExitMsg}" IsCancel="True"
|
||||
<Button Content="{Binding ExitMsg}" IsCancel="True"
|
||||
Style="{StaticResource CompoWindow_Button}"/>
|
||||
</UniformGrid>
|
||||
</UniformGrid>
|
||||
|
||||
</StackPanel>
|
||||
|
||||
@@ -4,13 +4,13 @@
|
||||
xmlns:OmagOFFICE="clr-namespace:OmagOFFICE"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
|
||||
|
||||
<DockPanel>
|
||||
<DockPanel>
|
||||
|
||||
<UniformGrid Columns="3"
|
||||
DockPanel.Dock="Top"
|
||||
Visibility="{Binding SideEntity_Visibility}"
|
||||
Margin="0,0,0,0">
|
||||
|
||||
|
||||
<!--Inclina lati-->
|
||||
<ToggleButton
|
||||
IsChecked="{Binding SideAngle_IsChecked}"
|
||||
@@ -21,7 +21,7 @@
|
||||
<AccessText TextWrapping="Wrap" Text="{Binding SideAngleMsg}"/>
|
||||
</ToggleButton.Content>
|
||||
</ToggleButton>
|
||||
|
||||
|
||||
<!--FiloTop-->
|
||||
<!--<ToggleButton Padding="0"
|
||||
IsChecked="{Binding FiloTop_IsChecked}"
|
||||
@@ -32,7 +32,7 @@
|
||||
<AccessText TextWrapping="Wrap" Text="{Binding FiloTopMsg}"/>
|
||||
</ToggleButton.Content>
|
||||
</ToggleButton>-->
|
||||
|
||||
|
||||
<!--Incidi-->
|
||||
<ToggleButton Padding="0"
|
||||
IsChecked="{Binding Engrave_IsChecked}"
|
||||
@@ -50,100 +50,100 @@
|
||||
Margin="1.75,0,0,0"
|
||||
IsEnabled="{Binding Drip_IsEnabled}">
|
||||
<ToggleButton.Content>
|
||||
<AccessText TextWrapping="Wrap" Text="{Binding DripMsg}" />
|
||||
<AccessText TextWrapping="Wrap" Text="{Binding DripMsg}" />
|
||||
</ToggleButton.Content>
|
||||
</ToggleButton>
|
||||
|
||||
|
||||
</UniformGrid>
|
||||
|
||||
<StackPanel DockPanel.Dock="Bottom">
|
||||
|
||||
<ContentControl Content="{Binding CompoManagerControl,
|
||||
<StackPanel DockPanel.Dock="Bottom">
|
||||
|
||||
<ContentControl Content="{Binding CompoManagerControl,
|
||||
UpdateSourceTrigger=PropertyChanged}"
|
||||
Visibility="{Binding CompoManagerControl_Visibility}"/>
|
||||
|
||||
<Button Command="{Binding BackCommand}"
|
||||
|
||||
<Button Command="{Binding BackCommand}"
|
||||
Visibility="{Binding Back_Visibility}"
|
||||
Style="{StaticResource CompoWindow_Button}"
|
||||
Focusable="False"
|
||||
Margin="0,0,0,5">
|
||||
<Image Source="/Resources/MachiningTab/BackArrow.png"/>
|
||||
</Button>
|
||||
|
||||
</StackPanel>
|
||||
<Image Source="/Resources/MachiningTab/BackArrow.png"/>
|
||||
</Button>
|
||||
|
||||
<Grid>
|
||||
|
||||
<ContentControl VerticalAlignment="Center"
|
||||
</StackPanel>
|
||||
|
||||
<Grid>
|
||||
|
||||
<ContentControl VerticalAlignment="Center"
|
||||
Content="{Binding SideEntityControl}"/>
|
||||
|
||||
<StackPanel VerticalAlignment="Center"
|
||||
|
||||
<StackPanel VerticalAlignment="Center"
|
||||
Visibility="{Binding Measure_Visibility}">
|
||||
<ItemsControl ItemsSource="{Binding CompoParamList}">
|
||||
<ItemsControl.Resources>
|
||||
<DataTemplate DataType="{x:Type OmagOFFICE:TextParamItem}">
|
||||
<Grid Margin="0,0,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Name}" VerticalAlignment="Center"/>
|
||||
<EgtWPFLib5:EgtTextBox Grid.Column="1"
|
||||
<ItemsControl ItemsSource="{Binding CompoParamList}">
|
||||
<ItemsControl.Resources>
|
||||
<DataTemplate DataType="{x:Type OmagOFFICE:TextParamItem}">
|
||||
<Grid Margin="0,0,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Name}" VerticalAlignment="Center" Foreground="{DynamicResource Omag_White}"/>
|
||||
<EgtWPFLib5:EgtTextBox Grid.Column="1"
|
||||
Text="{Binding Value}" IsEnabled="{Binding IsEnable}"/>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
<DataTemplate DataType="{x:Type OmagOFFICE:CheckParamItem}">
|
||||
<Grid Margin="0,0,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Name}"/>
|
||||
<CheckBox Grid.Column="1"
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
<DataTemplate DataType="{x:Type OmagOFFICE:CheckParamItem}">
|
||||
<Grid Margin="0,0,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Name}" Foreground="{DynamicResource Omag_White}"/>
|
||||
<CheckBox Grid.Column="1"
|
||||
IsChecked="{Binding Value}" IsEnabled="{Binding IsEnable}"
|
||||
HorizontalAlignment="Center"/>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.Resources>
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<StackPanel/>
|
||||
</ItemsPanelTemplate>
|
||||
</ItemsControl.ItemsPanel>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.Resources>
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<StackPanel/>
|
||||
</ItemsPanelTemplate>
|
||||
</ItemsControl.ItemsPanel>
|
||||
|
||||
</ItemsControl>
|
||||
</ItemsControl>
|
||||
|
||||
<TextBlock Text="{Binding OutputMessage}"
|
||||
<TextBlock Text="{Binding OutputMessage}"
|
||||
Foreground="{Binding MsgColor}"
|
||||
TextWrapping="Wrap"
|
||||
TextAlignment="Justify"
|
||||
Margin="0,0,0,5"/>
|
||||
|
||||
<Button Content="{Binding InternalMsg}"
|
||||
|
||||
<Button Content="{Binding InternalMsg}"
|
||||
Command="{Binding InternalCommand}"
|
||||
Visibility="{Binding Internal_Visibility}"
|
||||
Style="{StaticResource CompoWindow_Button}"/>
|
||||
|
||||
<Button Content="{Binding AlzAndFrontMsg}"
|
||||
|
||||
<Button Content="{Binding AlzAndFrontMsg}"
|
||||
Command="{Binding AlzAndFrontCommand}"
|
||||
Visibility="{Binding AlzAndFront_Visibility}"
|
||||
Style="{StaticResource CompoWindow_Button}"/>
|
||||
|
||||
<UniformGrid Columns="2"
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5"
|
||||
Visibility="{Binding AddRemove_Visibility}">
|
||||
<Button Content="{Binding AddMsg}"
|
||||
<Button Content="{Binding AddMsg}"
|
||||
Command="{Binding AddCommand}"
|
||||
Style="{StaticResource CompoWindow_Button}"/>
|
||||
<Button Content="{Binding CancelMsg}"
|
||||
<Button Content="{Binding CancelMsg}"
|
||||
Command="{Binding CancelCommand}"
|
||||
Style="{StaticResource CompoWindow_Button}"/>
|
||||
</UniformGrid>
|
||||
</UniformGrid>
|
||||
|
||||
</StackPanel>
|
||||
|
||||
</Grid>
|
||||
|
||||
</DockPanel>
|
||||
</StackPanel>
|
||||
|
||||
</Grid>
|
||||
|
||||
</DockPanel>
|
||||
|
||||
</UserControl>
|
||||
|
||||
|
After Width: | Height: | Size: 857 B |
@@ -13,101 +13,112 @@
|
||||
MaxWidth="500"
|
||||
ResizeMode="NoResize">
|
||||
|
||||
<DockPanel Margin="5,5,5,0">
|
||||
<DockPanel Margin="5,5,5,0" Background="{StaticResource Omag_DarkGray}">
|
||||
|
||||
<TextBlock Text="{Binding CsvPath}"
|
||||
DockPanel.Dock="Top"
|
||||
Margin="0,0,0,5"/>
|
||||
|
||||
<UniformGrid Columns="2"
|
||||
DockPanel.Dock="Bottom"
|
||||
|
||||
<UniformGrid Columns="15"
|
||||
DockPanel.Dock="Top"
|
||||
Margin="0,0,0,5">
|
||||
<Button Content="{Binding InsertMsg}"
|
||||
<Button Command="{Binding NewCommand}"
|
||||
Margin="0,0,2.5,0"
|
||||
Style = "{DynamicResource CSV_Button}">
|
||||
<Image Source="/Resources/TopCommandBar/Reset.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding OpenCommand}"
|
||||
Margin="2.5,0,2.5,0"
|
||||
Style = "{DynamicResource CSV_Button}">
|
||||
<Image Source="/Resources/TopCommandBar/Import.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<ToggleButton IsChecked="{Binding Plus_IsChecked}"
|
||||
Style="{DynamicResource CSV_ToggleButton}"
|
||||
Margin="2.5,0,2.5,0">
|
||||
<Image Source="/Resources/CsvWindow/CsvPlus - Color.png"/>
|
||||
</ToggleButton>
|
||||
<ToggleButton IsChecked="{Binding Minus_IsChecked}"
|
||||
Style="{DynamicResource CSV_ToggleButton}"
|
||||
Margin="2.5,0,0,0">
|
||||
<Image Source="/Resources/CsvWindow/CsvMinus - Color.png"/>
|
||||
</ToggleButton>
|
||||
|
||||
<Button ToolTip="{Binding InsertMsg}"
|
||||
Command="{Binding InsertCommand}"
|
||||
Margin="0,0,2.5,0"
|
||||
Style="{StaticResource CompoWindow_Button}"/>
|
||||
<Button Content="{Binding RemoveMsg}"
|
||||
Style = "{DynamicResource CSV_Button}">
|
||||
<Image Source="/Resources/CsvWindow/Inserisci-pezzo CSV.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding RemoveMsg}"
|
||||
Command="{Binding RemoveCommand}"
|
||||
Margin="2.5,0,0,0"
|
||||
Style="{StaticResource CompoWindow_Button}"/>
|
||||
</UniformGrid>
|
||||
Style = "{DynamicResource CSV_Button}">
|
||||
<Image Source="/Resources/CsvWindow/Parcheggia-pezzo CSV.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
|
||||
<UniformGrid Columns="4"
|
||||
DockPanel.Dock="Bottom"
|
||||
Margin="0,0,0,5">
|
||||
<Button Command="{Binding NewCommand}"
|
||||
Margin="0,0,2.5,0">
|
||||
<Image Source="/Resources/CsvWindow/CsvNew.png"/>
|
||||
</Button>
|
||||
<Button Command="{Binding OpenCommand}"
|
||||
Margin="2.5,0,2.5,0">
|
||||
<Image Source="/Resources/CsvWindow/CsvOpen.png"/>
|
||||
</Button>
|
||||
<ToggleButton IsChecked="{Binding Plus_IsChecked}"
|
||||
Margin="2.5,0,2.5,0">
|
||||
<Image Source="/Resources/CsvWindow/CsvPlus.png"/>
|
||||
</ToggleButton>
|
||||
<ToggleButton IsChecked="{Binding Minus_IsChecked}"
|
||||
Margin="2.5,0,0,0">
|
||||
<Image Source="/Resources/CsvWindow/CsvMinus.png"/>
|
||||
</ToggleButton>
|
||||
</UniformGrid>
|
||||
|
||||
<TreeView ItemsSource="{Binding CsvTypeList}"
|
||||
<TextBlock Text="{Binding CsvPath}"
|
||||
DockPanel.Dock="Top"
|
||||
Foreground="{StaticResource Omag_White}"
|
||||
Margin="0,0,0,5"/>
|
||||
|
||||
<TreeView ItemsSource="{Binding CsvTypeList}"
|
||||
Background="Transparent"
|
||||
BorderThickness="0"
|
||||
Margin="0,0,0,5" >
|
||||
|
||||
<TreeView.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TreeViewItem}">
|
||||
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
|
||||
<EventSetter Event="MouseUp" Handler="PartTypeClick"/>
|
||||
</Style>
|
||||
</TreeView.ItemContainerStyle>
|
||||
<TreeView.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TreeViewItem}">
|
||||
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
|
||||
<EventSetter Event="MouseUp" Handler="PartTypeClick"/>
|
||||
</Style>
|
||||
</TreeView.ItemContainerStyle>
|
||||
|
||||
<TreeView.Resources>
|
||||
<HierarchicalDataTemplate DataType="{x:Type OmagOFFICE:CsvPartType}"
|
||||
<TreeView.Resources>
|
||||
<HierarchicalDataTemplate DataType="{x:Type OmagOFFICE:CsvPartType}"
|
||||
ItemsSource="{Binding CsvPartList}">
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<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" />
|
||||
<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" Foreground="{StaticResource Omag_White}"/>
|
||||
|
||||
</Grid>
|
||||
<HierarchicalDataTemplate.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TreeViewItem}">
|
||||
<EventSetter Event="MouseUp" Handler="PartItemClick"/>
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding bIsActive}" Value="False">
|
||||
<Setter Property="Foreground" Value="{StaticResource Omag_Gray}"/>
|
||||
</DataTrigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</HierarchicalDataTemplate.ItemContainerStyle>
|
||||
</Grid>
|
||||
<HierarchicalDataTemplate.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TreeViewItem}">
|
||||
<EventSetter Event="MouseUp" Handler="PartItemClick"/>
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding bIsActive}" Value="true">
|
||||
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding bIsActive}" Value="False">
|
||||
<Setter Property="Foreground" Value="{StaticResource Omag_Gray}"/>
|
||||
</DataTrigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</HierarchicalDataTemplate.ItemContainerStyle>
|
||||
|
||||
</HierarchicalDataTemplate>
|
||||
</HierarchicalDataTemplate>
|
||||
|
||||
<DataTemplate DataType="{x:Type OmagOFFICE:CsvPartItem}">
|
||||
<Grid Width="246" Margin="0,5,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="60"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<DataTemplate DataType="{x:Type OmagOFFICE:CsvPartItem}">
|
||||
<Grid Width="246" Margin="0,5,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="60"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<TextBlock Grid.Column="0" Text="{Binding Name}" Height="18" FontSize="14" HorizontalAlignment="Right"/>
|
||||
<TextBlock Grid.Column="1" Text="{Binding sText1}" Height="18" FontSize="14" HorizontalAlignment="Center"/>
|
||||
<TextBlock Grid.Column="2" Text="{Binding sText2}" Height="18" FontSize="14" HorizontalAlignment="Left"/>
|
||||
<TextBlock Grid.Column="0" Text="{Binding Name}" Height="18" FontSize="14" HorizontalAlignment="Right"/>
|
||||
<TextBlock Grid.Column="1" Text="{Binding sText1}" Height="18" FontSize="14" HorizontalAlignment="Center"/>
|
||||
<TextBlock Grid.Column="2" Text="{Binding sText2}" Height="18" FontSize="14" HorizontalAlignment="Left"/>
|
||||
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</TreeView.Resources>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</TreeView.Resources>
|
||||
|
||||
</TreeView>
|
||||
</TreeView>
|
||||
|
||||
</DockPanel>
|
||||
</DockPanel>
|
||||
|
||||
</EgtWPFLib5:EgtCustomWindow>
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
Imports EgtUILib
|
||||
Imports System.Security.Cryptography
|
||||
Imports EgtUILib
|
||||
|
||||
Friend Module CamAuto
|
||||
|
||||
@@ -32,7 +33,7 @@ Friend Module CamAuto
|
||||
Return bOk
|
||||
End Function
|
||||
|
||||
Friend Function AddWaterJetMachining( nOperId As Integer, ByRef nWarn As Integer) As Boolean
|
||||
Friend Function AddWaterJetMachining(nOperId As Integer, ByRef nWarn As Integer) As Boolean
|
||||
EgtLuaCreateGlobTable("CAM")
|
||||
SetLuaStandardCamParams()
|
||||
EgtLuaSetGlobIntVar("CAM.OPERID", nOperId)
|
||||
@@ -157,6 +158,69 @@ Friend Module CamAuto
|
||||
Return bOk
|
||||
End Function
|
||||
|
||||
Friend Function ResetAllSplitCut() As Boolean
|
||||
Dim PartList As New List(Of Integer)
|
||||
' Ricerca nei grezzi dei pezzi (devono essere ricercati tra quelli presenti nei grezzi)
|
||||
Dim bOk As Boolean = True
|
||||
' Recupero il numero di fasi presenti nel progetto
|
||||
Dim nPhaseCount As Integer = EgtGetPhaseCount()
|
||||
For nPhase As Integer = 1 To nPhaseCount
|
||||
EgtSetCurrPhase(nPhase)
|
||||
Dim nRawId As Integer = EgtGetFirstRawPart()
|
||||
While nRawId <> GDB_ID.NULL
|
||||
Dim nParId As Integer = EgtGetFirstPartInRawPart(nRawId)
|
||||
If EgtVerifyRawPartPhase(nRawId, nPhase) Then
|
||||
While nParId <> GDB_ID.NULL
|
||||
Dim nNextParId As Integer = EgtGetNextPartInRawPart(nParId)
|
||||
' verifico se il pezzo passato è un taglio di sepatazione (il nome deve contenere "SpliCut")
|
||||
Dim sName As String = String.Empty
|
||||
If EgtGetName(nParId, sName) AndAlso sName.Contains(SPLIT_CUT) Then
|
||||
' Rimuovo il pezzo dal grezzo
|
||||
If EgtRemovePartFromRawPart(nParId) Then
|
||||
' Salvo l'indice del pezzo se non è stato già inserito
|
||||
Dim nIndex As Integer = PartList.FirstOrDefault(Function(nId) nId = nParId)
|
||||
If nIndex = 0 Then PartList.Add(nParId)
|
||||
End If
|
||||
End If
|
||||
nParId = nNextParId
|
||||
End While
|
||||
End If
|
||||
nRawId = EgtGetNextRawPart(nRawId)
|
||||
End While
|
||||
Next
|
||||
' Reimposto la prima fase del progetto
|
||||
EgtSetCurrPhase(1)
|
||||
' Procedo ad eliminare il pezzo
|
||||
For Each Item As Integer In PartList
|
||||
bOk = bOk And EgtErase(Item)
|
||||
Next
|
||||
Return bOk
|
||||
End Function
|
||||
|
||||
Friend Function RemoveCurrentSplitCut(nIdSplitCut As Integer) As Boolean
|
||||
Dim bOk As Boolean = False
|
||||
Dim nCurrPhase As Integer = EgtGetCurrPhase()
|
||||
Dim nRawId As Integer = EgtGetFirstRawPart()
|
||||
While nRawId <> GDB_ID.NULL
|
||||
Dim nParId As Integer = EgtGetFirstPartInRawPart(nRawId)
|
||||
If EgtVerifyRawPartPhase(nRawId, nCurrPhase) Then
|
||||
While nParId <> GDB_ID.NULL
|
||||
If nParId = nIdSplitCut Then
|
||||
' Rimuovo il pezzo dal grezzo
|
||||
bOk = EgtRemovePartFromRawPart(nParId)
|
||||
Exit While
|
||||
End If
|
||||
nParId = EgtGetNextPartInRawPart(nParId)
|
||||
End While
|
||||
End If
|
||||
If bOk Then Exit While
|
||||
nRawId = EgtGetNextRawPart(nRawId)
|
||||
End While
|
||||
' Elimino il pezzo
|
||||
bOk = bOk And EgtErase(nIdSplitCut)
|
||||
Return bOk
|
||||
End Function
|
||||
|
||||
' verifico che il contorno passato non sia stato separato
|
||||
Friend Function VerifyOutLoopIsClosed(nIdLayerOutLoop As Integer) As Boolean
|
||||
Dim nIdMy As Integer = EgtGetFirstInGroup(nIdLayerOutLoop)
|
||||
@@ -260,7 +324,7 @@ Friend Module CamAuto
|
||||
EgtGetGroupObjs(EgtGetFirstNameInGroup(nPartId, NAME_UNDERDRILL)) = 0 Then
|
||||
Return True
|
||||
End If
|
||||
' Se tutti i pezzi
|
||||
' Se tutti i pezzi
|
||||
Else
|
||||
' Salvo fase attualmente corrente
|
||||
Dim nOriPhase As Integer = EgtGetCurrPhase()
|
||||
@@ -401,9 +465,9 @@ Friend Module CamAuto
|
||||
Dim sTool2 As String = String.Empty
|
||||
EgtGetMachiningParam(MCH_MP.TUUID, sTuuid)
|
||||
EgtTdbGetToolFromUUID(sTuuid, sTool)
|
||||
If String.IsNullOrWhiteSpace( sTool) Then
|
||||
If String.IsNullOrWhiteSpace(sTool) Then
|
||||
Dim sMchTool As String = ""
|
||||
EgtGetMachiningParam( MCH_MP.TOOL, sMchTool)
|
||||
EgtGetMachiningParam(MCH_MP.TOOL, sMchTool)
|
||||
bOk = False
|
||||
If sMissingTools.IndexOf(sMchTool) = -1 Then
|
||||
sMissingTools = sMissingTools & sMchTool & ", "
|
||||
@@ -417,7 +481,7 @@ Friend Module CamAuto
|
||||
sTool2 = sTool & "-2"
|
||||
End If
|
||||
If String.Compare(sTool, CurrentMachine.sCurrSaw) <> 0 AndAlso
|
||||
( String.IsNullOrWhiteSpace( sTool2) OrElse String.Compare(sTool2, CurrentMachine.sCurrSaw) <> 0) AndAlso
|
||||
(String.IsNullOrWhiteSpace(sTool2) OrElse String.Compare(sTool2, CurrentMachine.sCurrSaw) <> 0) AndAlso
|
||||
String.Compare(sTool, CurrentMachine.sCurrDripSaw) <> 0 Then
|
||||
bOk = False
|
||||
If sMissingTools.IndexOf(sTool) = -1 Then
|
||||
@@ -483,7 +547,7 @@ Friend Module CamAuto
|
||||
Dim nOperId As Integer = EgtGetFirstOperation()
|
||||
While nOperId <> GDB_ID.NULL
|
||||
' verifico sia una lavorazione valida di taglio con lama
|
||||
If IsValidMachining( nOperId) And EgtGetOperationType( nOperId) = MCH_OY.SAWING Then
|
||||
If IsValidMachining(nOperId) And EgtGetOperationType(nOperId) = MCH_OY.SAWING Then
|
||||
' verifica interferenza
|
||||
Dim nFlag As Integer = FMI_TYPE.NONE
|
||||
If Not VerifyComposedMachining(nOperId, nFlag) Then
|
||||
@@ -604,8 +668,8 @@ Friend Module CamAuto
|
||||
If nOriLeadIn <> MCH_SAW_LI.STRICT Then
|
||||
EgtSetMachiningParam(MCH_MP.LEADINTYPE, MCH_SAW_LI.STRICT)
|
||||
Dim dUserAddLen As Double = 0
|
||||
EgtGetInfo( nMchId, INFO_MCH_USER_SAL, dUserAddLen)
|
||||
EgtRemoveInfo( nMchId, INFO_MCH_USER_SAL)
|
||||
EgtGetInfo(nMchId, INFO_MCH_USER_SAL, dUserAddLen)
|
||||
EgtRemoveInfo(nMchId, INFO_MCH_USER_SAL)
|
||||
Dim dAddLen As Double = 0
|
||||
EgtGetMachiningParam(MCH_MP.STARTADDLEN, dAddLen)
|
||||
EgtSetMachiningParam(MCH_MP.STARTADDLEN, dAddLen - dUserAddLen - dSafeLen)
|
||||
@@ -624,8 +688,8 @@ Friend Module CamAuto
|
||||
If nOriLeadOut <> MCH_SAW_LO.STRICT Then
|
||||
EgtSetMachiningParam(MCH_MP.LEADOUTTYPE, MCH_SAW_LO.STRICT)
|
||||
Dim dUserAddLen As Double = 0
|
||||
EgtGetInfo( nMchId, INFO_MCH_USER_EAL, dUserAddLen)
|
||||
EgtRemoveInfo( nMchId, INFO_MCH_USER_EAL)
|
||||
EgtGetInfo(nMchId, INFO_MCH_USER_EAL, dUserAddLen)
|
||||
EgtRemoveInfo(nMchId, INFO_MCH_USER_EAL)
|
||||
Dim dAddLen As Double = 0
|
||||
EgtGetMachiningParam(MCH_MP.ENDADDLEN, dAddLen)
|
||||
EgtSetMachiningParam(MCH_MP.ENDADDLEN, dAddLen - dUserAddLen - dSafeLen)
|
||||
@@ -956,13 +1020,13 @@ Friend Module CamAuto
|
||||
Dim nRawId As Integer = EgtGetFirstRawPart()
|
||||
If nRawId = GDB_ID.NULL Then Return False
|
||||
' Se non ci sono pezzi, esco
|
||||
Dim nPart1Id As Integer = EgtGetFirstPartInRawPart( nRawId)
|
||||
Dim nPart1Id As Integer = EgtGetFirstPartInRawPart(nRawId)
|
||||
If nPart1Id = GDB_ID.NULL Then Return True
|
||||
' Verifico se cornice curva
|
||||
Dim nDir As Integer = 0
|
||||
EgtGetInfo(nPart1Id, INFO_FRAME_DIR, nDir)
|
||||
Dim bSwap As Boolean = ( nDir = 0)
|
||||
Dim bCurved As Boolean = ( nDir >= 2)
|
||||
Dim bSwap As Boolean = (nDir = 0)
|
||||
Dim bCurved As Boolean = (nDir >= 2)
|
||||
' Recupero la lavorazione corrente di sgrossatura con lama
|
||||
Dim sCurrSawRou As String = CurrentMachine.sCurrSawRoughing
|
||||
If String.IsNullOrEmpty(sCurrSawRou) Then Return True
|
||||
@@ -989,8 +1053,8 @@ Friend Module CamAuto
|
||||
' Imposto la geometria
|
||||
EgtSetMachiningGeometry(vId)
|
||||
' Imposto trim iniziale e finale
|
||||
EgtSetMachiningParam(MCH_MP.STARTADDLEN, If( bSwap, -dTrimEnd, -dTrimStart))
|
||||
EgtSetMachiningParam(MCH_MP.ENDADDLEN, If( bSwap, -dTrimStart, -dTrimEnd))
|
||||
EgtSetMachiningParam(MCH_MP.STARTADDLEN, If(bSwap, -dTrimEnd, -dTrimStart))
|
||||
EgtSetMachiningParam(MCH_MP.ENDADDLEN, If(bSwap, -dTrimStart, -dTrimEnd))
|
||||
' Se cornice curva, imposto SCC
|
||||
If bCurved Then EgtSetMachiningParam(MCH_MP.SOLCHOICETYPE, MCH_SCC.ADIR_NEAR)
|
||||
' Applico la lavorazione
|
||||
@@ -1005,13 +1069,13 @@ Friend Module CamAuto
|
||||
Dim nRawId As Integer = EgtGetFirstRawPart()
|
||||
If nRawId = GDB_ID.NULL Then Return False
|
||||
' Se non ci sono pezzi, esco
|
||||
Dim nPart1Id As Integer = EgtGetFirstPartInRawPart( nRawId)
|
||||
Dim nPart1Id As Integer = EgtGetFirstPartInRawPart(nRawId)
|
||||
If nPart1Id = GDB_ID.NULL Then Return True
|
||||
' Verifico se cornice curva
|
||||
Dim nDir As Integer = 0
|
||||
EgtGetInfo( nPart1Id, INFO_FRAME_DIR, nDir)
|
||||
Dim bSwap As Boolean = ( nDir = 0)
|
||||
Dim bCurved As Boolean = ( nDir >= 2)
|
||||
EgtGetInfo(nPart1Id, INFO_FRAME_DIR, nDir)
|
||||
Dim bSwap As Boolean = (nDir = 0)
|
||||
Dim bCurved As Boolean = (nDir >= 2)
|
||||
' Recupero la lavorazione corrente di finitura con lama
|
||||
Dim sCurrSawFin As String = CurrentMachine.sCurrSawFinishing
|
||||
If String.IsNullOrEmpty(sCurrSawFin) Then Return True
|
||||
@@ -1048,8 +1112,8 @@ Friend Module CamAuto
|
||||
' Imposto la geometria
|
||||
EgtSetMachiningGeometry(vId)
|
||||
' Imposto trim iniziale e finale
|
||||
EgtSetMachiningParam(MCH_MP.STARTADDLEN, If( bSwap, -dTrimEnd, -dTrimStart))
|
||||
EgtSetMachiningParam(MCH_MP.ENDADDLEN, If( bSwap, -dTrimStart, -dTrimEnd))
|
||||
EgtSetMachiningParam(MCH_MP.STARTADDLEN, If(bSwap, -dTrimEnd, -dTrimStart))
|
||||
EgtSetMachiningParam(MCH_MP.ENDADDLEN, If(bSwap, -dTrimStart, -dTrimEnd))
|
||||
' Se cornice curva, imposto SCC
|
||||
If bCurved Then EgtSetMachiningParam(MCH_MP.SOLCHOICETYPE, MCH_SCC.ADIR_NEAR)
|
||||
' Applico la lavorazione
|
||||
@@ -1064,13 +1128,13 @@ Friend Module CamAuto
|
||||
Dim nRawId As Integer = EgtGetFirstRawPart()
|
||||
If nRawId = GDB_ID.NULL Then Return False
|
||||
' Se non ci sono pezzi, esco
|
||||
Dim nPart1Id As Integer = EgtGetFirstPartInRawPart( nRawId)
|
||||
Dim nPart1Id As Integer = EgtGetFirstPartInRawPart(nRawId)
|
||||
If nPart1Id = GDB_ID.NULL Then Return True
|
||||
' Verifico se cornice curva
|
||||
Dim nDir As Integer = 0
|
||||
EgtGetInfo(nPart1Id, INFO_FRAME_DIR, nDir)
|
||||
Dim bSwap As Boolean = ( nDir = 0)
|
||||
Dim bCurved As Boolean = ( nDir >= 2)
|
||||
Dim bSwap As Boolean = (nDir = 0)
|
||||
Dim bCurved As Boolean = (nDir >= 2)
|
||||
' Recupero la lavorazione corrente di spatolatura con lama
|
||||
Dim sCurrSawSideFin As String = CurrentMachine.sCurrSawSideFinishing
|
||||
If String.IsNullOrEmpty(sCurrSawSideFin) Then Return True
|
||||
@@ -1091,8 +1155,8 @@ Friend Module CamAuto
|
||||
' Imposto la geometria
|
||||
EgtSetMachiningGeometry(vId)
|
||||
' Imposto trim iniziale e finale
|
||||
EgtSetMachiningParam(MCH_MP.STARTADDLEN, If( bSwap, -dTrimEnd, -dTrimStart))
|
||||
EgtSetMachiningParam(MCH_MP.ENDADDLEN, If( bSwap, -dTrimStart, -dTrimEnd))
|
||||
EgtSetMachiningParam(MCH_MP.STARTADDLEN, If(bSwap, -dTrimEnd, -dTrimStart))
|
||||
EgtSetMachiningParam(MCH_MP.ENDADDLEN, If(bSwap, -dTrimStart, -dTrimEnd))
|
||||
' Se cornice curva, imposto SCC
|
||||
If bCurved Then EgtSetMachiningParam(MCH_MP.SOLCHOICETYPE, MCH_SCC.ADIR_NEAR)
|
||||
' Applico la lavorazione
|
||||
@@ -1231,14 +1295,14 @@ Friend Module CamAuto
|
||||
dStartDist = dEndDist
|
||||
dEndDist = dTemp
|
||||
End If
|
||||
' altrimenti
|
||||
' altrimenti
|
||||
Else
|
||||
Dim vtSide As Vector3d
|
||||
' Se faccia non limitata da altre o sopra la limitante
|
||||
If bFree Then
|
||||
EgtSetMachiningParam(MCH_MP.FACEUSE, MCH_MIL_FU.ORTUP_DOWN)
|
||||
vtSide = Vector3d.Z_AX()
|
||||
' altrimenti è stata trovata una faccia adiacente limitante
|
||||
' altrimenti è stata trovata una faccia adiacente limitante
|
||||
Else
|
||||
If vtAdjN.x > 10 * EPS_SMALL Then
|
||||
EgtSetMachiningParam(MCH_MP.FACEUSE, MCH_MIL_FU.ORTUP_LEFT)
|
||||
|
||||
@@ -260,6 +260,8 @@ Module ConstMach
|
||||
Public Const INFO_AUX_SPLIT_WJ As String = "AUX_SPLIT_WJ"
|
||||
' Info in OutLoop per punto inzio lavorazione WaterJet
|
||||
Public Const INFO_START As String = "Start"
|
||||
' Nome dei tagli diretti inseriti in fase di Splitting
|
||||
Public Const SPLIT_CUT As String = "SplitCut"
|
||||
|
||||
' Nome di pezzo che è una cornice
|
||||
Public Const NAME_FRAME As String = "Frame"
|
||||
|
||||
@@ -17,9 +17,9 @@
|
||||
<Button Command="{Binding MachOptionsCommand}" ToolTip="{Binding OptionsToolTip}" Style="{StaticResource ToolBar_Button}">
|
||||
<Image Source="/Resources/TopCommandBar/Options.png" Stretch="Uniform" />
|
||||
</Button>
|
||||
<Button Command="{Binding SetUpCommand}" ToolTip="{Binding SetUpToolTip}"
|
||||
Style="{StaticResource ToolBar_TextButton}" Width="70" Content="{Binding SetUpMsg}"
|
||||
Background="{Binding SetUp_Background}"/>
|
||||
<Button Command="{Binding SetUpCommand}" ToolTip="{Binding SetUpToolTip}" Style="{StaticResource ToolBar_Button}">
|
||||
<Image Source="/Resources/NewIcons/ToolChangerPos.png" Stretch="Uniform" />
|
||||
</Button>
|
||||
<Button Command="{Binding WaterjetDbCommand}" ToolTip="{Binding WaterjetDbToolTip}"
|
||||
Style="{StaticResource ToolBar_TextButton}" Width="70" Content="{Binding WaterjetDbMsg}" Visibility="{Binding WjDb_Visibility}"/>
|
||||
</DockPanel>
|
||||
|
||||
@@ -14,6 +14,10 @@
|
||||
<OmagOFFICE:TopCommandBarV DataContext="{StaticResource TopCommandBarVM}"/>
|
||||
</EgtWPFLib5:EgtCustomWindow.TitlePanel>
|
||||
|
||||
<EgtWPFLib5:EgtCustomWindow.InputBindings>
|
||||
<KeyBinding Key="Escape" Command="{Binding EscapeCommand}"/>
|
||||
</EgtWPFLib5:EgtCustomWindow.InputBindings>
|
||||
|
||||
<!--Pannello principale -->
|
||||
<DockPanel>
|
||||
|
||||
|
||||
@@ -45,6 +45,7 @@ Public Class MainWindowVM
|
||||
' definizione comandi
|
||||
Private m_cmdAboutBox As ICommand
|
||||
Private m_cmdCloseApplication As ICommand
|
||||
Private m_cmdEscape As ICommand
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
@@ -136,6 +137,27 @@ Public Class MainWindowVM
|
||||
|
||||
#Region "COMMANDS"
|
||||
|
||||
#Region "Escape"
|
||||
|
||||
Public ReadOnly Property EscapeCommand() As ICommand
|
||||
Get
|
||||
If m_cmdEscape Is Nothing Then
|
||||
m_cmdEscape = New Command(AddressOf Escape)
|
||||
End If
|
||||
Return m_cmdEscape
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public Sub Escape()
|
||||
If Not IsNothing(OmagOFFICEMap.refSplitModeVM) Then
|
||||
OmagOFFICEMap.refSplitModeVM.DeactiveSplitCut()
|
||||
OmagOFFICEMap.refSplitModeVM.DeselectWJBridgesPart()
|
||||
OmagOFFICEMap.refSplitModeVM.ResetAllMark()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region "AboutBoxCommand"
|
||||
|
||||
' Returns a command that manage the MainWindow_Unloaded command
|
||||
|
||||
@@ -924,6 +924,42 @@
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\TopCommandBar\Modify.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\NewIcons\Crea-taglio.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\NewIcons\Attrezzaggio.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\NewIcons\Rimuovi-taglio.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\NewIcons\Modifica-taglio.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\NewIcons\Crea-taglio-parallelo.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\CsvWindow\CsvMinus - Color.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\CsvWindow\CsvPlus - Color.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\CsvWindow\Inserisci-pezzo CSV.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\CsvWindow\Parcheggia-pezzo CSV.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\NewIcons\Linea-Elimina.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\NewIcons\Linea-Muovi.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\NewIcons\Linea-Copia.png" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>IF "$(PlatformName)"=="x86" IF "$(ConfigurationName)" == "Release" copy $(TargetPath) c:\EgtProg\OmagOFFICE\OmagOFFICER32.exe
|
||||
|
||||
@@ -3,6 +3,9 @@
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Background="Transparent">
|
||||
|
||||
<UserControl.InputBindings>
|
||||
<KeyBinding Key="Escape" Command="{Binding SplitCutCommand}" />
|
||||
</UserControl.InputBindings>
|
||||
|
||||
<StackPanel IsEnabled="{Binding SplitModeIsEnabled}">
|
||||
|
||||
@@ -32,7 +35,7 @@
|
||||
</ListBox>
|
||||
</Border>
|
||||
|
||||
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal">
|
||||
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,0,0,2.5">
|
||||
|
||||
<Button Grid.Column="1"
|
||||
IsEnabled="{Binding bEnabledCommandMove}"
|
||||
@@ -51,401 +54,549 @@
|
||||
|
||||
</StackPanel>
|
||||
|
||||
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
|
||||
<Expander Name="myExpander4" Background="Transparent"
|
||||
Foreground="{DynamicResource Omag_White}"
|
||||
HorizontalAlignment="Stretch" Header="Attiva tagli"
|
||||
ExpandDirection="Down" IsExpanded="{Binding bOnOffCut_IsExpanded}">
|
||||
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="2,2.5,2,0">
|
||||
|
||||
|
||||
<GroupBox Header="Attiva tagli" Style="{StaticResource GroupBoxSplit}">
|
||||
|
||||
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="2,2.5,2,0">
|
||||
|
||||
<!--<Button Content="{Binding OnOffMsg}"
|
||||
<!--<Button Content="{Binding OnOffMsg}"
|
||||
Style="{StaticResource OptionPanel_TextWrapButton}"
|
||||
Command="{Binding OnOffCommand}"
|
||||
Margin="0,0,2.5,0"/>-->
|
||||
<StackPanel Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding OnOffMsg}"
|
||||
<StackPanel Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding OnOffMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding OnOffCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/ON_OFF-singolo-taglio.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/ON_OFF-singolo-taglio.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
<!--<Button Content="{Binding AllOnMsg}"
|
||||
<!--<Button Content="{Binding AllOnMsg}"
|
||||
Style="{StaticResource OptionPanel_TextWrapButton}"
|
||||
Command="{Binding AllOnCommand}"
|
||||
Margin="2.5,0,2.5,0"/>-->
|
||||
<StackPanel Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllOnMsg}"
|
||||
<StackPanel Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllOnMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding AllOnCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Tutti-ON.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Tutti-ON.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
<!--<Button Content="{Binding AllOffMsg}"
|
||||
<!--<Button Content="{Binding AllOffMsg}"
|
||||
Style="{StaticResource OptionPanel_TextWrapButton}"
|
||||
Command="{Binding AllOffCommand}"
|
||||
Margin="2.5,0,0,0"/>-->
|
||||
<StackPanel Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllOffMsg}"
|
||||
<StackPanel Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllOffMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding AllOffCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Tutti-OFF.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Tutti-OFF.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
|
||||
</StackPanel>
|
||||
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
</Border>
|
||||
|
||||
</GroupBox>
|
||||
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
|
||||
<Expander Name="myExpander0" Background="Transparent"
|
||||
Foreground="{DynamicResource Omag_White}"
|
||||
HorizontalAlignment="Stretch" Header="Tagli di separazione"
|
||||
ExpandDirection="Down" IsExpanded="{Binding bSpLitCut_IsExpanded}">
|
||||
|
||||
<GroupBox Header="Tagli di separazione" Style="{StaticResource GroupBoxSplit}">
|
||||
<StackPanel Margin="0,0,0,-2.5">
|
||||
|
||||
<StackPanel>
|
||||
|
||||
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1">
|
||||
<Grid>
|
||||
<!--<Button Content="{Binding CutMsg}"
|
||||
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1">
|
||||
<Grid>
|
||||
<!--<Button Content="{Binding CutMsg}"
|
||||
Style="{StaticResource OptionPanel_TextWrapButton}"
|
||||
Command="{Binding CutCommand}"
|
||||
Visibility="{Binding CutBtnVisibility}"
|
||||
Margin="0,0,2.5,0"/>-->
|
||||
<StackPanel Visibility="{Binding CutBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding CutMsg}"
|
||||
<StackPanel Visibility="{Binding CutBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding CutMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding CutCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Allunga-o-accorcia.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Allunga-o-accorcia.png"
|
||||
Height="40" Margin="0,2,0,0"
|
||||
HorizontalAlignment="Center" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
|
||||
<!--<ToggleButton Grid.Row="0"
|
||||
<!--<ToggleButton Grid.Row="0"
|
||||
Content="{Binding BridgeMsg}"
|
||||
Style="{StaticResource OptionPanel_ToggleWrapButton}"
|
||||
IsChecked="{Binding BridgeBtn_IsChecked}"
|
||||
Visibility="{Binding BridgeBtnVisibility}"
|
||||
Margin="0,0,2.5,0" Padding="0"/>-->
|
||||
<StackPanel Visibility="{Binding BridgeBtnVisibility}" Margin="1,0,0,0">
|
||||
<ToggleButton ToolTip="{Binding BridgeMsg}"
|
||||
<StackPanel Visibility="{Binding BridgeBtnVisibility}" Margin="1,0,0,0">
|
||||
<ToggleButton ToolTip="{Binding BridgeMsg}"
|
||||
Style="{StaticResource Split_ToggleButton_Img}"
|
||||
IsChecked="{Binding BridgeBtn_IsChecked}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Ponticelli.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Ponticelli.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</ToggleButton>
|
||||
</StackPanel>
|
||||
</ToggleButton>
|
||||
</StackPanel>
|
||||
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
<Grid>
|
||||
<!--<Button Content="{Binding CutStartMsg}"
|
||||
<Grid>
|
||||
<!--<Button Content="{Binding CutStartMsg}"
|
||||
Style="{StaticResource OptionPanel_TextWrapButton}"
|
||||
Command="{Binding CutStartCommand}"
|
||||
Visibility="{Binding CutStartBtnVisibility}"
|
||||
Margin="2.5,0,2.5,0"/>-->
|
||||
<StackPanel Visibility="{Binding CutStartBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding CutStartMsg}"
|
||||
<StackPanel Visibility="{Binding CutStartBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding CutStartMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding CutStartCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Inizio-allunga-o-accorcia.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Inizio-allunga-o-accorcia.png"
|
||||
Height="40" Margin="0,2,0,0"
|
||||
HorizontalAlignment="Center" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
<!--<Button Content="{Binding QualityMsg}"
|
||||
<!--<Button Content="{Binding QualityMsg}"
|
||||
Style="{StaticResource OptionPanel_TextWrapButton}"
|
||||
Command="{Binding QualityCommand}"
|
||||
Visibility="{Binding QualityBtnVisibility}"
|
||||
Margin="2.5,0,2.5,0"/>!-->
|
||||
<StackPanel Visibility="{Binding QualityBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding QualityMsg}"
|
||||
<StackPanel Visibility="{Binding QualityBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding QualityMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding QualityCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Quality.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Quality.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
<Grid>
|
||||
<StackPanel Visibility="{Binding CutEndBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding CutEndMsg}"
|
||||
<Grid>
|
||||
<StackPanel Visibility="{Binding CutEndBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding CutEndMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding CutEndCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Fine-allunga-o-accorcia.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Fine-allunga-o-accorcia.png"
|
||||
Height="40" Margin="0,2,0,0"
|
||||
HorizontalAlignment="Center" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Visibility="{Binding BridgeDeleteBtnVisibility}" Margin="1,0,0,0">
|
||||
<ToggleButton ToolTip="{Binding BridgeDeleteMsg}"
|
||||
<StackPanel Visibility="{Binding BridgeDeleteBtnVisibility}" Margin="1,0,0,0">
|
||||
<ToggleButton ToolTip="{Binding BridgeDeleteMsg}"
|
||||
Style="{StaticResource Split_ToggleButton_Img}"
|
||||
IsChecked="{Binding BridgeDeleteBtn_IsChecked}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Ponticelli_delete.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Ponticelli_delete.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</ToggleButton>
|
||||
</StackPanel>
|
||||
</ToggleButton>
|
||||
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
|
||||
<UniformGrid Columns="4" Margin="0,0,0,-2.5">
|
||||
|
||||
<!--Bottone invisibile per permetter il corretto allineamento-->
|
||||
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1">
|
||||
|
||||
<!--Bottone invisibile per permetter il corretto allineamento-->
|
||||
<!--
|
||||
<Button Content="{Binding }" Grid.Column="0"
|
||||
Style="{StaticResource OptionPanel_TextWrapButton}"
|
||||
Command="{Binding }"
|
||||
Visibility="Hidden"
|
||||
Margin="0,0,1,0"/>
|
||||
Margin="0,0,1,0"/>-->
|
||||
|
||||
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllExtendMsg}"
|
||||
|
||||
|
||||
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="2" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllExtendMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding AllExtendCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Tutti-allunga.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Tutti-allunga.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Visibility="{Binding AllReduceBtnVisibility}" Grid.Column="2" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllReduceMsg}"
|
||||
<StackPanel Visibility="{Binding AllReduceBtnVisibility}" Grid.Column="2" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllReduceMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding AllReduceCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Tutti-accorcia.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
</StackPanel>
|
||||
|
||||
<!--<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1">
|
||||
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0">
|
||||
<ToggleButton ToolTip="{Binding AllExtendMsg}"
|
||||
Style="{StaticResource Split_ToggleButton_Img}"
|
||||
IsChecked="{Binding CreateCut_IsChecked}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Width="40" Height="40"
|
||||
Margin="1,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Tutti-accorcia.png"
|
||||
<Image Source="/Resources/NewIcons/Crea-taglio.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</ToggleButton>
|
||||
</StackPanel>
|
||||
|
||||
</UniformGrid>
|
||||
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0">
|
||||
<ToggleButton ToolTip="{Binding AllExtendMsg}"
|
||||
Style="{StaticResource Split_ToggleButton_Img}"
|
||||
IsChecked="{Binding RemoveCut_IsChecked}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Width="40" Height="40"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Rimuovi-taglio.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</ToggleButton>
|
||||
</StackPanel>
|
||||
|
||||
</StackPanel>
|
||||
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0">
|
||||
<ToggleButton ToolTip="{Binding AllExtendMsg}"
|
||||
Style="{StaticResource Split_ToggleButton_Img}"
|
||||
IsChecked="{Binding CreateParallelCut_IsChecked}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Width="40" Height="40"
|
||||
Margin="1,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Crea-taglio-parallelo.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</ToggleButton>
|
||||
</StackPanel>
|
||||
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0">
|
||||
<ToggleButton ToolTip="{Binding AllExtendMsg}"
|
||||
Style="{StaticResource Split_ToggleButton_Img}"
|
||||
IsChecked="{Binding CreateParallelCut_IsChecked}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Width="40" Height="40"
|
||||
Margin="1,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Modifica-taglio.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</ToggleButton>
|
||||
</StackPanel>
|
||||
</StackPanel>-->
|
||||
|
||||
</GroupBox>
|
||||
</StackPanel>
|
||||
|
||||
<GroupBox Header="Modifica attacchi tagli" Style="{StaticResource GroupBoxSplit}">
|
||||
<StackPanel Margin="0,0,0,-2.5">
|
||||
<UniformGrid Columns="4" Margin="0,2.5,0,1">
|
||||
<StackPanel Visibility="{Binding OutCenStartBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding OutCenStartMsg}"
|
||||
</Expander>
|
||||
</Border>
|
||||
|
||||
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
|
||||
<Expander Name="myExpander2" Background="Transparent"
|
||||
Foreground="{DynamicResource Omag_White}"
|
||||
HorizontalAlignment="Stretch" Header="Tagli diretti di separazione"
|
||||
ExpandDirection="Down" IsExpanded="{Binding bDirectSpLitCut_IsExpanded}">
|
||||
|
||||
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1">
|
||||
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0">
|
||||
<ToggleButton ToolTip="Crea"
|
||||
Style="{StaticResource Split_ToggleButton_Img}"
|
||||
IsChecked="{Binding CreateCut_IsChecked}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Width="40" Height="40"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Linea.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</ToggleButton>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0">
|
||||
<ToggleButton ToolTip="Elimina"
|
||||
Style="{StaticResource Split_ToggleButton_Img}"
|
||||
IsChecked="{Binding RemoveCut_IsChecked}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Width="40" Height="40"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Linea-Elimina.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</ToggleButton>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0">
|
||||
<ToggleButton ToolTip="Copia"
|
||||
Style="{StaticResource Split_ToggleButton_Img}"
|
||||
IsChecked="{Binding CreateParallelCut_IsChecked}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Width="40" Height="40"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Linea-Copia.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</ToggleButton>
|
||||
</StackPanel>
|
||||
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0">
|
||||
<ToggleButton ToolTip="Muovi"
|
||||
Style="{StaticResource Split_ToggleButton_Img}"
|
||||
IsChecked="{Binding ModifyCut_IsChecked}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Width="40" Height="40"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Linea-Muovi.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</ToggleButton>
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
|
||||
</Expander>
|
||||
</Border>
|
||||
|
||||
<Border Style="{StaticResource Border}" Margin="0,1,0,0">
|
||||
<Expander Name="myExpander1" Background="Transparent"
|
||||
Foreground="{DynamicResource Omag_White}"
|
||||
HorizontalAlignment="Stretch" Header="Modifica attacchi tagli"
|
||||
ExpandDirection="Down" IsExpanded="{Binding bModifyCut_IsExpanded}">
|
||||
|
||||
<StackPanel Margin="0,0,0,-2.5">
|
||||
<UniformGrid Columns="4" Margin="0,2.5,0,1">
|
||||
<StackPanel Visibility="{Binding OutCenStartBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding OutCenStartMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding OutCenStartCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Inizio-centro-fuori.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Inizio-centro-fuori.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Visibility="{Binding AllOutStartBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllOutStartMsg}"
|
||||
<StackPanel Visibility="{Binding AllOutStartBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllOutStartMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding AllOutStartCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Inizio-tutti-fuori.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Inizio-tutti-fuori.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Visibility="{Binding AllCenStartBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllCenStartMsg}"
|
||||
<StackPanel Visibility="{Binding AllCenStartBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllCenStartMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding AllCenStartCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Inizio-tutti-centro.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Inizio-tutti-centro.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Visibility="{Binding OutCenEndBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding OutCenEndMsg}"
|
||||
<StackPanel Visibility="{Binding OutCenEndBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding OutCenEndMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding OutCenEndCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Fine-Centro-Fuori.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Fine-Centro-Fuori.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
</UniformGrid>
|
||||
</UniformGrid>
|
||||
|
||||
<UniformGrid Columns="4" Margin="0,0,0,1">
|
||||
<UniformGrid Columns="4" Margin="0,0,0,1">
|
||||
|
||||
<StackPanel Visibility="{Binding AllOutEndBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllOutEndMsg}"
|
||||
<StackPanel Visibility="{Binding AllOutEndBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllOutEndMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding AllOutEndCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Fine-tutti-fuori.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Fine-tutti-fuori.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Visibility="{Binding AllCenEndBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllCenEndMsg}"
|
||||
<StackPanel Visibility="{Binding AllCenEndBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding AllCenEndMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding AllCenEndCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Fine-tutti-centro.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Fine-tutti-centro.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding ModifStartMsg}"
|
||||
<StackPanel Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding ModifStartMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding ModifStartCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Modifica-Inizio.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Modifica-Inizio.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding ModifEndMsg}"
|
||||
<StackPanel Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding ModifEndMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding ModifEndCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Modifica-Fine.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Modifica-Fine.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
</UniformGrid>
|
||||
</UniformGrid>
|
||||
|
||||
<UniformGrid Columns="4" Margin="0,0,0,1">
|
||||
<UniformGrid Columns="4" Margin="0,0,0,1">
|
||||
|
||||
<!--Bottone invisibile per permetter il corretto allineamento-->
|
||||
<Button Content="{Binding }" Grid.Column="0"
|
||||
<!--Bottone invisibile per permetter il corretto allineamento-->
|
||||
<Button Content="{Binding }" Grid.Column="0"
|
||||
Style="{StaticResource OptionPanel_TextWrapButton}"
|
||||
Command="{Binding }"
|
||||
Visibility="Hidden"
|
||||
Margin="0,0,1,0"/>
|
||||
|
||||
<StackPanel Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding PauseMsg}"
|
||||
<StackPanel Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding PauseMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding PauseCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Pausa-ON_OFF.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Pausa-ON_OFF.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Visibility="{Binding InvertBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding InvertMsg}"
|
||||
<StackPanel Visibility="{Binding InvertBtnVisibility}" Margin="1,0,0,0">
|
||||
<Button ToolTip="{Binding InvertMsg}"
|
||||
Style="{StaticResource Split_Button_Img}"
|
||||
Command="{Binding InvertCommand}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Margin="0,0,0,0">
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Inverti.png"
|
||||
<StackPanel>
|
||||
<Image Source="/Resources/NewIcons/Inverti.png"
|
||||
Style="{StaticResource ImgButton}"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
|
||||
</UniformGrid>
|
||||
|
||||
</StackPanel>
|
||||
|
||||
</UniformGrid>
|
||||
|
||||
</StackPanel>
|
||||
|
||||
</GroupBox>
|
||||
|
||||
</Expander>
|
||||
</Border>
|
||||
</StackPanel>
|
||||
|
||||
</UserControl>
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.Drawing
|
||||
Imports System.Reflection
|
||||
Imports System.Security.Cryptography
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
Imports EgtWPFLib5.EgtCustomWindow
|
||||
|
||||
Public Class SplitModeVM
|
||||
Inherits VMBase
|
||||
@@ -39,6 +43,17 @@ Public Class SplitModeVM
|
||||
Private m_ptSrtBridge As New Point3d
|
||||
Private m_ptEndBridge As New Point3d
|
||||
|
||||
' Punti per creazione tagli odi separazione
|
||||
Private m_ptStartPoint As Point3d
|
||||
Private m_bGetStartPoint As Boolean = False
|
||||
Private m_ptEndPoint As Point3d
|
||||
Private m_bGetEndPoint As Boolean = False
|
||||
Private m_IdSplitLine As Integer = GDB_ID.NULL
|
||||
Private m_IdSplitGroup As Integer = GDB_ID.NULL
|
||||
Private m_IdSplitGroupLayer As Integer = GDB_ID.NULL
|
||||
Private m_IdCurrRawSolid As Integer = GDB_ID.NULL
|
||||
Private m_IdSplitLineRemove As Integer = GDB_ID.NULL
|
||||
|
||||
' Flag di pagina attiva
|
||||
Private m_bActive As Boolean = False
|
||||
' Drag
|
||||
@@ -268,6 +283,54 @@ Public Class SplitModeVM
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_bOnOffCut_IsExpanded As Boolean = True
|
||||
Public Property bOnOffCut_IsExpanded As Boolean
|
||||
Get
|
||||
Return m_bOnOffCut_IsExpanded
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_bOnOffCut_IsExpanded = value
|
||||
NotifyPropertyChanged(NameOf(bOnOffCut_IsExpanded))
|
||||
WriteMainPrivateProfileString("Split", "OnOffCut", If(m_bOnOffCut_IsExpanded, "1", "0"))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_bSpLitCut_IsExpanded As Boolean = True
|
||||
Public Property bSpLitCut_IsExpanded As Boolean
|
||||
Get
|
||||
Return m_bSpLitCut_IsExpanded
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_bSpLitCut_IsExpanded = value
|
||||
NotifyPropertyChanged(NameOf(bSpLitCut_IsExpanded))
|
||||
WriteMainPrivateProfileString("Split", "SplitCut", If(m_bSpLitCut_IsExpanded, "1", "0"))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_bDirectSpLitCut_IsExpanded As Boolean = True
|
||||
Public Property bDirectSpLitCut_IsExpanded As Boolean
|
||||
Get
|
||||
Return m_bDirectSpLitCut_IsExpanded
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_bDirectSpLitCut_IsExpanded = value
|
||||
NotifyPropertyChanged(NameOf(bDirectSpLitCut_IsExpanded))
|
||||
WriteMainPrivateProfileString("Split", "DirectSplitCut", If(m_bDirectSpLitCut_IsExpanded, "1", "0"))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_bModifyCut_IsExpanded As Boolean = True
|
||||
Public Property bModifyCut_IsExpanded As Boolean
|
||||
Get
|
||||
Return m_bModifyCut_IsExpanded
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_bModifyCut_IsExpanded = value
|
||||
NotifyPropertyChanged(NameOf(bModifyCut_IsExpanded))
|
||||
WriteMainPrivateProfileString("Split", "ModifyCut", If(m_bModifyCut_IsExpanded, "1", "0"))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_BridgeBtn_IsChecked As Boolean = False
|
||||
Public Property BridgeBtn_IsChecked As Boolean
|
||||
Get
|
||||
@@ -292,6 +355,82 @@ Public Class SplitModeVM
|
||||
End Set
|
||||
End Property
|
||||
|
||||
#Region "SPLIT CUT"
|
||||
|
||||
Private m_CreateCut_IsChecked As Boolean
|
||||
Public Property CreateCut_IsChecked As Boolean
|
||||
Get
|
||||
Return m_CreateCut_IsChecked
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_CreateCut_IsChecked = value
|
||||
m_RemoveCut_IsChecked = False
|
||||
m_CreateParallelCut_IsChecked = False
|
||||
m_ModifyCut_IsChecked = False
|
||||
NotifyPropertyChanged(NameOf(RemoveCut_IsChecked))
|
||||
NotifyPropertyChanged(NameOf(CreateParallelCut_IsChecked))
|
||||
NotifyPropertyChanged(NameOf(ModifyCut_IsChecked))
|
||||
CreateCutIsChecked()
|
||||
NotifyPropertyChanged(NameOf(CreateCut_IsChecked))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_RemoveCut_IsChecked As Boolean
|
||||
Public Property RemoveCut_IsChecked As Boolean
|
||||
Get
|
||||
Return m_RemoveCut_IsChecked
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_RemoveCut_IsChecked = value
|
||||
m_CreateCut_IsChecked = False
|
||||
m_CreateParallelCut_IsChecked = False
|
||||
m_ModifyCut_IsChecked = False
|
||||
NotifyPropertyChanged(NameOf(CreateCut_IsChecked))
|
||||
NotifyPropertyChanged(NameOf(CreateParallelCut_IsChecked))
|
||||
NotifyPropertyChanged(NameOf(ModifyCut_IsChecked))
|
||||
RemoveCutIsChecked()
|
||||
NotifyPropertyChanged(NameOf(RemoveCut_IsChecked))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_CreateParallelCut_IsChecked As Boolean
|
||||
Public Property CreateParallelCut_IsChecked As Boolean
|
||||
Get
|
||||
Return m_CreateParallelCut_IsChecked
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_CreateParallelCut_IsChecked = value
|
||||
m_CreateCut_IsChecked = False
|
||||
m_RemoveCut_IsChecked = False
|
||||
m_ModifyCut_IsChecked = False
|
||||
NotifyPropertyChanged(NameOf(CreateCut_IsChecked))
|
||||
NotifyPropertyChanged(NameOf(RemoveCut_IsChecked))
|
||||
NotifyPropertyChanged(NameOf(ModifyCut_IsChecked))
|
||||
CreateParellelCutIsChecked()
|
||||
NotifyPropertyChanged(NameOf(CreateParallelCut_IsChecked))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_ModifyCut_IsChecked As Boolean
|
||||
Public Property ModifyCut_IsChecked As Boolean
|
||||
Get
|
||||
Return m_ModifyCut_IsChecked
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_ModifyCut_IsChecked = value
|
||||
m_CreateCut_IsChecked = False
|
||||
m_RemoveCut_IsChecked = False
|
||||
m_CreateParallelCut_IsChecked = False
|
||||
NotifyPropertyChanged(NameOf(CreateCut_IsChecked))
|
||||
NotifyPropertyChanged(NameOf(RemoveCut_IsChecked))
|
||||
NotifyPropertyChanged(NameOf(CreateParallelCut_IsChecked))
|
||||
ModifyCutIsChecked()
|
||||
NotifyPropertyChanged(NameOf(ModifyCut_IsChecked))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
#End Region ' Split Cut
|
||||
|
||||
#Region "Messages"
|
||||
|
||||
Public ReadOnly Property OnOffMsg As String
|
||||
@@ -380,13 +519,13 @@ Public Class SplitModeVM
|
||||
|
||||
Public ReadOnly Property ModifStartMsg As String
|
||||
Get
|
||||
Return EgtMsg( 90373) ' Inizio Modif.
|
||||
Return EgtMsg(90373) ' Inizio Modif.
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property ModifEndMsg As String
|
||||
Get
|
||||
Return EgtMsg( 90374) ' Fine Modif.
|
||||
Return EgtMsg(90374) ' Fine Modif.
|
||||
End Get
|
||||
End Property
|
||||
|
||||
@@ -460,6 +599,14 @@ Public Class SplitModeVM
|
||||
|
||||
Friend Function InitSplitRaw() As Boolean
|
||||
m_bActive = True
|
||||
m_bOnOffCut_IsExpanded = GetMainPrivateProfileInt("Split", "OnOffCut", 0) <> 0
|
||||
NotifyPropertyChanged(NameOf(bOnOffCut_IsExpanded))
|
||||
m_bSpLitCut_IsExpanded = GetMainPrivateProfileInt("Split", "SplitCut", 0) <> 0
|
||||
NotifyPropertyChanged(NameOf(bSpLitCut_IsExpanded))
|
||||
m_bDirectSpLitCut_IsExpanded = GetMainPrivateProfileInt("Split", "DirectSplitCut", 0) <> 0
|
||||
NotifyPropertyChanged(NameOf(bDirectSpLitCut_IsExpanded))
|
||||
m_bModifyCut_IsExpanded = GetMainPrivateProfileInt("Split", "ModifyCut", 0) <> 0
|
||||
NotifyPropertyChanged(NameOf(bModifyCut_IsExpanded))
|
||||
' aggiorno la visualizzazione dei comandi per generare i bridge
|
||||
m_BridgeBtn_IsChecked = False
|
||||
NotifyPropertyChanged(NameOf(BridgeBtn_IsChecked))
|
||||
@@ -536,6 +683,17 @@ Public Class SplitModeVM
|
||||
' eventualmente interrompo la creazione dei ponticelli
|
||||
DeselectWJBridgesPart()
|
||||
|
||||
' Interrompo la creazione di tagli di separazione
|
||||
ResetSplitCut()
|
||||
m_CreateCut_IsChecked = False
|
||||
NotifyPropertyChanged(NameOf(CreateCut_IsChecked))
|
||||
m_RemoveCut_IsChecked = False
|
||||
NotifyPropertyChanged(NameOf(RemoveCut_IsChecked))
|
||||
m_CreateParallelCut_IsChecked = False
|
||||
NotifyPropertyChanged(NameOf(CreateParallelCut_IsChecked))
|
||||
m_ModifyCut_IsChecked = False
|
||||
NotifyPropertyChanged(NameOf(ModifyCut_IsChecked))
|
||||
|
||||
' Rimuovo evidenziazione e numeri
|
||||
RemoveMarkAndNumbers()
|
||||
' Ripristino colori lavorazioni
|
||||
@@ -671,7 +829,7 @@ Public Class SplitModeVM
|
||||
' Aggiorno le lavorazioni (eliminato sort per lasciare ordine immutato)
|
||||
If CurrentMachine.WaterJettingActive Then ResetAllMachinings()
|
||||
EstCalc.SetOrderMachiningFlag()
|
||||
If CurrentMachine.WaterJettingActive Then
|
||||
If CurrentMachine.WaterJettingActive Then
|
||||
Dim bModif As Boolean = TestAllMachiningsForStrict()
|
||||
If bModif Then OmagOFFICEMap.refStatusBarVM.SetOutputMessage(EgtMsg(90321), 3, MSG_TYPE.WARNING) 'Ridotte alcune lavorazioni per evitare interferenze
|
||||
End If
|
||||
@@ -730,6 +888,30 @@ Public Class SplitModeVM
|
||||
EnableButtons()
|
||||
End Sub
|
||||
|
||||
' Aggiorno le lavorazioni
|
||||
Private Sub PreviewMachinigList()
|
||||
' Visualizzo solo anteprime di lavorazioni della fase
|
||||
ShowOnePhaseMachiningPreview(m_nCurrPhase)
|
||||
' Preparo la lista delle lavorazioni
|
||||
CalculateSplitMachList(m_nCurrPhase, m_MachiningList)
|
||||
' azzero i contatori delle lavorazioni
|
||||
m_nCountSawing = 0
|
||||
m_nCountWaterjetting = 0
|
||||
m_nCountOtherMachining = 0
|
||||
' Aggiorno visualizzazione delle lavorazioni
|
||||
EgtEmptyGroup(m_nNbrGrpId)
|
||||
For nI As Integer = 0 To m_MachiningList.Count() - 1
|
||||
' sistemo colore
|
||||
ColorMachining(m_MachiningList(nI))
|
||||
' assegno numerazione
|
||||
NumberDirectionMachining(nI)
|
||||
' conto il numero di tipi di lavorazioni
|
||||
CountMachiningType(m_MachiningList(nI), m_nCountSawing, m_nCountWaterjetting, m_nCountOtherMachining)
|
||||
Next
|
||||
' Preparo la lista degli Item
|
||||
ShowMachiningList()
|
||||
End Sub
|
||||
|
||||
Private Sub ShowMachiningList()
|
||||
m_ItemList.Clear()
|
||||
For i As Integer = 1 To m_MachiningList.Count()
|
||||
@@ -777,14 +959,14 @@ Public Class SplitModeVM
|
||||
If OmagOFFICEMap.refMachiningTabVM.ByHand Then
|
||||
' Ci deve essere almeno 1 taglio disabilitato e 1 e 1 solo passante
|
||||
OmagOFFICEMap.refMachiningTabVM.NextIsEnabled = (GetDisabledCutsCount() > 0 And GetSplitCutsCount() = 1)
|
||||
' Altrimenti
|
||||
' Altrimenti
|
||||
Else
|
||||
' Ci deve essere almeno 1 taglio disabilitato e almeno 1 passante oppure fase successiva alla prima
|
||||
OmagOFFICEMap.refMachiningTabVM.NextIsEnabled = (GetDisabledCutsCount() > 0 And
|
||||
(GetSplitCutsCount() > 0 Or m_nCurrPhase > 1)) Or
|
||||
CurrentMachine.bRawFinalMove
|
||||
End If
|
||||
' altrimenti sto solo visualizzando
|
||||
' altrimenti sto solo visualizzando
|
||||
Else
|
||||
OmagOFFICEMap.refMachiningTabVM.NextIsEnabled = (m_nCurrPhase < EgtGetPhaseCount())
|
||||
End If
|
||||
@@ -1200,6 +1382,84 @@ Public Class SplitModeVM
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub CreateCutIsChecked()
|
||||
' attivo la scena per renderla attiva
|
||||
If m_CreateCut_IsChecked Then
|
||||
' OmagOFFICEMap.refSceneHostVM.MainScene.SetStatusSelPoint()
|
||||
OmagOFFICEMap.refSceneHostVM.MainScene.SetStatusNull()
|
||||
ResetSplitCut()
|
||||
Else
|
||||
' ????????
|
||||
ResetSplitCut()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub RemoveCutIsChecked()
|
||||
If m_RemoveCut_IsChecked Then
|
||||
OmagOFFICEMap.refSceneHostVM.MainScene.SetStatusNull()
|
||||
ResetSplitCut()
|
||||
Else
|
||||
' ????????
|
||||
ResetSplitCut()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub CreateParellelCutIsChecked()
|
||||
If m_CreateParallelCut_IsChecked Then
|
||||
OmagOFFICEMap.refSceneHostVM.MainScene.SetStatusNull()
|
||||
ResetSplitCut()
|
||||
Else
|
||||
' ????????
|
||||
ResetSplitCut()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub ModifyCutIsChecked()
|
||||
If m_CreateParallelCut_IsChecked Then
|
||||
OmagOFFICEMap.refSceneHostVM.MainScene.SetStatusNull()
|
||||
ResetSplitCut()
|
||||
Else
|
||||
' ????????
|
||||
ResetSplitCut()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
' Forzo la fine della creazione di un elemento SplitCut
|
||||
Private Sub ResetSplitCut()
|
||||
EgtResetMark(m_IdCurrRawSolid)
|
||||
If m_IdSplitGroup <> GDB_ID.NULL Then
|
||||
EgtErase(m_IdSplitGroup)
|
||||
EgtDraw()
|
||||
End If
|
||||
m_bGetStartPoint = False
|
||||
m_bGetEndPoint = False
|
||||
m_IdSplitLine = GDB_ID.NULL
|
||||
m_IdSplitGroup = GDB_ID.NULL
|
||||
m_IdSplitGroupLayer = GDB_ID.NULL
|
||||
m_IdCurrRawSolid = GDB_ID.NULL
|
||||
m_IdSplitLineRemove = GDB_ID.NULL
|
||||
End Sub
|
||||
|
||||
' spegno il comando Split correntemente attivo
|
||||
Public Sub DeactiveSplitCut()
|
||||
ResetSplitCut()
|
||||
m_RemoveCut_IsChecked = False
|
||||
m_CreateCut_IsChecked = False
|
||||
m_CreateParallelCut_IsChecked = False
|
||||
m_ModifyCut_IsChecked = False
|
||||
NotifyPropertyChanged(NameOf(CreateCut_IsChecked))
|
||||
NotifyPropertyChanged(NameOf(CreateParallelCut_IsChecked))
|
||||
NotifyPropertyChanged(NameOf(RemoveCut_IsChecked))
|
||||
NotifyPropertyChanged(NameOf(ModifyCut_IsChecked))
|
||||
End Sub
|
||||
|
||||
Public Sub ResetAllMark()
|
||||
For Each Item As NameIdLsBxItem In m_ItemList
|
||||
Item.IsSelected = False
|
||||
MarkMachining(Item.Ind, False)
|
||||
Next
|
||||
End Sub
|
||||
|
||||
#End Region ' METHODS
|
||||
|
||||
#Region "COMMANDS"
|
||||
@@ -2608,7 +2868,7 @@ Public Class SplitModeVM
|
||||
EgtDraw()
|
||||
End Sub
|
||||
|
||||
Private Sub DeselectWJBridgesPart()
|
||||
Public Sub DeselectWJBridgesPart()
|
||||
' se in fase di definzione di un ponticello lo elimino
|
||||
If m_nIdSelectedSideWJ_Srt <> GDB_ID.NULL And m_nIdSelectedSideWJ_End = GDB_ID.NULL And m_nIdBridge <> GDB_ID.NULL Then
|
||||
EgtErase(EgtGetParent(m_nIdBridge))
|
||||
@@ -2695,7 +2955,69 @@ Public Class SplitModeVM
|
||||
|
||||
#End Region ' Quality
|
||||
|
||||
' Genera la lavorazione associata al percoso indicato
|
||||
Private Function CreateSingleCut() As Boolean
|
||||
Dim bOk As Boolean = False
|
||||
' Verifico sia definito il punto iniziale e il grezzo
|
||||
If Not (m_bGetStartPoint And m_bGetEndPoint) AndAlso m_IdCurrRawSolid <> GDB_ID.NULL Then
|
||||
Return False
|
||||
End If
|
||||
' Spessore grezzo
|
||||
Dim ptRawMin, ptRawMax As Point3d
|
||||
If Not EgtGetRawPartBBox(m_IdCurrRawSolid, ptRawMin, ptRawMax) Then Return False
|
||||
Dim dRawHeight As Double = ptRawMax.z - ptRawMin.z
|
||||
' Recupero spessore lama corrente
|
||||
Dim sSaw As String = CurrentMachine.sCurrSaw
|
||||
Dim sSawing As String = CurrentMachine.sCurrSawing
|
||||
EgtTdbSetCurrTool(sSaw)
|
||||
Dim dThick As Double = 0
|
||||
' Se è impostata una lavorazione di lama
|
||||
If Not String.IsNullOrEmpty(sSawing) Then
|
||||
EgtTdbGetCurrToolParam(MCH_TP.THICK, dThick)
|
||||
End If
|
||||
' Recupero pezzo per il taglio diretto
|
||||
Dim nPartId = m_IdSplitGroup
|
||||
' Calcolo punto di inserimento nel grezzo
|
||||
Dim ptMin, ptMax As Point3d
|
||||
EgtGetBBoxGlob(nPartId, GDB_BB.STANDARD, ptMin, ptMax)
|
||||
Dim ptTabOri As Point3d
|
||||
EgtGetTableRef(1, ptTabOri)
|
||||
'Dim ptIns As Point3d = ptMin + (ptTabOri - ptRawMin)
|
||||
Dim ptOri As New Point3d
|
||||
Dim ptIns As Point3d = ptOri + (ptMin - ptRawMin)
|
||||
ptIns.z = dRawHeight
|
||||
' Imposto la fase corrente
|
||||
EgtSetCurrPhase(m_nCurrPhase)
|
||||
' Inserisco il taglio nel grezzo : CamAuto.GetCurrentRaw()
|
||||
EgtAddPartToRawPart(nPartId, ptIns, m_IdCurrRawSolid)
|
||||
' Inserisco la lavorazione
|
||||
bOk = AddMachinings(nPartId) AndAlso UpdateAllMachiningsToolpaths()
|
||||
'' Spengo la linea
|
||||
'If bOk Then
|
||||
' EgtSetStatus(m_IdSplitLine, GDB_ST.OFF)
|
||||
'End If
|
||||
Return bOk
|
||||
End Function
|
||||
|
||||
Private Function RemoveCut(nId As Integer) As Boolean
|
||||
Dim bOk As Boolean = False
|
||||
Dim nIdCurrMachGroup As Integer = EgtGetCurrMachGroup()
|
||||
Dim ParentId As Integer = EgtGetParent(nId)
|
||||
While ParentId <> GDB_ID.NULL
|
||||
Dim sCutName As String = String.Empty
|
||||
EgtGetName(ParentId, sCutName)
|
||||
If sCutName.Contains(SPLIT_CUT & "_" & nIdCurrMachGroup.ToString) Then
|
||||
bOk = RemoveCurrentSplitCut(ParentId)
|
||||
Return bOk
|
||||
End If
|
||||
ParentId = EgtGetParent(ParentId)
|
||||
End While
|
||||
Return bOk
|
||||
End Function
|
||||
|
||||
Friend Sub OnMouseDownScene(sender As Object, e As System.Windows.Forms.MouseEventArgs)
|
||||
' Se tasto premuoto allora attivo la selezione multipla da Scena
|
||||
Dim bKeyCtrlPressed = (Keyboard.Modifiers And ModifierKeys.Control) > 0
|
||||
' Verifico di essere il gestore attivo e non in modalità sola visualizzazione
|
||||
If Not m_bActive OrElse OmagOFFICEMap.refMachiningTabVM.IsShow Then Return
|
||||
' Si può selezionare solo con il tasto sinistro e se stato NULL
|
||||
@@ -2728,6 +3050,136 @@ Public Class SplitModeVM
|
||||
Return
|
||||
End If
|
||||
|
||||
' Recupero le coordinate del punto corrente (solo se esiste la selezione di un grezzo corrente -> vedi sotto)
|
||||
If m_CreateCut_IsChecked AndAlso m_IdCurrRawSolid <> GDB_ID.NULL Then
|
||||
Dim ptCurr As Point3d
|
||||
EgtUnProjectPoint(e.Location, ptCurr)
|
||||
If m_bGetStartPoint And Not m_bGetEndPoint Then
|
||||
m_ptEndPoint = ptCurr
|
||||
m_bGetEndPoint = True
|
||||
End If
|
||||
If Not m_bGetStartPoint Then
|
||||
m_ptStartPoint = ptCurr
|
||||
m_bGetStartPoint = True
|
||||
m_IdSplitGroup = EgtCreateGroup(GDB_ID.ROOT)
|
||||
Dim nIdCurrMachGroup As Integer = EgtGetCurrMachGroup()
|
||||
EgtSetName(m_IdSplitGroup, SPLIT_CUT & "_" & nIdCurrMachGroup.ToString & "." & EgtGetCurrPhase())
|
||||
m_IdSplitGroupLayer = EgtCreateGroup(m_IdSplitGroup)
|
||||
EgtSetName(m_IdSplitGroupLayer, NAME_OUTLOOP)
|
||||
End If
|
||||
If m_bGetStartPoint And m_bGetEndPoint Then
|
||||
' procedo a disegnare la linea tra i due punti indicati
|
||||
Dim ptRawMin, ptRawMax As Point3d
|
||||
If EgtGetRawPartBBox(m_IdCurrRawSolid, ptRawMin, ptRawMax) Then
|
||||
m_ptStartPoint.z = ptRawMax.z
|
||||
m_ptEndPoint.z = ptRawMax.z
|
||||
EgtModifyCurveEndPoint(m_IdSplitLine, m_ptEndPoint)
|
||||
CreateSingleCut()
|
||||
' Resetto tutte le variabili utilizzate
|
||||
EgtResetMark(m_IdCurrRawSolid)
|
||||
m_bGetStartPoint = False
|
||||
m_bGetEndPoint = False
|
||||
m_IdSplitLine = GDB_ID.NULL
|
||||
m_IdSplitGroup = GDB_ID.NULL
|
||||
m_IdSplitGroupLayer = GDB_ID.NULL
|
||||
m_IdCurrRawSolid = GDB_ID.NULL
|
||||
m_IdSplitLineRemove = GDB_ID.NULL
|
||||
' Aggiorno la visualizzazione
|
||||
PreviewMachinigList()
|
||||
EgtDraw()
|
||||
End If
|
||||
End If
|
||||
Return
|
||||
ElseIf m_CreateCut_IsChecked AndAlso m_IdCurrRawSolid = GDB_ID.NULL Then
|
||||
' Verifico se selezionato grezzo
|
||||
EgtSetObjFilterForSelWin(False, False, True, False, False)
|
||||
Dim nSelRaw As Integer
|
||||
EgtSelect(e.Location, Scene.DIM_SEL, Scene.DIM_SEL, nSelRaw)
|
||||
Dim nIdRaw As Integer = EgtGetFirstObjInSelWin()
|
||||
While nIdRaw <> GDB_ID.NULL
|
||||
Dim sRawName As String = String.Empty
|
||||
If EgtGetName(nIdRaw, sRawName) AndAlso sRawName = NAME_RAW_SOLID Then
|
||||
m_IdCurrRawSolid = EgtGetParent(nIdRaw)
|
||||
EgtSetMark(m_IdCurrRawSolid)
|
||||
EgtDraw()
|
||||
Return
|
||||
End If
|
||||
nIdRaw = EgtGetNextObjInSelWin()
|
||||
End While
|
||||
Return
|
||||
End If
|
||||
|
||||
If m_CreateParallelCut_IsChecked AndAlso m_IdCurrRawSolid = GDB_ID.NULL Then
|
||||
' Verifico se selezionato grezzo
|
||||
EgtSetObjFilterForSelWin(False, False, True, False, False)
|
||||
Dim nSelRaw As Integer
|
||||
EgtSelect(e.Location, Scene.DIM_SEL, Scene.DIM_SEL, nSelRaw)
|
||||
Dim nIdRaw As Integer = EgtGetFirstObjInSelWin()
|
||||
While nIdRaw <> GDB_ID.NULL
|
||||
Dim sRawName As String = String.Empty
|
||||
If EgtGetName(nIdRaw, sRawName) AndAlso sRawName = NAME_RAW_SOLID Then
|
||||
m_IdCurrRawSolid = EgtGetParent(nIdRaw)
|
||||
EgtSetMark(m_IdCurrRawSolid)
|
||||
EgtDraw()
|
||||
Return
|
||||
End If
|
||||
nIdRaw = EgtGetNextObjInSelWin()
|
||||
End While
|
||||
Return
|
||||
ElseIf m_CreateParallelCut_IsChecked AndAlso m_IdCurrRawSolid <> GDB_ID.NULL AndAlso m_bGetStartPoint AndAlso Not m_bGetEndPoint Then
|
||||
m_bGetEndPoint = True
|
||||
CreateSingleCut()
|
||||
' Resetto tutte le variabili utilizzate
|
||||
EgtResetMark(m_IdCurrRawSolid)
|
||||
m_bGetStartPoint = False
|
||||
m_bGetEndPoint = False
|
||||
m_IdSplitLine = GDB_ID.NULL
|
||||
m_IdSplitGroup = GDB_ID.NULL
|
||||
m_IdSplitGroupLayer = GDB_ID.NULL
|
||||
m_IdCurrRawSolid = GDB_ID.NULL
|
||||
m_IdSplitLineRemove = GDB_ID.NULL
|
||||
' Aggiorno la visualizzazione
|
||||
PreviewMachinigList()
|
||||
EgtDraw()
|
||||
Return
|
||||
End If
|
||||
|
||||
If m_ModifyCut_IsChecked AndAlso m_IdCurrRawSolid = GDB_ID.NULL Then
|
||||
' Verifico se selezionato grezzo
|
||||
EgtSetObjFilterForSelWin(False, False, True, False, False)
|
||||
Dim nSelRaw As Integer
|
||||
EgtSelect(e.Location, Scene.DIM_SEL, Scene.DIM_SEL, nSelRaw)
|
||||
Dim nIdRaw As Integer = EgtGetFirstObjInSelWin()
|
||||
While nIdRaw <> GDB_ID.NULL
|
||||
Dim sRawName As String = String.Empty
|
||||
If EgtGetName(nIdRaw, sRawName) AndAlso sRawName = NAME_RAW_SOLID Then
|
||||
m_IdCurrRawSolid = EgtGetParent(nIdRaw)
|
||||
EgtSetMark(m_IdCurrRawSolid)
|
||||
EgtDraw()
|
||||
Return
|
||||
End If
|
||||
nIdRaw = EgtGetNextObjInSelWin()
|
||||
End While
|
||||
Return
|
||||
ElseIf m_ModifyCut_IsChecked AndAlso m_IdCurrRawSolid <> GDB_ID.NULL AndAlso m_bGetStartPoint AndAlso Not m_bGetEndPoint Then
|
||||
m_bGetEndPoint = True
|
||||
CreateSingleCut()
|
||||
RemoveCut(m_IdSplitLineRemove)
|
||||
' Resetto tutte le variabili utilizzate
|
||||
EgtResetMark(m_IdCurrRawSolid)
|
||||
m_bGetStartPoint = False
|
||||
m_bGetEndPoint = False
|
||||
m_IdSplitLine = GDB_ID.NULL
|
||||
m_IdSplitGroup = GDB_ID.NULL
|
||||
m_IdSplitGroupLayer = GDB_ID.NULL
|
||||
m_IdCurrRawSolid = GDB_ID.NULL
|
||||
m_IdSplitLineRemove = GDB_ID.NULL
|
||||
' Aggiorno la visualizzazione
|
||||
PreviewMachinigList()
|
||||
EgtDraw()
|
||||
Return
|
||||
End If
|
||||
|
||||
' Reset drag
|
||||
m_nDragInd = -1
|
||||
m_nDragType = 0
|
||||
@@ -2739,6 +3191,95 @@ Public Class SplitModeVM
|
||||
EgtSelect(e.Location, Scene.DIM_SEL, Scene.DIM_SEL, nSel)
|
||||
Dim nId As Integer = EgtGetFirstObjInSelWin()
|
||||
While nId <> GDB_ID.NULL
|
||||
' --------------------------------- SPLIT CUT ---------------------------------
|
||||
' Se attiva l'eliminazione di un taglio di separazione
|
||||
If m_RemoveCut_IsChecked Then
|
||||
RemoveCut(nId)
|
||||
' Aggiorno la visualizzazione
|
||||
PreviewMachinigList()
|
||||
EgtDraw()
|
||||
Return
|
||||
End If
|
||||
|
||||
' Recupero le info del pezzo selezionato per procedere a generare
|
||||
If m_CreateParallelCut_IsChecked AndAlso m_IdCurrRawSolid <> GDB_ID.NULL Then
|
||||
Dim sMyName As String = ""
|
||||
EgtGetName(nId, sMyName)
|
||||
If String.Compare(sMyName, NAME_PV_CUT) = 0 Then
|
||||
Dim nPvId As Integer = EgtGetParent(EgtGetParent(nId))
|
||||
Dim sPvid As String = String.Empty
|
||||
EgtGetName(nPvId, sPvid)
|
||||
If sPvid.StartsWith("Saw") Then
|
||||
sPvid = sPvid.Remove(0, 3)
|
||||
If IsNumeric(sPvid) Then
|
||||
Dim nIdLine As Integer = CInt(sPvid)
|
||||
m_IdSplitGroup = EgtCreateGroup(GDB_ID.ROOT)
|
||||
Dim nIdCurrMachGroup As Integer = EgtGetCurrMachGroup()
|
||||
EgtSetName(m_IdSplitGroup, SPLIT_CUT & "_" & nIdCurrMachGroup.ToString & "." & EgtGetCurrPhase())
|
||||
m_IdSplitGroupLayer = EgtCreateGroup(m_IdSplitGroup)
|
||||
EgtSetName(m_IdSplitGroupLayer, NAME_OUTLOOP)
|
||||
m_IdSplitLine = EgtCopyGlob(nIdLine, m_IdSplitGroupLayer)
|
||||
' Recupero la dimennsione del taglio (non basta copiare la geometria)
|
||||
Dim dUsal As Double = 0
|
||||
Dim dUeal As Double = 0
|
||||
Dim nMchId As Integer = GDB_ID.NULL
|
||||
If EgtGetInfo(nPvId, "MId", nMchId) Then
|
||||
EgtGetInfo(nMchId, INFO_MCH_USER_SAL, dUsal)
|
||||
EgtGetInfo(nMchId, INFO_MCH_USER_EAL, dUeal)
|
||||
End If
|
||||
' Aggiorno la dimensione della geometria
|
||||
EgtExtendCurveStartByLen(m_IdSplitLine, dUsal)
|
||||
EgtExtendCurveEndByLen(m_IdSplitLine, dUeal)
|
||||
EgtDeselectObj(nId)
|
||||
m_bGetStartPoint = True
|
||||
End If
|
||||
End If
|
||||
Return
|
||||
End If
|
||||
Return
|
||||
End If
|
||||
|
||||
If m_ModifyCut_IsChecked AndAlso m_IdCurrRawSolid <> GDB_ID.NULL Then
|
||||
Dim sMyName As String = ""
|
||||
EgtGetName(nId, sMyName)
|
||||
If String.Compare(sMyName, NAME_PV_CUT) = 0 Then
|
||||
Dim nPvId As Integer = EgtGetParent(EgtGetParent(nId))
|
||||
Dim sPvId As String = String.Empty
|
||||
EgtGetName(nPvId, sPvId)
|
||||
If sPvId.StartsWith("Saw") Then
|
||||
sPvId = sPvId.Remove(0, 3)
|
||||
If IsNumeric(sPvId) Then
|
||||
Dim nIdLine As Integer = CInt(sPvId)
|
||||
m_IdSplitGroup = EgtCreateGroup(GDB_ID.ROOT)
|
||||
Dim nIdCurrMachGroup As Integer = EgtGetCurrMachGroup()
|
||||
EgtSetName(m_IdSplitGroup, SPLIT_CUT & "_" & nIdCurrMachGroup.ToString & "." & EgtGetCurrPhase())
|
||||
m_IdSplitGroupLayer = EgtCreateGroup(m_IdSplitGroup)
|
||||
EgtSetName(m_IdSplitGroupLayer, NAME_OUTLOOP)
|
||||
m_IdSplitLine = EgtCopyGlob(nIdLine, m_IdSplitGroupLayer)
|
||||
' Recupero la dimennsione del taglio (non basta copiare la geometria)
|
||||
Dim dUsal As Double = 0
|
||||
Dim dUeal As Double = 0
|
||||
Dim nMchId As Integer = GDB_ID.NULL
|
||||
If EgtGetInfo(nPvId, "MId", nMchId) Then
|
||||
EgtGetInfo(nMchId, INFO_MCH_USER_SAL, dUsal)
|
||||
EgtGetInfo(nMchId, INFO_MCH_USER_EAL, dUeal)
|
||||
End If
|
||||
' Aggiorno la dimensione della geometria
|
||||
EgtExtendCurveStartByLen(m_IdSplitLine, dUsal)
|
||||
EgtExtendCurveEndByLen(m_IdSplitLine, dUeal)
|
||||
EgtDeselectObj(nId)
|
||||
' Salvo l'Id del tagli da eliminare
|
||||
m_IdSplitLineRemove = nId
|
||||
m_bGetStartPoint = True
|
||||
EgtDraw()
|
||||
End If
|
||||
End If
|
||||
Return
|
||||
End If
|
||||
Return
|
||||
End If
|
||||
|
||||
' --------------------------------- SPLIT CUT ---------------------------------
|
||||
' Verifico sia un attacco o uscita di taglio con lama
|
||||
Dim nType As Integer = 0
|
||||
Dim sName As String = ""
|
||||
@@ -2803,7 +3344,14 @@ Public Class SplitModeVM
|
||||
If m_nSelected >= 0 AndAlso EgtUnProjectPoint(e.Location, m_ptDragPrev) Then
|
||||
Dim nItemIndex = 0
|
||||
For Each Item In ItemList
|
||||
Item.IsSelected = (nItemIndex = m_nSelected)
|
||||
If Not bKeyCtrlPressed Then
|
||||
Item.IsSelected = (nItemIndex = m_nSelected)
|
||||
Else
|
||||
' procedo ad rendere attivo solo l'elemnento selezionato
|
||||
If nItemIndex = m_nSelected Then
|
||||
Item.IsSelected = True
|
||||
End If
|
||||
End If
|
||||
nItemIndex += 1
|
||||
Next
|
||||
Else
|
||||
@@ -2828,6 +3376,46 @@ Public Class SplitModeVM
|
||||
Return
|
||||
End If
|
||||
|
||||
' Recupero le coordinate del punto corrente
|
||||
If m_CreateCut_IsChecked Then
|
||||
If m_bGetStartPoint And Not m_bGetEndPoint Then
|
||||
m_ptEndPoint = ptCurr
|
||||
End If
|
||||
If m_bGetStartPoint And Not m_bGetEndPoint Then
|
||||
' procedo a disegnare la linea tra i due punti indicati
|
||||
Dim ptRawMin, ptRawMax As Point3d
|
||||
If EgtGetRawPartBBox(m_IdCurrRawSolid, ptRawMin, ptRawMax) Then
|
||||
m_ptStartPoint.z = ptRawMax.z
|
||||
m_ptEndPoint.z = ptRawMax.z
|
||||
If m_IdSplitLine = GDB_ID.NULL Then
|
||||
m_IdSplitLine = EgtCreateLine(m_IdSplitGroupLayer, m_ptStartPoint, m_ptEndPoint)
|
||||
Else
|
||||
EgtModifyCurveEndPoint(m_IdSplitLine, m_ptEndPoint)
|
||||
End If
|
||||
EgtDraw()
|
||||
End If
|
||||
End If
|
||||
Return
|
||||
End If
|
||||
|
||||
If m_CreateParallelCut_IsChecked AndAlso m_IdSplitLine <> GDB_ID.NULL Then
|
||||
Dim mPoint3d As Point3d
|
||||
EgtMidPoint(m_IdSplitLine, mPoint3d)
|
||||
mPoint3d.z = 0
|
||||
ptCurr.z = 0
|
||||
EgtMove(m_IdSplitLine, ptCurr - mPoint3d)
|
||||
EgtDraw()
|
||||
End If
|
||||
|
||||
If m_ModifyCut_IsChecked AndAlso m_IdSplitLine <> GDB_ID.NULL Then
|
||||
Dim mPoint3d As Point3d
|
||||
EgtMidPoint(m_IdSplitLine, mPoint3d)
|
||||
mPoint3d.z = 0
|
||||
ptCurr.z = 0
|
||||
EgtMove(m_IdSplitLine, ptCurr - mPoint3d)
|
||||
EgtDraw()
|
||||
End If
|
||||
|
||||
' Se drag non abilitato o in corso
|
||||
If m_nDragInd = -1L Or m_bDragging Then Return
|
||||
m_bDragging = True
|
||||
@@ -2878,19 +3466,19 @@ Public Class SplitModeVM
|
||||
dUeal = dOrigUeal + dDelta
|
||||
' Se c'è limite alla lunghezza libera
|
||||
If m_MachiningList(m_nDragInd).m_dEndFreeLen < FREELEN_INF Then
|
||||
' Recupero sicurezza in corner interno
|
||||
Dim dCornerSafety As Double = Math.Max(GetPrivateProfileDouble(S_MACH_NEST, K_MACH_SAFE_LEN_INTCORNER, 1, CurrentMachine.sMachIniFile), 10 * EPS_SMALL)
|
||||
' Recupero lunghezza baffo del taglio
|
||||
Dim nPvId As Integer = GDB_ID.NULL
|
||||
EgtGetInfo(EgtGetFirstNameInGroup(nOperId, NAME_PREVIEW), INFO_PV_ONPART_ID, nPvId)
|
||||
Dim dDT As Double = 0
|
||||
EgtGetInfo(EgtGetFirstGroupInGroup(nPvId), "DT", dDT)
|
||||
dUeal = Math.Min(dUeal, m_MachiningList(m_nDragInd).m_dEndFreeLen - dDT - dCornerSafety)
|
||||
End If
|
||||
' Modifica della lavorazione
|
||||
EgtSetCurrMachining(nOperId)
|
||||
Dim dAddLen As Double = 0
|
||||
EgtGetMachiningParam(MCH_MP.ENDADDLEN, dAddLen)
|
||||
' Recupero sicurezza in corner interno
|
||||
Dim dCornerSafety As Double = Math.Max(GetPrivateProfileDouble(S_MACH_NEST, K_MACH_SAFE_LEN_INTCORNER, 1, CurrentMachine.sMachIniFile), 10 * EPS_SMALL)
|
||||
' Recupero lunghezza baffo del taglio
|
||||
Dim nPvId As Integer = GDB_ID.NULL
|
||||
EgtGetInfo(EgtGetFirstNameInGroup(nOperId, NAME_PREVIEW), INFO_PV_ONPART_ID, nPvId)
|
||||
Dim dDT As Double = 0
|
||||
EgtGetInfo(EgtGetFirstGroupInGroup(nPvId), "DT", dDT)
|
||||
dUeal = Math.Min(dUeal, m_MachiningList(m_nDragInd).m_dEndFreeLen - dDT - dCornerSafety)
|
||||
End If
|
||||
' Modifica della lavorazione
|
||||
EgtSetCurrMachining(nOperId)
|
||||
Dim dAddLen As Double = 0
|
||||
EgtGetMachiningParam(MCH_MP.ENDADDLEN, dAddLen)
|
||||
If dAddLen - dOrigUeal < -10 * EPS_SMALL Then
|
||||
m_bDragging = False
|
||||
Return
|
||||
@@ -2951,10 +3539,10 @@ Public Class SplitModeVM
|
||||
Return m_sName
|
||||
End Get
|
||||
Set(value As String)
|
||||
If value <> m_sName Then
|
||||
m_sName = value
|
||||
NotifyPropertyChanged("Name")
|
||||
End If
|
||||
If value <> m_sName Then
|
||||
m_sName = value
|
||||
NotifyPropertyChanged("Name")
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
@@ -1994,6 +1994,8 @@ Public Class NestingTabVM
|
||||
ResetAllStartCurv()
|
||||
' cancello tutti i ponticelli disegnati
|
||||
ResetAllBridges()
|
||||
' cancello tutti i tagli di separazione disegnati
|
||||
ResetAllSplitCut()
|
||||
' Cancello tutte le lavorazioni
|
||||
CamAuto.EraseMachinings(GDB_ID.NULL)
|
||||
' Reinserisco tutte le lavorazioni piane
|
||||
|
||||
@@ -68,6 +68,7 @@
|
||||
</TabItem.Content>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<!--Se click + Key Shift sopra Label apertura dellì file Log-->
|
||||
<Label Grid.Row="1"
|
||||
Background="Transparent"
|
||||
MouseLeftButtonDown="Label_MouseLeftButtonDown"/>
|
||||
|
||||
@@ -28,6 +28,7 @@ Public Class OptionPanelV
|
||||
End Sub
|
||||
|
||||
Private Sub Label_MouseLeftButtonDown(sender As Object, e As MouseButtonEventArgs)
|
||||
If Not (Keyboard.Modifiers And ModifierKeys.Shift) > 0 Then Return
|
||||
Dim sTmpDir As String = String.Empty
|
||||
If Not EgtInterface.EgtGetTempDir(sTmpDir) Then Return
|
||||
' Genero file CNC (lancio anche se errore in precedenza)
|
||||
|
||||
|
After Width: | Height: | Size: 4.5 KiB |
|
After Width: | Height: | Size: 4.7 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 2.4 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 538 B |
|
After Width: | Height: | Size: 2.5 KiB |
|
After Width: | Height: | Size: 2.8 KiB |
@@ -221,6 +221,32 @@
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="CSV_Button" TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}">
|
||||
<Setter Property="Height" Value="30"/>
|
||||
<Setter Property="Width" Value="30"/>
|
||||
<Setter Property="Margin" Value="0"/>
|
||||
<Setter Property="Background" Value="Transparent"/>
|
||||
<Setter Property="BorderThickness" Value="{StaticResource BorderBtn_Thickness}"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type Button}">
|
||||
<Border x:Name="border" CornerRadius="0" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" SnapsToDevicePixels="true">
|
||||
<ContentPresenter x:Name="contentPresenter" Focusable="False" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
|
||||
</Border>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsEnabled" Value="False">
|
||||
<Setter Property="OpacityMask" Value="#54707070"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsMouseOver" Value="true">
|
||||
<Setter Property="Background" Value="#008BFF"/>
|
||||
<Setter Property="BorderBrush" Value="#008BFF"/>
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="WaterjetDB_Button" TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}">
|
||||
<Setter Property="Height" Value="30"/>
|
||||
<Setter Property="Width" Value="30"/>
|
||||
@@ -511,6 +537,12 @@
|
||||
<Setter Property="Width" Value="30"/>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="CSV_ToggleButton" TargetType="{x:Type ToggleButton}" BasedOn="{StaticResource {x:Type ToggleButton}}">
|
||||
<Setter Property="Background" Value="Transparent"/>
|
||||
<Setter Property="Height" Value="30"/>
|
||||
<Setter Property="Width" Value="30"/>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="ToolBar_TextToggleButton" TargetType="{x:Type ToggleButton}" BasedOn="{StaticResource {x:Type ToggleButton}}">
|
||||
<Setter Property="Height" Value="30"/>
|
||||
<Setter Property="Width" Value="70"/>
|
||||
@@ -554,6 +586,7 @@
|
||||
|
||||
<Style x:Key="CompoWindow_ToggleButton" TargetType="{x:Type ToggleButton}" BasedOn="{StaticResource {x:Type ToggleButton}}">
|
||||
<Setter Property="Height" Value="40"/>
|
||||
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="CompoWindow_WrapToggleButton" TargetType="{x:Type ToggleButton}" BasedOn="{StaticResource {x:Type ToggleButton}}">
|
||||
@@ -1144,7 +1177,7 @@
|
||||
<Style x:Key="ImgButton" TargetType="{x:Type Image}" >
|
||||
<Setter Property="Height" Value="35"/>
|
||||
<Setter Property="Width" Value="35"/>
|
||||
<Setter Property="Margin" Value="0,2,0,0"/>
|
||||
<Setter Property="Margin" Value="0,0,0,0"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
</Style>
|
||||
@@ -1182,4 +1215,296 @@
|
||||
<Setter Property="BorderThickness" Value="{StaticResource BorderBtn_Thickness}"/>
|
||||
</Style>
|
||||
|
||||
<!-- ______________________________________________________________________________________________________________________________________________ -->
|
||||
|
||||
<!-- Expander -->
|
||||
<SolidColorBrush x:Key="Expander.Static.Circle.Stroke" Color="DarkGray"/>
|
||||
<SolidColorBrush x:Key="Expander.Static.Circle.Fill" Color="Transparent"/>
|
||||
<SolidColorBrush x:Key="Expander.Static.Arrow.Stroke" Color="#666"/>
|
||||
<SolidColorBrush x:Key="Expander.MouseOver.Circle.Stroke" Color="#FF3C7FB1"/>
|
||||
<SolidColorBrush x:Key="Expander.MouseOver.Circle.Fill" Color="Transparent"/>
|
||||
<SolidColorBrush x:Key="Expander.MouseOver.Arrow.Stroke" Color="#222"/>
|
||||
<SolidColorBrush x:Key="Expander.Pressed.Circle.Stroke" Color="#FF526C7B"/>
|
||||
<SolidColorBrush x:Key="Expander.Pressed.Circle.Fill" Color="Transparent"/>
|
||||
<SolidColorBrush x:Key="Expander.Pressed.Arrow.Stroke" Color="#FF003366"/>
|
||||
<SolidColorBrush x:Key="Expander.Disabled.Circle.Stroke" Color="DarkGray"/>
|
||||
<SolidColorBrush x:Key="Expander.Disabled.Circle.Fill" Color="Transparent"/>
|
||||
<SolidColorBrush x:Key="Expander.Disabled.Arrow.Stroke" Color="#666"/>
|
||||
<Style x:Key="ExpanderHeaderFocusVisual">
|
||||
<Setter Property="Control.Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate>
|
||||
<Border>
|
||||
<Rectangle Margin="0" StrokeDashArray="1 2" Stroke="black" SnapsToDevicePixels="true" StrokeThickness="1"/>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
<!--ExpanderDirection: Down (in uso nella pagin Split)-->
|
||||
<Style x:Key="ExpanderDownHeaderStyle" TargetType="{x:Type ToggleButton}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type ToggleButton}">
|
||||
<Border Padding="{TemplateBinding Padding}">
|
||||
<Grid Background="Transparent" SnapsToDevicePixels="False">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="15"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Rectangle x:Name="circle" Fill="Transparent" HorizontalAlignment="Center" Height="15"
|
||||
Stroke="Transparent" VerticalAlignment="Center" Width="15"/>
|
||||
<Path x:Name="arrow" Data="M 1,4.5 L 4.5,1 L 8,4.5" HorizontalAlignment="Center" Stroke="White"
|
||||
SnapsToDevicePixels="false" StrokeThickness="2" VerticalAlignment="Center"/>
|
||||
<ContentPresenter Grid.Column="1" HorizontalAlignment="Left" Margin="4,0,0,0" RecognizesAccessKey="True" SnapsToDevicePixels="True" VerticalAlignment="Center"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsChecked" Value="true">
|
||||
<Setter Property="Data" TargetName="arrow" Value="M 1,4.5 L 4.5,1 L 8,4.5"/>
|
||||
</Trigger>
|
||||
<!--<Trigger Property="IsMouseOver" Value="true">
|
||||
<Setter Property="Stroke" TargetName="circle" Value="{StaticResource Expander.MouseOver.Circle.Stroke}"/>
|
||||
<Setter Property="Fill" TargetName="circle" Value="{StaticResource Expander.MouseOver.Circle.Fill}"/>
|
||||
<Setter Property="Stroke" TargetName="arrow" Value="{StaticResource Expander.MouseOver.Arrow.Stroke}"/>
|
||||
</Trigger>-->
|
||||
<Trigger Property="IsMouseOver" Value="true">
|
||||
<Setter Property="Fill" TargetName="circle" Value="#008BFF"/>
|
||||
<Setter Property="Stroke" TargetName="circle" Value="#008BFF"/>
|
||||
</Trigger>
|
||||
|
||||
<!--<Trigger Property="IsPressed" Value="true">
|
||||
<Setter Property="Stroke" TargetName="circle" Value="{StaticResource Expander.Pressed.Circle.Stroke}"/>
|
||||
<Setter Property="StrokeThickness" TargetName="circle" Value="1.5"/>
|
||||
<Setter Property="Fill" TargetName="circle" Value="{StaticResource Expander.Pressed.Circle.Fill}"/>
|
||||
<Setter Property="Stroke" TargetName="arrow" Value="{StaticResource Expander.Pressed.Arrow.Stroke}"/>
|
||||
</Trigger>-->
|
||||
<Trigger Property="IsPressed" Value="true">
|
||||
<Setter Property="Fill" TargetName="circle" Value="#E1B957"/>
|
||||
<Setter Property="Stroke" TargetName="circle" Value="#E1B957"/>
|
||||
</Trigger>
|
||||
|
||||
<Trigger Property="IsChecked" Value="true">
|
||||
<Setter Property="ToggleButton.Background" Value="{StaticResource Omag_Blue}" />
|
||||
<Setter Property="ToggleButton.BorderBrush" Value="{StaticResource Omag_Blue}" />
|
||||
<Setter Property="ToggleButton.Foreground" Value="{StaticResource Omag_Yellow}"/>
|
||||
</Trigger>
|
||||
|
||||
<!--<Trigger Property="IsEnabled" Value="false">
|
||||
<Setter Property="Stroke" TargetName="circle" Value="{StaticResource Expander.Disabled.Circle.Stroke}"/>
|
||||
<Setter Property="Fill" TargetName="circle" Value="{StaticResource Expander.Disabled.Circle.Fill}"/>
|
||||
<Setter Property="Stroke" TargetName="arrow" Value="{StaticResource Expander.Disabled.Arrow.Stroke}"/>
|
||||
</Trigger>-->
|
||||
<Trigger Property="IsEnabled" Value="false">
|
||||
<!--<Setter Property="ToggleButton.Background" Value="#FFF4F4F4"/>
|
||||
<Setter Property="ToggleButton.BorderBrush" Value="#FFADB2B5"/>
|
||||
<Setter Property="ToggleButton.Foreground" Value="#FF838383"/>-->
|
||||
<Setter Property="OpacityMask" Value="#54707070"/>
|
||||
</Trigger>
|
||||
|
||||
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="ExpanderUpHeaderStyle" TargetType="{x:Type ToggleButton}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type ToggleButton}">
|
||||
<Border Padding="{TemplateBinding Padding}">
|
||||
<Grid Background="Transparent" SnapsToDevicePixels="False">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="19"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid>
|
||||
<Grid.LayoutTransform>
|
||||
<TransformGroup>
|
||||
<TransformGroup.Children>
|
||||
<TransformCollection>
|
||||
<RotateTransform Angle="180"/>
|
||||
</TransformCollection>
|
||||
</TransformGroup.Children>
|
||||
</TransformGroup>
|
||||
</Grid.LayoutTransform>
|
||||
<Ellipse x:Name="circle" Fill="{StaticResource Expander.Static.Circle.Fill}" HorizontalAlignment="Center" Height="19"
|
||||
Stroke="{StaticResource Expander.Static.Circle.Stroke}" VerticalAlignment="Center" Width="19"/>
|
||||
<Path x:Name="arrow" Data="M 1,1.5 L 4.5,5 L 8,1.5" HorizontalAlignment="Center" Stroke="{StaticResource Expander.Static.Arrow.Stroke}" SnapsToDevicePixels="false" StrokeThickness="2" VerticalAlignment="Center"/>
|
||||
</Grid>
|
||||
<ContentPresenter Grid.Column="1" HorizontalAlignment="Left" Margin="4,0,0,0" RecognizesAccessKey="True" SnapsToDevicePixels="True" VerticalAlignment="Center"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsChecked" Value="true">
|
||||
<Setter Property="Data" TargetName="arrow" Value="M 1,4.5 L 4.5,1 L 8,4.5"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsMouseOver" Value="true">
|
||||
<Setter Property="Stroke" TargetName="circle" Value="{StaticResource Expander.MouseOver.Circle.Stroke}"/>
|
||||
<Setter Property="Fill" TargetName="circle" Value="{StaticResource Expander.MouseOver.Circle.Fill}"/>
|
||||
<Setter Property="Stroke" TargetName="arrow" Value="{StaticResource Expander.MouseOver.Arrow.Stroke}"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsPressed" Value="true">
|
||||
<Setter Property="Stroke" TargetName="circle" Value="{StaticResource Expander.Pressed.Circle.Stroke}"/>
|
||||
<Setter Property="StrokeThickness" TargetName="circle" Value="1.5"/>
|
||||
<Setter Property="Fill" TargetName="circle" Value="{StaticResource Expander.Pressed.Circle.Fill}"/>
|
||||
<Setter Property="Stroke" TargetName="arrow" Value="{StaticResource Expander.Pressed.Arrow.Stroke}"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsEnabled" Value="false">
|
||||
<Setter Property="Stroke" TargetName="circle" Value="{StaticResource Expander.Disabled.Circle.Stroke}"/>
|
||||
<Setter Property="Fill" TargetName="circle" Value="{StaticResource Expander.Disabled.Circle.Fill}"/>
|
||||
<Setter Property="Stroke" TargetName="arrow" Value="{StaticResource Expander.Disabled.Arrow.Stroke}"/>
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
<Style x:Key="ExpanderLeftHeaderStyle" TargetType="{x:Type ToggleButton}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type ToggleButton}">
|
||||
<Border Padding="{TemplateBinding Padding}">
|
||||
<Grid Background="Transparent" SnapsToDevicePixels="False">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="19"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid>
|
||||
<Grid.LayoutTransform>
|
||||
<TransformGroup>
|
||||
<TransformGroup.Children>
|
||||
<TransformCollection>
|
||||
<RotateTransform Angle="90"/>
|
||||
</TransformCollection>
|
||||
</TransformGroup.Children>
|
||||
</TransformGroup>
|
||||
</Grid.LayoutTransform>
|
||||
<Ellipse x:Name="circle" Fill="{StaticResource Expander.Static.Circle.Fill}" HorizontalAlignment="Center" Height="19" Stroke="{StaticResource Expander.Static.Circle.Stroke}" VerticalAlignment="Center" Width="19"/>
|
||||
<Path x:Name="arrow" Data="M 1,1.5 L 4.5,5 L 8,1.5" HorizontalAlignment="Center" Stroke="{StaticResource Expander.Static.Arrow.Stroke}" SnapsToDevicePixels="false" StrokeThickness="2" VerticalAlignment="Center"/>
|
||||
</Grid>
|
||||
<ContentPresenter HorizontalAlignment="Center" Margin="0,4,0,0" RecognizesAccessKey="True" Grid.Row="1" SnapsToDevicePixels="True" VerticalAlignment="Top"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsChecked" Value="true">
|
||||
<Setter Property="Data" TargetName="arrow" Value="M 1,4.5 L 4.5,1 L 8,4.5"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsMouseOver" Value="true">
|
||||
<Setter Property="Stroke" TargetName="circle" Value="{StaticResource Expander.MouseOver.Circle.Stroke}"/>
|
||||
<Setter Property="Fill" TargetName="circle" Value="{StaticResource Expander.MouseOver.Circle.Fill}"/>
|
||||
<Setter Property="Stroke" TargetName="arrow" Value="{StaticResource Expander.MouseOver.Arrow.Stroke}"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsPressed" Value="true">
|
||||
<Setter Property="Stroke" TargetName="circle" Value="{StaticResource Expander.Pressed.Circle.Stroke}"/>
|
||||
<Setter Property="StrokeThickness" TargetName="circle" Value="1.5"/>
|
||||
<Setter Property="Fill" TargetName="circle" Value="{StaticResource Expander.Pressed.Circle.Fill}"/>
|
||||
<Setter Property="Stroke" TargetName="arrow" Value="{StaticResource Expander.Pressed.Arrow.Stroke}"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsEnabled" Value="false">
|
||||
<Setter Property="Stroke" TargetName="circle" Value="{StaticResource Expander.Disabled.Circle.Stroke}"/>
|
||||
<Setter Property="Fill" TargetName="circle" Value="{StaticResource Expander.Disabled.Circle.Fill}"/>
|
||||
<Setter Property="Stroke" TargetName="arrow" Value="{StaticResource Expander.Disabled.Arrow.Stroke}"/>
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
<Style x:Key="ExpanderRightHeaderStyle" TargetType="{x:Type ToggleButton}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type ToggleButton}">
|
||||
<Border Padding="{TemplateBinding Padding}">
|
||||
<Grid Background="Transparent" SnapsToDevicePixels="False">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="19"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid>
|
||||
<Grid.LayoutTransform>
|
||||
<TransformGroup>
|
||||
<TransformGroup.Children>
|
||||
<TransformCollection>
|
||||
<RotateTransform Angle="-90"/>
|
||||
</TransformCollection>
|
||||
</TransformGroup.Children>
|
||||
</TransformGroup>
|
||||
</Grid.LayoutTransform>
|
||||
<Ellipse x:Name="circle" Fill="{StaticResource Expander.Static.Circle.Fill}" HorizontalAlignment="Center" Height="19" Stroke="{StaticResource Expander.Static.Circle.Stroke}" VerticalAlignment="Center" Width="19"/>
|
||||
<Path x:Name="arrow" Data="M 1,1.5 L 4.5,5 L 8,1.5" HorizontalAlignment="Center" Stroke="{StaticResource Expander.Static.Arrow.Stroke}" SnapsToDevicePixels="false" StrokeThickness="2" VerticalAlignment="Center"/>
|
||||
</Grid>
|
||||
<ContentPresenter HorizontalAlignment="Center" Margin="0,4,0,0" RecognizesAccessKey="True" Grid.Row="1" SnapsToDevicePixels="True" VerticalAlignment="Top"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsChecked" Value="true">
|
||||
<Setter Property="Data" TargetName="arrow" Value="M 1,4.5 L 4.5,1 L 8,4.5"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsMouseOver" Value="true">
|
||||
<Setter Property="Stroke" TargetName="circle" Value="{StaticResource Expander.MouseOver.Circle.Stroke}"/>
|
||||
<Setter Property="Fill" TargetName="circle" Value="{StaticResource Expander.MouseOver.Circle.Fill}"/>
|
||||
<Setter Property="Stroke" TargetName="arrow" Value="{StaticResource Expander.MouseOver.Arrow.Stroke}"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsPressed" Value="true">
|
||||
<Setter Property="Stroke" TargetName="circle" Value="{StaticResource Expander.Pressed.Circle.Stroke}"/>
|
||||
<Setter Property="StrokeThickness" TargetName="circle" Value="1.5"/>
|
||||
<Setter Property="Fill" TargetName="circle" Value="{StaticResource Expander.Pressed.Circle.Fill}"/>
|
||||
<Setter Property="Stroke" TargetName="arrow" Value="{StaticResource Expander.Pressed.Arrow.Stroke}"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsEnabled" Value="false">
|
||||
<Setter Property="Stroke" TargetName="circle" Value="{StaticResource Expander.Disabled.Circle.Stroke}"/>
|
||||
<Setter Property="Fill" TargetName="circle" Value="{StaticResource Expander.Disabled.Circle.Fill}"/>
|
||||
<Setter Property="Stroke" TargetName="arrow" Value="{StaticResource Expander.Disabled.Arrow.Stroke}"/>
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="{x:Type Expander}">
|
||||
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
|
||||
<Setter Property="Background" Value="Transparent"/>
|
||||
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
|
||||
<Setter Property="VerticalContentAlignment" Value="Stretch"/>
|
||||
<Setter Property="BorderBrush" Value="Transparent"/>
|
||||
<Setter Property="BorderThickness" Value="1"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type Expander}">
|
||||
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="3" SnapsToDevicePixels="true">
|
||||
<DockPanel>
|
||||
<ToggleButton x:Name="HeaderSite" ContentTemplate="{TemplateBinding HeaderTemplate}" Content="{TemplateBinding Header}" ContentTemplateSelector="{TemplateBinding HeaderTemplateSelector}" DockPanel.Dock="Top" FontStretch="{TemplateBinding FontStretch}" Foreground="{TemplateBinding Foreground}" FocusVisualStyle="{StaticResource ExpanderHeaderFocusVisual}" FontStyle="{TemplateBinding FontStyle}" FontFamily="{TemplateBinding FontFamily}" FontWeight="{TemplateBinding FontWeight}" FontSize="{TemplateBinding FontSize}" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" IsChecked="{Binding IsExpanded, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" Margin="1" MinWidth="0" MinHeight="0" Padding="{TemplateBinding Padding}" Style="{StaticResource ExpanderDownHeaderStyle}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"/>
|
||||
<ContentPresenter x:Name="ExpandSite" DockPanel.Dock="Bottom" Focusable="false" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Visibility="Collapsed"/>
|
||||
</DockPanel>
|
||||
</Border>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsExpanded" Value="true">
|
||||
<Setter Property="Visibility" TargetName="ExpandSite" Value="Visible"/>
|
||||
</Trigger>
|
||||
<Trigger Property="ExpandDirection" Value="Right">
|
||||
<Setter Property="DockPanel.Dock" TargetName="ExpandSite" Value="Right"/>
|
||||
<Setter Property="DockPanel.Dock" TargetName="HeaderSite" Value="Left"/>
|
||||
<Setter Property="Style" TargetName="HeaderSite" Value="{StaticResource ExpanderRightHeaderStyle}"/>
|
||||
</Trigger>
|
||||
<Trigger Property="ExpandDirection" Value="Up">
|
||||
<Setter Property="DockPanel.Dock" TargetName="ExpandSite" Value="Top"/>
|
||||
<Setter Property="DockPanel.Dock" TargetName="HeaderSite" Value="Bottom"/>
|
||||
<Setter Property="Style" TargetName="HeaderSite" Value="{StaticResource ExpanderUpHeaderStyle}"/>
|
||||
</Trigger>
|
||||
<Trigger Property="ExpandDirection" Value="Left">
|
||||
<Setter Property="DockPanel.Dock" TargetName="ExpandSite" Value="Left"/>
|
||||
<Setter Property="DockPanel.Dock" TargetName="HeaderSite" Value="Right"/>
|
||||
<Setter Property="Style" TargetName="HeaderSite" Value="{StaticResource ExpanderLeftHeaderStyle}"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsEnabled" Value="false">
|
||||
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</ResourceDictionary>
|
||||
|
||||