d0192bfaa6
- migliorate icone della TopBar e di esecuzione script - aggiunti a opzioni fattori di scala per import Dxf, Stl e immagini - aggiunte a opzioni dimensioni immagini di export.
627 lines
22 KiB
VB.net
627 lines
22 KiB
VB.net
Imports System.Collections.ObjectModel
|
|
Imports EgtUILib
|
|
|
|
Public Class OptionWindowVM
|
|
Inherits VMBase
|
|
|
|
Public ReadOnly Property LanguageList As ObservableCollection(Of Language)
|
|
Get
|
|
Return OptionModule.m_LanguageList
|
|
End Get
|
|
End Property
|
|
|
|
Private m_GeomTypeList As ObservableCollection(Of SceneSelModeOpt) = New ObservableCollection(Of SceneSelModeOpt)({SceneSelModeOpt.PARTCURVES, SceneSelModeOpt.PARTSURFACES, SceneSelModeOpt.PARTCURVESANDSURFACES})
|
|
Public ReadOnly Property GeomTypeList As ObservableCollection(Of SceneSelModeOpt)
|
|
Get
|
|
Return m_GeomTypeList
|
|
End Get
|
|
End Property
|
|
|
|
Public Property SelectedLanguage As Language
|
|
Get
|
|
Return OptionModule.m_SelectedLanguage
|
|
End Get
|
|
Set(value As Language)
|
|
If value IsNot OptionModule.m_SelectedLanguage Then
|
|
OptionModule.m_SelectedLanguage = value
|
|
WritePrivateProfileString(S_GENERAL, K_MESSAGES, m_SelectedLanguage.Name)
|
|
End If
|
|
End Set
|
|
End Property
|
|
|
|
Public Property SelectedMillingGeomType As SceneSelModeOpt
|
|
Get
|
|
Return OptionModule.m_SelGeomMilling
|
|
End Get
|
|
Set(value As SceneSelModeOpt)
|
|
If WritePrivateProfileString(S_MACH, K_SELGEOMMILLING, CInt(value).ToString()) Then
|
|
OptionModule.m_SelGeomMilling = value
|
|
End If
|
|
End Set
|
|
End Property
|
|
Public Property SelectedDrillingGeomType As SceneSelModeOpt
|
|
Get
|
|
Return OptionModule.m_SelGeomDrilling
|
|
End Get
|
|
Set(value As SceneSelModeOpt)
|
|
If WritePrivateProfileString(S_MACH, K_SELGEOMDRILLING, CInt(value).ToString()) Then
|
|
OptionModule.m_SelGeomDrilling = value
|
|
End If
|
|
End Set
|
|
End Property
|
|
Public Property SelectedSawingGeomType As SceneSelModeOpt
|
|
Get
|
|
Return OptionModule.m_SelGeomSawing
|
|
End Get
|
|
Set(value As SceneSelModeOpt)
|
|
If WritePrivateProfileString(S_MACH, K_SELGEOMSAWING, CInt(value).ToString()) Then
|
|
OptionModule.m_SelGeomSawing = value
|
|
End If
|
|
End Set
|
|
End Property
|
|
Public Property SelectedPocketingGeomType As SceneSelModeOpt
|
|
Get
|
|
Return OptionModule.m_SelGeomPocketing
|
|
End Get
|
|
Set(value As SceneSelModeOpt)
|
|
If WritePrivateProfileString(S_MACH, K_SELGEOMPOCKETING, CInt(value).ToString()) Then
|
|
OptionModule.m_SelGeomPocketing = value
|
|
End If
|
|
End Set
|
|
End Property
|
|
Public Property SelectedMortisingGeomType As SceneSelModeOpt
|
|
Get
|
|
Return OptionModule.m_SelGeomMortising
|
|
End Get
|
|
Set(value As SceneSelModeOpt)
|
|
If WritePrivateProfileString(S_MACH, K_SELGEOMMORTISING, CInt(value).ToString()) Then
|
|
OptionModule.m_SelGeomMortising = value
|
|
End If
|
|
End Set
|
|
End Property
|
|
Public Property SelectedChiselingGeomType As SceneSelModeOpt
|
|
Get
|
|
Return OptionModule.m_SelGeomChiseling
|
|
End Get
|
|
Set(value As SceneSelModeOpt)
|
|
If WritePrivateProfileString(S_MACH, K_SELGEOMCHISELING, CInt(value).ToString()) Then
|
|
OptionModule.m_SelGeomChiseling = value
|
|
End If
|
|
End Set
|
|
End Property
|
|
|
|
Public Property GeometryTolerance As String
|
|
Get
|
|
Return LenToString(OptionModule.m_dGeometryTolerance, 5)
|
|
End Get
|
|
Set(value As String)
|
|
Dim dVal As Double = 0
|
|
If StringToLen(value, dVal) AndAlso dVal > 0 Then
|
|
OptionModule.m_dGeometryTolerance = dVal
|
|
Map.refProjectVM.GetController.SetSurfTmTolerance(OptionModule.m_dGeometryTolerance)
|
|
WritePrivateProfileString(S_GEOMDB, K_SURFTMTOLER, DoubleToString(OptionModule.m_dGeometryTolerance, 5))
|
|
End If
|
|
End Set
|
|
End Property
|
|
|
|
Public Property NewMachiningIsLastOne As Boolean
|
|
Get
|
|
Return OptionModule.m_bNewMachiningIsLastOne
|
|
End Get
|
|
Set(value As Boolean)
|
|
OptionModule.m_bNewMachiningIsLastOne = value
|
|
WritePrivateProfileString(S_OPTIONS, K_NEWMACHININGISLASTONE, If(value, "1", "0"))
|
|
End Set
|
|
End Property
|
|
|
|
Public Property UseDispositionScript As Boolean
|
|
Get
|
|
Return OptionModule.m_bUseDispositionScript
|
|
End Get
|
|
Set(value As Boolean)
|
|
OptionModule.m_bUseDispositionScript = value
|
|
WritePrivateProfileString(S_OPTIONS, K_USEDISPOSITIONSCRIPT, If(value, "1", "0"))
|
|
End Set
|
|
End Property
|
|
|
|
Public ReadOnly Property TopSceneBackground As Brush
|
|
Get
|
|
Return New SolidColorBrush(Color.FromArgb(CByte(255),
|
|
CByte(OptionModule.m_TopSceneBackground.R),
|
|
CByte(OptionModule.m_TopSceneBackground.G),
|
|
CByte(OptionModule.m_TopSceneBackground.B)))
|
|
End Get
|
|
End Property
|
|
|
|
Public ReadOnly Property BotSceneBackground As Brush
|
|
Get
|
|
Return New SolidColorBrush(Color.FromArgb(CByte(255),
|
|
CByte(OptionModule.m_BotSceneBackground.R),
|
|
CByte(OptionModule.m_BotSceneBackground.G),
|
|
CByte(OptionModule.m_BotSceneBackground.B)))
|
|
End Get
|
|
End Property
|
|
|
|
Public ReadOnly Property GridColor As Brush
|
|
Get
|
|
Return New SolidColorBrush(Color.FromArgb(CByte(255),
|
|
CByte(OptionModule.m_GridColor.R),
|
|
CByte(OptionModule.m_GridColor.G),
|
|
CByte(OptionModule.m_GridColor.B)))
|
|
End Get
|
|
End Property
|
|
|
|
Public ReadOnly Property DefMaterialColor As Brush
|
|
Get
|
|
Return New SolidColorBrush(Color.FromArgb(CByte(255),
|
|
CByte(OptionModule.m_DefMaterialColor.R),
|
|
CByte(OptionModule.m_DefMaterialColor.G),
|
|
CByte(OptionModule.m_DefMaterialColor.B)))
|
|
End Get
|
|
End Property
|
|
|
|
Public Property SmoothTriMesh As Boolean
|
|
Get
|
|
Return OptionModule.m_bTriMeshSmoothed
|
|
End Get
|
|
Set(value As Boolean)
|
|
OptionModule.m_bTriMeshSmoothed = value
|
|
WritePrivateProfileString(S_SCENE, K_SHOWTRIAADV, If(value, "1", "0"))
|
|
EgtSetShowTriaAdv(value)
|
|
End Set
|
|
End Property
|
|
|
|
Public Property DxfScaleFactor As String
|
|
Get
|
|
Return LenToString(OptionModule.m_dDxfScaleFactor, 5)
|
|
End Get
|
|
Set(value As String)
|
|
Dim dVal As Double = 0
|
|
If StringToLen(value, dVal) AndAlso dVal > 0 Then
|
|
OptionModule.m_dDxfScaleFactor = dVal
|
|
WritePrivateProfileString(S_IMPORT, K_DXFSCALE, DoubleToString(OptionModule.m_dDxfScaleFactor, 5))
|
|
Map.refProjectVM.GetController().SetScaleForDxfImport(OptionModule.m_dDxfScaleFactor)
|
|
End If
|
|
End Set
|
|
End Property
|
|
|
|
Public Property StlScaleFactor As String
|
|
Get
|
|
Return LenToString(OptionModule.m_dStlScaleFactor, 5)
|
|
End Get
|
|
Set(value As String)
|
|
Dim dVal As Double = 0
|
|
If StringToLen(value, dVal) AndAlso dVal > 0 Then
|
|
OptionModule.m_dStlScaleFactor = dVal
|
|
WritePrivateProfileString(S_IMPORT, K_STLSCALE, DoubleToString(OptionModule.m_dStlScaleFactor, 5))
|
|
Map.refProjectVM.GetController().SetScaleForStlImport(OptionModule.m_dStlScaleFactor)
|
|
End If
|
|
End Set
|
|
End Property
|
|
|
|
Public Property ImageScaleFactor As String
|
|
Get
|
|
Return LenToString(OptionModule.m_dImgScaleFactor, 5)
|
|
End Get
|
|
Set(value As String)
|
|
Dim dVal As Double = 0
|
|
If StringToLen(value, dVal) AndAlso dVal > 0 Then
|
|
OptionModule.m_dImgScaleFactor = dVal
|
|
WritePrivateProfileString(S_IMPORT, K_IMGSCALE, DoubleToString(OptionModule.m_dImgScaleFactor, 5))
|
|
Map.refProjectVM.GetController().SetScaleForImageImport(OptionModule.m_dImgScaleFactor)
|
|
End If
|
|
End Set
|
|
End Property
|
|
|
|
Public Property ImageWidth As String
|
|
Get
|
|
Return OptionModule.m_nImgWidth.ToString()
|
|
End Get
|
|
Set(value As String)
|
|
Dim nVal As Integer = 0
|
|
If Integer.TryParse(value, nVal) AndAlso nVal > 0 Then
|
|
OptionModule.m_nImgWidth = nVal
|
|
WritePrivateProfileString(S_EXPORT, K_IMGWIDTH, OptionModule.m_nImgWidth.ToString())
|
|
Map.refProjectVM.GetController().SetDefaultForImageExport(OptionModule.m_nImgWidth, OptionModule.m_nImgHeight)
|
|
End If
|
|
End Set
|
|
End Property
|
|
|
|
Public Property ImageHeight As String
|
|
Get
|
|
Return OptionModule.m_nImgHeight.ToString()
|
|
End Get
|
|
Set(value As String)
|
|
Dim nVal As Integer = 0
|
|
If Integer.TryParse(value, nVal) AndAlso nVal > 0 Then
|
|
OptionModule.m_nImgHeight = nVal
|
|
WritePrivateProfileString(S_EXPORT, K_IMGHEIGHT, OptionModule.m_nImgHeight.ToString())
|
|
Map.refProjectVM.GetController().SetDefaultForImageExport(OptionModule.m_nImgWidth, OptionModule.m_nImgHeight)
|
|
End If
|
|
End Set
|
|
End Property
|
|
|
|
|
|
' Definizione comandi
|
|
Private m_cmdCloseOptions As ICommand
|
|
Private m_cmdTopSceneBackground As ICommand
|
|
Private m_cmdBotSceneBackground As ICommand
|
|
Private m_cmdGridColor As ICommand
|
|
Private m_cmdDefMaterialColor As ICommand
|
|
|
|
#Region "Messages"
|
|
|
|
Public ReadOnly Property Title As String
|
|
Get
|
|
Return EgtMsg(MSG_MAINWINDOW + 5)
|
|
End Get
|
|
End Property
|
|
|
|
Public ReadOnly Property GenericMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 14)
|
|
End Get
|
|
End Property
|
|
|
|
Public ReadOnly Property CurrentLanguageMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 1)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property LanguageAdvertMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 2)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property TopSceneBackgroundMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 10)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property BotSceneBackgroundMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 11)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property GridColorMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 17)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property SmoothTriMeshMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 18)
|
|
End Get
|
|
End Property
|
|
|
|
Public ReadOnly Property CADMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 15)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property GeometryToleranceMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 13)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property DefMaterialColorMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 12)
|
|
End Get
|
|
End Property
|
|
|
|
Public ReadOnly Property ImportMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 19)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property DxfScaleFactorMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 20)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property StlScaleFactorMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 21)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property ImageScaleFactorMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 22)
|
|
End Get
|
|
End Property
|
|
|
|
Public ReadOnly Property ExportMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 23)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property ImageMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 24)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property ImageWidthMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 25)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property ImageHeightMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 26)
|
|
End Get
|
|
End Property
|
|
|
|
Public ReadOnly Property CAMMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 16)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property MachiningSelGeomMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 6)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property GeomTypeMillingMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_MACHININGSDBPAGE + 3)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property GeomTypeDrillingMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_MACHININGSDBPAGE + 1)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property GeomTypeSawingMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_MACHININGSDBPAGE + 2)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property GeomTypePocketingMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_MACHININGSDBPAGE + 4)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property GeomTypeMortisingMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_MACHININGSDBPAGE + 5)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property GeomTypeChiselingMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_MACHININGSDBPAGE + 9)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property NewMachiningPosMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 7)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property UseDispositionScriptMsg As String
|
|
Get
|
|
Return EgtMsg(MSG_OPTIONPAGE + 8)
|
|
End Get
|
|
End Property
|
|
|
|
#End Region
|
|
|
|
#Region "COMMANDS"
|
|
|
|
#Region "TopSceneBackground"
|
|
|
|
''' <summary>
|
|
''' Returns a command that remove the current selected machining.
|
|
''' </summary>
|
|
Public ReadOnly Property TopSceneBackground_Command() As ICommand
|
|
Get
|
|
If m_cmdTopSceneBackground Is Nothing Then
|
|
m_cmdTopSceneBackground = New RelayCommand(AddressOf TopSceneBackgroundCmd)
|
|
End If
|
|
Return m_cmdTopSceneBackground
|
|
End Get
|
|
End Property
|
|
|
|
''' <summary>
|
|
''' Manage the MachiningDb closing. This method is invoked by the CloseMachiningDbCommand.
|
|
''' </summary>
|
|
Public Sub TopSceneBackgroundCmd()
|
|
' Recupero colore da Ini
|
|
Dim BackTopColor As New Color3d(192, 192, 192)
|
|
GetPrivateProfileColor(S_SCENE, K_BACKTOP, BackTopColor)
|
|
' Eseguo modifica con dialogo
|
|
If SelectColor(BackTopColor, BackTopColor) Then
|
|
OptionModule.m_TopSceneBackground = BackTopColor
|
|
Map.refProjectVM.GetScene.SetViewBackground(OptionModule.m_TopSceneBackground, OptionModule.m_BotSceneBackground)
|
|
WritePrivateProfileColor(S_SCENE, K_BACKTOP, OptionModule.m_TopSceneBackground)
|
|
NotifyPropertyChanged("TopSceneBackground")
|
|
End If
|
|
End Sub
|
|
|
|
#End Region ' TopSceneBackground
|
|
|
|
#Region "BotSceneBackground"
|
|
|
|
''' <summary>
|
|
''' Returns a command that remove the current selected machining.
|
|
''' </summary>
|
|
Public ReadOnly Property BotSceneBackground_Command() As ICommand
|
|
Get
|
|
If m_cmdBotSceneBackground Is Nothing Then
|
|
m_cmdBotSceneBackground = New RelayCommand(AddressOf BotSceneBackgroundCmd)
|
|
End If
|
|
Return m_cmdBotSceneBackground
|
|
End Get
|
|
End Property
|
|
|
|
''' <summary>
|
|
''' Manage the MachiningDb closing. This method is invoked by the CloseMachiningDbCommand.
|
|
''' </summary>
|
|
Public Sub BotSceneBackgroundCmd()
|
|
' Recupero colore da Ini
|
|
Dim BackBotColor As New Color3d(192, 192, 192)
|
|
GetPrivateProfileColor(S_SCENE, K_BACKBOTTOM, BackBotColor)
|
|
' Eseguo modifica con dialogo
|
|
If SelectColor(BackBotColor, BackBotColor) Then
|
|
OptionModule.m_BotSceneBackground = BackBotColor
|
|
Map.refProjectVM.GetScene.SetViewBackground(OptionModule.m_TopSceneBackground, OptionModule.m_BotSceneBackground)
|
|
WritePrivateProfileColor(S_SCENE, K_BACKBOTTOM, OptionModule.m_BotSceneBackground)
|
|
NotifyPropertyChanged("BotSceneBackground")
|
|
End If
|
|
End Sub
|
|
|
|
#End Region ' BotSceneBackground
|
|
|
|
#Region "GridColor"
|
|
|
|
''' <summary>
|
|
''' Returns a command that remove the current selected machining.
|
|
''' </summary>
|
|
Public ReadOnly Property GridColor_Command() As ICommand
|
|
Get
|
|
If m_cmdGridColor Is Nothing Then
|
|
m_cmdGridColor = New RelayCommand(AddressOf GridColorCmd)
|
|
End If
|
|
Return m_cmdGridColor
|
|
End Get
|
|
End Property
|
|
|
|
''' <summary>
|
|
''' Manage the MachiningDb closing. This method is invoked by the CloseMachiningDbCommand.
|
|
''' </summary>
|
|
Public Sub GridColorCmd()
|
|
' Recupero colore da Ini
|
|
Dim GridColor As New Color3d(192, 192, 192)
|
|
GetPrivateProfileColor(S_GRID, K_MINLNCOLOR, GridColor)
|
|
' Eseguo modifica con dialogo
|
|
If SelectColor(GridColor, GridColor) Then
|
|
OptionModule.m_GridColor = GridColor
|
|
IniFile.MinLnColor = GridColor
|
|
IniFile.MajLnColor = GridColor
|
|
EgtSetGridColor(IniFile.MinLnColor, IniFile.MajLnColor)
|
|
WritePrivateProfileColor(S_GRID, K_MINLNCOLOR, OptionModule.m_GridColor)
|
|
WritePrivateProfileColor(S_GRID, K_MAJLNCOLOR, OptionModule.m_GridColor)
|
|
EgtDraw()
|
|
NotifyPropertyChanged("GridColor")
|
|
End If
|
|
End Sub
|
|
|
|
#End Region ' GridColor
|
|
|
|
#Region "DefMaterialColor"
|
|
|
|
''' <summary>
|
|
''' Returns a command that remove the current selected machining.
|
|
''' </summary>
|
|
Public ReadOnly Property DefMaterialColor_Command() As ICommand
|
|
Get
|
|
If m_cmdDefMaterialColor Is Nothing Then
|
|
m_cmdDefMaterialColor = New RelayCommand(AddressOf DefMaterialColorCmd)
|
|
End If
|
|
Return m_cmdDefMaterialColor
|
|
End Get
|
|
End Property
|
|
|
|
''' <summary>
|
|
''' Manage the MachiningDb closing. This method is invoked by the CloseMachiningDbCommand.
|
|
''' </summary>
|
|
Public Sub DefMaterialColorCmd()
|
|
' Recupero colore da Ini
|
|
Dim DefColor As New Color3d(192, 192, 192)
|
|
GetPrivateProfileColor(S_GEOMDB, K_DEFAULTCOLOR, DefColor)
|
|
' Eseguo modifica con dialogo
|
|
If SelectColor(DefColor, DefColor) Then
|
|
OptionModule.m_DefMaterialColor = DefColor
|
|
Map.refProjectVM.GetScene.SetDefaultMaterial(OptionModule.m_DefMaterialColor)
|
|
WritePrivateProfileColor(S_GEOMDB, K_DEFAULTCOLOR, OptionModule.m_DefMaterialColor)
|
|
EgtDraw()
|
|
Application.Msn.NotifyColleagues(Application.UPDATEHEADERCOLOR, OptionModule.m_DefMaterialColor)
|
|
Application.Msn.NotifyColleagues(Application.LOADOBJTREE)
|
|
NotifyPropertyChanged("DefMaterialColor")
|
|
End If
|
|
End Sub
|
|
|
|
#End Region ' DefMaterialColor
|
|
|
|
#Region "CloseOptionsCommand"
|
|
|
|
''' <summary>
|
|
''' Returns a command that remove the current selected machining.
|
|
''' </summary>
|
|
Public ReadOnly Property CloseOptionsCommand() As ICommand
|
|
Get
|
|
If m_cmdCloseOptions Is Nothing Then
|
|
m_cmdCloseOptions = New RelayCommand(AddressOf CloseOptions)
|
|
End If
|
|
Return m_cmdCloseOptions
|
|
End Get
|
|
End Property
|
|
|
|
''' <summary>
|
|
''' Manage the MachiningDb closing. This method is invoked by the CloseMachiningDbCommand.
|
|
''' </summary>
|
|
Public Sub CloseOptions()
|
|
' Chiusura finestra
|
|
For Each Window In Application.Current.Windows
|
|
If TypeOf Window Is OptionWindowV Then
|
|
Dim OptionsWindow As OptionWindowV = DirectCast(Window, OptionWindowV)
|
|
OptionsWindow.Close()
|
|
End If
|
|
Next
|
|
End Sub
|
|
|
|
#End Region ' CloseOptionsCommand
|
|
|
|
#End Region ' COMMANDS
|
|
|
|
Private Function SelectColor(Col As Color3d, ByRef NewCol As Color3d) As Boolean
|
|
' Recupero colori custom
|
|
Dim sCustomColors As String = ""
|
|
GetPrivateProfileString(S_SCENE, K_CUSTOMCOLORS, "", sCustomColors)
|
|
Dim CustomColors() As String = sCustomColors.Split(","c)
|
|
Dim nCustomColors As New List(Of Integer)
|
|
For Each Color In CustomColors
|
|
Dim nColor As Integer
|
|
If Integer.TryParse(Color, nColor) Then
|
|
nCustomColors.Add(nColor)
|
|
End If
|
|
Next
|
|
' Creo dialogo colori
|
|
Dim ColorDlg As New System.Windows.Forms.ColorDialog
|
|
ColorDlg.FullOpen = True
|
|
ColorDlg.CustomColors = nCustomColors.ToArray()
|
|
ColorDlg.Color = Col.ToColor()
|
|
' Visualizzo dialogo
|
|
If ColorDlg.ShowDialog() <> Windows.Forms.DialogResult.OK Then Return False
|
|
' Recupero colore scelto
|
|
NewCol.FromColor(ColorDlg.Color)
|
|
' Salvo eventuali modifiche ai colori custom
|
|
sCustomColors = ""
|
|
For Each Color In ColorDlg.CustomColors
|
|
sCustomColors &= Color.ToString() & ","
|
|
Next
|
|
sCustomColors = sCustomColors.Trim({" "c, ","c})
|
|
WritePrivateProfileString(S_SCENE, K_CUSTOMCOLORS, sCustomColors)
|
|
Return True
|
|
End Function
|
|
|
|
End Class
|
|
|
|
Public Class GeomTypeConverter
|
|
Implements IValueConverter
|
|
|
|
Public Function Convert(value As Object, targetType As Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements IValueConverter.Convert
|
|
Select Case CInt(value)
|
|
Case SceneSelModeOpt.PARTCURVES
|
|
Return EgtMsg(MSG_OPTIONPAGE + 3)
|
|
Case SceneSelModeOpt.PARTSURFACES
|
|
Return EgtMsg(MSG_OPTIONPAGE + 4)
|
|
Case Else
|
|
Return EgtMsg(MSG_OPTIONPAGE + 5)
|
|
End Select
|
|
End Function
|
|
|
|
Public Function ConvertBack(value As Object, targetType As Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements IValueConverter.ConvertBack
|
|
Throw New NotImplementedException
|
|
End Function
|
|
|
|
End Class |