Compare commits
267 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| e2e365765d | |||
| e88e19ed3f | |||
| 87fba7e739 | |||
| 92a6cefe67 | |||
| 9193518d4f | |||
| 6e06d76a7c | |||
| dda46787db | |||
| ca2144f058 | |||
| e0ea153122 | |||
| 0b471786cc | |||
| ece48a6523 | |||
| 5e151fd7ec | |||
| ade3d5c1aa | |||
| b3db41c0ae | |||
| ad21ccf4d8 | |||
| 29dd3ca6d4 | |||
| 2174bdfd20 | |||
| d28ac71a5e | |||
| 1f92a28e44 | |||
| 3944eb085f | |||
| 30b436c33b | |||
| d2f947b9b1 | |||
| 50c06fee70 | |||
| 265938c37f | |||
| 3d4cfc0eb8 | |||
| c5ddcff63f | |||
| dc7a3b78cd | |||
| 4147457b7d | |||
| f2d465ff14 | |||
| 3cac37cb0d | |||
| ffa0ce03bb | |||
| 68063e5b39 | |||
| 18505bfa5d | |||
| a7999c4182 | |||
| b0186d096f | |||
| 6e5f917d6f | |||
| 5819bc4bf8 | |||
| dee67518e7 | |||
| 50f5e0528f | |||
| 08ea864a5e | |||
| 7a25e8d634 | |||
| f4163dc818 | |||
| 7beff98f1c | |||
| 4a2928192d | |||
| 1d32d9b634 | |||
| 4a7f552db6 | |||
| f456fedda8 | |||
| 084c4e01ed | |||
| 8d20d1d071 | |||
| a3eae73a52 | |||
| a821341706 | |||
| 9946b15588 | |||
| 4d610cea8b | |||
| 2648b704cc | |||
| e59e8a051a | |||
| 9d8188521e | |||
| 18de1a1ab7 | |||
| 0a7f872912 | |||
| 84b2edd17a | |||
| 7a8c883259 | |||
| 4f06a19553 | |||
| 3a7152066b | |||
| 2ce61cd5ab | |||
| 50ad698187 | |||
| 85591b39a7 | |||
| 18be9679c5 | |||
| 2c9061619a | |||
| 575bcc02d0 | |||
| e965ceb26c | |||
| 0c18c822f1 | |||
| e6d85c573a | |||
| 592e7161ce | |||
| 08c4d9c7b9 | |||
| 4ae5efb94b | |||
| 69261c7c73 | |||
| 361dc20f9b | |||
| 95d1e4b5ac | |||
| 621a31931c | |||
| 4f7dd6ef17 | |||
| 722e0c243d | |||
| 921e681759 | |||
| d065c0beeb | |||
| f8ea19537a | |||
| 289a6b1608 | |||
| f6baeb6afc | |||
| 9fa231f68a | |||
| bba92a4980 | |||
| cfaf513a91 | |||
| 8d33111af2 | |||
| fd565e96cc | |||
| b7628fff66 | |||
| cd3c90764e | |||
| 0db2ce6b91 | |||
| 993e7e86a2 | |||
| e335308709 | |||
| 4c13cdb8f4 | |||
| 9b06802cf9 | |||
| caf4fbcff9 | |||
| 218eeaffe8 | |||
| 03509c7022 | |||
| 6a600e632d | |||
| b866cd273e | |||
| 7be4dd9c75 | |||
| 1d156eddc1 | |||
| 726afaa58d | |||
| d1592cce43 | |||
| dc6c075508 | |||
| f126f72c3b | |||
| 2735c66b11 | |||
| a4b48377c7 | |||
| bc22e32821 | |||
| 5624f05ad6 | |||
| 0c68d8c142 | |||
| e2480dcf1d | |||
| cc63f278c6 | |||
| 54360bbccf | |||
| c71d7c84f7 | |||
| 9e9aad2eed | |||
| a2a1b83888 | |||
| f44ae792c6 | |||
| 4692bd0308 | |||
| 2e863c0ce2 | |||
| 1735e281e5 | |||
| 125e7346d4 | |||
| bd3cdf7ea0 | |||
| d90a49248f | |||
| 3833b7c7c5 | |||
| 89b063b92f | |||
| df26bef2aa | |||
| 5cddbffb45 | |||
| 2daa33ba91 | |||
| f83e8294bc | |||
| 1dfc46e6ce | |||
| d7df513bf7 | |||
| 8aac3ea989 | |||
| a514a70b5b | |||
| cf86b93725 | |||
| fef104b371 | |||
| afe756aada | |||
| 34fa0909ab | |||
| 7954077676 | |||
| 60673cd9e3 | |||
| 9d62cf6b99 | |||
| 6e2c4d8b35 | |||
| d8bff8ac9e | |||
| 0926456513 | |||
| bf424a49e1 | |||
| be4bc812da | |||
| ce18ea3ade | |||
| 931c96a587 | |||
| a662d1dca2 | |||
| e5a32f9c21 | |||
| 5e53f20fec | |||
| 44e919c134 | |||
| 52c4b2c424 | |||
| 53fb9b3416 | |||
| 0c7718d91d | |||
| 0fed5c356f | |||
| 2b6e4c36df | |||
| cdc9caf4ee | |||
| 5970a97c15 | |||
| bfc4af4c1e | |||
| 07f51ed6cd | |||
| 5490884eb4 | |||
| 62803684c4 | |||
| 11316a5a5c | |||
| 99333a0bbe | |||
| 3446cbd3c9 | |||
| c5fe1bc7b9 | |||
| a1569b4cd8 | |||
| 5f669acc74 | |||
| e0b69567e3 | |||
| 8c45250a6f | |||
| ef4ad38d23 | |||
| 85de8e95a5 | |||
| 4387d75ee7 | |||
| ddf1f320c5 | |||
| 9f33d1b236 | |||
| 60f035991d | |||
| 24607ec445 | |||
| d75250d5f9 | |||
| be5985cfcd | |||
| 6aa7e850e8 | |||
| 9833802aed | |||
| 47aacebd3a | |||
| 62a9dd2048 | |||
| 220d70013f | |||
| 1633ed140d | |||
| 07634b79b4 | |||
| c5e367e41c | |||
| 3f487c7328 | |||
| 639834d797 | |||
| 7a0a504876 | |||
| 3253b7b8d4 | |||
| a4b3fa8c28 | |||
| 841dce8d72 | |||
| e62b6aaccc | |||
| ad7b0ed010 | |||
| b3d113e4f3 | |||
| f506ce9c64 | |||
| 459d6f6739 | |||
| 469037e3d8 | |||
| 0a4a7c4efa | |||
| 69ba413d31 | |||
| 8164b2e654 | |||
| 514b8a7bb9 | |||
| cfa709fb40 | |||
| 0936baf254 | |||
| d328fbb186 | |||
| fcc36d7b44 | |||
| 3ebba7cb81 | |||
| 88be7fa40d | |||
| 033d76b4fb | |||
| 3f2b8eaf08 | |||
| 42348e6ca0 | |||
| e1f0e122ec | |||
| 21c0a8cad7 | |||
| afe5dc58b1 | |||
| 2beb910d2c | |||
| 31ce0ca0e0 | |||
| f7b92d1537 | |||
| fe2dd7f9ce | |||
| 1099a25b59 | |||
| 22e329c74e | |||
| 2e5b87d38c | |||
| d2886ec79b | |||
| 85f22f9978 | |||
| 9eea6f220d | |||
| 23820e3ed8 | |||
| e2d1231ea2 | |||
| b7b824ab8a | |||
| 14ed0480cd | |||
| 928b8f679e | |||
| 919767fe34 | |||
| 87507c60d8 | |||
| a0c93477a1 | |||
| 62758acbeb | |||
| 05d1602c2e | |||
| 20a153a0ea | |||
| 2febe6fb5b | |||
| a414b7a3e6 | |||
| fe05264a7d | |||
| ee17b9dfbc | |||
| 2a056bc9be | |||
| 5fdec18828 | |||
| e3c84cdf05 | |||
| 0fb560a33b | |||
| 82c40a5b41 | |||
| fdacf0f958 | |||
| 0c4daf8ecb | |||
| 3588c3d511 | |||
| 5142d2a2e9 | |||
| 17dbfe6163 | |||
| a7dc65f10e | |||
| be256404ff | |||
| efe74f470c | |||
| 3b49b58783 | |||
| d6b61e8633 | |||
| 9bb0558370 | |||
| f58322e131 | |||
| fd7dbaed88 | |||
| 5b41936ecb | |||
| 14d92c0a2d | |||
| 7639de860f | |||
| 3154944f94 | |||
| 7dc34348ed | |||
| bee06b1999 |
@@ -14,11 +14,23 @@ Public Class AboutBoxWndV
|
||||
Dim sLeftDays As String = ""
|
||||
Dim nLeftDays As Integer
|
||||
if EgtGetKeyLeftDays( nLeftDays) AndAlso nLeftDays < 500 Then sLeftDays= " (" & nLeftDays.ToString() & ")"
|
||||
Dim sAssStatus As String = " discontinued"
|
||||
Dim nAssLeftDays As Integer
|
||||
If EgtGetKeyAssLeftDays( nAssLeftDays) And nAssLeftDays >= 0 Then
|
||||
If nAssLeftDays > 30 then
|
||||
sAssStatus = "expires within " & nAssLeftDays.ToString() & " days"
|
||||
Else If nAssLeftDays > 0 then
|
||||
sAssStatus = "to be renewed within " & nAssLeftDays.ToString() & " days"
|
||||
Else
|
||||
sAssStatus = "to be renewed by today"
|
||||
End If
|
||||
End If
|
||||
sInfo = If( EgtIsDebug(), "*** Debug Libraries ***" & Environment.NewLine, "")
|
||||
sInfo &= "User " & Environment.MachineName & "\" & Environment.UserName &
|
||||
" Inst" & IniFile.m_nInstance.ToString() &
|
||||
" Ulv" & IniFile.m_nUserLevel.ToString() & " Dbg" & Map.refMainWindowVM.DebugLevel().ToString() & Environment.NewLine
|
||||
sInfo &= sKey & " - " & sKlev & " - " & sOpts & sLeftDays & Environment.NewLine
|
||||
sInfo &= "SupportPlan " & sAssStatus & Environment.NewLine
|
||||
sInfo &= "DataRoot " & IniFile.m_sDataRoot & Environment.NewLine
|
||||
If IniFile.m_ProjectMode <> ProjectModeOpt.ONLYDRAW Then
|
||||
sInfo &= "MachinesRoot " & IniFile.m_sMachinesRoot & Environment.NewLine
|
||||
@@ -58,6 +70,24 @@ Public Class AboutBoxWndV
|
||||
IniFile.GetSpecialLuaVersion( IniFile.m_sDoorsDirPath, sVersion)
|
||||
sInfo &= Environment.NewLine & "Doors ver. " & sVersion & " " & IniFile.m_sDoorsDirPath
|
||||
End If
|
||||
If IniFile.IsActiveWindow() Then
|
||||
bExtensions = True
|
||||
Dim sVersion As String = "---"
|
||||
IniFile.GetSpecialLuaVersion( IniFile.m_sWindowDirPath, sVersion)
|
||||
sInfo &= Environment.NewLine & "Window ver. " & sVersion & " " & IniFile.m_sWindowDirPath
|
||||
End If
|
||||
If IniFile.IsActiveTrimming() Then
|
||||
bExtensions = True
|
||||
Dim sVersion As String = "---"
|
||||
IniFile.GetSpecialLuaVersion( IniFile.m_sTrimmingDirPath, sVersion)
|
||||
sInfo &= Environment.NewLine & "Trimming ver. " & sVersion & " " & IniFile.m_sTrimmingDirPath
|
||||
End If
|
||||
If IniFile.IsActiveReversePost() Then
|
||||
bExtensions = True
|
||||
Dim sVersion As String = "---"
|
||||
IniFile.GetSpecialLuaVersion( IniFile.m_sReversePostDirPath, sVersion)
|
||||
sInfo &= Environment.NewLine & "ReversePost ver. " & sVersion & " " & IniFile.m_sReversePostDirPath
|
||||
End If
|
||||
If IniFile.IsActiveGunStock() Then
|
||||
bExtensions = True
|
||||
Dim sVersion As String = "---"
|
||||
|
||||
@@ -31,7 +31,7 @@ Public Class TreeViewItemBase
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_isExpanded As Boolean
|
||||
Friend m_isExpanded As Boolean
|
||||
Public Property IsExpanded As Boolean
|
||||
Get
|
||||
Return m_isExpanded
|
||||
@@ -92,6 +92,7 @@ Public Class InheritableTreeViewItem
|
||||
Implements INotifyPropertyChanged
|
||||
|
||||
Friend m_Name As String
|
||||
|
||||
Public Property Name As String
|
||||
Get
|
||||
Return m_Name
|
||||
@@ -195,7 +196,6 @@ Public Class ParentItem
|
||||
Inherits TreeViewItemBase
|
||||
|
||||
Private m_sPictureString As String
|
||||
Private m_Items As ObservableCollection(Of ChildItem)
|
||||
|
||||
Public Property PictureString As String
|
||||
Get
|
||||
@@ -209,6 +209,7 @@ Public Class ParentItem
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_Items As ObservableCollection(Of ChildItem)
|
||||
Public Property Items As ObservableCollection(Of ChildItem)
|
||||
Get
|
||||
Return m_Items
|
||||
|
||||
@@ -13,7 +13,7 @@ Public Class BeamMachiningsWindowV
|
||||
m_BeamMachiningsWindowVM = BeamMachiningsWindowVM
|
||||
End Sub
|
||||
|
||||
Private Sub CloseWindow(bDialogResult As Boolean) Handles m_BeamMachiningsWindowVM.m_CloseWindow
|
||||
Private Sub CloseWindow(bDialogResult As Boolean) Handles m_BeamMachiningsWindowVM.OnCloseWindow
|
||||
Me.DialogResult = bDialogResult
|
||||
End Sub
|
||||
|
||||
|
||||
@@ -51,6 +51,9 @@ Module ConstGen
|
||||
' Chiave di Info in gruppo di lavoro per none part-program
|
||||
Public Const KEY_MCHGRP_NCNAME As String = "NcName"
|
||||
|
||||
' File Dimensioni Griglia CAM5
|
||||
Public Const DIMENSION_FILE_NAME As String = "Dimension.ini"
|
||||
|
||||
' Costante per flag di BBox
|
||||
Public Const BBFLAG As Integer = GDB_BB.ONLY_VISIBLE + GDB_BB.IGNORE_TEXT + GDB_BB.IGNORE_DIM
|
||||
|
||||
|
||||
+28
-9
@@ -47,7 +47,6 @@ Module ConstIni
|
||||
|
||||
Public Const S_LUA As String = "Lua"
|
||||
Public Const K_LIBSDIR As String = "LibsDir"
|
||||
Public Const K_LIBSDIR64 As String = "LibsDir64"
|
||||
Public Const K_BASELIB As String = "BaseLib"
|
||||
Public Const K_BWSIM As String = "BWSim"
|
||||
|
||||
@@ -70,10 +69,11 @@ Module ConstIni
|
||||
Public Const K_SHOWGFRAME As String = "ShowGFrame"
|
||||
Public Const K_LINEWIDTH As String = "LineWidth"
|
||||
Public Const K_MARK As String = "Mark"
|
||||
Public Const K_MARK2 As String = "Mark2"
|
||||
Public Const K_SELSURF As String = "SelSurf"
|
||||
Public Const K_SHOWMODE As String = "ShowMode"
|
||||
Public Const K_CURVEDIR As String = "CurveDir"
|
||||
Public Const K_SHOWTRIAADV As String = "ShowTriaAdv"
|
||||
Public Const K_SHOWSURFQUALITY As String = "ShowSurfQuality"
|
||||
Public Const K_SHOWZMAP As String = "ShowZmap"
|
||||
Public Const K_TEXMAXLINPIX As String = "TextureMaxLinPixels"
|
||||
Public Const K_ZOOMWIN As String = "ZoomWin"
|
||||
@@ -105,10 +105,15 @@ Module ConstIni
|
||||
Public Const S_IMPORT As String = "Import"
|
||||
Public Const K_DXFSCALE As String = "DxfScale"
|
||||
Public Const K_STLSCALE As String = "StlScale"
|
||||
Public Const K_OFFSCALE As String = "OffScale"
|
||||
Public Const K_PLYSCALE As String = "PlyScale"
|
||||
Public Const K_IMGSCALE As String = "ImgScale"
|
||||
Public Const K_CNCFLAG As String = "CncFlag"
|
||||
Public Const K_BTLFLAG As String = "BtlFlag"
|
||||
Public Const K_BTLAUXDIR As String = "BtlAuxDir"
|
||||
Public Const K_3MFFLAG As String = "3mfFlag"
|
||||
Public Const K_ADVFLAG As String = "AdvFlag"
|
||||
Public Const K_ADVTOLER As String = "AdvToler"
|
||||
|
||||
Public Const S_EXPORT As String = "Export"
|
||||
Public Const K_DXFFLAG As String = "DxfFlag"
|
||||
@@ -123,7 +128,6 @@ Module ConstIni
|
||||
Public Const S_BEAM As String = "Beam"
|
||||
Public Const K_BEAMENABLE As String = "BtlEnable"
|
||||
Public Const K_BEAMBASEDIR As String = "BaseDir"
|
||||
Public Const K_BEAMBASEDIR64 As String = "BaseDir64"
|
||||
Public Const K_BEAMBTLEXEC As String = "BtlExec"
|
||||
Public Const K_BEAMBWEEXEC As String = "BweExec"
|
||||
Public Const K_BEAMMACHINES As String = "Machines"
|
||||
@@ -132,7 +136,6 @@ Module ConstIni
|
||||
Public Const S_WALL As String = "Wall"
|
||||
Public Const K_WALLENABLE As String = "BtlEnable"
|
||||
Public Const K_WALLBASEDIR As String = "BaseDir"
|
||||
Public Const K_WALLBASEDIR64 As String = "BaseDir64"
|
||||
Public Const K_WALLBTLEXEC As String = "BtlExec"
|
||||
Public Const K_WALLBWEEXEC As String = "BweExec"
|
||||
Public Const K_WALLBUTTON As String = "Button"
|
||||
@@ -141,10 +144,6 @@ Module ConstIni
|
||||
Public Const K_BEAMWALLBASEDIR As String = "BaseDir"
|
||||
Public Const K_BEAMWALLBUTTON As String = "Button"
|
||||
|
||||
Public Const S_PRINTING3D As String = "3dPrinting"
|
||||
Public Const K_ENABLE As String = "Enable"
|
||||
Public Const K_3PRNBASEDIR As String = "BaseDir"
|
||||
|
||||
Public Const S_DOORS As String = "Doors"
|
||||
Public Const K_DDFENABLE As String = "DdfEnable"
|
||||
Public Const K_BASEDIR As String = "BaseDir"
|
||||
@@ -156,6 +155,22 @@ Module ConstIni
|
||||
Public Const K_TABLESDIR As String = "TablesDir"
|
||||
Public Const K_CURRMTABLE As String = "CurrMTable"
|
||||
Public Const K_MTABLEWINPLACE As String = "MTableWinPlace"
|
||||
Public Const K_OPTIMIZEMACHFORLINE As String = "OptimizeMachForLine"
|
||||
|
||||
Public Const S_WINDOW As String = "Window"
|
||||
Public Const K_WINDOWENABLE As String = "JwdEnable"
|
||||
Public Const K_WINDOWBASEDIR As String = "BaseDir"
|
||||
Public Const K_WINDOWBUTTON As String = "Button"
|
||||
|
||||
Public Const S_TRIMMING As String = "Trimming"
|
||||
Public Const K_TRIMMINGENABLE As String = "TrimEnable"
|
||||
Public Const K_TRIMMINGBASEDIR As String = "BaseDir"
|
||||
Public Const K_TRIMMINGBUTTON As String = "Button"
|
||||
|
||||
Public Const S_REVERSEPOST As String = "ReversePost"
|
||||
Public Const K_REVERSEPOSTENABLE As String = "RevEnable"
|
||||
Public Const K_REVERSEPOSTBASEDIR As String = "BaseDir"
|
||||
Public Const K_REVERSEPOSTBUTTON As String = "Button"
|
||||
|
||||
Public Const S_GUNSTOCK As String = "GunStock"
|
||||
Public Const K_GUNSTOCKENABLE As String = "GsEnable"
|
||||
@@ -172,7 +187,6 @@ Module ConstIni
|
||||
Public Const S_MACH As String = "Mach"
|
||||
Public Const K_MACHINESDIR As String = "MachinesDir"
|
||||
Public Const K_TOOLMAKERSDIR As String = "ToolMakersDir"
|
||||
Public Const K_TOOLMAKERSDIR64 As String = "ToolMakersDir64"
|
||||
Public Const K_CURRMACH As String = "CurrMach"
|
||||
Public Const K_SELGEOMSAWING As String = "SelGeomSawing"
|
||||
Public Const K_SELGEOMDRILLING As String = "SelGeomDrilling"
|
||||
@@ -184,6 +198,10 @@ Module ConstIni
|
||||
Public Const K_SELGEOMGENMACHINING As String = "SelGeomGenMachining"
|
||||
Public Const K_SELGEOMCHISELING As String = "SelGeomChiseling"
|
||||
Public Const K_SELGEOMSURFFINISHING As String = "SelGeomSurfFinishing"
|
||||
Public Const K_SELGEOMSURFROUGHING As String = "SelGeomSurfRoughing"
|
||||
Public Const K_SELGEOMFIVEAXMILLING As String = "SelGeomFiveAxMilling"
|
||||
Public Const K_SELGEOMPROBING As String = "SelGeomProbing"
|
||||
Public Const K_VMILLQUALITY As String = "VMillQuality"
|
||||
Public Const K_MACHININGGROUP As String = "MachiningGroup"
|
||||
Public Const K_SHOWONLYTABLE As String = "ShowOnlyTable"
|
||||
Public Const K_MOVETHROUGHDISPS As String = "MoveThroughDisps"
|
||||
@@ -192,6 +210,7 @@ Module ConstIni
|
||||
Public Const S_SIMUL As String = "Simul"
|
||||
Public Const K_SLIDERX As String = "SliderX"
|
||||
Public Const K_SLIDERVAL As String = "SliderVal"
|
||||
Public Const K_TRACEENABLE As String = "TraceEnable"
|
||||
|
||||
Public Const S_OPTIONS As String = "Options"
|
||||
Public Const K_NEWMACHININGISLASTONE As String = "NewMachiningIsLastOne"
|
||||
|
||||
+20
-15
@@ -1,6 +1,13 @@
|
||||
Module ConstMachIni
|
||||
|
||||
Public Const S_MCH_GENERAL As String = "General"
|
||||
Public Const K_MATERIAL As String = "Material"
|
||||
|
||||
Public Const S_PARTPROGRAM As String = "PartProgram"
|
||||
Public Const K_EXTENSION As String = "Extension"
|
||||
|
||||
Public Const S_TOOLS As String = "Tools"
|
||||
Public Const K_PROBE As String = "Probe"
|
||||
Public Const K_DRILLBIT As String = "Drillbit"
|
||||
Public Const K_SAWBLADE As String = "Sawblade"
|
||||
Public Const K_MILL As String = "Mill"
|
||||
@@ -8,22 +15,17 @@
|
||||
Public Const K_CHISEL As String = "Chisel"
|
||||
Public Const K_WATERJET As String = "WaterJet"
|
||||
Public Const K_COMPO As String = "Compo"
|
||||
Public Const K_SHOWTOOLCHANGER As String = "ShowToolChanger"
|
||||
Public Const K_SHOWHEADEXIT As String = "ShowHeadExit"
|
||||
Public Const K_DRILLHOLDER As String = "DrillHolder"
|
||||
Public Const K_SAWBLADEHOLDER As String = "SawBladeHolder"
|
||||
Public Const K_MILLHOLDER As String = "MillHolder"
|
||||
Public Const K_DRILLMAKER As String = "DrillMaker"
|
||||
Public Const K_SAWBLADEMAKER As String = "SawbladeMaker"
|
||||
Public Const K_MILLMAKER As String = "MillMaker"
|
||||
Public Const K_MORTISEMAKER As String = "MortiseMaker"
|
||||
Public Const K_CHISELMAKER As String = "ChiselMaker"
|
||||
Public Const K_MOUNTEDTOOLCONFIG As String = "MountedToolConfig"
|
||||
Public Const K_ACTIVE As String = "Active"
|
||||
|
||||
Public Const S_TOOLHOLDER As String = "ToolHolder"
|
||||
|
||||
Public Const S_MACHININGS As String = "Machinings"
|
||||
Public Const K_PROBING As String = "Probing"
|
||||
Public Const K_SAWING As String = "Sawing"
|
||||
Public Const K_DRILLING As String = "Drilling"
|
||||
Public Const K_MILLING As String = "Milling"
|
||||
@@ -35,20 +37,14 @@
|
||||
Public Const K_CHISELING As String = "Chiseling"
|
||||
Public Const K_SURFROUGHING As String = "SurfRoughing"
|
||||
Public Const K_SURFFINISHING As String = "SurfFinishing"
|
||||
Public Const K_5AXMACHINING As String = "5axMachining"
|
||||
Public Const K_5AXMILLING As String = "5AxMilling"
|
||||
Public Const K_WATERJETTING As String = "WaterJetting"
|
||||
Public Const K_SAWINGONARCS As String = "SawingOnArcs"
|
||||
|
||||
Public Const S_GENMACHINING As String = "GenMachining"
|
||||
Public Const K_GENSCRIPT As String = "GenScript"
|
||||
|
||||
Public Const S_TOOLCHANGER As String = "ToolChanger"
|
||||
Public Const K_NUMBER As String = "Number"
|
||||
Public Const K_POS As String = "Pos"
|
||||
Public Const K_NAME As String = "Name"
|
||||
Public Const K_MANUALNUMBER As String = "ManualNumber"
|
||||
Public Const K_MANUALPOS As String = "ManualPos"
|
||||
Public Const K_MANUALNAME As String = "ManualName"
|
||||
Public Const S_5AXMILLING As String = "5AxMilling"
|
||||
Public Const K_5AXSCRIPT As String = "5AxScript"
|
||||
|
||||
Public Const S_DISPOSITION As String = "Disposition"
|
||||
Public Const K_DISP_INITSCRIPT As String = "InitScript"
|
||||
@@ -68,7 +64,16 @@
|
||||
Public Const S_VMILL As String = "VMill"
|
||||
Public Const K_VM_ENABLE As String = "Enable"
|
||||
|
||||
Public Const S_TOOLTRACE As String = "ToolTrace"
|
||||
Public Const K_TT_ENABLE As String = "Enable"
|
||||
|
||||
Public Const S_ESTIMATIONS As String = "Estimations"
|
||||
Public Const K_EST_ENABLE As String = "Enable"
|
||||
|
||||
' Tipi di materiali previsti attualmente per le macchine
|
||||
Public Const MCH_MAT_STONE As String = "Stone"
|
||||
Public Const MCH_MAT_WOOD As String = "Wood"
|
||||
Public Const MCH_MAT_BEAM As String = "Beam"
|
||||
Public Const MCH_MAT_ADDITIVE As String = "Additive"
|
||||
|
||||
End Module
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
m_CurrSetUpVM = CurrSetUpVM
|
||||
End Sub
|
||||
|
||||
'Private Sub CloseWindow(bDialogResult As Boolean) Handles m_SetUpDbVM.m_CloseWindow
|
||||
'Private Sub CloseWindow(bDialogResult As Boolean) Handles m_SetUpDbVM.OnCloseWindow
|
||||
' Me.DialogResult = bDialogResult
|
||||
'End Sub
|
||||
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
Public Interface IListItemConverter
|
||||
Function Convert(ByVal masterListItem As Object) As Object
|
||||
Function ConvertBack(ByVal targetListItem As Object) As Object
|
||||
End Interface
|
||||
@@ -0,0 +1,80 @@
|
||||
Imports System.Windows.Controls.Primitives
|
||||
Imports System.ComponentModel
|
||||
|
||||
|
||||
Public Class MultiSelectorBehaviours
|
||||
|
||||
Public Shared ReadOnly SynchronizedSelectedItemsProperty As DependencyProperty = DependencyProperty.RegisterAttached("SynchronizedSelectedItems", GetType(IList), GetType(MultiSelectorBehaviours), New PropertyMetadata(Nothing, AddressOf OnSynchronizedSelectedItemsChanged))
|
||||
Public Shared ReadOnly SynchronizationManagerProperty As DependencyProperty = DependencyProperty.RegisterAttached("SynchronizationManager", GetType(SynchronizationManager), GetType(MultiSelectorBehaviours), New PropertyMetadata(Nothing))
|
||||
|
||||
|
||||
Public Shared Function GetSynchronizedSelectedItems(ByVal dependencyObject As DependencyObject) As IList
|
||||
Return CType(dependencyObject.GetValue(SynchronizedSelectedItemsProperty), IList)
|
||||
End Function
|
||||
|
||||
Public Shared Sub SetSynchronizedSelectedItems(ByVal dependencyObject As DependencyObject, ByVal value As IList)
|
||||
dependencyObject.SetValue(SynchronizedSelectedItemsProperty, value)
|
||||
End Sub
|
||||
|
||||
Private Shared Function GetSynchronizationManager(ByVal dependencyObject As DependencyObject) As SynchronizationManager
|
||||
Return CType(dependencyObject.GetValue(SynchronizationManagerProperty), SynchronizationManager)
|
||||
End Function
|
||||
|
||||
Private Shared Sub SetSynchronizationManager(ByVal dependencyObject As DependencyObject, ByVal value As SynchronizationManager)
|
||||
dependencyObject.SetValue(SynchronizationManagerProperty, value)
|
||||
End Sub
|
||||
|
||||
Private Shared Sub OnSynchronizedSelectedItemsChanged(ByVal dependencyObject As DependencyObject, ByVal e As DependencyPropertyChangedEventArgs)
|
||||
If e.OldValue IsNot Nothing Then
|
||||
Dim synchronizer As SynchronizationManager = GetSynchronizationManager(dependencyObject)
|
||||
synchronizer.StopSynchronizing()
|
||||
SetSynchronizationManager(dependencyObject, Nothing)
|
||||
End If
|
||||
|
||||
Dim list As IList = TryCast(e.NewValue, IList)
|
||||
Dim selector As Selector = TryCast(dependencyObject, Selector)
|
||||
|
||||
If list IsNot Nothing AndAlso selector IsNot Nothing Then
|
||||
Dim synchronizer As SynchronizationManager = GetSynchronizationManager(dependencyObject)
|
||||
|
||||
If synchronizer Is Nothing Then
|
||||
synchronizer = New SynchronizationManager(selector)
|
||||
SetSynchronizationManager(dependencyObject, synchronizer)
|
||||
End If
|
||||
|
||||
synchronizer.StartSynchronizingList()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Class SynchronizationManager
|
||||
Private ReadOnly _multiSelector As Selector
|
||||
Private _synchronizer As TwoListSynchronizer
|
||||
|
||||
Friend Sub New(ByVal selector As Selector)
|
||||
_multiSelector = selector
|
||||
End Sub
|
||||
|
||||
Public Sub StartSynchronizingList()
|
||||
Dim list As IList = GetSynchronizedSelectedItems(_multiSelector)
|
||||
|
||||
If list IsNot Nothing Then
|
||||
_synchronizer = New TwoListSynchronizer(GetSelectedItemsCollection(_multiSelector), list)
|
||||
_synchronizer.StartSynchronizing()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Sub StopSynchronizing()
|
||||
_synchronizer.StopSynchronizing()
|
||||
End Sub
|
||||
|
||||
Public Shared Function GetSelectedItemsCollection(ByVal selector As Selector) As IList
|
||||
If TypeOf selector Is MultiSelector Then
|
||||
Return (TryCast(selector, MultiSelector)).SelectedItems
|
||||
ElseIf TypeOf selector Is ListBox Then
|
||||
Return (TryCast(selector, ListBox)).SelectedItems
|
||||
Else
|
||||
Throw New InvalidOperationException("Target object has no SelectedItems property to bind.")
|
||||
End If
|
||||
End Function
|
||||
End Class
|
||||
End Class
|
||||
@@ -0,0 +1,163 @@
|
||||
Imports System.Collections.Specialized
|
||||
|
||||
Public Class TwoListSynchronizer
|
||||
Implements IWeakEventListener
|
||||
|
||||
Private Shared ReadOnly DefaultConverter As IListItemConverter = New DoNothingListItemConverter()
|
||||
Private ReadOnly _masterList As IList
|
||||
Private ReadOnly _masterTargetConverter As IListItemConverter
|
||||
Private ReadOnly _targetList As IList
|
||||
|
||||
Public Sub New(ByVal masterList As IList, ByVal targetList As IList, ByVal masterTargetConverter As IListItemConverter)
|
||||
_masterList = masterList
|
||||
_targetList = targetList
|
||||
_masterTargetConverter = masterTargetConverter
|
||||
End Sub
|
||||
|
||||
Public Sub New(ByVal masterList As IList, ByVal targetList As IList)
|
||||
Me.New(masterList, targetList, DefaultConverter)
|
||||
End Sub
|
||||
|
||||
Private Delegate Sub ChangeListAction(ByVal list As IList, ByVal e As NotifyCollectionChangedEventArgs, ByVal converter As Converter(Of Object, Object))
|
||||
|
||||
Public Sub StartSynchronizing()
|
||||
ListenForChangeEvents(_masterList)
|
||||
ListenForChangeEvents(_targetList)
|
||||
SetListValuesFromSource(_masterList, _targetList, New Converter(Of Object, Object)(AddressOf ConvertFromMasterToTarget))
|
||||
|
||||
If Not TargetAndMasterCollectionsAreEqual() Then
|
||||
SetListValuesFromSource(_targetList, _masterList, New Converter(Of Object, Object)(AddressOf ConvertFromTargetToMaster))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Sub StopSynchronizing()
|
||||
StopListeningForChangeEvents(_masterList)
|
||||
StopListeningForChangeEvents(_targetList)
|
||||
End Sub
|
||||
|
||||
Public Function ReceiveWeakEvent(ByVal managerType As Type, ByVal sender As Object, ByVal e As EventArgs) As Boolean Implements IWeakEventListener.ReceiveWeakEvent
|
||||
HandleCollectionChanged(TryCast(sender, IList), TryCast(e, NotifyCollectionChangedEventArgs))
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Protected Sub ListenForChangeEvents(ByVal list As IList)
|
||||
If TypeOf list Is INotifyCollectionChanged Then
|
||||
CollectionChangedEventManager.AddListener(TryCast(list, INotifyCollectionChanged), Me)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Protected Sub StopListeningForChangeEvents(ByVal list As IList)
|
||||
If TypeOf list Is INotifyCollectionChanged Then
|
||||
CollectionChangedEventManager.RemoveListener(TryCast(list, INotifyCollectionChanged), Me)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub AddItems(ByVal list As IList, ByVal e As NotifyCollectionChangedEventArgs, ByVal converter As Converter(Of Object, Object))
|
||||
Dim itemCount As Integer = e.NewItems.Count
|
||||
|
||||
For i As Integer = 0 To itemCount - 1
|
||||
Dim insertionPoint As Integer = e.NewStartingIndex + i
|
||||
|
||||
If insertionPoint > list.Count Then
|
||||
list.Add(converter(e.NewItems(i)))
|
||||
Else
|
||||
list.Insert(insertionPoint, converter(e.NewItems(i)))
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Private Function ConvertFromMasterToTarget(ByVal masterListItem As Object) As Object
|
||||
Return If(_masterTargetConverter Is Nothing, masterListItem, _masterTargetConverter.Convert(masterListItem))
|
||||
End Function
|
||||
|
||||
Private Function ConvertFromTargetToMaster(ByVal targetListItem As Object) As Object
|
||||
Return If(_masterTargetConverter Is Nothing, targetListItem, _masterTargetConverter.ConvertBack(targetListItem))
|
||||
End Function
|
||||
|
||||
Private Sub HandleCollectionChanged(ByVal sender As Object, ByVal e As NotifyCollectionChangedEventArgs)
|
||||
Dim sourceList As IList = TryCast(sender, IList)
|
||||
|
||||
Select Case e.Action
|
||||
Case NotifyCollectionChangedAction.Add
|
||||
PerformActionOnAllLists(AddressOf AddItems, sourceList, e)
|
||||
Case NotifyCollectionChangedAction.Move
|
||||
PerformActionOnAllLists(AddressOf MoveItems, sourceList, e)
|
||||
Case NotifyCollectionChangedAction.Remove
|
||||
PerformActionOnAllLists(AddressOf RemoveItems, sourceList, e)
|
||||
Case NotifyCollectionChangedAction.Replace
|
||||
PerformActionOnAllLists(AddressOf ReplaceItems, sourceList, e)
|
||||
Case NotifyCollectionChangedAction.Reset
|
||||
UpdateListsFromSource(TryCast(sender, IList))
|
||||
Case Else
|
||||
End Select
|
||||
End Sub
|
||||
|
||||
Private Sub MoveItems(ByVal list As IList, ByVal e As NotifyCollectionChangedEventArgs, ByVal converter As Converter(Of Object, Object))
|
||||
RemoveItems(list, e, converter)
|
||||
AddItems(list, e, converter)
|
||||
End Sub
|
||||
|
||||
Private Sub PerformActionOnAllLists(ByVal action As ChangeListAction, ByVal sourceList As IList, ByVal collectionChangedArgs As NotifyCollectionChangedEventArgs)
|
||||
If sourceList Is _masterList Then
|
||||
PerformActionOnList(_targetList, action, collectionChangedArgs, New Converter(Of Object, Object)(AddressOf ConvertFromMasterToTarget))
|
||||
Else
|
||||
PerformActionOnList(_masterList, action, collectionChangedArgs, New Converter(Of Object, Object)(AddressOf ConvertFromTargetToMaster))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub PerformActionOnList(ByVal list As IList, ByVal action As ChangeListAction, ByVal collectionChangedArgs As NotifyCollectionChangedEventArgs, ByVal converter As Converter(Of Object, Object))
|
||||
StopListeningForChangeEvents(list)
|
||||
action(list, collectionChangedArgs, converter)
|
||||
ListenForChangeEvents(list)
|
||||
End Sub
|
||||
|
||||
Private Sub RemoveItems(ByVal list As IList, ByVal e As NotifyCollectionChangedEventArgs, ByVal converter As Converter(Of Object, Object))
|
||||
If e.OldItems.Count = 1 AndAlso e.OldStartingIndex <= list.Count - 1 Then
|
||||
list.RemoveAt(e.OldStartingIndex)
|
||||
Else
|
||||
For Each Item In e.OldItems
|
||||
list.Remove(Item)
|
||||
Next
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub ReplaceItems(ByVal list As IList, ByVal e As NotifyCollectionChangedEventArgs, ByVal converter As Converter(Of Object, Object))
|
||||
RemoveItems(list, e, converter)
|
||||
AddItems(list, e, converter)
|
||||
End Sub
|
||||
|
||||
Private Sub SetListValuesFromSource(ByVal sourceList As IList, ByVal targetList As IList, ByVal converter As Converter(Of Object, Object))
|
||||
StopListeningForChangeEvents(targetList)
|
||||
targetList.Clear()
|
||||
|
||||
For Each o As Object In sourceList
|
||||
targetList.Add(converter(o))
|
||||
Next
|
||||
|
||||
ListenForChangeEvents(targetList)
|
||||
End Sub
|
||||
|
||||
Private Function TargetAndMasterCollectionsAreEqual() As Boolean
|
||||
Return _masterList.Cast(Of Object)().SequenceEqual(_targetList.Cast(Of Object)().[Select](Function(item) ConvertFromTargetToMaster(item)))
|
||||
End Function
|
||||
|
||||
Private Sub UpdateListsFromSource(ByVal sourceList As IList)
|
||||
If sourceList Is _masterList Then
|
||||
SetListValuesFromSource(_masterList, _targetList, New Converter(Of Object, Object)(AddressOf ConvertFromMasterToTarget))
|
||||
Else
|
||||
SetListValuesFromSource(_targetList, _masterList, New Converter(Of Object, Object)(AddressOf ConvertFromTargetToMaster))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Friend Class DoNothingListItemConverter
|
||||
Implements IListItemConverter
|
||||
|
||||
Public Function Convert(ByVal masterListItem As Object) As Object Implements IListItemConverter.Convert
|
||||
Return masterListItem
|
||||
End Function
|
||||
|
||||
Public Function ConvertBack(ByVal targetListItem As Object) As Object Implements IListItemConverter.ConvertBack
|
||||
Return targetListItem
|
||||
End Function
|
||||
End Class
|
||||
End Class
|
||||
+43
-13
@@ -34,6 +34,11 @@
|
||||
Command="{Binding ArcCSECommand}" IsEnabled="{Binding bLayerOk}">
|
||||
<Image Source="/Resources/DrawPanel/ArcCSE.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding Arc2PRToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding Arc2PRCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
<Image Source="/Resources/DrawPanel/Arc2PR.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding Arc3PToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding Arc3PCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
@@ -44,21 +49,28 @@
|
||||
Command="{Binding ArcPDPCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
<Image Source="/Resources/DrawPanel/ArcPDP.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding CirclePDToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
<Button ToolTip="{Binding BiArcToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding BiArcCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
<Image Source="/Resources/DrawPanel/BiArc.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Style="{StaticResource DrawPanelButton}"
|
||||
Visibility="Hidden"/>
|
||||
<Button ToolTip="{Binding CircleCPToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding CircleCPCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
<Image Source="/Resources/DrawPanel/CircleCP.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding Circle3PToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding Circle3PCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
<Image Source="/Resources/DrawPanel/Circle3P.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding CircleCDToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding CircleCDCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
<Image Source="/Resources/DrawPanel/CircleCD.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding Circle3PToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding Circle3PCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
<Image Source="/Resources/DrawPanel/Circle3P.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding Rectangle2PToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding Rectangle2PCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
@@ -74,16 +86,26 @@
|
||||
Command="{Binding PolygonSideCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
<Image Source="/Resources/DrawPanel/PolygonSide.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding TextToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding TextCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
<Image Source="/Resources/DrawPanel/Text.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding LinearDimensionToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding LinearDimensionCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
<Image Source="/Resources/DrawPanel/LinearDimension.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding AngularDimensionToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding AngularDimensionCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
<Image Source="/Resources/DrawPanel/AngularDimension.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding DiamRadDimensionToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding DiamRadDimensionCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
<Image Source="/Resources/DrawPanel/DiametralDimension.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding TextToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding TextCommand}" IsEnabled="{Binding bLayerOk}">
|
||||
<Image Source="/Resources/DrawPanel/Text.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander>
|
||||
<Expander Name="Draw3D" Style="{StaticResource ExpanderStyle}" Grid.Row="1"
|
||||
@@ -177,6 +199,11 @@
|
||||
Command="{Binding ApproxSurfCommand}" IsEnabled="{Binding bSelOk}">
|
||||
<Image Source="/Resources/DrawPanel/ApproxSurf.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding StmMoveVertexFacetToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding MoveStmVertexFacetCommand}" IsEnabled="{Binding bSelOk}">
|
||||
<Image Source="/Resources/DrawPanel/StmMoveVertex.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander>
|
||||
<Expander Name="Modify" Style="{StaticResource ExpanderStyle}" Grid.Row="2" IsExpanded="{Binding ModifyIsExpanded}">
|
||||
@@ -194,8 +221,11 @@
|
||||
Command="{Binding ChangeLayerCommand}" IsEnabled="{Binding bSelOk}">
|
||||
<Image Source="/Resources/DrawPanel/ChangeLayer.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Style="{StaticResource DrawPanelButton}"
|
||||
Visibility="Hidden"/>
|
||||
<Button ToolTip="{Binding ChangeStatusToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding ChangeStatusCommand}" IsEnabled="{Binding bSelOk}">
|
||||
<Image Source="/Resources/DrawPanel/ChangeStatus.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding ChangeColorToolTip}" Style="{StaticResource DrawPanelButton}"
|
||||
ToolTipService.ShowOnDisabled="True"
|
||||
Command="{Binding ChangeColorCommand}" IsEnabled="{Binding bSelOk}">
|
||||
|
||||
+219
-8
@@ -50,7 +50,7 @@ Public Class DrawPanelVM
|
||||
Return EgtMsg(MSG_DRAWPANEL + 3)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property CirclePDToolTip As String
|
||||
Public ReadOnly Property CircleCPToolTip As String
|
||||
Get
|
||||
Return EgtMsg(MSG_DRAWPANEL + 4)
|
||||
End Get
|
||||
@@ -72,7 +72,12 @@ Public Class DrawPanelVM
|
||||
End Property
|
||||
Public ReadOnly Property Arc3PToolTip As String
|
||||
Get
|
||||
Return EgtMsg(MSG_DRAWPANEL + 7)
|
||||
Return EgtMsg(5207)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property Arc2PRToolTip As String
|
||||
Get
|
||||
Return EgtMsg(5169)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property ArcPDPToolTip As String
|
||||
@@ -80,6 +85,12 @@ Public Class DrawPanelVM
|
||||
Return EgtMsg(MSG_DRAWPANEL + 8)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property BiArcToolTip As String
|
||||
Get
|
||||
Return EgtMsg(5170)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Rectangle2PToolTip As String
|
||||
Get
|
||||
Return EgtMsg(MSG_DRAWPANEL + 11)
|
||||
@@ -97,12 +108,22 @@ Public Class DrawPanelVM
|
||||
End Property
|
||||
Public ReadOnly Property TextToolTip As String
|
||||
Get
|
||||
Return EgtMsg( 5214)
|
||||
Return EgtMsg( 5214) ' Testo<br/>Testo Avanzato (Shift)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property LinearDimensionToolTip As String
|
||||
Get
|
||||
Return EgtMsg( 5155)
|
||||
Return EgtMsg( 5155) ' Quota Lineare<br/>Quota Allineata (Shift)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property AngularDimensionToolTip As String
|
||||
Get
|
||||
Return EgtMsg( 5167) ' Quota Angolare<br/>Quota Angolare Avanzata (Shift)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property DiamRadDimensionToolTip As String
|
||||
Get
|
||||
Return EgtMsg( 5168) ' Quota Diametrale<br/>Quota Radiale (Shift)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
@@ -151,6 +172,11 @@ Public Class DrawPanelVM
|
||||
Return EgtMsg( 5165) 'Approssima Superfici e Regioni Piane
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property StmMoveVertexFacetToolTip As String
|
||||
Get
|
||||
Return EgtMsg( 5166) 'Muovi Vertice di Superficie<br/>Muovi Faccia di Superficie (Shift)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property ExtractSurfFacetToolTip As String
|
||||
Get
|
||||
Return EgtMsg( 5158) 'Estrai Faccia da Superficie
|
||||
@@ -202,6 +228,12 @@ Public Class DrawPanelVM
|
||||
Return EgtMsg(MSG_DRAWPANEL + 24)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property ChangeStatusToolTip As String
|
||||
Get
|
||||
Return EgtMsg(5250)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property ChangeAlphaToolTip As String
|
||||
Get
|
||||
Return EgtMsg(MSG_DRAWPANEL + 25)
|
||||
@@ -449,12 +481,16 @@ Public Class DrawPanelVM
|
||||
Private m_cmdCircle3P As ICommand
|
||||
Private m_cmdArcCSE As ICommand
|
||||
Private m_cmdArc3P As ICommand
|
||||
Private m_cmdArc2PR As ICommand
|
||||
Private m_cmdArcPDP As ICommand
|
||||
Private m_cmdBiArc As ICommand
|
||||
Private m_cmdRectangle2P As ICommand
|
||||
Private m_cmdPolygon As ICommand
|
||||
Private m_cmdPolygonSide As ICommand
|
||||
Private m_cmdText As ICommand
|
||||
Private m_cmdLinDim As ICommand
|
||||
Private m_cmdAngDim As ICommand
|
||||
Private m_cmdDiamRadDim As ICommand
|
||||
Private m_cmdModifyCurve As ICommand
|
||||
Private m_cmdAddPointCurve As ICommand
|
||||
Private m_cmdPlane As ICommand
|
||||
@@ -466,6 +502,7 @@ Public Class DrawPanelVM
|
||||
Private m_cmdMergeSurf As ICommand
|
||||
Private m_cmdExplodeSurf As ICommand
|
||||
Private m_cmdApproxSurf As ICommand
|
||||
Private m_cmdMoveStmVertexFacet As ICommand
|
||||
Private m_cmdExtractSurfFacet As ICommand
|
||||
Private m_cmdInvertSurf As ICommand
|
||||
Private m_cmdExtractLoops As ICommand
|
||||
@@ -476,6 +513,7 @@ Public Class DrawPanelVM
|
||||
Private m_cmdIntersectSurfSurf As ICommand
|
||||
Private m_cmdDelete As ICommand
|
||||
Private m_cmdChangeLayer As ICommand
|
||||
Private m_cmdChangeStatus As ICommand
|
||||
Private m_cmdChangeAlpha As ICommand
|
||||
Private m_cmdResetColor As ICommand
|
||||
Private m_cmdChangeColor As ICommand
|
||||
@@ -714,11 +752,38 @@ Public Class DrawPanelVM
|
||||
''' Execute the Arc3P. This method is invoked by the Arc3PCommand.
|
||||
''' </summary>
|
||||
Public Sub Arc3P(ByVal param As Object)
|
||||
If (Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift Then
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.ARC2PR)
|
||||
Else
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.ARC3P)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' Arc3PCommand
|
||||
|
||||
#Region "Arc2PRCommand"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Arc2PR.
|
||||
''' </summary>
|
||||
Public ReadOnly Property Arc2PRCommand As ICommand
|
||||
Get
|
||||
If m_cmdArc2PR Is Nothing Then
|
||||
m_cmdArc2PR = New RelayCommand(AddressOf Arc2PR)
|
||||
End If
|
||||
Return m_cmdArc2PR
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the Arc2PR. This method is invoked by the Arc2PRCommand.
|
||||
''' </summary>
|
||||
Public Sub Arc2PR(ByVal param As Object)
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.ARC2PR)
|
||||
End Sub
|
||||
|
||||
#End Region ' Arc2PRCommand
|
||||
|
||||
#Region "ArcPDPCommand"
|
||||
|
||||
''' <summary>
|
||||
@@ -737,18 +802,45 @@ Public Class DrawPanelVM
|
||||
''' Execute the ArcPDP. This method is invoked by the ArcPDPCommand.
|
||||
''' </summary>
|
||||
Public Sub ArcPDP(ByVal param As Object)
|
||||
If (Keyboard.Modifiers And ModifierKeys.Shift) <> ModifierKeys.Shift Then
|
||||
If (Keyboard.Modifiers And ModifierKeys.Control) = ModifierKeys.Control Then
|
||||
If (Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift Then
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.ARCPVP)
|
||||
ElseIf (Keyboard.Modifiers And ModifierKeys.Control) = ModifierKeys.Control Then
|
||||
Map.refProjectVM.GetController.SetContinue()
|
||||
End If
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.ARCPDP)
|
||||
Else
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.ARCPVP)
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.ARCPDP)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' ArcPDPCommand
|
||||
|
||||
#Region "BiArcCommand"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do BiArc.
|
||||
''' </summary>
|
||||
Public ReadOnly Property BiArcCommand As ICommand
|
||||
Get
|
||||
If m_cmdBiArc Is Nothing Then
|
||||
m_cmdBiArc = New RelayCommand(AddressOf BiArc)
|
||||
End If
|
||||
Return m_cmdBiArc
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the BiArc. This method is invoked by the BiArcCommand.
|
||||
''' </summary>
|
||||
Public Sub BiArc(ByVal param As Object)
|
||||
If (Keyboard.Modifiers And ModifierKeys.Shift) <> ModifierKeys.Shift Then
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.BIARC)
|
||||
Else
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.CURVEBEZIER)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' BiArcCommand
|
||||
|
||||
#Region "Rectangle2PCommand"
|
||||
|
||||
''' <summary>
|
||||
@@ -872,6 +964,60 @@ Public Class DrawPanelVM
|
||||
|
||||
#End Region ' LinearDimensionCommand
|
||||
|
||||
#Region "AngularDimensionCommand"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Angular Dimension.
|
||||
''' </summary>
|
||||
Public ReadOnly Property AngularDimensionCommand As ICommand
|
||||
Get
|
||||
If m_cmdAngDim Is Nothing Then
|
||||
m_cmdAngDim = New RelayCommand(AddressOf AngularDimension)
|
||||
End If
|
||||
Return m_cmdAngDim
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the AngularDimension. This method is invoked by the AngDimCommand.
|
||||
''' </summary>
|
||||
Public Sub AngularDimension(ByVal param As Object)
|
||||
If (Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift Then
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.ANGULARDIMENSIONPLUS)
|
||||
Else
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.ANGULARDIMENSION)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' AngularDimensionCommand
|
||||
|
||||
#Region "DiamRadDimensionCommand"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do DiamRad Dimension.
|
||||
''' </summary>
|
||||
Public ReadOnly Property DiamRadDimensionCommand As ICommand
|
||||
Get
|
||||
If m_cmdDiamRadDim Is Nothing Then
|
||||
m_cmdDiamRadDim = New RelayCommand(AddressOf DiamRadDimension)
|
||||
End If
|
||||
Return m_cmdDiamRadDim
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the DiamRadDimension. This method is invoked by the DiamRadDimCommand.
|
||||
''' </summary>
|
||||
Public Sub DiamRadDimension(ByVal param As Object)
|
||||
If (Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift Then
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.RADIALDIMENSION)
|
||||
Else
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.DIAMETRALDIMENSION)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' DiamRadDimensionCommand
|
||||
|
||||
#Region "ModifyCurve"
|
||||
|
||||
''' <summary>
|
||||
@@ -1195,6 +1341,33 @@ Public Class DrawPanelVM
|
||||
|
||||
#End Region ' ApproxSurfCommand
|
||||
|
||||
#Region "MoveStmVertexFacetCommand"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do MoveStmVertex.
|
||||
''' </summary>
|
||||
Public ReadOnly Property MoveStmVertexFacetCommand As ICommand
|
||||
Get
|
||||
If m_cmdMoveStmVertexFacet Is Nothing Then
|
||||
m_cmdMoveStmVertexFacet = New RelayCommand(AddressOf MoveStmVertexFacet)
|
||||
End If
|
||||
Return m_cmdMoveStmVertexFacet
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the MoveStmVertexFacet. This method is invoked by the MoveStmVertexFacetCommand.
|
||||
''' </summary>
|
||||
Public Sub MoveStmVertexFacet(ByVal param As Object)
|
||||
If (Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift Then
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.MOVESURFFACET)
|
||||
Else
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.MOVESURFVERTEX)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' MoveStmVertexFacetCommand
|
||||
|
||||
#Region "ExtractSurfFacetCommand"
|
||||
|
||||
''' <summary>
|
||||
@@ -1357,6 +1530,8 @@ Public Class DrawPanelVM
|
||||
Public Sub SolidIntersectSurf(ByVal param As Object)
|
||||
If (Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift Then
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.CUTSURFSURF)
|
||||
ElseIf (Keyboard.Modifiers And ModifierKeys.Control) = ModifierKeys.Control Then
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.TRIMSURFTMWITHCURVE)
|
||||
Else
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.SOLIDINTERSECTSURF)
|
||||
End If
|
||||
@@ -1438,6 +1613,41 @@ Public Class DrawPanelVM
|
||||
|
||||
#End Region ' ChangeLayerCommand
|
||||
|
||||
#Region "ChangeStatusCommand"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do ChangeStatus.
|
||||
''' </summary>
|
||||
Public ReadOnly Property ChangeStatusCommand As ICommand
|
||||
Get
|
||||
If m_cmdChangeStatus Is Nothing Then
|
||||
m_cmdChangeStatus = New RelayCommand(AddressOf ChangeStatus)
|
||||
End If
|
||||
Return m_cmdChangeStatus
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the ChangeStatus. This method is invoked by the ChangeStatusCommand.
|
||||
''' </summary>
|
||||
Public Sub ChangeStatus(ByVal param As Object)
|
||||
If (Keyboard.Modifiers And ModifierKeys.Control) = ModifierKeys.Control Then
|
||||
Map.refProjectVM.GetController.SetLastInteger( GDB_ID.SELPART)
|
||||
Map.refProjectVM.GetController.SetLastBoolean( True)
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.CHANGESTATUS)
|
||||
ElseIf (Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift Then
|
||||
Map.refProjectVM.GetController.SetLastInteger( GDB_ID.SELLAYER)
|
||||
Map.refProjectVM.GetController.SetLastBoolean( True)
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.CHANGESTATUS)
|
||||
Else
|
||||
Map.refProjectVM.GetController.SetLastInteger( GDB_ID.SEL)
|
||||
Map.refProjectVM.GetController.SetLastBoolean( False)
|
||||
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.CHANGESTATUS)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' ChangeStatusCommand
|
||||
|
||||
#Region "ChangeAlphaCommand"
|
||||
|
||||
''' <summary>
|
||||
@@ -2011,6 +2221,7 @@ Public Class DrawPanelVM
|
||||
If Not IniFile.m_ProjectSceneContext = 0 Then
|
||||
bSelOk = EgtGetFirstSelectedObj() <> GDB_ID.NULL
|
||||
bLayerOkAndSelOk = m_bLayerOk And m_bSelOk
|
||||
Map.refStatusBarVM.UpdateSelectedCount()
|
||||
End If
|
||||
|
||||
If Application.m_UpdateLayerTree Then
|
||||
|
||||
+95
-1
@@ -161,6 +161,13 @@
|
||||
<DependentUpon>CurrSetUpV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="CurrSetUp\CurrSetUpVM.vb" />
|
||||
<Compile Include="DataGridMultiselectManaging\IListItemConverter.vb" />
|
||||
<Compile Include="DataGridMultiselectManaging\MultiSelectorBehaviours.vb" />
|
||||
<Compile Include="DataGridMultiselectManaging\TwoListSynchronizer.vb" />
|
||||
<Compile Include="ExecuteWindow\ExecuteWindowV.xaml.vb">
|
||||
<DependentUpon>ExecuteWindowV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ExecuteWindow\ExecuteWindowVM.vb" />
|
||||
<Compile Include="LeftTray\LeftTrayV.xaml.vb">
|
||||
<DependentUpon>LeftTrayV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -170,6 +177,12 @@
|
||||
<DependentUpon>EstimationsExpanderV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="OptionPanel\MachiningOptionPanel\EstimationsExpander\EstimationsExpander.vb" />
|
||||
<Compile Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\ProbingParameterExpanderV.xaml.vb">
|
||||
<DependentUpon>ProbingParameterExpanderV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\FiveAxisMachinigParameterExpanderV.xaml.vb">
|
||||
<DependentUpon>FiveAxisMachinigParameterExpanderV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\SurfFinishingParameterExpanderV.xaml.vb">
|
||||
<DependentUpon>SurfFinishingParameterExpanderV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -188,6 +201,9 @@
|
||||
<Compile Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\StoneDrillingParameterExpanderV.xaml.vb">
|
||||
<DependentUpon>StoneDrillingParameterExpanderV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\SurfRoughingParameterExpanderV.xaml.vb">
|
||||
<DependentUpon>SurfRoughingParameterExpanderV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\WoodDrillingParameterExpanderV.xaml.vb">
|
||||
<DependentUpon>WoodDrillingParameterExpanderV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -277,8 +293,20 @@
|
||||
<Compile Include="Special-BeamWall\WallPanelV.xaml.vb">
|
||||
<DependentUpon>WallPanelV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Special-BeamWall\WallPanelVM.vb" />
|
||||
<Compile Include="Special-BeamWall\Wall.vb" />
|
||||
<Compile Include="Special-BeamWall\WallPanelVM.vb" />
|
||||
<Compile Include="Special-ReversePost\ReversePostPanelV.xaml.vb">
|
||||
<DependentUpon>ReversePostPanelV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Special-ReversePost\ReversePostPanelVM.vb" />
|
||||
<Compile Include="Special-Trimming\TrimmingPanelV.xaml.vb">
|
||||
<DependentUpon>TrimmingPanelV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Special-Trimming\TrimmingPanelVM.vb" />
|
||||
<Compile Include="Special-Window\WindowPanelV.xaml.vb">
|
||||
<DependentUpon>WindowPanelV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Special-Window\WindowPanelVM.vb" />
|
||||
<Compile Include="SpecialPanel\SpecialPanelV.xaml.vb">
|
||||
<DependentUpon>SpecialPanelV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -294,6 +322,7 @@
|
||||
<Compile Include="Utility\Analyze.vb" />
|
||||
<Compile Include="Utility\BasePanelVM.vb" />
|
||||
<Compile Include="Utility\BindingProxy.vb" />
|
||||
<Compile Include="Utility\DynamicGridModule.vb" />
|
||||
<Compile Include="Utility\Map.vb" />
|
||||
<Compile Include="Internals\MruList.vb" />
|
||||
<Compile Include="Utility\MachineModel.vb" />
|
||||
@@ -454,6 +483,10 @@
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="ExecuteWindow\ExecuteWindowV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="LeftTray\LeftTrayV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@@ -466,6 +499,14 @@
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\ProbingParameterExpanderV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\FiveAxisMachinigParameterExpanderV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\SurfFinishingParameterExpanderV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
@@ -490,6 +531,10 @@
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\SurfRoughingParameterExpanderV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\WoodDrillingParameterExpanderV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
@@ -610,6 +655,18 @@
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="Special-ReversePost\ReversePostPanelV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="Special-Trimming\TrimmingPanelV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="Special-Window\WindowPanelV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="SpecialPanel\SpecialPanelV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@@ -1002,6 +1059,43 @@
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\EgtCAM5_64.ico" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\Note\+.png" />
|
||||
<Resource Include="Resources\Note\-.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\DrawPanel\AngularDimension.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\DrawPanel\DiametralDimension.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\DrawPanel\ChangeStatus.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\GridViewPanel\CplaneINVERT.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\DrawPanel\StmMoveVertex.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\DrawPanel\Arc2PR.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\DrawPanel\BiArc.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\ExecuteWindow\reload.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\ToolPreview\Head.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\ToolPreview\Tool.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\ToolPreview\Delete.png" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>IF "$(PlatformName)"=="x86" IF "$(ConfigurationName)" == "Release" copy $(TargetPath) c:\EgtProg\EgtCAM5\EgtCAM5R32.exe
|
||||
|
||||
@@ -65,8 +65,13 @@ Public Class ExecutePanelVM
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub Exec(ByVal param As Object)
|
||||
If (Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift Then
|
||||
Dim ExecuteWindow As New ExecuteWindowV(Application.Current.MainWindow, New ExecuteWindowVM)
|
||||
ExecuteWindow.ShowDialog()
|
||||
Else
|
||||
Map.refProjectVM.PreExecScript(True)
|
||||
Map.refProjectVM.ExecScript(String.Empty)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' ExecCommand
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
<EgtWPFLib5:EgtCustomWindow x:Class="ExecuteWindowV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtCAM5="clr-namespace:EgtCAM5"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
|
||||
Title="Execute Window"
|
||||
Height="500" Width="400"
|
||||
IsResizable="True"
|
||||
IsMinimizable="False"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
ShowInTaskbar="False"
|
||||
TitleBarHeight="32"
|
||||
PreviewKeyDown="EgtCustomWindow_PreviewKeyDown"
|
||||
CloseCommand="{Binding Close_Command,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}">
|
||||
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBox Text="{Binding sScriptText}"
|
||||
Style="{StaticResource ExecuteWindow_TextBox}"/>
|
||||
<Button Grid.Row="1"
|
||||
Grid.ColumnSpan="2"
|
||||
Content="{Binding OkMsg}"
|
||||
Command="{Binding Ok_Command}"
|
||||
Style="{StaticResource EgtCAM5_InputButton}"/>
|
||||
<Button Grid.Column="1"
|
||||
Command="{Binding Reload_Command}"
|
||||
IsEnabled="{Binding bReload_IsEnable}"
|
||||
Style="{StaticResource ExecuteWindow_Button}">
|
||||
<Image Source="/Resources/ExecuteWindow/reload.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</EgtWPFLib5:EgtCustomWindow>
|
||||
@@ -0,0 +1,32 @@
|
||||
Public Class ExecuteWindowV
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
Private WithEvents m_ExecuteWindowVM As ExecuteWindowVM
|
||||
|
||||
#End Region ' Fields & Properties
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
Sub New(Owner As Window, ExecuteWindowVM As ExecuteWindowVM)
|
||||
MyBase.New(Owner)
|
||||
' This call is required by the designer.
|
||||
InitializeComponent()
|
||||
Me.DataContext = ExecuteWindowVM
|
||||
' Assegno al riferimento locale al VM il VM preso dal DataContext
|
||||
m_ExecuteWindowVM = ExecuteWindowVM
|
||||
End Sub
|
||||
|
||||
#End Region ' Constructor
|
||||
|
||||
Private Sub CloseWindow(bDialogResult As Boolean) Handles m_ExecuteWindowVM.OnCloseWindow
|
||||
Me.DialogResult = bDialogResult
|
||||
End Sub
|
||||
|
||||
Private Sub EgtCustomWindow_PreviewKeyDown(sender As Object, e As KeyEventArgs)
|
||||
If e.Key = Key.Escape Then
|
||||
Me.Close()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,130 @@
|
||||
Imports System.Text
|
||||
Imports EgtUILib
|
||||
Imports System.IO
|
||||
|
||||
Public Class ExecuteWindowVM
|
||||
Inherits VMBase
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
' Evento per chiusura finestra
|
||||
Friend Event OnCloseWindow(bDialogResult As Boolean)
|
||||
|
||||
Private ReadOnly sScriptFilePath As String = Path.Combine(IniFile.m_sTempDir, "ImmExec" & IniFile.m_nInstance.ToString() & ".lua")
|
||||
|
||||
Private m_sScriptText As String
|
||||
Public Property sScriptText As String
|
||||
Get
|
||||
Return m_sScriptText
|
||||
End Get
|
||||
Set(value As String)
|
||||
m_sScriptText = value
|
||||
NotifyPropertyChanged(NameOf(sScriptText))
|
||||
End Set
|
||||
End Property
|
||||
Private Sub SetScriptFile(value As String)
|
||||
m_sScriptText = value
|
||||
NotifyPropertyChanged(NameOf(sScriptText))
|
||||
End Sub
|
||||
|
||||
Private m_bReload_IsEnable As Boolean = File.Exists(sScriptFilePath)
|
||||
Public ReadOnly Property bReload_IsEnable As Boolean
|
||||
Get
|
||||
Return m_bReload_IsEnable
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#Region "Messages"
|
||||
|
||||
Public ReadOnly Property OkMsg As String
|
||||
Get
|
||||
Return EgtMsg(20041)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property SaveMsg As String
|
||||
Get
|
||||
Return EgtMsg(6453)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' Messages
|
||||
|
||||
' Definizione Comandi
|
||||
Private m_cmdOk As ICommand
|
||||
Private m_cmdReload As ICommand
|
||||
|
||||
#End Region ' Fields & Properties
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
Sub New()
|
||||
End Sub
|
||||
|
||||
#End Region ' Constructor
|
||||
|
||||
#Region "METHODS"
|
||||
|
||||
Private Sub SaveScript(sPathFileScript As String, sScriptText As String)
|
||||
If String.IsNullOrWhiteSpace(sPathFileScript) OrElse String.IsNullOrWhiteSpace(sScriptText) Then Return
|
||||
File.WriteAllText(sPathFileScript, sScriptText, Encoding.UTF8)
|
||||
End Sub
|
||||
|
||||
Private Function ReadScript(sPathFileScript As String) As String
|
||||
If String.IsNullOrWhiteSpace(sPathFileScript) Then Return String.Empty
|
||||
Return File.ReadAllText(sPathFileScript)
|
||||
End Function
|
||||
|
||||
#End Region ' Methods
|
||||
|
||||
#Region "COMMANDS"
|
||||
|
||||
#Region "Ok_Command"
|
||||
|
||||
Public ReadOnly Property Ok_Command As ICommand
|
||||
Get
|
||||
If m_cmdOk Is Nothing Then
|
||||
m_cmdOk = New Command(AddressOf Ok)
|
||||
End If
|
||||
Return m_cmdOk
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public Sub Ok()
|
||||
' Verifico ci sia del testo
|
||||
If String.IsNullOrWhiteSpace(m_sScriptText) Then Return
|
||||
' Salva il file script
|
||||
SaveScript(sScriptFilePath, m_sScriptText)
|
||||
' Esegue il file script
|
||||
Map.refProjectVM.PreExecScript(False)
|
||||
Map.refProjectVM.ExecScript(sScriptFilePath)
|
||||
' Se non passato a lavorazione, aggiornamento visualizzazione
|
||||
If IniFile.m_ProjectMode <> ProjectModeOpt.MACHINING Then EgtDraw()
|
||||
' Chiudo finestra
|
||||
RaiseEvent OnCloseWindow(True)
|
||||
End Sub
|
||||
|
||||
#End Region ' Ok_Command
|
||||
|
||||
#Region "Reload_Command"
|
||||
|
||||
Public ReadOnly Property Reload_Command As ICommand
|
||||
Get
|
||||
If m_cmdReload Is Nothing Then
|
||||
m_cmdReload = New Command(AddressOf Reload)
|
||||
End If
|
||||
Return m_cmdReload
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public Sub Reload()
|
||||
If File.Exists(sScriptFilePath) Then
|
||||
SetScriptFile(ReadScript(sScriptFilePath))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' Reload_Command
|
||||
|
||||
#End Region ' Commands
|
||||
|
||||
End Class
|
||||
@@ -6,20 +6,20 @@
|
||||
<Button Command="{Binding CPlaneTopCommand}" ToolTip="{Binding CPlaneTopToolTip}" Style="{StaticResource GridViewPanelButton}">
|
||||
<Image Source="/Resources/GridViewPanel/CplaneTOP.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding CPlaneBottomCommand}" ToolTip="{Binding CPlaneBottomToolTip}" Style="{StaticResource GridViewPanelButton}">
|
||||
<Image Source="/Resources/GridViewPanel/CplaneBOTTOM.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding CPlaneFrontCommand}" ToolTip="{Binding CPlaneFrontToolTip}" Style="{StaticResource GridViewPanelButton}">
|
||||
<Image Source="/Resources/GridViewPanel/CplaneFRONT.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding CPlaneRightCommand}" ToolTip="{Binding CPlaneRightToolTip}" Style="{StaticResource GridViewPanelButton}">
|
||||
<Image Source="/Resources/GridViewPanel/CplaneRIGHT.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding CPlaneBackCommand}" ToolTip="{Binding CPlaneBackToolTip}" Style="{StaticResource GridViewPanelButton}">
|
||||
<Image Source="/Resources/GridViewPanel/CplaneBACK.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding CPlaneLeftCommand}" ToolTip="{Binding CPlaneLeftToolTip}" Style="{StaticResource GridViewPanelButton}">
|
||||
<Image Source="/Resources/GridViewPanel/CplaneLEFT.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding CPlaneBottomCommand}" ToolTip="{Binding CPlaneBottomToolTip}" Style="{StaticResource GridViewPanelButton}">
|
||||
<Image Source="/Resources/GridViewPanel/CplaneBOTTOM.png" Stretch="Uniform"/>
|
||||
<Button Command="{Binding CPlaneRightCommand}" ToolTip="{Binding CPlaneRightToolTip}" Style="{StaticResource GridViewPanelButton}">
|
||||
<Image Source="/Resources/GridViewPanel/CplaneRIGHT.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding CPlaneElevationCommand}" ToolTip="{Binding CPlaneElevationToolTip}" Style="{StaticResource GridViewPanelButton}">
|
||||
<Image Source="/Resources/GridViewPanel/CplaneELEVATION.png" Stretch="Uniform"/>
|
||||
|
||||
@@ -12,13 +12,8 @@ Public Class GridPanelVM
|
||||
Private m_cmdCPlaneBack As ICommand
|
||||
Private m_cmdCPlaneLeft As ICommand
|
||||
Private m_cmdCPlaneBottom As ICommand
|
||||
Private m_cmdCPlaneView As ICommand
|
||||
Private m_cmdCPlaneElevation As ICommand
|
||||
Private m_cmdCPlaneOrigin As ICommand
|
||||
Private m_cmdCPlaneRotate As ICommand
|
||||
Private m_cmdCPlane3P As ICommand
|
||||
Private m_cmdCPlanePerpObj As ICommand
|
||||
Private m_cmdCPlaneObj As ICommand
|
||||
|
||||
#Region "ToolTip"
|
||||
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
Imports System.IO
|
||||
Imports EgtCAM5.MyMachinePanelVM
|
||||
Imports System.Security.Cryptography
|
||||
Imports System.Windows.Forms.AxHost
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
|
||||
@@ -106,7 +105,10 @@ Public Class MyMachGroupPanelVM
|
||||
Else
|
||||
' se ci sono gruppi di lavorazione
|
||||
If bMachGroup Then
|
||||
nGroupId = EgtGetLastMachGroup()
|
||||
nGroupId = EgtGetCurrMachGroup()
|
||||
If nGroupId = GDB_ID.NULL Then
|
||||
nGroupId = EgtGetFirstMachGroup()
|
||||
End If
|
||||
Return If(EgtSetCurrMachGroup(nGroupId), 0, 1)
|
||||
' se altrimenti ammessi gruppi di lavoro vuoti
|
||||
ElseIf bAllowEmpty Then
|
||||
@@ -118,10 +120,12 @@ Public Class MyMachGroupPanelVM
|
||||
End If
|
||||
End Function
|
||||
|
||||
Private Function ExecScript(sScriptPath As String, nGroupId As Integer, nPartId As Integer) As Boolean
|
||||
Private Function ExecScript(sScriptPath As String, nGroupId As Integer, nPartId As Integer, nInd As Integer, sParts As String) As Boolean
|
||||
EgtLuaCreateGlobTable("DISP")
|
||||
EgtLuaSetGlobIntVar("DISP.GROUPID", nGroupId)
|
||||
EgtLuaSetGlobIntVar("DISP.PARTID", nPartId)
|
||||
EgtLuaSetGlobIntVar("DISP.IND", nInd)
|
||||
EgtLuaSetGlobStringVar("DISP.PARTS", sParts)
|
||||
If Not EgtLuaExecFile(sScriptPath) Then
|
||||
EgtOutLog("Error executing disposition init script " & sScriptPath)
|
||||
MessageBox.Show(EgtMsg(MSG_DISPOSITIONERRORS + 2) & " " & sScriptPath, EgtMsg(MSG_DISPOSITIONERRORS + 1), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
@@ -164,10 +168,25 @@ Public Class MyMachGroupPanelVM
|
||||
If bWithScript Then
|
||||
' Rendo corrente il gruppo di lavoro
|
||||
EgtSetCurrMachGroup(nGroupId)
|
||||
' Creo grezzo e posiziono i pezzi
|
||||
' Recupero i pezzi già inseriti
|
||||
Dim sParts As String = ""
|
||||
Dim nInd As Integer = 0
|
||||
Dim nRawId As Integer = EgtGetFirstRawPart()
|
||||
While nRawId <> GDB_ID.NULL
|
||||
Dim nPartId As Integer = EgtGetFirstPartInRawPart( nRawId)
|
||||
While nPartId <> GDB_ID.NULL
|
||||
nInd += 1
|
||||
sParts &= nInd.ToString() & ","
|
||||
nPartId = EgtGetNextPartInRawPart( nPartId)
|
||||
End While
|
||||
nRawId = EgtGetNextRawPart( nRawId)
|
||||
End While
|
||||
' Creo grezzi e posiziono i pezzi
|
||||
Dim bOk As Boolean = True
|
||||
sParts &= String.Join( ",", PartList)
|
||||
For Each Part In PartList
|
||||
If Not ExecScript(sInitScriptPath, nGroupId, Part) Then bOk = False
|
||||
nInd += 1
|
||||
If Not ExecScript(sInitScriptPath, nGroupId, Part, nInd, sParts) Then bOk = False
|
||||
Next
|
||||
Return bOk
|
||||
Else
|
||||
@@ -196,14 +215,18 @@ Public Class MyMachGroupPanelVM
|
||||
Return False
|
||||
End If
|
||||
If bWithScript Then
|
||||
' Creo grezzo e posiziono i pezzi
|
||||
Dim bOk As Boolean = True
|
||||
' Creo grezzi e posiziono i pezzi
|
||||
If PartList.Count() > 0 then
|
||||
Dim nInd As Integer = 0
|
||||
Dim sParts As String = String.Join( ",", PartList)
|
||||
For Each Part In PartList
|
||||
If Not ExecScript(sInitScriptPath, nGroupId, Part) Then bOk = False
|
||||
nInd += 1
|
||||
If Not ExecScript(sInitScriptPath, nGroupId, Part, nInd, sParts) Then bOk = False
|
||||
Next
|
||||
' Gestione ingresso senza pezzi
|
||||
If PartList.Count() = 0 Then
|
||||
If Not ExecScript(sInitScriptPath, nGroupId, GDB_ID.NULL) Then bOk = False
|
||||
' altrimenti, ingresso senza pezzi
|
||||
Else
|
||||
If Not ExecScript(sInitScriptPath, nGroupId, GDB_ID.NULL, 0, "") Then bOk = False
|
||||
End If
|
||||
If Not bOk Then
|
||||
EgtResetCurrMachGroup()
|
||||
@@ -288,19 +311,19 @@ Public Class MyMachGroupPanelVM
|
||||
End Sub
|
||||
|
||||
Private Sub LoadMaterialType()
|
||||
Dim sMatType As String = "Wood"
|
||||
Dim sMatType As String = MCH_MAT_WOOD
|
||||
' IniFile.m_sMachineName = Map.refStatusBarVM.SelectedMachine.Name
|
||||
' IniFile.m_sCurrMachIniFilePath = Map.refStatusBarVM.SelectedMachine.MachineDirPath & "\" & Map.refStatusBarVM.SelectedMachine.Name & ".ini"
|
||||
Dim sMachineIniPath = IniFile.m_sCurrMachIniFilePath
|
||||
EgtUILib.GetPrivateProfileString(S_GENERAL, EgtWPFLib5.EstConstMachIni.K_MATERIAL, sMatType, sMatType, sMachineIniPath)
|
||||
EgtUILib.GetPrivateProfileString(S_MCH_GENERAL, K_MATERIAL, sMatType, sMatType, sMachineIniPath)
|
||||
Select Case sMatType
|
||||
Case "Stone"
|
||||
EgtWPFLib5.MachiningTreeViewItem.m_MatType = MaterialType.STONE
|
||||
Case "Wood"
|
||||
Case MCH_MAT_STONE
|
||||
EgtWPFLib5.MachiningTreeViewItem.m_MatType = MaterialType.STONE5
|
||||
Case MCH_MAT_WOOD
|
||||
EgtWPFLib5.MachiningTreeViewItem.m_MatType = MaterialType.WOOD
|
||||
Case "Beam"
|
||||
Case MCH_MAT_BEAM
|
||||
EgtWPFLib5.MachiningTreeViewItem.m_MatType = MaterialType.BEAM
|
||||
Case "Additive"
|
||||
Case MCH_MAT_ADDITIVE
|
||||
EgtWPFLib5.MachiningTreeViewItem.m_MatType = MaterialType.WOOD
|
||||
Case Else
|
||||
' Se il materiale specificato nel file INI della macchina non corrisponde ai 4 sopracitati viene emesso un messaggio di errore
|
||||
@@ -401,6 +424,8 @@ Public Class MyMachGroupPanelVM
|
||||
(EgtUILib.GetPrivateProfileInt(S_ESTIMATIONS, K_EST_ENABLE, 0, IniFile.m_sCurrMachIniFilePath) <> 0)
|
||||
' Setto il Materiale in base alla Macchina associata al MachGroup corrente
|
||||
LoadMaterialType()
|
||||
' Zoom all
|
||||
EgtZoom( ZM.ALL)
|
||||
End If
|
||||
|
||||
Return True
|
||||
|
||||
@@ -16,10 +16,8 @@
|
||||
|
||||
<Grid Margin="10">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="40*"/>
|
||||
<ColumnDefinition Width="20*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
@@ -27,6 +25,9 @@
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<UniformGrid Grid.Row="0" Columns="2" Margin="0,0,0,5">
|
||||
@@ -56,7 +57,24 @@
|
||||
</ComboBox>
|
||||
</UniformGrid>
|
||||
|
||||
<UniformGrid Grid.Row="4" Columns="2">
|
||||
<UniformGrid Grid.Row="4" Columns="2" Margin="0,0,0,5"
|
||||
Visibility="{Binding StoneVisibility}">
|
||||
<TextBlock Text="{Binding ExtSawArcMinRadMsg}" VerticalAlignment="Center"/>
|
||||
<TextBox Text="{Binding ExtSawArcMinRad}" Height="25" Margin="10,0,0,0"/>
|
||||
</UniformGrid>
|
||||
|
||||
<UniformGrid Grid.Row="5" Columns="2" Margin="0,0,0,5"
|
||||
Visibility="{Binding StoneVisibility}">
|
||||
<TextBlock Text="{Binding IntSawArcMaxSideAngMsg}" VerticalAlignment="Center"/>
|
||||
<TextBox Text="{Binding IntSawArcMaxSideAng}" Height="25" Margin="10,0,0,0"/>
|
||||
</UniformGrid>
|
||||
|
||||
<UniformGrid Grid.Row="6" Columns="2" Margin="0,0,0,5">
|
||||
<TextBlock Text="{Binding ApproxLinTolMsg}" VerticalAlignment="Center"/>
|
||||
<TextBox Text="{Binding ApproxLinTol}" Height="25" Margin="10,0,0,0"/>
|
||||
</UniformGrid>
|
||||
|
||||
<UniformGrid Grid.Row="7" Columns="2">
|
||||
<TextBlock Text="{Binding DefaultSetUpMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox ItemsSource="{Binding ArchivedSetUpList}" Height="25" Margin="10,0,0,0"
|
||||
SelectedItem="{Binding SelectedDefaultSetUp}" IsEnabled="{Binding IsActiveDefaultSetUp}"/>
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
Imports System.IO
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
|
||||
Public Class MachOptionVM
|
||||
|
||||
@@ -67,6 +68,51 @@ Public Class MachOptionVM
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_sExtSawArcMinRad As String
|
||||
Public Property ExtSawArcMinRad As String
|
||||
Get
|
||||
Return m_sExtSawArcMinRad
|
||||
End Get
|
||||
Set(value As String)
|
||||
Dim dExtSawArcMinRad As Double = 0
|
||||
If StringToLen(value, dExtSawArcMinRad) Then
|
||||
EgtMdbSetGeneralParam(MCH_GP.EXTSAWARCMINRAD, dExtSawArcMinRad)
|
||||
EgtMdbSave()
|
||||
m_sExtSawArcMinRad = value
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_sIntSawArcMaxSideAng As String
|
||||
Public Property IntSawArcMaxSideAng As String
|
||||
Get
|
||||
Return m_sIntSawArcMaxSideAng
|
||||
End Get
|
||||
Set(value As String)
|
||||
Dim dIntSawArcMaxSideAng As Double = 0
|
||||
If StringToLen(value, dIntSawArcMaxSideAng) Then
|
||||
EgtMdbSetGeneralParam(MCH_GP.INTSAWARCMAXSIDEANG, dIntSawArcMaxSideAng)
|
||||
EgtMdbSave()
|
||||
m_sIntSawArcMaxSideAng = value
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_sApproxLinTol As String
|
||||
Public Property ApproxLinTol As String
|
||||
Get
|
||||
Return m_sApproxLinTol
|
||||
End Get
|
||||
Set(value As String)
|
||||
Dim dApproxLinTol As Double = 0
|
||||
If StringToLen(value, dApproxLinTol) Then
|
||||
EgtMdbSetGeneralParam(MCH_GP.APPROXLINTOL, dApproxLinTol)
|
||||
EgtMdbSave()
|
||||
m_sApproxLinTol = value
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_ArchivedSetUpList As New List(Of String)
|
||||
Public Property ArchivedSetUpList As List(Of String)
|
||||
Get
|
||||
@@ -113,6 +159,24 @@ Public Class MachOptionVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property ExtSawArcMinRadMsg As String
|
||||
Get
|
||||
Return EgtMsg(6411) ' Minimo raggio arco esterno con lama
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property IntSawArcMaxSideAngMsg As String
|
||||
Get
|
||||
Return EgtMsg(6412) ' Massima inclinazione arco interno con lama
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property ApproxLinTolMsg As String
|
||||
Get
|
||||
Return EgtMsg(6410) ' Tolleranza di approssimazione
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property DefaultSetUpMsg As String
|
||||
Get
|
||||
Return EgtMsg(MSG_MACHININGOPTIONPAGE + 7)
|
||||
@@ -141,6 +205,18 @@ Public Class MachOptionVM
|
||||
Dim nVal As Integer = 0
|
||||
EgtMdbGetGeneralParam(MCH_GP.SPLITARCS, nVal)
|
||||
m_SelectedSplitArcs = DirectCast(nVal, MCH_SA)
|
||||
' Leggo minimo raggio arco esterno lavorabile con lama
|
||||
dVal = 0
|
||||
EgtMdbGetGeneralParam(MCH_GP.EXTSAWARCMINRAD, dVal)
|
||||
m_sExtSawArcMinRad = LenToString(dVal, 4)
|
||||
' Leggo massima inclinazione lama per lavorare archi interni
|
||||
dVal = 0
|
||||
EgtMdbGetGeneralParam(MCH_GP.INTSAWARCMAXSIDEANG, dVal)
|
||||
m_sIntSawArcMaxSideAng = LenToString(dVal, 4)
|
||||
' Leggo tolleranza lineare di approssimazione
|
||||
dVal = 0
|
||||
EgtMdbGetGeneralParam(MCH_GP.APPROXLINTOL, dVal)
|
||||
m_sApproxLinTol = LenToString(dVal, 4)
|
||||
' Riempio lista attrezzaggi salvati
|
||||
m_ArchivedSetUpList.Add(String.Empty)
|
||||
If Directory.Exists(IniFile.m_sCurrMachSetUpDirPath) Then
|
||||
@@ -161,6 +237,17 @@ Public Class MachOptionVM
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#Region "Visibility"
|
||||
Public ReadOnly Property StoneVisibility As Visibility
|
||||
Get
|
||||
Dim sGenMat As String = ""
|
||||
EgtUILib.GetPrivateProfileString(S_MCH_GENERAL, K_MATERIAL, MCH_MAT_WOOD, sGenMat, IniFile.m_sCurrMachIniFilePath)
|
||||
Return If( sGenMat = MCH_MAT_STONE, Visibility.Visible, Visibility.Collapsed)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region
|
||||
|
||||
#Region "COMMANDS"
|
||||
|
||||
#Region "CloseMachOptionsCommand"
|
||||
|
||||
@@ -269,7 +269,7 @@ Public Class MyMachinePanelVM
|
||||
Dim MachDbWindowVM As New EgtWPFLib5.MachiningDbWindowVM(IniFile.m_sCurrMachIniFilePath, IniFile.m_ProjectSceneContext, "Wood", IniFile.m_nUserLevel > 9, True)
|
||||
Dim MachDbWindowV As New EgtWPFLib5.MachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM)
|
||||
If EgtWPFLib5.MachiningTreeViewItem.m_MatType <> 0 Then
|
||||
MachDbWindowV.Height = 794 '674
|
||||
MachDbWindowV.Height = 800 '674
|
||||
MachDbWindowV.Width = 1024
|
||||
MachDbWindowV.Owner = Application.Current.MainWindow
|
||||
MachDbWindowV.ShowDialog()
|
||||
@@ -290,10 +290,11 @@ Public Class MyMachinePanelVM
|
||||
Dim MachDbWindowVM As New EgtWPFLib5.MachiningDbWindowVM(IniFile.m_sCurrMachIniFilePath, IniFile.m_ProjectSceneContext, "Wood", IniFile.m_nUserLevel > 9, True)
|
||||
Dim MachDbWindowV As New EgtWPFLib5.MachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM)
|
||||
If EgtWPFLib5.MachiningTreeViewItem.m_MatType <> 0 Then
|
||||
MachDbWindowV.Height = 794 '674
|
||||
MachDbWindowV.Height = 800 '674
|
||||
MachDbWindowV.Width = 1024
|
||||
MachDbWindowV.Owner = Application.Current.MainWindow
|
||||
MachDbWindowV.ShowDialog()
|
||||
If Not IsNothing(Map.refMachiningTreeExpanderVM) Then Map.refMachiningTreeExpanderVM.UpdateOperationMachiningList()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
+58
-40
@@ -46,6 +46,13 @@ Public Class MainWindowVM
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_sDimensionDir As String = String.Empty
|
||||
Public ReadOnly Property DimensionDir As String
|
||||
Get
|
||||
Return m_sDimensionDir
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_cmdMainWindow_ContentRendered As ICommand
|
||||
Private m_cmdAboutBox As ICommand
|
||||
' MainWindow Activated Event
|
||||
@@ -97,11 +104,11 @@ Public Class MainWindowVM
|
||||
|
||||
Public ReadOnly Property IconSource As String
|
||||
Get
|
||||
#If PLATFORM = "x64" Then
|
||||
#If PLATFORM = "x64" Then
|
||||
Return "/Resources/EgtCAM5_64.ico"
|
||||
#else
|
||||
#Else
|
||||
Return "/Resources/EgtCAM5.ico"
|
||||
#End If
|
||||
#End If
|
||||
End Get
|
||||
End Property
|
||||
|
||||
@@ -189,13 +196,7 @@ Public Class MainWindowVM
|
||||
' Salvo impostazione macchina corrente
|
||||
Map.refMachinePanelVM.SaveCurrentMachine()
|
||||
' Aggiorno istanze usate
|
||||
m_objMutex.WaitOne(1000)
|
||||
Dim nTmp As Integer = GetPrivateProfileInt(S_GENERAL, K_INSTANCES, 0)
|
||||
nTmp -= (1 << (IniFile.m_nInstance - 1))
|
||||
WritePrivateProfileString(S_GENERAL, K_INSTANCES, nTmp.ToString())
|
||||
m_objMutex.ReleaseMutex()
|
||||
' Rilascio mutex
|
||||
If Not IsNothing(m_objMutex) Then m_objMutex.Close()
|
||||
ReleaseInstance()
|
||||
' Chiudo la finestra principale del programma
|
||||
Application.Current.MainWindow.Close()
|
||||
Else
|
||||
@@ -203,15 +204,9 @@ Public Class MainWindowVM
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Function OnTerminateProcess( nExitCode As Integer) As Boolean
|
||||
Private Function OnTerminateProcess(nExitCode As Integer) As Boolean
|
||||
' Aggiorno istanze usate
|
||||
m_objMutex.WaitOne(1000)
|
||||
Dim nTmp As Integer = GetPrivateProfileInt(S_GENERAL, K_INSTANCES, 0)
|
||||
nTmp -= (1 << (IniFile.m_nInstance - 1))
|
||||
WritePrivateProfileString(S_GENERAL, K_INSTANCES, nTmp.ToString())
|
||||
m_objMutex.ReleaseMutex()
|
||||
' Rilascio mutex
|
||||
If Not IsNothing(m_objMutex) Then m_objMutex.Close()
|
||||
ReleaseInstance()
|
||||
' Dichiaro di procedere con la terminazione del programma
|
||||
Return True
|
||||
End Function
|
||||
@@ -306,12 +301,9 @@ Public Class MainWindowVM
|
||||
Map.refMainWindowVM.ManageClosingApplication()
|
||||
' Terminazione generale di EgtInterface
|
||||
EgtExit()
|
||||
' Rilascio mutex
|
||||
If Not IsNothing(m_objMutex) Then m_objMutex.Close()
|
||||
' Aggiorno istanze usate
|
||||
Dim nTmp As Integer = GetPrivateProfileInt(S_GENERAL, K_INSTANCES, 0)
|
||||
nTmp -= (1 << (IniFile.m_nInstance - 1))
|
||||
WritePrivateProfileString(S_GENERAL, K_INSTANCES, nTmp.ToString())
|
||||
ReleaseInstance()
|
||||
' Termino
|
||||
Application.Current.Shutdown()
|
||||
End Sub
|
||||
|
||||
@@ -357,14 +349,13 @@ Public Class MainWindowVM
|
||||
' Impostazione direttorio toolmakers
|
||||
Dim sToolMakersDir As String = String.Empty
|
||||
GetPrivateProfileString(S_MACH, K_TOOLMAKERSDIR, "", sToolMakersDir)
|
||||
#If PLATFORM = "x64" Then
|
||||
GetPrivateProfileString(S_MACH, K_TOOLMAKERSDIR64, sToolMakersDir, sToolMakersDir)
|
||||
#End If
|
||||
If Not String.IsNullOrWhiteSpace(sToolMakersDir) Then
|
||||
IniFile.m_sToolMakersDir = sToolMakersDir
|
||||
Else
|
||||
IniFile.m_sToolMakersDir = m_sDataRoot & "\" & TOOLMAKER_DFL_DIR
|
||||
End If
|
||||
' Recupero percorso file Dimension
|
||||
m_sDimensionDir = m_sConfigDir & "\" & DIMENSION_FILE_NAME
|
||||
' Verifico indice di istanza
|
||||
ManageInstance()
|
||||
' Imposto tipo di chiave
|
||||
@@ -388,8 +379,8 @@ Public Class MainWindowVM
|
||||
EgtSetLockId(sLockId)
|
||||
End If
|
||||
' Recupero livello e opzioni della chiave
|
||||
Dim bKey As Boolean = EgtGetKeyLevel(3279, 2511, 1, IniFile.m_nKeyLevel) And
|
||||
EgtGetKeyOptions(3279, 2511, 1, IniFile.m_nKeyOptions)
|
||||
Dim bKey As Boolean = EgtGetKeyLevel(3279, 3103, 1, IniFile.m_nKeyLevel) And
|
||||
EgtGetKeyOptions(3279, 3103, 1, IniFile.m_nKeyOptions)
|
||||
' Leggo e imposto livello utilizzatore
|
||||
IniFile.m_nUserLevel = Math.Min(IniFile.m_nKeyLevel, GetPrivateProfileInt(S_GENERAL, K_USERLEVEL, 1))
|
||||
' Imposto abilitazione lavorazioni avanzate
|
||||
@@ -403,7 +394,7 @@ Public Class MainWindowVM
|
||||
IniFile.m_sLogFile = m_sTempDir & "\" & GENLOG_FILE_NAME.Replace("#", IniFile.m_nInstance.ToString())
|
||||
Dim sLogMsg As String = "User " & Environment.MachineName & "\" & Environment.UserName &
|
||||
" Inst" & IniFile.m_nInstance.ToString() &
|
||||
" Ulv" & IniFile.m_nUserLevel.ToString() & " Dbg" & DebugLevel().ToString() & vbLf &
|
||||
" Ulv" & IniFile.m_nUserLevel.ToString() & " Dbg" & DebugLevel().ToString() & vbLf &
|
||||
My.Application.Info.Title.ToString() & " ver. " & m_sVersion
|
||||
EgtInit(m_nDebug, IniFile.m_sLogFile, sLogMsg)
|
||||
EgtSetOnTerminateProcess( m_OnTerminateProcessCallback)
|
||||
@@ -425,7 +416,14 @@ Public Class MainWindowVM
|
||||
GetPrivateProfileString(S_GEOMDB, K_NFEFONTDIR, "", sNfeDir)
|
||||
GetPrivateProfileString(S_GEOMDB, K_DEFAULTFONT, "", OptionModule.m_sFontText)
|
||||
EgtSetFont(sNfeDir, OptionModule.m_sFontText)
|
||||
' Imposto direttorio ausiliario per import/gestione BTL
|
||||
' Imposto dir di default per libreria Lua e lancio libreria di base
|
||||
Dim sLuaLibsDir As String = String.Empty
|
||||
GetPrivateProfileString(S_LUA, K_LIBSDIR, "", sLuaLibsDir)
|
||||
EgtSetLuaLibs(sLuaLibsDir)
|
||||
Dim sLuaBaseLib As String = String.Empty
|
||||
GetPrivateProfileString(S_LUA, K_BASELIB, "EgtBase", sLuaBaseLib)
|
||||
EgtLuaRequire(sLuaBaseLib)
|
||||
' Imposto direttorio ausiliario per import/gestione BTL (sempre dopo impostazioni lua)
|
||||
Dim sBtlAuxDir As String = String.Empty
|
||||
GetPrivateProfileString(S_IMPORT, K_BTLAUXDIR, "", sBtlAuxDir)
|
||||
EgtSetBtlAuxDir(sBtlAuxDir)
|
||||
@@ -433,16 +431,6 @@ Public Class MainWindowVM
|
||||
Dim sThreeJSLibDir As String = String.Empty
|
||||
GetPrivateProfileString(S_EXPORT, K_THREEJSLIBDIR, "", sThreeJSLibDir)
|
||||
EgtSetThreeJSLibDir(sThreeJSLibDir)
|
||||
' Imposto dir di default per libreria Lua e lancio libreria di base
|
||||
Dim sLuaLibsDir As String = String.Empty
|
||||
GetPrivateProfileString(S_LUA, K_LIBSDIR, "", sLuaLibsDir)
|
||||
#If PLATFORM = "x64" Then
|
||||
GetPrivateProfileString(S_LUA, K_LIBSDIR64, sLuaLibsDir, sLuaLibsDir)
|
||||
#End If
|
||||
EgtSetLuaLibs(sLuaLibsDir)
|
||||
Dim sLuaBaseLib As String = String.Empty
|
||||
GetPrivateProfileString(S_LUA, K_BASELIB, "EgtBase", sLuaBaseLib)
|
||||
EgtLuaRequire(sLuaBaseLib)
|
||||
' Imposto direttorio temporaneo a EgtInterface
|
||||
EgtSetTempDir(m_sTempDir)
|
||||
' Imposto IniFile a EgtInterface
|
||||
@@ -536,6 +524,17 @@ Public Class MainWindowVM
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub ReleaseInstance()
|
||||
' Aggiorno istanze usate
|
||||
Dim bOk As Boolean = m_objMutex.WaitOne(1000)
|
||||
Dim nTmp As Integer = GetPrivateProfileInt(S_GENERAL, K_INSTANCES, 0)
|
||||
nTmp -= (1 << (IniFile.m_nInstance - 1))
|
||||
WritePrivateProfileString(S_GENERAL, K_INSTANCES, nTmp.ToString())
|
||||
If bOk Then m_objMutex.ReleaseMutex()
|
||||
' Rilascio mutex
|
||||
If Not IsNothing(m_objMutex) Then m_objMutex.Close()
|
||||
End Sub
|
||||
|
||||
Friend Sub NotifyMainWindow_ContentRendered()
|
||||
' Notifico ProjectVM
|
||||
Map.refProjectVM.ProcessCommandLine()
|
||||
@@ -603,6 +602,25 @@ Public Class MainWindowVM
|
||||
' pulisco output
|
||||
Map.refStatusBarVM.NotifyStatusOutput("")
|
||||
Map.refInputExpanderVM.ResetInputBox()
|
||||
If Not IsNothing(Map.refMachiningParameterExpanderVM) Then
|
||||
' Nascondo la combobox delle usernotes
|
||||
Map.refMachiningParameterExpanderVM.CurrOperation.SetComboAddVisibility(Visibility.Collapsed)
|
||||
'riattivo il pulsante per visualizzare la combobox delle note
|
||||
Map.refMachiningParameterExpanderVM.CurrOperation.SetShowNoteListCombo_IsEnable(True)
|
||||
End If
|
||||
ElseIf (e.Key = Key.Left OrElse e.Key = Key.Right) AndAlso Map.refTopCommandBarVM.MachiningIsChecked AndAlso Map.refOperationParametersExpanderVM.OperationParameters.IsEnabled Then
|
||||
Map.refMachiningParameterExpanderVM.FocusSlider()
|
||||
Dim nStep As Integer = If(e.Key = Key.Right, 1, -1)
|
||||
Map.refMachiningParameterExpanderVM.SetSliderValue(nStep)
|
||||
e.Handled = True
|
||||
ElseIf (e.Key = Key.Up OrElse e.Key = Key.Down) AndAlso Map.refTopCommandBarVM.MachiningIsChecked AndAlso Map.refOperationParametersExpanderVM.OperationParameters.IsEnabled Then
|
||||
Map.refMachiningParameterExpanderVM.FocusButtonPreview()
|
||||
If e.Key = Key.Down Then
|
||||
Map.refMachiningParameterExpanderVM.RevertPreviewMachiningTool()
|
||||
Else
|
||||
Map.refMachiningParameterExpanderVM.PreviewMachiningTool()
|
||||
End If
|
||||
e.Handled = True
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ Imports System.Windows
|
||||
#End If
|
||||
<Assembly: AssemblyCompany("Egalware s.r.l.")>
|
||||
<Assembly: AssemblyProduct("EgtCAM5")>
|
||||
<Assembly: AssemblyCopyright("Copyright © 2016-2023 by Egalware s.r.l.")>
|
||||
<Assembly: AssemblyCopyright("Copyright © 2016-2026 by Egalware s.r.l.")>
|
||||
<Assembly: AssemblyTrademark("")>
|
||||
<Assembly: ComVisible(false)>
|
||||
|
||||
@@ -70,6 +70,6 @@ Imports System.Windows
|
||||
' by using the '*' as shown below:
|
||||
' <Assembly: AssemblyVersion("1.0.*")>
|
||||
|
||||
<Assembly: AssemblyVersion("2.5.11.2")>
|
||||
<Assembly: AssemblyFileVersion("2.5.11.2")>
|
||||
<Assembly: AssemblyVersion("3.1.3.2")>
|
||||
<Assembly: AssemblyFileVersion("3.1.3.2")>
|
||||
|
||||
|
||||
Generated
+2
-2
@@ -1,7 +1,7 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
' Runtime Version:4.0.30319.34209
|
||||
' Runtime Version:4.0.30319.42000
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
@@ -22,7 +22,7 @@ Namespace My.Resources
|
||||
'''<summary>
|
||||
''' A strongly-typed resource class, for looking up localized strings, etc.
|
||||
'''</summary>
|
||||
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0"), _
|
||||
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0"), _
|
||||
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
|
||||
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
|
||||
|
||||
Generated
+10
-8
@@ -1,7 +1,7 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
' Runtime Version:4.0.30319.34209
|
||||
' Runtime Version:4.0.30319.42000
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
@@ -12,11 +12,12 @@ Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Namespace My
|
||||
|
||||
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
|
||||
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "12.0.0.0"), _
|
||||
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
|
||||
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.14.0.0"), _
|
||||
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
|
||||
Partial Friend NotInheritable Class MySettings
|
||||
Partial Friend NotInheritable Class MySettings
|
||||
Inherits Global.System.Configuration.ApplicationSettingsBase
|
||||
|
||||
Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings)
|
||||
@@ -28,7 +29,7 @@ Partial Friend NotInheritable Class MySettings
|
||||
Private Shared addedHandlerLockObject As New Object
|
||||
|
||||
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
|
||||
Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
|
||||
Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs)
|
||||
If My.Application.SaveMySettingsOnExit Then
|
||||
My.Settings.Save()
|
||||
End If
|
||||
@@ -52,7 +53,8 @@ Partial Friend NotInheritable Class MySettings
|
||||
Return defaultInstance
|
||||
End Get
|
||||
End Property
|
||||
End Class
|
||||
End Class
|
||||
End Namespace
|
||||
|
||||
Namespace My
|
||||
|
||||
@@ -62,9 +64,9 @@ Namespace My
|
||||
Friend Module MySettingsProperty
|
||||
|
||||
<Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
|
||||
Friend ReadOnly Property Settings() As Global.EgtCAM5.MySettings
|
||||
Friend ReadOnly Property Settings() As Global.EgtCAM5.My.MySettings
|
||||
Get
|
||||
Return Global.EgtCAM5.MySettings.Default
|
||||
Return Global.EgtCAM5.My.MySettings.Default
|
||||
End Get
|
||||
End Property
|
||||
End Module
|
||||
|
||||
@@ -7,10 +7,8 @@
|
||||
<Expander.Header>
|
||||
<TextBlock Text="{Binding PropertiesMsg}"/>
|
||||
</Expander.Header>
|
||||
<UniformGrid>
|
||||
<TextBox Text="{Binding InfoBox, Mode=OneWay}" MaxHeight="100" IsReadOnly="True"
|
||||
<TextBox Text="{Binding InfoBox, Mode=OneWay}" IsReadOnly="True"
|
||||
HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto"/>
|
||||
</UniformGrid>
|
||||
</Expander>
|
||||
|
||||
</UserControl>
|
||||
|
||||
@@ -21,6 +21,7 @@ Public Class InfoExpanderVM
|
||||
Set(value As Boolean)
|
||||
If value <> m_IsExpanded Then
|
||||
m_IsExpanded = value
|
||||
Map.refDrawOptionPanelVM.SetInfoRowIsExpanded(m_IsExpanded)
|
||||
OnPropertyChanged("IsEnabled")
|
||||
End If
|
||||
End Set
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
<UserControl x:Class="InputExpanderV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtCAM5="clr-namespace:EgtCAM5"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
|
||||
|
||||
<Expander Header="{Binding Title}" IsExpanded="{Binding IsExpanded}" IsEnabled="{Binding IsEnabled}"
|
||||
Style="{StaticResource ExpanderStyle}">
|
||||
@@ -16,17 +18,33 @@
|
||||
</StackPanel.Style>
|
||||
<TextBlock Text="{Binding TextBlock}"
|
||||
Visibility="{Binding TextVisibility}" Margin="5,5,0,5"/>
|
||||
<TextBox Text="{Binding TextBox,UpdateSourceTrigger=PropertyChanged}"
|
||||
Visibility="{Binding TextVisibility}" Margin="5,0,5,5">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBox x:Name="Txt" Text="{Binding TextBox,UpdateSourceTrigger=PropertyChanged}"
|
||||
PreviewKeyDown="TextBox_PreviewKeyDown" IsVisibleChanged="Txt_IsVisibleChanged"
|
||||
Visibility="{Binding TextVisibility}" Height="Auto" Margin="5,0,5,5" >
|
||||
<TextBox.InputBindings>
|
||||
<KeyBinding Key="Enter" Command="{Binding DoneCommand}"/>
|
||||
<KeyBinding Key="S" Modifiers="Control" Command="{Binding ShowCommand}"/>
|
||||
</TextBox.InputBindings>
|
||||
</TextBox>
|
||||
<Button Grid.Column="1"
|
||||
Content="+"
|
||||
Command="{Binding ShowInfoItemCommand}"
|
||||
Visibility="{Binding ShowInfoItemVisibility}"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,-1,5,0"
|
||||
VerticalAlignment="Top"/>
|
||||
</Grid>
|
||||
<CheckBox Content="{Binding CheckBoxText}" IsChecked="{Binding IsChecked}"
|
||||
Visibility="{Binding CheckVisibility}" Margin="5,0,5,5"/>
|
||||
<ComboBox ItemsSource="{Binding ComboItemsList}" SelectedIndex="{Binding ComboSelectedIndex}"
|
||||
Visibility="{Binding ComboVisibility}" Margin="5,0,5,5"/>
|
||||
Visibility="{Binding ComboVisibility}" Margin="5,5,5,5"/>
|
||||
|
||||
<Grid Margin="5,0,5,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
|
||||
@@ -1,3 +1,17 @@
|
||||
Public Class InputExpanderV
|
||||
|
||||
Private Sub TextBox_PreviewKeyDown(sender As Object, e As KeyEventArgs)
|
||||
If (e.Key = Key.Enter And (Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift) Or
|
||||
(e.Key = Key.V And (Keyboard.Modifiers And ModifierKeys.Control) = ModifierKeys.Control) Then
|
||||
Txt.AcceptsReturn = True
|
||||
Txt.TextWrapping = TextWrapping.Wrap
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub Txt_IsVisibleChanged(sender As Object, e As DependencyPropertyChangedEventArgs)
|
||||
If Txt.IsVisible Then
|
||||
Txt.Focus()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
@@ -1,11 +1,18 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports EgtUILib
|
||||
Imports MS.Internal
|
||||
|
||||
Public Class InputExpanderVM
|
||||
Inherits ViewModelBase
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
' Variabile temporanea per salvare bShow
|
||||
Private m_bTempShow As Boolean
|
||||
|
||||
' Lista temporanea delle Info
|
||||
Private m_TempInfoList As New List(Of InfoItem)
|
||||
|
||||
' Expander fields
|
||||
Private m_IsExpanded As Boolean
|
||||
Public Property IsExpanded As Boolean
|
||||
@@ -146,9 +153,26 @@ Public Class InputExpanderVM
|
||||
Return m_ComboSelectedIndex
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
Map.refProjectVM.SetLastInteger(value)
|
||||
If m_bTempShow Then Map.refProjectVM.SetLastInteger(value)
|
||||
m_ComboSelectedIndex = value
|
||||
' se la combo è di Info ed è valida, la aggiungo alla textbox
|
||||
If m_ComboSelectedIndex >= 0 AndAlso m_TempInfoList.Count() > 0 Then
|
||||
Dim CurrItem As InfoItem = m_TempInfoList(m_ComboSelectedIndex)
|
||||
If String.IsNullOrEmpty(m_TextBox) Then
|
||||
m_TextBox = CurrItem.sKey & "=" & CurrItem.sValue
|
||||
Else
|
||||
If Not m_TextBox.EndsWith(vbCrLf) Then m_TextBox &= vbCrLf
|
||||
m_TextBox &= CurrItem.sKey & "=" & CurrItem.sValue
|
||||
End If
|
||||
ComboVisibility = Visibility.Collapsed
|
||||
ComboItemsList.RemoveAt(m_ComboSelectedIndex)
|
||||
m_TempInfoList.RemoveAt(m_ComboSelectedIndex)
|
||||
m_ComboSelectedIndex = -1
|
||||
If ComboItemsList.Count <= 0 Then ShowInfoItemVisibility = Visibility.Collapsed
|
||||
End If
|
||||
OnPropertyChanged("ComboSelectedIndex")
|
||||
OnPropertyChanged("ComboItemsList")
|
||||
OnPropertyChanged("TextBox")
|
||||
End Set
|
||||
End Property
|
||||
|
||||
@@ -177,9 +201,26 @@ Public Class InputExpanderVM
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_ShowInfoItemVisibility As Visibility
|
||||
''' <summary>
|
||||
''' Propietà visibilità bottone +
|
||||
''' </summary>
|
||||
Public Property ShowInfoItemVisibility As Visibility
|
||||
Get
|
||||
Return m_ShowInfoItemVisibility
|
||||
End Get
|
||||
Set(value As Visibility)
|
||||
If value <> m_ShowInfoItemVisibility Then
|
||||
m_ShowInfoItemVisibility = value
|
||||
OnPropertyChanged("ShowInfoItemVisibility")
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' Commands definition
|
||||
Private m_cmdShow As ICommand
|
||||
Private m_cmdDone As ICommand
|
||||
Private m_cmdShowInfoItem As ICommand
|
||||
|
||||
#Region "Messages"
|
||||
|
||||
@@ -203,6 +244,7 @@ Public Class InputExpanderVM
|
||||
Sub New()
|
||||
' Creo riferimento a questa classe in EgtCAM5Map
|
||||
Map.SetRefInputExpanderVM(Me)
|
||||
ComboSelectedIndex = -1
|
||||
End Sub
|
||||
|
||||
#End Region ' Constructor
|
||||
@@ -269,23 +311,69 @@ Public Class InputExpanderVM
|
||||
|
||||
#End Region ' DoneCommand
|
||||
|
||||
#Region "ShowInfoItemCommand"
|
||||
|
||||
''' <summary>
|
||||
''' Comando per la visualizzazione della combobox
|
||||
''' </summary>
|
||||
Public ReadOnly Property ShowInfoItemCommand As ICommand
|
||||
Get
|
||||
If m_cmdShowInfoItem Is Nothing Then
|
||||
m_cmdShowInfoItem = New Command(AddressOf ShowInfoItem)
|
||||
End If
|
||||
Return m_cmdShowInfoItem
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Funzione per la visualizzazione della combobox
|
||||
''' </summary>
|
||||
''' <param name="param"></param>
|
||||
Public Sub ShowInfoItem(ByVal param As Object)
|
||||
' Se presente info inserita in textbox
|
||||
If Not String.IsNullOrWhiteSpace( m_TextBox) Then
|
||||
Dim vLines As String() = m_TextBox.Split( vbCrLf.ToCharArray(), StringSplitOptions.RemoveEmptyEntries)
|
||||
For Each sLine As String In vLines
|
||||
Dim vKeyVal As String() = sLine.Split("="c)
|
||||
Dim nInd As Integer = m_TempInfoList.FindIndex( Function(x) x.sKey = vKeyVal(0))
|
||||
If nInd <> -1 Then
|
||||
ComboItemsList.RemoveAt( nInd)
|
||||
m_TempInfoList.RemoveAt( nInd)
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
ComboVisibility = Visibility.Visible
|
||||
End Sub
|
||||
|
||||
#End Region ' ShowInfoItemCommand
|
||||
|
||||
#End Region
|
||||
|
||||
#Region "METHODS"
|
||||
|
||||
Friend Sub PrepareInputBox(PrepareInputBoxParam As PrepareInputBoxParam)
|
||||
Title = PrepareInputBoxParam.sTitle
|
||||
' Divido il titolo che può contenere comandi dopo il ';'
|
||||
Dim vsSplitTitle As String() = PrepareInputBoxParam.sTitle.Split(";"c)
|
||||
Title = vsSplitTitle(0)
|
||||
If PrepareInputBoxParam.sLabel <> "" Then
|
||||
TextBlock = PrepareInputBoxParam.sLabel
|
||||
TextBox = ""
|
||||
TextVisibility = Visibility.Visible
|
||||
' Se presente il comando "Sic=1"
|
||||
If vsSplitTitle.Count() > 1 AndAlso vsSplitTitle(1) = "Sic=1" Then
|
||||
m_bTempShow = False
|
||||
ComboInfo()
|
||||
If ComboItemsList.Count > 0 Then ShowInfoItemVisibility = Visibility.Visible
|
||||
End If
|
||||
End If
|
||||
If PrepareInputBoxParam.sCheckLabel <> "" Then
|
||||
CheckBoxText = PrepareInputBoxParam.sCheckLabel
|
||||
CheckVisibility = Visibility.Visible
|
||||
End If
|
||||
If PrepareInputBoxParam.bShowCombo Then
|
||||
m_bTempShow = PrepareInputBoxParam.bShowCombo
|
||||
ComboItemsList.Clear()
|
||||
m_TempInfoList.Clear()
|
||||
ComboVisibility = Visibility.Visible
|
||||
End If
|
||||
If PrepareInputBoxParam.bShowBtn Then
|
||||
@@ -302,6 +390,7 @@ Public Class InputExpanderVM
|
||||
CheckVisibility = Visibility.Collapsed
|
||||
ComboVisibility = Visibility.Collapsed
|
||||
ShowBtnVisibility = Visibility.Collapsed
|
||||
ShowInfoItemVisibility = Visibility.Collapsed
|
||||
IsExpanded = False
|
||||
IsEnabled = False
|
||||
End Sub
|
||||
@@ -329,12 +418,33 @@ Public Class InputExpanderVM
|
||||
|
||||
Private Function AddInputBoxCombo(ByVal sText As String, ByVal bSelected As Boolean) As Boolean
|
||||
ComboItemsList.Add(sText)
|
||||
|
||||
If bSelected Then
|
||||
ComboSelectedIndex = ComboItemsList.Count - 1
|
||||
End If
|
||||
Return True
|
||||
End Function
|
||||
|
||||
''' <summary>
|
||||
''' Funzione che popola la lista ComboItemsList
|
||||
''' </summary>
|
||||
Private Sub ComboInfo()
|
||||
|
||||
m_TempInfoList.Clear()
|
||||
ComboItemsList.Clear()
|
||||
|
||||
Dim vsInfo As String() = Nothing
|
||||
EgtGetAllInfo( Map.refManageLayerExpanderVM.RightClickedTreeItemId, vsInfo)
|
||||
|
||||
If Not m_bTempShow And Not IsNothing( vsInfo) Then
|
||||
For nInd As Integer = 0 To vsInfo.Count() - 1
|
||||
Dim vKeyVal As String() = vsInfo( nInd).Split("="c)
|
||||
m_TempInfoList.Add(New InfoItem( nInd, vKeyVal(0), vKeyVal(1)))
|
||||
ComboItemsList.Add( vsInfo( nInd))
|
||||
Next
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' Methods
|
||||
|
||||
End Class
|
||||
|
||||
@@ -19,11 +19,12 @@ Public Class LayerTreeViewItem
|
||||
''' </summary>
|
||||
Public Overrides Property IsSelected As Boolean
|
||||
Get
|
||||
Return m_IsSelected
|
||||
Return m_isSelected
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
If (value <> m_IsSelected) Then
|
||||
m_IsSelected = value
|
||||
If (value <> m_isSelected) Then
|
||||
m_isSelected = value
|
||||
Map.refDrawOptionPanelVM.SetInfoRowIsExpanded(value)
|
||||
If value Then
|
||||
' recupero l'Id del nuovo oggetto selezionato
|
||||
Map.refManageLayerExpanderVM.IsRightClickedLayerTreeItem(False)
|
||||
@@ -69,17 +70,17 @@ Public Class LayerTreeViewItem
|
||||
Return m_bOnOff
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
If Map.refProjectVM.GetController().GetStep() <> 0 Then Return
|
||||
'If Map.refProjectVM.GetController().GetStep() <> 0 Then Return
|
||||
If m_bOnOff <> value Then
|
||||
m_bOnOff = value
|
||||
' se abilitato, eseguo operazione
|
||||
If m_SendCmd Then
|
||||
Map.refProjectVM.SetLastInteger(Id)
|
||||
If value Then
|
||||
Map.refProjectVM.ExecuteCommand(Controller.CMD.SHOW)
|
||||
EgtSetStatus(Id, GDB_ST.ON_)
|
||||
Else
|
||||
Map.refProjectVM.ExecuteCommand(Controller.CMD.HIDE)
|
||||
EgtSetStatus(Id, GDB_ST.OFF)
|
||||
End If
|
||||
EgtDraw()
|
||||
End If
|
||||
Dim bOnOffGroup As Boolean = ((Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift) AndAlso Items.Count > 0
|
||||
If bOnOffGroup Then
|
||||
@@ -93,7 +94,7 @@ Public Class LayerTreeViewItem
|
||||
EgtGetStatus(Node.Id, nStat)
|
||||
If value AndAlso nStat <> GDB_ST.ON_ Then
|
||||
EgtSetStatus(Node.Id, GDB_ST.ON_)
|
||||
ElseIf nStat <> GDB_ST.OFF Then
|
||||
ElseIf Not value AndAlso nStat <> GDB_ST.OFF Then
|
||||
EgtSetStatus(Node.Id, GDB_ST.OFF)
|
||||
End If
|
||||
End If
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
xmlns:expression="clr-namespace:Microsoft.Expression.Interactivity.Core;assembly=Microsoft.Expression.Interactions"
|
||||
xmlns:local="clr-namespace:EgtCAM5">
|
||||
|
||||
<Expander IsExpanded="True" Style="{StaticResource ExpanderStyle}">
|
||||
<Expander IsExpanded="{Binding ManageLayerIsExpanded}" Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding HeaderName}" Margin="0,0,5,0"/>
|
||||
@@ -13,7 +13,11 @@
|
||||
</StackPanel>
|
||||
</Expander.Header>
|
||||
|
||||
<StackPanel>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<UniformGrid Rows="1">
|
||||
<Button Content="{Binding NewPartMsg}" Command="{Binding NewPartCommand}" Height="30"/>
|
||||
@@ -21,7 +25,7 @@
|
||||
<Button Content="{Binding ColorMsg}" Command="{Binding LayerColorCommand}" Height="30"/>
|
||||
</UniformGrid>
|
||||
|
||||
<TreeView Name="LayerTreeView" MinHeight="150" MaxHeight="250"
|
||||
<TreeView Grid.Row="1" x:Name="LayerTreeView"
|
||||
ItemsSource="{Binding Path=LayerList}"
|
||||
VirtualizingStackPanel.IsVirtualizing = "True"
|
||||
VirtualizingStackPanel.VirtualizationMode = "Recycling">
|
||||
@@ -51,7 +55,7 @@
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<ToggleButton Style="{StaticResource EgtCAM5_LampToggleButton}" Grid.Column="0"
|
||||
IsChecked="{Binding OnOff}" Visibility="{Binding IsHidden}" Focusable="False" Height="15" Width="15" Margin="0,0,5,0"/>
|
||||
IsChecked="{Binding OnOff}" Visibility="{Binding IsHidden}" Focusable="True" Height="15" Width="15" Margin="0,0,5,0"/>
|
||||
<Image Grid.Column="1" Source="{Binding PictureString}" Height="15" Margin="0,0,5,0"/>
|
||||
<TextBlock Grid.Column="2" Text="{Binding Name}" Margin="0,0,5,0"/>
|
||||
<Ellipse Grid.Column="3" Height="10" Width="10" Fill="{Binding LayerColor}" />
|
||||
@@ -116,6 +120,6 @@
|
||||
</ContextMenu>
|
||||
</TreeView.ContextMenu>
|
||||
</TreeView>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Expander>
|
||||
</UserControl>
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports EgtUILib
|
||||
Imports EgtCAM5.IniFile
|
||||
|
||||
Public Class ManageLayerExpanderVM
|
||||
Inherits ViewModelBase
|
||||
@@ -30,22 +29,6 @@ Public Class ManageLayerExpanderVM
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdNewPart As ICommand
|
||||
Private m_cmdNewLayer As ICommand
|
||||
Private m_cmdLayerColor As ICommand
|
||||
Private m_cmdTreeViewDoubleClick As ICommand
|
||||
Private m_cmdTreeViewMouseUp As ICommand
|
||||
Private m_cmdTreeViewMouseRightButton As ICommand
|
||||
Private m_cmdSelect As ICommand
|
||||
Private m_cmdDeselect As ICommand
|
||||
Private m_cmdName As ICommand
|
||||
Private m_cmdInfo As ICommand
|
||||
Private m_cmdRelocate As ICommand
|
||||
Private m_cmdCopy As ICommand
|
||||
Private m_cmdDelete As ICommand
|
||||
Private m_cmdSave As ICommand
|
||||
|
||||
' Lista dei layer
|
||||
Private m_LayerList As New ObservableCollection(Of LayerTreeViewItem)
|
||||
Public Property LayerList As ObservableCollection(Of LayerTreeViewItem)
|
||||
@@ -54,6 +37,7 @@ Public Class ManageLayerExpanderVM
|
||||
End Get
|
||||
Set(value As ObservableCollection(Of LayerTreeViewItem))
|
||||
m_LayerList = value
|
||||
OnPropertyChanged("LayerList")
|
||||
End Set
|
||||
End Property
|
||||
|
||||
@@ -71,6 +55,22 @@ Public Class ManageLayerExpanderVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_ManageLayerIsExpanded As Boolean
|
||||
Public Property ManageLayerIsExpanded As Boolean
|
||||
Get
|
||||
Return m_ManageLayerIsExpanded
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_ManageLayerIsExpanded = value
|
||||
Map.refDrawOptionPanelVM.SetManageLayerRowIsExpanded(m_ManageLayerIsExpanded)
|
||||
OnPropertyChanged("ManageLayerIsExpanded")
|
||||
End Set
|
||||
End Property
|
||||
Friend Sub SetManageLayerIsExpanded(value As Boolean)
|
||||
m_ManageLayerIsExpanded = value
|
||||
OnPropertyChanged("ManageLayerIsExpanded")
|
||||
End Sub
|
||||
|
||||
#Region "Messages"
|
||||
|
||||
Public ReadOnly Property NewPartMsg As String
|
||||
@@ -131,6 +131,22 @@ Public Class ManageLayerExpanderVM
|
||||
|
||||
#End Region
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdNewPart As ICommand
|
||||
Private m_cmdNewLayer As ICommand
|
||||
Private m_cmdLayerColor As ICommand
|
||||
Private m_cmdTreeViewDoubleClick As ICommand
|
||||
Private m_cmdTreeViewMouseUp As ICommand
|
||||
Private m_cmdTreeViewMouseRightButton As ICommand
|
||||
Private m_cmdSelect As ICommand
|
||||
Private m_cmdDeselect As ICommand
|
||||
Private m_cmdName As ICommand
|
||||
Private m_cmdInfo As ICommand
|
||||
Private m_cmdRelocate As ICommand
|
||||
Private m_cmdCopy As ICommand
|
||||
Private m_cmdDelete As ICommand
|
||||
Private m_cmdSave As ICommand
|
||||
|
||||
#End Region
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
@@ -140,6 +156,7 @@ Public Class ManageLayerExpanderVM
|
||||
Map.SetRefManageLayerExpanderVM(Me)
|
||||
'Imposto tempo di evidenziazione delle entità clickate
|
||||
ObjTreeTimer.Interval = TimeSpan.FromMilliseconds(1000)
|
||||
SetManageLayerIsExpanded(True)
|
||||
End Sub
|
||||
|
||||
#End Region ' Constructor
|
||||
@@ -166,7 +183,7 @@ Public Class ManageLayerExpanderVM
|
||||
Public Sub NewPart(ByVal param As Object)
|
||||
Map.refProjectVM.ExecuteCommand(Controller.CMD.NEWPART)
|
||||
' Seleziono nell'albero il layer del pezzo appena creato
|
||||
SelectIdInObjTree(EgtGetCurrLayer(), False)
|
||||
SelectIdInObjTreeNoMark(EgtGetCurrLayer())
|
||||
End Sub
|
||||
|
||||
#End Region ' NewPartCommand
|
||||
@@ -191,7 +208,7 @@ Public Class ManageLayerExpanderVM
|
||||
Public Sub NewLayer(ByVal param As Object)
|
||||
Map.refProjectVM.ExecuteCommand(Controller.CMD.NEWLAYER)
|
||||
' Seleziono nell'albero il layer appena creato
|
||||
SelectIdInObjTree(EgtGetCurrLayer(), False)
|
||||
SelectIdInObjTreeNoMark(EgtGetCurrLayer())
|
||||
End Sub
|
||||
|
||||
#End Region ' NewLayerCommand
|
||||
@@ -241,6 +258,7 @@ Public Class ManageLayerExpanderVM
|
||||
If m_nObjTreeOldId <> GDB_ID.NULL Then
|
||||
Map.refProjectVM.SetLastInteger(m_nObjTreeOldId)
|
||||
Map.refProjectVM.ExecuteCommand(Controller.CMD.SETCURRPARTLAYER)
|
||||
Map.refDrawOptionPanelVM.SetInfoRowIsExpanded(True)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
@@ -492,7 +510,7 @@ Public Class ManageLayerExpanderVM
|
||||
Map.refProjectVM.SetLastInteger(RightClickedTreeItemId)
|
||||
Map.refProjectVM.ExecuteCommand(Controller.CMD.DELETE)
|
||||
' Seleziono prossimo
|
||||
SelectIdInObjTree(nNewId, False)
|
||||
SelectIdInObjTreeNoMark(nNewId)
|
||||
End Sub
|
||||
|
||||
#End Region ' DeleteCommand
|
||||
@@ -528,16 +546,18 @@ Public Class ManageLayerExpanderVM
|
||||
#Region "METHODS"
|
||||
|
||||
Private WithEvents ObjTreeTimer As New System.Windows.Threading.DispatcherTimer
|
||||
Private m_nObjTreeOldId As Integer = GDB_ID.NULL
|
||||
Friend m_nObjTreeOldId As Integer = GDB_ID.NULL
|
||||
Private m_nObjTreeMenuId As Integer = GDB_ID.NULL
|
||||
Private m_bEnableUpdateObjInObjTree As Boolean = True
|
||||
|
||||
Friend Sub SelectIdInObjTreeNoMark(nId As Integer)
|
||||
SelectIdInObjTree(nId, False)
|
||||
LayerTreeViewItem.m_MarkOnSel = False
|
||||
MySelectIdInObjTree(nId)
|
||||
LayerTreeViewItem.m_MarkOnSel = True
|
||||
End Sub
|
||||
|
||||
Friend Sub SelectIdInObjTree(nId As Integer)
|
||||
SelectIdInObjTree(nId, True)
|
||||
MySelectIdInObjTree(nId)
|
||||
End Sub
|
||||
|
||||
Friend Sub UpdateObjTreeOldId(ObjTreeOldId As Integer)
|
||||
@@ -581,7 +601,7 @@ Public Class ManageLayerExpanderVM
|
||||
AddGroupInObjTree(GDB_ID.ROOT, GDB_LV.USER, GDB_MD.STD, 0, LayerList)
|
||||
If nOldId <> GDB_ID.NULL Then
|
||||
m_bEnableUpdateObjInObjTree = False
|
||||
If Not SelectIdInObjTree(nOldId, True) Then
|
||||
If Not MySelectIdInObjTree(nOldId) Then
|
||||
Map.refInfoExpanderVM.SetInfoBox(String.Empty)
|
||||
End If
|
||||
m_bEnableUpdateObjInObjTree = True
|
||||
@@ -803,14 +823,11 @@ Public Class ManageLayerExpanderVM
|
||||
Return nOldId
|
||||
End Function
|
||||
|
||||
Private Function SelectIdInObjTree(nId As Integer, bMark As Boolean) As Boolean
|
||||
Private Function MySelectIdInObjTree(nId As Integer) As Boolean
|
||||
Dim tNode As LayerTreeViewItem = SearchIdInLayerList(LayerList, nId, True)
|
||||
If Not IsNothing(tNode) Then
|
||||
If Not bMark Then LayerTreeViewItem.m_MarkOnSel = False
|
||||
tNode.IsSelected = True
|
||||
tNode.NotifyPropertyChanged("IsSelected")
|
||||
If Not bMark Then LayerTreeViewItem.m_MarkOnSel = True
|
||||
tNode.IsExpanded = True
|
||||
m_nObjTreeOldId = nId
|
||||
Return True
|
||||
Else
|
||||
|
||||
@@ -1,16 +1,29 @@
|
||||
<UserControl x:Class="DrawOptionPanelV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="250"
|
||||
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"
|
||||
xmlns:interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity">
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtCAM5="clr-namespace:EgtCAM5"
|
||||
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5">
|
||||
|
||||
<StackPanel Name="ciao" Background="Transparent" MaxHeight="{Binding MaxHeight,RelativeSource={RelativeSource AncestorType={x:Type EgtFloating:EgtFloatingPanel}}}">
|
||||
<Grid x:Name="DrawGrid" Background="Transparent" MaxHeight="{Binding MaxHeight,RelativeSource={RelativeSource AncestorType={x:Type EgtFloating:EgtFloatingPanel}}}">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition MinHeight="100" MaxHeight="800"
|
||||
EgtCAM5:DrawOptionPanelVM.RowId="ManageLayer"
|
||||
EgtCAM5:DrawOptionPanelVM.IsExpanded="{Binding ManageLayerRowIsExpanded}"
|
||||
EgtCAM5:DrawOptionPanelVM.TargetSplitter="{Binding ElementName=ManagerLayerGridSplitter}"/>
|
||||
<RowDefinition MinHeight="100" MaxHeight="400"
|
||||
EgtCAM5:DrawOptionPanelVM.RowId="Info"
|
||||
EgtCAM5:DrawOptionPanelVM.IsExpanded="{Binding InfoRowIsExpanded}"
|
||||
EgtCAM5:DrawOptionPanelVM.TargetSplitter="{Binding ElementName=InfoGridSplitter}"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<!--ContentPresenter that contains the ManageLayerExpander-->
|
||||
<ContentPresenter Content="{Binding ManageLayerExpander,Mode=OneWay}"/>
|
||||
<GridSplitter x:Name="ManagerLayerGridSplitter" Style="{StaticResource General_GridSplitter}"/>
|
||||
<!--ContentPresenter that contains the InfoExpander-->
|
||||
<ContentPresenter Content="{Binding InfoExpander}"/>
|
||||
<ContentPresenter Grid.Row="1" Content="{Binding InfoExpander}"/>
|
||||
<GridSplitter x:Name="InfoGridSplitter" Grid.Row="1" Style="{StaticResource General_GridSplitter}"/>
|
||||
<!--ContentPresenter that contains the InputExpander-->
|
||||
<ContentPresenter Content="{Binding InputExpander}"/>
|
||||
</StackPanel>
|
||||
<ContentPresenter Grid.Row="2" Content="{Binding InputExpander}"/>
|
||||
</Grid>
|
||||
|
||||
</UserControl>
|
||||
@@ -1,7 +1,30 @@
|
||||
Public Class DrawOptionPanelV
|
||||
|
||||
Private Sub Me_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
Dim x = ciao.MaxHeight
|
||||
Sub New()
|
||||
|
||||
' This call is required by the designer.
|
||||
InitializeComponent()
|
||||
|
||||
' Add any initialization after the InitializeComponent() call.
|
||||
Map.SetRefDrawOptionPanelV(Me)
|
||||
If Not IsActivePlugin() Then
|
||||
AddHandler DrawGrid.Loaded,
|
||||
Sub()
|
||||
DynamicGridModule.RestoreDrawGridLayout(DrawGrid, "ManageLayer", 0, If(IniFile.IsActivePlugin(), DynamicGridModule.PROJECT_DRAW_PLUGIN, DynamicGridModule.PROJECT_DRAW))
|
||||
DynamicGridModule.RestoreDrawGridLayout(DrawGrid, "Info", 1, If(IniFile.IsActivePlugin(), DynamicGridModule.PROJECT_DRAW_PLUGIN, DynamicGridModule.PROJECT_DRAW))
|
||||
DrawGrid.UpdateLayout()
|
||||
End Sub
|
||||
|
||||
AddHandler ManagerLayerGridSplitter.DragCompleted,
|
||||
Sub()
|
||||
DynamicGridModule.SaveDrawGridLayout(DrawGrid, "ManageLayer", If(IniFile.IsActivePlugin(), DynamicGridModule.PROJECT_DRAW_PLUGIN, DynamicGridModule.PROJECT_DRAW))
|
||||
End Sub
|
||||
|
||||
AddHandler InfoGridSplitter.DragCompleted,
|
||||
Sub()
|
||||
DynamicGridModule.SaveDrawGridLayout(DrawGrid, "Info", If(IniFile.IsActivePlugin(), DynamicGridModule.PROJECT_DRAW_PLUGIN, DynamicGridModule.PROJECT_DRAW))
|
||||
End Sub
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
Imports EgtUILib
|
||||
Imports System.IO
|
||||
|
||||
Public Class DrawOptionPanelVM
|
||||
Inherits ViewModelBase
|
||||
@@ -37,6 +37,28 @@ Public Class DrawOptionPanelVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_ManageLayerRowIsExpanded As Boolean = True
|
||||
Public ReadOnly Property ManageLayerRowIsExpanded As Boolean
|
||||
Get
|
||||
Return m_ManageLayerRowIsExpanded
|
||||
End Get
|
||||
End Property
|
||||
Friend Sub SetManageLayerRowIsExpanded(value As Boolean)
|
||||
m_ManageLayerRowIsExpanded = value
|
||||
OnPropertyChanged("ManageLayerRowIsExpanded")
|
||||
End Sub
|
||||
|
||||
Private m_InfoRowIsExpanded As Boolean = True
|
||||
Public ReadOnly Property InfoRowIsExpanded As Boolean
|
||||
Get
|
||||
Return m_InfoRowIsExpanded
|
||||
End Get
|
||||
End Property
|
||||
Friend Sub SetInfoRowIsExpanded(value As Boolean)
|
||||
m_InfoRowIsExpanded = value
|
||||
OnPropertyChanged("InfoRowIsExpanded")
|
||||
End Sub
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
Sub New()
|
||||
@@ -60,4 +82,93 @@ Public Class DrawOptionPanelVM
|
||||
|
||||
#End Region ' METHODS
|
||||
|
||||
#Region "DEPENCY PROPERTY"
|
||||
|
||||
Public Shared ReadOnly RowIdProperty As DependencyProperty =
|
||||
DependencyProperty.RegisterAttached(
|
||||
"RowId",
|
||||
GetType(String),
|
||||
GetType(DrawOptionPanelVM),
|
||||
New PropertyMetadata(Nothing)
|
||||
)
|
||||
|
||||
Public Shared Sub SetRowId(element As DependencyObject, value As String)
|
||||
element.SetValue(RowIdProperty, value)
|
||||
End Sub
|
||||
|
||||
Public Shared Function GetRowId(element As DependencyObject) As String
|
||||
Return CType(element.GetValue(RowIdProperty), String)
|
||||
End Function
|
||||
|
||||
Public Shared ReadOnly IsExpandedProperty As DependencyProperty =
|
||||
DependencyProperty.RegisterAttached(
|
||||
"IsExpanded",
|
||||
GetType(Boolean),
|
||||
GetType(DrawOptionPanelVM),
|
||||
New PropertyMetadata(True, AddressOf OnIsExpandedChanged)
|
||||
)
|
||||
|
||||
Public Shared Sub SetIsExpanded(element As DependencyObject, value As Boolean)
|
||||
element.SetValue(IsExpandedProperty, value)
|
||||
End Sub
|
||||
|
||||
Public Shared Function GetIsExpanded(element As DependencyObject) As Boolean
|
||||
Return CType(element.GetValue(IsExpandedProperty), Boolean)
|
||||
End Function
|
||||
|
||||
Public Shared Function GetTargetSplitter(d As DependencyObject) As GridSplitter
|
||||
Return CType(d.GetValue(TargetSplitterProperty), GridSplitter)
|
||||
End Function
|
||||
|
||||
Public Shared Sub SetTargetSplitter(d As DependencyObject, value As GridSplitter)
|
||||
d.SetValue(TargetSplitterProperty, value)
|
||||
End Sub
|
||||
|
||||
Public Shared ReadOnly TargetSplitterProperty As DependencyProperty =
|
||||
DependencyProperty.RegisterAttached(
|
||||
"TargetSplitter",
|
||||
GetType(GridSplitter),
|
||||
GetType(DrawOptionPanelVM),
|
||||
New PropertyMetadata(Nothing)
|
||||
)
|
||||
|
||||
Private Shared Sub OnIsExpandedChanged(d As DependencyObject, e As DependencyPropertyChangedEventArgs)
|
||||
Dim row As RowDefinition = TryCast(d, RowDefinition)
|
||||
If IsNothing(row) Then Return
|
||||
|
||||
Dim isExpanded As Boolean = CBool(e.NewValue)
|
||||
|
||||
Dim splitter = DrawOptionPanelVM.GetTargetSplitter(row)
|
||||
If splitter IsNot Nothing Then
|
||||
splitter.IsEnabled = isExpanded
|
||||
splitter.Visibility = If(isExpanded, Visibility.Visible, Visibility.Collapsed)
|
||||
End If
|
||||
|
||||
Dim rowId As String = GetRowId(row)
|
||||
Dim rowHeight As Double = 0
|
||||
|
||||
If rowId = "ManageLayer" Then
|
||||
rowHeight = 400
|
||||
ElseIf rowId = "Info" Then
|
||||
rowHeight = 150
|
||||
End If
|
||||
|
||||
If Not isExpanded Then
|
||||
row.ClearValue(RowDefinition.HeightProperty)
|
||||
|
||||
row.Height = New GridLength(1, GridUnitType.Auto)
|
||||
row.MinHeight = 0
|
||||
Else
|
||||
If File.Exists(Map.refMainWindowVM.DimensionDir) Then
|
||||
DynamicGridModule.RestoreDrawGridLayout(Map.refDrawOptionPanelV.DrawGrid, "ManageLayer", 0, If(IniFile.IsActivePlugin(), DynamicGridModule.PROJECT_DRAW_PLUGIN, DynamicGridModule.PROJECT_DRAW))
|
||||
DynamicGridModule.RestoreDrawGridLayout(Map.refDrawOptionPanelV.DrawGrid, "Info", 1, If(IniFile.IsActivePlugin(), DynamicGridModule.PROJECT_DRAW_PLUGIN, DynamicGridModule.PROJECT_DRAW))
|
||||
Map.refDrawOptionPanelV.DrawGrid.UpdateLayout()
|
||||
Else
|
||||
row.Height = New GridLength(rowHeight)
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' Depency Property
|
||||
|
||||
End Class
|
||||
@@ -18,6 +18,7 @@ Public Class EstimationsExpanderVM
|
||||
Set(value As Boolean)
|
||||
If value <> m_Estimation_IsExpanded Then
|
||||
Map.refMachiningOptionPanelVM.Set_IsExpanded(MachiningOptionPanelVM.MachiningOptionPanelExpander.ESTIMATIONS, value)
|
||||
Map.refMachiningOptionPanelVM.SetOperationsListRowIsExpanded(False)
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
@@ -138,7 +139,7 @@ Public Class EstimationsExpanderVM
|
||||
If Not String.IsNullOrEmpty(sCurrFilePath) Then
|
||||
sInfo = "EgtCAM5 - " & sCurrFilePath
|
||||
If EgtGetInfo(EgtGetCurrMachGroup(), KEY_MCHGRP_NCNAME, sEstFile) AndAlso Not String.IsNullOrWhiteSpace(sEstFile) Then
|
||||
sEstFile = Path.ChangeExtension(Path.GetDirectoryName(sCurrFilePath) & "\" & sEstFile, ".html")
|
||||
sEstFile = Path.ChangeExtension(Path.GetDirectoryName(sCurrFilePath) & "\" & Path.GetFileName( sEstFile), ".html")
|
||||
Else
|
||||
sEstFile = Path.ChangeExtension(sCurrFilePath, Nothing)
|
||||
If IniFile.m_bMachiningGroup Then
|
||||
@@ -177,12 +178,17 @@ Public Class EstimationsExpanderVM
|
||||
If Not bOk Then Return False
|
||||
' Calcolo della stima
|
||||
If Not EgtEstimate(sEstFile, sInfo) Then
|
||||
If EgtGetLastMachMgrErrorId() <> 0 Then
|
||||
Dim nErr As Integer = EgtGetLastMachMgrErrorId()
|
||||
If nErr = 1000 Then
|
||||
MessageBox.Show(EgtMsg(5333), EgtMsg(5320), MessageBoxButton.OK, MessageBoxImage.Information)
|
||||
ElseIf nErr = 1001 Then
|
||||
MessageBox.Show(EgtMsg(5334), EgtMsg(5320), MessageBoxButton.OK, MessageBoxImage.Information)
|
||||
ElseIf nErr <> 0 Then
|
||||
Dim sErr As String = EgtGetLastMachMgrErrorString()
|
||||
sErr = sErr.Replace("Cnc", "Est")
|
||||
MessageBox.Show(sErr, EgtMsg(MSG_SIMULATION + 5), MessageBoxButton.OK, MessageBoxImage.Exclamation)
|
||||
MessageBox.Show(sErr, EgtMsg(5305), MessageBoxButton.OK, MessageBoxImage.Exclamation)
|
||||
Else
|
||||
MessageBox.Show(EgtMsg(MSG_SIMULATION + 17), EgtMsg(MSG_SIMULATION + 5), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
MessageBox.Show(EgtMsg(5317), EgtMsg(5305), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
End If
|
||||
bOk = False
|
||||
End If
|
||||
|
||||
+14
-18
@@ -94,26 +94,18 @@ Public Class MachiningTreeExpanderVM
|
||||
' Sposto la lavorazione aggiunta subito dopo quella appena selezionata
|
||||
EgtRelocate(MachiningId, nSelectedOperationId, GDB_POS.AFTER)
|
||||
End If
|
||||
' Recupero geometria correntemente selezionata e la metto in un vettore
|
||||
Dim SelectedEntities As New List(Of Integer)
|
||||
Dim EntityId As Integer = EgtGetFirstSelectedObj()
|
||||
While EntityId <> GDB_ID.NULL
|
||||
SelectedEntities.Add(EntityId)
|
||||
EntityId = EgtGetNextSelectedObj()
|
||||
' Imposto geometria da lavorare (tutta quella selezionata)
|
||||
Dim vId(EgtGetSelectedObjCount() - 1) As Integer
|
||||
Dim vSub(EgtGetSelectedObjCount() - 1) As Integer
|
||||
Dim nInd As Integer = 0
|
||||
Dim EntId As Integer = EgtGetFirstSelectedObj()
|
||||
While EntId <> GDB_ID.NULL
|
||||
vId(nInd) = EntId
|
||||
SelData.GetSubFromId( EntId, vSub(nInd))
|
||||
nInd += 1
|
||||
EntId = EgtGetNextSelectedObj()
|
||||
End While
|
||||
' Imposto l'operazione appena creata come corrente
|
||||
EgtSetCurrMachining(MachiningId)
|
||||
' Gestione speciale per superfici ( si aggiunge l'identificazione della faccia)
|
||||
If SelectedEntities.Count() > 0 AndAlso EgtGetType(SelectedEntities(0)) = GDB_TY.SRF_MESH Then
|
||||
Dim vId() As Integer = Nothing
|
||||
Dim vSub() As Integer = Nothing
|
||||
SelData.GetAllIdSub(vId, vSub)
|
||||
EgtSetMachiningGeometry(vId, vSub)
|
||||
' Gestione standard per altre entità (curve, regioni, ...)
|
||||
Else
|
||||
' Imposto il vettore come geometria di lavorazione
|
||||
EgtSetMachiningGeometry(SelectedEntities.ToArray)
|
||||
End If
|
||||
' Calcolo la lavorazione con la nuova geometria
|
||||
EgtApplyMachining(True)
|
||||
EgtDraw()
|
||||
@@ -150,6 +142,10 @@ Public Class MachiningTreeExpanderVM
|
||||
Return EgtMsg(MSG_MACHININGSDBPAGE + 11)
|
||||
Case MCH_MY.WATERJETTING
|
||||
Return EgtMsg(MSG_MACHININGSDBPAGE + 12)
|
||||
Case MCH_MY.FIVEAXISMILLING
|
||||
Return EgtMsg(31213)
|
||||
Case MCH_MY.PROBING
|
||||
Return EgtMsg(31220)
|
||||
Case Else
|
||||
Return "Mach"
|
||||
End Select
|
||||
|
||||
+59
-5
@@ -1,4 +1,6 @@
|
||||
Imports EgtUILib
|
||||
Imports System.ComponentModel
|
||||
Imports System.Globalization
|
||||
Imports EgtUILib
|
||||
|
||||
Public Class DispositionParameterExpanderVM
|
||||
Inherits ViewModelBase
|
||||
@@ -273,7 +275,7 @@ Public Class DispositionParameterExpanderVM
|
||||
End If
|
||||
Select Case m_ActiveObject
|
||||
Case ObjectType.RAWPART
|
||||
' Abilito la selezione delle Fixture
|
||||
' Abilito la selezione dei Grezzi
|
||||
Map.refProjectVM.SceneSelType = SceneSelTypeOpt.RAWPART
|
||||
Case ObjectType.FIXTURE
|
||||
' Abilito la selezione delle Fixture
|
||||
@@ -281,6 +283,7 @@ Public Class DispositionParameterExpanderVM
|
||||
End Select
|
||||
Map.refRawPartOptionVM.SetMoveWithFixture(False)
|
||||
Map.refFixtureParametersVM.UpdateFixtureTypeList()
|
||||
DispositionUtility.InitHookData()
|
||||
End Sub
|
||||
|
||||
#End Region ' METHODS
|
||||
@@ -310,12 +313,16 @@ Public Class DispositionParameterExpanderVM
|
||||
' se movimento di traslazione
|
||||
If m_MoveIsChecked Then
|
||||
Dim InputPoint As New Point3d(0, 0, 0)
|
||||
Dim dSupp As Double = -1
|
||||
Dim Values() As String = m_InputValue.Split(","c)
|
||||
If Values.Count = 2 Then
|
||||
If Values.Count >= 2 Then
|
||||
StringToLen(Values(0), InputPoint.x)
|
||||
StringToLen(Values(1), InputPoint.y)
|
||||
If Values.Count >= 3 Then
|
||||
StringToLen(Values(2), dSupp)
|
||||
End If
|
||||
Else
|
||||
m_InputErrorMsg = "Il valore non è una cordinata XY"
|
||||
m_InputErrorMsg = "Il valore non è un punto X,Y"
|
||||
OnPropertyChanged("InputErrorMsg")
|
||||
Return
|
||||
End If
|
||||
@@ -328,13 +335,44 @@ Public Class DispositionParameterExpanderVM
|
||||
' imposto il riferimento della tavola
|
||||
Dim ptTableRef As Point3d
|
||||
EgtGetTableRef(1, ptTableRef)
|
||||
' calcolo il punto del grezzo da posizionar nelle coordinate di input
|
||||
' calcolo il punto del grezzo da posizionare nelle coordinate di input
|
||||
Dim ptRawRefPoint As Point3d = DispositionUtility.GetRawPartRefPoint(nFirstSelectedId, m_RawRefPosition)
|
||||
' creo un punto con le coordinate di input espresse rispetto alla tavola
|
||||
Dim TableRefInputPoint As New Point3d(InputPoint)
|
||||
TableRefInputPoint.LocToLoc(EgtGetGridFrame(), New Frame3d(ptTableRef))
|
||||
' calcolo il vettore di spostamento del grezzo
|
||||
vtMove = TableRefInputPoint - ptRawRefPoint
|
||||
vtMove.z = 0
|
||||
' verifico ed aggiusto eventuale supporto
|
||||
Dim dOldSupp As Double = 0
|
||||
Dim nOldSuppId As Integer = EgtGetFirstNameInGroup(nFirstSelectedId, SUPPORT)
|
||||
If nOldSuppId <> GDB_ID.NULL Then
|
||||
Dim bboxSupport As New BBox3d
|
||||
EgtGetBBoxGlob(nOldSuppId, GDB_BB.STANDARD, bboxSupport)
|
||||
dOldSupp = bboxSupport.DimZ()
|
||||
End If
|
||||
If dSupp > -EPS_SMALL AndAlso Math.Abs( dSupp - dOldSupp) > EPS_SMALL Then
|
||||
' da cancellare
|
||||
If dSupp < EPS_SMALL Then
|
||||
EgtErase( nOldSuppId)
|
||||
vtMove.z = dSupp - dOldSupp
|
||||
' da creare o modificare
|
||||
Else
|
||||
EgtErase( nOldSuppId)
|
||||
Dim nNewSuppId As Integer = GDB_ID.NULL
|
||||
Dim nRawOutLnId As Integer = EgtGetFirstNameInGroup(nFirstSelectedId, RAWOUTLINE)
|
||||
If nRawOutLnId <> GDB_ID.NULL Then
|
||||
Dim vtExtr As New Vector3d( 0, 0, -dSupp)
|
||||
nNewSuppId = EgtCreateSurfTmByRegionExtrusion( nFirstSelectedId, 1, {nRawOutLnId}, vtExtr, 0.05, GDB_RT.GLOB)
|
||||
End If
|
||||
If nNewSuppId <> GDB_ID.NULL Then
|
||||
EgtSetName( nNewSuppId, SUPPORT)
|
||||
EgtSetColor( nNewSuppId, New Color3d(150, 75, 0))
|
||||
If nOldSuppId <> GDB_ID.NULL Then EgtChangeId( nNewSuppId, nOldSuppId)
|
||||
vtMove.z = dSupp - dOldSupp
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
' se è una ventosa
|
||||
ElseIf EgtVerifyFixture(nFirstSelectedId) Then
|
||||
Dim SelObjFrame3d As New Frame3d(Frame3d.GLOB)
|
||||
@@ -433,8 +471,24 @@ Public Class DispositionParameterExpanderVM
|
||||
''' Execute the Point. This method is invoked by the DoneCommand.
|
||||
''' </summary>
|
||||
Public Sub CheckedRawRef(ByVal param As Object)
|
||||
' Assegno corner di riferimento
|
||||
Dim nRawRef As MCH_CR = DirectCast(param, MCH_CR)
|
||||
m_RawRefPosition = nRawRef
|
||||
' Se grezzo selezionato, visualizzo sua posizione
|
||||
Dim nFirstSelectedId As Integer = EgtGetFirstSelectedObj()
|
||||
If EgtVerifyRawPartCurrPhase(nFirstSelectedId) Then
|
||||
Dim ptR As Point3d = DispositionUtility.GetRawPartRefPoint(nFirstSelectedId, m_RawRefPosition)
|
||||
Dim sSupp As String = ""
|
||||
Dim nSuppId As Integer = EgtGetFirstNameInGroup(nFirstSelectedId, SUPPORT)
|
||||
If nSuppId <> GDB_ID.NULL Then
|
||||
Dim bboxSupport As New BBox3d
|
||||
EgtGetBBoxGlob(nSuppId, GDB_BB.STANDARD, bboxSupport)
|
||||
Dim dSupp As Double = bboxSupport.DimZ()
|
||||
sSupp = "," & LenToString( dSupp, 2)
|
||||
End If
|
||||
m_InputValue = LenToString( ptR.x, 2) & "," & LenToString( ptR.y, 2) & sSupp
|
||||
OnPropertyChanged( "InputValue")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' CheckedRawRefCommand
|
||||
|
||||
+596
-300
File diff suppressed because it is too large
Load Diff
+106
-46
@@ -5,8 +5,6 @@ Imports EgtUILib
|
||||
Public Class FixtureParametersVM
|
||||
Inherits ViewModelBase
|
||||
|
||||
Friend Const USED As String = "USED"
|
||||
|
||||
Private m_FixtureTypeList As ObservableCollection(Of FixtureListItem)
|
||||
Public ReadOnly Property FixtureTypeList As ObservableCollection(Of FixtureListItem)
|
||||
Get
|
||||
@@ -64,8 +62,8 @@ Public Class FixtureParametersVM
|
||||
Dim nUsedFixtureId As Integer = EgtGetFirstFixture()
|
||||
While nUsedFixtureId <> GDB_ID.NULL
|
||||
Dim sUsedFixtureName As String = String.Empty
|
||||
For Index = 0 To m_FixtureTypeList.Count - 1
|
||||
EgtGetName(nUsedFixtureId, sUsedFixtureName)
|
||||
For Index = 0 To m_FixtureTypeList.Count - 1
|
||||
If sUsedFixtureName = m_FixtureTypeList(Index).Name Then
|
||||
Dim CurrFixtureType As FixtureType = DirectCast(m_FixtureTypeList(Index), FixtureType)
|
||||
CurrFixtureType.UsedNumber += 1
|
||||
@@ -78,6 +76,7 @@ Public Class FixtureParametersVM
|
||||
|
||||
Friend Sub UpdateFixtureTypeList()
|
||||
m_FixtureTypeList = New ObservableCollection(Of FixtureListItem)(FixtureType.ReadFixtureTypeFromMachIni())
|
||||
UpdateFixtureCount()
|
||||
OnPropertyChanged("FixtureTypeList")
|
||||
End Sub
|
||||
|
||||
@@ -122,25 +121,34 @@ Public Class FixtureParametersVM
|
||||
OnPropertyChanged("FixtureErrorMsg")
|
||||
Return
|
||||
End If
|
||||
' dimensioni tavola
|
||||
Dim vtTabDim As Vector3d = ptTableMax - ptTableMin
|
||||
' calcolo il centro della tavola
|
||||
Dim ptTableMid As New Point3d((ptTableMax.x - ptTableMin.x) / 2, (ptTableMax.y - ptTableMin.y) / 2, (ptTableMax.z - ptTableMin.z) / 2)
|
||||
Dim ptTableMid As Point3d = Point3d.ORIG() + 0.5 * vtTabDim
|
||||
' posiziono il nuovo sottopezzo al centro della tavola
|
||||
Dim nAddedFixtureId As Integer = EgtAddFixture(SelectedFixture.Name, ptTableMid, 0, 0)
|
||||
Dim nAddedFixtureId As Integer = EgtAddFixture(SelectedFixture.Name, ptTableMid, 0, 20)
|
||||
If nAddedFixtureId = GDB_ID.NULL Then
|
||||
m_FixtureErrorMsg = "Impossibile posizionare la ventosa sulla tavola"
|
||||
OnPropertyChanged("FixtureErrorMsg")
|
||||
Return
|
||||
End If
|
||||
' verifico se la ventosa ha punti di hook da ancorare
|
||||
' Se la ventosa ha punti di hook da ancorare
|
||||
If IsFixtureWithHook(nAddedFixtureId) Then
|
||||
If Not PositionFixtureOnNearestHook(nAddedFixtureId) Then
|
||||
EgtMoveFixture( nAddedFixtureId, 0.2 * vtTabDim.y * Vector3d.Y_AX())
|
||||
If Not PositionFixtureOnNearestHook(nAddedFixtureId) Then
|
||||
EgtMoveFixture( nAddedFixtureId, 0.2 * vtTabDim.y * Vector3d.Y_AX())
|
||||
If Not PositionFixtureOnNearestHook(nAddedFixtureId) Then
|
||||
' non ci sono punti liberi, quindi rimuovo la ventosa e segnalo
|
||||
EgtRemoveFixture(nAddedFixtureId)
|
||||
EgtSetFixtureLink( nAddedFixtureId, "")
|
||||
MessageBox.Show("No free hook point!", "ERROR")
|
||||
Return
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
' altrimenti ventosa con movimento continuo
|
||||
Else
|
||||
' se non ha punti di ancoraggio
|
||||
' verifico se è in una posizione valida
|
||||
If Not DispositionUtility.VerifyFixturePosition(nAddedFixtureId, New Vector3d) Then
|
||||
' se non trovo una posizione valida, esco
|
||||
@@ -239,9 +247,7 @@ Public Class FixtureParametersVM
|
||||
' leggo tipo
|
||||
Dim sType As String = ""
|
||||
EgtGetInfo(nFixtHookId, DispositionUtility.TYPE, sType)
|
||||
If sType.Equals(DispositionUtility.FREE) Then
|
||||
Return False
|
||||
ElseIf sType.Equals(DispositionUtility.POINT) Then
|
||||
If sType.Equals(DispositionUtility.POINT) Then
|
||||
Return True
|
||||
ElseIf sType.Equals(DispositionUtility.LINE) Then
|
||||
Return True
|
||||
@@ -250,7 +256,7 @@ Public Class FixtureParametersVM
|
||||
End If
|
||||
End Function
|
||||
|
||||
' Funzione che aggancia la ventosa al più vicino hook libero
|
||||
' Funzione che cerca un hook libero adatto alla ventosa e se trovato la posiziona
|
||||
Friend Shared Function PositionFixtureOnNearestHook(nFixtureId As Integer) As Boolean
|
||||
' cerco punto hook sulla ventosa
|
||||
Dim nFixtSolidId As Integer = EgtGetFirstNameInGroup(nFixtureId, SOLID)
|
||||
@@ -262,26 +268,21 @@ Public Class FixtureParametersVM
|
||||
Dim nFixtHookType As DispositionUtility.HOOKTYPE = DispositionUtility.HOOKTYPE.FREE
|
||||
Dim sType As String = ""
|
||||
EgtGetInfo(nFixtHookId, DispositionUtility.TYPE, sType)
|
||||
If sType.Equals(DispositionUtility.FREE) Then
|
||||
nFixtHookType = DispositionUtility.HOOKTYPE.FREE
|
||||
' esco perchè non devo cercare alcun punto
|
||||
Return True
|
||||
ElseIf sType.Equals(DispositionUtility.POINT) Then
|
||||
If sType.Equals(DispositionUtility.POINT) Then
|
||||
nFixtHookType = DispositionUtility.HOOKTYPE.POINT
|
||||
ElseIf sType.Equals(DispositionUtility.LINE) Then
|
||||
nFixtHookType = DispositionUtility.HOOKTYPE.LINE
|
||||
Else
|
||||
nFixtHookType = DispositionUtility.HOOKTYPE.FREE
|
||||
' esco perchè non devo cercare alcun punto
|
||||
Return True
|
||||
End If
|
||||
Dim nFixtHookClass As Integer = 0
|
||||
EgtGetInfo(nFixtHookId, DispositionUtility.CLASS_, nFixtHookClass)
|
||||
' cerco id tavola
|
||||
' Recupero Id tavola corrente
|
||||
Dim sTableName As String = ""
|
||||
EgtGetTableName(sTableName)
|
||||
Dim nTableId As Integer = EgtGetTableId(sTableName)
|
||||
' cerco hook su tavola macchina
|
||||
' *** Cerco hook su tavola ***
|
||||
Dim nTableSolidId As Integer = EgtGetFirstNameInGroup(nTableId, SOLID)
|
||||
Dim nCurrHookId As Integer = EgtGetFirstNameInGroup(nTableSolidId, DispositionUtility.HOOK)
|
||||
' Punto di hook a cui spostare la ventosa
|
||||
@@ -293,14 +294,22 @@ Public Class FixtureParametersVM
|
||||
EgtMoveFixture(nFixtureId, ptCurrHook - ptFixtHook)
|
||||
' verifico se è in una posizione valida
|
||||
If DispositionUtility.VerifyFixturePosition(nFixtureId, New Vector3d) Then
|
||||
EgtSetInfo(nCurrHookId, used, nFixtureId)
|
||||
If nFixtHookType = DispositionUtility.HOOKTYPE.POINT then
|
||||
DispositionUtility.SetHookUsed( nCurrHookId, nFixtureId)
|
||||
Else
|
||||
DispositionUtility.AddHookUsed( nCurrHookId, nFixtureId)
|
||||
End If
|
||||
EgtSetFixtureLink( nFixtureId, "")
|
||||
Return True
|
||||
Else
|
||||
EgtStartPoint(nFixtHookId, GDB_ID.ROOT, ptFixtHook)
|
||||
End If
|
||||
End If
|
||||
nCurrHookId = EgtGetNextName(nCurrHookId, DispositionUtility.HOOK)
|
||||
End While
|
||||
' cerco hook su barra fissa
|
||||
' *** Cerco hook su barre fisse ***
|
||||
Dim nTableFixedId As Integer = EgtGetFirstNameInGroup(nTableId, DispositionUtility.FIXED)
|
||||
While nTableFixedId <> GDB_ID.NULL
|
||||
nCurrHookId = EgtGetFirstNameInGroup(nTableFixedId, DispositionUtility.HOOK)
|
||||
While nCurrHookId <> GDB_ID.NULL
|
||||
' se punto di aggancio valido
|
||||
@@ -309,17 +318,54 @@ Public Class FixtureParametersVM
|
||||
EgtMoveFixture(nFixtureId, ptCurrHook - ptFixtHook)
|
||||
' verifico se è in una posizione valida
|
||||
If DispositionUtility.VerifyFixturePosition(nFixtureId, New Vector3d) Then
|
||||
EgtSetInfo(nCurrHookId, USED, nFixtureId)
|
||||
If nFixtHookType = DispositionUtility.HOOKTYPE.POINT then
|
||||
DispositionUtility.SetHookUsed( nCurrHookId, nFixtureId)
|
||||
Else
|
||||
DispositionUtility.AddHookUsed( nCurrHookId, nFixtureId)
|
||||
End If
|
||||
EgtSetFixtureLink( nFixtureId, "")
|
||||
Return True
|
||||
Else
|
||||
EgtStartPoint(nFixtHookId, GDB_ID.ROOT, ptFixtHook)
|
||||
End If
|
||||
End If
|
||||
nCurrHookId = EgtGetNextName(nCurrHookId, DispositionUtility.HOOK)
|
||||
End While
|
||||
' cerco hook su barre mobili
|
||||
Dim nMobileInd As Integer = 1
|
||||
Dim nMobile As Integer = EgtGetFirstNameInGroup(nTableId, DispositionUtility.MOBILE & nMobileInd)
|
||||
While nMobile <> GDB_ID.NULL
|
||||
nCurrHookId = EgtGetFirstNameInGroup(nMobile, DispositionUtility.HOOK)
|
||||
nTableFixedId = EgtGetNextName( nTableFixedId, DispositionUtility.FIXED)
|
||||
End While
|
||||
' *** Cerco hook su barre mobili ***
|
||||
Dim nBarId As Integer = EgtGetFirstGroupInGroup(nTableId)
|
||||
While nBarId <> GDB_ID.NULL
|
||||
Dim sBarName As String = ""
|
||||
If EgtGetName( nBarId, sBarName) AndAlso EgtGetAxisId( sBarName) <> GDB_ID.NULL Then
|
||||
nCurrHookId = EgtGetFirstNameInGroup(nBarId, DispositionUtility.HOOK)
|
||||
While nCurrHookId <> GDB_ID.NULL
|
||||
' se punto di aggancio valido
|
||||
If HookAnalyzer(nCurrHookId, nFixtHookType, nFixtHookClass, ptFixtHook, ptCurrHook) Then
|
||||
' sposto la ventosa
|
||||
Dim vtMove As Vector3d = ptCurrHook - ptFixtHook
|
||||
EgtMoveFixture(nFixtureId, vtMove)
|
||||
' verifico se è in una posizione valida
|
||||
If DispositionUtility.VerifyFixturePosition(nFixtureId, New Vector3d) Then
|
||||
If nFixtHookType = DispositionUtility.HOOKTYPE.POINT then
|
||||
DispositionUtility.SetHookUsed( nCurrHookId, nFixtureId)
|
||||
Else
|
||||
DispositionUtility.AddHookUsed( nCurrHookId, nFixtureId)
|
||||
End If
|
||||
EgtSetFixtureLink( nFixtureId, sBarName)
|
||||
Return True
|
||||
Else
|
||||
EgtStartPoint(nFixtHookId, GDB_ID.ROOT, ptFixtHook)
|
||||
End If
|
||||
End If
|
||||
nCurrHookId = EgtGetNextName(nCurrHookId, DispositionUtility.HOOK)
|
||||
End While
|
||||
' Cerco su eventuali carrelli
|
||||
Dim nCharId As Integer = EgtGetFirstGroupInGroup(nBarId)
|
||||
While nCharId <> GDB_ID.NULL
|
||||
Dim sCharName As String = ""
|
||||
If EgtGetName( nCharId, sCharName) AndAlso EgtGetAxisId( sCharName) <> GDB_ID.NULL Then
|
||||
nCurrHookId = EgtGetFirstNameInGroup(nCharId, DispositionUtility.HOOK)
|
||||
While nCurrHookId <> GDB_ID.NULL
|
||||
' se punto di aggancio valido
|
||||
If HookAnalyzer(nCurrHookId, nFixtHookType, nFixtHookClass, ptFixtHook, ptCurrHook) Then
|
||||
@@ -327,47 +373,60 @@ Public Class FixtureParametersVM
|
||||
EgtMoveFixture(nFixtureId, ptCurrHook - ptFixtHook)
|
||||
' verifico se è in una posizione valida
|
||||
If DispositionUtility.VerifyFixturePosition(nFixtureId, New Vector3d) Then
|
||||
EgtSetInfo(nCurrHookId, USED, nFixtureId)
|
||||
If nFixtHookType = DispositionUtility.HOOKTYPE.POINT then
|
||||
DispositionUtility.SetHookUsed( nCurrHookId, nFixtureId)
|
||||
Else
|
||||
DispositionUtility.AddHookUsed( nCurrHookId, nFixtureId)
|
||||
End If
|
||||
EgtSetFixtureLink( nFixtureId, sCharName)
|
||||
Return True
|
||||
Else
|
||||
EgtStartPoint(nFixtHookId, GDB_ID.ROOT, ptFixtHook)
|
||||
End If
|
||||
End If
|
||||
nCurrHookId = EgtGetNextName(nCurrHookId, DispositionUtility.HOOK)
|
||||
End While
|
||||
nMobileInd += 1
|
||||
nMobile = EgtGetFirstNameInGroup(nTableId, DispositionUtility.MOBILE & nMobileInd)
|
||||
End If
|
||||
nCharId = EgtGetNextGroup(nCharId)
|
||||
End While
|
||||
End If
|
||||
nBarId = EgtGetNextGroup(nBarId)
|
||||
End While
|
||||
Return False
|
||||
End Function
|
||||
|
||||
' Funzione che analizza l'hook e se valido ne prestituisce lo posizione(punto)
|
||||
Private Shared Function HookAnalyzer(nCurrHookId As Integer, nFixtHookType As Integer, nFixtHookClass As Integer, ptFixtHook As Point3d, ByRef ptCurrHook As Point3d) As Boolean
|
||||
' verifico se del tipo giusto
|
||||
' Funzione che analizza l'hook e se valido ne restituisce la posizione (punto)
|
||||
Private Shared Function HookAnalyzer(nCurrHookId As Integer, nFixtHookType As Integer, nFixtHookClass As Integer,
|
||||
ptFixtHook As Point3d, ByRef ptCurrHook As Point3d) As Boolean
|
||||
' Verifico se del tipo giusto
|
||||
Dim nTableHookType As GDB_TY = EgtGetType(nCurrHookId)
|
||||
If (nTableHookType = GDB_TY.GEO_POINT And nFixtHookType = DispositionUtility.HOOKTYPE.POINT) OrElse (nTableHookType = GDB_TY.CRV_LINE And nFixtHookType = DispositionUtility.HOOKTYPE.LINE) Then
|
||||
' verifico se della stessa classe
|
||||
Dim nTableHookClass As Integer = 0
|
||||
EgtGetInfo(nCurrHookId, DispositionUtility.CLASS_, nTableHookClass)
|
||||
If nTableHookClass = nFixtHookClass Then
|
||||
If Not (nTableHookType = GDB_TY.GEO_POINT And nFixtHookType = DispositionUtility.HOOKTYPE.POINT) AndAlso
|
||||
Not (nTableHookType = GDB_TY.CRV_LINE And nFixtHookType = DispositionUtility.HOOKTYPE.LINE) Then
|
||||
Return False
|
||||
End If
|
||||
|
||||
' Verifico se della stessa classe
|
||||
Dim nTableHookClass As Integer = DispositionUtility.GetHookClass( nCurrHookId)
|
||||
If nTableHookClass <> nFixtHookClass Then
|
||||
Return False
|
||||
End If
|
||||
|
||||
Dim dDist As Double = 0
|
||||
' punto a distanza minima sull'hook
|
||||
If nTableHookType = GDB_TY.GEO_POINT Then
|
||||
' verifico se utilizzato
|
||||
Dim nTableHookUsed As Boolean = False
|
||||
If Not EgtGetInfo(nCurrHookId, DispositionUtility.USED, nTableHookUsed) Then
|
||||
If Not DispositionUtility.GetIsHookUsed( nCurrHookId) Then
|
||||
' calcolo distanza punto hook tavola dal punto hook della ventosa
|
||||
EgtStartPoint(nCurrHookId, GDB_ID.ROOT, ptCurrHook)
|
||||
Return True
|
||||
End If
|
||||
ElseIf nTableHookType = GDB_TY.CRV_LINE Then
|
||||
' calcolo distanza linea hook tavola dal punto hook della ventosa
|
||||
Dim nRefId As Integer = 0
|
||||
Dim dU As Double = 0
|
||||
EgtPointCurveDist(ptFixtHook, nCurrHookId, nRefId, dDist, dU)
|
||||
EgtAtParamPoint(nCurrHookId, dU, GDB_ID.ROOT, ptCurrHook)
|
||||
Dim ptL1 As Point3d : EgtStartPoint( nCurrHookId, GDB_ID.ROOT, ptL1)
|
||||
Dim ptL2 As Point3d : EgtEndPoint( nCurrHookId, GDB_ID.ROOT, ptL2)
|
||||
ptCurrHook = DispositionUtility.DistPointSegment( ptFixtHook, ptL1, ptL2)
|
||||
Return True
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
Return False
|
||||
End Function
|
||||
|
||||
@@ -396,6 +455,7 @@ Public Class FixtureParametersVM
|
||||
Dim NextSelectedId As Integer = EgtGetNextSelectedObj()
|
||||
If EgtVerifyFixture(SelectedFixtureId) Then
|
||||
EgtRemoveFixture(SelectedFixtureId)
|
||||
DispositionUtility.RemoveFixtureFromHook( SelectedFixtureId)
|
||||
For Index = 0 To FixtureTypeList.Count - 1
|
||||
Dim SelFixtureName As String = String.Empty
|
||||
EgtGetName(SelectedFixtureId, SelFixtureName)
|
||||
|
||||
+1
-1
@@ -7,7 +7,7 @@
|
||||
<CheckBox Content="Move with Fixture" IsChecked="{Binding MoveWithFixture, Mode=TwoWay}"/>
|
||||
<UniformGrid Columns="2" Margin="0,5,0,0">
|
||||
<Button Content="New" Command="{Binding NewRawPartCommand}"/>
|
||||
<Button Content="Remove"/> <!--Command="{Binding RemoveRawPartCommand}"-->
|
||||
<Button Content="Remove" Command="{Binding RemoveRawPartCommand}"/>
|
||||
</UniformGrid>
|
||||
<Grid Visibility="{Binding RawPartParamVisibility, Mode=OneWay}">
|
||||
<Grid.RowDefinitions>
|
||||
|
||||
+31
-1
@@ -117,7 +117,7 @@ Public Class RawPartOptionVM
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the Point. This method is invoked by the DoneCommand.
|
||||
''' Execute NewRawPart. This method is invoked by the DoneCommand.
|
||||
''' </summary>
|
||||
Public Sub NewRawPart()
|
||||
DispositionUtility.ShowParts()
|
||||
@@ -127,6 +127,36 @@ Public Class RawPartOptionVM
|
||||
|
||||
#End Region ' NewRawPartCommand
|
||||
|
||||
#Region "RemoveRawPartCommand"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Done.
|
||||
''' </summary>
|
||||
Public ReadOnly Property RemoveRawPartCommand As ICommand
|
||||
Get
|
||||
If m_cmdRemoveRawPart Is Nothing Then
|
||||
m_cmdRemoveRawPart = New RelayCommand(AddressOf RemoveRawPart)
|
||||
End If
|
||||
Return m_cmdRemoveRawPart
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute RemoveRawPart. This method is invoked by the DoneCommand.
|
||||
''' </summary>
|
||||
Public Sub RemoveRawPart()
|
||||
' ciclo sui grezzi selezionati
|
||||
Dim nSelRawPartId As Integer = EgtGetFirstSelectedObj()
|
||||
While nSelRawPartId <> GDB_ID.NULL
|
||||
' rimuovo il grezzo dalla disposizione
|
||||
EgtRemoveRawPart(nSelRawPartId)
|
||||
nSelRawPartId = EgtGetNextSelectedObj()
|
||||
End While
|
||||
EgtDraw()
|
||||
End Sub
|
||||
|
||||
#End Region ' RemoveRawPartCommand
|
||||
|
||||
#End Region ' Commands
|
||||
|
||||
End Class
|
||||
+128
-75
@@ -81,14 +81,12 @@
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding WorkSideTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding WorkSideTxBl}"
|
||||
ParamCmBxList="{Binding Path=WorkSideList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -116,39 +114,33 @@
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OverLapTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OverLapTxBl}"
|
||||
ParamTxBx="{Binding Path=OverLap,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding StepTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding StepTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=StepTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedStepType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepParTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepParTxBl}"
|
||||
ParamTxBx="{Binding Path=StepPar,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSr,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSl,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -156,36 +148,52 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertToolDirTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertToolDirTxBl}"
|
||||
ParamChBx="{Binding Path=InvertToolDir,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding FaceUseTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding FaceUseTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=FaceUseTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedFaceUseType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -193,12 +201,79 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadInTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -206,32 +281,27 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=StartAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiTangTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiTangTxBl}"
|
||||
ParamTxBx="{Binding Path=LiTang,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiPerpTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiPerpTxBl}"
|
||||
ParamTxBx="{Binding Path=LiPerp,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiElevTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiElevTxBl}"
|
||||
ParamTxBx="{Binding Path=LiElev,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiCompLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiCompLenTxBl}"
|
||||
ParamTxBx="{Binding Path=LiCompLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -241,8 +311,7 @@
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadOutTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -250,32 +319,27 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=EndAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LoTangTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoTangTxBl}"
|
||||
ParamTxBx="{Binding Path=LoTang,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LoPerpTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoPerpTxBl}"
|
||||
ParamTxBx="{Binding Path=LoPerp,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LoElevTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoElevTxBl}"
|
||||
ParamTxBx="{Binding Path=LoElev,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LoCompLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoCompLenTxBl}"
|
||||
ParamTxBx="{Binding Path=LoCompLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -285,51 +349,44 @@
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding LeaveTabTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding LeaveTabTxBl}"
|
||||
ParamChBx="{Binding Path=LeaveTab,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel Margin="2">
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TabLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabLenTxBl}"
|
||||
ParamTxBx="{Binding Path=TabLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamErrorMsg="{Binding Path=TabLenErrorMsg}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TabHeightTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabHeightTxBl}"
|
||||
ParamTxBx="{Binding Path=TabHeight,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamErrorMsg="{Binding Path=TabHeightErrorMsg}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TabAngleTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabAngleTxBl}"
|
||||
ParamTxBx="{Binding Path=TabAngle,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamErrorMsg="{Binding Path=TabAngleErrorMsg}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TabDistTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabDistTxBl}"
|
||||
ParamTxBx="{Binding Path=TabDist,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamErrorMsg="{Binding Path=TabDistErrorMsg}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TabMinTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabMinTxBl}"
|
||||
ParamTxBx="{Binding Path=TabMin,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamErrorMsg="{Binding Path=TabMinErrorMsg}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TabMaxTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabMaxTxBl}"
|
||||
ParamTxBx="{Binding Path=TabMax,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -343,38 +400,34 @@
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SpeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Interactivity:Interaction.Behaviors>
|
||||
<EgtCAM5:AutomaticCloseExpander/>
|
||||
</Interactivity:Interaction.Behaviors>
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class BeamMillingParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class BeamMillingParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class BeamMillingParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class BeamMillingParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+107
-35
@@ -81,14 +81,12 @@
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding WorkSideTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding WorkSideTxBl}"
|
||||
ParamCmBxList="{Binding Path=WorkSideList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -116,32 +114,27 @@
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding ReturnPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding ReturnPosTxBl}"
|
||||
ParamTxBx="{Binding Path=ReturnPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepParTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepParTxBl}"
|
||||
ParamTxBx="{Binding Path=StepPar,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSr,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSl,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -149,29 +142,46 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertToolDirTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertToolDirTxBl}"
|
||||
ParamChBx="{Binding Path=InvertToolDir,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -179,13 +189,80 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding LeadOutTypeMsg}" Name="LeadOutType"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=EndAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -198,32 +275,27 @@
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SpeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class ChiselingParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class ChiselingParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class ChiselingParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class ChiselingParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+291
@@ -0,0 +1,291 @@
|
||||
<UserControl x:Class="FiveAxisMachiningParameterExpanderV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:sys="clr-namespace:System;assembly=mscorlib"
|
||||
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
|
||||
xmlns:EgtCAM5="clr-namespace:EgtCAM5"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
|
||||
|
||||
<UserControl.Resources>
|
||||
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
|
||||
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
|
||||
<sys:Int32 x:Key="Invert">0</sys:Int32>
|
||||
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
|
||||
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
|
||||
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
|
||||
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
|
||||
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
|
||||
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
|
||||
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
|
||||
<sys:Int32 x:Key="StepType">8</sys:Int32>
|
||||
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
|
||||
<sys:Int32 x:Key="Speed">10</sys:Int32>
|
||||
<sys:Int32 x:Key="Feed">11</sys:Int32>
|
||||
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
|
||||
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
|
||||
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
|
||||
<sys:Int32 x:Key="OffSr">15</sys:Int32>
|
||||
<sys:Int32 x:Key="OffSl">16</sys:Int32>
|
||||
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
|
||||
<sys:Int32 x:Key="Approx">18</sys:Int32>
|
||||
<sys:Int32 x:Key="StartPos">19</sys:Int32>
|
||||
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
|
||||
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
|
||||
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
|
||||
<sys:Int32 x:Key="StepPar">23</sys:Int32>
|
||||
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
|
||||
<sys:Int32 x:Key="TabLen">25</sys:Int32>
|
||||
<sys:Int32 x:Key="TabDist">26</sys:Int32>
|
||||
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
|
||||
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
|
||||
<sys:Int32 x:Key="LiTang">29</sys:Int32>
|
||||
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
|
||||
<sys:Int32 x:Key="LiElev">31</sys:Int32>
|
||||
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
|
||||
<sys:Int32 x:Key="LoTang">33</sys:Int32>
|
||||
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
|
||||
<sys:Int32 x:Key="LoElev">35</sys:Int32>
|
||||
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
|
||||
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
|
||||
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
|
||||
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
|
||||
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
|
||||
<sys:Int32 x:Key="SideStep">41</sys:Int32>
|
||||
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
|
||||
<sys:Int32 x:Key="NamePar">43</sys:Int32>
|
||||
<sys:Int32 x:Key="Tool">44</sys:Int32>
|
||||
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
|
||||
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
|
||||
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
|
||||
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
|
||||
<sys:Int32 x:Key="SubType">49</sys:Int32>
|
||||
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
|
||||
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
|
||||
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
|
||||
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
|
||||
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
|
||||
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
|
||||
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
|
||||
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
|
||||
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
|
||||
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
|
||||
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
|
||||
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
|
||||
</UserControl.Resources>
|
||||
|
||||
<StackPanel Name="OperationParametersStackPanel">
|
||||
<StackPanel Name="OperationFirstParametersStackPanel">
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding DepthStrTxBl}" Style="{DynamicResource MPExpander_DepthTxBlMargin}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding DepthStr, UpdateSourceTrigger=PropertyChanged,
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding UserNotesTxBl}"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding UserNotes, UpdateSourceTrigger=PropertyChanged}"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBxMargin}">
|
||||
<EgtWPFLib5:EgtTextBox.ToolTip>
|
||||
<TextBlock Text="{Binding UserNotesTooltip}"/>
|
||||
</EgtWPFLib5:EgtTextBox.ToolTip>
|
||||
</EgtWPFLib5:EgtTextBox>
|
||||
<TextBlock Text="{Binding SystemNotesTxBl}"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"
|
||||
Visibility="{Binding SysNotes_Visibility}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding SystemNotes, UpdateSourceTrigger=PropertyChanged}"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBxMargin}"
|
||||
Visibility="{Binding SysNotes_Visibility}"
|
||||
IsReadOnly="True"/>
|
||||
</UniformGrid>
|
||||
</StackPanel>
|
||||
<StackPanel Name="AutomaticCloseExpanderStackPanel">
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SubTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SubTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSubType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSr,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSl,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertToolDirTxBl}"
|
||||
ParamChBx="{Binding Path=InvertToolDir,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
Mode=OneWay}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamErrorMsg="{Binding Path=SpeedErrorMsg}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
<Interactivity:Interaction.Behaviors>
|
||||
<EgtCAM5:AutomaticCloseExpander/>
|
||||
</Interactivity:Interaction.Behaviors>
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
|
||||
</UserControl>
|
||||
+83
@@ -0,0 +1,83 @@
|
||||
Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class FiveAxisMachiningParameterExpanderV
|
||||
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
End Sub
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
m_bSizeChanging = False
|
||||
End Sub
|
||||
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
For Index = 0 To AutomaticCloseExpanderStackPanel.Children.Count - 1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
Dim IndexedExpander As Expander = DirectCast(AutomaticCloseExpanderStackPanel.Children(Index), Expander)
|
||||
If IndexedExpander.IsExpanded Then
|
||||
OpenedExpanderList.Add(True)
|
||||
IndexedExpander.IsExpanded = False
|
||||
Dim CurrExpanderContent As FrameworkElement = DirectCast(IndexedExpander.Content, FrameworkElement)
|
||||
CurrExpanderContent.Measure(New Size(Double.PositiveInfinity, Double.PositiveInfinity))
|
||||
AutomaticCloseExpanderStackPanelHeight -= CurrExpanderContent.DesiredSize.Height
|
||||
' Sottraggo anche i padding
|
||||
AutomaticCloseExpanderStackPanelHeight -= (IndexedExpander.Padding.Top + IndexedExpander.Padding.Bottom)
|
||||
Else
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Else
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
Dim IndexedExpander As Expander = DirectCast(AutomaticCloseExpanderStackPanel.Children(Index), Expander)
|
||||
If OpenedExpanderList(Index) Then
|
||||
IndexedExpander.IsExpanded = True
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
' Funzione che permette di trovare il primo contenitore di tipo T di un elemento grafico dependencyObject
|
||||
Public Function FindAncestor(Of T As Class)(dependencyObject As DependencyObject) As T
|
||||
Dim target As DependencyObject = dependencyObject
|
||||
Do
|
||||
target = LogicalTreeHelper.GetParent(target)
|
||||
Loop While target IsNot Nothing AndAlso Not (TypeOf target Is T)
|
||||
If IsNothing(target) Then
|
||||
target = dependencyObject
|
||||
Do
|
||||
target = VisualTreeHelper.GetParent(target)
|
||||
Loop While target IsNot Nothing AndAlso Not (TypeOf target Is T)
|
||||
End If
|
||||
Return TryCast(target, T)
|
||||
End Function
|
||||
|
||||
End Class
|
||||
+104
-29
@@ -81,8 +81,7 @@
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -109,27 +108,23 @@
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SubTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SubTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SubTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSubType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSr,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSl,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -137,29 +132,46 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertToolDirTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertToolDirTxBl}"
|
||||
ParamChBx="{Binding Path=InvertToolDir,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -167,6 +179,74 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
@@ -174,33 +254,28 @@
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SpeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamErrorMsg="{Binding Path=SpeedErrorMsg}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class GenMachiningParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class GenMachiningParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class GenMachiningParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class GenMachiningParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+18
-9
@@ -80,18 +80,27 @@
|
||||
|
||||
<Button Name="ApplyMachBtn" Height="30" Content="{Binding UpdateMachiningBtnMsg}"
|
||||
Command="{Binding UpdateMachiningCommand}" Background="{Binding UpdateMachiningBtn_Background}"/>
|
||||
<Grid>
|
||||
<Grid Margin="0,2.5,0,2.5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<ToggleButton Name="ViewToolBtn" Grid.Column="0" Height="30" Content="{Binding ViewToolBtnMsg}"
|
||||
IsChecked="{Binding ViewTool}" />
|
||||
<Button Name="NextStepToolBtn" Grid.Column="1" Height="30" Content="{Binding NextStepToolBtnMsg}"
|
||||
Command="{Binding NextStepToolCommand}" IsEnabled="{Binding IsChecked, ElementName=ViewToolBtn}"/>
|
||||
<Button Name="PrevStepToolBtn" Grid.Column="2" Height="30" Content="{Binding PrevStepToolBtnMsg}"
|
||||
Command="{Binding PrevStepToolCommand}" IsEnabled="{Binding IsChecked, ElementName=ViewToolBtn}"/>
|
||||
|
||||
<Button Command="{Binding PreviewMachiningTool_Command}"
|
||||
x:Name="ButtonPreview"
|
||||
Style="{StaticResource PreviewTool_Button}">
|
||||
<Image Source="{Binding sToolPreview_Image}" Stretch="Uniform"/>
|
||||
</Button>
|
||||
|
||||
<Slider Grid.Column="1"
|
||||
x:Name="SliderV"
|
||||
Value="{Binding SliderValue}"
|
||||
IsEnabled="{Binding Slider_IsEnable}"
|
||||
TickFrequency="{Binding SliderTick}"
|
||||
Minimum="1"
|
||||
Maximum="{Binding SliderScale}"
|
||||
Style="{StaticResource SliderValue_Slider}"/>
|
||||
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
|
||||
|
||||
+24
-73
@@ -1,83 +1,34 @@
|
||||
Imports EgtWPFLib5
|
||||
Imports EgtWPFLib5.EgtFloating
|
||||
Imports EgtCAM5.MachiningParameterExpanderVM
|
||||
Imports EgtUILib
|
||||
|
||||
Public Class MachiningParameterExpanderV
|
||||
|
||||
'Private EgtFloatingTray As EgtFloatingTray
|
||||
'Private EgtFloatingPanel As EgtFloatingPanel
|
||||
Sub New()
|
||||
|
||||
'Private m_bFirst As Boolean = True
|
||||
' La chiamata è richiesta dalla finestra di progettazione.
|
||||
InitializeComponent()
|
||||
|
||||
'Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
' If m_bFirst Then
|
||||
' EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
' EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
' AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
' PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
' Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
' m_bFirst = False
|
||||
' End If
|
||||
' CalculateOperationParametersStackPanelMaxHeight()
|
||||
'End Sub
|
||||
' Aggiungere le eventuali istruzioni di inizializzazione dopo la chiamata a InitializeComponent().
|
||||
Me.SliderV.Focusable = False
|
||||
' Associo il gestore evento m_EventFocusOnSlider all'evento generato da FocusOnSlider
|
||||
AddHandler Map.refMachiningParameterExpanderVM.m_EventFocusOnSlider, AddressOf FocusOnSlider
|
||||
' Associo il gestore evento m_EventFocusOnButtonPreview all'evento generato da FocusOnButtonPreview
|
||||
AddHandler Map.refMachiningParameterExpanderVM.m_EventFocusOnButtonPreview, AddressOf FocusOnButtonPreview
|
||||
|
||||
'Dim m_bSizeChanging As Boolean = False
|
||||
End Sub
|
||||
|
||||
'Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
' If m_bSizeChanging Then Return
|
||||
' m_bSizeChanging = True
|
||||
' CalculateOperationParametersStackPanelMaxHeight()
|
||||
' m_bSizeChanging = False
|
||||
'End Sub
|
||||
''' <summary>
|
||||
''' Funzione che mette il focus allo slider
|
||||
''' </summary>
|
||||
Friend Sub FocusOnSlider()
|
||||
Me.SliderV.Focus()
|
||||
End Sub
|
||||
|
||||
'Dim PanelHeight As Double = 0
|
||||
'Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
'Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
' Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
' Dim OpenedExpanderList As New List(Of Boolean)
|
||||
' For Index = 0 To AutomaticCloseExpanderStackPanel.Children.Count - 1
|
||||
' If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
' Dim IndexedExpander As Expander = DirectCast(AutomaticCloseExpanderStackPanel.Children(Index), Expander)
|
||||
' If IndexedExpander.IsExpanded Then
|
||||
' OpenedExpanderList.Add(True)
|
||||
' IndexedExpander.IsExpanded = False
|
||||
' Dim CurrExpanderContent As FrameworkElement = DirectCast(IndexedExpander.Content, FrameworkElement)
|
||||
' CurrExpanderContent.Measure(New Size(Double.PositiveInfinity, Double.PositiveInfinity))
|
||||
' AutomaticCloseExpanderStackPanelHeight -= CurrExpanderContent.DesiredSize.Height
|
||||
' ' Sottraggo anche i padding
|
||||
' AutomaticCloseExpanderStackPanelHeight -= (IndexedExpander.Padding.Top + IndexedExpander.Padding.Bottom)
|
||||
' Else
|
||||
' OpenedExpanderList.Add(False)
|
||||
' End If
|
||||
' Else
|
||||
' OpenedExpanderList.Add(False)
|
||||
' End If
|
||||
' Next
|
||||
' Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
' AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
' For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
' If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
' Dim IndexedExpander As Expander = DirectCast(AutomaticCloseExpanderStackPanel.Children(Index), Expander)
|
||||
' If OpenedExpanderList(Index) Then
|
||||
' IndexedExpander.IsExpanded = True
|
||||
' End If
|
||||
' End If
|
||||
' Next
|
||||
'End Sub
|
||||
|
||||
'' Funzione che permette di trovare il primo contenitore di tipo T di un elemento grafico dependencyObject
|
||||
'Public Function FindAncestor(Of T As Class)(dependencyObject As DependencyObject) As T
|
||||
' Dim target As DependencyObject = dependencyObject
|
||||
' Do
|
||||
' target = LogicalTreeHelper.GetParent(target)
|
||||
' Loop While target IsNot Nothing AndAlso Not (TypeOf target Is T)
|
||||
' If IsNothing(target) Then
|
||||
' target = dependencyObject
|
||||
' Do
|
||||
' target = VisualTreeHelper.GetParent(target)
|
||||
' Loop While target IsNot Nothing AndAlso Not (TypeOf target Is T)
|
||||
' End If
|
||||
' Return TryCast(target, T)
|
||||
'End Function
|
||||
''' <summary>
|
||||
''' Funzione che mette il focus sul bottone
|
||||
''' </summary>
|
||||
Friend Sub FocusOnButtonPreview()
|
||||
Me.ButtonPreview.Focus()
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
+235
-167
@@ -1,11 +1,40 @@
|
||||
Imports System.ComponentModel
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports EgtUILib
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
|
||||
Public Class MachiningParameterExpanderVM
|
||||
Inherits VMBase
|
||||
|
||||
''' <summary>
|
||||
''' Evento che permette di mettere il focus sullo slider
|
||||
''' </summary>
|
||||
Friend Event m_EventFocusOnSlider()
|
||||
''' <summary>
|
||||
''' Evento che permette di mettere il focus sul bottone
|
||||
''' </summary>
|
||||
Friend Event m_EventFocusOnButtonPreview()
|
||||
|
||||
Private m_nPreviewMachiningTool As Integer
|
||||
Public ReadOnly Property nPreviewMachiningTool As Integer
|
||||
Get
|
||||
Return m_nPreviewMachiningTool
|
||||
End Get
|
||||
End Property
|
||||
Friend Sub SetPreviewMachiningTool(value As MCH_LOOK)
|
||||
m_nPreviewMachiningTool = value
|
||||
NotifyPropertyChanged(NameOf(nPreviewMachiningTool))
|
||||
End Sub
|
||||
|
||||
Private m_sToolPreview_Image As String
|
||||
Public ReadOnly Property sToolPreview_Image As String
|
||||
Get
|
||||
Return m_sToolPreview_Image
|
||||
End Get
|
||||
End Property
|
||||
Friend Sub SetToolPreview_Image(value As String)
|
||||
m_sToolPreview_Image = value
|
||||
NotifyPropertyChanged(NameOf(sToolPreview_Image))
|
||||
End Sub
|
||||
|
||||
Private WithEvents m_CurrOperation As MachiningTreeViewItem
|
||||
Public Property CurrOperation As MachiningTreeViewItem
|
||||
Get
|
||||
@@ -49,25 +78,77 @@ Public Class MachiningParameterExpanderVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_bPreviewTool As Boolean = False
|
||||
Private m_nPtEntId As Integer = GDB_ID.NULL
|
||||
Public Property ViewTool As Boolean
|
||||
' Slider per muovere l'utensile in aggiunta ai pulsanti indietro e avanti
|
||||
Private m_SliderScale As Integer = 100
|
||||
Public ReadOnly Property SliderScale As Integer
|
||||
Get
|
||||
Return m_bPreviewTool
|
||||
Return m_SliderScale
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
If value Then
|
||||
EgtPreparePreviewMachiningTool()
|
||||
m_nPtEntId = EgtPreviewMachiningTool(GDB_ID.NULL, MCH_PTM.AFTER)
|
||||
m_bPreviewTool = True
|
||||
End Property
|
||||
Friend Sub SetSliderScale(value As Integer)
|
||||
m_SliderScale = Math.Max(value, 1)
|
||||
If m_SliderScale <= 10 Then
|
||||
m_SliderTick = 1
|
||||
Else
|
||||
EgtRemovePreviewMachiningTool()
|
||||
m_bPreviewTool = False
|
||||
m_SliderTick = CInt(m_SliderScale / 10)
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(SliderScale))
|
||||
NotifyPropertyChanged(NameOf(SliderTick))
|
||||
End Sub
|
||||
|
||||
Private m_SliderTick As Integer = 10
|
||||
Public ReadOnly Property SliderTick As Integer
|
||||
Get
|
||||
Return m_SliderTick
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_nPtEntId As Integer = GDB_ID.NULL
|
||||
Private m_SliderValue As Integer = 1
|
||||
Public Property SliderValue As Integer
|
||||
Get
|
||||
Return m_SliderValue
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
If m_nPreviewMachiningTool = MCH_LOOK.TAB_TOOL OrElse m_nPreviewMachiningTool = MCH_LOOK.TAB_HEAD Then
|
||||
Dim nId As Integer = EgtPreviewMachiningTool(m_nPtEntId, value - m_SliderValue)
|
||||
If nId <> GDB_ID.NULL Then m_nPtEntId = nId
|
||||
EgtDraw()
|
||||
NotifyPropertyChanged("ViewTool")
|
||||
End If
|
||||
m_SliderValue = value
|
||||
End Set
|
||||
End Property
|
||||
Friend Sub ResetSliderValue()
|
||||
If m_nPreviewMachiningTool = MCH_LOOK.TAB_TOOL OrElse m_nPreviewMachiningTool = MCH_LOOK.TAB_HEAD Then
|
||||
m_nPtEntId = EgtPreviewMachiningTool(GDB_ID.NULL, MCH_PTM.AFTER)
|
||||
Else
|
||||
m_nPtEntId = GDB_ID.NULL
|
||||
End If
|
||||
m_SliderValue = 1
|
||||
NotifyPropertyChanged(NameOf(SliderValue))
|
||||
End Sub
|
||||
Friend Sub SetSliderValue(value As Integer)
|
||||
If m_nPreviewMachiningTool = MCH_LOOK.NONE Then Return
|
||||
Dim nOldSliderValue As Integer = m_SliderValue
|
||||
m_SliderValue = Math.Min(Math.Max(m_SliderValue + value, 1), m_SliderScale)
|
||||
Dim nStep As Integer = m_SliderValue - nOldSliderValue
|
||||
If nStep = 0 Then Return
|
||||
Dim nId As Integer = EgtPreviewMachiningTool(m_nPtEntId, nStep)
|
||||
If nId <> GDB_ID.NULL Then m_nPtEntId = nId
|
||||
EgtDraw()
|
||||
NotifyPropertyChanged(NameOf(SliderValue))
|
||||
End Sub
|
||||
|
||||
Private m_Slider_IsEnable As Boolean
|
||||
Public ReadOnly Property Slider_IsEnable As Boolean
|
||||
Get
|
||||
Return m_Slider_IsEnable
|
||||
End Get
|
||||
End Property
|
||||
Friend Sub SetSlider_IsEnable(value As Boolean)
|
||||
m_Slider_IsEnable = value
|
||||
NotifyPropertyChanged(NameOf(Slider_IsEnable))
|
||||
End Sub
|
||||
|
||||
Dim WoodDrillParamExpanderV As WoodDrillingParameterExpanderV
|
||||
Dim WoodSawParamExpanderV As WoodSawingParameterExpanderV
|
||||
@@ -84,6 +165,9 @@ Public Class MachiningParameterExpanderVM
|
||||
Dim StoneDrillParamExpanderV As StoneDrillingParameterExpanderV
|
||||
Dim SurfFinishParamExpanderV As SurfFinishingParameterExpanderV
|
||||
Dim WjParamExpanderV As WaterjettingParameterExpanderV
|
||||
Dim FiveAxExpanderV As FiveAxisMachiningParameterExpanderV
|
||||
Dim SurfRoughExpanderV As SurfRoughingParameterExpanderV
|
||||
Dim ProbExpanderV As ProbingParameterExpanderV
|
||||
|
||||
Private Sub Dummy()
|
||||
|
||||
@@ -106,24 +190,11 @@ Public Class MachiningParameterExpanderVM
|
||||
EgtGetMachiningParam(MCH_MP.TYPE, nType)
|
||||
m_CurrOperation = New MachiningTreeViewItem(sName, DirectCast(nType, MCH_MY))
|
||||
|
||||
WoodDrillParamExpanderV.DataContext = Nothing
|
||||
WoodSawParamExpanderV.DataContext = Nothing
|
||||
WoodMillParamExpanderV.DataContext = Nothing
|
||||
BeamMillParamExpanderV.DataContext = Nothing
|
||||
PocketParamExpanderV.DataContext = Nothing
|
||||
MortiseParamExpanderV.DataContext = Nothing
|
||||
GenMachinParamExpanderV.DataContext = Nothing
|
||||
ChiselParamExpanderV.DataContext = Nothing
|
||||
StoneSawParamExpanderV.DataContext = Nothing
|
||||
StoneSawFinishParamExpanderV.DataContext = Nothing
|
||||
StoneSawRoughParamExpanderV.DataContext = Nothing
|
||||
StoneMillParamExpanderV.DataContext = Nothing
|
||||
StoneDrillParamExpanderV.DataContext = Nothing
|
||||
SurfFinishParamExpanderV.DataContext = Nothing
|
||||
WjParamExpanderV.DataContext = Nothing
|
||||
|
||||
m_CurrOperation.ReadOperationParam()
|
||||
|
||||
' Riferimento a operazione selezionata
|
||||
EgtWPFLib5.MachiningTreeViewItem.sh_SelMach = m_CurrOperation
|
||||
|
||||
IsModified(False)
|
||||
ErrorOnOperation(False)
|
||||
|
||||
@@ -135,40 +206,49 @@ Public Class MachiningParameterExpanderVM
|
||||
|
||||
Select Case nType
|
||||
Case MCH_OY.DRILLING
|
||||
If MatType = MaterialType.STONE Then
|
||||
If MatType = MaterialType.STONE5 Then
|
||||
If IsNothing(StoneDrillParamExpanderV) Then StoneDrillParamExpanderV = New StoneDrillingParameterExpanderV
|
||||
StoneDrillParamExpanderV.DataContext = m_CurrOperation
|
||||
Return StoneDrillParamExpanderV
|
||||
Else
|
||||
If IsNothing(WoodDrillParamExpanderV) Then WoodDrillParamExpanderV = New WoodDrillingParameterExpanderV
|
||||
WoodDrillParamExpanderV.DataContext = m_CurrOperation
|
||||
Return WoodDrillParamExpanderV
|
||||
End If
|
||||
Case MCH_OY.SAWING
|
||||
If MatType = MaterialType.STONE Then
|
||||
If MatType = MaterialType.STONE5 Then
|
||||
If IsNothing(StoneSawParamExpanderV) Then StoneSawParamExpanderV = New StoneSawingParameterExpanderV
|
||||
StoneSawParamExpanderV.DataContext = m_CurrOperation
|
||||
Return StoneSawParamExpanderV
|
||||
Else
|
||||
If IsNothing(WoodSawParamExpanderV) Then WoodSawParamExpanderV = New WoodSawingParameterExpanderV
|
||||
WoodSawParamExpanderV.DataContext = m_CurrOperation
|
||||
Return WoodSawParamExpanderV
|
||||
End If
|
||||
Case MCH_OY.MILLING
|
||||
If MatType = MaterialType.BEAM Then
|
||||
If IsNothing(BeamMillParamExpanderV) Then BeamMillParamExpanderV = New BeamMillingParameterExpanderV
|
||||
BeamMillParamExpanderV.DataContext = m_CurrOperation
|
||||
Return BeamMillParamExpanderV
|
||||
ElseIf MatType = MaterialType.STONE Then
|
||||
ElseIf MatType = MaterialType.STONE5 Then
|
||||
If IsNothing(StoneMillParamExpanderV) Then StoneMillParamExpanderV = New StoneMillingParameterExpanderV
|
||||
StoneMillParamExpanderV.DataContext = m_CurrOperation
|
||||
Return StoneMillParamExpanderV
|
||||
Else
|
||||
If IsNothing(WoodMillParamExpanderV) Then WoodMillParamExpanderV = New WoodMillingParameterExpanderV
|
||||
WoodMillParamExpanderV.DataContext = m_CurrOperation
|
||||
Return WoodMillParamExpanderV
|
||||
End If
|
||||
Case MCH_OY.SAWROUGHING
|
||||
If IsNothing(StoneSawRoughParamExpanderV) Then StoneSawRoughParamExpanderV = New StoneSawRoughingParameterExpanderV
|
||||
StoneSawRoughParamExpanderV.DataContext = m_CurrOperation
|
||||
Return StoneSawRoughParamExpanderV
|
||||
Case MCH_OY.SAWFINISHING
|
||||
If IsNothing(StoneSawFinishParamExpanderV) Then StoneSawFinishParamExpanderV = New StoneSawFinishingParameterExpanderV
|
||||
StoneSawFinishParamExpanderV.DataContext = m_CurrOperation
|
||||
Return StoneSawFinishParamExpanderV
|
||||
Case MCH_OY.POCKETING
|
||||
If MatType = MaterialType.STONE Or MatType = MaterialType.STONE5 Then
|
||||
If MatType = MaterialType.STONE5 Then
|
||||
' se macchina di tipo STONE ricavo il tipo di utensile
|
||||
Dim sMachiningToolName = String.Empty
|
||||
EgtMdbSetCurrMachining(sName)
|
||||
@@ -180,23 +260,41 @@ Public Class MachiningParameterExpanderVM
|
||||
' se utensile di tipo POLISHING rendo visibili i campi sugli epicicli
|
||||
If nToolType = MCH_TY.MILL_POLISHING Then m_CurrOperation.Epicycles_Visibility = Visibility.Visible
|
||||
End If
|
||||
If IsNothing(PocketParamExpanderV) Then PocketParamExpanderV = New PocketingParameterExpanderV
|
||||
PocketParamExpanderV.DataContext = m_CurrOperation
|
||||
Return PocketParamExpanderV
|
||||
Case MCH_OY.MORTISING
|
||||
If IsNothing(MortiseParamExpanderV) Then MortiseParamExpanderV = New MortisingParameterExpanderV
|
||||
MortiseParamExpanderV.DataContext = m_CurrOperation
|
||||
Return MortiseParamExpanderV
|
||||
Case MCH_OY.GENMACHINING
|
||||
If IsNothing(GenMachinParamExpanderV) Then GenMachinParamExpanderV = New GenMachiningParameterExpanderV
|
||||
GenMachinParamExpanderV.DataContext = m_CurrOperation
|
||||
Return GenMachinParamExpanderV
|
||||
Case MCH_OY.CHISELING
|
||||
If IsNothing(ChiselParamExpanderV) Then ChiselParamExpanderV = New ChiselingParameterExpanderV
|
||||
ChiselParamExpanderV.DataContext = m_CurrOperation
|
||||
Return ChiselParamExpanderV
|
||||
Case MCH_OY.SURFFINISHING
|
||||
If IsNothing(SurfFinishParamExpanderV) Then SurfFinishParamExpanderV = New SurfFinishingParameterExpanderV
|
||||
SurfFinishParamExpanderV.DataContext = m_CurrOperation
|
||||
Return SurfFinishParamExpanderV
|
||||
Case MCH_OY.WATERJETTING
|
||||
If IsNothing(WjParamExpanderV) Then WjParamExpanderV = New WaterjettingParameterExpanderV
|
||||
WjParamExpanderV.DataContext = m_CurrOperation
|
||||
Return WjParamExpanderV
|
||||
Case MCH_OY.FIVEAXISMILLING
|
||||
If IsNothing(FiveAxExpanderV) Then FiveAxExpanderV = New FiveAxisMachiningParameterExpanderV
|
||||
FiveAxExpanderV.DataContext = m_CurrOperation
|
||||
Return FiveAxExpanderV
|
||||
Case MCH_OY.SURFROUGHING
|
||||
If IsNothing(SurfRoughExpanderV) Then SurfRoughExpanderV = New SurfRoughingParameterExpanderV
|
||||
SurfRoughExpanderV.DataContext = m_CurrOperation
|
||||
Return SurfRoughExpanderV
|
||||
Case MCH_OY.PROBING
|
||||
If IsNothing(ProbExpanderV) Then ProbExpanderV = New ProbingParameterExpanderV
|
||||
ProbExpanderV.DataContext = m_CurrOperation
|
||||
Return ProbExpanderV
|
||||
End Select
|
||||
|
||||
'MachiningParameterExpanderItem.ReadOperationParam()
|
||||
@@ -234,92 +332,77 @@ Public Class MachiningParameterExpanderVM
|
||||
#End Region ' Messages
|
||||
|
||||
' Definizione comando
|
||||
Private m_cmdNextStepTool As ICommand
|
||||
Private m_cmdPrevStepTool As ICommand
|
||||
Private m_cmdUpdateMachining As ICommand
|
||||
Private m_cmdPreviewMachiningTool As ICommand
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
Sub New()
|
||||
EgtWPFLib5.MachiningDbWindowVM.m_sMachineIniPath = IniFile.m_sCurrMachIniFilePath
|
||||
|
||||
WoodDrillParamExpanderV = New WoodDrillingParameterExpanderV
|
||||
WoodSawParamExpanderV = New WoodSawingParameterExpanderV
|
||||
WoodMillParamExpanderV = New WoodMillingParameterExpanderV
|
||||
BeamMillParamExpanderV = New BeamMillingParameterExpanderV
|
||||
PocketParamExpanderV = New PocketingParameterExpanderV
|
||||
MortiseParamExpanderV = New MortisingParameterExpanderV
|
||||
GenMachinParamExpanderV = New GenMachiningParameterExpanderV
|
||||
ChiselParamExpanderV = New ChiselingParameterExpanderV
|
||||
StoneSawParamExpanderV = New StoneSawingParameterExpanderV
|
||||
StoneSawFinishParamExpanderV = New StoneSawFinishingParameterExpanderV
|
||||
StoneSawRoughParamExpanderV = New StoneSawRoughingParameterExpanderV
|
||||
StoneMillParamExpanderV = New StoneMillingParameterExpanderV
|
||||
StoneDrillParamExpanderV = New StoneDrillingParameterExpanderV
|
||||
SurfFinishParamExpanderV = New SurfFinishingParameterExpanderV
|
||||
WjParamExpanderV = New WaterjettingParameterExpanderV
|
||||
|
||||
Map.SetRefMachiningParameterExpanderVM(Me)
|
||||
NotifyPropertyChanged("ParamExpanderPageV")
|
||||
End Sub
|
||||
|
||||
#End Region ' Constructor
|
||||
|
||||
#Region "METHODS"
|
||||
|
||||
''' <summary>
|
||||
''' Funzione che attiva l'evento che mette il focus sullo slider
|
||||
''' </summary>
|
||||
Public Sub FocusSlider()
|
||||
RaiseEvent m_EventFocusOnSlider()
|
||||
End Sub
|
||||
|
||||
''' <summary>
|
||||
''' Funzione che attiva l'evento che mette il focus sul bottone
|
||||
''' </summary>
|
||||
Public Sub FocusButtonPreview()
|
||||
RaiseEvent m_EventFocusOnButtonPreview()
|
||||
End Sub
|
||||
|
||||
Friend Sub PreviewMachiningTool()
|
||||
Select Case nPreviewMachiningTool
|
||||
Case MCH_LOOK.NONE
|
||||
SetPreviewMachiningTool(MCH_LOOK.TAB_TOOL)
|
||||
SetToolPreview_Image("pack://application:,,,/Resources/ToolPreview/Tool.png")
|
||||
SetSlider_IsEnable(True)
|
||||
Case MCH_LOOK.TAB_TOOL
|
||||
SetPreviewMachiningTool(MCH_LOOK.TAB_HEAD)
|
||||
SetToolPreview_Image("pack://application:,,,/Resources/ToolPreview/Head.png")
|
||||
SetSlider_IsEnable(True)
|
||||
Case MCH_LOOK.TAB_HEAD
|
||||
SetPreviewMachiningTool(MCH_LOOK.NONE)
|
||||
SetToolPreview_Image("pack://application:,,,/Resources/ToolPreview/Delete.png")
|
||||
SetSlider_IsEnable(False)
|
||||
End Select
|
||||
EgtChangePreviewMachiningToolShow(nPreviewMachiningTool)
|
||||
EgtDraw()
|
||||
End Sub
|
||||
|
||||
Friend Sub RevertPreviewMachiningTool()
|
||||
Select Case nPreviewMachiningTool
|
||||
Case MCH_LOOK.NONE
|
||||
SetPreviewMachiningTool(MCH_LOOK.TAB_HEAD)
|
||||
SetToolPreview_Image("pack://application:,,,/Resources/ToolPreview/Head.png")
|
||||
SetSlider_IsEnable(True)
|
||||
Case MCH_LOOK.TAB_TOOL
|
||||
SetPreviewMachiningTool(MCH_LOOK.NONE)
|
||||
SetToolPreview_Image("pack://application:,,,/Resources/ToolPreview/Delete.png")
|
||||
SetSlider_IsEnable(False)
|
||||
Case MCH_LOOK.TAB_HEAD
|
||||
SetPreviewMachiningTool(MCH_LOOK.TAB_TOOL)
|
||||
SetToolPreview_Image("pack://application:,,,/Resources/ToolPreview/Tool.png")
|
||||
SetSlider_IsEnable(True)
|
||||
End Select
|
||||
EgtChangePreviewMachiningToolShow(nPreviewMachiningTool)
|
||||
EgtDraw()
|
||||
End Sub
|
||||
|
||||
#End Region ' Methods
|
||||
|
||||
#Region "COMMANDS"
|
||||
|
||||
#Region "NextStepToolCommand"
|
||||
|
||||
''' <summary>
|
||||
''' Restituisce funzione per ricalcolo lavorazione.
|
||||
''' </summary>
|
||||
Public ReadOnly Property NextStepToolCommand As ICommand
|
||||
Get
|
||||
If m_cmdNextStepTool Is Nothing Then
|
||||
m_cmdNextStepTool = New RelayCommand(AddressOf NextStepTool)
|
||||
End If
|
||||
Return m_cmdNextStepTool
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Ricalcola una lavorazione.
|
||||
''' </summary>
|
||||
Public Sub NextStepTool(ByVal param As Object)
|
||||
If m_bPreviewTool Then
|
||||
Dim nNextId = EgtPreviewMachiningTool(m_nPtEntId, MCH_PTM.AFTER)
|
||||
If nNextId <> GDB_ID.NULL Then m_nPtEntId = nNextId
|
||||
EgtDraw()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' NextStepToolCommand
|
||||
|
||||
#Region "PrevStepToolCommand"
|
||||
|
||||
''' <summary>
|
||||
''' Restituisce funzione per ricalcolo lavorazione.
|
||||
''' </summary>
|
||||
Public ReadOnly Property PrevStepToolCommand As ICommand
|
||||
Get
|
||||
If m_cmdPrevStepTool Is Nothing Then
|
||||
m_cmdPrevStepTool = New RelayCommand(AddressOf PrevStepTool)
|
||||
End If
|
||||
Return m_cmdPrevStepTool
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Ricalcola una lavorazione.
|
||||
''' </summary>
|
||||
Public Sub PrevStepTool(ByVal param As Object)
|
||||
If m_bPreviewTool Then
|
||||
Dim nPrevId = EgtPreviewMachiningTool(m_nPtEntId, MCH_PTM.BEFORE)
|
||||
If nPrevId <> GDB_ID.NULL Then m_nPtEntId = nPrevId
|
||||
EgtDraw()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' PrevStepToolCommand
|
||||
|
||||
#Region "UpdateMachiningCommand"
|
||||
|
||||
''' <summary>
|
||||
@@ -349,66 +432,28 @@ Public Class MachiningParameterExpanderVM
|
||||
MessageBox.Show(EgtMsg(5423) + sErrorList, EgtMsg(30009), MessageBoxButton.OK, MessageBoxImage.Exclamation)
|
||||
Return
|
||||
End If
|
||||
Dim bRecalc As Boolean = ((Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift)
|
||||
' La modifica di alcuni parametri forza il ricalcolo della geometria
|
||||
Dim ModifiedGeometry As Boolean = m_CurrOperation.m_IsModifiedSelectedFaceUseType
|
||||
' aggiorno valori modificati
|
||||
|
||||
' Verifico se forzato ricalcolo da interfaccia
|
||||
Dim bRecalc As Boolean = ((Keyboard.Modifiers And ModifierKeys.Shift) <> 0)
|
||||
|
||||
' Aggiorno parametri di lavorazione
|
||||
m_CurrOperation.WriteOperationParam()
|
||||
' Carico tutta la geometria selezionata in una lista
|
||||
Dim SelectedGeometry As New List(Of Integer)
|
||||
Dim EntityIndex As Integer = EgtGetFirstSelectedObj()
|
||||
While EntityIndex <> GDB_ID.NULL
|
||||
SelectedGeometry.Add(EntityIndex)
|
||||
EntityIndex = EgtGetNextSelectedObj()
|
||||
End While
|
||||
' Gestione speciale per superfici ( si aggiunge l'identificazione della faccia)
|
||||
If SelectedGeometry.Count() > 0 AndAlso
|
||||
(EgtGetType(SelectedGeometry(0)) = GDB_TY.SRF_MESH Or EgtGetType(SelectedGeometry(0)) = GDB_TY.SRF_FRGN) Then
|
||||
' Aggiorno lista speciale con facce
|
||||
SelData.VerifyIdSub()
|
||||
' Verifico se geometria cambiata, confrontando selezione attuale con facet con geometria di lavorazione
|
||||
|
||||
' Imposto geometria da lavorare (tutta quella selezionata)
|
||||
Dim vId(EgtGetSelectedObjCount() - 1) As Integer
|
||||
Dim vSub(EgtGetSelectedObjCount() - 1) As Integer
|
||||
Dim nInd As Integer = 0
|
||||
Dim nMchId, nMchSub As Integer
|
||||
EgtGetMachiningGeometry(nInd, nMchId, nMchSub)
|
||||
Dim nSelId, nSelSub As Integer
|
||||
SelData.GetIdSub(nInd, nSelId, nSelSub)
|
||||
While Not ModifiedGeometry And (nMchId <> GDB_ID.NULL Or nSelId <> GDB_ID.NULL)
|
||||
' Controllo uguaglianza
|
||||
If nMchId <> nSelId Or nMchSub <> nSelSub Then ModifiedGeometry = True
|
||||
' Passo al successivo
|
||||
Dim EntId As Integer = EgtGetFirstSelectedObj()
|
||||
While EntId <> GDB_ID.NULL
|
||||
vId(nInd) = EntId
|
||||
SelData.GetSubFromId(EntId, vSub(nInd))
|
||||
nInd += 1
|
||||
EgtGetMachiningGeometry(nInd, nMchId, nMchSub)
|
||||
SelData.GetIdSub(nInd, nSelId, nSelSub)
|
||||
EntId = EgtGetNextSelectedObj()
|
||||
End While
|
||||
If ModifiedGeometry Then
|
||||
Dim vId() As Integer = Nothing
|
||||
Dim vSub() As Integer = Nothing
|
||||
SelData.GetAllIdSub(vId, vSub)
|
||||
EgtSetMachiningGeometry(vId, vSub)
|
||||
End If
|
||||
' Gestione standard per altre entità (curve, testi, ...)
|
||||
Else
|
||||
' Verifico se geometria cambiata, confrontando selezione attuale con geometria di lavorazione
|
||||
Dim nInd As Integer = 0
|
||||
Dim nMchId, nMchSub As Integer
|
||||
EgtGetMachiningGeometry(nInd, nMchId, nMchSub)
|
||||
Dim nSelId As Integer
|
||||
nSelId = If(nInd < SelectedGeometry.Count(), SelectedGeometry(nInd), GDB_ID.NULL)
|
||||
While Not ModifiedGeometry And (nMchId <> GDB_ID.NULL Or nSelId <> GDB_ID.NULL)
|
||||
' Controllo uguaglianza
|
||||
If nMchId <> nSelId Then ModifiedGeometry = True
|
||||
' Passo al successivo
|
||||
nInd += 1
|
||||
EgtGetMachiningGeometry(nInd, nMchId, nMchSub)
|
||||
nSelId = If(nInd < SelectedGeometry.Count(), SelectedGeometry(nInd), GDB_ID.NULL)
|
||||
End While
|
||||
' Imposto geometria selezionata come geometria di lavorazione
|
||||
If ModifiedGeometry Then
|
||||
EgtSetMachiningGeometry(SelectedGeometry.ToArray)
|
||||
End If
|
||||
End If
|
||||
' Ricalcolo la lavorazione
|
||||
If Not EgtApplyMachining(bRecalc Or ModifiedGeometry) Then
|
||||
|
||||
' Rigenero la lavorazione
|
||||
If Not EgtApplyMachining(bRecalc) Then
|
||||
If EgtGetLastMachMgrErrorId() <> 0 Then
|
||||
Dim sErr As String = EgtGetLastMachMgrErrorString()
|
||||
Dim sInfo As String = String.Empty
|
||||
@@ -427,12 +472,14 @@ Public Class MachiningParameterExpanderVM
|
||||
Map.refStatusBarVM.NotifyStatusOutput("")
|
||||
End If
|
||||
End If
|
||||
|
||||
' Restart visualizzazione utensile
|
||||
If m_bPreviewTool Then
|
||||
EgtPreparePreviewMachiningTool()
|
||||
m_nPtEntId = EgtPreviewMachiningTool(GDB_ID.NULL, MCH_PTM.AFTER)
|
||||
End If
|
||||
IsModified(False) ' NotifyPropertyChanged("UpdateMachiningBtn_Background")
|
||||
EgtChangePreviewMachiningToolShow(nPreviewMachiningTool)
|
||||
SetSliderScale(EgtGetPreviewMachiningToolStepCount())
|
||||
SetSlider_IsEnable(True)
|
||||
ResetSliderValue()
|
||||
IsModified(False)
|
||||
ErrorOnOperation(False)
|
||||
EgtDraw()
|
||||
Map.refProjectVM.EmitTitle()
|
||||
@@ -440,6 +487,23 @@ Public Class MachiningParameterExpanderVM
|
||||
|
||||
#End Region ' UpdateMachiningCommand
|
||||
|
||||
#Region "PreviewMachiningTool_Command"
|
||||
|
||||
Public ReadOnly Property PreviewMachiningTool_Command As ICommand
|
||||
Get
|
||||
If m_cmdPreviewMachiningTool Is Nothing Then
|
||||
m_cmdPreviewMachiningTool = New RelayCommand(AddressOf PreviewMachiningTool)
|
||||
End If
|
||||
Return m_cmdPreviewMachiningTool
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public Sub PreviewMachiningTool(ByVal param As Object)
|
||||
PreviewMachiningTool()
|
||||
End Sub
|
||||
|
||||
#End Region ' PreviewMachiningTool_Command
|
||||
|
||||
#End Region ' Commands
|
||||
|
||||
Private Sub IsModified(IsModified As Boolean) Handles m_CurrOperation.m_IsModified
|
||||
@@ -488,8 +552,12 @@ Public Class OperationParamVisibilityConverter
|
||||
Return TMDbParamVisibility.Chiseling(CInt(parameter))
|
||||
Case MCH_OY.SURFFINISHING
|
||||
Return TMDbParamVisibility.SurfFinishing(CInt(parameter))
|
||||
Case MCH_OY.SURFROUGHING
|
||||
Return TMDbParamVisibility.SurfRoughing(CInt(parameter))
|
||||
Case MCH_OY.WATERJETTING
|
||||
Return TMDbParamVisibility.WaterJetting(CInt(parameter))
|
||||
Case MCH_OY.FIVEAXISMILLING
|
||||
Return TMDbParamVisibility.FiveAxMachining(CInt(parameter))
|
||||
Case Else
|
||||
Return Visibility.Hidden
|
||||
End Select
|
||||
|
||||
+111
-40
@@ -76,19 +76,18 @@
|
||||
<StackPanel Name="OperationParametersStackPanel">
|
||||
<StackPanel Name="OperationFirstParametersStackPanel">
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding DepthStrTxBl}" Style="{DynamicResource MPExpander_DepthTxBlMargin}"/>
|
||||
<TextBlock Text="{Binding DepthStrTxBl}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBlMargin}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding DepthStr, UpdateSourceTrigger=PropertyChanged,
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding WorkSideTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding WorkSideTxBl}"
|
||||
ParamCmBxList="{Binding Path=WorkSideList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -116,33 +115,28 @@
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding StepTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding StepTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=StepTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedStepType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepParTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepParTxBl}"
|
||||
ParamTxBx="{Binding Path=StepPar,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSr,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSl,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -150,36 +144,52 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertToolDirTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertToolDirTxBl}"
|
||||
ParamChBx="{Binding Path=InvertToolDir,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding FaceUseTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding FaceUseTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=FaceUseTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedFaceUseType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -187,13 +197,80 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding LeadInTypeMsg}" Name="LeadInTypeMsg"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=StartAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -204,8 +281,7 @@
|
||||
<Expander Header="{Binding LeadOutTypeMsg}" Name="LeadOutType"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=EndAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -218,32 +294,27 @@
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SpeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class MortisingParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class MortisingParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class MortisingParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class MortisingParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+119
-53
@@ -81,8 +81,7 @@
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -109,59 +108,50 @@
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SubTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SubTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SubTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSubType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepParTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepParTxBl}"
|
||||
ParamTxBx="{Binding Path=StepPar,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SideStepTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideStepTxBl}"
|
||||
ParamTxBx="{Binding Path=SideStep,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSl,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSr,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EpicyclesRadTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSl,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EpicyclesRadTxBl}"
|
||||
ParamTxBx="{Binding Path=EpicyclesRad,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"
|
||||
Visibility="{Binding Epicycles_Visibility}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EpicyclesDistTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EpicyclesDistTxBl}"
|
||||
ParamTxBx="{Binding Path=EpicyclesDist,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"
|
||||
Visibility="{Binding Epicycles_Visibility}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SideAngleTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideAngleTxBl}"
|
||||
ParamTxBx="{Binding Path=SideAngle,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -169,29 +159,46 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertToolDirTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertToolDirTxBl}"
|
||||
ParamChBx="{Binding Path=InvertToolDir,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -199,12 +206,79 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadInTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -212,14 +286,12 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiTangTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiTangTxBl}"
|
||||
ParamTxBx="{Binding Path=LiTang,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiElevTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiElevTxBl}"
|
||||
ParamTxBx="{Binding Path=LiElev,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -229,8 +301,7 @@
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadOutTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -238,8 +309,7 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LoTangTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoTangTxBl}"
|
||||
ParamTxBx="{Binding Path=LoTang,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -252,38 +322,34 @@
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SpeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Interactivity:Interaction.Behaviors>
|
||||
<EgtCAM5:AutomaticCloseExpander/>
|
||||
</Interactivity:Interaction.Behaviors>
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class PocketingParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class PocketingParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class PocketingParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class PocketingParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+275
@@ -0,0 +1,275 @@
|
||||
<UserControl x:Class="ProbingParameterExpanderV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:sys="clr-namespace:System;assembly=mscorlib"
|
||||
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
|
||||
xmlns:EgtCAM5="clr-namespace:EgtCAM5"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
|
||||
|
||||
<UserControl.Resources>
|
||||
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
|
||||
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
|
||||
<sys:Int32 x:Key="Invert">0</sys:Int32>
|
||||
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
|
||||
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
|
||||
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
|
||||
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
|
||||
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
|
||||
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
|
||||
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
|
||||
<sys:Int32 x:Key="StepType">8</sys:Int32>
|
||||
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
|
||||
<sys:Int32 x:Key="Speed">10</sys:Int32>
|
||||
<sys:Int32 x:Key="Feed">11</sys:Int32>
|
||||
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
|
||||
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
|
||||
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
|
||||
<sys:Int32 x:Key="OffSr">15</sys:Int32>
|
||||
<sys:Int32 x:Key="OffSl">16</sys:Int32>
|
||||
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
|
||||
<sys:Int32 x:Key="Approx">18</sys:Int32>
|
||||
<sys:Int32 x:Key="StartPos">19</sys:Int32>
|
||||
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
|
||||
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
|
||||
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
|
||||
<sys:Int32 x:Key="StepPar">23</sys:Int32>
|
||||
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
|
||||
<sys:Int32 x:Key="TabLen">25</sys:Int32>
|
||||
<sys:Int32 x:Key="TabDist">26</sys:Int32>
|
||||
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
|
||||
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
|
||||
<sys:Int32 x:Key="LiTang">29</sys:Int32>
|
||||
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
|
||||
<sys:Int32 x:Key="LiElev">31</sys:Int32>
|
||||
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
|
||||
<sys:Int32 x:Key="LoTang">33</sys:Int32>
|
||||
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
|
||||
<sys:Int32 x:Key="LoElev">35</sys:Int32>
|
||||
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
|
||||
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
|
||||
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
|
||||
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
|
||||
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
|
||||
<sys:Int32 x:Key="SideStep">41</sys:Int32>
|
||||
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
|
||||
<sys:Int32 x:Key="NamePar">43</sys:Int32>
|
||||
<sys:Int32 x:Key="Tool">44</sys:Int32>
|
||||
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
|
||||
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
|
||||
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
|
||||
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
|
||||
<sys:Int32 x:Key="SubType">49</sys:Int32>
|
||||
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
|
||||
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
|
||||
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
|
||||
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
|
||||
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
|
||||
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
|
||||
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
|
||||
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
|
||||
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
|
||||
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
|
||||
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
|
||||
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
|
||||
</UserControl.Resources>
|
||||
|
||||
<StackPanel Name="OperationParametersStackPanel">
|
||||
<StackPanel Name="OperationFirstParametersStackPanel">
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding DepthStrTxBl}" Style="{DynamicResource MPExpander_DepthTxBlMargin}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding DepthStr, UpdateSourceTrigger=PropertyChanged,
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding UserNotesTxBl}"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding UserNotes, UpdateSourceTrigger=PropertyChanged}"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBxMargin}">
|
||||
<EgtWPFLib5:EgtTextBox.ToolTip>
|
||||
<TextBlock Text="{Binding UserNotesTooltip}"/>
|
||||
</EgtWPFLib5:EgtTextBox.ToolTip>
|
||||
</EgtWPFLib5:EgtTextBox>
|
||||
<TextBlock Text="{Binding SystemNotesTxBl}"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"
|
||||
Visibility="{Binding SysNotes_Visibility}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding SystemNotes, UpdateSourceTrigger=PropertyChanged}"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBxMargin}"
|
||||
Visibility="{Binding SysNotes_Visibility}"
|
||||
IsReadOnly="True"/>
|
||||
</UniformGrid>
|
||||
</StackPanel>
|
||||
<StackPanel Name="AutomaticCloseExpanderStackPanel">
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SubTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SubTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSubType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertToolDirTxBl}"
|
||||
ParamChBx="{Binding Path=InvertToolDir,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
Mode=OneWay}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
<Interactivity:Interaction.Behaviors>
|
||||
<EgtCAM5:AutomaticCloseExpander/>
|
||||
</Interactivity:Interaction.Behaviors>
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
|
||||
</UserControl>
|
||||
+83
@@ -0,0 +1,83 @@
|
||||
Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class ProbingParameterExpanderV
|
||||
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
End Sub
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
m_bSizeChanging = False
|
||||
End Sub
|
||||
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
For Index = 0 To AutomaticCloseExpanderStackPanel.Children.Count - 1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
Dim IndexedExpander As Expander = DirectCast(AutomaticCloseExpanderStackPanel.Children(Index), Expander)
|
||||
If IndexedExpander.IsExpanded Then
|
||||
OpenedExpanderList.Add(True)
|
||||
IndexedExpander.IsExpanded = False
|
||||
Dim CurrExpanderContent As FrameworkElement = DirectCast(IndexedExpander.Content, FrameworkElement)
|
||||
CurrExpanderContent.Measure(New Size(Double.PositiveInfinity, Double.PositiveInfinity))
|
||||
AutomaticCloseExpanderStackPanelHeight -= CurrExpanderContent.DesiredSize.Height
|
||||
' Sottraggo anche i padding
|
||||
AutomaticCloseExpanderStackPanelHeight -= (IndexedExpander.Padding.Top + IndexedExpander.Padding.Bottom)
|
||||
Else
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Else
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
Dim IndexedExpander As Expander = DirectCast(AutomaticCloseExpanderStackPanel.Children(Index), Expander)
|
||||
If OpenedExpanderList(Index) Then
|
||||
IndexedExpander.IsExpanded = True
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
' Funzione che permette di trovare il primo contenitore di tipo T di un elemento grafico dependencyObject
|
||||
Public Function FindAncestor(Of T As Class)(dependencyObject As DependencyObject) As T
|
||||
Dim target As DependencyObject = dependencyObject
|
||||
Do
|
||||
target = LogicalTreeHelper.GetParent(target)
|
||||
Loop While target IsNot Nothing AndAlso Not (TypeOf target Is T)
|
||||
If IsNothing(target) Then
|
||||
target = dependencyObject
|
||||
Do
|
||||
target = VisualTreeHelper.GetParent(target)
|
||||
Loop While target IsNot Nothing AndAlso Not (TypeOf target Is T)
|
||||
End If
|
||||
Return TryCast(target, T)
|
||||
End Function
|
||||
|
||||
End Class
|
||||
+104
-29
@@ -103,38 +103,32 @@
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding ReturnPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding ReturnPosTxBl}"
|
||||
ParamTxBx="{Binding Path=ReturnPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding ThrouAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding ThrouAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=ThrouAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepParTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepParTxBl}"
|
||||
ParamTxBx="{Binding Path=StepPar,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartSlowLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartSlowLenTxBl}"
|
||||
ParamTxBx="{Binding Path=StartSlowLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndSlowLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndSlowLenTxBl}"
|
||||
ParamTxBx="{Binding Path=EndSlowLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -142,23 +136,41 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -166,6 +178,74 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
@@ -173,32 +253,27 @@
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SpeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class StoneDrillingParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class StoneDrillingParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class StoneDrillingParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class StoneDrillingParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+104
-29
@@ -81,14 +81,12 @@
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding WorkSideTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding WorkSideTxBl}"
|
||||
ParamCmBxList="{Binding Path=WorkSideList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -116,28 +114,24 @@
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadInTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedLeadInType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadOutTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedLeadOutType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepParTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepParTxBl}"
|
||||
ParamTxBx="{Binding Path=StepPar,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -146,23 +140,41 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -170,6 +182,74 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
@@ -177,32 +257,27 @@
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SpeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class StoneMillingParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class StoneMillingParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class StoneMillingParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class StoneMillingParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+105
-31
@@ -81,14 +81,12 @@
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SubTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SubTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SubTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -126,8 +124,7 @@
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadLinkTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadLinkTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadLinkTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -137,23 +134,41 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -161,28 +176,93 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding StepGpBxLbl}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding StepTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding StepTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=StepTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedStepType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepParTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepParTxBl}"
|
||||
ParamTxBx="{Binding Path=StepPar,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SideStepTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideStepTxBl}"
|
||||
ParamTxBx="{Binding Path=SideStep,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -213,38 +293,32 @@
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SpeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding VertFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding VertFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=VertFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class StoneSawFinishingParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class StoneSawFinishingParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class StoneSawFinishingParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class StoneSawFinishingParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+105
-31
@@ -82,15 +82,13 @@
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding StepTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding StepTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=StepTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedStepType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
|
||||
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding UserNotesTxBl}"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
@@ -113,8 +111,7 @@
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding HeadSideTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding HeadSideTxBl}"
|
||||
ParamCmBxList="{Binding Path=HeadSideList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -126,34 +123,50 @@
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding ExtLinkTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=ExtLinkTypeList,
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding ExtLinkTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadLinkTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedExtLinkType}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedLeadLinkType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -161,19 +174,85 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding StepGpBxLbl}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepParTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepParTxBl}"
|
||||
ParamTxBx="{Binding Path=StepPar,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SideStepTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideStepTxBl}"
|
||||
ParamTxBx="{Binding Path=SideStep,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -209,32 +288,27 @@
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SpeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class StoneSawRoughingParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class StoneSawRoughingParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class StoneSawRoughingParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class StoneSawRoughingParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+121
-63
@@ -81,8 +81,7 @@
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -110,35 +109,30 @@
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding WorkSideTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding WorkSideTxBl}"
|
||||
ParamCmBxList="{Binding Path=WorkSideList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedWorkSide}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding HeadSideTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding HeadSideTxBl}"
|
||||
ParamCmBxList="{Binding Path=HeadSideList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedHeadSide}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding ExtLinkTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding ExtLinkTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=ExtLinkTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedExtLinkType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SideAngleTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideAngleTxBl}"
|
||||
ParamTxBx="{Binding Path=SideAngle,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -146,23 +140,41 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -170,12 +182,79 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadInTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -183,20 +262,17 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=StartAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiTangStoneTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiTangStoneTxBl}"
|
||||
ParamTxBx="{Binding Path=LiTang,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiElevStoneTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiElevStoneTxBl}"
|
||||
ParamTxBx="{Binding Path=LiElev,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -206,8 +282,7 @@
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadOutTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -215,8 +290,7 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=EndAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -229,51 +303,43 @@
|
||||
<TextBlock Text="{Binding StepGpBxLbl}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding StepTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding StepTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=StepTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedStepType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepParTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepParTxBl}"
|
||||
ParamTxBx="{Binding Path=StepPar,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepBackTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepBackTxBl}"
|
||||
ParamTxBx="{Binding Path=StepBack,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepSideAngTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepSideAngTxBl}"
|
||||
ParamTxBx="{Binding Path=StepSideAng,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepSideAngBackTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepSideAngBackTxBl}"
|
||||
ParamTxBx="{Binding Path=StepSideAngBack,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepIntArcTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepIntArcTxBl}"
|
||||
ParamTxBx="{Binding Path=StepIntArc,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepExtArcTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepExtArcTxBl}"
|
||||
ParamTxBx="{Binding Path=StepExtArc,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepLastTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepLastTxBl}"
|
||||
ParamTxBx="{Binding Path=StepLast,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -284,8 +350,7 @@
|
||||
<Expander Header="{Binding OffsetGpBxLbl}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSl,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -299,44 +364,37 @@
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SpeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BackFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BackFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=BackFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SideAngFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideAngFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=SideAngFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class StoneSawingParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class StoneSawingParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class StoneSawingParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class StoneSawingParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+112
-52
@@ -81,21 +81,18 @@
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SubTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SubTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SubTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSubType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OverLapTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OverLapTxBl}"
|
||||
ParamTxBx="{Binding Path=OverLap,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -122,39 +119,27 @@
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadLinkTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadLinkTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedLeadLinkType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SideAngleTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideAngleTxBl}"
|
||||
ParamTxBx="{Binding Path=SideAngle,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SideStepTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideStepTxBl}"
|
||||
ParamTxBx="{Binding Path=SideStep,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSr,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding ApproxTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding ApproxTxBl}"
|
||||
ParamTxBx="{Binding Path=Approx,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -162,23 +147,41 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -186,12 +189,79 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadInTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -199,14 +269,12 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiTangTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiTangTxBl}"
|
||||
ParamTxBx="{Binding Path=LiTang,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiPerpTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiPerpTxBl}"
|
||||
ParamTxBx="{Binding Path=LiPerp,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -216,8 +284,7 @@
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadOutTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -225,14 +292,12 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LoTangTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoTangTxBl}"
|
||||
ParamTxBx="{Binding Path=LoTang,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LoPerpTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoPerpTxBl}"
|
||||
ParamTxBx="{Binding Path=LoPerp,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -245,32 +310,27 @@
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SpeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class SurfFinishingParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class SurfFinishingParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class SurfFinishingParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class SurfFinishingParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+351
@@ -0,0 +1,351 @@
|
||||
<UserControl x:Class="SurfRoughingParameterExpanderV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:sys="clr-namespace:System;assembly=mscorlib"
|
||||
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
|
||||
xmlns:EgtCAM5="clr-namespace:EgtCAM5"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
|
||||
|
||||
<UserControl.Resources>
|
||||
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
|
||||
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
|
||||
<sys:Int32 x:Key="Invert">0</sys:Int32>
|
||||
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
|
||||
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
|
||||
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
|
||||
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
|
||||
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
|
||||
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
|
||||
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
|
||||
<sys:Int32 x:Key="StepType">8</sys:Int32>
|
||||
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
|
||||
<sys:Int32 x:Key="Speed">10</sys:Int32>
|
||||
<sys:Int32 x:Key="Feed">11</sys:Int32>
|
||||
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
|
||||
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
|
||||
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
|
||||
<sys:Int32 x:Key="OffSr">15</sys:Int32>
|
||||
<sys:Int32 x:Key="OffSl">16</sys:Int32>
|
||||
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
|
||||
<sys:Int32 x:Key="Approx">18</sys:Int32>
|
||||
<sys:Int32 x:Key="StartPos">19</sys:Int32>
|
||||
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
|
||||
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
|
||||
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
|
||||
<sys:Int32 x:Key="StepPar">23</sys:Int32>
|
||||
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
|
||||
<sys:Int32 x:Key="TabLen">25</sys:Int32>
|
||||
<sys:Int32 x:Key="TabDist">26</sys:Int32>
|
||||
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
|
||||
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
|
||||
<sys:Int32 x:Key="LiTang">29</sys:Int32>
|
||||
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
|
||||
<sys:Int32 x:Key="LiElev">31</sys:Int32>
|
||||
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
|
||||
<sys:Int32 x:Key="LoTang">33</sys:Int32>
|
||||
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
|
||||
<sys:Int32 x:Key="LoElev">35</sys:Int32>
|
||||
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
|
||||
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
|
||||
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
|
||||
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
|
||||
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
|
||||
<sys:Int32 x:Key="SideStep">41</sys:Int32>
|
||||
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
|
||||
<sys:Int32 x:Key="NamePar">43</sys:Int32>
|
||||
<sys:Int32 x:Key="Tool">44</sys:Int32>
|
||||
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
|
||||
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
|
||||
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
|
||||
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
|
||||
<sys:Int32 x:Key="SubType">49</sys:Int32>
|
||||
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
|
||||
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
|
||||
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
|
||||
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
|
||||
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
|
||||
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
|
||||
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
|
||||
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
|
||||
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
|
||||
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
|
||||
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
|
||||
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
|
||||
</UserControl.Resources>
|
||||
|
||||
<StackPanel Name="OperationParametersStackPanel">
|
||||
<StackPanel Name="OperationFirstParametersStackPanel">
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding DepthStrTxBl}" Style="{DynamicResource MPExpander_DepthTxBlMargin}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding DepthStr, UpdateSourceTrigger=PropertyChanged,
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SubTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SubTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSubType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding UserNotesTxBl}"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding UserNotes, UpdateSourceTrigger=PropertyChanged}"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBxMargin}">
|
||||
<EgtWPFLib5:EgtTextBox.ToolTip>
|
||||
<TextBlock Text="{Binding UserNotesTooltip}"/>
|
||||
</EgtWPFLib5:EgtTextBox.ToolTip>
|
||||
</EgtWPFLib5:EgtTextBox>
|
||||
<TextBlock Text="{Binding SystemNotesTxBl}"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"
|
||||
Visibility="{Binding SysNotes_Visibility}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding SystemNotes, UpdateSourceTrigger=PropertyChanged}"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBxMargin}"
|
||||
Visibility="{Binding SysNotes_Visibility}"
|
||||
IsReadOnly="True"/>
|
||||
</UniformGrid>
|
||||
</StackPanel>
|
||||
<StackPanel Name="AutomaticCloseExpanderStackPanel">
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideAngleTxBl}"
|
||||
ParamTxBx="{Binding Path=SideAngle,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepParTxBl}"
|
||||
ParamTxBx="{Binding Path=StepPar,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SubStepTxBl}"
|
||||
ParamTxBx="{Binding Path=SubStep,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideStepTxBl}"
|
||||
ParamTxBx="{Binding Path=SideStep,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSr,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSl,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding ApproxTxBl}"
|
||||
ParamTxBx="{Binding Path=Approx,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
Mode=OneWay}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadInTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedLeadInType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiTangTxBl}"
|
||||
ParamTxBx="{Binding Path=LiTang,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiElevTxBl}"
|
||||
ParamTxBx="{Binding Path=LiElev,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadOutTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedLeadOutType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoTangTxBl}"
|
||||
ParamTxBx="{Binding Path=LoTang,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
<Interactivity:Interaction.Behaviors>
|
||||
<EgtCAM5:AutomaticCloseExpander/>
|
||||
</Interactivity:Interaction.Behaviors>
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
|
||||
</UserControl>
|
||||
+83
@@ -0,0 +1,83 @@
|
||||
Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class SurfRoughingParameterExpanderV
|
||||
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
End Sub
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
m_bSizeChanging = False
|
||||
End Sub
|
||||
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
For Index = 0 To AutomaticCloseExpanderStackPanel.Children.Count - 1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
Dim IndexedExpander As Expander = DirectCast(AutomaticCloseExpanderStackPanel.Children(Index), Expander)
|
||||
If IndexedExpander.IsExpanded Then
|
||||
OpenedExpanderList.Add(True)
|
||||
IndexedExpander.IsExpanded = False
|
||||
Dim CurrExpanderContent As FrameworkElement = DirectCast(IndexedExpander.Content, FrameworkElement)
|
||||
CurrExpanderContent.Measure(New Size(Double.PositiveInfinity, Double.PositiveInfinity))
|
||||
AutomaticCloseExpanderStackPanelHeight -= CurrExpanderContent.DesiredSize.Height
|
||||
' Sottraggo anche i padding
|
||||
AutomaticCloseExpanderStackPanelHeight -= (IndexedExpander.Padding.Top + IndexedExpander.Padding.Bottom)
|
||||
Else
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Else
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
Dim IndexedExpander As Expander = DirectCast(AutomaticCloseExpanderStackPanel.Children(Index), Expander)
|
||||
If OpenedExpanderList(Index) Then
|
||||
IndexedExpander.IsExpanded = True
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
' Funzione che permette di trovare il primo contenitore di tipo T di un elemento grafico dependencyObject
|
||||
Public Function FindAncestor(Of T As Class)(dependencyObject As DependencyObject) As T
|
||||
Dim target As DependencyObject = dependencyObject
|
||||
Do
|
||||
target = LogicalTreeHelper.GetParent(target)
|
||||
Loop While target IsNot Nothing AndAlso Not (TypeOf target Is T)
|
||||
If IsNothing(target) Then
|
||||
target = dependencyObject
|
||||
Do
|
||||
target = VisualTreeHelper.GetParent(target)
|
||||
Loop While target IsNot Nothing AndAlso Not (TypeOf target Is T)
|
||||
End If
|
||||
Return TryCast(target, T)
|
||||
End Function
|
||||
|
||||
End Class
|
||||
+114
-49
@@ -76,21 +76,18 @@
|
||||
<StackPanel Name="OperationParametersStackPanel">
|
||||
<StackPanel Name="OperationFirstParametersStackPanel">
|
||||
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding WorkSideTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding WorkSideTxBl}"
|
||||
ParamCmBxList="{Binding Path=WorkSideList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedWorkSide}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding ForwardAngleTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding ForwardAngleTxBl}"
|
||||
ParamTxBx="{Binding Path=ForwardAngle,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -117,8 +114,7 @@
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SideAngleTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideAngleTxBl}"
|
||||
ParamTxBx="{Binding Path=SideAngle,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -126,23 +122,41 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -150,12 +164,79 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadInTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -163,22 +244,19 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=StartAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiTangTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiTangTxBl}"
|
||||
ParamTxBx="{Binding Path=LiTang,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiPerpTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiPerpTxBl}"
|
||||
ParamTxBx="{Binding Path=LiPerp,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -216,8 +294,7 @@
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadOutTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -225,20 +302,17 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=EndAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LoTangTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoTangTxBl}"
|
||||
ParamTxBx="{Binding Path=LoTang,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LoPerpTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoPerpTxBl}"
|
||||
ParamTxBx="{Binding Path=LoPerp,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -250,31 +324,27 @@
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding ExtCornTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding ExtCornTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=ExtCornTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedExtCornType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding IntCornTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding IntCornTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=IntCornTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedIntCornType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding CornSlowLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding CornSlowLenTxBl}"
|
||||
ParamTxBx="{Binding Path=CornSlowLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding CornSlowPercTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding CornSlowPercTxBl}"
|
||||
ParamTxBx="{Binding Path=CornSlowPerc,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -284,8 +354,7 @@
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding ProbingGpBxLbl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding ProbingGpBxLbl}"
|
||||
ParamChBx="{Binding Path=Probing,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -310,8 +379,7 @@
|
||||
<Expander Header="{Binding OffsetGpBxLbl}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSr,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -324,20 +392,17 @@
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding ThicknessFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding ThicknessFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=ThicknessFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class WaterjettingParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class WaterjettingParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class WaterjettingParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class WaterjettingParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+105
-31
@@ -81,8 +81,7 @@
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -109,38 +108,32 @@
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding ReturnPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding ReturnPosTxBl}"
|
||||
ParamTxBx="{Binding Path=ReturnPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding ThrouAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding ThrouAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=ThrouAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepParTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepParTxBl}"
|
||||
ParamTxBx="{Binding Path=StepPar,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartSlowLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartSlowLenTxBl}"
|
||||
ParamTxBx="{Binding Path=StartSlowLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndSlowLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndSlowLenTxBl}"
|
||||
ParamTxBx="{Binding Path=EndSlowLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -148,23 +141,41 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -172,6 +183,74 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
@@ -179,32 +258,27 @@
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SpeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class WoodDrillingParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class WoodDrillingParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class WoodDrillingParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class WoodDrillingParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+131
-83
@@ -81,14 +81,12 @@
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding WorkSideTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding WorkSideTxBl}"
|
||||
ParamCmBxList="{Binding Path=WorkSideList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -116,39 +114,33 @@
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OverLapTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OverLapTxBl}"
|
||||
ParamTxBx="{Binding Path=OverLap,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding StepTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding StepTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=StepTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedStepType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepParTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepParTxBl}"
|
||||
ParamTxBx="{Binding Path=StepPar,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSr,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSl,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -156,36 +148,52 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertToolDirTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertToolDirTxBl}"
|
||||
ParamChBx="{Binding Path=InvertToolDir,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding FaceUseTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding FaceUseTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=FaceUseTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedFaceUseType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -193,12 +201,79 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadInTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -206,32 +281,27 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=StartAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiTangTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiTangTxBl}"
|
||||
ParamTxBx="{Binding Path=LiTang,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiPerpTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiPerpTxBl}"
|
||||
ParamTxBx="{Binding Path=LiPerp,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiElevTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiElevTxBl}"
|
||||
ParamTxBx="{Binding Path=LiElev,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LiCompLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiCompLenTxBl}"
|
||||
ParamTxBx="{Binding Path=LiCompLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -241,8 +311,7 @@
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadOutTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -250,32 +319,27 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=EndAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LoTangTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoTangTxBl}"
|
||||
ParamTxBx="{Binding Path=LoTang,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LoPerpTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoPerpTxBl}"
|
||||
ParamTxBx="{Binding Path=LoPerp,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LoElevTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoElevTxBl}"
|
||||
ParamTxBx="{Binding Path=LoElev,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding LoCompLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoCompLenTxBl}"
|
||||
ParamTxBx="{Binding Path=LoCompLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -285,51 +349,44 @@
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding LeaveTabTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding LeaveTabTxBl}"
|
||||
ParamChBx="{Binding Path=LeaveTab,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel Margin="2">
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TabLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabLenTxBl}"
|
||||
ParamTxBx="{Binding Path=TabLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamErrorMsg="{Binding Path=TabLenErrorMsg}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TabHeightTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabHeightTxBl}"
|
||||
ParamTxBx="{Binding Path=TabHeight,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamErrorMsg="{Binding Path=TabHeightErrorMsg}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TabAngleTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabAngleTxBl}"
|
||||
ParamTxBx="{Binding Path=TabAngle,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamErrorMsg="{Binding Path=TabAngleErrorMsg}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TabDistTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabDistTxBl}"
|
||||
ParamTxBx="{Binding Path=TabDist,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamErrorMsg="{Binding Path=TabDistErrorMsg}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TabMinTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabMinTxBl}"
|
||||
ParamTxBx="{Binding Path=TabMin,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamErrorMsg="{Binding Path=TabMinErrorMsg}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TabMaxTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TabMaxTxBl}"
|
||||
ParamTxBx="{Binding Path=TabMax,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -340,28 +397,24 @@
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding OscEnableTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding OscEnableTxBl}"
|
||||
ParamChBx="{Binding Path=OscEnable,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel Margin="2">
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OscHeightTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OscHeightTxBl}"
|
||||
ParamTxBx="{Binding Path=OscHeight,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OscRampLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OscRampLenTxBl}"
|
||||
ParamTxBx="{Binding Path=OscRampLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OscFlatLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OscFlatLenTxBl}"
|
||||
ParamTxBx="{Binding Path=OscFlatLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -374,33 +427,28 @@
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SpeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamErrorMsg="{Binding Path=SpeedErrorMsg}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class WoodMillingParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class WoodMillingParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class WoodMillingParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class WoodMillingParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+113
-47
@@ -81,21 +81,18 @@
|
||||
Converter={StaticResource DepthUnitConverter}}"
|
||||
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
|
||||
</UniformGrid>
|
||||
<EgtWPFLib5:CheckParamV
|
||||
ParamTxBl="{Binding InvertTxBl}"
|
||||
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
|
||||
ParamChBx="{Binding Path=Invert,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource CheckParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding WorkSideTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding WorkSideTxBl}"
|
||||
ParamCmBxList="{Binding Path=WorkSideList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedWorkSide}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding HeadSideTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding HeadSideTxBl}"
|
||||
ParamCmBxList="{Binding Path=HeadSideList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -123,33 +120,28 @@
|
||||
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartPosTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
|
||||
ParamTxBx="{Binding Path=StartPos,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding StepTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding StepTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=StepTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedStepType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StepParTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepParTxBl}"
|
||||
ParamTxBx="{Binding Path=StepPar,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SideAngleTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideAngleTxBl}"
|
||||
ParamTxBx="{Binding Path=SideAngle,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
|
||||
ParamTxBx="{Binding Path=OffSl,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -157,23 +149,41 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<Expander Header="{Binding AdvancedParamMsg}" Name="AdvancedParam"
|
||||
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
|
||||
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
|
||||
<Expander.Header>
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding AdvancedParamMsg}"
|
||||
Margin="2.5"/>
|
||||
<Button Command="{Binding ShowNoteListComboCommand}"
|
||||
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
|
||||
Visibility="{Binding ShowNoteListCombo_Visibility}"
|
||||
ToolTip="{Binding ShowNoteToolTip}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="2.5,2.5,7,2.5"
|
||||
Width="20">
|
||||
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</UniformGrid>
|
||||
</Expander.Header>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding InitAngsTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
|
||||
ParamTxBx="{Binding Path=InitAngs,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
|
||||
ParamTxBx="{Binding Path=BlockedAxis,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=SolChoiceTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -181,12 +191,79 @@
|
||||
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</StackPanel>
|
||||
<Grid Grid.Row="1" Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ItemsControl ItemsSource="{Binding NotesList}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="0,5.5,29,0"
|
||||
Width="82"
|
||||
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
|
||||
<TabControl SelectedIndex="{Binding SelTypeValue}"
|
||||
Grid.Column="1"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent">
|
||||
<TabControl.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type TabItem}">
|
||||
<Setter Property="Visibility" Value="Collapsed"/>
|
||||
</Style>
|
||||
</TabControl.ItemContainerStyle>
|
||||
<TabItem Header="TEXT">
|
||||
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsReadOnly="False"/>
|
||||
</TabItem>
|
||||
<TabItem Header="CHECKBOX">
|
||||
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</TabItem>
|
||||
<TabItem Header="COMBOBOX">
|
||||
<ComboBox ItemsSource="{Binding ListKeyValue}"
|
||||
SelectedItem="{Binding SelKeyValue, UpdateSourceTrigger=PropertyChanged}"
|
||||
DisplayMemberPath="KeyValue"/>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
<Button Command="{Binding RemoveItemNoteCommand}"
|
||||
Grid.Column="2"
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="5,0,0,0">
|
||||
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<ComboBox ItemsSource="{Binding NotesListCombo}"
|
||||
SelectedItem="{Binding SelNoteItemCombo}"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="1"
|
||||
Visibility="{Binding ComboAddVisibility}">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Description}"
|
||||
Margin="2.5"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadInTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadInTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -194,8 +271,7 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=StartAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -205,8 +281,7 @@
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadOutTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=LeadOutTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -214,8 +289,7 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndAddLenTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndAddLenTxBl}"
|
||||
ParamTxBx="{Binding Path=EndAddLen,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -223,8 +297,7 @@
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding ExtLinkTypeTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding ExtLinkTypeTxBl}"
|
||||
ParamCmBxList="{Binding Path=ExtLinkTypeList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -234,8 +307,7 @@
|
||||
|
||||
<Expander Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.Header>
|
||||
<EgtWPFLib5:ComboParamV
|
||||
ParamTxBl="{Binding CurveUseTxBl}"
|
||||
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding CurveUseTxBl}"
|
||||
ParamCmBxList="{Binding Path=CurveUseList,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True,
|
||||
@@ -244,8 +316,7 @@
|
||||
Style="{DynamicResource ComboParamV_Margin}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel Margin="2">
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding ApproxTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding ApproxTxBl}"
|
||||
ParamTxBx="{Binding Path=Approx,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
@@ -258,32 +329,27 @@
|
||||
<TextBlock Text="{Binding ToolExpanderHeader}"/>
|
||||
</Expander.Header>
|
||||
<StackPanel>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding SpeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Speed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding FeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
|
||||
ParamTxBx="{Binding Path=Feed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding TipFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=TipFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding StartFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=StartFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
Style="{DynamicResource StringParamV_Margin}"/>
|
||||
<EgtWPFLib5:StringParamV
|
||||
ParamTxBl="{Binding EndFeedTxBl}"
|
||||
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
|
||||
ParamTxBx="{Binding Path=EndFeed,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
ValidatesOnDataErrors=True}"
|
||||
|
||||
+7
-6
@@ -3,17 +3,17 @@ Imports EgtWPFLib5.EgtFloating
|
||||
|
||||
Public Class WoodSawingParameterExpanderV
|
||||
|
||||
Private EgtFloatingTray As EgtFloatingTray
|
||||
Private m_RightTrayV As RightTrayV
|
||||
Private EgtFloatingPanel As EgtFloatingPanel
|
||||
|
||||
Private m_bFirst As Boolean = True
|
||||
|
||||
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
If m_bFirst Then
|
||||
EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
|
||||
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
|
||||
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
|
||||
AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.ActualHeight
|
||||
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
|
||||
PanelHeight = EgtFloatingPanel.DesiredSize.Height
|
||||
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
|
||||
m_bFirst = False
|
||||
End If
|
||||
@@ -22,7 +22,7 @@ Public Class WoodSawingParameterExpanderV
|
||||
|
||||
Dim m_bSizeChanging As Boolean = False
|
||||
|
||||
Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
|
||||
If m_bSizeChanging Then Return
|
||||
m_bSizeChanging = True
|
||||
CalculateOperationParametersStackPanelMaxHeight()
|
||||
@@ -32,6 +32,7 @@ Public Class WoodSawingParameterExpanderV
|
||||
Dim PanelHeight As Double = 0
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
|
||||
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
|
||||
Private Sub CalculateOperationParametersStackPanelMaxHeight()
|
||||
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
|
||||
Dim OpenedExpanderList As New List(Of Boolean)
|
||||
@@ -53,7 +54,7 @@ Public Class WoodSawingParameterExpanderV
|
||||
OpenedExpanderList.Add(False)
|
||||
End If
|
||||
Next
|
||||
Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
|
||||
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
|
||||
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
|
||||
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
|
||||
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
|
||||
|
||||
+25
@@ -28,6 +28,31 @@ Public Class DispositionOpListBoxItem
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Public Property OnOffAll As Boolean?
|
||||
Get
|
||||
Dim OpIndexes As List(Of Integer) = GetOpIndexes()
|
||||
' Ritorno il valore specificato in base agli stati delle operazioni di cui abbiamo raccolto gli indici
|
||||
If OpIndexes.Count = 0 Then Return False
|
||||
Dim bTemp As Boolean = DirectCast(Map.refOperationsListExpanderVM.OperationList.Item(OpIndexes(0)), MachiningOpListBoxItem).OnOff
|
||||
For OpInDispIndex = 1 To OpIndexes.Count - 1
|
||||
If DirectCast(Map.refOperationsListExpanderVM.OperationList.Item(OpIndexes(OpInDispIndex)), MachiningOpListBoxItem).OnOff <> bTemp Then Return Nothing
|
||||
Next
|
||||
Return bTemp
|
||||
End Get
|
||||
Set(value As Boolean?)
|
||||
' Recupero gli indici delle operazioni della Disposizione corrente
|
||||
Dim OpIndexes As List(Of Integer) = GetOpIndexes()
|
||||
If OpIndexes.Count = 0 Then
|
||||
NotifyPropertyChanged(NameOf(OnOffAll))
|
||||
Return
|
||||
End If
|
||||
For Each OpInDispIndex In OpIndexes
|
||||
DirectCast(Map.refOperationsListExpanderVM.OperationList.Item(OpInDispIndex), MachiningOpListBoxItem).OnOff = If(IsNothing(value), False, CBool(value))
|
||||
Next
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
Private m_Image As String = String.Empty
|
||||
Public Property Image As String
|
||||
Get
|
||||
|
||||
+43
-2
@@ -1,5 +1,4 @@
|
||||
Imports System.ComponentModel
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports EgtUILib
|
||||
|
||||
Public Class MachiningOpListBoxItem
|
||||
@@ -126,6 +125,31 @@ Public Class MachiningOpListBoxItem
|
||||
End Get
|
||||
End Property
|
||||
|
||||
|
||||
Private m_bOnOff As Boolean = True
|
||||
Public Property OnOff As Boolean
|
||||
Get
|
||||
Return m_bOnOff
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
If m_bOnOff <> value Then
|
||||
m_bOnOff = value
|
||||
Dim bOldEnMod As Boolean = EgtGetEnableModified()
|
||||
EgtDisableModified()
|
||||
' se abilitato, eseguo operazione
|
||||
Dim status As Integer = GDB_ST.OFF
|
||||
If value Then
|
||||
status = GDB_ST.ON_
|
||||
End If
|
||||
ModifyStatusLamp()
|
||||
EgtSetStatus(Id, status)
|
||||
If bOldEnMod Then EgtEnableModified()
|
||||
EgtDraw()
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(OnOff))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdModifyNameEnter As ICommand
|
||||
Private m_cmdModifyNameEsc As ICommand
|
||||
@@ -170,11 +194,28 @@ Public Class MachiningOpListBoxItem
|
||||
Return ""
|
||||
Case MCH_OY.CHISELING
|
||||
Return ""
|
||||
Case MCH_OY.FIVEAXISMILLING
|
||||
Return ""
|
||||
Case Else
|
||||
Return String.Empty
|
||||
End Select
|
||||
End Function
|
||||
|
||||
Private Sub ModifyStatusLamp()
|
||||
' Recupero l'indice dell'operazione a cui abbiamo appena modificato lo Status e l'indice della Disposizione che la contiene
|
||||
Dim DispIndex As Integer = 0
|
||||
Dim OpIndex As Integer = 0
|
||||
For Each OpItem In Map.refOperationsListExpanderVM.OperationList
|
||||
If EgtGetOperationType(OpItem.Id) = MCH_OY.DISP Then DispIndex = OpIndex
|
||||
If OpItem.Id = Id Then
|
||||
Exit For
|
||||
End If
|
||||
OpIndex += 1
|
||||
Next
|
||||
' Notifico StatusAll per calcolare lo stato della CheckBox della Disposizione
|
||||
Map.refOperationsListExpanderVM.OperationList(DispIndex).NotifyPropertyChanged(NameOf(DispositionOpListBoxItem.OnOffAll))
|
||||
End Sub
|
||||
|
||||
#Region "COMMANDS"
|
||||
|
||||
#Region "ModifyNameEnterCommand"
|
||||
|
||||
+12
-6
@@ -74,7 +74,7 @@ Public Class OperationListBoxItem
|
||||
Map.refOperationsListExpanderVM.OnPropertyChanged("MoveDown_IsEnabled")
|
||||
NotifyPropertyChanged("IsSelected")
|
||||
' Aggiorno visualizzazione
|
||||
EgtDraw()
|
||||
If Map.refOperationsListExpanderVM.ForceDrawInIsSelected Then EgtDraw()
|
||||
Return
|
||||
End If
|
||||
' Imposto la fase di lavorazione corrente
|
||||
@@ -106,26 +106,32 @@ Public Class OperationListBoxItem
|
||||
Dim EntityIndex As Integer = 0
|
||||
Dim SubEntityIndex As Integer = 0
|
||||
While EgtGetMachiningGeometry(CountIndex, EntityIndex, SubEntityIndex)
|
||||
EgtSelectObj( EntityIndex)
|
||||
If EgtGetType( EntityIndex) = GDB_TY.SRF_MESH Or EgtGetType( EntityIndex) = GDB_TY.SRF_FRGN Then
|
||||
EgtSelectObj(EntityIndex)
|
||||
If EgtGetType(EntityIndex) = GDB_TY.SRF_MESH Or EgtGetType(EntityIndex) = GDB_TY.SRF_FRGN Then
|
||||
SelData.AddIdSub(EntityIndex, SubEntityIndex)
|
||||
End If
|
||||
CountIndex += 1
|
||||
End While
|
||||
End If
|
||||
' Notifico al contentcontrol OperationParameter di aggiornarsi
|
||||
If Not IsNothing( Map.refOperationParametersExpanderVM) Then
|
||||
If Not IsNothing(Map.refOperationParametersExpanderVM) Then
|
||||
Map.refOperationParametersExpanderVM.OnPropertyChanged("OperationParameters")
|
||||
End If
|
||||
Map.refOperationsListExpanderVM.OnPropertyChanged("MoveUp_IsEnabled")
|
||||
Map.refOperationsListExpanderVM.OnPropertyChanged("MoveDown_IsEnabled")
|
||||
' Notifico l'operazione selezionata all'expander con l'albero delle lavorazioni aggiungibili
|
||||
If Not IsNothing( Map.refMachiningTreeExpanderVM) Then
|
||||
If Not IsNothing(Map.refMachiningTreeExpanderVM) Then
|
||||
Map.refMachiningTreeExpanderVM.nSelectedOperationId = Me.Id
|
||||
End If
|
||||
' Aggiorno visualizzazione
|
||||
EgtDraw()
|
||||
If Map.refOperationsListExpanderVM.ForceDrawInIsSelected Then EgtDraw()
|
||||
End If
|
||||
' Resetto valori slider
|
||||
If Not IsNothing(Map.refMachiningParameterExpanderVM) Then
|
||||
Map.refMachiningParameterExpanderVM.SetSliderScale(EgtGetPreviewMachiningToolStepCount())
|
||||
Map.refMachiningParameterExpanderVM.ResetSliderValue()
|
||||
End If
|
||||
|
||||
'OnPropertyChanged("ToolExpanderHeader")
|
||||
Map.refOperationsListExpanderVM.OnPropertyChanged("DuplicateCmd_IsEnabled")
|
||||
Map.refOperationsListExpanderVM.OnPropertyChanged("MachToDb_IsEnabled")
|
||||
|
||||
+20
-8
@@ -1,7 +1,4 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.IO
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
Imports EgtUILib
|
||||
|
||||
Public Class OperationParametersExpanderVM
|
||||
Inherits ViewModelBase
|
||||
@@ -32,6 +29,7 @@ Public Class OperationParametersExpanderVM
|
||||
' disattivo MTable e SpecialPanel se vado sulla modifica di una lavorazione
|
||||
Map.refDoorPanelVM.MTableIsEnabled(Not m_ParametersIsExpanded)
|
||||
Map.refSpecialPanelVM.SpecialPanelIsEnabled(Not m_ParametersIsExpanded)
|
||||
Map.refMachiningOptionPanelVM.SetOperationsListRowIsExpanded(False)
|
||||
End Set
|
||||
End Property
|
||||
|
||||
@@ -70,9 +68,10 @@ Public Class OperationParametersExpanderVM
|
||||
Return m_DispositionParameterExpander
|
||||
Else
|
||||
If IsNothing(m_MachiningParameterExpander) Then
|
||||
m_MachiningParameterExpander = New MachiningParameterExpanderV
|
||||
m_MachiningParameterExpanderVM = New MachiningParameterExpanderVM()
|
||||
m_MachiningParameterExpander.DataContext = m_MachiningParameterExpanderVM
|
||||
m_MachiningParameterExpander = New MachiningParameterExpanderV With {
|
||||
.DataContext = m_MachiningParameterExpanderVM
|
||||
}
|
||||
End If
|
||||
m_MachiningParameterExpanderVM.NotifyPropertyChanged("ParamExpanderPageV")
|
||||
Return m_MachiningParameterExpander
|
||||
@@ -170,11 +169,21 @@ Public Class OperationParametersExpanderVM
|
||||
Map.refProjectVM.SceneSelMode = OptionModule.m_SelGeomChiseling
|
||||
Case MCH_OY.SURFFINISHING
|
||||
Map.refProjectVM.SceneSelMode = OptionModule.m_SelGeomSurfFinishing
|
||||
Case MCH_OY.SURFROUGHING
|
||||
Map.refProjectVM.SceneSelMode = OptionModule.m_SelGeomSurfRoughing
|
||||
Case MCH_OY.WATERJETTING
|
||||
Map.refProjectVM.SceneSelMode = OptionModule.m_SelGeomWaterJetting
|
||||
Case MCH_OY.FIVEAXISMILLING
|
||||
Map.refProjectVM.SceneSelMode = OptionModule.m_SelGeomFiveAxMilling
|
||||
Case MCH_OY.PROBING
|
||||
Map.refProjectVM.SceneSelMode = OptionModule.m_SelGeomProbing
|
||||
End Select
|
||||
' Imposto visualizzazione utensile
|
||||
DirectCast(m_MachiningParameterExpander.DataContext, MachiningParameterExpanderVM).ViewTool = True
|
||||
Map.refMachiningParameterExpanderVM.SetPreviewMachiningTool(MCH_LOOK.TAB_TOOL)
|
||||
Map.refMachiningParameterExpanderVM.SetToolPreview_Image("pack://application:,,,/Resources/ToolPreview/Tool.png")
|
||||
Map.refMachiningParameterExpanderVM.SetSlider_IsEnable(True)
|
||||
EgtPreparePreviewMachiningTool()
|
||||
EgtDraw()
|
||||
End If
|
||||
OnPropertyChanged("ParametersIsExpanded")
|
||||
Return True
|
||||
@@ -204,7 +213,10 @@ Public Class OperationParametersExpanderVM
|
||||
EgtDraw()
|
||||
Else
|
||||
' Nascondo visualizzazione utensile
|
||||
DirectCast(m_MachiningParameterExpander.DataContext, MachiningParameterExpanderVM).ViewTool = False
|
||||
Map.refMachiningParameterExpanderVM.SetPreviewMachiningTool(MCH_LOOK.NONE)
|
||||
Map.refMachiningParameterExpanderVM.SetSlider_IsEnable(False)
|
||||
Map.refMachiningParameterExpanderVM.ResetSliderValue()
|
||||
EgtRemovePreviewMachiningTool()
|
||||
End If
|
||||
ParametersExpanderName = String.Empty
|
||||
' Disabilito la selezione delle lavorazioni
|
||||
|
||||
+29
-23
@@ -6,34 +6,35 @@
|
||||
xmlns:EgtCAM5="clr-namespace:EgtCAM5"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
|
||||
|
||||
<StackPanel Name="OperationsListExpanderViewStackPanel" IsEnabled="{Binding OpersListViewIsEnabled}">
|
||||
|
||||
<Expander Header="{Binding OperationListHeader}" IsExpanded="{Binding ListIsExpanded}" Name="OperationsListExpander"
|
||||
<Expander Header="{Binding OperationListHeader}"
|
||||
IsEnabled="{Binding OpersListViewIsEnabled}"
|
||||
IsExpanded="{Binding ListIsExpanded}" Name="OperationsListExpander"
|
||||
Style="{StaticResource ExpanderStyle}">
|
||||
<Expander.InputBindings>
|
||||
<KeyBinding Key="Escape" Command="{Binding CancelOperationCommand}" CommandParameter="Escape"/>
|
||||
</Expander.InputBindings>
|
||||
|
||||
<StackPanel>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<UniformGrid Rows="1">
|
||||
<Button Content="{Binding NewMachiningBtnContent}" Command="{Binding NewMachiningCommand}" Height="30"/>
|
||||
<Button Content="{Binding NewPositioningBtnContent}" Command="{Binding NewPositioningCommand}" Height="30"/>
|
||||
<Button Content="{Binding CancelOperationBtnContent}" Command="{Binding CancelOperationCommand}" Height="30"/>
|
||||
</UniformGrid>
|
||||
<ListBox IsSynchronizedWithCurrentItem="False" ItemsSource="{Binding OperationList}"
|
||||
Height="200" x:Name="OperationList" IsEnabled="{Binding IsEnabledOperationList}" SelectionMode="Extended">
|
||||
|
||||
<ListBox Grid.Row="1"
|
||||
IsSynchronizedWithCurrentItem="False"
|
||||
ItemsSource="{Binding OperationList}"
|
||||
x:Name="OperationList" IsEnabled="{Binding IsEnabledOperationList}" SelectionMode="Extended">
|
||||
<ListBox.Resources>
|
||||
<DataTemplate DataType="{x:Type EgtCAM5:MachiningOpListBoxItem}">
|
||||
<DataTemplate.Resources>
|
||||
<Style x:Key="LayoutRoot" TargetType="Grid">
|
||||
<!--<Style.Triggers>
|
||||
--><!--these are the triggers that make the code cursor jump from box 1 to box 2 to box 3.--><!--
|
||||
<DataTrigger Binding="{Binding ElementName=Box, Path=Visibility}" Value="Visible">
|
||||
<Setter Property="FocusManager.FocusedElement" Value="{Binding ElementName=Box}"/>
|
||||
</DataTrigger>
|
||||
</Style.Triggers>-->
|
||||
</Style>
|
||||
<Style x:Key="LayoutRoot" TargetType="Grid"/>
|
||||
</DataTemplate.Resources>
|
||||
<Border Background="Transparent">
|
||||
<Border.InputBindings>
|
||||
@@ -43,6 +44,7 @@
|
||||
</Border.InputBindings>
|
||||
<Grid Style="{StaticResource LayoutRoot}">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
@@ -50,9 +52,12 @@
|
||||
</Grid.ColumnDefinitions>
|
||||
<CheckBox IsChecked="{Binding Status}" Margin="0,0,5,0"/>
|
||||
<Image Source="{Binding Image}" Height="15" Margin="0,0,5,0"/>
|
||||
<TextBlock Grid.Column="1" Text="{Binding Name}"
|
||||
<ToggleButton Style="{StaticResource EgtCAM5_LampToggleButton}" Grid.Column="1"
|
||||
IsChecked="{Binding OnOff}" Visibility="{Binding IsHidden}" Focusable="True" Height="15" Width="15" Margin="0,0,5,0"/>
|
||||
|
||||
<TextBlock Grid.Column="2" Text="{Binding Name}"
|
||||
Visibility="{Binding Name_Visibility}" Margin="0,0,5,0"/>
|
||||
<TextBox Grid.Column="1" Text="{Binding ModifiedName, UpdateSourceTrigger=PropertyChanged}"
|
||||
<TextBox Grid.Column="2" Text="{Binding ModifiedName, UpdateSourceTrigger=PropertyChanged}"
|
||||
Width="150"
|
||||
x:Name="Box"
|
||||
Visibility="{Binding ModifyName_Visibility}" Margin="0,0,5,0">
|
||||
@@ -63,7 +68,7 @@
|
||||
<KeyBinding Key="Escape" Command="{Binding ModifyNameEscCommand}"/>
|
||||
</TextBox.InputBindings>
|
||||
</TextBox>
|
||||
<TextBlock Grid.Column="2" Text="{Binding Info}"/>
|
||||
<TextBlock Grid.Column="3" Text="{Binding Info}"/>
|
||||
</Grid>
|
||||
</Border>
|
||||
</DataTemplate>
|
||||
@@ -76,6 +81,9 @@
|
||||
</Border.InputBindings>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<CheckBox IsChecked="{Binding StatusAll}" VerticalAlignment="Center" Margin="0,0,5,0"/>
|
||||
<CheckBox IsChecked="{Binding OnOffAll}" VerticalAlignment="Center" Margin="0,0,5,0"/>
|
||||
<!--<ToggleButton Style="{StaticResource EgtCAM5_LampToggleButton}"
|
||||
IsChecked="{Binding OnOffAll}" Visibility="{Binding IsHidden}" Focusable="True" Height="15" Width="15" Margin="0,0,5,0"/>-->
|
||||
<Image Source="{Binding Image}" Height="15" Margin="0,0,5,0"/>
|
||||
<TextBlock Text="{Binding Name}" Foreground="White"
|
||||
FontSize="15" FontWeight="SemiBold"/>
|
||||
@@ -83,11 +91,11 @@
|
||||
</Border>
|
||||
</DataTemplate>
|
||||
</ListBox.Resources>
|
||||
<ListBox.ItemsPanel>
|
||||
<!--<ListBox.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<StackPanel Orientation="Vertical"/>
|
||||
</ItemsPanelTemplate>
|
||||
</ListBox.ItemsPanel>
|
||||
</ListBox.ItemsPanel>-->
|
||||
<!--<Interactivity:Interaction.Triggers>
|
||||
<Interactivity:EventTrigger EventName="MouseDoubleClick">
|
||||
<Interactivity:InvokeCommandAction Command="{Binding OperationListDoubleClickCommand}"/>
|
||||
@@ -155,16 +163,14 @@
|
||||
</ListBox.Style>
|
||||
</ListBox>
|
||||
|
||||
<UniformGrid Rows="1">
|
||||
<UniformGrid Grid.Row="2" Rows="1">
|
||||
<Button Content="{Binding MoveUpMsg}" Command="{Binding MoveUpCommand}" Height="30" IsEnabled="{Binding MoveUp_IsEnabled}" />
|
||||
<Button Content="{Binding MoveDownMsg}" Command="{Binding MoveDownCommand}" Height="30" IsEnabled="{Binding MoveDown_IsEnabled}"/>
|
||||
<Button Content="{Binding UpdateMsg}" Command="{Binding UpdateCommand}" Height="30"/>
|
||||
<Button Content="{Binding SetUpMsg}" Command="{Binding SetUpCommand}" Height="30"/>
|
||||
</UniformGrid>
|
||||
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Expander>
|
||||
|
||||
</StackPanel>
|
||||
|
||||
</UserControl>
|
||||
|
||||
+191
-55
@@ -84,6 +84,8 @@ Public Class OperationsListExpanderVM
|
||||
Set(value As Boolean)
|
||||
If value <> m_ListIsExpanded Then
|
||||
Map.refMachiningOptionPanelVM.Set_IsExpanded(MachiningOptionPanelVM.MachiningOptionPanelExpander.OPERATIONLIST, value)
|
||||
SetStatusOnLamp()
|
||||
Map.refMachiningOptionPanelVM.SetOperationsListRowIsExpanded(value)
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
@@ -111,6 +113,37 @@ Public Class OperationsListExpanderVM
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_tmpOperationList As New ObservableCollection(Of MachiningOpListBoxItem)
|
||||
Public Property tmpOperationList As ObservableCollection(Of MachiningOpListBoxItem)
|
||||
Get
|
||||
Return m_tmpOperationList
|
||||
End Get
|
||||
Set(value As ObservableCollection(Of MachiningOpListBoxItem))
|
||||
m_tmpOperationList = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_StatusLampList As New ObservableCollection(Of StatusLamp)
|
||||
Public Property StatusLampList As ObservableCollection(Of StatusLamp)
|
||||
Get
|
||||
Return m_StatusLampList
|
||||
End Get
|
||||
Set(value As ObservableCollection(Of StatusLamp))
|
||||
m_StatusLampList = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' Forza il disegno quando seleziono la lampadina
|
||||
Private m_ForceDrawInIsSelected As Boolean = True
|
||||
Public Property ForceDrawInIsSelected As Boolean
|
||||
Get
|
||||
Return m_ForceDrawInIsSelected
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_ForceDrawInIsSelected = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property DuplicateCmd_IsEnabled As Boolean
|
||||
Get
|
||||
Dim SelType As Integer = MCH_OY.NONE
|
||||
@@ -258,7 +291,7 @@ Public Class OperationsListExpanderVM
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
Sub New()
|
||||
m_bMoveThroughDisps = ( GetPrivateProfileInt( S_MACH, K_MOVETHROUGHDISPS, 0) <> 0)
|
||||
m_bMoveThroughDisps = (GetPrivateProfileInt(S_MACH, K_MOVETHROUGHDISPS, 0) <> 0)
|
||||
' Creo riferimento a questa classe in Map
|
||||
Map.SetRefOperationsListExpanderVM(Me)
|
||||
Me.ListIsExpanded = True
|
||||
@@ -329,10 +362,11 @@ Public Class OperationsListExpanderVM
|
||||
' Aggiungo la nuova fase
|
||||
Dim nPhase As Integer = EgtAddPhase()
|
||||
Dim nDispId As Integer = EgtGetPhaseDisposition(nPhase)
|
||||
' Confermo grezzi e bloccaggi sopra salvati
|
||||
' Confermo grezzi, movimenti assi di disposizione e bloccaggi sopra salvati
|
||||
For Each nId As Integer In vRawId
|
||||
EgtKeepRawPart(nId, nLastPhase)
|
||||
Next
|
||||
EgtKeepAllDispAxes(nLastPhase)
|
||||
For Each nId As Integer In vFxtId
|
||||
EgtKeepFixture(nId, nLastPhase)
|
||||
Next
|
||||
@@ -433,7 +467,14 @@ Public Class OperationsListExpanderVM
|
||||
|
||||
If EgtGetOperationMode(selOperation.Id) Then
|
||||
Map.refOperationParametersExpanderVM.ParametersIsExpanded = True
|
||||
If EgtGetOperationType(selOperation.Id) <> MCH_OY.DISP Then
|
||||
Map.refMachiningParameterExpanderVM.SetSliderScale(EgtGetPreviewMachiningToolStepCount())
|
||||
Map.refMachiningParameterExpanderVM.ResetSliderValue()
|
||||
EgtDraw()
|
||||
End If
|
||||
End If
|
||||
|
||||
Map.refMachiningOptionPanelVM.SetOperationsListRowIsExpanded(False)
|
||||
End Sub
|
||||
|
||||
#End Region ' OperationListDoubleClickCommand
|
||||
@@ -457,55 +498,55 @@ Public Class OperationsListExpanderVM
|
||||
''' </summary>
|
||||
Public Sub MoveUp()
|
||||
' Verifico il numero di elementi selezionati
|
||||
Dim indexes As New List( Of Integer)()
|
||||
Dim indexes As New List(Of Integer)()
|
||||
For index As Integer = 0 To OperationList.Count - 1
|
||||
' Verifico gli elementi selezionati
|
||||
If OperationList.Item( index).IsSelected Then
|
||||
If OperationList.Item(index).IsSelected Then
|
||||
' Se presente una disposizione esco
|
||||
If EgtGetOperationType( OperationList.Item( index).Id) = MCH_OY.DISP Then Return
|
||||
If EgtGetOperationType(OperationList.Item(index).Id) = MCH_OY.DISP Then Return
|
||||
' Aggiungo l'operazione
|
||||
indexes.Add( index)
|
||||
indexes.Add(index)
|
||||
End If
|
||||
Next
|
||||
Dim lenIndexes As Integer = indexes.Count
|
||||
' Recupero Id ultima entità selezionata e precedente a quelle selezionate
|
||||
Dim LastSelectedId As Integer = OperationList( indexes( lenIndexes - 1)).Id
|
||||
Dim PreviousId As Integer = OperationList( indexes( 0) - 1).Id
|
||||
Dim LastSelectedId As Integer = OperationList(indexes(lenIndexes - 1)).Id
|
||||
Dim PreviousId As Integer = OperationList(indexes(0) - 1).Id
|
||||
' Sposto l'operazione precedente a quelle selezionate nell'ambiente Egt
|
||||
If EgtRelocate( PreviousId, LastSelectedId, GDB_POS.AFTER) Then
|
||||
If EgtRelocate(PreviousId, LastSelectedId, GDB_POS.AFTER) Then
|
||||
' Sposto l'operazione precedente a quelle selezionate nella grafica
|
||||
OperationList.Move( indexes(0) - 1, indexes( lenIndexes - 1)) ' + 1)
|
||||
OperationList.Move(indexes(0) - 1, indexes(lenIndexes - 1)) ' + 1)
|
||||
' Ricalcolo le lavorazioni selezionate e quella che era precedente (e ora è seguente)
|
||||
If Not m_bMoveThroughDisps Then
|
||||
For index As Integer = 0 To indexes.Count - 1
|
||||
EgtSetCurrMachining( OperationList( indexes( index)).Id)
|
||||
EgtApplyMachining( False)
|
||||
EgtSetCurrMachining(OperationList(indexes(index)).Id)
|
||||
EgtApplyMachining(False)
|
||||
Next
|
||||
EgtSetCurrMachining( PreviousId)
|
||||
EgtApplyMachining( False)
|
||||
EgtSetCurrMachining(PreviousId)
|
||||
EgtApplyMachining(False)
|
||||
EgtDraw()
|
||||
OnPropertyChanged( "MoveUp_IsEnabled")
|
||||
OnPropertyChanged( "MoveDown_IsEnabled")
|
||||
OnPropertyChanged("MoveUp_IsEnabled")
|
||||
OnPropertyChanged("MoveDown_IsEnabled")
|
||||
Map.refProjectVM.EmitTitle()
|
||||
Else
|
||||
Dim nCurrPhase As Integer = EgtGetOperationPhase(LastSelectedId)
|
||||
For index As Integer = 0 To indexes.Count - 1
|
||||
Dim nOpeId As Integer = OperationList( indexes( index) - 1).Id
|
||||
If EgtGetOperationType( nOpeId) <> MCH_OY.DISP Then
|
||||
EgtAdjustOperationPhase( nOpeId)
|
||||
EgtSetCurrMachining( nOpeId)
|
||||
EgtApplyMachining( False)
|
||||
Dim nOpeId As Integer = OperationList(indexes(index) - 1).Id
|
||||
If EgtGetOperationType(nOpeId) <> MCH_OY.DISP Then
|
||||
EgtAdjustOperationPhase(nOpeId)
|
||||
EgtSetCurrMachining(nOpeId)
|
||||
EgtApplyMachining(False)
|
||||
End If
|
||||
Next
|
||||
If EgtGetOperationType( PreviousId) <> MCH_OY.DISP Then
|
||||
EgtSetCurrMachining( PreviousId)
|
||||
EgtApplyMachining( False)
|
||||
If EgtGetOperationType(PreviousId) <> MCH_OY.DISP Then
|
||||
EgtSetCurrMachining(PreviousId)
|
||||
EgtApplyMachining(False)
|
||||
End If
|
||||
Dim nNewPhase As Integer = EgtGetOperationPhase(LastSelectedId)
|
||||
If nNewPhase <> nCurrPhase Then EgtSetCurrPhase( nNewPhase)
|
||||
If nNewPhase <> nCurrPhase Then EgtSetCurrPhase(nNewPhase)
|
||||
EgtDraw()
|
||||
OnPropertyChanged( NameOf(MoveUp_IsEnabled))
|
||||
OnPropertyChanged( NameOf(MoveDown_IsEnabled))
|
||||
OnPropertyChanged(NameOf(MoveUp_IsEnabled))
|
||||
OnPropertyChanged(NameOf(MoveDown_IsEnabled))
|
||||
Map.refProjectVM.EmitTitle()
|
||||
End If
|
||||
End If
|
||||
@@ -532,52 +573,52 @@ Public Class OperationsListExpanderVM
|
||||
''' </summary>
|
||||
Public Sub MoveDown()
|
||||
' Verifico il numero di elementi selezionati
|
||||
Dim indexes As New List( Of Integer)()
|
||||
Dim indexes As New List(Of Integer)()
|
||||
For index As Integer = 0 To OperationList.Count - 1
|
||||
' Verifico gli elementi selezionati
|
||||
If OperationList.Item( index).IsSelected Then
|
||||
If OperationList.Item(index).IsSelected Then
|
||||
' Se presente una disposizione esco
|
||||
If EgtGetOperationType( OperationList.Item( index).Id) = MCH_OY.DISP Then Return
|
||||
If EgtGetOperationType(OperationList.Item(index).Id) = MCH_OY.DISP Then Return
|
||||
' Aggiungo l'operazione
|
||||
indexes.Add( index)
|
||||
indexes.Add(index)
|
||||
End If
|
||||
Next
|
||||
Dim lenIndexes As Integer = indexes.Count
|
||||
' Recupero Id prima entità selezionata e successiva a quelle selezionate
|
||||
Dim FirstSelectedId As Integer = OperationList( indexes( 0)).Id
|
||||
Dim NextId As Integer = OperationList( indexes( lenIndexes - 1) + 1).Id
|
||||
Dim FirstSelectedId As Integer = OperationList(indexes(0)).Id
|
||||
Dim NextId As Integer = OperationList(indexes(lenIndexes - 1) + 1).Id
|
||||
' Sposto l'operazione successiva a quelle selezionate nell'ambiente Egt
|
||||
If EgtRelocate( NextId, FirstSelectedId, GDB_POS.BEFORE) Then
|
||||
If EgtRelocate(NextId, FirstSelectedId, GDB_POS.BEFORE) Then
|
||||
' Sposto l'operazione successiva a quelle selezionate nella grafica
|
||||
OperationList.Move( indexes( lenIndexes - 1) + 1, indexes( 0))
|
||||
OperationList.Move(indexes(lenIndexes - 1) + 1, indexes(0))
|
||||
' Ricalcolo la lavorazioni selezionate e quella che era seguente (e ora è precedente)
|
||||
If Not m_bMoveThroughDisps Then
|
||||
EgtSetCurrMachining( NextId)
|
||||
EgtApplyMachining( False)
|
||||
EgtSetCurrMachining(NextId)
|
||||
EgtApplyMachining(False)
|
||||
For index As Integer = 0 To indexes.Count - 1
|
||||
EgtSetCurrMachining( OperationList( indexes( index)).Id)
|
||||
EgtApplyMachining( False)
|
||||
EgtSetCurrMachining(OperationList(indexes(index)).Id)
|
||||
EgtApplyMachining(False)
|
||||
Next
|
||||
EgtDraw()
|
||||
OnPropertyChanged( "MoveUp_IsEnabled")
|
||||
OnPropertyChanged( "MoveDown_IsEnabled")
|
||||
OnPropertyChanged("MoveUp_IsEnabled")
|
||||
OnPropertyChanged("MoveDown_IsEnabled")
|
||||
Map.refProjectVM.EmitTitle()
|
||||
Else
|
||||
If EgtGetOperationType( NextId) <> MCH_OY.DISP Then
|
||||
EgtSetCurrMachining( NextId)
|
||||
EgtApplyMachining( False)
|
||||
If EgtGetOperationType(NextId) <> MCH_OY.DISP Then
|
||||
EgtSetCurrMachining(NextId)
|
||||
EgtApplyMachining(False)
|
||||
End If
|
||||
For index As Integer = 0 To indexes.Count - 1
|
||||
Dim nOpeId As Integer = OperationList( indexes( index) + 1).Id
|
||||
If EgtGetOperationType( nOpeId) <> MCH_OY.DISP Then
|
||||
EgtAdjustOperationPhase( nOpeId)
|
||||
EgtSetCurrMachining( nOpeId)
|
||||
EgtApplyMachining( False)
|
||||
Dim nOpeId As Integer = OperationList(indexes(index) + 1).Id
|
||||
If EgtGetOperationType(nOpeId) <> MCH_OY.DISP Then
|
||||
EgtAdjustOperationPhase(nOpeId)
|
||||
EgtSetCurrMachining(nOpeId)
|
||||
EgtApplyMachining(False)
|
||||
End If
|
||||
Next
|
||||
EgtDraw()
|
||||
OnPropertyChanged( NameOf( MoveUp_IsEnabled))
|
||||
OnPropertyChanged( NameOf( MoveDown_IsEnabled))
|
||||
OnPropertyChanged(NameOf(MoveUp_IsEnabled))
|
||||
OnPropertyChanged(NameOf(MoveDown_IsEnabled))
|
||||
Map.refProjectVM.EmitTitle()
|
||||
End If
|
||||
End If
|
||||
@@ -603,6 +644,8 @@ Public Class OperationsListExpanderVM
|
||||
''' Execute the Point. This method is invoked by the PointCommand.
|
||||
''' </summary>
|
||||
Public Sub Update()
|
||||
Dim tmpStatusLamp As New StatusLamp()
|
||||
Map.refOperationsListExpanderVM.StatusLampList = tmpStatusLamp.LoadStatusLamp()
|
||||
' Cursore di attesa
|
||||
Application.Current.MainWindow.ForceCursor = True
|
||||
Application.Current.MainWindow.Cursor = Cursors.Wait
|
||||
@@ -612,6 +655,7 @@ Public Class OperationsListExpanderVM
|
||||
Dim bOk As Boolean = EgtApplyAllMachinings(bRecalc, False, sErr)
|
||||
EgtSetModified()
|
||||
' Deseleziono l'Operazione selezionata e la de-evidenzio nel Disegno
|
||||
m_ForceDrawInIsSelected = False
|
||||
For Each Operation In OperationList
|
||||
If Operation.IsSelected Then
|
||||
Operation.IsSelected = False
|
||||
@@ -619,6 +663,9 @@ Public Class OperationsListExpanderVM
|
||||
Next
|
||||
' Ricarico la lista delle Operazioni
|
||||
LoadOperationList(GDB_ID.NULL)
|
||||
' Rimetto le lampadine in modo corretto
|
||||
tmpStatusLamp.UpdateStatusLamp()
|
||||
m_ForceDrawInIsSelected = True
|
||||
' Aggiorno visualizzazione e ritorno a cursore standard
|
||||
EgtDraw()
|
||||
Application.Current.MainWindow.ForceCursor = False
|
||||
@@ -628,7 +675,8 @@ Public Class OperationsListExpanderVM
|
||||
If Not String.IsNullOrEmpty(sErr) Then
|
||||
MessageBox.Show(sErr, EgtMsg(MSG_SIMULATION + 5), MessageBoxButton.OK, MessageBoxImage.Exclamation)
|
||||
Else
|
||||
MessageBox.Show(EgtMsg(MSG_SIMULATION + 6), EgtMsg(MSG_SIMULATION + 5), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
' Errore nell'aggiornamento delle lavorazioni!
|
||||
MessageBox.Show(EgtMsg(5346), EgtMsg(MSG_SIMULATION + 5), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
End If
|
||||
Else
|
||||
Map.refStatusBarVM.NotifyStatusOutput(EgtMsg(MSG_OPERATION + 11))
|
||||
@@ -829,6 +877,7 @@ Public Class OperationsListExpanderVM
|
||||
MCH_MP.OFFSET,
|
||||
MCH_MP.STEPEXTARC,
|
||||
MCH_MP.STEPINTARC,
|
||||
MCH_MP.SUBSTEP,
|
||||
MCH_MP.SIDESTEP,
|
||||
MCH_MP.VERTFEED,
|
||||
MCH_MP.STEPSIDEANG,
|
||||
@@ -993,7 +1042,9 @@ Public Class OperationsListExpanderVM
|
||||
|
||||
Private Sub LoadOperationList()
|
||||
OperationList.Clear()
|
||||
tmpOperationList.Clear()
|
||||
Dim Id As Integer
|
||||
Dim OpStatusOnOff As Integer
|
||||
Dim OpStatus As Boolean = True
|
||||
Dim OpName As String = String.Empty
|
||||
Dim OpType As Integer = 0
|
||||
@@ -1006,9 +1057,14 @@ Public Class OperationsListExpanderVM
|
||||
If IsValidMachiningType(OpType) Then
|
||||
EgtSetCurrMachining(Id)
|
||||
OpStatus = EgtGetOperationMode(Id)
|
||||
EgtGetStatus(Id, OpStatusOnOff)
|
||||
EgtGetMachiningParam(MCH_MP.TOOL, OpTool)
|
||||
EgtGetMachiningParam(MCH_MP.NAME, OpMach)
|
||||
OperationList.Add(New MachiningOpListBoxItem(Id, OpStatus, OpName, OpType, OpTool, OpMach))
|
||||
' Dichiarato per far si che le due liste operino in contemporaneo
|
||||
Dim local_MachiningOpListBoxItem As New MachiningOpListBoxItem(Id, OpStatus, OpName, OpType, OpTool, OpMach)
|
||||
OperationList.Add(local_MachiningOpListBoxItem)
|
||||
' Lista creata per lavorare solo su le operazioni di macchina, utilizzata per la gestione dello spegnimento e accensione delle lamp
|
||||
tmpOperationList.Add(local_MachiningOpListBoxItem)
|
||||
ElseIf IsValidDispositionType(OpType) Then
|
||||
OpStatus = True
|
||||
OpTool = String.Empty
|
||||
@@ -1249,8 +1305,11 @@ Public Class OperationsListExpanderVM
|
||||
' Annullo creazione nuova lavorazione
|
||||
If m_NewMachining Then EndNewMachining(GDB_ID.NULL)
|
||||
' Disabilito visualizzazione utensile
|
||||
If Not IsNothing(m_MachiningParameterExpander) Then
|
||||
DirectCast(m_MachiningParameterExpander.DataContext, MachiningParameterExpanderVM).ViewTool = False
|
||||
If Not IsNothing(Map.refMachiningParameterExpanderVM) Then
|
||||
Map.refMachiningParameterExpanderVM.SetPreviewMachiningTool(MCH_LOOK.NONE)
|
||||
Map.refMachiningParameterExpanderVM.SetSlider_IsEnable(False)
|
||||
Map.refMachiningParameterExpanderVM.ResetSliderValue()
|
||||
EgtRemovePreviewMachiningTool()
|
||||
End If
|
||||
' Deseleziono le operazioni correnti per eliminare il mark
|
||||
For Each Operation In OperationList
|
||||
@@ -1260,6 +1319,83 @@ Public Class OperationsListExpanderVM
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Private Sub SetStatusOnLamp()
|
||||
If Not IsNothing(m_tmpOperationList) Then
|
||||
For Each ItemOp As MachiningOpListBoxItem In m_tmpOperationList
|
||||
If Not ItemOp.OnOff Then
|
||||
EgtSetStatus(ItemOp.Id, GDB_ST.OFF)
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
EgtDraw()
|
||||
End Sub
|
||||
|
||||
#End Region ' Methods
|
||||
|
||||
End Class
|
||||
|
||||
Public Class StatusLamp
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
Private m_nId As Integer
|
||||
Public Property nId As Integer
|
||||
Get
|
||||
Return m_nId
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
m_nId = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_bStatusLamp As Boolean
|
||||
Public Property bStatusLamp As Boolean
|
||||
Get
|
||||
Return m_bStatusLamp
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_bStatusLamp = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
#End Region ' Fields & Properties
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
Sub New(nId As Integer, bStatusLamp As Boolean)
|
||||
m_nId = nId
|
||||
m_bStatusLamp = bStatusLamp
|
||||
End Sub
|
||||
|
||||
Sub New()
|
||||
|
||||
End Sub
|
||||
|
||||
#End Region ' Constructor
|
||||
|
||||
#Region "METHODS"
|
||||
|
||||
Public Function LoadStatusLamp() As ObservableCollection(Of StatusLamp)
|
||||
Dim tmpStatusLampList As New ObservableCollection(Of StatusLamp)
|
||||
For Each ItemOp As MachiningOpListBoxItem In Map.refOperationsListExpanderVM.tmpOperationList
|
||||
tmpStatusLampList.Add(New StatusLamp(ItemOp.Id, ItemOp.OnOff))
|
||||
Next
|
||||
Return tmpStatusLampList
|
||||
End Function
|
||||
|
||||
Public Sub UpdateStatusLamp()
|
||||
Dim tmpStatusLamp As StatusLamp
|
||||
If Not IsNothing(Map.refOperationsListExpanderVM.tmpOperationList) Then
|
||||
For Each ItemOp As MachiningOpListBoxItem In Map.refOperationsListExpanderVM.tmpOperationList
|
||||
tmpStatusLamp = Map.refOperationsListExpanderVM.StatusLampList.FirstOrDefault(Function(x) x.nId = ItemOp.Id)
|
||||
If Not tmpStatusLamp.bStatusLamp Then
|
||||
EgtSetStatus(ItemOp.Id, GDB_ST.OFF)
|
||||
ItemOp.OnOff = False
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' Methods
|
||||
|
||||
End Class
|
||||
@@ -51,6 +51,13 @@
|
||||
<TextBlock Text="{Binding VMillMsg}" Margin="5,0,0,0"/>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Orientation="Horizontal" Visibility="{Binding Trace_Visibility}"
|
||||
IsEnabled="{Binding Trace_IsEnabled}" Margin="10,5,10,0">
|
||||
<CheckBox HorizontalAlignment="Left" VerticalAlignment="Center"
|
||||
IsChecked="{Binding TraceActive}"/>
|
||||
<TextBlock Text="{Binding TraceMsg}" Margin="5,0,0,0"/>
|
||||
</StackPanel>
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.IO
|
||||
Imports System.IO
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
|
||||
@@ -18,6 +17,10 @@ Public Class SimulationExpanderVM
|
||||
Set(value As Boolean)
|
||||
If value <> m_Simulation_IsExpanded Then
|
||||
Map.refMachiningOptionPanelVM.Set_IsExpanded(MachiningOptionPanelVM.MachiningOptionPanelExpander.SIMULATION, value)
|
||||
Map.refOperationsListExpanderVM.StatusLampList.Clear()
|
||||
Dim tmpStatusLamp As New StatusLamp()
|
||||
Map.refOperationsListExpanderVM.StatusLampList = tmpStatusLamp.LoadStatusLamp()
|
||||
Map.refMachiningOptionPanelVM.SetOperationsListRowIsExpanded(False)
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
@@ -33,6 +36,17 @@ Public Class SimulationExpanderVM
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_bOnlySimulation As Boolean = False
|
||||
Public Property bOnlySimulation As Boolean
|
||||
Get
|
||||
Return m_bOnlySimulation
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_bOnlySimulation = value
|
||||
NotifyPropertyChanged("bOnlySimulation")
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Public Overrides Property SliderValue As Double
|
||||
Get
|
||||
Return m_SliderValue
|
||||
@@ -90,9 +104,11 @@ Public Class SimulationExpanderVM
|
||||
If Not GetCncFileName(True, sCncFile, sInfo) Then Return
|
||||
' Eseguo
|
||||
If Not EgtGenerate(sCncFile, sInfo) Then
|
||||
Dim nErr = EgtGetLastMachMgrErrorId()
|
||||
Dim nErr As Integer = EgtGetLastMachMgrErrorId()
|
||||
If nErr = 1000 Then
|
||||
MessageBox.Show(EgtMsg(5333), EgtMsg(5320), MessageBoxButton.OK, MessageBoxImage.Information)
|
||||
ElseIf nErr = 1001 Then
|
||||
MessageBox.Show(EgtMsg(5334), EgtMsg(5320), MessageBoxButton.OK, MessageBoxImage.Information)
|
||||
ElseIf nErr <> 0 Then
|
||||
Dim sErr As String = EgtGetLastMachMgrErrorString()
|
||||
MessageBox.Show(sErr, EgtMsg(5305), MessageBoxButton.OK, MessageBoxImage.Exclamation)
|
||||
@@ -151,6 +167,14 @@ Public Class SimulationExpanderVM
|
||||
' disattivo MTable e SpecialPanel se vado in simulazione
|
||||
Map.refDoorPanelVM.MTableIsEnabled(False)
|
||||
Map.refSpecialPanelVM.SpecialPanelIsEnabled(False)
|
||||
If m_bOnlySimulation Then
|
||||
Map.refTopCommandBarVM.DrawIsEnabled = False
|
||||
Map.refOperationsListExpanderVM.OpersListViewIsEnabled = False
|
||||
Map.refOperationParametersExpanderVM.OperParamsViewIsEnabled = False
|
||||
Map.refEstimationsExpanderVM.Estimation_IsEnabled =False
|
||||
Map.refMachGroupPanelVM.SetMachGroupState(False)
|
||||
Map.refEstimationsExpanderVM.NotifyPropertyChanged("Estimation_IsEnabled")
|
||||
End If
|
||||
Return True
|
||||
End Function
|
||||
|
||||
@@ -206,11 +230,16 @@ Public Class SimulationExpanderVM
|
||||
UpdateUI()
|
||||
' Messaggio in caso di errore
|
||||
If Not bOk Then
|
||||
If EgtGetLastMachMgrErrorId() <> 0 Then
|
||||
Dim nErr As Integer = EgtGetLastMachMgrErrorId()
|
||||
If nErr = 1000 Then
|
||||
MessageBox.Show(EgtMsg(5333), EgtMsg(5320), MessageBoxButton.OK, MessageBoxImage.Information)
|
||||
ElseIf nErr = 1001 Then
|
||||
MessageBox.Show(EgtMsg(5334), EgtMsg(5320), MessageBoxButton.OK, MessageBoxImage.Information)
|
||||
ElseIf nErr <> 0 Then
|
||||
Dim sErr As String = EgtGetLastMachMgrErrorString()
|
||||
MessageBox.Show(sErr, EgtMsg(MSG_SIMULATION + 5), MessageBoxButton.OK, MessageBoxImage.Exclamation) '.... - ERRORE
|
||||
MessageBox.Show(sErr, EgtMsg(5305), MessageBoxButton.OK, MessageBoxImage.Exclamation) '.... - ERRORE
|
||||
Else
|
||||
MessageBox.Show(EgtMsg(MSG_MESSAGEBOX + 10), EgtMsg(MSG_SIMULATION + 5), MessageBoxButton.OK, MessageBoxImage.Error) 'Errore sconosciuto - ERRORE
|
||||
MessageBox.Show(EgtMsg(15010), EgtMsg(5305), MessageBoxButton.OK, MessageBoxImage.Error) 'Errore sconosciuto - ERRORE
|
||||
End If
|
||||
End If
|
||||
' Imposto stato corrente
|
||||
@@ -220,7 +249,8 @@ Public Class SimulationExpanderVM
|
||||
Dim SliderVal As Double = GetPrivateProfileDouble(S_SIMUL, K_SLIDERVAL, 10)
|
||||
SliderValue = SliderVal
|
||||
' Gestione check VMill
|
||||
If IsKeyEnabledVirtualMilling() And EgtUILib.GetPrivateProfileInt(S_VMILL, K_VM_ENABLE, 0, m_sCurrMachIniFilePath) <> 0 Then
|
||||
If IsKeyEnabledVirtualMilling() And
|
||||
EgtUILib.GetPrivateProfileInt(S_VMILL, K_VM_ENABLE, 0, m_sCurrMachIniFilePath) <> 0 Then
|
||||
VMill_Visibility = Visibility.Visible
|
||||
VMill_IsEnabled = True
|
||||
Dim bVal As Boolean
|
||||
@@ -233,6 +263,16 @@ Public Class SimulationExpanderVM
|
||||
VMillActive = False
|
||||
EgtEnableModified()
|
||||
End If
|
||||
' Gestione check Trace
|
||||
If IniFile.GetPrivateProfileInt(S_SIMUL, K_TRACEENABLE, 0) <> 0 And
|
||||
EgtUILib.GetPrivateProfileInt(S_TOOLTRACE, K_TT_ENABLE, 0, m_sCurrMachIniFilePath) <> 0 Then
|
||||
Trace_Visibility = Visibility.Visible
|
||||
Trace_IsEnabled = True
|
||||
If TraceActive Then TraceActive = True
|
||||
Else
|
||||
Trace_Visibility = Visibility.Collapsed
|
||||
Trace_IsEnabled = False
|
||||
End If
|
||||
' Aggiorno visualizzazione dati macchina
|
||||
ShowCncData()
|
||||
StatusMsg = EgtMsg(MSG_SIMULATION + 14) ' HOME
|
||||
@@ -244,16 +284,22 @@ Public Class SimulationExpanderVM
|
||||
Map.refTopCommandBarVM.DrawIsEnabled = False
|
||||
Map.refOperationsListExpanderVM.OpersListViewIsEnabled = False
|
||||
Map.refOperationParametersExpanderVM.OperParamsViewIsEnabled = False
|
||||
Map.refMachGroupPanelVM.SetMachGroupState(False) ' Map.refMachGroupPanelVM.MachGroupPanelIsEnabled = False
|
||||
Map.refMachGroupPanelVM.SetMachGroupState(False)
|
||||
Map.refEstimationsExpanderVM.NotifyPropertyChanged("Estimation_IsEnabled")
|
||||
m_bStopOnNextCollision = True
|
||||
If Not EgtSimStart(False) Then
|
||||
If EgtGetLastMachMgrErrorId() <> 0 Then
|
||||
Dim nErr As Integer = EgtGetLastMachMgrErrorId()
|
||||
If nErr = 1000 Then
|
||||
MessageBox.Show(EgtMsg(5333), EgtMsg(5320), MessageBoxButton.OK, MessageBoxImage.Information)
|
||||
ElseIf nErr = 1001 Then
|
||||
MessageBox.Show(EgtMsg(5334), EgtMsg(5320), MessageBoxButton.OK, MessageBoxImage.Information)
|
||||
ElseIf nErr <> 0 Then
|
||||
Dim sErr As String = EgtGetLastMachMgrErrorString()
|
||||
MessageBox.Show(sErr, EgtMsg(MSG_SIMULATION + 5), MessageBoxButton.OK, MessageBoxImage.Exclamation) '.... - ERRORE
|
||||
MessageBox.Show(sErr, EgtMsg(5305), MessageBoxButton.OK, MessageBoxImage.Exclamation) '.... - ERRORE
|
||||
Else
|
||||
MessageBox.Show(EgtMsg(MSG_MESSAGEBOX + 10), EgtMsg(MSG_SIMULATION + 5), MessageBoxButton.OK, MessageBoxImage.Error) 'Errore sconosciuto - ERRORE
|
||||
MessageBox.Show(EgtMsg(15010), EgtMsg(5305), MessageBoxButton.OK, MessageBoxImage.Error) 'Errore sconosciuto - ERRORE
|
||||
End If
|
||||
SetSimulationStatus(MCH_SIM_ST.UI_STOP)
|
||||
End If
|
||||
Dim nShowDataCounter As Integer = 0
|
||||
While GetStatus() <> MCH_SIM_ST.UI_STOP
|
||||
@@ -316,8 +362,10 @@ Public Class SimulationExpanderVM
|
||||
End If
|
||||
' Aggiorno stato visualizzazione macchina (dipende anche da utensile)
|
||||
UpdateMachView()
|
||||
' Aggiorno visualizzazione
|
||||
' Aggiorno visualizzazione (solo se interfaccia non minimizzata, per aumentare velocità)
|
||||
If Application.Current.MainWindow.WindowState <> WindowState.Minimized Then
|
||||
EgtDraw()
|
||||
End If
|
||||
' Aggiorno dati CNC
|
||||
If nShowDataCounter = 5 Or GetSimulationStatus() = MCH_SIM_ST.UI_PAUSE Or GetSimulationStatus() = MCH_SIM_ST.UI_STOP Then
|
||||
ShowCncData()
|
||||
@@ -329,17 +377,22 @@ Public Class SimulationExpanderVM
|
||||
End If
|
||||
Else
|
||||
' Per evitare di ciclare rapidissimamente e consumare inutilmente CPU
|
||||
System.Threading.Thread.Sleep(4)
|
||||
System.Threading.Thread.Sleep(5)
|
||||
End If
|
||||
' Costringo ad aggiornare UI
|
||||
UpdateUI()
|
||||
End While
|
||||
SetSimExecuting(False)
|
||||
IniFile.m_bSimulExecuting = False
|
||||
If m_bOnlySimulation Then
|
||||
' Impedisco salvataggio eventuale modifica stato virtual milling
|
||||
EgtResetModified()
|
||||
Else
|
||||
Map.refTopCommandBarVM.DrawIsEnabled = True
|
||||
Map.refOperationsListExpanderVM.OpersListViewIsEnabled = True
|
||||
Map.refOperationParametersExpanderVM.OperParamsViewIsEnabled = True
|
||||
Map.refMachGroupPanelVM.SetMachGroupState(True) ' Map.refMachGroupPanelVM.MachGroupPanelIsEnabled = True
|
||||
Map.refMachGroupPanelVM.SetMachGroupState(True)
|
||||
End If
|
||||
Map.refEstimationsExpanderVM.NotifyPropertyChanged("Estimation_IsEnabled")
|
||||
If IniFile.m_bSimulEndExitApp Then
|
||||
refMainWindowVM.CloseApplication( Nothing)
|
||||
@@ -356,6 +409,7 @@ Public Class SimulationExpanderVM
|
||||
MachineAxisList(Index).IsReadOnlyAxesValue = True
|
||||
Next
|
||||
End If
|
||||
Trace_IsEnabled = (value = MCH_SIM_ST.UI_PAUSE OrElse value = MCH_SIM_ST.UI_STOP)
|
||||
EgtSimSetUiStatus(GetStatus())
|
||||
End Sub
|
||||
|
||||
@@ -395,18 +449,19 @@ Public Class SimulationExpanderVM
|
||||
sInfo = "EgtCAM5 ver." & Map.refMainWindowVM.Version() & " - " & sCurrFilePath
|
||||
#End If
|
||||
If EgtGetInfo(EgtGetCurrMachGroup(), KEY_MCHGRP_NCNAME, sCncFile) AndAlso Not String.IsNullOrWhiteSpace(sCncFile) Then
|
||||
sCncFile = Path.GetDirectoryName(sCurrFilePath) & "\" & sCncFile
|
||||
sCncFile = Path.GetDirectoryName(sCurrFilePath) & "\" & Path.GetFileName(sCncFile)
|
||||
Else
|
||||
sCncFile = Path.ChangeExtension(sCurrFilePath, Nothing)
|
||||
If IniFile.m_bMachiningGroup Then
|
||||
Dim sMGrpName As String = String.Empty
|
||||
If EgtGetMachGroupName(EgtGetCurrMachGroup(), sMGrpName) Then
|
||||
sCncFile &= "_" & sMGrpName & ".cnc"
|
||||
sCncFile &= "_" & sMGrpName
|
||||
sInfo &= "-" & sMGrpName
|
||||
End If
|
||||
Else
|
||||
sCncFile &= ".cnc"
|
||||
End If
|
||||
Dim sExt As String = ".cnc"
|
||||
EgtUILib.GetPrivateProfileString(S_PARTPROGRAM, K_EXTENSION, sExt, sExt, IniFile.m_sCurrMachIniFilePath)
|
||||
sCncFile = Path.ChangeExtension(sCncFile, sExt)
|
||||
End If
|
||||
Return True
|
||||
End Function
|
||||
@@ -414,16 +469,16 @@ Public Class SimulationExpanderVM
|
||||
Friend Sub SimulationExpander_Update_CncData( nFlag As Integer)
|
||||
If Simulation_IsExpanded Then
|
||||
ShowCncData()
|
||||
' Se fermo per Collisione rilevata da script Lua
|
||||
If nFlag = 11 Then
|
||||
' Se fermo per Collisione rilevata da script Lua o per altra richiesta
|
||||
If nFlag = 11 Or nFlag = 12 Then
|
||||
' Imposto stato Pausa
|
||||
SetSimulationStatus(MCH_SIM_ST.UI_PAUSE)
|
||||
StatusMsg = EgtMsg(MSG_SIMULATION + 11) ' PAUSA
|
||||
' Aggiornamenti per bottone Play/Pause
|
||||
SetShowPlay(True)
|
||||
NotifyPropertyChanged("PlayPauseImage")
|
||||
' Dichiaro di non arrestarsi alla successiva notifica di collisione
|
||||
m_bStopOnNextCollision = False
|
||||
' Se fermo per Collisione, dichiaro di non arrestarsi alla successiva notifica di collisione
|
||||
If nFlag = 11 Then m_bStopOnNextCollision = False
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
@@ -1,25 +1,37 @@
|
||||
<UserControl x:Class="MachiningOptionPanelV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="250"
|
||||
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"
|
||||
xmlns:interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity">
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtCAM5="clr-namespace:EgtCAM5"
|
||||
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5">
|
||||
|
||||
<StackPanel Name="ciao" Background="Transparent" MaxHeight="{Binding MaxHeight,RelativeSource={RelativeSource AncestorType={x:Type EgtFloating:EgtFloatingPanel}}}">
|
||||
<Grid x:Name="MachiningGrid" Background="Transparent" MaxHeight="{Binding MaxHeight,RelativeSource={RelativeSource AncestorType={x:Type EgtFloating:EgtFloatingPanel}}}">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition MinHeight="100" Height="400" MaxHeight="800"
|
||||
EgtCAM5:MachiningOptionPanelVM.IsExpanded="{Binding OperationsListRowIsExpanded}"
|
||||
EgtCAM5:MachiningOptionPanelVM.TargetSplitter="{Binding ElementName=MachiningGridSplitter}"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<!--ContentPresenter that contains the OperationsListExpander-->
|
||||
<ContentPresenter Content="{Binding OperationsListExpander,Mode=OneWay}"/>
|
||||
<GridSplitter Name="MachiningGridSplitter" Style="{StaticResource General_GridSplitter}"/>
|
||||
<!--ContentPresenter that contains the OperationParametersExpander-->
|
||||
<ContentPresenter Content="{Binding OperationParametersExpander,Mode=OneWay}"/>
|
||||
<ContentPresenter Grid.Row="1" Content="{Binding OperationParametersExpander,Mode=OneWay}"/>
|
||||
<!--ContentPresenter that contains the MachiningsTreeExpander-->
|
||||
<ContentPresenter Content="{Binding MachiningsTreeExpander}"/>
|
||||
<ContentPresenter Grid.Row="2" Content="{Binding MachiningsTreeExpander}"/>
|
||||
<!--ContentPresenter that contains the SimulationExpander-->
|
||||
<ContentPresenter Content="{Binding SimulationExpander}"/>
|
||||
<ContentPresenter Grid.Row="3" Content="{Binding SimulationExpander}"/>
|
||||
<!--ContentPresenter that contains the EstimationsExpander-->
|
||||
<ContentPresenter Content="{Binding EstimationsExpander}"/>
|
||||
<ContentPresenter Grid.Row="4" Content="{Binding EstimationsExpander}"/>
|
||||
|
||||
<Button Content="{Binding GenerateMsg}" Height="30"
|
||||
<Button Grid.Row="5"
|
||||
Content="{Binding GenerateMsg}" Height="30"
|
||||
IsEnabled="{Binding GenerateIsEnabled}"
|
||||
Command="{Binding GenerateCommand}"/>
|
||||
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
|
||||
</UserControl>
|
||||
|
||||
@@ -1,7 +1,25 @@
|
||||
Public Class MachiningOptionPanelV
|
||||
|
||||
Private Sub Me_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
|
||||
Dim x = ciao.MaxHeight
|
||||
Sub New()
|
||||
|
||||
' This call is required by the designer.
|
||||
InitializeComponent()
|
||||
|
||||
' Add any initialization after the InitializeComponent() call.
|
||||
Map.SetRefMachiningOptionPanelV(Me)
|
||||
|
||||
If Not IsActivePlugin() Then
|
||||
AddHandler MachiningGrid.Loaded,
|
||||
Sub()
|
||||
DynamicGridModule.RestoreMachiningGridLayout(MachiningGrid, If(IniFile.IsActivePlugin(), DynamicGridModule.PROJECT_MACHINING_PLUGIN, DynamicGridModule.PROJECT_MACHINING))
|
||||
MachiningGrid.UpdateLayout()
|
||||
End Sub
|
||||
|
||||
AddHandler MachiningGridSplitter.DragCompleted,
|
||||
Sub()
|
||||
DynamicGridModule.SaveMachiningGridLayout(MachiningGrid, If(IniFile.IsActivePlugin(), DynamicGridModule.PROJECT_MACHINING_PLUGIN, DynamicGridModule.PROJECT_MACHINING))
|
||||
End Sub
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
Imports EgtUILib
|
||||
Imports System.IO
|
||||
|
||||
Public Class MachiningOptionPanelVM
|
||||
Inherits ViewModelBase
|
||||
@@ -132,6 +133,17 @@ Public Class MachiningOptionPanelVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_OperationsListRowIsExpanded As Boolean = True
|
||||
Public ReadOnly Property OperationsListRowIsExpanded As Boolean
|
||||
Get
|
||||
Return m_OperationsListRowIsExpanded
|
||||
End Get
|
||||
End Property
|
||||
Friend Sub SetOperationsListRowIsExpanded(value As Boolean)
|
||||
m_OperationsListRowIsExpanded = value
|
||||
OnPropertyChanged("OperationsListRowIsExpanded")
|
||||
End Sub
|
||||
|
||||
#Region "Messages"
|
||||
|
||||
Public ReadOnly Property GenerateMsg As String
|
||||
@@ -195,4 +207,67 @@ Public Class MachiningOptionPanelVM
|
||||
|
||||
#End Region ' COMMANDS
|
||||
|
||||
#Region "DEPENCY PROPERTY"
|
||||
|
||||
Public Shared ReadOnly IsExpandedProperty As DependencyProperty =
|
||||
DependencyProperty.RegisterAttached(
|
||||
"IsExpanded",
|
||||
GetType(Boolean),
|
||||
GetType(MachiningOptionPanelVM),
|
||||
New PropertyMetadata(True, AddressOf OnIsExpandedChanged)
|
||||
)
|
||||
|
||||
Public Shared Sub SetIsExpanded(element As DependencyObject, value As Boolean)
|
||||
element.SetValue(IsExpandedProperty, value)
|
||||
End Sub
|
||||
|
||||
Public Shared Function GetIsExpanded(element As DependencyObject) As Boolean
|
||||
Return CType(element.GetValue(IsExpandedProperty), Boolean)
|
||||
End Function
|
||||
|
||||
Public Shared Function GetTargetSplitter(d As DependencyObject) As GridSplitter
|
||||
Return CType(d.GetValue(TargetSplitterProperty), GridSplitter)
|
||||
End Function
|
||||
|
||||
Public Shared Sub SetTargetSplitter(d As DependencyObject, value As GridSplitter)
|
||||
d.SetValue(TargetSplitterProperty, value)
|
||||
End Sub
|
||||
|
||||
Public Shared ReadOnly TargetSplitterProperty As DependencyProperty =
|
||||
DependencyProperty.RegisterAttached(
|
||||
"TargetSplitter",
|
||||
GetType(GridSplitter),
|
||||
GetType(MachiningOptionPanelVM),
|
||||
New PropertyMetadata(Nothing)
|
||||
)
|
||||
|
||||
Private Shared Sub OnIsExpandedChanged(d As DependencyObject, e As DependencyPropertyChangedEventArgs)
|
||||
Dim row As RowDefinition = TryCast(d, RowDefinition)
|
||||
If IsNothing(row) Then Return
|
||||
|
||||
Dim isExpanded As Boolean = CBool(e.NewValue)
|
||||
|
||||
Dim splitter = MachiningOptionPanelVM.GetTargetSplitter(row)
|
||||
If Not IsNothing(splitter) Then
|
||||
splitter.IsEnabled = isExpanded
|
||||
splitter.Visibility = If(isExpanded, Visibility.Visible, Visibility.Collapsed)
|
||||
End If
|
||||
|
||||
If Not isExpanded Then
|
||||
row.ClearValue(RowDefinition.HeightProperty)
|
||||
|
||||
row.Height = New GridLength(1, GridUnitType.Auto)
|
||||
row.MinHeight = 0
|
||||
Else
|
||||
If File.Exists(Map.refMainWindowVM.DimensionDir) Then
|
||||
DynamicGridModule.RestoreMachiningGridLayout(Map.refMachiningOptionPanelV.MachiningGrid, If(IniFile.IsActivePlugin(), DynamicGridModule.PROJECT_MACHINING_PLUGIN, DynamicGridModule.PROJECT_MACHINING))
|
||||
Map.refMachiningOptionPanelV.MachiningGrid.UpdateLayout()
|
||||
Else
|
||||
row.Height = New GridLength(350)
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' Depency Property
|
||||
|
||||
End Class
|
||||
@@ -1,6 +1,6 @@
|
||||
<EgtFloating:EgtFloatingPanel x:Class="OptionPanelV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="250"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"
|
||||
TitleBarOrientation="Vertical"
|
||||
Visibility="{Binding Panel_Visibility}">
|
||||
|
||||
@@ -60,6 +60,7 @@ Public Class OptionPanelVM
|
||||
Map.refSimulationExpanderVM.Simulation_IsExpanded = False
|
||||
Map.refEstimationsExpanderVM.Estimation_IsExpanded = False
|
||||
End If
|
||||
If Not IsNothing(Map.refManageLayerExpanderVM) Then Map.refManageLayerExpanderVM.SetManageLayerIsExpanded(True)
|
||||
NotifyPropertyChanged("ModePanel")
|
||||
End Sub
|
||||
|
||||
|
||||
@@ -12,8 +12,10 @@ Friend Module OptionModule
|
||||
Friend m_GridColor As Color3d
|
||||
' Flag per visualizzazione spessa delle linee
|
||||
Friend m_bThickLine As Boolean
|
||||
' Flag per visualizzazione smussata delle superfici
|
||||
Friend m_bSmoothTriMesh As Boolean
|
||||
' Qualità di visualizzazione delle superfici
|
||||
Friend m_ShowSurfQuality As SceneSurfQualityOpt
|
||||
' Tipo di visualizzazione delle Zmap
|
||||
Friend m_nShowZmapType As Integer
|
||||
|
||||
' Colore di default in disegno
|
||||
Friend m_DefMaterialColor As Color3d
|
||||
@@ -23,7 +25,10 @@ Friend Module OptionModule
|
||||
' Parametri per import
|
||||
Friend m_dDxfScaleFactor As Double
|
||||
Friend m_dStlScaleFactor As Double
|
||||
Friend m_dOffScaleFactor As Double
|
||||
Friend m_dPlyScaleFactor As Double
|
||||
Friend m_dImgScaleFactor As Double
|
||||
Friend m_dAdvImpTolerance As Double
|
||||
|
||||
' Parametri per export
|
||||
Friend m_nExportDxfFlag As Integer
|
||||
@@ -53,7 +58,12 @@ Friend Module OptionModule
|
||||
Friend m_SelGeomGenMachining As SceneSelModeOpt
|
||||
Friend m_SelGeomChiseling As SceneSelModeOpt
|
||||
Friend m_SelGeomSurfFinishing As SceneSelModeOpt
|
||||
Friend m_SelGeomSurfRoughing As SceneSelModeOpt
|
||||
Friend m_SelGeomWaterJetting As SceneSelModeOpt
|
||||
Friend m_SelGeomFiveAxMilling As SceneSelModeOpt
|
||||
Friend m_SelGeomProbing As SceneSelModeOpt
|
||||
' Qualità di calcolo del virtual milling
|
||||
Friend m_VMillQuality As VMillSelTypeOpt
|
||||
' Flag per aggiungere una nuova lavorazione alla fine della fase o subito dopo la lavorazione selezionata
|
||||
Friend m_bNewMachiningIsLastOne As Boolean
|
||||
' Variabile che indica se usare lo script per calcolare automaticamente la disposizione quando si passa in lavorazione
|
||||
@@ -64,6 +74,9 @@ Friend Module OptionModule
|
||||
Friend m_bBeamOn As Boolean
|
||||
Friend m_bWallOn As Boolean
|
||||
Friend m_bDoorsOn As Boolean
|
||||
Friend m_bWindowOn As Boolean
|
||||
Friend m_bTrimmingOn As Boolean
|
||||
Friend m_bReversePostOn As Boolean
|
||||
Friend m_bGunstockOn As Boolean
|
||||
|
||||
' inizializzazione lettura variabili ad inizio programma
|
||||
@@ -78,7 +91,7 @@ Friend Module OptionModule
|
||||
End While
|
||||
If nIndex = 1 Then
|
||||
EgtOutLog("Error missing languages section in Config.ini")
|
||||
MessageBox.Show( "Error : missing languages informations", "EgtCAM5", MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
MessageBox.Show("Error : missing languages informations", "EgtCAM5", MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
End
|
||||
End If
|
||||
' Inizializzo la lingua corrente
|
||||
@@ -102,19 +115,33 @@ Friend Module OptionModule
|
||||
GetPrivateProfileColor(S_GRID, K_MINLNCOLOR, GridColor)
|
||||
m_GridColor = GridColor
|
||||
' Inizializzo flag linee ingrossate
|
||||
m_bThickLine = ( GetPrivateProfileInt(S_SCENE, K_LINEWIDTH, 1) <> 1)
|
||||
m_bThickLine = (GetPrivateProfileInt(S_SCENE, K_LINEWIDTH, 1) <> 1)
|
||||
' Inizializzo flag visualizzazione smussata delle superfici
|
||||
m_bSmoothTriMesh = ( GetPrivateProfileInt(S_SCENE, K_SHOWTRIAADV, 1) <> 0)
|
||||
Dim nSSQ As Integer = GetPrivateProfileInt(S_SCENE, K_SHOWSURFQUALITY, 0)
|
||||
m_ShowSurfQuality = DirectCast( Math.Min( Math.Max( nSSQ, -2), 2), SceneSurfQualityOpt)
|
||||
' Inizializzo tipo di visualizzazione Zmap
|
||||
m_nShowZmapType = GetPrivateProfileInt(S_SCENE, K_SHOWZMAP, 9)
|
||||
' Inizio colore di default in disegno
|
||||
Dim DefColor As New Color3d(0, 0, 0)
|
||||
GetPrivateProfileColor(S_GEOMDB, K_DEFAULTCOLOR, DefColor)
|
||||
m_DefMaterialColor = DefColor
|
||||
' Inizializzo tolleranza geometrica
|
||||
m_dGeometryTolerance = GetPrivateProfileDouble(S_GEOMDB, K_SURFTMTOLER, 0.05)
|
||||
' Inizializzo stile corrente delle quotature
|
||||
m_dExtLineLen = GetPrivateProfileDouble(S_DIMENSIONSTYLE, K_EXTLINELEN, 5)
|
||||
m_dArrowLen = GetPrivateProfileDouble(S_DIMENSIONSTYLE, K_ARROWLEN, 5)
|
||||
m_dTextDist = GetPrivateProfileDouble(S_DIMENSIONSTYLE, K_TEXTDIST, 2)
|
||||
m_nLenIsMM = GetPrivateProfileInt(S_DIMENSIONSTYLE, K_LENISMM, 2)
|
||||
m_nDecDigit = GetPrivateProfileInt(S_DIMENSIONSTYLE, K_DECDIGIT, -2)
|
||||
m_sFont = "" : GetPrivateProfileStringUtf8(S_DIMENSIONSTYLE, K_DIMFONT, "ModernPropS.Nfe", m_sFont)
|
||||
m_dTextHeight = GetPrivateProfileDouble(S_DIMENSIONSTYLE, K_TEXTHEIGHT, 2)
|
||||
' Inizializzo variabili per import
|
||||
m_dDxfScaleFactor = GetPrivateProfileDouble(S_IMPORT, K_DXFSCALE, 1)
|
||||
m_dStlScaleFactor = GetPrivateProfileDouble(S_IMPORT, K_STLSCALE, 1)
|
||||
m_dOffScaleFactor = GetPrivateProfileDouble(S_IMPORT, K_OFFSCALE, 1)
|
||||
m_dPlyScaleFactor = GetPrivateProfileDouble(S_IMPORT, K_PLYSCALE, 1)
|
||||
m_dImgScaleFactor = GetPrivateProfileDouble(S_IMPORT, K_IMGSCALE, 1)
|
||||
m_dAdvImpTolerance = GetPrivateProfileDouble(S_IMPORT, K_ADVTOLER, 0.05)
|
||||
' Inizializzo variabili per export
|
||||
m_nExportDxfFlag = GetPrivateProfileInt(S_EXPORT, K_DXFFLAG, EEX_FL.COMP_LAYER)
|
||||
m_nImgWidth = GetPrivateProfileInt(S_EXPORT, K_IMGWIDTH, 400)
|
||||
@@ -141,7 +168,16 @@ Friend Module OptionModule
|
||||
m_SelGeomChiseling = If(Temp < 0 Or Temp > 3, SceneSelModeOpt.PARTCURVESANDSURFACES, DirectCast(Temp, SceneSelModeOpt))
|
||||
Temp = GetPrivateProfileInt(S_MACH, K_SELGEOMSURFFINISHING, -1)
|
||||
m_SelGeomSurfFinishing = If(Temp < 0 Or Temp > 3, SceneSelModeOpt.PARTCURVESANDSURFACES, DirectCast(Temp, SceneSelModeOpt))
|
||||
Temp = GetPrivateProfileInt(S_MACH, K_SELGEOMSURFROUGHING, -1)
|
||||
m_SelGeomSurfRoughing = If(Temp < 0 Or Temp > 3, SceneSelModeOpt.PARTCURVESANDSURFACES, DirectCast(Temp, SceneSelModeOpt))
|
||||
Temp = GetPrivateProfileInt(S_MACH, K_SELGEOMFIVEAXMILLING, -1)
|
||||
m_SelGeomFiveAxMilling = If(Temp < 0 Or Temp > 3, SceneSelModeOpt.PARTCURVESANDSURFACES, DirectCast(Temp, SceneSelModeOpt))
|
||||
Temp = GetPrivateProfileInt(S_MACH, K_SELGEOMPROBING, -1)
|
||||
m_SelGeomProbing = If(Temp < 0 Or Temp > 3, SceneSelModeOpt.PARTCURVESANDSURFACES, DirectCast(Temp, SceneSelModeOpt))
|
||||
m_SelGeomWaterJetting = SceneSelModeOpt.PARTCURVES
|
||||
' Inizializzo qualità di virtual milling
|
||||
Temp = GetPrivateProfileInt(S_MACH, K_VMILLQUALITY, 0)
|
||||
m_VMillQuality = DirectCast(Math.Min( Math.Max( Temp, -2), 2), VMillSelTypeOpt)
|
||||
' Inizializzo variabile che indica posizione nuova operazione di lavorazione
|
||||
m_bNewMachiningIsLastOne = (GetPrivateProfileInt(S_OPTIONS, K_NEWMACHININGISLASTONE, 0) <> 0)
|
||||
' Inizializzo variabile che indica se usare script di disposizione
|
||||
@@ -151,9 +187,42 @@ Friend Module OptionModule
|
||||
m_bBeamOn = (GetPrivateProfileInt(S_BEAM, K_BEAMENABLE, 0) <> 0)
|
||||
m_bWallOn = (GetPrivateProfileInt(S_WALL, K_WALLENABLE, 0) <> 0)
|
||||
m_bDoorsOn = (GetPrivateProfileInt(S_DOORS, K_DDFENABLE, 0) <> 0)
|
||||
m_bWindowOn = (GetPrivateProfileInt(S_WINDOW, K_WINDOWENABLE, 0) <> 0)
|
||||
m_bTrimmingOn = (GetPrivateProfileInt(S_TRIMMING, K_TRIMMINGENABLE, 0) <> 0)
|
||||
m_bReversePostOn = (GetPrivateProfileInt(S_REVERSEPOST, K_REVERSEPOSTENABLE, 0) <> 0)
|
||||
m_bGunstockOn = (GetPrivateProfileInt(S_GUNSTOCK, K_GUNSTOCKENABLE, 0) <> 0)
|
||||
End Sub
|
||||
|
||||
' restituisco spessore linee
|
||||
Friend Function GetLineWidth() As Integer
|
||||
Return If( m_bThickLine, 2, 1)
|
||||
End Function
|
||||
|
||||
' imposto stato visualizzazione superfici
|
||||
Friend Sub SetShowSurfQuality( bRedraw As Boolean)
|
||||
Dim bSmoothTriMesh As Boolean = True
|
||||
Dim dSrfBezShowTol As Double = 0.2
|
||||
Select m_ShowSurfQuality
|
||||
Case SceneSurfQualityOpt.LOWER
|
||||
bSmoothTriMesh = False
|
||||
dSrfBezShowTol = 4
|
||||
Case SceneSurfQualityOpt.LOW
|
||||
bSmoothTriMesh = False
|
||||
dSrfBezShowTol = 1
|
||||
Case SceneSurfQualityOpt.STANDARD
|
||||
bSmoothTriMesh = True
|
||||
dSrfBezShowTol = 0.2
|
||||
Case SceneSurfQualityOpt.HIGH
|
||||
bSmoothTriMesh = True
|
||||
dSrfBezShowTol = 0.05
|
||||
Case SceneSurfQualityOpt.HIGHER
|
||||
bSmoothTriMesh = True
|
||||
dSrfBezShowTol = 0.01
|
||||
End Select
|
||||
EgtSetShowTriaAdv(bSmoothTriMesh, false)
|
||||
EgtSetShowSurfBezierTol(dSrfBezShowTol, bRedraw)
|
||||
End Sub
|
||||
|
||||
End Module
|
||||
|
||||
' Classe che identifica una lingua del programma con nome e path del file dei messaggi
|
||||
|
||||
@@ -9,11 +9,13 @@
|
||||
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="False"
|
||||
IsMinimizable="False" WindowStartupLocation="CenterScreen" ShowInTaskbar="False"
|
||||
MinWidth="400" MinHeight="382"
|
||||
Width="400" Height="412"
|
||||
Width="400" Height="600"
|
||||
CloseCommand="{Binding CloseOptionsCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}">
|
||||
|
||||
<EgtWPFLib5:EgtCustomWindow.Resources>
|
||||
<local:GeomTypeConverter x:Key="GeomTypeConverter"/>
|
||||
<local:SceneSurfQualityOptConverter x:Key="SceneSurfQualityOptConverter"/>
|
||||
<local:VMillTypeConverter x:Key="VMillTypeConverter"/>
|
||||
</EgtWPFLib5:EgtCustomWindow.Resources>
|
||||
|
||||
<TabControl Margin="5,5,5,5">
|
||||
@@ -25,7 +27,8 @@
|
||||
<ComboBox ItemsSource="{Binding LanguageList, Mode=OneWay}" Height="25"
|
||||
DisplayMemberPath="Name" SelectedItem="{Binding SelectedLanguage}"
|
||||
Margin="0,0,0,5"/>
|
||||
<TextBlock Text="{Binding LanguageAdvertMsg}" TextWrapping="Wrap"
|
||||
<TextBlock Text="{Binding LanguageAdvertMsg}"
|
||||
TextWrapping="Wrap"
|
||||
TextAlignment="Center"/>
|
||||
</UniformGrid>
|
||||
</GroupBox>
|
||||
@@ -63,10 +66,17 @@
|
||||
Grid.Row="0" Margin="0,5,0,5"/>
|
||||
<CheckBox IsChecked="{Binding ThickLine}"
|
||||
Grid.Column="1" Grid.Row="0" Margin="22,5,0,5" VerticalAlignment="Center"/>
|
||||
<TextBlock Text="{Binding SmoothTriMeshMsg}" VerticalAlignment="Center"
|
||||
<TextBlock Text="{Binding SceneSurfQualityMsg}" VerticalAlignment="Center"
|
||||
Grid.Row="1" Margin="0,5,0,5"/>
|
||||
<CheckBox IsChecked="{Binding SmoothTriMesh}"
|
||||
Grid.Column="1" Grid.Row="1" Margin="22,5,0,5" VerticalAlignment="Center"/>
|
||||
<ComboBox ItemsSource="{Binding SceneSurfQualityOptList, Mode=OneWay}"
|
||||
SelectedItem="{Binding SelectedSceneSurfQualityOpt}"
|
||||
Grid.Column="1" Grid.Row="1" Height="25" Margin="0,5,0,5">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Converter={StaticResource SceneSurfQualityOptConverter}}"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</Grid>
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5">
|
||||
@@ -75,7 +85,31 @@
|
||||
SelectedItem="{Binding SelectedTextFont}" Height="25"
|
||||
Margin="10,5,0,0"/>
|
||||
</UniformGrid>
|
||||
<Grid Margin="5,5,5,5">
|
||||
<GroupBox Header="ShowZmap"
|
||||
Visibility="{Binding ShowZmapVisibility}"
|
||||
Margin="0,0,0,5">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<CheckBox IsChecked="{Binding ShowZmapSurf}"
|
||||
Content="Surfaces" FlowDirection="RightToLeft"
|
||||
Grid.Row="0" Grid.Column="0" Margin="5,5,10,5" VerticalAlignment="Center"/>
|
||||
<CheckBox IsChecked="{Binding ShowZmapLines}"
|
||||
Content="Lines" FlowDirection="RightToLeft"
|
||||
Grid.Row="0" Grid.Column="1" Margin="5,5,10,5" VerticalAlignment="Center"/>
|
||||
<CheckBox IsChecked="{Binding ShowZmapNormals}"
|
||||
Content="Normals" FlowDirection="RightToLeft"
|
||||
Grid.Row="0" Grid.Column="2" Margin="5,5,10,5" VerticalAlignment="Center"/>
|
||||
<CheckBox IsChecked="{Binding ShowZmapBiColor}"
|
||||
Content="BiColor" FlowDirection="RightToLeft"
|
||||
Grid.Row="0" Grid.Column="3" Margin="5,5,10,5" VerticalAlignment="Center"/>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
<Grid Margin="5,100,5,5">
|
||||
<Button Content="{Binding UpdateLicenceMsg}" Command="{Binding UpdateLicence_Command}" Height="26" Margin="100,1"/>
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
@@ -131,10 +165,12 @@
|
||||
</UniformGrid>
|
||||
</GroupBox>
|
||||
</StackPanel>
|
||||
|
||||
</TabItem>
|
||||
<TabItem Header="{Binding ImportMsg}">
|
||||
<StackPanel Margin="5,5,5,0">
|
||||
<GroupBox Grid.Column="1" Grid.RowSpan="2"
|
||||
Header=""
|
||||
Margin="0,0,0,5">
|
||||
<Grid Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
@@ -146,25 +182,26 @@
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Grid.Row="0" Grid.Column="1"
|
||||
VerticalAlignment="Center" HorizontalAlignment="Center"
|
||||
Text="{Binding UnitScaleMsg}" />
|
||||
Text="{Binding UnitScaleMsg}"/>
|
||||
<TextBlock Grid.Row="0" Grid.Column="2"
|
||||
VerticalAlignment="Center" HorizontalAlignment="Center"
|
||||
Text="{Binding FactorScaleMsg}"/>
|
||||
|
||||
<TextBlock Grid.Row="1" Grid.Column="0"
|
||||
Text="{Binding DxfScaleFactorMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox Grid.Row="1" Grid.Column="1"
|
||||
ItemsSource="{Binding ScaleDXFList, Mode=OneWay}"
|
||||
SelectedItem="{Binding SelectedDXFScale, UpdateSourceTrigger=PropertyChanged}" Height="25"
|
||||
Margin="10,0,0,5"/>
|
||||
Margin="10,5,0,5"/>
|
||||
<TextBox Grid.Row="1" Grid.Column="2"
|
||||
Text="{Binding DxfScaleFactor}" Height="25"
|
||||
IsEnabled="{Binding DXFScaleEnable, UpdateSourceTrigger=LostFocus}"
|
||||
VerticalContentAlignment="Center"
|
||||
Margin="10,0,0,5"/>
|
||||
Margin="10,5,0,5"/>
|
||||
<TextBlock Grid.Row="2" Grid.Column="0"
|
||||
Text="{Binding StlScaleFactorMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox Grid.Row="2" Grid.Column="1"
|
||||
@@ -177,17 +214,47 @@
|
||||
VerticalContentAlignment="Center"
|
||||
Margin="10,0,0,5"/>
|
||||
<TextBlock Grid.Row="3" Grid.Column="0"
|
||||
Text="{Binding ImageScaleFactorMsg}" VerticalAlignment="Center"/>
|
||||
Text="{Binding OffScaleFactorMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox Grid.Row="3" Grid.Column="1"
|
||||
ItemsSource="{Binding ScaleOffList, Mode=OneWay}"
|
||||
SelectedItem="{Binding SelectedOffScale, UpdateSourceTrigger=PropertyChanged}" Height="25"
|
||||
Margin="10,0,0,5"/>
|
||||
<TextBox Grid.Row="3" Grid.Column="2"
|
||||
Text="{Binding OffScaleFactor}" Height="25"
|
||||
IsEnabled="{Binding OffScaleEnable, UpdateSourceTrigger=LostFocus}"
|
||||
VerticalContentAlignment="Center"
|
||||
Margin="10,0,0,5"/>
|
||||
<TextBlock Grid.Row="4" Grid.Column="0"
|
||||
Text="{Binding PlyScaleFactorMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox Grid.Row="4" Grid.Column="1"
|
||||
ItemsSource="{Binding ScalePlyList, Mode=OneWay}"
|
||||
SelectedItem="{Binding SelectedPlyScale, UpdateSourceTrigger=PropertyChanged}" Height="25"
|
||||
Margin="10,0,0,5"/>
|
||||
<TextBox Grid.Row="4" Grid.Column="2"
|
||||
Text="{Binding PlyScaleFactor}" Height="25"
|
||||
IsEnabled="{Binding PlyScaleEnable, UpdateSourceTrigger=LostFocus}"
|
||||
VerticalContentAlignment="Center"
|
||||
Margin="10,0,0,5"/>
|
||||
<TextBlock Grid.Row="5" Grid.Column="0"
|
||||
Text="{Binding ImageScaleFactorMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox Grid.Row="5" Grid.Column="1"
|
||||
ItemsSource="{Binding ScaleImageList, Mode=OneWay}"
|
||||
SelectedItem="{Binding SelectedImageScale, UpdateSourceTrigger=PropertyChanged}" Height="25"
|
||||
Margin="10,0,0,5"/>
|
||||
<TextBox Grid.Row="3" Grid.Column="2"
|
||||
<TextBox Grid.Row="5" Grid.Column="2"
|
||||
Text="{Binding ImageScaleFactor}" Height="25"
|
||||
IsEnabled="{Binding ImageScaleEnable, UpdateSourceTrigger=LostFocus}"
|
||||
VerticalContentAlignment="Center"
|
||||
Margin="10,0,0,5"/>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
<UniformGrid Grid.ColumnSpan="2" Columns="2"
|
||||
Margin="0,5,0,5">
|
||||
<TextBlock Text="{Binding AdvImpToleranceMsg}" VerticalAlignment="Center"/>
|
||||
<TextBox Text="{Binding AdvImpTolerance}" Height="25"
|
||||
VerticalContentAlignment="Center"
|
||||
Margin="10,0,0,0"/>
|
||||
</UniformGrid>
|
||||
</StackPanel>
|
||||
</TabItem>
|
||||
<TabItem Header="{Binding ExportMsg}">
|
||||
@@ -214,6 +281,15 @@
|
||||
Header="{Binding MachiningSelGeomMsg}"
|
||||
Margin="5,5,5,0">
|
||||
<UniformGrid Columns="2">
|
||||
<TextBlock Text="{Binding GeomTypeProbingMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox ItemsSource="{Binding GeomTypeList, Mode=OneWay}"
|
||||
SelectedItem="{Binding SelectedProbingGeomType}" Height="25">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Converter={StaticResource GeomTypeConverter}}"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
<TextBlock Text="{Binding GeomTypeDrillingMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox ItemsSource="{Binding GeomTypeList, Mode=OneWay}"
|
||||
SelectedItem="{Binding SelectedDrillingGeomType}" Height="25">
|
||||
@@ -260,6 +336,15 @@
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
<TextBlock Text="{Binding GeomTypeGenMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox ItemsSource="{Binding GeomTypeList, Mode=OneWay}"
|
||||
SelectedItem="{Binding SelectedGenGeomType}" Height="25">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Converter={StaticResource GeomTypeConverter}}"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
<TextBlock Text="{Binding GeomTypeChiselingMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox ItemsSource="{Binding GeomTypeList, Mode=OneWay}"
|
||||
SelectedItem="{Binding SelectedChiselingGeomType}" Height="25">
|
||||
@@ -269,35 +354,80 @@
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
<TextBlock Text="{Binding GeomTypeSurRoughMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox ItemsSource="{Binding GeomTypeList, Mode=OneWay}"
|
||||
SelectedItem="{Binding SelectedSurfRoughGeomType}" Height="25">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Converter={StaticResource GeomTypeConverter}}"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
<TextBlock Text="{Binding GeomTypeSurFinishMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox ItemsSource="{Binding GeomTypeList, Mode=OneWay}"
|
||||
SelectedItem="{Binding SelectedSurfFinishGeomType}" Height="25">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Converter={StaticResource GeomTypeConverter}}"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
<!--<TextBlock Text="{Binding GeomTypeWaterJetMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox ItemsSource="{Binding GeomTypeList, Mode=OneWay}"
|
||||
SelectedItem="{Binding SelectedWaterJetGeomType}" Height="25">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Converter={StaticResource GeomTypeConverter}}"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>-->
|
||||
<TextBlock Text="{Binding GeomTypeFiveAxMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox ItemsSource="{Binding GeomTypeList, Mode=OneWay}"
|
||||
SelectedItem="{Binding SelectedFiveAxGeomType}" Height="25">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Converter={StaticResource GeomTypeConverter}}"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</UniformGrid>
|
||||
</GroupBox>
|
||||
|
||||
<Grid Margin="5,5,5,0">
|
||||
<Grid Margin="10,5,10,0">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="{Binding NewMachiningPosMsg}" VerticalAlignment="Center"
|
||||
Grid.Row="0" Margin="0,0,0,5"/>
|
||||
<CheckBox IsChecked="{Binding NewMachiningIsLastOne}"
|
||||
Grid.Column="1" Grid.Row="0" Margin="4,0,0,0" VerticalAlignment="Center"/>
|
||||
<TextBlock Text="{Binding UseDispositionScriptMsg}" VerticalAlignment="Center"
|
||||
Grid.Row="1" Margin="0,0,0,5"/>
|
||||
<CheckBox IsChecked="{Binding UseDispositionScript}"
|
||||
Grid.Column="1" Grid.Row="1" Margin="4,0,0,0" VerticalAlignment="Center"/>
|
||||
<UniformGrid Columns="2" Grid.ColumnSpan="2" Margin="0,5,0,0">
|
||||
<TextBlock Text="{Binding VMillQualityMsg}" VerticalAlignment="Center"/>
|
||||
<ComboBox ItemsSource="{Binding VMillTypeList, Mode=OneWay}"
|
||||
SelectedItem="{Binding SelectedVMillQualityType}" Height="25">
|
||||
<ComboBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Converter={StaticResource VMillTypeConverter}}"/>
|
||||
</DataTemplate>
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</UniformGrid>
|
||||
<TextBlock Grid.Row="1" Text="{Binding NewMachiningPosMsg}" VerticalAlignment="Center"
|
||||
Margin="0,8,0,5"/>
|
||||
<CheckBox Grid.Row="1" Grid.Column="1" IsChecked="{Binding NewMachiningIsLastOne}"
|
||||
Margin="4,8,0,0" VerticalAlignment="Center"/>
|
||||
<TextBlock Grid.Row="2" Text="{Binding UseDispositionScriptMsg}"
|
||||
VerticalAlignment="Center" Margin="0,5,0,5"/>
|
||||
<CheckBox Grid.Row="2" Grid.Column="1" IsChecked="{Binding UseDispositionScript}"
|
||||
Margin="4,5,0,0" VerticalAlignment="Center"/>
|
||||
</Grid>
|
||||
|
||||
<Grid Margin="5,5,5,0">
|
||||
<Button Content="{Binding AddMachineMsg}" Command="{Binding AddMachine_Command}" Height="26" Margin="100,1"/>
|
||||
</Grid>
|
||||
|
||||
<Grid Margin="5,5,5,0">
|
||||
<UniformGrid Rows="2">
|
||||
<Button Content="{Binding AddMachineMsg}" Command="{Binding AddMachine_Command}" Height="26" Margin="100,10,100,5"/>
|
||||
<Button Content="{Binding ExportMachineMsg}" Command="{Binding ExportMachine_Command}" Height="26" Margin="100,1"/>
|
||||
</Grid>
|
||||
</UniformGrid>
|
||||
</StackPanel>
|
||||
</TabItem>
|
||||
|
||||
@@ -305,9 +435,9 @@
|
||||
<StackPanel>
|
||||
<Grid Margin="5,20,5,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="3*"/>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition Width="3*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
@@ -315,33 +445,51 @@
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="{Binding SpecialMsg}"
|
||||
Grid.Row="0" Margin="0,5,0,5"/>
|
||||
<CheckBox IsChecked="{Binding SpecialOn}"
|
||||
Grid.Row="0" Grid.Column="1" Margin="4,5,0,5" VerticalAlignment="Center"/>
|
||||
<TextBlock Text="{Binding BeamMsg}"
|
||||
Grid.Row="1" Grid.Column="0" Margin="0,5,0,5"/>
|
||||
Grid.Row="0" Grid.Column="0" Margin="0,5,0,5"/>
|
||||
<CheckBox IsChecked="{Binding BeamOn}" IsEnabled="{Binding BeamEnabled}"
|
||||
Grid.Row="1" Grid.Column="1" Margin="4,5,0,5" VerticalAlignment="Center"/>
|
||||
Grid.Row="0" Grid.Column="1" Margin="4,5,0,5" VerticalAlignment="Center"/>
|
||||
<Button Content="{Binding UpdateMsg}" IsEnabled="{Binding BeamActive}"
|
||||
Command="{Binding UpdateBeam_Command}"
|
||||
Grid.Row="1" Grid.Column="2" Height="26"/>
|
||||
Grid.Row="0" Grid.Column="2" Height="26"/>
|
||||
<TextBlock Text="{Binding WallMsg}"
|
||||
Grid.Row="2" Grid.Column="0" Margin="0,5,0,5"/>
|
||||
Grid.Row="1" Grid.Column="0" Margin="0,5,0,5"/>
|
||||
<CheckBox IsChecked="{Binding WallOn}" IsEnabled="{Binding WallEnabled}"
|
||||
Grid.Row="2" Grid.Column="1" Margin="4,5,0,5" VerticalAlignment="Center"/>
|
||||
Grid.Row="1" Grid.Column="1" Margin="4,5,0,5" VerticalAlignment="Center"/>
|
||||
<Button Content="{Binding UpdateMsg}" IsEnabled="{Binding WallActive}"
|
||||
Command="{Binding UpdateWall_Command}"
|
||||
Grid.Row="2" Grid.Column="2" Height="26"/>
|
||||
Grid.Row="1" Grid.Column="2" Height="26"/>
|
||||
<TextBlock Text="{Binding DoorsMsg}" VerticalAlignment="Center"
|
||||
Grid.Row="3" Grid.Column="0" Margin="0,5,0,5"/>
|
||||
Grid.Row="2" Grid.Column="0" Margin="0,5,0,5"/>
|
||||
<CheckBox IsChecked="{Binding DoorsOn}" IsEnabled="{Binding DoorsEnabled}"
|
||||
Grid.Row="2" Grid.Column="1" Margin="4,5,0,5" VerticalAlignment="Center"/>
|
||||
<Button Content="{Binding UpdateMsg}" IsEnabled="{Binding DoorsActive}"
|
||||
Command="{Binding UpdateDoors_Command}"
|
||||
Grid.Row="2" Grid.Column="2" Height="26"/>
|
||||
<TextBlock Text="{Binding WindowMsg}" VerticalAlignment="Center"
|
||||
Grid.Row="3" Grid.Column="0" Margin="0,5,0,5"/>
|
||||
<CheckBox IsChecked="{Binding WindowOn}" IsEnabled="{Binding WindowEnabled}"
|
||||
Grid.Row="3" Grid.Column="1" Margin="4,5,0,5" VerticalAlignment="Center"/>
|
||||
<TextBlock Text="{Binding GunstockMsg}" VerticalAlignment="Center"
|
||||
<TextBlock Text="{Binding TrimmingMsg}" VerticalAlignment="Center"
|
||||
Grid.Row="4" Grid.Column="0" Margin="0,5,0,5"/>
|
||||
<CheckBox IsChecked="{Binding GunstockOn}" IsEnabled="{Binding GunstockEnabled}"
|
||||
<CheckBox IsChecked="{Binding TrimmingOn}" IsEnabled="{Binding TrimmingEnabled}"
|
||||
Grid.Row="4" Grid.Column="1" Margin="4,5,0,5" VerticalAlignment="Center"/>
|
||||
<TextBlock Text="{Binding ReversePostMsg}" VerticalAlignment="Center"
|
||||
Grid.Row="5" Grid.Column="0" Margin="0,5,0,5"/>
|
||||
<CheckBox IsChecked="{Binding ReversePostOn}" IsEnabled="{Binding ReversePostEnabled}"
|
||||
Grid.Row="5" Grid.Column="1" Margin="4,5,0,5" VerticalAlignment="Center"/>
|
||||
<TextBlock Text="{Binding GunstockMsg}" VerticalAlignment="Center"
|
||||
Grid.Row="6" Grid.Column="0" Margin="0,5,0,5"/>
|
||||
<CheckBox IsChecked="{Binding GunstockOn}" IsEnabled="{Binding GunstockEnabled}"
|
||||
Grid.Row="6" Grid.Column="1" Margin="4,5,0,5" VerticalAlignment="Center"/>
|
||||
<TextBlock Text="{Binding SpecialMsg}"
|
||||
Grid.Row="7" Margin="0,5,0,5"/>
|
||||
<CheckBox IsChecked="{Binding SpecialOn}"
|
||||
Grid.Row="7" Grid.Column="1" Margin="4,5,0,5" VerticalAlignment="Center"/>
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
</TabItem>
|
||||
|
||||
+703
-126
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user