Compare commits

..

290 Commits

Author SHA1 Message Date
Nicola Pievani 148d11419e Correzione avvio MachiningDBWindow 2025-05-23 11:01:29 +02:00
Nicola Pievani 8c55f56d84 Merge commit '7e323827de1293d4c61395540df742856400f92b' into Features/3D_In_VeinMatch 2025-04-16 08:49:44 +02:00
Daniele Bariletti 94c11d1ace - piccole correzioni. 2025-02-27 11:39:33 +01:00
Nicola Pievani 70bd114e32 Gestione importazione progetto da EgtSTONE3D 2025-02-10 11:10:53 +01:00
Daniele Bariletti 4201c606ae - piccole correzioni e aggiunta commenti. 2025-01-23 08:57:17 +01:00
Daniele Bariletti f4d00d6ecb -modifica alle opzioni di pair. 2025-01-03 16:37:36 +01:00
Daniele Bariletti 3b00162276 piccole correzioni. 2025-01-02 16:47:14 +01:00
Nicola Pievani 7e323827de Merge commit 'ee57c64e91aa6413862d6a7f3eb4b9fade346a76' 2024-12-24 15:14:04 +01:00
Nicola Pievani ee57c64e91 Correzione scrittura nomi 2024-12-24 14:40:03 +01:00
Nicola Pievani 391fa8dbb5 Nuova gestione Layer indici tagli pagina Nest 2024-12-24 12:06:27 +01:00
Nicola Pievani 0bcd67a402 Merge commit '1ca8c76bbfcc5e9fc5e131dac80b3c3f928d9a23' 2024-12-23 13:27:16 +01:00
Nicola Pievani 1ca8c76bbf Nuova gestione taglio Saw&Waterjet 2024-12-23 13:26:50 +01:00
Daniele Bariletti 58576517f0 - creazione automatica dei solidi, se non presenti, durante l'assemblaggio automatico. 2024-12-20 17:51:49 +01:00
Daniele Bariletti 9365ce47d8 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2024-12-09 15:45:57 +01:00
Daniele Bariletti 8e947039d6 - pulizia codice. 2024-12-09 15:45:51 +01:00
Nicola Pievani 60114f5654 Correzione gestione UpdateView 2024-12-09 13:45:55 +01:00
Nicola Pievani 368a44f7e0 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2024-12-09 12:19:18 +01:00
Nicola Pievani b4f53198cd Cambio versione 2024-12-09 12:19:09 +01:00
Daniele Bariletti d2e260a91a - modificata la finestra in custom window e aggiunta la titlebar che permette il drag
- gestiti i popup alla chiusura della finestra VeinMatching.
2024-12-02 11:41:32 +01:00
Daniele Bariletti bbd06bb345 Cabinet:
- gestione del passaggio da parametrico a parcheggio.
2024-11-28 11:15:11 +01:00
Daniele Bariletti 42d1ecfa80 VeinMatch:
- cambio variabile da CMP a SLD
- aggiornamento paired allo start
- aggiornamento tree
2024-11-28 11:13:28 +01:00
Daniele Bariletti 1a00df7849 colleati imovimenti della finestra veinMatch ai suoi pop up. 2024-11-22 08:55:06 +01:00
Daniele Bariletti d02d021e33 gestione dell'import di modelli 3D 2024-11-20 17:23:23 +01:00
Daniele Bariletti 20e33435cd piccola correzione 2024-11-19 16:19:25 +01:00
Daniele Bariletti 9ad947761e - aggiunta la finestra per la guida nell'accoppiamento. 2024-11-18 16:06:34 +01:00
Daniele Bariletti 3761ca827e - rinominate e riorganizzate le finestre per inserimento dati. 2024-11-18 10:32:47 +01:00
Daniele Bariletti 1b41f01612 - aggiunte le finestre per inserimento dati per la rotazione e per la creazione solidi
- riattivate le modalità di esplodi e collassa.
2024-11-12 17:01:56 +01:00
Daniele Bariletti ab8e296b15 modificate le immagini dei bottoni explode e collapse. 2024-11-12 17:00:54 +01:00
Daniele Bariletti 3c11425370 - aggiunto il comando PairAll. 2024-11-08 15:23:20 +01:00
Nicola Pievani 539d0c6443 Configurazione file 3D 2024-11-06 10:40:00 +01:00
Daniele Bariletti acee8d5b7d - aggiunta terna locale
- piccola modifica agli assi della terna per la rotazione.
2024-10-23 17:32:54 +02:00
Daniele Bariletti 347c3ab23c - migliorata gestione dei mark durante l'accoppiamento
- migliorata gestione dei reset
 - aggiunta la barra spaziatrice per ripetere l'ultima operazione
2024-10-23 12:19:35 +02:00
Daniele Bariletti 5be900b925 - correzioni all'unpair - correzioni alla compilazione dell'AssLog 2024-10-22 16:17:03 +02:00
Daniele Bariletti 7f57ee8f58 correzione e integrazione delle chiamate alla funzioni nel LUA. 2024-10-22 11:18:57 +02:00
Daniele Bariletti fe2155bbe6 aggiunta chiamate al Lua che effettua tutte le operazioni con i part. 2024-10-17 18:09:35 +02:00
Daniele Bariletti 21cf1802b8 correzione nella gestione dell'unpair 2024-10-16 10:01:17 +02:00
Daniele Bariletti bbcd12669e esternalizzati i metodi del PartSolid alla finestra VeinMatch. 2024-10-16 10:00:49 +02:00
Daniele Bariletti 3dc21c390a le funzioni di pair ora richiamano il LUA e non lavorano nel VB ( esclusa la parte di interfaccia). 2024-10-14 10:10:53 +02:00
Nicola Pievani f752dc46c3 Merge branch 'develop' 2024-10-10 12:10:30 +02:00
Nicola Pievani ee69bda3a5 Aggiunti messaggi per avvio DB, gestione DB window 2024-10-10 12:07:39 +02:00
Daniele Bariletti e479d861f6 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2024-10-10 11:00:37 +02:00
Daniele Bariletti 69c27fc6b8 aggiunta log 2024-10-10 11:00:31 +02:00
Nicola Pievani dd939a7fb6 Merge branch 'master' into develop 2024-10-09 19:38:08 +02:00
Nicola Pievani 351fec507c Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2024-10-09 19:37:44 +02:00
Nicola Pievani 755413c69a Merge commit 'e01ee20b48ba4adec90fb68ad9804161cddf271e' into Features/3D_In_VeinMatch 2024-10-09 19:37:29 +02:00
Nicola Pievani e01ee20b48 Gestione nuova libreria OmagPHOTOLib 2024-10-09 19:36:06 +02:00
Daniele Bariletti c21c2723f7 pulizia del codice 2024-10-09 18:01:31 +02:00
Daniele Bariletti 022c73e16d Correzioni alla gestione dei gruppi di accoppiati. 2024-10-09 12:38:13 +02:00
Daniele Bariletti 9aa245a029 aggiustata la lettura delle impostazioni di accoppiamento. 2024-10-09 09:20:32 +02:00
Daniele Bariletti d60b377098 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2024-10-07 10:54:08 +02:00
Daniele Bariletti d91d526c1d - correzione bug nel Pair e nel Rotate
- aggiunta gestione cambio automatico del mouse over type
- migliorata gestione Move.
2024-10-07 10:54:03 +02:00
Nicola Pievani 9a74fa0be5 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2024-10-03 14:30:57 +02:00
Nicola Pievani c36d4677b7 Mark degli elementi misura 2024-10-03 14:27:41 +02:00
Daniele Bariletti c727ef5d88 corretta la gestione delle temp transf e del max apporach. 2024-10-03 09:32:23 +02:00
Daniele Bariletti 0770d280c6 corretta la gestione delle tempTransf di un PartSolid 2024-10-02 12:22:46 +02:00
Nicola Pievani 0c5b7c17a9 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2024-10-01 11:09:12 +02:00
Nicola Pievani 56f417adbf Preview Linea/Arco/Faccia/Surf 2024-10-01 11:08:57 +02:00
Daniele Bariletti 4c9869a49b - riattivato pulsante disaccoppia. 2024-09-26 10:27:59 +02:00
Nicola Pievani 2e08452644 Correzione Layer terna 2024-09-26 09:59:26 +02:00
Nicola Pievani eda6fbc1b3 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2024-09-25 12:29:08 +02:00
Nicola Pievani ace652933b Correzione visualizzazione pezzi in parcheggio VeinMatch3D 2024-09-25 12:28:59 +02:00
Daniele Bariletti 5652301a92 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2024-09-25 12:28:57 +02:00
Daniele Bariletti a9888bb1b1 -migliorata stabilità
- aggiunta gestione nuovi pezzi che vengono aggiunti alla part solid list.
2024-09-25 12:28:51 +02:00
Nicola Pievani b1e7bc6a3f Aggiornamento versione 2024-09-23 17:57:12 +02:00
Nicola Pievani 490f78c4fa Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2024-09-23 16:18:37 +02:00
Nicola Pievani 61d124aff6 Aggiunta chiave di protezione VeinMatch3D 2024-09-23 16:18:30 +02:00
Daniele Bariletti bdb0fb9de5 - rinominata funzione per gestire esc e enter. 2024-09-23 12:42:01 +02:00
Daniele Bariletti b904d142e3 - migliorata robustezza sulle chiamate dei reset e undo
- migliorata la gestione dei messaggi di istruzione dei comandi( textbox in basso).
2024-09-23 12:23:04 +02:00
Daniele Bariletti b666f2d38f - aggiunta gestione dello spessore da inserimento in una text box da parte dell'utente. 2024-09-20 17:38:01 +02:00
Daniele Bariletti 65820fab0a - aggiunti messaggi
- aggiunta gestione attivazione tasti
- migliorata stabilità
- corretti errori.
2024-09-20 16:00:46 +02:00
Daniele Bariletti 18c81e6fb4 - aggiunta l'icona per il pulsante reset
- aggiunti messaggi di istruzione per l'uso dei comandi
- aggiunta gestione dell'attivazione e disattivazione dei pulsanti.
2024-09-20 09:01:31 +02:00
Daniele Bariletti 6fee3f3242 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2024-09-19 15:13:35 +02:00
Daniele Bariletti 35a4088ad9 modifica minore. 2024-09-19 15:13:30 +02:00
Nicola Pievani 0257ac21da Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2024-09-19 14:55:54 +02:00
Nicola Pievani 2f2ec3c307 Inserito Bit di sicurezza 2^24 per VeinMatch3D 2024-09-19 14:55:36 +02:00
Daniele Bariletti 04cd660411 Aggiunte icone per i pulsanti del VeinMatch3d. 2024-09-19 14:52:49 +02:00
Nicola Pievani cd7e441980 Merge commit 'd01225cd6e114e2741f3b96ed6decab486030ad4' into Features/3D_In_VeinMatch 2024-09-18 14:44:23 +02:00
Nicola Pievani aeeaf624ee Merge branch 'develop' 2024-07-31 10:25:47 +02:00
Nicola Pievani d01225cd6e Merge branch 'master' into develop 2024-07-31 10:23:23 +02:00
Nicola Pievani 5792664da8 Correzione numero di versione 2.6g7 2024-07-31 10:23:07 +02:00
Nicola Pievani caff5e5507 Merge branch 'develop' 2024-07-31 10:05:23 +02:00
Nicola Pievani 6224b1e40b Gestione On/Off tagli con doppio click 2024-07-31 10:05:03 +02:00
Nicola Pievani aca43262cf Merge branch 'master' into develop 2024-07-17 15:45:57 +02:00
Nicola Pievani 6f526dca45 Cambio versione 2.6f3 2024-06-18 18:14:42 +02:00
Nicola Pievani b3a359e257 Merge commit 'dc787f2596a8d84b51792a907aaba1eb22fdd61f' 2024-04-15 09:40:54 +02:00
Nicola Pievani dc787f2596 Migliorata gestione VirtualKey, correzione salvataggio Proj 2024-04-15 09:40:39 +02:00
Nicola Pievani d0cb48b31d Merge branch 'develop' 2024-04-09 16:45:16 +02:00
Nicola Pievani c9b4d679bd Aggiornata versione 2.6d1 2024-04-09 16:44:49 +02:00
Nicola Pievani e726416853 Migliorata lettura errori per chiave di rete 2024-04-09 16:43:13 +02:00
Nicola Pievani 9be2a9d1c3 Salvataggio Info progetto nei MachGroup 2024-04-03 08:25:47 +02:00
Nicola Pievani aed8483ede Merge commit '349a1429c12a249966201c56b23c13fb08a79d51' 2024-03-01 14:47:08 +01:00
Nicola Pievani 349a1429c1 Gestione colore entità e cambio versione 2024-03-01 14:46:41 +01:00
Nicola Pievani 29c528fa0e Merge commit '0fa0d4e6123c5d07dfcb1c9601f2d968e21484d3' into develop 2024-02-14 18:57:33 +01:00
Nicola Pievani 0fa0d4e612 Gestione Engrave in ImportDXF 2024-02-14 18:57:19 +01:00
Nicola Pievani 600da701b1 Merge commit 'c534b459aeb33e06b2f2f41d6eee978d92ab26b9' into develop 2024-02-14 13:12:40 +01:00
Nicola Pievani c534b459ae Gestione cambio nome lastra nel MachGroup 2024-02-14 13:12:28 +01:00
Nicola Pievani 86e6a21d63 Merge commit 'd7522c4eb89d002ee0567337d1f371e0b2058961' 2024-02-13 15:15:15 +01:00
Nicola Pievani d7522c4eb8 Aggiornamento versione 2024-02-13 15:14:45 +01:00
Demetrio Cassarino 1f7a918ac2 migliorata gestione textbox 2024-02-13 15:11:27 +01:00
Nicola Pievani e4a87dc475 Gestione Style ComboBox Default 2024-02-13 14:37:49 +01:00
Nicola Pievani 7a26984f95 Merge commit '3a76d6c91a771f8644e33d5b7d2c46d1e0905e4c' 2024-01-24 11:56:09 +01:00
Nicola Pievani 3a76d6c91a Modificata disposizione comandi 2024-01-24 11:55:47 +01:00
Nicola Pievani 4d691cee62 Merge commit 'ce3ff4e3d65711fa19ff66a54ce0b694d52012fe' into develop 2024-01-24 09:33:13 +01:00
Dario Sassi ce3ff4e3d6 OmagOFFICE :
- correzione inizializzazione lavorazioni compatibili con materiale e spessore.
2024-01-23 12:14:10 +01:00
Nicola Pievani 3d1d62398a Aggiornamento versione 2.6a1 2024-01-22 15:38:54 +01:00
Nicola Pievani 91f86f8682 Aggiornamento versione 2024-01-22 15:05:12 +01:00
Daniele Bariletti 394322237c - piccole correzioni e commenti 2024-01-22 14:46:22 +01:00
Daniele Bariletti 1a3b7b6b1f - corretto lo'undo/redo
- corretti errori nella fase di creazione dei
PartSolid in un nuovo .vme e caricamento di un .vme con accoppiamenti
salvati.
2024-01-22 08:59:19 +01:00
Daniele Bariletti c2671d5fc7 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2024-01-19 14:49:09 +01:00
Daniele Bariletti 61d997a785 - aggiunti i comandi per la selezione multipla
- il caricamento dei file recupera le info di accoppiamento nei .vme
2024-01-19 14:49:03 +01:00
Nicola Pievani d61c1b1375 Gestione spessore in fase di creazione pezzo singolo 2024-01-17 19:35:56 +01:00
Nicola Pievani 2d5ffda589 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2024-01-17 12:29:06 +01:00
Nicola Pievani 97b1c3d48f - aggiunta gestione assi della terna per rotazione
- aggiunta gestione degli import per il pair.
2024-01-17 12:29:01 +01:00
Daniele Bariletti 60fab0ef18 - piccola correzione. 2024-01-17 11:37:58 +01:00
Daniele Bariletti 35e33faaf7 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2024-01-17 11:34:18 +01:00
Daniele Bariletti 4caa772e0f - migliorie a rotazione
- migliorie ad accoppia.
2024-01-17 11:34:09 +01:00
Nicola Pievani 29f92f07db Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2024-01-16 15:39:02 +01:00
Nicola Pievani 7b04ea7606 Assi rotazione da terna 2024-01-16 15:38:57 +01:00
Daniele Bariletti cdf2ae682b Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2024-01-16 15:36:30 +01:00
Daniele Bariletti 9987f3a723 - supportata anche le operazioni di accoppiamento e
disaccoppiamento con undo/redo.
2024-01-16 15:35:26 +01:00
Nicola Pievani a3475d7b64 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2024-01-16 10:53:43 +01:00
Nicola Pievani fb8be27836 Lettura spessore grezzo 2024-01-16 10:52:20 +01:00
Daniele Bariletti c7969e8c99 - aggiunto il move con coordinate definite
- MODIFICATA la linea del tempo: ora gli eventi sono salvati su una
linea del tempo globale.
2024-01-15 17:30:50 +01:00
Daniele Bariletti 63a56af98c - corretti errori nel salvataggio della storia delle
operazioni.
2024-01-15 12:06:09 +01:00
Daniele Bariletti 56220080fe Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2024-01-12 16:59:52 +01:00
Daniele Bariletti fa8a68afd7 - corretta la funzione per mandare in battuta gli
oggetti.
2024-01-12 16:59:48 +01:00
Nicola Pievani 5f105ef28d Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2024-01-12 14:34:33 +01:00
Nicola Pievani e8e1a17892 Visualizzazione in Popup di TreeView 2024-01-12 14:31:04 +01:00
Daniele Bariletti 3c65017639 - aggiornato il sistema di gestione delle
informazioni degli accoppiati.
2024-01-12 12:03:24 +01:00
Nicola Pievani 605a877e5f Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2024-01-11 14:32:31 +01:00
Nicola Pievani 0319a3f15a Visualizzazione TreeView Gruppi/Part 2024-01-11 14:32:15 +01:00
Daniele Bariletti 9a71913b3e - rinominanti i bottoni
- corretti errori di undo/redo.
2024-01-11 13:15:50 +01:00
Daniele Bariletti 07ef7e61ed Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2024-01-10 18:20:18 +01:00
Daniele Bariletti 96dd9bfa17 - migliorata selzione dei part dal tree. 2024-01-10 18:20:13 +01:00
Nicola Pievani 550955c8b6 Merge commit 'fcb754d4ef1b21eeca053468abef4123e9dfe76a' into Features/3D_In_VeinMatch 2024-01-10 17:57:23 +01:00
Daniele Bariletti fcb754d4ef - corretta selezione tra scena e tree. 2024-01-10 17:56:47 +01:00
Daniele Bariletti d27c645ad6 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2024-01-10 17:48:02 +01:00
Daniele Bariletti 9a330df724 - correzione del cambio tempo con undo/redo sui pezzi
accoppiati.
2024-01-10 17:47:58 +01:00
Nicola Pievani 6b2cf9346d Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2024-01-10 17:46:01 +01:00
Nicola Pievani c38e88a729 Gestione TreeView con StackPanel 2024-01-10 17:45:37 +01:00
Daniele Bariletti ec7abae0ee Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2024-01-10 16:20:15 +01:00
Daniele Bariletti 36c4c56bd1 - aggiunte operazioni sui gruppi di oggetti
accoppiati.
2024-01-10 16:20:00 +01:00
Nicola Pievani f36888b7ad Merge commit '78e46c5fcf1d8124678b7e97526dfda5525dea47' into Features/3D_In_VeinMatch 2024-01-10 12:56:08 +01:00
Daniele Bariletti 78e46c5fcf Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2024-01-10 12:49:00 +01:00
Daniele Bariletti 9cbf8ed37b - modifica al movimento degli accoppiati. 2024-01-10 12:48:52 +01:00
Nicola Pievani 88000451e7 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2024-01-10 12:38:02 +01:00
Nicola Pievani 810e312edd Aggiunta immagine per TreeView 3D 2024-01-10 12:37:54 +01:00
Daniele Bariletti 7c3a82dc94 - migliorata funzionalità di undo/redo
- migliorato treeview
- migliorie varie.
2024-01-10 10:35:01 +01:00
Demetrio Cassarino c0dd6313ae aggiornamento bottoni interfaccia 2023-12-22 17:35:06 +01:00
Demetrio Cassarino a3db3dded0 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2023-12-22 17:09:24 +01:00
Demetrio Cassarino 2cb8e0fc6e Modifica interfaccia veinmaching 2023-12-22 17:05:24 +01:00
Daniele Bariletti 39ae2c5d5b - aggiunti i pulsanti undo e redo
- migliorata la stabilità.
2023-12-21 18:09:09 +01:00
Nicola Pievani 8615cebfae Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2023-12-20 18:00:25 +01:00
Nicola Pievani 344103329a Creazione TreeView per pagina VeinMatch 2023-12-20 17:59:59 +01:00
Daniele Bariletti df48b9ec51 - aggiunto lo spostamento e la rotazione
collettiva dei pezzi accoppiati.
2023-12-20 15:38:39 +01:00
Daniele Bariletti 3c1c763235 - aggiunto controllo delle inters durante il drag. 2023-12-20 11:16:47 +01:00
Daniele Bariletti 1153473478 piccole correzioni 2023-12-19 17:42:41 +01:00
Daniele Bariletti bb6be4df18 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2023-12-19 17:04:32 +01:00
Daniele Bariletti 95b9043610 - aggiunto il reset del comando accoppia 2023-12-19 17:01:55 +01:00
Nicola Pievani 01b9708030 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2023-12-19 15:41:01 +01:00
Nicola Pievani 02075e7f1f Import *.nge e CTRL per gestione rotazione 2023-12-19 15:40:41 +01:00
Daniele Bariletti d31805571f - ultime modifiche a inters. 2023-12-19 12:39:33 +01:00
Nicola Pievani 800b071c47 Merge commit '06248bee99b402e5ff425350429eecdf2b2b5f34' into Features/3D_In_VeinMatch 2023-12-15 15:35:57 +01:00
Daniele Bariletti 06248bee99 - corretti errori minori
- escluso l'inters
2023-12-15 15:33:02 +01:00
Nicola Pievani 46d2869dbc Inseriti alcuni controlli se esitono gli oggetti 2023-12-14 19:47:19 +01:00
Nicola Pievani a80cdca1ae Merge remote-tracking branch 'origin/Features/3D_In_VeinMatch' into Features/3D_In_VeinMatch 2023-12-14 17:43:44 +01:00
Daniele Bariletti 8dd2e496d3 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2023-12-14 17:42:56 +01:00
Daniele Bariletti f0136590e5 senza inters 2023-12-14 17:42:50 +01:00
Nicola Pievani 97a6ba6ba9 Merge commit '809ac5f44f9fdee267da42635773108bb53b6e35' into Features/3D_In_VeinMatch 2023-12-14 17:20:26 +01:00
Daniele Bariletti 809ac5f44f Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2023-12-14 17:19:16 +01:00
Daniele Bariletti fba6ff3b0a piccole correzioni 2023-12-14 17:19:02 +01:00
Nicola Pievani 7ca1d96be9 Merge commit '23bb701c4dfbe8f773bf4ad2318a755cb15284b2' into Features/3D_In_VeinMatch 2023-12-14 14:42:50 +01:00
Daniele Bariletti 23bb701c4d Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2023-12-14 14:41:53 +01:00
Daniele Bariletti b928234c54 - migliorato l'accoppia
- migliorie varie.
2023-12-14 14:41:48 +01:00
Nicola Pievani e20f5d436b Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egaltech/omagoffice into Features/3D_In_VeinMatch 2023-12-14 11:17:40 +01:00
Nicola Pievani a77eb82602 Esplodi lungo le normali 2023-12-14 11:17:06 +01:00
Daniele Bariletti 4dc4fdc03b Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2023-12-13 18:33:07 +01:00
Daniele Bariletti 8b8b977249 correzione a rotazione 2023-12-13 18:31:40 +01:00
Nicola Pievani 58fa9c3fd0 Esplodi Assemblato 2023-12-13 18:30:30 +01:00
Daniele Bariletti 7f3d43d1f3 aggiunta modalità misura 2023-12-13 12:09:37 +01:00
Nicola Pievani 7717f20a90 Merge remote-tracking branch 'origin/Features/3D_In_VeinMatch' into Features/3D_In_VeinMatch 2023-12-13 10:27:30 +01:00
Nicola Pievani 51ac26321e Cambio cartelle 2023-12-13 10:20:50 +01:00
Daniele Bariletti b27b35562b cambio cartella 2023-12-13 09:52:22 +01:00
Daniele Bariletti 4b877300c4 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2023-12-13 08:54:47 +01:00
Daniele Bariletti ec31948608 - accoppia interattivo 2023-12-13 08:54:43 +01:00
Nicola Pievani 1acf2ae4ca Migliorata grafica comandi 2023-12-12 20:18:22 +01:00
Daniele Bariletti 4f8daff0ce - aggiunta terna per traslazione e rotazione. 2023-12-12 14:52:56 +01:00
Daniele Bariletti 0f1c20ec54 - aggiunto comando per accoppiamento
- ottimizzato il codice.
2023-12-12 10:11:48 +01:00
Daniele Bariletti e327f28626 - aggiunto comando per la rotazione
- ottimizzato il codice per la creazione dei solidi
2023-12-07 08:53:50 +01:00
Daniele Bariletti afd63363c5 Merge branch 'Features/3D_In_VeinMatch' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into Features/3D_In_VeinMatch 2023-12-05 18:44:40 +01:00
Daniele Bariletti 7309fc9959 Inserimento texture sul solido 2023-12-05 18:44:32 +01:00
Nicola Pievani 7d457be9c5 Merge commit '3e097b81a644cb2b44ebfd494e20b56d1dcdd099' into develop 2023-12-05 16:28:55 +01:00
Nicola Pievani 3e097b81a6 Gestione sfondo ComboBoxList 2023-12-05 16:27:08 +01:00
Nicola Pievani ef5578a3ba Gestione sfondo ComboBoxList 2023-12-05 16:26:28 +01:00
Nicola Pievani b45bda985e Correzione esecuzione file LUA 3d 2023-12-04 16:35:05 +01:00
Nicola Pievani a84b27ca8c Inizio gestione comandi 3D 2023-12-04 13:00:10 +01:00
Nicola Pievani 155d9615b0 Migliorata importazione DXF 2023-11-28 09:49:56 +01:00
Nicola Pievani 2864f6fd16 Merge branch 'develop' 2023-11-28 09:36:01 +01:00
Demetrio Cassarino 19eb5b2110 modifica treeview path per tooldb 2023-11-07 08:34:08 +01:00
Demetrio Cassarino b171f05956 modifica treeview path 2023-11-06 17:27:56 +01:00
Demetrio Cassarino 14bf3ae7e2 aggiunta grafica datagrid 2023-11-06 12:15:48 +01:00
Demetrio Cassarino 8df9640d96 Merge branch 'develop' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into develop 2023-11-06 12:02:13 +01:00
Demetrio Cassarino 9f7b62502c sistemate proprietà borderthickness 2023-11-06 12:01:08 +01:00
Nicola Pievani 8e9a3cdb73 Calcolo del tempo di esecizione operazioni 2023-11-03 12:21:15 +01:00
Nicola Pievani f47c365db2 Inserite icone nell'elenco delle lavorazioni 2023-10-27 11:36:32 +02:00
Nicola Pievani ccdb690225 Aggiornati messaggi 2023-10-26 16:13:55 +02:00
Nicola Pievani 7ac6fb42c6 Merge commit '1ddb8a27fb907505684da52e2b4aacc494d36192' into develop 2023-10-24 18:09:36 +02:00
Nicola Pievani 1ddb8a27fb Aggiunto comando "Muovi" per i tagli diretti 2023-10-24 17:37:11 +02:00
Nicola Pievani 41ca5127c6 Merge commit '6fc916051c7939ae1e0d42d2919eeb126499becc' into Features/Add_Single_CUT 2023-10-23 18:11:56 +02:00
Nicola Pievani 860823c929 Nuova impaginazione dati Split, correzione apertura file Log 2023-10-23 18:11:29 +02:00
Nicola Pievani 9cd0b4aefa Gestione Selezione multipla da Scena 2023-10-20 14:39:14 +02:00
Nicola Pievani 6fc916051c Gestione colore testi Compo 2023-10-19 18:08:45 +02:00
Nicola Pievani 8df36d2768 Aggiornata pagina CSV 2023-10-19 17:20:33 +02:00
Nicola Pievani 997ca13934 Merge commit '9b6761af37c0801aa8825592aed0941c2d3d5238' into Features/Manage_Icons 2023-10-19 14:55:22 +02:00
Nicola Pievani 9b6761af37 Gestione comando Escape per interrompere 2023-10-19 11:05:08 +02:00
Nicola Pievani 732c05fd9c Creazione taglio SplitCut da contorno pezzo 2023-10-18 13:38:40 +02:00
Nicola Pievani 71372bf51a Merge commit '30cc0e29e4b79b951543f4d56293bbffae853233' into Features/Add_Single_CUT 2023-10-18 10:34:02 +02:00
Nicola Pievani a63089a0c8 Gestione eliminazione tagli diretti 2023-10-06 17:43:10 +02:00
Nicola Pievani 5d6c666128 Inizio inserimento tagli separazione in Splitting 2023-10-05 18:45:39 +02:00
Demetrio Cassarino 30cc0e29e4 Aggiornamento label grafica 2023-10-04 08:45:15 +02:00
Demetrio Cassarino 882f7ba82f Creazioen label apertura file log 2023-10-03 17:35:40 +02:00
Demetrio Cassarino 1bf0979c94 Sostituzione ioniczip con dotnetzip 2023-10-03 16:59:47 +02:00
Demetrio Cassarino f5bb24a4db Merge remote-tracking branch 'origin/Features/Manage_Icons' into Demetrio/Manage_Color 2023-10-03 11:33:45 +02:00
Demetrio Cassarino 470a88bd95 Modifica colore isSelected datagrid 2023-10-03 11:32:17 +02:00
Nicola Pievani b63a7f3046 Merge commit '7bc6619e92d7d29e4fc0429535b6542c5f6c5420' into Features/Manage_Icons 2023-10-02 15:51:49 +02:00
Demetrio Cassarino 7bc6619e92 Merge remote-tracking branch 'origin/Features/Manage_Icons' into Demetrio/Manage_Color 2023-09-25 11:05:57 +02:00
Nicola Pievani a39cfeb4dd Gestione pagina DB waterjet 2023-09-22 19:15:31 +02:00
Demetrio Cassarino 3a71247913 Merge commit '422538b5fe9525a13892a7caa9d647545b7a1396' into Demetrio/Manage_Color 2023-09-21 08:33:05 +02:00
Nicola Pievani 422538b5fe Migliorata grafica finestre 2023-09-20 18:21:08 +02:00
Nicola Pievani ab32986539 Merge remote-tracking branch 'origin/Demetrio/Manage_Color' into Features/Manage_Icons 2023-09-19 17:53:49 +02:00
Demetrio Cassarino 9eb196b942 Aggiunta stile listbox 2023-09-19 17:26:22 +02:00
Demetrio Cassarino ab87952edb Merge remote-tracking branch 'origin/Features/Manage_Icons' into Demetrio/Manage_Color 2023-09-19 15:56:00 +02:00
Nicola Pievani b59fe318cf Aggiunta finestra SetUpWindow 2023-09-19 15:52:48 +02:00
Nicola Pievani 83c63bd583 Cambio versione 2023-09-18 18:13:46 +02:00
Nicola Pievani cca2a923ee Merge remote-tracking branch 'origin/Demetrio/Manage_Color' into Features/Manage_Icons 2023-09-18 18:07:26 +02:00
Nicola Pievani a6e9747da8 Gestione comandi Import/Export/Reload 2023-09-18 18:07:07 +02:00
Demetrio Cassarino 65f8d69361 Gestione interfaccia 2023-09-18 17:56:38 +02:00
Demetrio Cassarino f3b7f4fd04 Merge remote-tracking branch 'origin/Features/Manage_Icons' into Demetrio/Manage_Color 2023-09-15 16:47:06 +02:00
Nicola Pievani 2d77634314 Gestione dimensione bottone Mach/Tool Window 2023-09-15 16:40:36 +02:00
Nicola Pievani bd79698a6e Merge remote-tracking branch 'origin/Demetrio/Manage_Color' into Features/Manage_Icons 2023-09-15 16:39:40 +02:00
Demetrio Cassarino efe5199258 nuovi parametri datagrid 2023-09-15 16:38:26 +02:00
Nicola Pievani 3171b3d6ea Gestione ToolDBWindow 2023-09-15 16:38:16 +02:00
Demetrio Cassarino 9eb75eb8f9 Merge remote-tracking branch 'origin/Features/Manage_Icons' into Demetrio/Manage_Color 2023-09-15 11:42:49 +02:00
Nicola Pievani edcbec6597 Aggiunte nuove icone 2023-09-14 18:08:45 +02:00
Nicola Pievani d083b465fd Merge remote-tracking branch 'origin/Demetrio/Manage_Color' into Features/Manage_Icons 2023-09-14 17:44:19 +02:00
Nicola Pievani 5327830ea7 Gestione icone MachDB 2023-09-14 17:43:59 +02:00
Demetrio Cassarino c06eddcd12 Nuovi parametri grafica 2023-09-14 17:39:00 +02:00
Demetrio Cassarino 83388c0b97 Gestione pagina SawingStone 2023-09-13 15:01:08 +02:00
Demetrio Cassarino 72a6ca774e Merge commit 'f7f321fba7d98af5959bbdb6d793754e571fb61c' into Demetrio/Manage_Color 2023-09-12 15:38:10 +02:00
Nicola Pievani f7f321fba7 Definizione style nuovi parametri EgtTextBox 2023-09-12 15:26:57 +02:00
Nicola Pievani eba9686148 Inizio gestione colori GENERAL EgtTextBox 2023-09-07 18:14:34 +02:00
Nicola Pievani 41f5b6ba70 Gestione colori interfaccia MachiningDB 2023-09-07 14:59:39 +02:00
Nicola Pievani 66685b7e4f Inizio preparazione interfaccia scura 2023-08-24 17:32:14 +02:00
Nicola Pievani fd6da1f694 Merge commit 'ee85507b11dd60950c6e7a5af9b97a8439d0a259' 2023-08-07 09:08:04 +02:00
Nicola Pievani e91b0e3087 Merge commit 'ee85507b11dd60950c6e7a5af9b97a8439d0a259' into Features/Manage_Icons 2023-08-03 19:14:54 +02:00
Nicola Pievani ee85507b11 Correzione a seguito del merge con il Master 2023-08-03 19:14:30 +02:00
Nicola Pievani f9c184a81c Merge commit '6545afb8311769aa04c050d3605318ea667a7631' into develop 2023-08-03 19:10:41 +02:00
Nicola Pievani 1fb59b293f Migliorata posizione punti SpotReg 2023-08-03 15:27:06 +02:00
Nicola Pievani 3d93d98603 Migliorata gestione Layer per SpotReg 2023-08-02 17:19:23 +02:00
Nicola Pievani 1ea76d1caa Inserimento SpotReg nel grezzo 2023-07-31 16:52:48 +02:00
Nicola Pievani 4bea9d2483 Migliorato dizionario 2023-06-29 18:46:23 +02:00
Nicola Pievani eaf4a836fa Rimosso FloatingManager da OptionPanel 2023-06-13 15:27:53 +02:00
Nicola Pievani a5b9957c76 Modifica stile interfaccia (Colore e icone) 2023-06-13 13:03:54 +02:00
Nicola Pievani b8b92e637c Merge commit '83b1b5b5318e305cedc042ddb5e1ab61d988190d' into Features/Manage_Icons 2023-06-05 15:57:27 +02:00
Nicola Pievani 83b1b5b531 Aggiornamento programma 2023-06-05 15:57:07 +02:00
Emmanuele Sassi 6545afb831 - modificate funzioni gestione progetto da sub a function 2023-04-11 09:52:28 +02:00
Nicola Pievani c530f172bb Merge branch 'develop' 2023-03-21 15:59:16 +01:00
Nicola Pievani 98dcbc65e7 Cambio versione e milgiorata gestione SplitRaws 2023-03-21 15:58:23 +01:00
Nicola Pievani bc92139a3d Merge branch 'develop' 2023-02-28 17:12:08 +01:00
Nicola Pievani a88c804370 Merge branch 'master' into develop 2023-02-28 17:11:26 +01:00
NicolaP ce21ef3a71 Aggiunta icona Quality 2023-02-20 19:46:19 +01:00
NicolaP 15021a7d0f Merge branch 'develop' into Features/Manage_Icons 2023-02-20 19:42:15 +01:00
NicolaP 7c21db7055 Merge branch 'Features/Manage_Quality_WaterJet' into develop 2023-02-20 19:22:02 +01:00
NicolaP 4c142df7ef Gestione qualità tagli WJ in SplitPage 2023-02-20 19:21:21 +01:00
NicolaP 72f41bacab Migliorata gestione salvataggio lavorazioni
(cherry picked from commit c01972f99e)
2023-02-20 13:02:09 +01:00
NicolaP b91dc8972d Aggiunte icone nella pagina Split 2023-02-20 12:55:07 +01:00
NicolaP c01972f99e Migliorata gestione salvataggio lavorazioni 2023-02-20 10:08:54 +01:00
NicolaP 5fe6b03a89 Merge branch 'develop' 2023-02-15 13:21:08 +01:00
NicolaP be30ebadbf Migliorata spaziatura nella pagina Split 2023-02-15 12:52:40 +01:00
NicolaP e67cf50f50 Merge branch 'Features/Set_CurrSawing' into develop 2023-02-15 12:30:41 +01:00
NicolaP f82a6495bd Gestione setting lavorazioni correnti di Office 2023-02-15 12:30:07 +01:00
NicolaP 9168da183e Merge branch 'develop' 2023-02-13 18:55:13 +01:00
NicolaP c6262613c8 Aggiorno dati di stime di lavoro 2023-02-13 15:37:06 +01:00
NicolaP 31edd150bd Aggiunti commenti per preprare aggiornamento SelezionaLavorazione 2023-02-13 13:08:47 +01:00
NicolaP 9fdd7b4b77 Migliorata gestione stampa progetto corrente 2023-02-13 10:52:40 +01:00
NicolaP 0ed3efed11 Merge branch 'develop' 2023-02-10 14:05:02 +01:00
NicolaP b0bae3af98 Correzione gestione parcheggio 2023-02-10 13:25:50 +01:00
NicolaP 235ec10a2d Correzione non visualizzazione Magnetico in VeinMatch 2023-02-09 16:22:11 +01:00
NicolaP 66061ad262 Rimosso pulsante magnetico in VeinMatch 2023-02-09 15:10:07 +01:00
NicolaP 3e99eb1a8f Merge branch 'Features/Print_LayOut_Machine' into develop 2023-02-09 10:00:25 +01:00
327 changed files with 51700 additions and 4952 deletions
+27 -27
View File
@@ -3,60 +3,60 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
DockPanel.Dock="Bottom">
<Grid Visibility="{Binding Top_Visibility}"
<Grid Visibility="{Binding Top_Visibility}"
Margin="0,0,0,5">
<TextBlock Text="{Binding TopMsg}"/>
<CheckBox IsChecked="{Binding TopIsChecked}"
<TextBlock Text="{Binding TopMsg}" Foreground="{DynamicResource Omag_White}"/>
<CheckBox IsChecked="{Binding TopIsChecked}"
HorizontalAlignment="Right" Margin="6,0,6,0"/>
</Grid>
</Grid>
<Button Content="{Binding TrfDataMsg}"
<Button Content="{Binding TrfDataMsg}"
Command="{Binding TrfData_Command}"
Visibility="{Binding TrfData_Visibility}"
Margin="0,0,0,5"
Style="{StaticResource CompoWindow_Button}"/>
<Button Content="{Binding CsvDataMsg}"
<Button Content="{Binding CsvDataMsg}"
Command="{Binding CsvData_Command}"
Visibility="{Binding CsvData_Visibility}"
Margin="0,0,0,5"
Style="{StaticResource CompoWindow_Button}"/>
<Grid Visibility="{Binding PartName_Visibility}"
<Grid Visibility="{Binding PartName_Visibility}"
Margin="0,0,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding PartNameMsg}" Grid.Column="0"/>
<EgtWPFLib5:EgtTextBox Text="{Binding PartName}" Grid.Column="1" Width="130"/>
<TextBlock Text="{Binding PartNameMsg}" Grid.Column="0" Foreground="{DynamicResource Omag_White}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding PartName}" Grid.Column="1" Width="130"/>
</Grid>
</Grid>
<Grid Visibility="{Binding PartNum_Visibility}"
<Grid Visibility="{Binding PartNum_Visibility}"
Margin="0,0,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding PartNumMsg}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding PartNum}" Grid.Column="1" Width="60"/>
<TextBlock Text="{Binding PartNumMsg}" Foreground="{DynamicResource Omag_White}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding PartNum}" Grid.Column="1" Width="60"/>
</Grid>
</Grid>
<UniformGrid Columns="2"
<UniformGrid Columns="2"
Margin="0,0,0,5"
Visibility="{Binding OkExit_Visibility}">
<Button Content="{Binding OkMsg}"
<Button Content="{Binding OkMsg}"
Command="{Binding OkCommand}"
Style="{StaticResource CompoWindow_Button}"/>
<Button Content="{Binding ExitMsg}" IsCancel="True"
<Button Content="{Binding ExitMsg}" IsCancel="True"
Style="{StaticResource CompoWindow_Button}"/>
</UniformGrid>
</UniformGrid>
</StackPanel>
@@ -295,6 +295,8 @@ Public Class CompoManagerVM
If Not CompoWindowMap.refCompoWindowVM.m_bDrawOk Then
Return
End If
' per il CABINET ridisegno le figure piane e non creo i solidi
CompoWindowMap.refCompoWindowVM.UpdateViewForCabinet()
' Leggo numero di pezzi da inserire
Dim InsNbr As Integer
StringToInt(m_PartNum, InsNbr)
+63 -63
View File
@@ -4,13 +4,13 @@
xmlns:OmagOFFICE="clr-namespace:OmagOFFICE"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<DockPanel>
<DockPanel>
<UniformGrid Columns="3"
DockPanel.Dock="Top"
Visibility="{Binding SideEntity_Visibility}"
Margin="0,0,0,0">
<!--Inclina lati-->
<ToggleButton
IsChecked="{Binding SideAngle_IsChecked}"
@@ -21,7 +21,7 @@
<AccessText TextWrapping="Wrap" Text="{Binding SideAngleMsg}"/>
</ToggleButton.Content>
</ToggleButton>
<!--FiloTop-->
<!--<ToggleButton Padding="0"
IsChecked="{Binding FiloTop_IsChecked}"
@@ -32,7 +32,7 @@
<AccessText TextWrapping="Wrap" Text="{Binding FiloTopMsg}"/>
</ToggleButton.Content>
</ToggleButton>-->
<!--Incidi-->
<ToggleButton Padding="0"
IsChecked="{Binding Engrave_IsChecked}"
@@ -50,100 +50,100 @@
Margin="1.75,0,0,0"
IsEnabled="{Binding Drip_IsEnabled}">
<ToggleButton.Content>
<AccessText TextWrapping="Wrap" Text="{Binding DripMsg}" />
<AccessText TextWrapping="Wrap" Text="{Binding DripMsg}" />
</ToggleButton.Content>
</ToggleButton>
</UniformGrid>
<StackPanel DockPanel.Dock="Bottom">
<ContentControl Content="{Binding CompoManagerControl,
<StackPanel DockPanel.Dock="Bottom">
<ContentControl Content="{Binding CompoManagerControl,
UpdateSourceTrigger=PropertyChanged}"
Visibility="{Binding CompoManagerControl_Visibility}"/>
<Button Command="{Binding BackCommand}"
<Button Command="{Binding BackCommand}"
Visibility="{Binding Back_Visibility}"
Style="{StaticResource CompoWindow_Button}"
Focusable="False"
Margin="0,0,0,5">
<Image Source="/Resources/MachiningTab/BackArrow.png"/>
</Button>
</StackPanel>
<Image Source="/Resources/MachiningTab/BackArrow.png"/>
</Button>
<Grid>
<ContentControl VerticalAlignment="Center"
</StackPanel>
<Grid>
<ContentControl VerticalAlignment="Center"
Content="{Binding SideEntityControl}"/>
<StackPanel VerticalAlignment="Center"
<StackPanel VerticalAlignment="Center"
Visibility="{Binding Measure_Visibility}">
<ItemsControl ItemsSource="{Binding CompoParamList}">
<ItemsControl.Resources>
<DataTemplate DataType="{x:Type OmagOFFICE:TextParamItem}">
<Grid Margin="0,0,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Name}" VerticalAlignment="Center"/>
<EgtWPFLib5:EgtTextBox Grid.Column="1"
<ItemsControl ItemsSource="{Binding CompoParamList}">
<ItemsControl.Resources>
<DataTemplate DataType="{x:Type OmagOFFICE:TextParamItem}">
<Grid Margin="0,0,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Name}" VerticalAlignment="Center" Foreground="{DynamicResource Omag_White}"/>
<EgtWPFLib5:EgtTextBox Grid.Column="1"
Text="{Binding Value}" IsEnabled="{Binding IsEnable}"/>
</Grid>
</DataTemplate>
<DataTemplate DataType="{x:Type OmagOFFICE:CheckParamItem}">
<Grid Margin="0,0,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Name}"/>
<CheckBox Grid.Column="1"
</Grid>
</DataTemplate>
<DataTemplate DataType="{x:Type OmagOFFICE:CheckParamItem}">
<Grid Margin="0,0,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Name}" Foreground="{DynamicResource Omag_White}"/>
<CheckBox Grid.Column="1"
IsChecked="{Binding Value}" IsEnabled="{Binding IsEnable}"
HorizontalAlignment="Center"/>
</Grid>
</DataTemplate>
</ItemsControl.Resources>
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</Grid>
</DataTemplate>
</ItemsControl.Resources>
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
</ItemsControl>
<TextBlock Text="{Binding OutputMessage}"
<TextBlock Text="{Binding OutputMessage}"
Foreground="{Binding MsgColor}"
TextWrapping="Wrap"
TextAlignment="Justify"
Margin="0,0,0,5"/>
<Button Content="{Binding InternalMsg}"
<Button Content="{Binding InternalMsg}"
Command="{Binding InternalCommand}"
Visibility="{Binding Internal_Visibility}"
Style="{StaticResource CompoWindow_Button}"/>
<Button Content="{Binding AlzAndFrontMsg}"
<Button Content="{Binding AlzAndFrontMsg}"
Command="{Binding AlzAndFrontCommand}"
Visibility="{Binding AlzAndFront_Visibility}"
Style="{StaticResource CompoWindow_Button}"/>
<UniformGrid Columns="2"
<UniformGrid Columns="2"
Margin="0,0,0,5"
Visibility="{Binding AddRemove_Visibility}">
<Button Content="{Binding AddMsg}"
<Button Content="{Binding AddMsg}"
Command="{Binding AddCommand}"
Style="{StaticResource CompoWindow_Button}"/>
<Button Content="{Binding CancelMsg}"
<Button Content="{Binding CancelMsg}"
Command="{Binding CancelCommand}"
Style="{StaticResource CompoWindow_Button}"/>
</UniformGrid>
</UniformGrid>
</StackPanel>
</Grid>
</DockPanel>
</StackPanel>
</Grid>
</DockPanel>
</UserControl>
+24 -6
View File
@@ -144,7 +144,8 @@ Public Class CompoWindowVM
#Region "METHODS"
Friend Function MakePreview(ByRef sMsg As String) As Boolean
Friend Function MakePreview(ByRef sMsg As String, Optional bDrawSolid As Boolean = True) As Boolean
EgtLuaSetGlobBoolVar("CMP.DrawSolid", bDrawSolid)
If Not EgtLuaExecLine(LUA_CMP_DRAW & "(true)") Then
sMsg = "Error in component execution"
m_bDrawOk = False
@@ -170,20 +171,32 @@ Public Class CompoWindowVM
Return EgtLuaExecFile(sPath)
End Function
Friend Sub UpdateView()
Friend Sub UpdateView(Optional bDrawSolid As Boolean = True)
' verifico ci sia un componente corrente
If IsNothing(m_SelCompo) Then
Return
End If
' aggiorno le variabili dalla griglia
CompoWindowMap.refCompoParamPageVM.UpdateVariables()
Dim bResetView As Boolean = True
EgtLuaGetGlobBoolVar("CMP.ResetView", bResetView)
' ricalcolo il disegno
Dim sMsg As String = String.Empty
MakePreview(sMsg)
MakePreview(sMsg, bDrawSolid)
CompoWindowMap.refCompoParamPageVM.SetOutputMessage(sMsg, If(m_bDrawOk, MSG_TYPE.INFO, MSG_TYPE.ERROR_))
' aggiorno visualizzazione
EgtSetView(VT.TOP, False)
EgtZoom(ZM.ALL)
If bResetView Then
EgtSetView(VT.TOP, False)
EgtZoom(ZM.ALL)
Else
EgtDraw()
End If
End Sub
Friend Sub UpdateViewForCabinet(Optional bDrawSolid As Boolean = True)
Dim bIsCabinet As Boolean = False
EgtLuaGetGlobBoolVar("CMP.IsCabinet", bIsCabinet)
If bIsCabinet Then UpdateView(False)
End Sub
Friend Function MakeInsert(ByVal nNbr As Integer, sName As String) As Boolean
@@ -366,7 +379,8 @@ Public Class CompoWindowVM
' identificativo univoico del gruppo di pezzi, se più di un pezzo
Dim sGUICode As String = String.Empty
' cancello eventuale layer delle etichette e dimensioni
EgtErase(EgtGetFirstNameInGroup(GDB_ID.ROOT, "Dimensions"))
While Pz <> -1
' imposto il contesto corrente
EgtSetCurrentContext(CompoWindowMap.refCompoSceneHostV.CompoScene.GetCtx())
@@ -380,6 +394,10 @@ Public Class CompoWindowVM
EgtErase(EgtGetFirstNameInGroup(Pz, "Etichette"))
EgtErase(EgtGetFirstNameInGroup(Pz, "Quotature"))
EgtErase(EgtGetFirstNameInGroup(Pz, "Box"))
' elimino il solido corrispondente
Dim nChild As Integer = GDB_ID.NULL
EgtGetInfo(Pz, "Child", nChild)
EgtErase(nChild)
' Cancello layer etichette dei componenti interni (buchi)
Dim nHLId As Integer = EgtGetFirstNameInGroup(Pz, "HoleLabels")
+5
View File
@@ -21,6 +21,7 @@ Module ConstGen
' File con dati di licenza
Public Const LIC_FILE_NAME As String = "OmagOFFICE.lic"
Public Const S_LICENCE As String = "Licence"
Public Const K_LOCKID As String = "LockId"
Public Const K_KEY As String = "Key"
Public Const K_NESTKEY As String = "NestKey"
@@ -47,6 +48,10 @@ Module ConstGen
ENABLE_POLISHING = CUInt(2 ^ 18) ' 262144
OFFICE_TYPE = CUInt(2 ^ 19) ' 524288 - Solo per OmagCUT
REGISTRATION = CUInt(2 ^ 20) ' 1048576 - Solo per OmagCUT
' ---
' ---
' ---
VEIN_MATCH_3D = CInt(2 ^ 24) ' 16777216 - Solo per OmagOFFICE
End Enum
' File di log generale
+2
View File
@@ -37,6 +37,7 @@ Module ConstIni
Public Const K_CONTOURFROMCAMERA As String = "ContourFromCamera"
Public Const K_SUPPORT As String = "Support"
Public Const K_PHOTODIR As String = "PhotoDir"
Public Const K_SHOWNBARROW As String = "ShowNbArrow"
Public Const S_LANGUAGES As String = "Languages"
Public Const K_LANGUAGE As String = "Language"
@@ -114,6 +115,7 @@ Module ConstIni
Public Const K_FILOTOPOFFSET As String = "FiloTopOffset"
Public Const K_FILOTOPDEPTH As String = "FiloTopDepth"
Public Const K_FILOTOPROUNDOFF As String = "FiloTopRoundOff"
Public Const K_TEXTCOLORENT As String = "TextColorEnt"
Public Const S_NEST As String = "Nest"
Public Const K_DIRECT As String = "Direct"
Binary file not shown.

After

Width:  |  Height:  |  Size: 857 B

+87 -76
View File
@@ -13,101 +13,112 @@
MaxWidth="500"
ResizeMode="NoResize">
<DockPanel Margin="5,5,5,0">
<DockPanel Margin="5,5,5,0" Background="{StaticResource Omag_DarkGray}">
<TextBlock Text="{Binding CsvPath}"
DockPanel.Dock="Top"
Margin="0,0,0,5"/>
<UniformGrid Columns="2"
DockPanel.Dock="Bottom"
<UniformGrid Columns="15"
DockPanel.Dock="Top"
Margin="0,0,0,5">
<Button Content="{Binding InsertMsg}"
<Button Command="{Binding NewCommand}"
Margin="0,0,2.5,0"
Style = "{DynamicResource CSV_Button}">
<Image Source="/Resources/TopCommandBar/Reset.png" Stretch="Uniform"/>
</Button>
<Button Command="{Binding OpenCommand}"
Margin="2.5,0,2.5,0"
Style = "{DynamicResource CSV_Button}">
<Image Source="/Resources/TopCommandBar/Import.png" Stretch="Uniform"/>
</Button>
<ToggleButton IsChecked="{Binding Plus_IsChecked}"
Style="{DynamicResource CSV_ToggleButton}"
Margin="2.5,0,2.5,0">
<Image Source="/Resources/CsvWindow/CsvPlus - Color.png"/>
</ToggleButton>
<ToggleButton IsChecked="{Binding Minus_IsChecked}"
Style="{DynamicResource CSV_ToggleButton}"
Margin="2.5,0,0,0">
<Image Source="/Resources/CsvWindow/CsvMinus - Color.png"/>
</ToggleButton>
<Button ToolTip="{Binding InsertMsg}"
Command="{Binding InsertCommand}"
Margin="0,0,2.5,0"
Style="{StaticResource CompoWindow_Button}"/>
<Button Content="{Binding RemoveMsg}"
Style = "{DynamicResource CSV_Button}">
<Image Source="/Resources/CsvWindow/Inserisci-pezzo CSV.png" Stretch="Uniform"/>
</Button>
<Button ToolTip="{Binding RemoveMsg}"
Command="{Binding RemoveCommand}"
Margin="2.5,0,0,0"
Style="{StaticResource CompoWindow_Button}"/>
</UniformGrid>
Style = "{DynamicResource CSV_Button}">
<Image Source="/Resources/CsvWindow/Parcheggia-pezzo CSV.png" Stretch="Uniform"/>
</Button>
</UniformGrid>
<UniformGrid Columns="4"
DockPanel.Dock="Bottom"
Margin="0,0,0,5">
<Button Command="{Binding NewCommand}"
Margin="0,0,2.5,0">
<Image Source="/Resources/CsvWindow/CsvNew.png"/>
</Button>
<Button Command="{Binding OpenCommand}"
Margin="2.5,0,2.5,0">
<Image Source="/Resources/CsvWindow/CsvOpen.png"/>
</Button>
<ToggleButton IsChecked="{Binding Plus_IsChecked}"
Margin="2.5,0,2.5,0">
<Image Source="/Resources/CsvWindow/CsvPlus.png"/>
</ToggleButton>
<ToggleButton IsChecked="{Binding Minus_IsChecked}"
Margin="2.5,0,0,0">
<Image Source="/Resources/CsvWindow/CsvMinus.png"/>
</ToggleButton>
</UniformGrid>
<TreeView ItemsSource="{Binding CsvTypeList}"
<TextBlock Text="{Binding CsvPath}"
DockPanel.Dock="Top"
Foreground="{StaticResource Omag_White}"
Margin="0,0,0,5"/>
<TreeView ItemsSource="{Binding CsvTypeList}"
Background="Transparent"
BorderThickness="0"
Margin="0,0,0,5" >
<TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}">
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
<EventSetter Event="MouseUp" Handler="PartTypeClick"/>
</Style>
</TreeView.ItemContainerStyle>
<TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}">
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
<EventSetter Event="MouseUp" Handler="PartTypeClick"/>
</Style>
</TreeView.ItemContainerStyle>
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type OmagOFFICE:CsvPartType}"
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type OmagOFFICE:CsvPartType}"
ItemsSource="{Binding CsvPartList}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Width="32" Margin="0,8,6,4" />
<TextBlock Grid.Column="1" Text="{Binding Name}" FontSize="15" Margin="10" />
<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Width="32" Margin="0,8,6,4" />
<TextBlock Grid.Column="1" Text="{Binding Name}" FontSize="15" Margin="10" Foreground="{StaticResource Omag_White}"/>
</Grid>
<HierarchicalDataTemplate.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}">
<EventSetter Event="MouseUp" Handler="PartItemClick"/>
<Style.Triggers>
<DataTrigger Binding="{Binding bIsActive}" Value="False">
<Setter Property="Foreground" Value="{StaticResource Omag_Gray}"/>
</DataTrigger>
</Style.Triggers>
</Style>
</HierarchicalDataTemplate.ItemContainerStyle>
</Grid>
<HierarchicalDataTemplate.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}">
<EventSetter Event="MouseUp" Handler="PartItemClick"/>
<Style.Triggers>
<DataTrigger Binding="{Binding bIsActive}" Value="true">
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
</DataTrigger>
<DataTrigger Binding="{Binding bIsActive}" Value="False">
<Setter Property="Foreground" Value="{StaticResource Omag_Gray}"/>
</DataTrigger>
</Style.Triggers>
</Style>
</HierarchicalDataTemplate.ItemContainerStyle>
</HierarchicalDataTemplate>
</HierarchicalDataTemplate>
<DataTemplate DataType="{x:Type OmagOFFICE:CsvPartItem}">
<Grid Width="246" Margin="0,5,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="60"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<DataTemplate DataType="{x:Type OmagOFFICE:CsvPartItem}">
<Grid Width="246" Margin="0,5,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="60"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="{Binding Name}" Height="18" FontSize="14" HorizontalAlignment="Right"/>
<TextBlock Grid.Column="1" Text="{Binding sText1}" Height="18" FontSize="14" HorizontalAlignment="Center"/>
<TextBlock Grid.Column="2" Text="{Binding sText2}" Height="18" FontSize="14" HorizontalAlignment="Left"/>
<TextBlock Grid.Column="0" Text="{Binding Name}" Height="18" FontSize="14" HorizontalAlignment="Right"/>
<TextBlock Grid.Column="1" Text="{Binding sText1}" Height="18" FontSize="14" HorizontalAlignment="Center"/>
<TextBlock Grid.Column="2" Text="{Binding sText2}" Height="18" FontSize="14" HorizontalAlignment="Left"/>
</Grid>
</DataTemplate>
</TreeView.Resources>
</Grid>
</DataTemplate>
</TreeView.Resources>
</TreeView>
</TreeView>
</DockPanel>
</DockPanel>
</EgtWPFLib5:EgtCustomWindow>
+13 -2
View File
@@ -6,19 +6,21 @@
IsResizable="False"
IsMinimizable="False"
IsClosable="False"
ShowInTaskbar="False"
ShowInTaskbar="False"
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
WindowStartupLocation="CenterOwner"
WindowStartupLocation="CenterOwner"
Width="270" ResizeMode="NoResize" SizeToContent="Height">
<StackPanel Margin="5,5,5,0">
<!--TAGLIO-->
<TextBlock Text="{Binding CurrSawingMsg}"
Visibility="{Binding CurrSawing_Visibility}"
Style="{StaticResource RawTextBlock}"
Margin="0,0,0,5"/>
<ComboBox ItemsSource="{Binding CurrSawingList}"
SelectedItem="{Binding SelCurrSawing}"
Visibility="{Binding CurrSawing_Visibility}"
Style="{DynamicResource Raw_ComboBox}"
Margin="0,0,0,5"/>
<!--<TextBlock Text="{Binding AuxMachTypeMsg}"
@@ -33,30 +35,37 @@
<!--FORATURA-->
<TextBlock Text="{Binding CurrDrillingMsg}"
Visibility="{Binding CurrDrilling_Visibility}"
Style="{StaticResource RawTextBlock}"
Margin="0,0,0,5"/>
<ComboBox ItemsSource="{Binding CurrDrillingList}"
SelectedItem="{Binding SelCurrDrilling}"
Visibility="{Binding CurrDrilling_Visibility}"
Style="{DynamicResource Raw_ComboBox}"
Margin="0,0,0,5"/>
<!--FRESATURA-->
<TextBlock Text="{Binding CurrMillingMsg}"
Visibility="{Binding CurrMilling_Visibility}"
Style="{StaticResource RawTextBlock}"
Margin="0,0,0,5"/>
<ComboBox ItemsSource="{Binding CurrMillingList}"
SelectedItem="{Binding SelCurrMilling}"
Visibility="{Binding CurrMilling_Visibility}"
Style="{DynamicResource Raw_ComboBox}"
Margin="0,0,0,5"/>
<!--SVUOTATURA-->
<TextBlock Text="{Binding CurrPocketingMsg}"
Visibility="{Binding CurrPocketing_Visibility}"
Style="{StaticResource RawTextBlock}"
Margin="0,0,0,5"/>
<ComboBox ItemsSource="{Binding CurrPocketingList}"
SelectedItem="{Binding SelCurrPocketing}"
Visibility="{Binding CurrPocketing_Visibility}"
Style="{DynamicResource Raw_ComboBox}"
Margin="0,0,0,5"/>
<!--WATERJET-->
<TextBlock Text="{Binding CurrWaterjettingMsg}"
Visibility="{Binding CurrWaterjetting_Visibility}"
Style="{StaticResource RawTextBlock}"
Margin="0,0,0,5"/>
<Grid>
<Grid.ColumnDefinitions>
@@ -66,12 +75,14 @@
<ComboBox ItemsSource="{Binding CurrWaterjettingList}"
SelectedItem="{Binding SelCurrWaterjetting}"
Visibility="{Binding CurrWaterjetting_Visibility}"
Style="{DynamicResource Raw_ComboBox}"
Margin="0,0,5,5"/>
<!--Quality-->
<ComboBox ItemsSource="{Binding CurrWaterjettingQualityList}"
SelectedItem="{Binding SelCurrWaterjettingQuality}"
Visibility="{Binding CurrWaterjetting_Visibility}"
Style="{DynamicResource Raw_ComboBox}"
Margin="5,0,0,5"
Grid.Column="1">
</ComboBox>
+6
View File
@@ -9,6 +9,12 @@
Me.DataContext = CurrMachWindowVM
' Assegno al riferimento locale al VM il VM preso dal DataContext
m_CurrMachWindowVM = CurrMachWindowVM
End Sub
Private Sub Me_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized
Me.Top = Owner.Top + Owner.Height / 2 - Me.ActualHeight / 2
Me.Left = Owner.Left + Owner.Width / 2 - Me.ActualWidth / 2
End Sub
Private Sub OkBtn_Click(sender As Object, e As RoutedEventArgs) Handles OkBtn.Click
+86 -16
View File
@@ -29,9 +29,17 @@ Public Class CurrMachWindowVM
m_SelCurrSawing = value
End If
CurrentMachine.sCurrSawing = m_SelCurrSawing
' salvo la lvorazione corrente
WritePrivateProfileString(S_MACH_MACH, K_CURRSAWING_OFFICE, m_SelCurrSawing, sMachIniFile)
End Set
End Property
Public Sub SetCurrSawing(sCurrOfficeSawing As String)
m_SelCurrSawing = sCurrOfficeSawing
CurrentMachine.sCurrSawing = m_SelCurrSawing
NotifyPropertyChanged("SelCurrSawing")
End Sub
Public ReadOnly Property CurrSawing_Visibility As Visibility
Get
If EgtGetHeadId("H1") = GDB_ID.NULL Then
@@ -149,10 +157,18 @@ Public Class CurrMachWindowVM
If value <> m_SelCurrDrilling Then
m_SelCurrDrilling = value
CurrentMachine.sCurrDrilling = m_SelCurrDrilling
' salvo la lvorazione corrente
WritePrivateProfileString(S_MACH_MACH, K_CURRDRILLING_OFFICE, m_SelCurrDrilling, sMachIniFile)
End If
End Set
End Property
Public Sub SetCurrDrilling(sCurrOfficeDrilling As String)
m_SelCurrDrilling = sCurrOfficeDrilling
CurrentMachine.sCurrDrilling = m_SelCurrDrilling
NotifyPropertyChanged("SelCurrDrilling")
End Sub
Private m_CurrDrilling_Visibility As Visibility
Public Property CurrDrilling_Visibility As Visibility
Get
@@ -187,10 +203,18 @@ Public Class CurrMachWindowVM
If value <> m_SelCurrMilling Then
m_SelCurrMilling = value
CurrentMachine.sCurrMilling = m_SelCurrMilling
' salvo la lvorazione corrente
WritePrivateProfileString(S_MACH_MACH, K_CURRMILLING_OFFICE, m_SelCurrMilling, sMachIniFile)
End If
End Set
End Property
Public Sub SetCurrMilling(sCurrOfficeMilling As String)
m_SelCurrMilling = sCurrOfficeMilling
CurrentMachine.sCurrMilling = m_SelCurrMilling
NotifyPropertyChanged("SelCurrMilling")
End Sub
Private m_CurrMilling_Visibility As Visibility
Public Property CurrMilling_Visibility As Visibility
Get
@@ -225,10 +249,18 @@ Public Class CurrMachWindowVM
If value <> m_SelCurrPocketing Then
m_SelCurrPocketing = value
CurrentMachine.sCurrPocketing = m_SelCurrPocketing
' salvo la lvorazione corrente
WritePrivateProfileString(S_MACH_MACH, K_CURRPOCKETING_OFFICE, m_SelCurrPocketing, sMachIniFile)
End If
End Set
End Property
Public Sub SetCurrPocketing(sCurrOfficePocketing As String)
m_SelCurrPocketing = sCurrOfficePocketing
CurrentMachine.sCurrPocketing = m_SelCurrPocketing
NotifyPropertyChanged("SelCurrPocketing")
End Sub
Private m_CurrPocketing_Visibility As Visibility
Public Property CurrPocketing_Visibility As Visibility
Get
@@ -263,10 +295,18 @@ Public Class CurrMachWindowVM
If value <> m_SelCurrWaterjetting Then
m_SelCurrWaterjetting = value
CurrentMachine.sCurrWaterJetting = m_SelCurrWaterjetting
' salvo la lvorazione corrente
WritePrivateProfileString(S_MACH_MACH, K_CURRWATERJETTING_OFFICE, m_SelCurrWaterjetting, sMachIniFile)
End If
End Set
End Property
Public Sub SetCurrWaterjetting(sCurrOfficeWaterjetting As String)
m_SelCurrWaterjetting = sCurrOfficeWaterjetting
CurrentMachine.sCurrWaterJetting = m_SelCurrWaterjetting
NotifyPropertyChanged("SelCurrWaterjetting")
End Sub
Private m_CurrWaterjettingQualityList As New List(Of String)
Public Property CurrWaterjettingQualityList As List(Of String)
Get
@@ -286,10 +326,18 @@ Public Class CurrMachWindowVM
If value <> m_SelCurrWaterjettingQuality Then
m_SelCurrWaterjettingQuality = value
CurrentMachine.sCurrWaterJettingQuality = m_SelCurrWaterjettingQuality
' salvo la lvorazione corrente
WritePrivateProfileString(S_MACH_MACH, K_CURRWATERJETTINGQUALITY_OFFICE, m_SelCurrWaterjettingQuality, sMachIniFile)
End If
End Set
End Property
Public Sub SetCurrWaterjettingQuality(sCurrOfficeWaterjettingQuality As String)
m_SelCurrWaterjettingQuality = sCurrOfficeWaterjettingQuality
CurrentMachine.sCurrWaterJettingQuality = m_SelCurrWaterjettingQuality
NotifyPropertyChanged("SelCurrWaterjetting")
End Sub
Private m_CurrWaterjetting_Visibility As Visibility = Visibility.Collapsed
Public Property CurrWaterjetting_Visibility As Visibility
Get
@@ -408,28 +456,28 @@ Public Class CurrMachWindowVM
' --- DRILL ---
CreateMachiningList(MCH_MY.DRILLING, m_AvailableDrillList, m_CurrDrillingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrDrillingList.Count = 0 Then
If m_CurrDrillingList.Count <= 1 Then
CurrentMachine.sCurrDrilling = String.Empty
End If
' --- MILL ---
CreateMachiningList(MCH_MY.MILLING, m_AvailableMillList, m_CurrMillingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrMillingList.Count = 0 Then
If m_CurrMillingList.Count <= 1 Then
CurrentMachine.sCurrMilling = String.Empty
End If
' --- SCASSO ---
CreateMachiningList(MCH_MY.POCKETING, m_AvailableMillList, m_CurrPocketingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrPocketingList.Count = 0 Then
If m_CurrPocketingList.Count <= 1 Then
CurrentMachine.sCurrPocketing = String.Empty
End If
' --- WATERJET ---
CreateMachiningList(MCH_MY.WATERJETTING, m_AvailableWaterjetList, m_CurrWaterjettingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrWaterjettingList.Count = 0 Then
If m_CurrWaterjettingList.Count <= 1 Then
CurrentMachine.sCurrWaterJetting = String.Empty
End If
m_CurrWaterjettingQualityList = New List(Of String)(CurrentMachine.Qualities)
@@ -439,28 +487,28 @@ Public Class CurrMachWindowVM
' --- DRILL ---
CreateMachiningList(MCH_MY.DRILLING, m_AvailableDrillList, m_CurrDrillingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrDrillingList.Count = 0 Then
If m_CurrDrillingList.Count <= 1 Then
CurrentMachine.sCurrDrilling = String.Empty
End If
' --- MILL ---
CreateMachiningList(MCH_MY.MILLING, m_AvailableMillList, m_CurrMillingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrMillingList.Count = 0 Then
If m_CurrMillingList.Count <= 1 Then
CurrentMachine.sCurrMilling = String.Empty
End If
' --- SCASSO ---
CreateMachiningList(MCH_MY.POCKETING, m_AvailableMillList, m_CurrPocketingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrPocketingList.Count = 0 Then
If m_CurrPocketingList.Count <= 1 Then
CurrentMachine.sCurrPocketing = String.Empty
End If
' --- WATERJET ---
CreateMachiningList(MCH_MY.WATERJETTING, m_AvailableWaterjetList, m_CurrWaterjettingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrWaterjettingList.Count = 0 Then
If m_CurrWaterjettingList.Count <= 1 Then
CurrentMachine.sCurrWaterJetting = String.Empty
End If
m_CurrWaterjettingQualityList = New List(Of String)(CurrentMachine.Qualities)
@@ -472,11 +520,13 @@ Public Class CurrMachWindowVM
If m_CurrSawingList.Count > 0 Then
If CurrentMachine.sCurrSawing <> String.Empty Then
SelCurrSawing = CurrentMachine.sCurrSawing
SetCurrSawing(CurrentMachine.sCurrSawing)
Else
Dim sCurrSawing As String = ""
GetPrivateProfileString(S_MACH_MACH, K_CURRSAWING, Nothing, sCurrSawing, sMachIniFile)
SelCurrSawing = sCurrSawing
' GetPrivateProfileString(S_MACH_MACH, K_CURRSAWING, Nothing, sCurrSawing, sMachIniFile)
GetPrivateProfileString(S_MACH_MACH, K_CURRSAWING_OFFICE, Nothing, sCurrSawing, sMachIniFile)
'SelCurrSawing = sCurrSawing
SetCurrSawing(sCurrSawing)
End If
Else
CurrentMachine.sCurrSawing = String.Empty
@@ -486,7 +536,11 @@ Public Class CurrMachWindowVM
If CurrentMachine.bDrilling And m_CurrDrillingList.Count > 1 Then
CurrDrilling_Visibility = Visibility.Visible
If CurrentMachine.sCurrDrilling <> String.Empty Then
SelCurrDrilling = CurrentMachine.sCurrDrilling
SetCurrDrilling(CurrentMachine.sCurrDrilling)
Else
Dim sCurrMachining As String = ""
GetPrivateProfileString(S_MACH_MACH, K_CURRDRILLING_OFFICE, Nothing, sCurrMachining, sMachIniFile)
SetCurrDrilling(sCurrMachining)
End If
Else
CurrDrilling_Visibility = Visibility.Collapsed
@@ -495,7 +549,11 @@ Public Class CurrMachWindowVM
If CurrentMachine.bMilling And m_CurrMillingList.Count > 1 Then
CurrMilling_Visibility = Visibility.Visible
If CurrentMachine.sCurrMilling <> String.Empty Then
SelCurrMilling = CurrentMachine.sCurrMilling
SetCurrMilling(CurrentMachine.sCurrMilling)
Else
Dim sCurrMachining As String = ""
GetPrivateProfileString(S_MACH_MACH, K_CURRMILLING_OFFICE, Nothing, sCurrMachining, sMachIniFile)
SetCurrMilling(sCurrMachining)
End If
Else
CurrMilling_Visibility = Visibility.Collapsed
@@ -504,7 +562,11 @@ Public Class CurrMachWindowVM
If CurrentMachine.bPocketing And CurrPocketingList.Count > 1 Then
CurrPocketing_Visibility = Visibility.Visible
If CurrentMachine.sCurrPocketing <> String.Empty Then
SelCurrPocketing = CurrentMachine.sCurrPocketing
SetCurrPocketing(CurrentMachine.sCurrPocketing)
Else
Dim sCurrMachining As String = ""
GetPrivateProfileString(S_MACH_MACH, K_CURRPOCKETING_OFFICE, Nothing, sCurrMachining, sMachIniFile)
SetCurrPocketing(sCurrMachining)
End If
Else
CurrPocketing_Visibility = Visibility.Collapsed
@@ -515,10 +577,18 @@ Public Class CurrMachWindowVM
' se DB WaterJet abilitato avrò anche la CmBx della Quality solo la CmBx del Waterjetting corrente
If CurrentMachine.bFromDBWaterJet Then
If CurrentMachine.sCurrWaterJetting <> String.Empty Then
SelCurrWaterjetting = CurrentMachine.sCurrWaterJetting
SetCurrWaterjetting(CurrentMachine.sCurrWaterJetting)
Else
Dim sCurrMachining As String = ""
GetPrivateProfileString(S_MACH_MACH, K_CURRWATERJETTING_OFFICE, Nothing, sCurrMachining, sMachIniFile)
SetCurrWaterjetting(sCurrMachining)
End If
If CurrentMachine.sCurrWaterJettingQuality <> String.Empty Then
SelCurrWaterjettingQuality = CurrentMachine.sCurrWaterJettingQuality
SetCurrWaterjettingQuality(CurrentMachine.sCurrWaterJettingQuality)
Else
Dim sCurrMachining As String = ""
GetPrivateProfileString(S_MACH_MACH, K_CURRWATERJETTINGQUALITY_OFFICE, Nothing, sCurrMachining, sMachIniFile)
SetCurrWaterjettingQuality(sCurrMachining)
End If
CurrWaterjettingQuality_Visibility = Visibility.Visible
Else
+1 -1
View File
@@ -112,7 +112,7 @@ Public Class DxfImportSceneHostV
Private Sub OnMouseDownScene(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles ImportDxfScene.OnMouseDownScene
' Solo se in modalità angoli o gocciolatoio su lati esterni
If DxfImportWindowMap.refDxfImportWindowVM.SideAngle_IsChecked Or DxfImportWindowMap.refDxfImportWindowVM.Drip_IsChecked Then
If DxfImportWindowMap.refDxfImportWindowVM.SideAngle_IsChecked Or DxfImportWindowMap.refDxfImportWindowVM.Drip_IsChecked Or DxfImportWindowMap.refDxfImportWindowVM.Engrave_IsChecked Then
OnMouseDownSceneSideAngle(e)
ElseIf DxfImportWindowMap.refDxfImportWindowVM.FiloTop_IsChecked Then
OnMouseDownSceneFiloTop(e)
+283 -83
View File
@@ -6,14 +6,200 @@
Title="{Binding TitleMsg}"
IsMinimizable="False"
ShowInTaskbar="False"
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}" WindowStartupLocation="CenterOwner">
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}" WindowStartupLocation="CenterOwner"
xmlns:theme="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Aero">
<EgtWPFLib5:EgtCustomWindow.Resources>
<!--gradiente colore-->
<!--<Style x:Key="ScrollBarButton" TargetType="{x:Type RepeatButton}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<theme:ScrollChrome x:Name="Chrome" RenderPressed="{TemplateBinding IsPressed}" RenderMouseOver="{TemplateBinding IsMouseOver}" SnapsToDevicePixels="true" theme:ScrollChrome.ScrollGlyph="{TemplateBinding theme:ScrollChrome.ScrollGlyph}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>-->
<Style x:Key="ScrollBarThumb" TargetType="{x:Type Thumb}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Thumb}">
<Border x:Name="Background" CornerRadius="0" Background="Transparent" BorderThickness="{TemplateBinding BorderThickness}" BorderBrush="{TemplateBinding BorderBrush}">
<Grid Background="Transparent" Margin="1">
<Border Opacity="0" x:Name="BackgroundAnimation" Background="Transparent" />
<Rectangle x:Name="BackgroundGradient" RadiusX="8" RadiusY="8" Fill="#FF095CA8" Stroke="#1C1D22" StrokeThickness="0.5">
<!--<Rectangle.Fill>
<LinearGradientBrush StartPoint=".7,0" EndPoint=".7,1">
<GradientStop Color="#1C1D22" Offset="0.375" />
<GradientStop Color="#1C1D22" Offset="0.625" />
</LinearGradientBrush>
</Rectangle.Fill>-->
</Rectangle>
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!--<Style x:Key="HorizontalScrollBarPageButton" TargetType="{x:Type RepeatButton}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<Rectangle Fill="{TemplateBinding Background}" Height="{TemplateBinding Height}" Width="{TemplateBinding Width}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>-->
<Style x:Key="VerticalScrollBarPageButton" TargetType="{x:Type RepeatButton}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<Rectangle Fill="{TemplateBinding Background}" Height="{TemplateBinding Height}" Width="{TemplateBinding Width}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="ScrollBarStyle1" TargetType="{x:Type ScrollBar}">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Stylus.IsPressAndHoldEnabled" Value="false"/>
<Setter Property="Stylus.IsFlicksEnabled" Value="false"/>
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
<Setter Property="Width" Value="{DynamicResource {x:Static SystemParameters.VerticalScrollBarWidthKey}}"/>
<Setter Property="MinWidth" Value="{DynamicResource {x:Static SystemParameters.VerticalScrollBarWidthKey}}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollBar}">
<Grid x:Name="Bg" Background="{TemplateBinding Background}" SnapsToDevicePixels="true">
<Grid.RowDefinitions>
<RowDefinition MaxHeight="1"/>
<RowDefinition Height="0.00001*"/>
<RowDefinition MaxHeight="1"/>
</Grid.RowDefinitions>
<!--<RepeatButton Command="{x:Static ScrollBar.LineUpCommand}" IsEnabled="{TemplateBinding IsMouseOver}" />-->
<Track x:Name="PART_Track" IsDirectionReversed="true" IsEnabled="{TemplateBinding IsMouseOver}" Grid.Row="1">
<Track.DecreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageUpCommand}" Style="{StaticResource VerticalScrollBarPageButton}"/>
</Track.DecreaseRepeatButton>
<Track.IncreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageDownCommand}" Style="{StaticResource VerticalScrollBarPageButton}"/>
</Track.IncreaseRepeatButton>
<Track.Thumb>
<Thumb Style="{StaticResource ScrollBarThumb}"/>
</Track.Thumb>
</Track>
<!--<RepeatButton Command="{x:Static ScrollBar.LineDownCommand}" IsEnabled="{TemplateBinding IsMouseOver}" Grid.Row="2" theme:ScrollChrome.ScrollGlyph="DownArrow"/>-->
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Background" TargetName="Bg" Value="Transparent"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<!--<Style.Triggers>
<Trigger Property="Orientation" Value="Horizontal">
<Setter Property="Width" Value="Auto"/>
<Setter Property="MinWidth" Value="0"/>
<Setter Property="Height" Value="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarHeightKey}}"/>
<Setter Property="MinHeight" Value="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarHeightKey}}"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollBar}">
<Grid x:Name="Bg" Background="{TemplateBinding Background}" SnapsToDevicePixels="true">
<Grid.ColumnDefinitions>
<ColumnDefinition MaxWidth="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarButtonWidthKey}}"/>
<ColumnDefinition Width="0.00001*"/>
<ColumnDefinition MaxWidth="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarButtonWidthKey}}"/>
</Grid.ColumnDefinitions>
<RepeatButton Command="{x:Static ScrollBar.LineLeftCommand}" IsEnabled="{TemplateBinding IsMouseOver}" theme:ScrollChrome.ScrollGlyph="LeftArrow" Style="{StaticResource CustomScrollBarButton}"/>
<Track x:Name="PART_Track" Grid.Column="1" IsEnabled="{TemplateBinding IsMouseOver}">
<Track.DecreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageLeftCommand}" Style="{StaticResource CustomScrollBarButton}"/>
</Track.DecreaseRepeatButton>
<Track.IncreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageRightCommand}" Style="{StaticResource CustomScrollBarButton}"/>
</Track.IncreaseRepeatButton>
<Track.Thumb>
<Thumb Style="{StaticResource ScrollBarThumb}"/>
</Track.Thumb>
</Track>
<RepeatButton Command="{x:Static ScrollBar.LineRightCommand}" Grid.Column="2" IsEnabled="{TemplateBinding IsMouseOver}" theme:ScrollChrome.ScrollGlyph="RightArrow" Style="{StaticResource CustomScrollBarButton}"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Background" TargetName="Bg" Value="Transparent"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>-->
</Style>
<Style x:Key="ScrollViewerStyle1" TargetType="{x:Type ScrollViewer}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollViewer}">
<Grid x:Name="Grid" Background="{TemplateBinding Background}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Rectangle x:Name="Corner" Grid.Column="1" Fill="{StaticResource Omag_Black}" Grid.Row="1"/>
<ScrollContentPresenter x:Name="PART_ScrollContentPresenter" CanHorizontallyScroll="False" ContentTemplate="{TemplateBinding ContentTemplate}" CanVerticallyScroll="False" Grid.Column="0" Content="{TemplateBinding Content}" CanContentScroll="{TemplateBinding CanContentScroll}" Margin="{TemplateBinding Padding}" Grid.Row="0"/>
<ScrollBar Style="{DynamicResource ScrollBarStyle1}" x:Name="PART_VerticalScrollBar"
AutomationProperties.AutomationId="VerticalScrollBar" Cursor="Arrow" Grid.Column="1"
Maximum="{TemplateBinding ScrollableHeight}" Minimum="0" Grid.Row="0"
Value="{Binding VerticalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}" ViewportSize="{TemplateBinding ViewportHeight}" Visibility="{TemplateBinding ComputedVerticalScrollBarVisibility}"
Margin="2,0,0,0"/>
<ScrollBar Style="{DynamicResource ScrollBarStyle1}" x:Name="PART_HorizontalScrollBar"
AutomationProperties.AutomationId="HorizontalScrollBar" Cursor="Arrow" Grid.Column="0"
Maximum="{TemplateBinding ScrollableWidth}" Minimum="0" Orientation="Horizontal" Grid.Row="1"
Value="{Binding HorizontalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}" ViewportSize="{TemplateBinding ViewportWidth}" Visibility="{TemplateBinding ComputedHorizontalScrollBarVisibility}"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{DynamicResource Omag_Blue}"/>
</Trigger>
</Style.Triggers>
</Style>
</EgtWPFLib5:EgtCustomWindow.Resources>
<DockPanel>
<DockPanel>
<DockPanel DockPanel.Dock="Left"
<DockPanel DockPanel.Dock="Left"
Width="200"
Margin="5,5,5,0">
<UniformGrid Columns="{Binding nButton}" Rows="1"
Margin="0,0,0,5"
DockPanel.Dock="Top">
@@ -40,145 +226,159 @@
</Button>
</UniformGrid>
<GroupBox Header="{Binding TypeMsg}"
<GroupBox Header="{Binding TypeMsg}"
DockPanel.Dock="Top"
IsEnabled="{Binding Type_IsEnabled}"
BorderThickness="{StaticResource BorderGpBx_Thickness}"
Foreground="{StaticResource Omag_White}"
Margin="0,0,0,5">
<UniformGrid Columns="2" Rows="2">
<Button Content="{Binding UseRegionMsg}"
<UniformGrid Columns="2" Rows="2">
<Button Content="{Binding UseRegionMsg}"
IsEnabled="{Binding UseRegionIsEnabled}"
Command="{Binding UseRegionCommand}"
Style="{StaticResource OptionPanel_TextButton}"/>
<Button Content="{Binding UseLayerMsg}"
<Button Content="{Binding UseLayerMsg}"
IsEnabled="{Binding UseLayerIsEnabled}"
Command="{Binding UseLayerCommand}"
Style="{StaticResource OptionPanel_TextButton}"/>
<Button Content="{Binding UseClosedCurveMsg}"
<Button Content="{Binding UseClosedCurveMsg}"
IsEnabled="{Binding UseClosedCurveIsEnabled}"
Command="{Binding UseClosedCurveCommand}"
Style="{StaticResource OptionPanel_TextButton}"/>
<Button Content="{Binding ResetMsg}"
<Button Content="{Binding ResetMsg}"
IsEnabled="{Binding ResetIsEnabled}"
Command="{Binding ResetCommand}"
Style="{StaticResource OptionPanel_TextButton}"/>
</UniformGrid>
</GroupBox>
</UniformGrid>
</GroupBox>
<GroupBox Header="{Binding MeasureUnitMsg}"
<GroupBox Header="{Binding MeasureUnitMsg}"
IsEnabled="{Binding Measure_IsEnabled}"
DockPanel.Dock="Top"
BorderThickness="{StaticResource BorderGpBx_Thickness}"
Foreground="{StaticResource Omag_White}"
Margin="0,0,0,5">
<UniformGrid Columns="2">
<RadioButton Content="{Binding MmMsg}"
<UniformGrid Columns="2">
<RadioButton Content="{Binding MmMsg}"
IsChecked="{Binding MmIsChecked}"
Style="{StaticResource OptionPanel_ToggleButton}"/>
<RadioButton Content="{Binding InchMsg}"
<RadioButton Content="{Binding InchMsg}"
IsChecked="{Binding InchIsChecked, Mode=OneWay}"
Style="{StaticResource OptionPanel_ToggleButton}"/>
</UniformGrid>
</GroupBox>
</UniformGrid>
</GroupBox>
<UniformGrid Columns="4"
<UniformGrid Columns="5"
DockPanel.Dock="Top"
IsEnabled="{Binding SideEntity_IsEnabled}"
Margin="0,0,0,5">
<!--Inclina lati-->
<ToggleButton Content="{Binding SideAngleMsg}"
Margin="0,0,0,5">
<!--Inclina lati-->
<ToggleButton Content="{Binding SideAngleMsg}"
IsChecked="{Binding SideAngle_IsChecked}"
Style="{StaticResource CompoWindow_WrapToggleButton}"/>
<!--Filo Top-->
<ToggleButton Content="{Binding FiloTopMsg}"
<!--Filo Top-->
<ToggleButton Content="{Binding FiloTopMsg}"
IsChecked="{Binding FiloTop_IsChecked}"
Style="{StaticResource CompoWindow_WrapToggleButton}"/>
<ToggleButton Content="{Binding EngraveMsg}"
IsChecked="{Binding Engrave_IsChecked}"
Style="{StaticResource CompoWindow_WrapToggleButton}"/>
<!--Incidi da sotto-->
<ToggleButton Content="{Binding DripMsg}"
<ToggleButton Content="{Binding DripMsg}"
IsChecked="{Binding Drip_IsChecked}"
Style="{StaticResource CompoWindow_WrapToggleButton}"
IsEnabled="{Binding Drip_IsEnabled}"/>
<!--Fora da sotto-->
<ToggleButton Content="{Binding UnderDrillMsg}"
<!--Fora da sotto-->
<ToggleButton Content="{Binding UnderDrillMsg}"
IsChecked="{Binding UnderDrill_IsChecked}"
Style="{StaticResource CompoWindow_WrapToggleButton}"
IsEnabled="{Binding Drip_IsEnabled}"/>
</UniformGrid>
</UniformGrid>
<UniformGrid DockPanel.Dock="Bottom"
<UniformGrid DockPanel.Dock="Bottom"
Columns="2"
Margin="0,0,0,5">
<Button x:Name="OkBtn"
<Button x:Name="OkBtn"
Content="{Binding OkMsg}"
IsEnabled="{Binding OkIsEnabled}"
Style="{StaticResource OptionPanel_TextButton}"/>
<Button x:Name="CancelBtn"
<Button x:Name="CancelBtn"
Content="{Binding CancelMsg}"
Style="{StaticResource OptionPanel_TextButton}"/>
</UniformGrid>
</UniformGrid>
<Grid DockPanel.Dock="Bottom"
Visibility="{Binding PartData_Visibility}"
Margin="0,0,0,10">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1.8*"/>
<ColumnDefinition Width="1.2*"/>
</Grid.ColumnDefinitions>
<GroupBox Header="Dati pezzo"
BorderThickness="{StaticResource BorderGpBx_Thickness}"
Foreground="{StaticResource Omag_White}"
Margin="0">
<ScrollViewer Style="{DynamicResource ScrollViewerStyle1}" VerticalScrollBarVisibility="Auto" Focusable="False">
<StackPanel>
<Grid Visibility="{Binding PartData_Visibility}"
Margin="0,0,0,10">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1.8*"/>
<ColumnDefinition Width="1.2*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding PartNumMsg}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding PartNum}"
<TextBlock Text="{Binding PartNumMsg}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding PartNum}"
Grid.Column="1"/>
</Grid>
</Grid>
<Grid DockPanel.Dock="Bottom"
Visibility="{Binding PartData_Visibility}"
Margin="0,0,0,10">
<TextBlock Text="{Binding TopMsg}"/>
<CheckBox IsChecked="{Binding TopIsChecked}"
HorizontalAlignment="Right" Margin="6,0,6,0"/>
</Grid>
<Grid Visibility="{Binding PartData_Visibility}"
Margin="0,0,0,10">
<TextBlock Text="{Binding TopMsg}"/>
<CheckBox IsChecked="{Binding TopIsChecked}"
HorizontalAlignment="Right" Margin="6,0,6,0"/>
</Grid>
<Grid DockPanel.Dock="Bottom"
Visibility="{Binding OrderList_Visibility}"
Margin="0,0,0,10">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1.8*"/>
<ColumnDefinition Width="1.2*"/>
</Grid.ColumnDefinitions>
<Grid Visibility="{Binding OrderList_Visibility}"
Margin="0,0,0,10">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1.8*"/>
<ColumnDefinition Width="1.2*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding ListMsg}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding List}"
<TextBlock Text="{Binding ListMsg}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding List}"
Grid.Column="1"/>
</Grid>
</Grid>
<Grid DockPanel.Dock="Bottom"
Visibility="{Binding OrderList_Visibility}"
Margin="0,0,0,10">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1.8*"/>
<ColumnDefinition Width="1.2*"/>
</Grid.ColumnDefinitions>
<Grid Visibility="{Binding OrderList_Visibility}"
Margin="0,0,0,10">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1.8*"/>
<ColumnDefinition Width="1.2*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding OrderMsg}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding Order}"
<TextBlock Text="{Binding OrderMsg}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding Order}"
Grid.Column="1"/>
</Grid>
</Grid>
<TextBlock Text="{Binding OutputMessage}"
Foreground="{Binding MsgColor}"
DockPanel.Dock="Bottom"
TextWrapping="Wrap"
TextAlignment="Center"
Margin="0,0,0,20"/>
<TextBlock Text="{Binding OutputMessage}"
Foreground="{Binding MsgColor}"
DockPanel.Dock="Bottom"
TextWrapping="Wrap"
TextAlignment="Center"
Margin="0,0,0,20"/>
<ContentControl VerticalAlignment="Center"
Content="{Binding SideEntityControl}" ScrollViewer.VerticalScrollBarVisibility="Visible"/>
</StackPanel>
</ScrollViewer>
</GroupBox>
<ContentControl VerticalAlignment="Center"
Content="{Binding SideEntityControl}"/>
</DockPanel>
</DockPanel>
<OmagOFFICE:DxfImportSceneHostV/>
</DockPanel>
<OmagOFFICE:DxfImportSceneHostV/>
</DockPanel>
</EgtWPFLib5:EgtCustomWindow>
+101 -28
View File
@@ -15,6 +15,9 @@ Public Class DxfImportWindowVM
Private m_nFileType As Integer = FT.NULL
Private m_bEnableTrf As Boolean = False
' in "LoadCurrFile" imposto il valore del parametro per import nge
Private bImportSTD As Boolean = True
Private m_sCad2dName As String
Private m_sCad2dPath As String
@@ -142,7 +145,7 @@ Public Class DxfImportWindowVM
Return m_SideAngle_IsChecked
End Get
Set(value As Boolean)
If m_Drip_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Then Return
If m_Drip_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Or m_Engrave_IsChecked Then Return
m_SideAngle_IsChecked = value
If value Then
' Aggiungo regioni per percorsi interni
@@ -190,7 +193,7 @@ Public Class DxfImportWindowVM
Return m_FiloTop_IsChecked
End Get
Set(value As Boolean)
If m_SideAngle_IsChecked Or m_Drip_IsChecked Or m_UnderDrill_IsChecked Then Return
If m_SideAngle_IsChecked Or m_Drip_IsChecked Or m_UnderDrill_IsChecked Or m_Engrave_IsChecked Then Return
m_FiloTop_IsChecked = value
If value Then
' Aggiungo regioni per percorsi interni
@@ -233,13 +236,61 @@ Public Class DxfImportWindowVM
End Set
End Property
Private m_Engrave_IsChecked As Boolean
Public Property Engrave_IsChecked As Boolean
Get
Return m_Engrave_IsChecked
End Get
Set(value As Boolean)
If m_Drip_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Or m_SideAngle_IsChecked Then Return
m_Engrave_IsChecked = value
If value Then
' Aggiungo regioni per percorsi interni
AdjustSelectRegions()
' Messaggio di selezione contorno
SetOutputMessage(EgtMsg(MSG_DRAWPAGEUC + 6), MSG_TYPE.INFO) ' Selezionare un contorno
' Imposto modalità sideangle
m_SideEntityControlVM = New SideEntityControlVM(SideEntityControlVM.CallingWindowOpt.DXFIMPORT,
DxfImportWindowMap.refDxfImportSceneHostV.ImportDxfScene,
SideEntityControlVM.ModeOpt.ENGRAVE)
SideEntityControl = New SideEntityControlV(m_SideEntityControlVM)
Open_IsEnabled = False
Type_IsEnabled = False
Measure_IsEnabled = False
PartData_Visibility = Visibility.Collapsed
OrderList_Visibility = Visibility.Collapsed
OkIsEnabled = False
Else
' Rimuovo regioni per percorsi interni
RemoveSelectRegions()
m_SideEntityControlVM.Close()
Open_IsEnabled = True
Type_IsEnabled = True
Measure_IsEnabled = True
PartData_Visibility = Visibility.Visible
OrderList_Visibility = Visibility.Visible
OkIsEnabled = True
m_SideEntityControlVM = Nothing
SideEntityControl = Nothing
' Elimino scritte angoli per input e inserisco quelle definitive
SideEntityControlVM.WriteSideAngleForNest(DxfImportWindowMap.refDxfImportSceneHostV.ImportDxfScene.GetCtx())
' Deseleziono tutto
DxfImportWindowMap.refDxfImportSceneHostV.Deselect()
' Pulisco area messaggi
ClearOutputMessage()
End If
NotifyPropertyChanged("EngraveIsChecked")
EgtZoom(ZM.ALL)
End Set
End Property
Private m_Drip_IsChecked As Boolean
Public Property Drip_IsChecked As Boolean
Get
Return m_Drip_IsChecked
End Get
Set(value As Boolean)
If m_SideAngle_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Then Return
If m_SideAngle_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Or m_Engrave_IsChecked Then Return
m_Drip_IsChecked = value
If value Then
' Messaggio di selezione contorno
@@ -283,7 +334,7 @@ Public Class DxfImportWindowVM
Return m_UnderDrill_IsChecked
End Get
Set(value As Boolean)
If m_SideAngle_IsChecked Or m_Drip_IsChecked Or m_FiloTop_IsChecked Then Return
If m_SideAngle_IsChecked Or m_Drip_IsChecked Or m_FiloTop_IsChecked Or m_Engrave_IsChecked Then Return
m_UnderDrill_IsChecked = value
If value Then
' Aggiungo regioni di selezione per percorsi interni
@@ -493,6 +544,12 @@ Public Class DxfImportWindowVM
End Get
End Property
Public ReadOnly Property EngraveMsg As String
Get
Return EgtMsg(90397)
End Get
End Property
Public ReadOnly Property DripMsg As String
Get
Return EgtMsg(MSG_IMPORTPAGEUC + 8)
@@ -646,16 +703,30 @@ Public Class DxfImportWindowVM
Case FT.DXF
' recupero unità di misura del file
Dim dScale As Double = If(m_MmIsChecked, ONEMM, ONEINCH)
' Importo file DXF
If Not EgtImportDxf(m_sFilePath, dScale) Then Return False
Case FT.NGE
' Carico Nge
If Not EgtOpenFile(m_sFilePath) Then Return False
' Filtro Nge
EstProject.FilterNge()
Case FT_TRF
' Carico Trf
If Not ImportTrf(m_sFilePath) Then Return False
' Importo file DXF
If Not EgtImportDxf(m_sFilePath, dScale) Then Return False
' Riporto al piano tutte le superifici
EgtSelectAll()
EgtScale(GDB_ID.SEL, Frame3d.GLOB, 1, 1, 0)
EgtDeselectAll()
Case FT.NGE
' Carico Nge
If Not EgtOpenFile(m_sFilePath) Then Return False
bImportSTD = True
' Leggo nel file se il progetto arriva dal programma EgtSTONE3D -> bImportSTD = False
Dim idGroupStone As Integer = GDB_ID.NULL
idGroupStone = EgtGetFirstNameInGroup(GDB_ID.ROOT, "EgtStone3D")
If idGroupStone <> GDB_ID.NULL Then
bImportSTD = False
EgtErase(idGroupStone)
End If
' Filtro Nge SOLO se importazione STANDARD
If bImportSTD Then
EstProject.FilterNge()
End If
Case FT_TRF
' Carico Trf
If Not ImportTrf(m_sFilePath) Then Return False
Case Else
Return False
End Select
@@ -840,7 +911,7 @@ Public Class DxfImportWindowVM
Friend Sub SelectedPartChanged()
' Se sono in modalità inclinazioni o gocciolatoio calcolo lati inclinabili e creo testi
If SideAngle_IsChecked() Or Drip_IsChecked() Or FiloTop_IsChecked Then
If SideAngle_IsChecked() Or Drip_IsChecked() Or FiloTop_IsChecked Or Engrave_IsChecked Then
m_SideEntityControlVM.ReLoadSideAnglePage(SideEntityControlVM.CallingWindowOpt.DXFIMPORT)
End If
End Sub
@@ -925,9 +996,9 @@ Public Class DxfImportWindowVM
Private Sub SetMsgColor(nMsgType As MSG_TYPE)
Select Case nMsgType
Case MSG_TYPE.INFO
m_MsgColor = Brushes.Black
m_MsgColor = Brushes.White
Case MSG_TYPE.WARNING
m_MsgColor = Brushes.SaddleBrown
m_MsgColor = Brushes.Gold
Case MSG_TYPE.ERROR_
m_MsgColor = Brushes.Red
End Select
@@ -1017,18 +1088,20 @@ Public Class DxfImportWindowVM
Public Sub UseRegion(ByVal param As Object)
' Creo i pezzi
Dim nType As Integer = If(m_nFileType = FT.NGE, FPC_TYPE.NGE, FPC_TYPE.REGION)
Dim dToler As Double = GetPrivateProfileDouble(S_FLATPARTS, K_FLPTOLERANCE, 0.1, IniFile.m_sIniFile)
EgtCreateAdjustFlatParts(nType, dToler)
' Se prevista gestione colore->angolo di fianco
If GetPrivateProfileInt(S_COLORTOSIDEANG, K_CTSA_ENABLE, 0, IniFile.m_sIniFile) <> 0 Then
SideEntityControlVM.ColorToSideAngle(DxfImportWindowMap.refDxfImportSceneHostV.ImportDxfScene.GetCtx())
If bImportSTD Then
Dim nType As Integer = If(m_nFileType = FT.NGE, FPC_TYPE.NGE, FPC_TYPE.REGION)
Dim dToler As Double = GetPrivateProfileDouble(S_FLATPARTS, K_FLPTOLERANCE, 0.1, IniFile.m_sIniFile)
EgtCreateAdjustFlatParts(nType, dToler)
' Se prevista gestione colore->angolo di fianco
If GetPrivateProfileInt(S_COLORTOSIDEANG, K_CTSA_ENABLE, 0, IniFile.m_sIniFile) <> 0 Then
SideEntityControlVM.ColorToSideAngle(DxfImportWindowMap.refDxfImportSceneHostV.ImportDxfScene.GetCtx())
End If
' Se prevista gestione colore->incisioni
If GetPrivateProfileInt(S_COLORTOENGRAVE, K_CTE_ENABLE, 0, IniFile.m_sIniFile) <> 0 Then
SideEntityControlVM.ColorToEngrave(DxfImportWindowMap.refDxfImportSceneHostV.ImportDxfScene.GetCtx())
End If
ColorRegion(DxfImportWindowMap.refDxfImportSceneHostV.ImportDxfScene.GetCtx())
End If
' Se prevista gestione colore->incisioni
If GetPrivateProfileInt(S_COLORTOENGRAVE, K_CTE_ENABLE, 0, IniFile.m_sIniFile) <> 0 Then
SideEntityControlVM.ColorToEngrave(DxfImportWindowMap.refDxfImportSceneHostV.ImportDxfScene.GetCtx())
End If
ColorRegion(DxfImportWindowMap.refDxfImportSceneHostV.ImportDxfScene.GetCtx())
' Eseguo zoom
EgtZoom(ZM.ALL)
' disabilito bottoni UseLayer e UseRegion, abilito bottoni Reset e Insert
+138 -30
View File
@@ -1,4 +1,5 @@
Imports EgtUILib
Imports System.Security.Cryptography
Imports EgtUILib
Friend Module CamAuto
@@ -32,7 +33,7 @@ Friend Module CamAuto
Return bOk
End Function
Friend Function AddWaterJetMachining( nOperId As Integer, ByRef nWarn As Integer) As Boolean
Friend Function AddWaterJetMachining(nOperId As Integer, ByRef nWarn As Integer) As Boolean
EgtLuaCreateGlobTable("CAM")
SetLuaStandardCamParams()
EgtLuaSetGlobIntVar("CAM.OPERID", nOperId)
@@ -49,6 +50,26 @@ Friend Module CamAuto
Return bOk
End Function
' versione CamAuto 2.6l1: gestione tagli con ridotto affondamento
Friend Function AddWaterJetMachining(LocaList As List(Of Integer), ByRef nWarn As Integer) As Boolean
EgtLuaCreateGlobTable("CAM")
SetLuaStandardCamParams()
For i As Integer = 0 To LocaList.Count - 1
EgtLuaSetGlobIntVar("CAM.TAB_OPERID." & (i + 1).ToString, LocaList(i))
Next
Dim nErr As Integer = 999
Dim bOk As Boolean = EgtLuaExecFile(m_sCamAutoDir & "\CamAuto.lua")
bOk = bOk AndAlso EgtLuaGetGlobIntVar("CAM.ERR", nErr) AndAlso nErr = 0
bOk = bOk AndAlso EgtLuaCallFunction("CAM.AddWaterJets")
EgtLuaGetGlobIntVar("CAM.ERR", nErr)
EgtLuaResetGlobVar("CAM")
If nErr <> 0 Then
bOk = False
EgtOutLog("Error in CamAuto : " & nErr.ToString())
End If
Return bOk
End Function
Friend Function EraseMachinings(nPartId As Integer) As Boolean
EgtLuaCreateGlobTable("CAM")
EgtLuaSetGlobIntVar("CAM.PARTID", nPartId)
@@ -157,6 +178,69 @@ Friend Module CamAuto
Return bOk
End Function
Friend Function ResetAllSplitCut() As Boolean
Dim PartList As New List(Of Integer)
' Ricerca nei grezzi dei pezzi (devono essere ricercati tra quelli presenti nei grezzi)
Dim bOk As Boolean = True
' Recupero il numero di fasi presenti nel progetto
Dim nPhaseCount As Integer = EgtGetPhaseCount()
For nPhase As Integer = 1 To nPhaseCount
EgtSetCurrPhase(nPhase)
Dim nRawId As Integer = EgtGetFirstRawPart()
While nRawId <> GDB_ID.NULL
Dim nParId As Integer = EgtGetFirstPartInRawPart(nRawId)
If EgtVerifyRawPartPhase(nRawId, nPhase) Then
While nParId <> GDB_ID.NULL
Dim nNextParId As Integer = EgtGetNextPartInRawPart(nParId)
' verifico se il pezzo passato è un taglio di sepatazione (il nome deve contenere "SpliCut")
Dim sName As String = String.Empty
If EgtGetName(nParId, sName) AndAlso sName.Contains(SPLIT_CUT) Then
' Rimuovo il pezzo dal grezzo
If EgtRemovePartFromRawPart(nParId) Then
' Salvo l'indice del pezzo se non è stato già inserito
Dim nIndex As Integer = PartList.FirstOrDefault(Function(nId) nId = nParId)
If nIndex = 0 Then PartList.Add(nParId)
End If
End If
nParId = nNextParId
End While
End If
nRawId = EgtGetNextRawPart(nRawId)
End While
Next
' Reimposto la prima fase del progetto
EgtSetCurrPhase(1)
' Procedo ad eliminare il pezzo
For Each Item As Integer In PartList
bOk = bOk And EgtErase(Item)
Next
Return bOk
End Function
Friend Function RemoveCurrentSplitCut(nIdSplitCut As Integer) As Boolean
Dim bOk As Boolean = False
Dim nCurrPhase As Integer = EgtGetCurrPhase()
Dim nRawId As Integer = EgtGetFirstRawPart()
While nRawId <> GDB_ID.NULL
Dim nParId As Integer = EgtGetFirstPartInRawPart(nRawId)
If EgtVerifyRawPartPhase(nRawId, nCurrPhase) Then
While nParId <> GDB_ID.NULL
If nParId = nIdSplitCut Then
' Rimuovo il pezzo dal grezzo
bOk = EgtRemovePartFromRawPart(nParId)
Exit While
End If
nParId = EgtGetNextPartInRawPart(nParId)
End While
End If
If bOk Then Exit While
nRawId = EgtGetNextRawPart(nRawId)
End While
' Elimino il pezzo
bOk = bOk And EgtErase(nIdSplitCut)
Return bOk
End Function
' verifico che il contorno passato non sia stato separato
Friend Function VerifyOutLoopIsClosed(nIdLayerOutLoop As Integer) As Boolean
Dim nIdMy As Integer = EgtGetFirstInGroup(nIdLayerOutLoop)
@@ -260,7 +344,7 @@ Friend Module CamAuto
EgtGetGroupObjs(EgtGetFirstNameInGroup(nPartId, NAME_UNDERDRILL)) = 0 Then
Return True
End If
' Se tutti i pezzi
' Se tutti i pezzi
Else
' Salvo fase attualmente corrente
Dim nOriPhase As Integer = EgtGetCurrPhase()
@@ -401,9 +485,9 @@ Friend Module CamAuto
Dim sTool2 As String = String.Empty
EgtGetMachiningParam(MCH_MP.TUUID, sTuuid)
EgtTdbGetToolFromUUID(sTuuid, sTool)
If String.IsNullOrWhiteSpace( sTool) Then
If String.IsNullOrWhiteSpace(sTool) Then
Dim sMchTool As String = ""
EgtGetMachiningParam( MCH_MP.TOOL, sMchTool)
EgtGetMachiningParam(MCH_MP.TOOL, sMchTool)
bOk = False
If sMissingTools.IndexOf(sMchTool) = -1 Then
sMissingTools = sMissingTools & sMchTool & ", "
@@ -417,7 +501,7 @@ Friend Module CamAuto
sTool2 = sTool & "-2"
End If
If String.Compare(sTool, CurrentMachine.sCurrSaw) <> 0 AndAlso
( String.IsNullOrWhiteSpace( sTool2) OrElse String.Compare(sTool2, CurrentMachine.sCurrSaw) <> 0) AndAlso
(String.IsNullOrWhiteSpace(sTool2) OrElse String.Compare(sTool2, CurrentMachine.sCurrSaw) <> 0) AndAlso
String.Compare(sTool, CurrentMachine.sCurrDripSaw) <> 0 Then
bOk = False
If sMissingTools.IndexOf(sTool) = -1 Then
@@ -481,9 +565,10 @@ Friend Module CamAuto
Dim dReducedDepth As Double = GetPrivateProfileDouble(S_MACH_NEST, K_MACH_REDUCEDDEPTH, 1, CurrentMachine.sMachIniFile)
' Ciclo sulle lavorazioni
Dim nOperId As Integer = EgtGetFirstOperation()
Dim LocalListOperId As New List(Of Integer)
While nOperId <> GDB_ID.NULL
' verifico sia una lavorazione valida di taglio con lama
If IsValidMachining( nOperId) And EgtGetOperationType( nOperId) = MCH_OY.SAWING Then
If IsValidMachining(nOperId) And EgtGetOperationType(nOperId) = MCH_OY.SAWING Then
' verifica interferenza
Dim nFlag As Integer = FMI_TYPE.NONE
If Not VerifyComposedMachining(nOperId, nFlag) Then
@@ -495,12 +580,14 @@ Friend Module CamAuto
' se abilitato e attivo waterjet, lo aggiungo per completare il taglio
If CurrentMachine.WaterJettingActive Then
Dim nWarn As Integer = 0
AddWaterJetMachining(nOperId, nWarn)
LocalListOperId.Add(nOperId)
'AddWaterJetMachining(nOperId, nWarn)
End If
End If
End If
nOperId = EgtGetNextOperation(nOperId)
End While
If LocalListOperId.Count > 0 Then AddWaterJetMachining(LocalListOperId, 0)
Return bModified
End Function
@@ -604,8 +691,8 @@ Friend Module CamAuto
If nOriLeadIn <> MCH_SAW_LI.STRICT Then
EgtSetMachiningParam(MCH_MP.LEADINTYPE, MCH_SAW_LI.STRICT)
Dim dUserAddLen As Double = 0
EgtGetInfo( nMchId, INFO_MCH_USER_SAL, dUserAddLen)
EgtRemoveInfo( nMchId, INFO_MCH_USER_SAL)
EgtGetInfo(nMchId, INFO_MCH_USER_SAL, dUserAddLen)
EgtRemoveInfo(nMchId, INFO_MCH_USER_SAL)
Dim dAddLen As Double = 0
EgtGetMachiningParam(MCH_MP.STARTADDLEN, dAddLen)
EgtSetMachiningParam(MCH_MP.STARTADDLEN, dAddLen - dUserAddLen - dSafeLen)
@@ -624,8 +711,8 @@ Friend Module CamAuto
If nOriLeadOut <> MCH_SAW_LO.STRICT Then
EgtSetMachiningParam(MCH_MP.LEADOUTTYPE, MCH_SAW_LO.STRICT)
Dim dUserAddLen As Double = 0
EgtGetInfo( nMchId, INFO_MCH_USER_EAL, dUserAddLen)
EgtRemoveInfo( nMchId, INFO_MCH_USER_EAL)
EgtGetInfo(nMchId, INFO_MCH_USER_EAL, dUserAddLen)
EgtRemoveInfo(nMchId, INFO_MCH_USER_EAL)
Dim dAddLen As Double = 0
EgtGetMachiningParam(MCH_MP.ENDADDLEN, dAddLen)
EgtSetMachiningParam(MCH_MP.ENDADDLEN, dAddLen - dUserAddLen - dSafeLen)
@@ -888,6 +975,27 @@ Friend Module CamAuto
End If
End Function
Friend Function GetRawHeightFromPart(CurrIdPart As Integer, VeinCtx As Integer, MachCtx As Integer) As Double
Dim H As Double = 5
EgtSetCurrentContext(MachCtx)
Dim IdRaw As Integer = EgtGetFirstRawPart()
While IdRaw <> GDB_ID.NULL
Dim IdPart As Integer = EgtGetFirstPartInRawPart(IdRaw)
While IdPart <> GDB_ID.NULL
If IdPart = CurrIdPart Then
Dim ptRawMin, ptRawMax As Point3d
EgtGetRawPartBBox(GetCurrentRaw(), ptRawMin, ptRawMax)
EgtSetCurrentContext(VeinCtx)
Return ptRawMax.z - ptRawMin.z
End If
IdPart = EgtGetNextPartInRawPart(IdPart)
End While
IdRaw = EgtGetNextRawPart(IdRaw)
End While
EgtSetCurrentContext(VeinCtx)
Return H
End Function
Friend Function UpdateAllRawsZ(dDeltaZ As Double) As Boolean
For i As Integer = 1 To EgtGetPhaseCount()
EgtSetCurrPhase(i)
@@ -956,13 +1064,13 @@ Friend Module CamAuto
Dim nRawId As Integer = EgtGetFirstRawPart()
If nRawId = GDB_ID.NULL Then Return False
' Se non ci sono pezzi, esco
Dim nPart1Id As Integer = EgtGetFirstPartInRawPart( nRawId)
Dim nPart1Id As Integer = EgtGetFirstPartInRawPart(nRawId)
If nPart1Id = GDB_ID.NULL Then Return True
' Verifico se cornice curva
Dim nDir As Integer = 0
EgtGetInfo(nPart1Id, INFO_FRAME_DIR, nDir)
Dim bSwap As Boolean = ( nDir = 0)
Dim bCurved As Boolean = ( nDir >= 2)
Dim bSwap As Boolean = (nDir = 0)
Dim bCurved As Boolean = (nDir >= 2)
' Recupero la lavorazione corrente di sgrossatura con lama
Dim sCurrSawRou As String = CurrentMachine.sCurrSawRoughing
If String.IsNullOrEmpty(sCurrSawRou) Then Return True
@@ -989,8 +1097,8 @@ Friend Module CamAuto
' Imposto la geometria
EgtSetMachiningGeometry(vId)
' Imposto trim iniziale e finale
EgtSetMachiningParam(MCH_MP.STARTADDLEN, If( bSwap, -dTrimEnd, -dTrimStart))
EgtSetMachiningParam(MCH_MP.ENDADDLEN, If( bSwap, -dTrimStart, -dTrimEnd))
EgtSetMachiningParam(MCH_MP.STARTADDLEN, If(bSwap, -dTrimEnd, -dTrimStart))
EgtSetMachiningParam(MCH_MP.ENDADDLEN, If(bSwap, -dTrimStart, -dTrimEnd))
' Se cornice curva, imposto SCC
If bCurved Then EgtSetMachiningParam(MCH_MP.SOLCHOICETYPE, MCH_SCC.ADIR_NEAR)
' Applico la lavorazione
@@ -1005,13 +1113,13 @@ Friend Module CamAuto
Dim nRawId As Integer = EgtGetFirstRawPart()
If nRawId = GDB_ID.NULL Then Return False
' Se non ci sono pezzi, esco
Dim nPart1Id As Integer = EgtGetFirstPartInRawPart( nRawId)
Dim nPart1Id As Integer = EgtGetFirstPartInRawPart(nRawId)
If nPart1Id = GDB_ID.NULL Then Return True
' Verifico se cornice curva
Dim nDir As Integer = 0
EgtGetInfo( nPart1Id, INFO_FRAME_DIR, nDir)
Dim bSwap As Boolean = ( nDir = 0)
Dim bCurved As Boolean = ( nDir >= 2)
EgtGetInfo(nPart1Id, INFO_FRAME_DIR, nDir)
Dim bSwap As Boolean = (nDir = 0)
Dim bCurved As Boolean = (nDir >= 2)
' Recupero la lavorazione corrente di finitura con lama
Dim sCurrSawFin As String = CurrentMachine.sCurrSawFinishing
If String.IsNullOrEmpty(sCurrSawFin) Then Return True
@@ -1048,8 +1156,8 @@ Friend Module CamAuto
' Imposto la geometria
EgtSetMachiningGeometry(vId)
' Imposto trim iniziale e finale
EgtSetMachiningParam(MCH_MP.STARTADDLEN, If( bSwap, -dTrimEnd, -dTrimStart))
EgtSetMachiningParam(MCH_MP.ENDADDLEN, If( bSwap, -dTrimStart, -dTrimEnd))
EgtSetMachiningParam(MCH_MP.STARTADDLEN, If(bSwap, -dTrimEnd, -dTrimStart))
EgtSetMachiningParam(MCH_MP.ENDADDLEN, If(bSwap, -dTrimStart, -dTrimEnd))
' Se cornice curva, imposto SCC
If bCurved Then EgtSetMachiningParam(MCH_MP.SOLCHOICETYPE, MCH_SCC.ADIR_NEAR)
' Applico la lavorazione
@@ -1064,13 +1172,13 @@ Friend Module CamAuto
Dim nRawId As Integer = EgtGetFirstRawPart()
If nRawId = GDB_ID.NULL Then Return False
' Se non ci sono pezzi, esco
Dim nPart1Id As Integer = EgtGetFirstPartInRawPart( nRawId)
Dim nPart1Id As Integer = EgtGetFirstPartInRawPart(nRawId)
If nPart1Id = GDB_ID.NULL Then Return True
' Verifico se cornice curva
Dim nDir As Integer = 0
EgtGetInfo(nPart1Id, INFO_FRAME_DIR, nDir)
Dim bSwap As Boolean = ( nDir = 0)
Dim bCurved As Boolean = ( nDir >= 2)
Dim bSwap As Boolean = (nDir = 0)
Dim bCurved As Boolean = (nDir >= 2)
' Recupero la lavorazione corrente di spatolatura con lama
Dim sCurrSawSideFin As String = CurrentMachine.sCurrSawSideFinishing
If String.IsNullOrEmpty(sCurrSawSideFin) Then Return True
@@ -1091,8 +1199,8 @@ Friend Module CamAuto
' Imposto la geometria
EgtSetMachiningGeometry(vId)
' Imposto trim iniziale e finale
EgtSetMachiningParam(MCH_MP.STARTADDLEN, If( bSwap, -dTrimEnd, -dTrimStart))
EgtSetMachiningParam(MCH_MP.ENDADDLEN, If( bSwap, -dTrimStart, -dTrimEnd))
EgtSetMachiningParam(MCH_MP.STARTADDLEN, If(bSwap, -dTrimEnd, -dTrimStart))
EgtSetMachiningParam(MCH_MP.ENDADDLEN, If(bSwap, -dTrimStart, -dTrimEnd))
' Se cornice curva, imposto SCC
If bCurved Then EgtSetMachiningParam(MCH_MP.SOLCHOICETYPE, MCH_SCC.ADIR_NEAR)
' Applico la lavorazione
@@ -1231,14 +1339,14 @@ Friend Module CamAuto
dStartDist = dEndDist
dEndDist = dTemp
End If
' altrimenti
' altrimenti
Else
Dim vtSide As Vector3d
' Se faccia non limitata da altre o sopra la limitante
If bFree Then
EgtSetMachiningParam(MCH_MP.FACEUSE, MCH_MIL_FU.ORTUP_DOWN)
vtSide = Vector3d.Z_AX()
' altrimenti è stata trovata una faccia adiacente limitante
' altrimenti è stata trovata una faccia adiacente limitante
Else
If vtAdjN.x > 10 * EPS_SMALL Then
EgtSetMachiningParam(MCH_MP.FACEUSE, MCH_MIL_FU.ORTUP_LEFT)
+2
View File
@@ -260,6 +260,8 @@ Module ConstMach
Public Const INFO_AUX_SPLIT_WJ As String = "AUX_SPLIT_WJ"
' Info in OutLoop per punto inzio lavorazione WaterJet
Public Const INFO_START As String = "Start"
' Nome dei tagli diretti inseriti in fase di Splitting
Public Const SPLIT_CUT As String = "SplitCut"
' Nome di pezzo che è una cornice
Public Const NAME_FRAME As String = "Frame"
+6
View File
@@ -247,9 +247,13 @@
Public Const K_CURRDRIPDRILL As String = "CurrDripDrill"
Public Const K_CURRWATERJET As String = "CurrWaterJet"
Public Const K_CURRSAWING As String = "CurrSawing"
Public Const K_CURRSAWING_OFFICE As String = "CurrOfficeSawing"
Public Const K_CURRDRILLING As String = "CurrDrilling"
Public Const K_CURRDRILLING_OFFICE As String = "CurrOfficeDrilling"
Public Const K_CURRMILLING As String = "CurrMilling"
Public Const K_CURRMILLING_OFFICE As String = "CurrOfficeMilling"
Public Const K_CURRPOCKETING As String = "CurrPocketing"
Public Const K_CURRPOCKETING_OFFICE As String = "CurrOfficePocketing"
Public Const K_CURRSAWROUGHING As String = "CurrSawRoughing"
Public Const K_CURRSAWFINISHING As String = "CurrSawFinishing"
Public Const K_CURRSAWSIDEFINISHING As String = "CurrSawSideFinishing"
@@ -257,7 +261,9 @@
Public Const K_CURRDRIPSAWING As String = "CurrDripSawing"
Public Const K_CURRDRIPDRILLING As String = "CurrDripDrilling"
Public Const K_CURRWATERJETTING As String = "CurrWaterJetting"
Public Const K_CURRWATERJETTING_OFFICE As String = "CurrOfficeWaterJetting"
Public Const K_CURRWATERJETTINGQUALITY As String = "CurrWaterJettingQuality"
Public Const K_CURRWATERJETTINGQUALITY_OFFICE As String = "CurrWaterJettingQuality"
Public Const S_MATERIALS As String = "Materials"
Public Const K_CURRMATERIAL As String = "CurrMaterial"
+5 -5
View File
@@ -247,7 +247,7 @@ Module EstCalc
Friend Function SetCurrSawing(sCurrSawing As String) As Boolean
Dim nOperId As Integer = EgtGetFirstNameInGroup(EgtGetCurrMachGroup(), "Opers")
If nOperId = GDB_ID.NULL Then Return False
Return EgtSetInfo(nOperId, INFO_CURRSAWING, sCurrSawing)
Return EgtSetInfo(nOperId, INFO_CURRSAWING, sCurrSawing, True)
End Function
Friend Function GetCurrSawing() As String
@@ -261,7 +261,7 @@ Module EstCalc
Friend Function SetCurrMilling(sCurrMilling As String) As Boolean
Dim nOperId As Integer = EgtGetFirstNameInGroup(EgtGetCurrMachGroup(), "Opers")
If nOperId = GDB_ID.NULL Then Return False
Return EgtSetInfo(nOperId, INFO_CURRMILLING, sCurrMilling)
Return EgtSetInfo(nOperId, INFO_CURRMILLING, sCurrMilling, True)
End Function
Friend Function GetCurrMilling() As String
@@ -275,7 +275,7 @@ Module EstCalc
Friend Function SetCurrDrilling(sCurrDrilling As String) As Boolean
Dim nOperId As Integer = EgtGetFirstNameInGroup(EgtGetCurrMachGroup(), "Opers")
If nOperId = GDB_ID.NULL Then Return False
Return EgtSetInfo(nOperId, INFO_CURRDRILLING, sCurrDrilling)
Return EgtSetInfo(nOperId, INFO_CURRDRILLING, sCurrDrilling, True)
End Function
Friend Function GetCurrDrilling() As String
@@ -289,7 +289,7 @@ Module EstCalc
Friend Function SetCurrPocketing(sCurrMilling As String) As Boolean
Dim nOperId As Integer = EgtGetFirstNameInGroup(EgtGetCurrMachGroup(), "Opers")
If nOperId = GDB_ID.NULL Then Return False
Return EgtSetInfo(nOperId, INFO_CURRPOCKETING, sCurrMilling)
Return EgtSetInfo(nOperId, INFO_CURRPOCKETING, sCurrMilling, True)
End Function
Friend Function GetCurrPocketing() As String
@@ -303,7 +303,7 @@ Module EstCalc
Friend Function SetCurrWaterjetting(sCurrMilling As String) As Boolean
Dim nOperId As Integer = EgtGetFirstNameInGroup(EgtGetCurrMachGroup(), "Opers")
If nOperId = GDB_ID.NULL Then Return False
Return EgtSetInfo(nOperId, INFO_CURRWATERJETTING, sCurrMilling)
Return EgtSetInfo(nOperId, INFO_CURRWATERJETTING, sCurrMilling, True)
End Function
Friend Function GetCurrWaterjetting() As String
+32 -7
View File
@@ -384,28 +384,53 @@ Public Module SplitAuto
For Each nCut As Integer In vCuts
RemoveMachiningPreview(nCut)
Next
' Sposto tutte le lavorazioni disabilitate e le eventuali inglobate nella nuova fase
' ---------------------------------- LAVORAZIONI ----------------------------------
ChangeOperationPhase(nNewPhase)
' ---------------------------------- LAVORAZIONI ----------------------------------
Return True
End Function
Friend Sub ChangeOperationPhase(nNewPhase As Integer)
' creo l'elenco delle lavorazioni che devono essere sposate
Dim MchList As New List(Of Integer)
' Recupero le lavorazioni disabilitate e le eventuali inglobate nella nuova fase
Dim nId = EgtGetFirstOperation()
While nId <> GDB_ID.NULL
Dim nNextId = EgtGetNextOperation(nId)
If IsValidMachining(nId) And EgtGetOperationPhase(nId) = nNewPhase - 1 And EgtExistsInfo(nId, INFO_MCH_USER_OFF) Then
' sposto la lavorazione
EgtChangeOperationPhase(nId, nNewPhase)
' Provo ad inserire la lavorazione nell'elenco
AddMach(MchList, nId)
' sposto le inglobate
Dim sInfo As String = String.Empty
If EgtGetInfo(nId, INFO_MCH_OTHMID, sInfo) Then
Dim sItems() As String = sInfo.Split(",".ToCharArray)
For Each sId2 In sItems
For Each sId2 As String In sItems
Dim nId2 As Integer = 0
StringToInt(sId2, nId2)
If nId2 > 0 Then EgtChangeOperationPhase(nId2, nNewPhase)
If nId2 > 0 Then
' Provo ad inserire la lavorazione nell'elenco
AddMach(MchList, nId2)
End If
Next
End If
End If
nId = nNextId
End While
Return True
End Function
' Procedo ora a spostare le lavorazioni nella nuova disposizione
For Each ItemMchId As Integer In MchList
EgtChangeOperationPhase(ItemMchId, nNewPhase)
Next
End Sub
' Inserisce gli inidici delle lavorazioni evitando di inserire dei doppioni
Private Sub AddMach(MchList As List(Of Integer), IdMch As Integer)
For Each Item As Integer In MchList
If IdMch = Item Then
Return
End If
Next
MchList.Add(IdMch)
End Sub
'-----------------------------------------------------------------------------------------------
Friend Function CalculateSplitAuto() As Boolean
+16 -5
View File
@@ -539,14 +539,25 @@ Module VacuumCups
' assegante le posizioni del centro delle ventose e l'angolo di posizionamento orizzontale verifica che la posizione sia raggiungibile
Public Function VerifyOutOfStrokes(ptRef As Point3d, dRotAngDeg As Double) As Integer
Dim dX, dY, dZ As Double
Dim nStat As Integer
' Posizione Home dell'asse rotante
Dim dCHome As Double
EgtGetAxisHomePos("C", dCHome)
' imposto la l'uscita della ventosa come fosse l'uscita di un utensile
' Corse dell'asse
Dim dCMin As Double
EgtGetAxisMin("C", dCMin)
Dim dCMax As Double
EgtGetAxisMax("C", dCMax)
' Porto l'angolo nel range
Dim dRotAngMachDeg As Double = dRotAngDeg + dCHome
AdjustAngleInRange(dRotAngMachDeg, dCMin, dCMax)
' Imposto la ventosa come fosse un utensile
EgtSetCalcTool("", "H4", 1)
EgtGetCalcPositions(ptRef, dRotAngDeg + dCHome, 0, nStat, dX, dY, dZ)
EgtVerifyOutstroke(dX, dY, dZ, dRotAngDeg + dCHome, 0, nStat)
' Calcolo gli assi macchina
Dim dX, dY, dZ As Double
Dim nStat As Integer
EgtGetCalcPositions(ptRef, dRotAngMachDeg, 0, nStat, dX, dY, dZ)
' Verifico le corse
EgtVerifyOutstroke(dX, dY, dZ, dRotAngMachDeg, 0, nStat)
Return nStat
End Function
-35
View File
@@ -1,35 +0,0 @@
<Window x:Class="VeinMatchingWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Height="500" Width="500" ShowInTaskbar="False" Initialized="Window_Initialized" MinWidth="300" MinHeight="300">
<Grid Name="VeinMatchingGrid" Background="{StaticResource Omag_Gray}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="91"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Vertical">
<ToggleButton Name="ShowTextBtn" Height="40" Width="80"
Margin="0,5,0,0"
Content="ShowText"/>
<ToggleButton Name="EditBtn" Height="40" Width="80"
Margin="0,5,0,0"
Content="Edit"/>
<ToggleButton Name="VerifyBtn" Height="40" Width="80"
Margin="0,5,0,0"
Content="Verify"/>
<ToggleButton Name="MagneticBtn" Height="40" Width="80"
Margin="0,5,0,0"
Content="Magnetic"/>
<Button Name="ExportBtn" Height="40" Width="80"
Margin="0,5,0,0"
Content="Export"/>
<Button Name="AssemblyBtn" Height="40" Width="80"
Margin="0,5,0,0"
Content="3D"/>
</StackPanel>
</Grid>
</Window>
File diff suppressed because it is too large Load Diff
+3 -5
View File
@@ -1,9 +1,7 @@
<EgtFloating:EgtFloatingPanel x:Class="InstrumentPanelV"
<DockPanel x:Class="InstrumentPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"
IsTopDockable="True" IsBottomDockable="False" IsLeftDockable="False"
IsRightDockable="False" Style="{StaticResource ToolBar_EgtFloatingPanel}">
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5">
<ToggleButton ToolTip="{Binding GetDistToolTip}"
Style="{StaticResource ToolBar_ToggleButton}"
@@ -11,4 +9,4 @@
<Image Source="/Resources/InstrumentPanel/GetDist.png" Stretch="Uniform"/>
</ToggleButton>
</EgtFloating:EgtFloatingPanel>
</DockPanel>
+3 -5
View File
@@ -1,9 +1,7 @@
<EgtFloating:EgtFloatingPanel x:Class="PrintPanelV"
<DockPanel x:Class="PrintPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"
IsTopDockable="True" IsBottomDockable="False" IsLeftDockable="False"
IsRightDockable="False" Style="{StaticResource ToolBar_EgtFloatingPanel}">
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5">
<Button ToolTip="{Binding PrintToolTip}"
Style="{StaticResource ToolBar_Button}"
@@ -11,4 +9,4 @@
<Image Source="/Resources/InstrumentPanel/Print.png" Stretch="Uniform"/>
</Button>
</EgtFloating:EgtFloatingPanel>
</DockPanel>
+17 -10
View File
@@ -7,7 +7,8 @@ Public Class PrintPanelVM
Public ReadOnly Property PrintToolTip As String
Get
Return "Print shading" & vbCrLf & "Print hidden line (Shift)"
' "Print shading" & vbCrLf & "Print hidden line (Shift)"
Return "Print"
End Get
End Property
@@ -24,10 +25,22 @@ Public Class PrintPanelVM
Public Sub Print(ByVal param As Object)
Dim SM_Select As SM = SM.SHADING
If (Keyboard.Modifiers And ModifierKeys.Shift) > 0 Then
' Imposto la stampa HiddenLine (non è gestita la stampa WireFrame)
'If (Keyboard.Modifiers And ModifierKeys.Shift) > 0 Then
' SM_Select = SM.HIDDENLINE
' EgtSetLineAttribs(3)
'End If
' Gestione stampa in funzione del della visualizzazione corrente
If OmagOFFICEMap.refShowPanelVM.WireframeIsChecked Then
SM_Select = SM.WIREFRAME
EgtSetLineAttribs(3)
ElseIf OmagOFFICEMap.refShowPanelVM.HiddenLineIsChecked Then
SM_Select = SM.HIDDENLINE
EgtSetLineAttribs(3)
End If
Dim printDlg As New PrintDialog
Dim sPath = OmagOFFICEMap.refMainWindowVM.MainWindowM.sTempDir & "\Image.png"
If printDlg.ShowDialog() Then
@@ -35,10 +48,9 @@ Public Class PrintPanelVM
Dim dW As Double = printDlg.PrintableAreaWidth
Dim dH As Double = printDlg.PrintableAreaHeight
Try
' Creo l'immagine da allegare
' EgtZoom(ZM.ALL, True)
' Prendo l'immagine per la stampa
' Prendo l'immagine corrente per la stampa
Dim colWhite As New Color3d(255, 255, 255)
' Recupero le dimensioni correnti della pagina di disegno
Dim nImgW As Integer = GetWidthDimProjectV()
Dim nImgH As Integer = GetHeightDimProjectV()
If Not EgtGetImage(SM_Select, colWhite, colWhite, nImgW, nImgH, sPath) Then
@@ -63,12 +75,7 @@ Public Class PrintPanelVM
Dim tmpImg As New Image
tmpImg.BeginInit()
tmpImg.Source = bitImage
'tmpImg.Margin = New Thickness(-100)
tmpImg.Stretch = Stretch.Uniform
' ruoto a seconda dell'aspetto della pagina
'If (dH > dW And nImgH < nImgW) Or (dH < dW And nImgH > nImgW) Then
' tmpImg.LayoutTransform = New RotateTransform(-90)
'End If
tmpImg.EndInit()
' eseguo la stampa
printDlg.PrintVisual(tmpImg, "Parts Layout")
+20 -11
View File
@@ -28,16 +28,19 @@
</Grid.RowDefinitions>
<!--Seconda Colonna Terza riga-->
<GroupBox Header="{Binding SetUpMsg}" Grid.Column="1" Grid.Row="2">
<GroupBox Header="{Binding SetUpMsg}" Grid.Column="1" Grid.Row="2"
Style="{StaticResource GroupBoxOptionWnd}">
<Grid>
<ComboBox ItemsSource="{Binding ArchivedSetUpList}"
Style="{StaticResource OptionWnd_ComboBox}"
SelectedItem="{Binding SelectedDefaultSetUp}"
VerticalAlignment="Center"/>
</Grid>
</GroupBox>
<!--Seconda colonna Prima Riga-->
<GroupBox Header="{Binding HolesMsg}" Grid.Column="1" Grid.Row="0">
<GroupBox Header="{Binding HolesMsg}" Grid.Column="1" Grid.Row="0"
Style="{StaticResource GroupBoxOptionWnd}">
<Grid>
<Grid.RowDefinitions>
@@ -75,7 +78,8 @@
<!--Prima Colonna quarta riga - Lista Materiali-->
<GroupBox Header="{Binding MaterialsMsg}" Grid.Column="0"
Grid.Row="3" Grid.RowSpan="5" Visibility="{Binding Materials_Visibility}">
Grid.Row="3" Grid.RowSpan="5" Visibility="{Binding Materials_Visibility}"
Style="{StaticResource GroupBoxOptionWnd}">
<DockPanel>
@@ -116,17 +120,19 @@
</Grid>
<ListBox ItemsSource="{Binding MaterialList}"
SelectedItem="{Binding SelMaterial}"
DisplayMemberPath="sName"
Grid.RowSpan="2"
Margin="0,0,0,5"/>
SelectedItem="{Binding SelMaterial}"
Style="{StaticResource OptionWnd_ListBox}"
DisplayMemberPath="sName"
Grid.RowSpan="2"
Margin="0,0,0,5"/>
</DockPanel>
</GroupBox>
<!--Parametri taglio lama-->
<GroupBox Header="{Binding SawParamMsg}" Visibility="{Binding SawParam_Visibility}">
<GroupBox Header="{Binding SawParamMsg}" Visibility="{Binding SawParam_Visibility}"
Style="{StaticResource GroupBoxOptionWnd}">
<UniformGrid Columns="2" >
<TextBlock Text="{Binding CutExtraLenMsg}"
@@ -157,7 +163,8 @@
</GroupBox>
<!--Seconda colonna, seconda riga-->
<GroupBox Header="{Binding MachineParamMsg}" Grid.Column="1" Grid.Row="1">
<GroupBox Header="{Binding MachineParamMsg}" Grid.Column="1" Grid.Row="1"
Style="{StaticResource GroupBoxOptionWnd}">
<UniformGrid Columns="2">
<TextBlock Text="{Binding SafeZMsg}"
@@ -168,7 +175,8 @@
</GroupBox>
<GroupBox Header="{Binding MillingParamMsg}" Grid.Column="0" Grid.Row="1" Grid.RowSpan="2">
<GroupBox Header="{Binding MillingParamMsg}" Grid.Column="0" Grid.Row="1" Grid.RowSpan="2"
Style="{StaticResource GroupBoxOptionWnd}">
<UniformGrid Rows="3">
<Grid Visibility="{Binding MillingParam_Visibility}">
@@ -194,7 +202,8 @@
</GroupBox>
<!--Nesting-->
<GroupBox Header="{Binding NestingParamMsg}" Grid.Column="1" Grid.Row="3" Grid.RowSpan="2">
<GroupBox Header="{Binding NestingParamMsg}" Grid.Column="1" Grid.Row="3" Grid.RowSpan="2"
Style="{StaticResource GroupBoxOptionWnd}">
<UniformGrid Columns="2" >
+19 -21
View File
@@ -1,29 +1,27 @@
<EgtFloating:EgtFloatingPanel x:Class="MachinePanelV"
<DockPanel x:Class="MachinePanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"
IsTopDockable="True" IsBottomDockable="False" IsLeftDockable="False"
IsRightDockable="False"
Background="{StaticResource Omag_Gray}" BorderBrush="{StaticResource Omag_Gray}"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
IsEnabled="{Binding MachPanel_IsEnabled}">
<!--Combobox per selezionare la macchina corrente--><!--
<ComboBox ItemsSource="{Binding Path=MachineList}" DisplayMemberPath="Name"
SelectedItem="{Binding Path=SelectedMachine}" SelectedValuePath="Name"
Height="20" Width="150"/>-->
<Button Command="{Binding ToolDbCommand}" ToolTip="{Binding ToolDBToolTip}"
Style="{StaticResource ToolBar_TextButton}" Width="70" Content="{Binding ToolDBMsg}"/>
<Button Command="{Binding MachDbCommand}" ToolTip="{Binding MachiningDbToolTip}"
Style="{StaticResource ToolBar_TextButton}" Width="70" Content="{Binding MachiningDbMsg}"/>
<Button Command="{Binding SetUpCommand}" ToolTip="{Binding SetUpToolTip}"
Style="{StaticResource ToolBar_TextButton}" Width="70" Content="{Binding SetUpMsg}"
Background="{Binding SetUp_Background}"/>
<Button Command="{Binding WaterjetDbCommand}" ToolTip="{Binding WaterjetDbToolTip}"
Style="{StaticResource ToolBar_Button}" Width="70" Content="{Binding WaterjetDbMsg}" Visibility="{Binding WjDb_Visibility}"/>
<Button Command="{Binding MachOptionsCommand}" ToolTip="{Binding OptionsToolTip}">
<Image Source="/Resources/TopCommandBar/Options.png" Height="22" />
</Button>
</EgtFloating:EgtFloatingPanel>
<Button Command="{Binding ToolDbCommand}" ToolTip="{Binding ToolDBToolTip}" Style="{StaticResource ToolBar_Button}">
<Image Source="/Resources/NewIcons/DB-lavorazioni.png" Stretch="Uniform"/>
</Button>
<Button Command="{Binding MachDbCommand}" ToolTip="{Binding MachiningDbToolTip}" Style="{StaticResource ToolBar_Button}">
<Image Source="/Resources/NewIcons/DB-utensili.png" Stretch="UniformToFill"/>
</Button>
<Button Command="{Binding SetUpCommand}" ToolTip="{Binding SetUpToolTip}" Style="{StaticResource ToolBar_Button}">
<Image Source="/Resources/NewIcons/ToolChangerPos.png" Stretch="Uniform" />
</Button>
<Button Command="{Binding WaterjetDbCommand}" ToolTip="{Binding WaterjetDbToolTip}"
Style="{StaticResource ToolBar_Button}" Visibility="{Binding WjDb_Visibility}">
<Image Source="/Resources/NewIcons/DB-WJ.png" Stretch="UniformToFill"/>
</Button>
<Button Command="{Binding MachOptionsCommand}" ToolTip="{Binding OptionsToolTip}" Style="{StaticResource ToolBar_Button}">
<Image Source="/Resources/TopCommandBar/Options.png" Stretch="Uniform" />
</Button>
</DockPanel>
+2 -1
View File
@@ -1,3 +1,4 @@
Public Class MachinePanelV
Public Class MachinePanelV
End Class
+145 -8
View File
@@ -105,7 +105,7 @@ Public Class MyMachinePanelVM
' procedo ad inizializzare la classe → carico la lista "MachineList" che visualizzo per l'inserimento di nuovi MachGroup
Machine.MachineListInit(sMchRoots, MachineList)
' Inizializzo valori visibilità parametri Db utensili e lavorazioni
OmagOFFICETMDbParamVisibility.Init()
' OmagOFFICETMDbParamVisibility.Init()
End Sub
''' <summary>
@@ -121,9 +121,72 @@ Public Class MyMachinePanelVM
End If
Dim ToolDbWindowVM As New ToolDbWindowVM(CurrentMachine.sMachDir, CurrentMachine.sMachIniFile, OmagOFFICEMap.refSceneHostVM.MainScene.GetCtx(), "Stone", OmagOFFICEMap.refMainWindowVM.MainWindowM.nUserLevel > 5)
Dim ToolDbWindowV As New ToolDbWindowV(Application.Current.MainWindow, ToolDbWindowVM)
' imposto colori sfondo
Dim BackTopColor As New Color3d(192, 192, 192)
GetMainPrivateProfileColor(S_SCENE, K_BACKTOP, BackTopColor)
Dim BackBotColor As New Color3d(BackTopColor)
GetMainPrivateProfileColor(S_SCENE, K_BACKBOTTOM, BackBotColor)
ToolDbWindowVM.SetBackgroundColor(BackTopColor, BackBotColor)
ToolDbWindowVM.bPersonalInterface = True
' Collegata allo stile della GroupBox
ToolDbWindowVM.MyBorderGrbThickness = 0.25
ToolDbWindowVM.MyForegroundGrbColor = Brushes.White
' Definisco lo stile della pagina
ToolDbWindowVM.BorderBrushIsMouseOver = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
ToolDbWindowVM.GeneralBorderBrush = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
ToolDbWindowVM.BorderBrushIsFocused = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
ToolDbWindowVM.BackgroundBrdEnable = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
ToolDbWindowVM.BackgroundBrdDisable = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
ToolDbWindowVM.BackgroundTxBlDisable = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
ToolDbWindowVM.ForegroundTxBlEnable = Brushes.White
ToolDbWindowVM.ForegroundTxBlDisable = Brushes.White
ToolDbWindowVM.GeneralForeground = Brushes.White
ToolDbWindowVM.GeneralBackground = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
' Definisco lo stile della ComboBox
ToolDbWindowVM.BackgroundCmBxTxBl = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
ToolDbWindowVM.BackgroundListCmBxTxBl = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
ToolDbWindowVM.ForegroundCmBxTxBl = Brushes.White
ToolDbWindowVM.BorderBrushCmBxTxBl = Brushes.Black
ToolDbWindowVM.BorderThicknessCmBxTxBl = New Thickness(1)
ToolDbWindowVM.VerticalContentAlignmentCmBxTxBl = "Center"
ToolDbWindowVM.HeightCmBxTxBl = "25"
ToolDbWindowVM.WidthCmBxTxBl = "Auto"
ToolDbWindowVM.ForegroundTextBoxCmBxTxBl = Brushes.White
'Definisco lo stile del Button
ToolDbWindowVM.BackgroundButton = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
ToolDbWindowVM.ForegroundButton = Brushes.White
ToolDbWindowVM.BorderBrushButton = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
ToolDbWindowVM.BorderThicknessButton = New Thickness(1)
''Definisco lo stile della DataGrid
'ToolDbWindowVM.HeaderVisibility = DataGridHeadersVisibility.Column
'ToolDbWindowVM.BackgroundDataGrid = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
'ToolDbWindowVM.BackGroundHeader = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
'ToolDbWindowVM.ForegroundHeader = Brushes.White
'ToolDbWindowVM.BorderBrushHeader = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
'ToolDbWindowVM.BorderThicknessHeader = 0.0
'ToolDbWindowVM.FontWeightHeader = FontWeights.Bold
'ToolDbWindowVM.BackgroundDataGrid = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
'ToolDbWindowVM.BorderBrushDataGrid = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
'ToolDbWindowVM.BackgroundDataGridRow = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
'ToolDbWindowVM.ForegroundDataGridRow = Brushes.White
'ToolDbWindowVM.BorderBrushDataGridRow = Brushes.DarkGray
'ToolDbWindowVM.BorderThicknessDataGridRow = "0 0 0 1"
'ToolDbWindowVM.BorderBrushDataGridCell = Brushes.DarkGray
'ToolDbWindowVM.BorderThicknessDataGridCell = "0 0 1 0"
' Definisco stile New Mach Grouo
' Dim ToolDbWindowV As New ToolDbWindowV(Application.Current.MainWindow, ToolDbWindowVM)
Dim ToolDbWindowV As New MyToolDbWindowV(Application.Current.MainWindow, ToolDbWindowVM)
If ToolDbWindowVM.MatType <> 0 Then
ToolDbWindowV.Height = 640
ToolDbWindowV.Height = 768
ToolDbWindowV.Width = 1024
ToolDbWindowV.ShowDialog()
Else
@@ -142,22 +205,94 @@ Public Class MyMachinePanelVM
''' </summary>
Public Overrides Sub MachDb(ByVal param As Object)
If Not VerifyMachinesDir(m_sMachinesRoot) Then Return
' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa)
If Not EgtMdbReload() Then
EgtOutLog("Impossible reloading machining Db")
MessageBox.Show(EgtMsg(MSG_MACHININGDBERRORS + 8), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error)
Return
End If
EgtOutLog("Call function: Creazione oggetto MachDbWindowVM")
TimeSpanInit()
Dim MachDbWindowVM As New EgtWPFLib5.MachiningDbWindowVM(CurrentMachine.sMachIniFile, OmagOFFICEMap.refSceneHostVM.MainScene.GetCtx(), "Stone", OmagOFFICEMap.refMainWindowVM.MainWindowM.nUserLevel > 5)
Dim MachDbWindowV As New EgtWPFLib5.MachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM)
' Dim MachDbWindowV As New EgtWPFLib5.MachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM)
EgtOutLog(TimeSpanEnd())
EgtOutLog("Call function: Aggiorna oggetto MachDbWindowVM")
TimeSpanInit()
MachDbWindowVM.bPersonalInterface = True
' Collegata allo stile della GroupBox
MachDbWindowVM.MyBorderGrbThickness = 0.25
MachDbWindowVM.MyForegroundGrbColor = Brushes.White
' Definisco lo stile della pagina
MachDbWindowVM.BorderBrushIsMouseOver = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.GeneralBorderBrush = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.BorderBrushIsFocused = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.BackgroundBrdEnable = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.BackgroundBrdDisable = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.BackgroundTxBlDisable = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.ForegroundTxBlEnable = Brushes.White
MachDbWindowVM.ForegroundTxBlDisable = Brushes.White
MachDbWindowVM.GeneralForeground = Brushes.White
MachDbWindowVM.GeneralBackground = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.MyForegroundChColor = Brushes.White
' Definisco lo stile della ComboBox
MachDbWindowVM.BackgroundCmBxTxBl = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.BackgroundListCmBxTxBl = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.ForegroundCmBxTxBl = Brushes.White
MachDbWindowVM.BorderBrushCmBxTxBl = Brushes.Black
MachDbWindowVM.BorderThicknessCmBxTxBl = New Thickness(1)
MachDbWindowVM.VerticalContentAlignmentCmBxTxBl = "Center"
MachDbWindowVM.HeightCmBxTxBl = "25"
MachDbWindowVM.WidthCmBxTxBl = "Auto"
MachDbWindowVM.ForegroundTextBoxCmBxTxBl = Brushes.White
'Definisco lo stile del ToggleButton
MachDbWindowVM.BackgroundIsChecked = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.ForegroundIsChecked = Brushes.White
MachDbWindowVM.BorderBrushIsChecked = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.BorderThicknessIsChecked = New Thickness(1)
MachDbWindowVM.OpacityIsChecked = 0.25
'Definisco lo stile della DataGrid
MachDbWindowVM.HeaderVisibility = DataGridHeadersVisibility.Column
MachDbWindowVM.BackgroundDataGrid = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#484D55"), Brush)
MachDbWindowVM.BackGroundHeader = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#484D55"), Brush)
MachDbWindowVM.ForegroundHeader = Brushes.White
MachDbWindowVM.BorderBrushHeader = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.BorderThicknessHeader = New Thickness(0)
MachDbWindowVM.FontWeightHeader = FontWeights.Bold
MachDbWindowVM.BorderBrushDataGrid = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.BackgroundDataGridRow = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.ForegroundDataGridRow = Brushes.White
MachDbWindowVM.BorderBrushDataGridRow = Brushes.DarkGray
MachDbWindowVM.BorderThicknessDataGridRow = New Thickness(0, 0, 0, 1)
MachDbWindowVM.BorderBrushDataGridCell = Brushes.DarkGray
MachDbWindowVM.BorderThicknessDataGridCell = New Thickness(0, 0, 1, 0)
EgtOutLog(TimeSpanEnd())
EgtOutLog("Call function: Creazione oggetto MachDbWindowV")
TimeSpanInit()
Dim MachDbWindowV As New MyMachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM)
If EgtWPFLib5.MachiningTreeViewItem.m_MatType <> 0 Then
EgtOutLog("Call function: Visualizzazione oggetto MachDbWindowV")
TimeSpanInit()
MachDbWindowV.Height = 768
MachDbWindowV.Width = 1024
MachDbWindowV.ShowDialog()
EgtOutLog(TimeSpanEnd())
Else
Exit Sub
End If
' Verifico che gli utensili delle lavorazioni correnti siano attrezzati (necessario perchè potrei aver cambiato gli utensili delle lavorazioni)
' e che le lavorazioni correnti siano compatibili con materiale e spessore
' Lama
@@ -206,14 +341,14 @@ Public Class MyMachinePanelVM
If Not bOkSetUp Then
SetUp_Background = Brushes.Red
Else
SetUp_Background = DirectCast(New BrushConverter().ConvertFrom("#FFDDDDDD"), SolidColorBrush)
SetUp_Background = DirectCast(New BrushConverter().ConvertFrom("#1C1D22"), SolidColorBrush)
End If
If Not bOkMatThick Then
OmagOFFICEMap.refOptionPanelVM.RawPart_Background = Brushes.Red
OmagOFFICEMap.refRawPartTabVM.CurrMach_Background = Brushes.Red
Else
OmagOFFICEMap.refOptionPanelVM.RawPart_Background = OmagOFFICEDictionary.TabControl_Header_Background
OmagOFFICEMap.refRawPartTabVM.CurrMach_Background = DirectCast(New BrushConverter().ConvertFrom("#FFDDDDDD"), SolidColorBrush)
OmagOFFICEMap.refRawPartTabVM.CurrMach_Background = DirectCast(New BrushConverter().ConvertFrom("#1C1D22"), SolidColorBrush)
End If
End Sub
@@ -252,7 +387,8 @@ Public Class MyMachinePanelVM
' Reset lua
EgtLuaResetGlobVar("STU")
Dim SetUpWindow As New SetUpWindowV(Application.Current.MainWindow, New MySetUpWindowVM(CurrentMachine.sMachDir, CurrentMachine.sMachineName))
' Dim SetUpWindow As New SetUpWindowV(Application.Current.MainWindow, New MySetUpWindowVM(CurrentMachine.sMachDir, CurrentMachine.sMachineName))
Dim SetUpWindow As New MySetUpWindowV(Application.Current.MainWindow, New MySetUpWindowVM(CurrentMachine.sMachDir, CurrentMachine.sMachineName))
SetUpWindow.Height = 614
SetUpWindow.Width = 1024
SetUpWindow.ShowDialog()
@@ -338,7 +474,8 @@ Public Class MyMachinePanelVM
''' Execute the Exec. This method is invoked by the ExecCommand.
''' </summary>
Public Sub WaterjetDb(ByVal param As Object)
Dim WaterjetDbWindow As New WaterjetDbWindowV(Application.Current.MainWindow, New WaterjetDbWindowVM(CurrentMachine.sMachDir))
' Dim WaterjetDbWindow As New WaterjetDbWindowV(Application.Current.MainWindow, New WaterjetDbWindowVM(CurrentMachine.sMachDir))
Dim WaterjetDbWindow As New MyWaterjetDbWindowV(Application.Current.MainWindow, New WaterjetDbWindowVM(CurrentMachine.sMachDir))
WaterjetDbWindow.Height = 546
WaterjetDbWindow.Width = 846
WaterjetDbWindow.ShowDialog()
+10 -3
View File
@@ -219,12 +219,17 @@ Public Class MainWindowM
EgtUILib.GetPrivateProfileString( S_LICENCE, K_NESTKEY, "", sNestKey, sLicFile)
EgtSetNestKey( sNestKey)
Dim bNetHwKey As Boolean = ( GetMainPrivateProfileInt(S_GENERAL, K_NETKEY, 0) = 1)
EgtSetNetHwKey( bNetHwKey)
EgtSetNetHwKey(bNetHwKey)
Dim sLockId As String = ""
EgtUILib.GetPrivateProfileString(S_LICENCE, K_LOCKID, "", sLockId, sLicFile)
If Not String.IsNullOrEmpty(sLockId) Then
EgtSetLockId(sLockId)
End If
' Verifico abilitazione nesting automatico
m_bAutoNestOption = Not String.IsNullOrWhiteSpace( sNestKey)
' Recupero livello e opzioni della chiave
Dim bKey As Boolean = EgtGetKeyLevel(9423, 2502, 1, m_nKeyLevel) And
EgtGetKeyOptions(9423, 2502, 1, m_nKeyOptions)
Dim bKey As Boolean = EgtGetKeyLevel(9423, 2612, 1, m_nKeyLevel) And
EgtGetKeyOptions(9423, 2612, 1, m_nKeyOptions)
' Verifico abilitazione prodotto
Dim bProd As Boolean = GetKeyOption(KEY_OPT.OFFICE_BASE)
' Inizializzazione generale di EgtInterface
@@ -294,6 +299,7 @@ Public Class MainWindowM
' Info su opzioni chiave
EgtOutLog("KeyOptions : " & bKey.ToString() & " " & m_nKeyOptions.ToString() & " " & bProd.ToString())
EgtPHOTOLib.MainData.SetConfigDir(m_sConfigDir)
EgtPHOTOLib.MainData.SetDebugLevel(m_nDebug)
EgtPHOTOLib.MainData.SetKeyLevel(m_nKeyLevel)
EgtPHOTOLib.MainData.SetKeyOptions(CInt(m_nKeyOptions))
EgtPHOTOLib.MainData.SetPhotoDir(m_sPhotoDir)
@@ -375,6 +381,7 @@ Public Class MainWindowM
End Sub
Friend Function GetKeyOption(nKeyOpt As KEY_OPT) As Boolean
Dim int As UInteger = m_nKeyOptions And nKeyOpt
Return ((m_nKeyOptions And nKeyOpt) <> 0)
End Function
+14 -9
View File
@@ -4,24 +4,29 @@
xmlns:OmagOFFICE="clr-namespace:OmagOFFICE"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
DataContext="{StaticResource MainWindowVM}"
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
Style="{DynamicResource MainWindowStyle}"
Title="{Binding Title}" Icon="/Resources/OmagOFFICE.ico"
MinHeight="600" MinWidth="800"
AboutBoxCommand="{Binding AboutBoxCommand}" WindowStyle="None" ResizeMode="NoResize"
CloseCommand="{Binding CloseApplicationCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}">
CloseCommand="{Binding CloseApplicationCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}"
Background="{StaticResource Omag_DarkGray}">
<EgtWPFLib5:EgtCustomWindow.TitlePanel>
<OmagOFFICE:TopCommandBarV DataContext="{StaticResource TopCommandBarVM}"/>
</EgtWPFLib5:EgtCustomWindow.TitlePanel>
<EgtWPFLib5:EgtCustomWindow.InputBindings>
<KeyBinding Key="Escape" Command="{Binding EscapeCommand}"/>
</EgtWPFLib5:EgtCustomWindow.InputBindings>
<!--Pannello principale -->
<DockPanel>
<DockPanel>
<!--StatusBar -->
<OmagOFFICE:StatusBarV DataContext="{StaticResource StatusBarVM}"
<!--StatusBar -->
<OmagOFFICE:StatusBarV DataContext="{StaticResource StatusBarVM}"
DockPanel.Dock="Bottom"/>
<!--Progetto corrente -->
<OmagOFFICE:ProjectV DataContext="{StaticResource ProjectVM}"/>
<!--Progetto corrente -->
<OmagOFFICE:ProjectV DataContext="{StaticResource ProjectVM}"/>
</DockPanel>
</DockPanel>
</EgtWPFLib5:EgtCustomWindow>
+22
View File
@@ -45,6 +45,7 @@ Public Class MainWindowVM
' definizione comandi
Private m_cmdAboutBox As ICommand
Private m_cmdCloseApplication As ICommand
Private m_cmdEscape As ICommand
#Region "CONSTRUCTOR"
@@ -136,6 +137,27 @@ Public Class MainWindowVM
#Region "COMMANDS"
#Region "Escape"
Public ReadOnly Property EscapeCommand() As ICommand
Get
If m_cmdEscape Is Nothing Then
m_cmdEscape = New Command(AddressOf Escape)
End If
Return m_cmdEscape
End Get
End Property
Public Sub Escape()
If Not IsNothing(OmagOFFICEMap.refSplitModeVM) Then
OmagOFFICEMap.refSplitModeVM.DeactiveSplitCut()
OmagOFFICEMap.refSplitModeVM.DeselectWJBridgesPart()
OmagOFFICEMap.refSplitModeVM.ResetAllMark()
End If
End Sub
#End Region
#Region "AboutBoxCommand"
' Returns a command that manage the MainWindow_Unloaded command
+2 -2
View File
@@ -69,6 +69,6 @@ Imports System.Windows
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.5.2.1")>
<Assembly: AssemblyFileVersion("2.5.2.1")>
<Assembly: AssemblyVersion("2.6.12.1")>
<Assembly: AssemblyFileVersion("2.6.12.1")>
+79
View File
@@ -0,0 +1,79 @@
<?xml version="1.0" encoding="utf-8"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<!-- Opzioni manifesto di Controllo dell'account utente
Per modificare il livello di Controllo dell'account utente di Windows, sostituire il
nodo requestedExecutionLevel con uno dei seguenti.
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />
Se si specifica l'elemento requestedExecutionLevel, la funzionalità Virtualizzazione file system e registro di sistema verrà disabilitata.
Rimuovere questo elemento se l'applicazione richiede questa virtualizzazione per
compatibilità con le versioni precedenti.
-->
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
</requestedPrivileges>
</security>
</trustInfo>
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<application>
<!-- Elenco delle versioni di Windows in cui è stata testata questa applicazione e
per cui è stato previsto l'uso. Rimuovere il commento dagli elementi appropriati per
fare in modo che Windows selezioni automaticamente l'ambiente più compatibile. -->
<!-- Windows Vista -->
<!--<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}" />-->
<!-- Windows 7 -->
<!--<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}" />-->
<!-- Windows 8 -->
<!--<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}" />-->
<!-- Windows 8.1 -->
<!--<supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}" />-->
<!-- Windows 10 -->
<!--<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}" />-->
</application>
</compatibility>
<!-- Indica che l'applicazione è sensibile ai valori DPI e non verrà scalata automaticamente da Windows in caso di
valori DPI maggiori. Le applicazioni Windows Presentation Foundation (WPF) sono automaticamente sensibili ai valori DPI, pertanto non è necessario
acconsentire esplicitamente. Con le applicazioni Windows Forms destinate a .NET Framework 4.6 per cui è stato acconsentito esplicitamente a questa impostazione,
è anche necessario impostare 'EnableWindowsFormsHighDpiAutoResizing' su 'true' nel relativo file app.config.
Imposta l'applicazione in modo riconosca i percorsi lunghi. Vedere https://docs.microsoft.com/windows/win32/fileio/maximum-file-path-limitation -->
<!--
<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings>
<dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
<longPathAware xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">true</longPathAware>
</windowsSettings>
</application>
-->
<!-- Abilita i temi per finestre di dialogo e controlli comuni di Windows (Windows XP e versioni successive) -->
<!--
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="*"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
-->
</assembly>
+109
View File
@@ -0,0 +1,109 @@
<UserControl x:Class="MyMachGroupPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Visibility="{Binding MachGroupPanel_Visibility}">
<!--<EgtFloating:EgtFloatingPanel.Resources>
<SolidColorBrush x:Key="ListBox.Static.Background" Color="#FFFFFFFF"/>
<SolidColorBrush x:Key="ListBox.Static.Border" Color="#FFABADB3"/>
<SolidColorBrush x:Key="ListBox.Disabled.Background" Color="#FFFFFFFF"/>
<SolidColorBrush x:Key="ListBox.Disabled.Border" Color="#FFD9D9D9"/>
<Style x:Key="MachiningGroupListBox" TargetType="{x:Type ListBox}">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="BorderBrush" Value="Transparent"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/>
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Hidden"/>
<Setter Property="ScrollViewer.CanContentScroll" Value="False"/>
<Setter Property="ScrollViewer.PanningMode" Value="Both"/>
<Setter Property="Stylus.IsFlicksEnabled" Value="False"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
</Style>
</EgtFloating:EgtFloatingPanel.Resources>-->
<Grid Margin="5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<ListBox ItemsSource="{Binding MachGroupList}" SelectedItem="{Binding SelectedMachGroup}"
Background="Transparent" BorderThickness="0">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel IsItemsHost="True" Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="IsEnabled" Value="{Binding IsEnabled}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBoxItem">
<ContentPresenter/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ListBox.ItemContainerStyle>
<ListBox.ItemTemplate>
<DataTemplate>
<RadioButton GroupName="MachiningGroups"
Height="30" MaxWidth="150" MinWidth="50" Padding="5,0,5,0"
ToolTip="{Binding MachGroupToolTip}"
IsChecked="{Binding Path=IsSelected,
RelativeSource={RelativeSource AncestorType={x:Type ListBoxItem}},
Mode=TwoWay}"
IsEnabled="{Binding IsEnabled, Mode=TwoWay}"
VerticalContentAlignment="Center" HorizontalContentAlignment="Center"
Style="{StaticResource ToolBar_TextToggleButton}">
<RadioButton.Content>
<TextBlock Text="{Binding Name}" Foreground="white"/>
</RadioButton.Content>
</RadioButton>
</DataTemplate>
</ListBox.ItemTemplate>
<ListBox.Template>
<ControlTemplate TargetType="{x:Type ListBox}">
<Border x:Name="Bd" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Padding="0" SnapsToDevicePixels="true">
<EgtWPFLib5:EgtScrollViewer IsPageSlideCommand="True" Focusable="false" Padding="{TemplateBinding Padding}" IsCustom="True" Orientation="Horizontal" RepeatButtonDimension="20">
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</EgtWPFLib5:EgtScrollViewer>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Background" TargetName="Bd" Value="DeepPink"/>
<Setter Property="BorderBrush" TargetName="Bd" Value="LightPink"/>
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsGrouping" Value="true"/>
<!--<Condition Property="VirtualizingPanel.IsVirtualizingWhenGrouping" Value="false"/>-->
</MultiTrigger.Conditions>
<Setter Property="ScrollViewer.CanContentScroll" Value="false"/>
</MultiTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</ListBox.Template>
</ListBox>
<Button Content="+" Height="20" Width="20" VerticalAlignment="Center" Focusable="False"
Background="{StaticResource Omag_Black}"
Foreground="{StaticResource Omag_White}"
Padding="0,0,0,5"
Margin="3,0,5,0" Command="{Binding AddMachGroupCommand}" Grid.Column="1"
IsEnabled="{Binding IsEnabledAddRemove}"/>
<Button Content="-" Height="20" Width="20" VerticalAlignment="Center" Focusable="False"
Background="{StaticResource Omag_Black}"
Foreground="{StaticResource Omag_White}"
Padding="0,0,0,5"
Margin="0,0,5,0" Command="{Binding RemoveMachGroupCommand}" Grid.Column="2"
IsEnabled="{Binding IsEnabledAddRemove}"/>
</Grid>
</UserControl>
@@ -0,0 +1,3 @@
Public Class MyMachGroupPanelV
End Class
+9 -4
View File
@@ -189,6 +189,10 @@ Public Class MyMachGroupPanelVM
End If
' Verifico che gli utensili delle lavorazioni correnti siano attrezzati (necessario perchè potrei aver cambiato gli utensili delle lavorazioni)
' e che le lavorazioni correnti siano compatibili con materiale e spessore
' Inizializzo l'elenco delle lavorazioni correnti
Dim CurrMachining As New CurrMachWindowVM
' Lama
Dim bOkCurrSawing As Boolean = True
Dim bOkCurrWaterjetting As Boolean = True
@@ -229,23 +233,24 @@ Public Class MyMachGroupPanelVM
Else
bOkCurrWaterjetting = False
End If
' Imposto il colore del pulsante SetUp
If Not bOkSetUp Then
OmagOFFICEMap.refMachinePanelVM.SetUp_Background = Brushes.Red
Else
OmagOFFICEMap.refMachinePanelVM.SetUp_Background = DirectCast(New BrushConverter().ConvertFrom("#FFDDDDDD"), SolidColorBrush)
OmagOFFICEMap.refMachinePanelVM.SetUp_Background = DirectCast(New BrushConverter().ConvertFrom("#1C1D22"), SolidColorBrush)
End If
' Imposto il colore di sfondo del pulsante SettingMachinig
If Not bOkMatThick Or Not bOkCurrSawing Then
If Not bOkMatThick Or Not bOkCurrWaterjetting Then
OmagOFFICEMap.refOptionPanelVM.RawPart_Background = Brushes.Red
OmagOFFICEMap.refRawPartTabVM.CurrMach_Background = Brushes.Red
Else
OmagOFFICEMap.refOptionPanelVM.RawPart_Background = OmagOFFICEDictionary.TabControl_Header_Background
OmagOFFICEMap.refRawPartTabVM.CurrMach_Background = DirectCast(New BrushConverter().ConvertFrom("#FFDDDDDD"), SolidColorBrush)
OmagOFFICEMap.refRawPartTabVM.CurrMach_Background = DirectCast(New BrushConverter().ConvertFrom("#1C1D22"), SolidColorBrush)
End If
Else
OmagOFFICEMap.refOptionPanelVM.RawPart_Background = OmagOFFICEDictionary.TabControl_Header_Background
OmagOFFICEMap.refRawPartTabVM.CurrMach_Background = DirectCast(New BrushConverter().ConvertFrom("#FFDDDDDD"), SolidColorBrush)
OmagOFFICEMap.refRawPartTabVM.CurrMach_Background = DirectCast(New BrushConverter().ConvertFrom("#1C1D22"), SolidColorBrush)
End If
' Se non esiste il grezzo vado subito alla sua definizione
+172 -137
View File
@@ -12,164 +12,199 @@
CloseCommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
Height="900">
<EgtWPFLib5:EgtCustomWindow.InputBindings>
<KeyBinding Key="Escape" Command="{Binding ReloadMachiningCommand}"
<EgtWPFLib5:EgtCustomWindow.InputBindings>
<KeyBinding Key="Escape" Command="{Binding ReloadMachiningCommand}"
CommandParameter="{Binding Path=SelectedItem,ElementName=MachiningsTreeView}"/>
</EgtWPFLib5:EgtCustomWindow.InputBindings>
</EgtWPFLib5:EgtCustomWindow.InputBindings>
<EgtWPFLib5:EgtCustomWindow.Resources>
<EgtWPFLib5:MachiningParamVisibilityConverter x:Key="MachiningParamVisibilityConverter"/>
<EgtWPFLib5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<EgtWPFLib5:ErrorVisibilityConverter x:Key="ErrorVisibilityConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLap">47</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SelectedSolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="StepBack">55</sys:Int32>
<sys:Int32 x:Key="StepSideAngBack">56</sys:Int32>
<sys:Int32 x:Key="BackFeed">57</sys:Int32>
<sys:Int32 x:Key="StepSideAng">58</sys:Int32>
<sys:Int32 x:Key="ForwardAngle">59</sys:Int32>
<sys:Int32 x:Key="Probing">60</sys:Int32>
<sys:Int32 x:Key="ProbingMinDist">61</sys:Int32>
<sys:Int32 x:Key="ProbingMaxDist">62</sys:Int32>
<sys:Int32 x:Key="ExtCornType">63</sys:Int32>
<sys:Int32 x:Key="IntCornType">64</sys:Int32>
<sys:Int32 x:Key="CornSlowLen">65</sys:Int32>
<sys:Int32 x:Key="CornSlowPerc">66</sys:Int32>
<sys:Int32 x:Key="LiHole">67</sys:Int32>
<sys:Int32 x:Key="LiHoleRad">68</sys:Int32>
<sys:Int32 x:Key="LpTurns">69</sys:Int32>
<sys:Int32 x:Key="HpTurns">70</sys:Int32>
<sys:Int32 x:Key="ThicknessFeed">71</sys:Int32>
</EgtWPFLib5:EgtCustomWindow.Resources>
<EgtWPFLib5:EgtCustomWindow.Resources>
<!--<EgtWPFLib5:MachiningParamVisibilityConverter x:Key="MachiningParamVisibilityConverter"/>-->
<EgtWPFLib5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<EgtWPFLib5:ErrorVisibilityConverter x:Key="ErrorVisibilityConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLap">47</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SelectedSolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="StepBack">55</sys:Int32>
<sys:Int32 x:Key="StepSideAngBack">56</sys:Int32>
<sys:Int32 x:Key="BackFeed">57</sys:Int32>
<sys:Int32 x:Key="StepSideAng">58</sys:Int32>
<sys:Int32 x:Key="ForwardAngle">59</sys:Int32>
<sys:Int32 x:Key="Probing">60</sys:Int32>
<sys:Int32 x:Key="ProbingMinDist">61</sys:Int32>
<sys:Int32 x:Key="ProbingMaxDist">62</sys:Int32>
<sys:Int32 x:Key="ExtCornType">63</sys:Int32>
<sys:Int32 x:Key="IntCornType">64</sys:Int32>
<sys:Int32 x:Key="CornSlowLen">65</sys:Int32>
<sys:Int32 x:Key="CornSlowPerc">66</sys:Int32>
<sys:Int32 x:Key="LiHole">67</sys:Int32>
<sys:Int32 x:Key="LiHoleRad">68</sys:Int32>
<sys:Int32 x:Key="LpTurns">69</sys:Int32>
<sys:Int32 x:Key="HpTurns">70</sys:Int32>
<sys:Int32 x:Key="ThicknessFeed">71</sys:Int32>
<SolidColorBrush x:Key="ListBorder" Color="#828790"/>
</EgtWPFLib5:EgtCustomWindow.Resources>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.75*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid Background="Transparent">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.95*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="11*"/>
</Grid.RowDefinitions>
<Grid Background="Transparent">
<Grid.RowDefinitions>
<RowDefinition Height="0.75*"/>
<RowDefinition Height="12*"/>
</Grid.RowDefinitions>
<UniformGrid Grid.Row="0" Columns="3">
<Button Content="New" Command="{Binding NewCommand}"
<UniformGrid Grid.Row="0" Columns="8">
<Button ToolTip="New" Command="{Binding NewCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledNewBtn, Mode=OneWay}"/>
<Button Content="Save" Command="{Binding SaveCommand}"
IsEnabled="{Binding IsEnabledNewBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/New.png" Stretch="Uniform"/>
</Button>
<Button ToolTip="Save" Command="{Binding SaveCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledSaveBtn, Mode=OneWay}"/>
<Button Content="Remove" Command="{Binding RemoveCommand}"
IsEnabled="{Binding IsEnabledSaveBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Save.png" Stretch="Uniform"/>
</Button>
<Button ToolTip="Remove" Command="{Binding RemoveCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledRemoveBtn, Mode=OneWay}"/>
</UniformGrid>
IsEnabled="{Binding IsEnabledRemoveBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Remove.png" Stretch="Uniform"/>
</Button>
<TreeView Name="MachiningsTreeView" Grid.Row="1"
ItemsSource="{Binding Path=MachiningsList}">
<Button ToolTip="Import" Command="{Binding ImportCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledNewBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Import.png" Stretch="Uniform"/>
</Button>
<Button ToolTip="Export" Command="{Binding ExportCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledSaveBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Export_1.png" Stretch="Uniform"/>
</Button>
<Button ToolTip="Reset" Command="{Binding ReloadMachiningCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledRemoveBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Reset.png" Stretch="Uniform"/>
</Button>
</UniformGrid>
<TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}">
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
<Setter Property="IsEnabled" Value="{Binding IsEnabled, Mode=TwoWay}" />
</Style>
</TreeView.ItemContainerStyle>
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type EgtWPFLib5:FamilyMachiningTreeViewItem}" ItemsSource="{Binding Items}">
<TreeView Name="MachiningsTreeView" Grid.Row="1"
Background="Transparent" BorderThickness="0"
ItemsSource="{Binding Path=MachiningsList}">
<TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}" BasedOn="{StaticResource Db_TreeViewItem}">
<Setter Property="FontSize" Value="10" />
<Setter Property="Foreground" Value="{StaticResource Omag_White}" />
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
<Setter Property="IsEnabled" Value="{Binding IsEnabled, Mode=TwoWay}" />
</Style>
</TreeView.ItemContainerStyle>
<Grid >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type EgtWPFLib5:FamilyMachiningTreeViewItem}" ItemsSource="{Binding Items}">
<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Width="32" Margin="0,8,6,4" />
<TextBlock Grid.Column="1" Text="{Binding Name}" FontSize="15" Margin="10" />
<Ellipse Grid.Column="2" Height="10" Width="10" Fill="{Binding FamilyColor}" />
<Grid Background="Transparent">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
</Grid>
<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Width="32" Margin="0" />
<TextBlock Grid.Column="1" Text="{Binding Name}" FontSize="15" Margin="5,0,10,0" VerticalAlignment="Center" HorizontalAlignment="left" />
<Ellipse Grid.Column="2" Height="10" Width="10" Fill="{Binding FamilyColor}" />
</HierarchicalDataTemplate>
</Grid>
<DataTemplate DataType="{x:Type EgtWPFLib5:MachiningTreeViewItem}">
<Grid >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
</HierarchicalDataTemplate>
<!--<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Margin="0,8,6,4" />-->
<TextBlock Grid.Column="1" Text="{Binding NamePar}" Height="18" FontSize="15" Margin="10"/>
<Ellipse Grid.Column="2" Height="10" Width="10" Fill="{Binding ToolColor}" />
<DataTemplate DataType="{x:Type EgtWPFLib5:MachiningTreeViewItem}">
<Grid Background="Transparent">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
</Grid>
</DataTemplate>
</TreeView.Resources>
<!--<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Margin="0,8,6,4" />-->
<TextBlock Grid.Column="1" Text="{Binding NamePar}" Height="21" FontSize="13" Margin="30,0,10,0"
VerticalAlignment="Center" HorizontalAlignment="left"/>
<Ellipse Grid.Column="2" Height="10" Width="10" Fill="{Binding ToolColor}" />
</TreeView>
</Grid>
</Grid>
</DataTemplate>
</TreeView.Resources>
<ContentControl Content="{Binding ParamPageV}" Grid.Column="1" Grid.ColumnSpan="2"/>
</TreeView>
</Grid>
</Grid>
<ContentControl Content="{Binding ParamPageV}" Grid.Column="1" Grid.ColumnSpan="2"/>
</Grid>
</EgtWPFLib5:EgtCustomWindow>
@@ -1,21 +1,21 @@
'Imports EgtWPFLib5
Imports EgtWPFLib5
Public Class MyMachiningDbWindowV
' Private WithEvents m_MachiningDbWindowVM As MyMachiningDbWindowVM
Private WithEvents m_MachiningDbWindowVM As EgtWPFLib5.MachiningDbWindowVM
' Sub New(Owner As Window, MachiningDbWindowVM As MyMachiningDbWindowVM)
' MyBase.New(Owner)
' ' This call is required by the designer.
' InitializeComponent()
' Me.DataContext = MachiningDbWindowVM
' ' Assegno al riferimento locale al VM il VM preso dal DataContext
' m_MachiningDbWindowVM = MachiningDbWindowVM
' End Sub
Sub New(Owner As Window, MachiningDbWindowVM As EgtWPFLib5.MachiningDbWindowVM)
MyBase.New(Owner)
' This call is required by the designer.
InitializeComponent()
Me.DataContext = MachiningDbWindowVM
' Assegno al riferimento locale al VM il VM preso dal DataContext
m_MachiningDbWindowVM = MachiningDbWindowVM
End Sub
' Private Sub CloseWindow(bDialogResult As Boolean) Handles m_MachiningDbWindowVM.m_CloseWindow
' Me.DataContext = Nothing
' Me.DialogResult = bDialogResult
' End Sub
Private Sub CloseWindow(bDialogResult As Boolean) Handles m_MachiningDbWindowVM.m_CloseWindow
Me.DataContext = Nothing
Me.DialogResult = bDialogResult
End Sub
End Class
+69 -33
View File
@@ -47,12 +47,27 @@ Public Class MySceneHostVM
' Problemi
' Se manca la chiave
If OmagOFFICEMap.refMainWindowVM.MainWindowM.nKeyLevel = -1 Or OmagOFFICEMap.refMainWindowVM.MainWindowM.nKeyLevel = -2 Then
EgtOutLog("Missing Dongle")
' Box di avviso chiave mancante : "Chiave non presente. \n Inserirla e riavviare il programma." "Errore"
Dim sText As String = EgtMsg(MSG_MISSINGKEYWD + 2) & vbCrLf & EgtMsg(MSG_MISSINGKEYWD + 3)
Dim sTitle As String = EgtMsg(MSG_MISSINGKEYWD + 1)
If Not EgtGetNetHwKey() Then
EgtOutLog("Missing Dongle")
' Box di avviso chiave mancante : "Chiave non presente. \nInserirla e riavviare il programma." "Errore"
Dim sText As String = EgtMsg(10102) & vbCrLf & EgtMsg(10103)
Dim sTitle As String = EgtMsg(10101)
MessageBox.Show(sText, sTitle, MessageBoxButton.OK, MessageBoxImage.Error)
Else
EgtOutLog("NetDongle is full")
' Box di avviso slot chiave di rete occupato : "Chiave di Rete completamente occupata. \n Uscire dal programma su un altro PC." "Errore"
Dim sText As String = EgtMsg(10110) & vbCrLf & EgtMsg(10111)
Dim sTitle As String = EgtMsg(10101)
MessageBox.Show(sText, sTitle, MessageBoxButton.OK, MessageBoxImage.Error)
End If
' Se altrimenti manca il collegamento con la chiave di rete
ElseIf OmagOFFICEMap.refMainWindowVM.MainWindowM.nKeyLevel = -9 Then
EgtOutLog("Missing Link with Net Dongle")
' Box di avviso chiave mancante : "Collegamento con la Chiave di rete non riuscito. \n Verificare la connessione." "Errore"
Dim sText As String = EgtMsg(10108) & vbCrLf & EgtMsg(10109)
Dim sTitle As String = EgtMsg(10101)
MessageBox.Show(sText, sTitle, MessageBoxButton.OK, MessageBoxImage.Error)
' Altrimenti manca la licenza
' Altrimenti manca la licenza
Else
EgtOutLog("Problems with Licence")
' Box di avviso licenza con problemi : "Programma senza licenza. \n Caricala e riavvia il programma." "Errore"
@@ -87,12 +102,14 @@ Public Class MySceneHostVM
Public Overrides Sub InitSceneEvents()
AddHandler MainScene.OnMouseDownScene, AddressOf OnMouseDownScene
'AddHandler OnMouseDownScene_DoubleClick_1, AddressOf OnMouseDownScene_DoubleClick
AddHandler MainScene.OnMouseMoveScene, AddressOf OnMouseMoveScene
AddHandler MainScene.OnMouseUpScene, AddressOf OnMouseUpScene
AddHandler MainScene.KeyDown, AddressOf OnKeyDownScene
AddHandler MainScene.OnCursorPos, AddressOf OnCursorPos
AddHandler MainScene.OnShowDistance, AddressOf OnShowDistance
AddHandler MainScene.OnChangedSnapPointType, AddressOf OnChangedSnapPointType
End Sub
Private Sub PreInitializeScene()
@@ -152,17 +169,19 @@ Public Class MySceneHostVM
MainScene.SetSnapPointType(SP.PT_SKETCH)
End Sub
Public Overrides Sub SaveProject()
MyBase.SaveProject()
Public Overrides Function SaveProject() As Boolean
Dim bOk As Boolean = MyBase.SaveProject()
' Imposto stato gestione mouse diretto della scena a nessuno
MainScene.SetStatusNull()
End Sub
Return bOk
End Function
Public Overrides Sub SaveAsProject()
MyBase.SaveAsProject()
Public Overrides Function SaveAsProject() As Boolean
Dim bOk As Boolean = MyBase.SaveAsProject()
' Imposto stato gestione mouse diretto della scena a nessuno
MainScene.SetStatusNull()
End Sub
Return bOk
End Function
Private Function GetMachineBaseDirs() As String
' Trasformo l'elenco dei direttori radice macchina in una stringa del tipo "..\Dir1\Example01|..\Dir2\|Example02"
@@ -183,7 +202,7 @@ Public Class MySceneHostVM
#Region "ProjectManager"
Public Overrides Sub NewProject()
Public Overrides Function NewProject() As Boolean
EgtSetCurrentContext(MainScene.GetCtx())
Dim bOk As Boolean = MainController.NewProject()
' Eventuale reset VM
@@ -191,9 +210,10 @@ Public Class MySceneHostVM
VeinMatching.Clear()
End If
MainScene.SetStatusNull()
End Sub
Return bOk
End Function
Public Overrides Sub OpenProject(sFilePath As String)
Public Overrides Function OpenProject(sFilePath As String) As Boolean
EgtSetCurrentContext(MainScene.GetCtx())
Dim bOk As Boolean = False
If String.IsNullOrEmpty(sFilePath) Then
@@ -216,33 +236,38 @@ Public Class MySceneHostVM
Dim sVmFile As String = Path.ChangeExtension(sFile, ".vme")
VeinMatching.Open(sVmFile)
End If
End Sub
Return bOk
End Function
Public Overrides Sub ExportProject()
Public Overrides Function ExportProject() As Boolean
Dim bOk As Boolean = False
EgtSetCurrentContext(MainScene.GetCtx())
' Verifico che il progetto sia salvato
If EgtGetModified() Then
MessageBox.Show(EgtMsg( 91501), "", MessageBoxButton.OK, MessageBoxImage.Exclamation)
Return
MessageBox.Show(EgtMsg(91501), "", MessageBoxButton.OK, MessageBoxImage.Exclamation)
Return bOk
End If
' Scelta del direttorio di destinazione
Dim sLastExportDir As String = String.Empty
GetMainPrivateProfileString(S_GENERAL, K_EXPORTDIR, "", sLastExportDir)
Dim DirDlg As New System.Windows.Forms.FolderBrowserDialog
DirDlg.Description = EgtMsg( 91502) ' Seleziona il direttorio di esportazione
DirDlg.Description = EgtMsg(91502) ' Seleziona il direttorio di esportazione
DirDlg.SelectedPath = sLastExportDir
If DirDlg.ShowDialog() <> Windows.Forms.DialogResult.OK Then Return
If DirDlg.ShowDialog() <> Windows.Forms.DialogResult.OK Then Return bOk
WriteMainPrivateProfileString(S_GENERAL, K_EXPORTDIR, DirDlg.SelectedPath)
' Eseguo esportazione
If ExecExport(DirDlg.SelectedPath) Then
bOk = ExecExport(DirDlg.SelectedPath)
If bOk Then
' Esportazione conclusa con successo
OmagOFFICEMap.refStatusBarVM.SetOutputMessage( EgtMsg( 91504), 5, MSG_TYPE.INFO)
OmagOFFICEMap.refStatusBarVM.SetOutputMessage(EgtMsg(91504), 5, MSG_TYPE.INFO)
bOk = True
Else
' Errore nell'esportazione
MessageBox.Show( EgtMsg( 91503), "", MessageBoxButton.OK, MessageBoxImage.Error)
MessageBox.Show(EgtMsg(91503), "", MessageBoxButton.OK, MessageBoxImage.Error)
End If
EgtSetCurrentContext(MainScene.GetCtx())
End Sub
Return bOk
End Function
Private Function ExecExport(sDirDest As String) As Boolean
' salvo il nome della macchina correntemente selezionata
@@ -388,31 +413,33 @@ Public Class MySceneHostVM
Return bOk
End Function
Public Sub DxfOutProject()
Public Function DxfOutProject() As Boolean
EgtSetCurrentContext(MainScene.GetCtx())
' Verifico che il progetto sia salvato
If EgtGetModified() Then
MessageBox.Show(EgtMsg( 91501), "", MessageBoxButton.OK, MessageBoxImage.Exclamation)
Return
MessageBox.Show(EgtMsg(91501), "", MessageBoxButton.OK, MessageBoxImage.Exclamation)
Return False
End If
' Scelta del direttorio di destinazione
Dim sLastDxfOutDir As String = String.Empty
GetMainPrivateProfileString(S_GENERAL, K_DXFOUTDIR, "", sLastDxfOutDir)
Dim DirDlg As New System.Windows.Forms.FolderBrowserDialog
DirDlg.Description = EgtMsg( 91502) ' Seleziona il direttorio di esportazione
DirDlg.Description = EgtMsg(91502) ' Seleziona il direttorio di esportazione
DirDlg.SelectedPath = sLastDxfOutDir
If DirDlg.ShowDialog() <> Windows.Forms.DialogResult.OK Then Return
If DirDlg.ShowDialog() <> Windows.Forms.DialogResult.OK Then Return False
WriteMainPrivateProfileString(S_GENERAL, K_DXFOUTDIR, DirDlg.SelectedPath)
' Eseguo esportazione
If ExecDxfOut(DirDlg.SelectedPath) Then
Dim bOk As Boolean = ExecDxfOut(DirDlg.SelectedPath)
If bOk Then
' Esportazione conclusa con successo
OmagOFFICEMap.refStatusBarVM.SetOutputMessage( EgtMsg( 91504), 5, MSG_TYPE.INFO)
OmagOFFICEMap.refStatusBarVM.SetOutputMessage(EgtMsg(91504), 5, MSG_TYPE.INFO)
Else
' Errore nell'esportazione
MessageBox.Show( EgtMsg( 91503), "", MessageBoxButton.OK, MessageBoxImage.Error)
MessageBox.Show(EgtMsg(91503), "", MessageBoxButton.OK, MessageBoxImage.Error)
End If
EgtSetCurrentContext(MainScene.GetCtx())
End Sub
Return bOk
End Function
Private Function ExecDxfOut(sDirDest As String) As Boolean
' Path completa del progetto corrente
@@ -709,6 +736,8 @@ Public Class MySceneHostVM
End Sub
Private Sub OnSavingProject(ByVal sender As Object, sFile As String)
' Salvo le info del progetto
TopCommandBarVM.SetInfoProj(sFile)
' Recupero tutti i file di texture associabili ai gruppi di lavoro del progetto
Dim sDirToSearch As String = Path.GetDirectoryName(sFile)
Dim sFileToSearch As String = Path.GetFileNameWithoutExtension(sFile) & "." & PHOTO_NAME & "*"
@@ -782,6 +811,13 @@ Public Class MySceneHostVM
Private Sub OnMouseDownScene(sender As Object, e As Windows.Forms.MouseEventArgs)
' Si può selezionare solo con il tasto sinistro e se stato NULL
If e.Button <> Windows.Forms.MouseButtons.Left Or Not MainScene.IsStatusNull() Then Return
If e.Clicks > 1 Then
Select Case OmagOFFICEMap.refOptionPanelVM.SelItem
Case OptionPanelVM.Tabs.MACHINING
OmagOFFICEMap.refMachiningTabVM.OnMouseDownScene_DoubleClick(sender, e)
Case OptionPanelVM.Tabs.SIMUL
End Select
End If
' Chiamo l'opportuno gestore
Select Case OmagOFFICEMap.refOptionPanelVM.SelItem
Case OptionPanelVM.Tabs.RAWPART
+200
View File
@@ -0,0 +1,200 @@
<EgtWPFLib5:EgtCustomWindow x:Class="MySetUpWindowV"
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:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Title="{Binding Title}"
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="False"
IsMinimizable="False" WindowStartupLocation="CenterOwner" ShowInTaskbar="False"
CloseCommand="{Binding CloseSetUpCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}"
CloseCommandParameter="{Binding Path=SelectedItem, ElementName=ToolsTreeView}"
Height="900">
<EgtWPFLib5:EgtCustomWindow.InputBindings>
<KeyBinding Key="Escape" Command="{Binding ReloadToolCommand}"
CommandParameter="{Binding Path=SelectedItem,ElementName=ToolsTreeView}"/>
</EgtWPFLib5:EgtCustomWindow.InputBindings>
<Grid Background="Transparent">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.95*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid Background="Transparent">
<Grid.RowDefinitions>
<RowDefinition Height="0.75*"/>
<RowDefinition Height="12*"/>
</Grid.RowDefinitions>
<UniformGrid Grid.Row="0" Columns="8">
<Button ToolTip="{Binding ApplyMsg}" Command="{Binding ApplyCommand}"
IsEnabled="{Binding IsEnabledApplyBtn}"
Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Export_1.png" Stretch="Uniform"/>
</Button>
<Button ToolTip="{Binding ArchiveMsg}" Command="{Binding ArchiveCommand}"
Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Insert.png" Stretch="Uniform"/>
</Button>
<Button ToolTip="{Binding RetrievesMsg}" Command="{Binding RetrievesCommand}"
CommandParameter="{Binding SelectedItem,ElementName=ToolsTreeView}"
Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Open.png" Stretch="Uniform"/>
</Button>
<Button ToolTip="{Binding AutomaticMsg}" Command="{Binding AutomaticCommand}"
CommandParameter="{Binding SelectedItem,ElementName=ToolsTreeView}"
Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Automatic.png" Stretch="Uniform"/>
</Button>
</UniformGrid>
<TreeView Name="SetUpTreeView" Grid.Row="1"
Background="Transparent" BorderThickness="0"
ItemsSource="{Binding ToolsList}">
<TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}">
<Setter Property="FontSize" Value="10" />
<Setter Property="Foreground" Value="{StaticResource Omag_White}" />
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
<Setter Property="IsEnabled" Value="{Binding IsEnabled, Mode=TwoWay}" />
<EventSetter Event="MouseDoubleClick" Handler="Tool_DoubleClick"/>
</Style>
</TreeView.ItemContainerStyle>
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type EgtWPFLib5:FamilyToolItem}"
ItemsSource="{Binding Items}">
<Grid Background="Transparent">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Width="32" Margin="0"/>
<TextBlock Grid.Column="1" Text="{Binding Name}" FontSize="15" Margin="5,0,10,0" VerticalAlignment="Center" HorizontalAlignment="left" />
<Ellipse Grid.Column="2" Height="10" Width="10" Fill="{Binding FamilyColor}"/>
</Grid>
</HierarchicalDataTemplate>
<DataTemplate DataType="{x:Type EgtWPFLib5:ToolItem}">
<Grid Background="Transparent">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<!--<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Margin="0,8,6,4" />-->
<TextBlock Grid.Column="1" Text="{Binding Name}" Height="21" FontSize="13" Margin="30,0,10,0"
VerticalAlignment="Center" HorizontalAlignment="left"/>
<Ellipse Grid.Column="2" Height="10" Width="10" Fill="{Binding ToolColor}" />
</Grid>
</DataTemplate>
</TreeView.Resources>
</TreeView>
</Grid>
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Image Source="{Binding SetUpImage}" MaxWidth="300"/>
<!--Style="{DynamicResource HorizontalScrollViewerItemsControlStyle}"-->
<ItemsControl Grid.Column="1" ItemsSource="{Binding PositionGroupList}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<ItemsControl Grid.Column="1" ItemsSource="{Binding PositionList}" Margin="0,0,20,0">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel Orientation="Vertical"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid Margin="5,5,15,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding TcPos}"
Foreground="White"/>
<ItemsControl Grid.Column="1" ItemsSource="{Binding ExitToolAssociationList}"
HorizontalAlignment="Left">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<!--<WrapPanel Orientation="Horizontal" MaxWidth="200"/>-->
<UniformGrid Columns="1"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid Margin="10,0,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<!--Style="{DynamicResource SetUpToggleButton}"-->
<ToggleButton Content="{Binding ExitPar}" Name="ExitBtn"
CommandParameter="{Binding SelectedItem,ElementName=SetUpTreeView}"
IsChecked="{Binding IsOccupied}" Height="25" Width="25" Margin="0,0,5,0"
Command="{Binding SetUpToolCommand}"
IsEnabled="{Binding IsEnabledPos}"
Background="{Binding ExitBtnBackgroundCol}"
Foreground="Black"/>
<!--BorderBrush="{DynamicResource EgaltechBlue1}"-->
<Border x:Name="ToolBorder" Grid.Column="1"
BorderThickness="1" ToolTip="{Binding ToolTipMsg}">
<Border.Style>
<Style TargetType="{x:Type Border}">
<Setter Property="Visibility" Value="Hidden"/>
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=ExitBtn, Path=IsChecked}" Value="True">
<Setter Property="Visibility" Value="Visible"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Border.Style>
<TextBlock Text="{Binding Tool.Name}" Margin="3"
Foreground="White"/>
</Border>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</Grid>
</Grid>
</EgtWPFLib5:EgtCustomWindow>
+29
View File
@@ -0,0 +1,29 @@
Imports EgtWPFLib5
Public Class MySetUpWindowV
Private WithEvents m_SetUpWindowVM As SetUpWindowVM
Sub New(Owner As Window, SetUpWindowVM As SetUpWindowVM)
MyBase.New(Owner)
' This call is required by the designer.
InitializeComponent()
Me.DataContext = SetUpWindowVM
' Assegno al riferimento locale al VM il VM preso dal DataContext
m_SetUpWindowVM = SetUpWindowVM
End Sub
Private Sub Tool_DoubleClick(sender As Object, e As MouseButtonEventArgs)
Dim TreeViewItem As TreeViewItem = DirectCast(sender, TreeViewItem)
If TypeOf TreeViewItem.DataContext Is ToolItem Then
Dim SelTool As ToolItem = DirectCast(TreeViewItem.DataContext, ToolItem)
m_SetUpWindowVM.ToolDoubleClick(SelTool)
e.Handled = True
End If
End Sub
Private Sub CloseWindow(bDialogResult As Boolean) Handles m_SetUpWindowVM.m_CloseWindow
Me.DialogResult = bDialogResult
End Sub
End Class
File diff suppressed because it is too large Load Diff
+30 -1
View File
@@ -1,3 +1,32 @@
Public Class MyToolDbWindowV
Imports EgtUILib
Public Class MyToolDbWindowV
Private WithEvents m_ToolDbWindowVM As EgtWPFLib5.ToolDbWindowVM
Sub New(Owner As Window, ToolDbWindowVM As EgtWPFLib5.ToolDbWindowVM)
MyBase.New(Owner)
' This call is required by the designer.
InitializeComponent()
Me.DataContext = ToolDbWindowVM
' Assegno al riferimento locale al VM il VM preso dal DataContext
m_ToolDbWindowVM = ToolDbWindowVM
End Sub
Private Sub ToolsDbView_Closed(bDialogResult As Boolean) Handles m_ToolDbWindowVM.m_CloseWindow
' Imposto contesto generale
EgtSetCurrentContext(EgtWPFLib5.ToolDbWindowVM.ProjectSceneContext)
' Cancello contesto di visualizzazione utensile
EgtDeleteContext(EgtWPFLib5.ToolDbWindowVM.ToolDbSceneContext)
'ToolDbWindowVM.m_ToolDbSceneContext = 0
Me.Close()
End Sub
Private Sub ToolsDbView_Closing(sender As Object, e As ComponentModel.CancelEventArgs) Handles Me.Closing
If (Keyboard.Modifiers And ModifierKeys.Alt) = ModifierKeys.Alt OrElse Keyboard.IsKeyDown(Key.F4) Then
e.Cancel = True
Return
End If
End Sub
End Class
+73
View File
@@ -0,0 +1,73 @@
<Window x:Class="PairInputDataVeinMatch"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:OmagOFFICE"
mc:Ignorable="d"
ShowInTaskbar="False"
WindowStyle="None"
Title="PairInputDataVeinMatch" Height="auto" Width="300"
Background="{StaticResource Omag_DarkGray}">
<StackPanel Name ="WinPair" Orientation="Vertical" VerticalAlignment="Center">
<TextBlock Name="TopBar"
Text="Seleziona dal primo Part il lato che vuoi accoppiare" HorizontalAlignment="Center"
Width="Auto"
TextWrapping="Wrap"
Margin="0,0,0,10"
FontSize="20"/>
<ComboBox Name="PairOption"
Style="{StaticResource Raw_ComboBox}"
Margin="1,5,1,0"
IsEnabled="True"
Visibility="Collapsed"/>
<!--<CheckBox Name="InvertOption" Margin="1,5,1,0"
Foreground="{DynamicResource Omag_White}"
IsEnabled="True"
Visibility="Collapsed">Invert</CheckBox>-->
<CheckBox Name="FlipOption1" Margin="1,5,1,0"
Foreground="{DynamicResource Omag_White}"
IsEnabled="True"
Visibility="Collapsed">Flip ∥</CheckBox>
<CheckBox Name="FlipOption2" Margin="1,5,1,0"
Foreground="{DynamicResource Omag_White}"
IsEnabled="True"
Visibility="Collapsed">Flip ⟂</CheckBox>
<!--<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<TextBlock Name="Testo" Height="26"
Foreground="{DynamicResource Omag_White}"
Background="{DynamicResource Omag_Black}"
Margin="1,5,1,0"
Text="Angolo"
TextAlignment="Center"
Grid.Column="0"
IsEnabled="True"/>
<TextBox Name="RotInputData" Height="26"
Foreground="{DynamicResource Omag_White}"
Background="{DynamicResource Omag_Black}"
Margin="1,5,1,0"
Grid.Column="1"
Text="0"
HorizontalContentAlignment="Right"
VerticalContentAlignment="Center"
IsEnabled="False"/>
</Grid>-->
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<Button Name="Conferma"
Grid.Column="0"
Content="Conferma"/>
<Button Name="Annulla"
Grid.Column="1"
Content="Annulla"/>
</Grid>
</StackPanel>
</Window>
@@ -0,0 +1,62 @@
Imports EgtUILib.EgtInterface
Public Class PairInputDataVeinMatch
Private Ref As VeinMatchingWindow
Public Sub New(ByVal MVD As Window)
Owner = MVD
Ref = DirectCast(MVD, VeinMatchingWindow)
' La chiamata è richiesta dalla finestra di progettazione.
InitializeComponent()
PairOption.ItemsSource = New List(Of String)({"Start-Start", "Start-End", "End-Start", "End-End", "Middle-Middle"})
PairOption.SelectedIndex = 1
End Sub
Public Sub ConfirmBtn_click() Handles Conferma.Click
OmagOFFICEMap.refVeinMatchingWindow.bInputDone = True
OmagOFFICEMap.refVeinMatchingWindow.TgBtn_Pair.IsChecked = False
Me.Close()
End Sub
Public Sub CancelBtn_click() Handles Annulla.Click
OmagOFFICEMap.refVeinMatchingWindow.bInputDone = False
OmagOFFICEMap.refVeinMatchingWindow.ResetPairing()
OmagOFFICEMap.refVeinMatchingWindow.TgBtn_Pair.IsChecked = False
Me.Close()
End Sub
Private Sub PairOption_Changed() Handles PairOption.SelectionChanged
OmagOFFICEMap.refVeinMatchingWindow.PairOption_Changed()
End Sub
'Private Sub InvertOption_Changed() Handles InvertOption.Click
' OmagOFFICEMap.refVeinMatchingWindow.InvertOption_Changed()
'End Sub
Private Sub FlipParallel_Changed() Handles FlipOption1.Click
OmagOFFICEMap.refVeinMatchingWindow.InvertOption_Changed()
End Sub
Private Sub FlipPerpendicular_Changed() Handles FlipOption2.Click
OmagOFFICEMap.refVeinMatchingWindow.FlipPerpendicular_Changed()
End Sub
Private m_MouseLeftPressed As Boolean = False
' qui dovrebbe funzionare quando entrambe le condizioni sono attive, non solo
Private Sub TopCommandBar_pressed() Handles TopBar.MouseLeftButtonDown
m_MouseLeftPressed = True
End Sub
Private Sub TopCommandBar_released() Handles TopBar.MouseLeftButtonUp
m_MouseLeftPressed = False
End Sub
Private Sub TopCommandBar_Drag() Handles TopBar.MouseMove
If m_MouseLeftPressed Then
Try
Me.DragMove()
Catch e As Exception
End Try
m_MouseLeftPressed = False ' non si sa perché, ma è l'UNICO modo con cui funziona
End If
End Sub
End Class
@@ -0,0 +1,57 @@
<Window x:Class="RotationInputDataVeinMatch"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:OmagOFFICE"
mc:Ignorable="d"
ShowInTaskbar="False"
WindowStyle="None"
Title="InputDataVeinMatch" Height="100" Width="200"
Background="{StaticResource Omag_DarkGray}">
<!--<local:RotateUC></local:RotateUC>-->
<!--<UserControl Name="MyUserControl" Content="{Binding ControlUC}"></UserControl>-->
<StackPanel Name ="WinRotate" Orientation="Vertical" VerticalAlignment="Center">
<Label Name="TopBar"
Content="Seleziona l'asse di rotazione" HorizontalAlignment="Center"
Width="Auto"/>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<TextBlock Name="Testo" Height="26"
Foreground="{DynamicResource Omag_White}"
Background="{DynamicResource Omag_Black}"
Margin="1,5,1,0"
Text="Angolo"
TextAlignment="Center"
Grid.Column="0"
IsEnabled="True"/>
<TextBox Name="RotInputData" Height="26"
Foreground="{DynamicResource Omag_White}"
Background="{DynamicResource Omag_Black}"
Margin="1,5,1,0"
Grid.Column="1"
Text="0"
HorizontalContentAlignment="Right"
VerticalContentAlignment="Center"
IsEnabled="False"/>
</Grid>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<Button Name="Conferma"
Grid.Column="0"
Content="Conferma"/>
<Button Name="Annulla"
Grid.Column="1"
Content="Annulla"/>
</Grid>
</StackPanel>
</Window>
@@ -0,0 +1,73 @@
Imports System.IO
Imports System.Windows.Interop
Imports System.Collections.ObjectModel
Imports System.Windows.Forms
Imports OmagOFFICE.VeinMatchingWindow
Imports MS.Internal
Public Class RotationInputDataVeinMatch
Private Ref As VeinMatchingWindow
Public Sub New(ByVal MVD As Window)
Owner = MVD
Ref = DirectCast(MVD, VeinMatchingWindow)
' La chiamata è richiesta dalla finestra di progettazione.
InitializeComponent()
'' Aggiungere le eventuali istruzioni di inizializzazione dopo la chiamata a InitializeComponent().
'AddHandler Ref.eAxisSelected, AddressOf MainWindow_MyVariableChanged
End Sub
'' Subscribe to the event
'Private Sub MainWindow_MyVariableChanged(sender As Object, e As EventHandler(Of AxisSelectedEventArgs))
' ' Call a method in the user control
' MyUserControl.HandleMyVariableChanged(e.newValue)
'End Sub
'Public Sub Key_Press(sender As Object, e As System.Windows.Forms.KeyPressEventHandler) Handles Me.KeyDown
' 'If e.KeyChar = ChrW(System.Windows.Forms.Keys.Escape) Then
' ' Dim a As Integer = 10
' 'End If
'End Sub
Public Sub TextValueChanged() Handles RotInputData.TextChanged
OmagOFFICEMap.refVeinMatchingWindow.sInputAng = RotInputData.Text
OmagOFFICEMap.refVeinMatchingWindow.AngText_Changed()
End Sub
Public Sub ConfirmBtn_click() Handles Conferma.Click
OmagOFFICEMap.refVeinMatchingWindow.bInputDone = True
OmagOFFICEMap.refVeinMatchingWindow.TgBtn_Rotation.IsChecked = False
Me.Close()
End Sub
Public Sub CancelBtn_click() Handles Annulla.Click
OmagOFFICEMap.refVeinMatchingWindow.sInputAng = ""
OmagOFFICEMap.refVeinMatchingWindow.bInputDone = False
OmagOFFICEMap.refVeinMatchingWindow.ResetRotation(True, True)
OmagOFFICEMap.refVeinMatchingWindow.TgBtn_Rotation.IsChecked = False
OmagOFFICEMap.refVeinMatchingWindow.MyMsgTxBl.Text = ""
Me.Close()
End Sub
Private m_MouseLeftPressed As Boolean = False
' qui dovrebbe funzionare quando entrambe le condizioni sono attive, non solo
Private Sub TopCommandBar_pressed() Handles TopBar.MouseLeftButtonDown
m_MouseLeftPressed = True
End Sub
Private Sub TopCommandBar_released() Handles TopBar.MouseLeftButtonUp
m_MouseLeftPressed = False
End Sub
Private Sub TopCommandBar_Drag() Handles TopBar.MouseMove
If m_MouseLeftPressed Then
Try
Me.DragMove()
Catch e As Exception
End Try
m_MouseLeftPressed = False ' non si sa perché, ma è l'UNICO modo con cui funziona
End If
End Sub
End Class
@@ -0,0 +1,14 @@
Public Class RotationInputDataVeinMatchVM
'Private m_ControlUC As Control
'Public Property ControlUC As Control
' Get
' Return m_ControlUC
' End Get
' Set(value As Control)
' m_ControlUC = value
' End Set
'End Property
'Sub New(CurrentUC As Control)
' m_ControlUC = CurrentUC
'End Sub
End Class
+52
View File
@@ -0,0 +1,52 @@
<Window x:Class="SolidInputDataVeinMatch"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:OmagOFFICE"
mc:Ignorable="d"
ShowInTaskbar="False"
WindowStyle="None"
Title="InputDataVeinMatch" Height="100" Width="200"
Background="{StaticResource Omag_DarkGray}">
<StackPanel>
<Label Name="TopBar"
Content="Inserisci lo spessore dei solidi" HorizontalAlignment="Center"
Width="Auto"/>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<TextBlock Name="Testo" Height="26"
Foreground="{DynamicResource Omag_White}"
Background="{DynamicResource Omag_Black}"
Margin="1,5,1,0"
Text="Spessore"
Grid.Column="0"
IsEnabled="True"/>
<TextBox Name="InputData" Height="26"
Foreground="{DynamicResource Omag_White}"
Background="{DynamicResource Omag_Black}"
Margin="1,5,1,0"
Grid.Column="1"
Text="0"
HorizontalContentAlignment="Right"
VerticalContentAlignment="Center"
IsEnabled="True"/>
</Grid>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<Button Name="Conferma"
Grid.Column="0"
Content="Conferma"/>
<Button Name="Annulla"
Grid.Column="1"
Content="Annulla"/>
</Grid>
</StackPanel>
</Window>
@@ -0,0 +1,41 @@
Public Class SolidInputDataVeinMatch
Private m_Ref As Window
Sub New(RefWindow As Window)
m_Ref = RefWindow
' La chiamata è richiesta dalla finestra di progettazione.
InitializeComponent()
' Aggiungere le eventuali istruzioni di inizializzazione dopo la chiamata a InitializeComponent().
End Sub
Public Sub ConfirmBtn_click() Handles Conferma.Click
OmagOFFICEMap.refVeinMatchingWindow.sInputThick = InputData.Text
OmagOFFICEMap.refVeinMatchingWindow.bInputDone = True
Me.Close()
End Sub
Public Sub CancelBtn_click() Handles Annulla.Click
OmagOFFICEMap.refVeinMatchingWindow.sInputThick = ""
OmagOFFICEMap.refVeinMatchingWindow.bInputDone = False
Me.Close()
End Sub
Private m_MouseLeftPressed As Boolean = False
' qui dovrebbe funzionare quando entrambe le condizioni sono attive, non solo
Private Sub TopCommandBar_pressed() Handles TopBar.MouseLeftButtonDown
m_MouseLeftPressed = True
End Sub
Private Sub TopCommandBar_released() Handles TopBar.MouseLeftButtonUp
m_MouseLeftPressed = False
End Sub
Private Sub TopCommandBar_Drag() Handles TopBar.MouseMove
If m_MouseLeftPressed Then
Try
Me.DragMove()
Catch e As Exception
End Try
m_MouseLeftPressed = False ' non si sa perché, ma è l'UNICO modo con cui funziona
End If
End Sub
End Class
+11
View File
@@ -0,0 +1,11 @@
<DockPanel x:Class="TopBarVeinMatch"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >
<Button Name="Riduci"
DockPanel.Dock="Right"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="0,0,0,0"
ToolTip="Crea solido del part selezionato">
<Image Source="/Resources/VeinMatchNewIcon/cube.png" Stretch="Uniform"/>
</Button>
</DockPanel>
+12
View File
@@ -0,0 +1,12 @@
Public Class TopBarVeinMatch
Public Sub RiduciBtn_click() Handles Riduci.Click
OmagOFFICEMap.refVeinMatchPanelVM.SetVeinMatchIsChecked(False)
' chiudo anche i popup del TreeView
'ClosePopUps()
End Sub
'Public Sub ClosePopUps()
' Popup_LeftPanel.IsOpen = False
' TreeViewWnd.RiduciInfo()
'End Sub
End Class
+54
View File
@@ -0,0 +1,54 @@
<UserControl x:Class="VeinMatchingInfo"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:OmagOFFICE"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800">
<!--<Grid>
<TextBlock x:Name="InfoPart" Text="La mia prima volta"/>
</Grid>-->
<Grid>
<DataGrid x:Name ="InfoGrid"
Background="{DynamicResource Omag_Black}"
Foreground="{DynamicResource Omag_Black}" ColumnWidth="*" HeadersVisibility = "Column"
HorizontalScrollBarVisibility="Hidden"
BorderThickness="0">
<DataGrid.Resources>
<Style TargetType="{x:Type DataGridColumnHeader}" BasedOn="{StaticResource {x:Type DataGridColumnHeader}}">
<Setter Property="Background" Value="{StaticResource Omag_Black}"/>
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
<Setter Property="BorderBrush" Value="{StaticResource Omag_Yellow}"/>
<Setter Property="BorderThickness" Value="0.75"/>
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="Margin" Value="0"/>
<Setter Property="Opacity" Value="1"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="HorizontalContentAlignment" Value="Center"/>
<Setter Property="FontSize" Value="15"/>
</Style>
<Style TargetType="{x:Type DataGridRow}">
<Setter Property="Background" Value="{StaticResource Omag_Black}"/>
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
<Setter Property="BorderBrush" Value="{StaticResource Omag_Yellow}"/>
<Setter Property="BorderThickness" Value="0.75"/>
</Style>
<Style TargetType="{x:Type DataGridCell}">
<Setter Property="BorderBrush" Value="{StaticResource Omag_Yellow}"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="HorizontalAlignment" Value="Center"/>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="{StaticResource Omag_DarkGray}"/>
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
<Setter Property="BorderBrush" Value="{StaticResource Omag_DarkGray}"/>
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.Resources>
</DataGrid>
</Grid>
</UserControl>
+79
View File
@@ -0,0 +1,79 @@
Imports System.Collections.ObjectModel
Imports EgtUILib
Public Class VeinMatchingInfo
Sub New()
' La chiamata è richiesta dalla finestra di progettazione.
InitializeComponent()
' Aggiungere le eventuali istruzioni di inizializzazione dopo la chiamata a InitializeComponent().
End Sub
Private m_RefVeinMatchingWindow As VeinMatchingWindow
Sub LoadRef(vmw As VeinMatchingWindow)
m_RefVeinMatchingWindow = vmw
End Sub
Sub UpdateText(nIdPart As Integer)
'InfoPart.Text = sText
Dim EdgesList As New ObservableCollection(Of Edge)
EgtSetCurrentContext(m_RefVeinMatchingWindow.VeinMatchingScene.GetCtx())
Dim nEdge As Integer = EgtGetFirstInGroup(EgtGetFirstNameInGroup(nIdPart, "OutLoop"))
Dim nSideAngVal As Integer = 0
Dim nHeelVal As Integer = 0
Dim sName As String = String.Empty
While nEdge <> GDB_ID.NULL
nSideAngVal = 0
nHeelVal = 0
EgtGetName(nEdge, sName)
EgtGetInfo(nEdge, "SideAng", nSideAngVal)
EgtGetInfo(nEdge, "Heel", nHeelVal)
Dim EdgeTemp As New Edge(sName, nSideAngVal, nHeelVal)
EdgesList.Add(EdgeTemp)
nEdge = EgtGetNext(nEdge)
End While
InfoGrid.ItemsSource = EdgesList
End Sub
End Class
Public Class Edge
Private m_EdgeNum As String = String.Empty
Public Property Edge As String
Get
Return m_EdgeNum
End Get
Set(value As String)
m_EdgeNum = value
End Set
End Property
Private m_SideAng As Integer = 0
Public Property Ang As Integer
Get
Return m_SideAng
End Get
Set(value As Integer)
m_SideAng = value
End Set
End Property
Private m_Heel As Integer = 0
Public Property Heel As Integer
Get
Return m_Heel
End Get
Set(value As Integer)
m_Heel = value
End Set
End Property
Sub New(sName As String, nAng As Integer, nHeel As Integer)
m_EdgeNum = sName
m_SideAng = nAng
m_Heel = nHeel
End Sub
End Class
+39
View File
@@ -0,0 +1,39 @@
<UserControl x:Class="VeinMatchingTree"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:OmagOFFICE="clr-namespace:OmagOFFICE"
mc:Ignorable="d"
Background="Transparent"
d:DesignHeight="450" d:DesignWidth="800">
<StackPanel Orientation="Vertical" Background="Transparent">
<TreeView x:Name="PartInScene"
BorderThickness="0"
Background="Transparent"
Foreground="{DynamicResource Omag_White}"
Margin="10"
SelectedItemChanged="OnTVSelectedItemChanged"
Focusable="False">
<TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}" BasedOn="{StaticResource TreeViewItem_Part3D}">
<Setter Property="FontSize" Value="18" />
<Setter Property="Foreground" Value="{StaticResource Omag_White}" />
<Setter Property="Background" Value="Transparent"/>
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
<Setter Property="IsEnabled" Value="{Binding IsEnabled, Mode=TwoWay}" />
</Style>
</TreeView.ItemContainerStyle>
</TreeView>
<Popup x:Name="Popup_CurrPart" PlacementTarget="{Binding ElementName=TreeViewItem_CurrPart}" Placement="Right" AllowsTransparency="True">
<!--<TextBlock x:Name="Popup_Text" Text="Placement=Left" FontSize="14" Background="LightGreen"></TextBlock>-->
<OmagOFFICE:VeinMatchingInfo x:Name="Info2PartWnd"/>
</Popup>
<TextBlock Name="Info" Text="" FontSize="18" HorizontalAlignment="Right"
Margin="0,0,10,0"
Background="Transparent"
Foreground="{StaticResource Omag_Yellow}"/>
</StackPanel>
</UserControl>
+121
View File
@@ -0,0 +1,121 @@
Imports System.IO.Ports
Imports System.Windows.Forms
Imports EgtUILib
Public Class VeinMatchingTree
Private m_RefVeinMatchingInfo As VeinMatchingInfo
Private m_RefVeinMatchingWindow As VeinMatchingWindow
Sub New()
' La chiamata è richiesta dalla finestra di progettazione.
InitializeComponent()
' Aggiungere le eventuali istruzioni di inizializzazione dopo la chiamata a InitializeComponent().
End Sub
Public Sub LoadRef(vmiRef As VeinMatchingInfo)
m_RefVeinMatchingInfo = vmiRef
End Sub
Sub LoadRef(vmwRef As VeinMatchingWindow)
m_RefVeinMatchingWindow = vmwRef
End Sub
Public Sub RiduciInfo()
Popup_CurrPart.IsOpen = False
End Sub
Public Sub AdjustInfoPosition()
' spostando l'offset e rimettendolo al valore originale il pop up viene riposizionato correttamente rispetto relativamente
' alla finestra che l'ha creato
Dim offset As Double = Popup_CurrPart.HorizontalOffset
Popup_CurrPart.HorizontalOffset = offset + 1
Popup_CurrPart.HorizontalOffset = offset
End Sub
Private Sub SetStackPanelTextFromTreeView(tItem As TreeViewItem, ByRef PartId As Integer, ByRef sNamePart As String)
If IsNothing(tItem) Then Return
Dim Pan As StackPanel = DirectCast(tItem.Header, StackPanel)
sNamePart = String.Empty
For Each PanItem In Pan.Children
If TypeOf (PanItem) Is TextBlock Then
sNamePart = DirectCast(PanItem, TextBlock).Text
Exit For
End If
Next
PartId = CInt(Val(New Text.StringBuilder((From ch In sNamePart.ToString.ToCharArray Where IsNumeric(ch)).ToArray).ToString))
End Sub
Private Sub SelectItem_Click() Handles PartInScene.SelectedItemChanged
Dim tItem As TreeViewItem = CType(PartInScene.SelectedItem, TreeViewItem)
If IsNothing(tItem) Then Return
'Dim Pan As StackPanel = DirectCast(tItem.Header, StackPanel)
'Dim sNamepart As String = String.Empty
'For Each PanItem In Pan.Children
' If TypeOf (PanItem) Is TextBlock Then
' sNamepart = DirectCast(PanItem, TextBlock).Text
' Exit For
' End If
'Next
'Dim nPartId As Integer = CInt(Val(New Text.StringBuilder((From ch In sNamepart.ToString.ToCharArray Where IsNumeric(ch)).ToArray).ToString))
Dim nPartId As Integer = -1
Dim sNamePart As String = String.Empty
SetStackPanelTextFromTreeView(tItem, nPartId, sNamePart)
Info.Text = sNamePart.ToString
m_RefVeinMatchingInfo.UpdateText(nPartId)
End Sub
Private m_InfoPart As VeinMatchingInfo
Private Sub FaiQualcosa() Handles PartInScene.MouseRightButtonUp
Dim tItem As TreeViewItem = CType(PartInScene.SelectedItem, TreeViewItem)
If IsNothing(tItem) Then Return
Dim nPartId As Integer = -1
Dim sNamePart As String = String.Empty
SetStackPanelTextFromTreeView(tItem, nPartId, sNamePart)
Popup_CurrPart.IsOpen = Not Popup_CurrPart.IsOpen
Popup_CurrPart.PlacementTarget = tItem
Popup_CurrPart.MaxWidth = 175
m_InfoPart = Info2PartWnd
m_InfoPart.LoadRef(m_RefVeinMatchingWindow)
m_InfoPart.UpdateText(nPartId)
'Popup_Text.Text = sNamePart
End Sub
Private Sub OnTVSelectedItemChanged(sender As Object, e As RoutedPropertyChangedEventArgs(Of Object))
If (Keyboard.Modifiers And ModifierKeys.Shift) > 0 Then
'C#
'MyTextBlock.Text = ( (TreeViewItem) ( (TreeView) sender ).SelectedItem ).Header.ToString()
SelectInVeinMatchScene()
End If
End Sub
Public Sub HighlightItem() Handles PartInScene.MouseDoubleClick
SelectInVeinMatchScene()
End Sub
Private Sub SelectInVeinMatchScene()
' prima deseleziono tutto
m_RefVeinMatchingWindow.DeselectAll()
'Dim nPartId As Integer = CInt(Val(New Text.StringBuilder((From ch In tItem.Header.ToString.ToCharArray Where IsNumeric(ch)).ToArray).ToString))
Dim tItem As TreeViewItem = CType(PartInScene.SelectedItem, TreeViewItem)
If IsNothing(tItem) Then Return
Dim nPartId As Integer = -1
Dim sNamePart As String = String.Empty
SetStackPanelTextFromTreeView(tItem, nPartId, sNamePart)
EgtSetCurrentContext(m_RefVeinMatchingWindow.VeinMatchingScene.GetCtx())
For Each PartSolidSel In m_RefVeinMatchingWindow.m_PartSolidList
If PartSolidSel.PartId = nPartId Then
PartSolidSel.SelectPart()
End If
Next
EgtDraw()
End Sub
End Class
+573
View File
@@ -0,0 +1,573 @@
<EgtWPFLib5:EgtCustomWindow x:Class="VeinMatchingWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:OmagOFFICE="clr-namespace:OmagOFFICE"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Background="{StaticResource Omag_DarkGray}"
Height="800" Width="500" ShowInTaskbar="False"
Initialized="Window_Initialized"
MinWidth="300" MinHeight="300"
Title="VeinMatching"
WindowStyle="None"
IsClosable="False"
IsMinimizable="False"
IsResizable="True"
Style="{DynamicResource VeinMatchStyle}">
<EgtWPFLib5:EgtCustomWindow.TitlePanel>
<OmagOFFICE:TopBarVeinMatch HorizontalAlignment="Right"/>
</EgtWPFLib5:EgtCustomWindow.TitlePanel>
<!--<Window.Resources>
<Style TargetType="{x:Type Window}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Window}">
<ContentPresenter/>
</ControlTemplate>
</Setter.Value>
</Setter>
<Setter Property="Background" Value="Transparent"></Setter>
</Style>
</Window.Resources>-->
<!--<Window.CommandBindings>
<CommandBinding Command="OmagOFFICE:MoveItCommand.MoveIt"
Executed="CommandBinding_Executed"
CanExecute="CommandBinding_CanExecute"/>
</Window.CommandBindings>-->
<DockPanel x:Name="DockPanelVeinMatching" Background="Transparent" VirtualizingStackPanel.IsVirtualizing="True">
<StackPanel Name="TopCommandBar1"
DockPanel.Dock="Top" HorizontalAlignment="Right" Orientation="Horizontal"
Background="Transparent">
<!--<Label Name ="TopCommandBar" Content="" Width="{Binding ActualWidth, ElementName=DockPanelVeinMatching}"/>-->
<!--<Button Name="Riduci"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="0,0,0,0"
ToolTip="Crea solido del part selezionato">
<Image Source="/Resources/VeinMatchNewIcon/cube.png" Stretch="Uniform"/>
</Button>-->
</StackPanel>
<TabControl DockPanel.Dock="Left"
x:Name="MyTabCtrl"
Background="Transparent"
Margin="2,0,0,0"
BorderThickness="0"
Width="125">
<TabItem Name="TabItem2"
Background="Transparent"
Foreground="{DynamicResource Omag_Yellow}"
HorizontalContentAlignment="Center"
Style="{StaticResource TabItemVeinMatch}"
Padding="0"
Margin="0,0,0,0">
<TabItem.Header>
<StackPanel Orientation="Horizontal">
<TextBlock Text="🌐"
FontSize="18"/>
</StackPanel>
</TabItem.Header>
<StackPanel Orientation="Vertical">
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="Options"
ExpandDirection="Down"
IsExpanded="False">
<StackPanel>
<ComboBox Name="OptionColor"
Style="{StaticResource Raw_ComboBox}"
Margin="1,5,1,0"/>
<ComboBox Name="SelType"
Style="{StaticResource Raw_ComboBox}"
Margin="1,5,1,0"/>
<ComboBox Name="RefType"
Style="{StaticResource Raw_ComboBox}"
Margin="1,5,1,0"/>
</StackPanel>
</Expander>
</Border>
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="RESET"
ExpandDirection="Down"
IsExpanded="False">
<UniformGrid Columns="3" Margin="2">
<Button Name="Btn01"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
Content="🚀"
ToolTip="Crea Part Solid"/>
<Button Name="Btn02"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
Content="👾"
ToolTip="Resetta Part Solid"/>
</UniformGrid>
</Expander>
</Border>
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="SOLID"
ExpandDirection="Down"
IsExpanded="True">
<StackPanel>
<Grid >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<Button Name="CreateCurrSolidBtn" Grid.Row="0" Grid.Column="0"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Crea solido del part selezionato">
<Image Source="/Resources/VeinMatchNewIcon/cube.png" Stretch="Uniform"/>
</Button>
<Button Name="CreateAllSolidsBtn" Grid.Row="0" Grid.Column="1"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Crea tutti i solidi">
<Image Source="/Resources/VeinMatchNewIcon/cubes.png" Stretch="Uniform"/>
</Button>
<Button Name="ResetAllSolidsBtn" Grid.Row="0" Grid.Column="2"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Resetta i solidi">
<Image Source="/Resources/VeinMatchNewIcon/reset cubes.png" Stretch="Uniform"/>
</Button>
<Button Name="ExplodeBtn" Grid.Row="1" Grid.Column="0"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Esplodi assemblato"
IsEnabled="True">
<Image Source="/Resources/VeinMatchNewIcon/explode.png" Stretch="Uniform"/>
</Button>
<Button Name="CollapseBtn" Grid.Row="1" Grid.Column="1"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Ricomponi assemblato"
IsEnabled="False">
<Image Source="/Resources/VeinMatchNewIcon/collapse.png" Stretch="Uniform"/>
</Button>
<Button Name="ExplodeNormalsBtn" Grid.Row="1" Grid.Column="2"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="0,5,1,0"
ToolTip="Esplodi assemblato lungo le normali"
HorizontalAlignment="Right" Width="35"
IsEnabled="True">
<Image Source="/Resources/VeinMatchNewIcon/explode_normals.png" Stretch="Uniform"/>
</Button>
</Grid>
<!--<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="1.5*"/>
</Grid.ColumnDefinitions>
<UniformGrid>
<TextBlock Name="Spessore" Height="20"
Foreground="{DynamicResource Omag_White}"
Background="Transparent"
Margin="1,5,1,0"
Text="Thick"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</UniformGrid>
<UniformGrid Columns="1" Grid.Column="1">
<TextBox Name="TB_Thick" Height="26"
Foreground="{DynamicResource Omag_White}"
Background="{DynamicResource Omag_Black}"
Margin="1,5,1,0"
Text="0"
HorizontalContentAlignment="Right"
VerticalContentAlignment="Center"
IsEnabled="True"/>
</UniformGrid>
</Grid>-->
</StackPanel>
</Expander>
</Border>
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="ROTATE"
ExpandDirection="Down"
IsExpanded="True">
<StackPanel>
<UniformGrid Columns="3">
<ToggleButton Name="TgBtn_Rotation"
Style="{StaticResource VeinMatchWindow_ToggleButton}"
Margin="1,5,1,0"
ToolTip="Attiva/Conferma Rotazione"
IsEnabled="True">
<Image Source="/Resources/VeinMatchNewIcon/rotate.png" Stretch="Uniform"/>
</ToggleButton>
<Button Name="ResetRotationBtn"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Resetta Rotazione"
IsEnabled="False">
<Image Source="/Resources/VeinMatchNewIcon/reset rotation.png" Stretch="Uniform"/>
</Button>
</UniformGrid>
<!--<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="1.5*"/>
</Grid.ColumnDefinitions>
<UniformGrid>
<TextBlock Name="Angolo" Height="20"
Foreground="{DynamicResource Omag_White}"
Background="Transparent"
Margin="1,5,1,0"
Text="Ang"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</UniformGrid>
<UniformGrid Columns="1" Grid.Column="1">
<TextBox Name="AngText" Height="26"
Foreground="{DynamicResource Omag_White}"
Background="{DynamicResource Omag_Black}"
Margin="1,5,1,0"
Text="0"
HorizontalContentAlignment="Right"
VerticalContentAlignment="Center"
IsEnabled="False"/>
</UniformGrid>
</Grid>-->
<!--<CheckBox Name="AllOption_Rotate" Margin="1,5,1,0"
Foreground="{DynamicResource Omag_White}"
IsEnabled="False">All Selected</CheckBox>-->
</StackPanel>
</Expander>
</Border>
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="PAIR"
ExpandDirection="Down"
IsExpanded="True">
<StackPanel>
<UniformGrid Columns="3">
<ToggleButton Name="TgBtn_Pair"
Style="{StaticResource VeinMatchWindow_ToggleButton}"
Margin="1,5,1,0"
ToolTip="Attiva/Conferma Accoppiamento">
<Image Source="/Resources/VeinMatchNewIcon/pair.png" Stretch="Uniform"/>
</ToggleButton>
<Button Name="ResetPairBtn"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Resetta Accoppiamento"
IsEnabled="False">
<Image Source="/Resources/VeinMatchNewIcon/reset pair.png" Stretch="Uniform"/>
</Button>
<Button Name="PairAllBtn"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Accoppiamento automatico"
IsEnabled="True">
<Image Source="/Resources/VeinMatchNewIcon/autopair.png" Stretch="Uniform"/>
</Button>
</UniformGrid>
<ComboBox Name="PairOption"
Style="{StaticResource Raw_ComboBox}"
Margin="1,5,1,0"
IsEnabled="False"
Visibility="Collapsed"/>
<CheckBox Name="InvertOption" Margin="1,5,1,0"
Foreground="{DynamicResource Omag_White}"
IsEnabled="False"
Visibility="Collapsed">Invert</CheckBox>
<CheckBox Name="FlipOption1" Margin="1,5,1,0"
Foreground="{DynamicResource Omag_White}"
IsEnabled="False"
Visibility="Collapsed">Flip ∥</CheckBox>
<CheckBox Name="FlipOption2" Margin="1,5,1,0"
Foreground="{DynamicResource Omag_White}"
IsEnabled="False"
Visibility="Collapsed">Flip ⟂</CheckBox>
</StackPanel>
</Expander>
</Border>
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="MISURA"
ExpandDirection="Down"
IsExpanded="False">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<ToggleButton Name="TgBtn_Measure"
Style="{StaticResource VeinMatchWindow_ToggleButton}"
Margin="1,5,1,0"
ToolTip="Attiva misura">
<Image Source="/Resources/VeinMatchNewIcon/ruler.png" Stretch="Uniform"/>
</ToggleButton>
<ComboBox Grid.Column="2"
Name="MeasureOption"
Style="{StaticResource Raw_ComboBox}"
Margin="1,5,1,0"
IsEnabled="False"/>
</Grid>
</Expander>
</Border>
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Foreground="{DynamicResource Omag_White}"
Header="IMPORT"
ExpandDirection="Down"
IsExpanded="False">
<Grid >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<Button Name="ImportBtn"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Importa oggetto 3D">
<Image Source="/Resources/VeinMatchNewIcon/import.png" Stretch="Uniform"/>
</Button>
</Grid>
</Expander>
</Border>
<UniformGrid Columns="3">
<ToggleButton Name="TgBtn_Inters"
Style="{StaticResource VeinMatchWindow_ToggleButton}"
Margin="1,5,1,0"
ToolTip="Impedisci intersezioni">
<Image Source="/Resources/VeinMatchNewIcon/avoid intersection.png" Stretch="Uniform"/>
</ToggleButton>
<Button Name="ResetIntersBtn"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Spegni intersezioni"
IsEnabled="False">
<Image Source="/Resources/VeinMatchNewIcon/hide intersections.png" Stretch="Uniform"/>
</Button>
<Button Name="UnpairBtn"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Disaccoppia"
IsEnabled="False">
<Image Source="/Resources/VeinMatchNewIcon/unpair.png" Stretch="Uniform"/>
</Button>
</UniformGrid>
<UniformGrid Columns="3">
<Button Name="UndoBtn"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Annulla ultima operazione"
IsEnabled="False">
<Image Source="/Resources/VeinMatchNewIcon/undo.png" Stretch="Uniform"/>
</Button>
<Button Name="RedoBtn"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Ripeti ultima operazione annullata"
IsEnabled="False">
<Image Source="/Resources/VeinMatchNewIcon/redo.png" Stretch="Uniform"/>
</Button>
</UniformGrid>
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Foreground="{DynamicResource Omag_White}"
Header="MOVE"
ExpandDirection="Down"
IsExpanded="False"
Name="MoveExpander"
IsEnabled="False">
<StackPanel>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="1.5*"/>
</Grid.ColumnDefinitions>
<UniformGrid Columns="1" Grid.Column="0" Margin="0,0,0,0">
<TextBlock Name="TextBlX" Height="20"
Foreground="{DynamicResource Omag_White}"
Background="Transparent"
Margin="1,0,1,0"
Text="X"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
<TextBlock Name="TextBlY" Height="20"
Foreground="{DynamicResource Omag_White}"
Background="Transparent"
Margin="1,0,1,0"
Text="Y"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
<TextBlock Name="TextBlZ" Height="20"
Foreground="{DynamicResource Omag_White}"
Background="Transparent"
Margin="1,0,1,0"
Text="Z"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</UniformGrid>
<UniformGrid Columns="1" Grid.Column="1">
<TextBox Name="TextX" Height="26"
Foreground="{DynamicResource Omag_White}"
Background="{DynamicResource Omag_Black}"
Margin="1,0,1,0"
Text="0"
HorizontalContentAlignment="Right"
VerticalContentAlignment="Center"/>
<TextBox Name="TextY" Height="26"
Foreground="{DynamicResource Omag_White}"
Background="{DynamicResource Omag_Black}"
Margin="1,0,1,0"
Text="0"
HorizontalContentAlignment="Right"
VerticalContentAlignment="Center"/>
<TextBox Name="TextZ" Height="26"
Foreground="{DynamicResource Omag_White}"
Background="{DynamicResource Omag_Black}"
Margin="1,0,1,0"
Text="0"
HorizontalContentAlignment="Right"
VerticalContentAlignment="Center"/>
</UniformGrid>
</Grid>
<UniformGrid Columns="3">
<Button Name="MovePreviewBtn"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Preview dello spostamento">
<Image Source="/Resources/VeinMatchNewIcon/move.png" Stretch="Uniform"/>
</Button>
<Button Name="ConfirmMoveBtn"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Conferma spostamento">
<Image Source="/Resources/VeinMatchNewIcon/confirm move.png" Stretch="Uniform"/>
</Button>
<Button Name="ResetMoveBtn"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Resetta spostamento"
IsEnabled="False">
<Image Source="/Resources/VeinMatchNewIcon/reset move.png" Stretch="Uniform"/>
</Button>
</UniformGrid>
<CheckBox Name="AllOption_Move" Margin="1,5,1,0"
Foreground="{DynamicResource Omag_White}">All Selected</CheckBox>
</StackPanel>
</Expander>
</Border>
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="SELECTION"
ExpandDirection="Down"
IsExpanded="False"
Name="SelectExpander"
IsEnabled="True">
<UniformGrid Columns="3">
<Button Name="SelectAllBtn"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Seleziona tutti i pezzi">
<Image Source="/Resources/VeinMatchNewIcon/select all.png" Stretch="Uniform"/>
</Button>
<Button Name="DeselectAllBtn"
Style="{StaticResource VeinMatchWindow_Button}"
Margin="1,5,1,0"
ToolTip="Deseleziona tutti i pezzi">
<Image Source="/Resources/VeinMatchNewIcon/deselect all.png" Stretch="Uniform"/>
</Button>
<ToggleButton Name="TgBtn_MultiSel"
Style="{StaticResource VeinMatchWindow_ToggleButton}"
Margin="1,5,1,0"
ToolTip="Attiva selezione multipla">
<Image Source="/Resources/VeinMatchNewIcon/multi sel.png" Stretch="Uniform"/>
</ToggleButton>
</UniformGrid>
</Expander>
</Border>
</StackPanel>
</TabItem>
<TabItem Name="TabItem1"
Background="Transparent"
Foreground="{DynamicResource Omag_Yellow}"
Style="{StaticResource TabItemVeinMatch}"
HorizontalContentAlignment="Center"
Margin="0,0,0,0">
<TabItem.Header>
<StackPanel Orientation="Horizontal">
<TextBlock Text="🗺" FontSize="18"/>
</StackPanel>
</TabItem.Header>
<StackPanel Orientation="Vertical" Grid.Row="0">
<ToggleButton Name="ShowTextBtn" Height="40" Width="80"
Margin="0,5,0,0"
Content="ShowText"/>
<ToggleButton Name="EditBtn" Height="40" Width="80"
Margin="0,5,0,0"
Content="Edit"/>
<ToggleButton Name="VerifyBtn" Height="40" Width="80"
Margin="0,5,0,0"
Content="Verify"/>
<ToggleButton Name="MagneticBtn" Height="40" Width="80"
Visibility="Collapsed"
Margin="0,5,0,0"
Content="Magnetic"/>
<Button Name="ExportBtn" Height="40" Width="80"
Margin="0,5,0,0"
Content="Export"/>
<Button Name="AssemblyBtn" Height="40" Width="80"
Margin="0,5,0,0"
Content="3D"/>
</StackPanel>
</TabItem>
</TabControl>
<StackPanel DockPanel.Dock="Right"
Margin="0,1,0,5"
Width="15">
<Button x:Name="ShowTreeView"
Height="15">
<Image Source="/Resources/VeinMatchNewIcon/feature-tree.png" Stretch="Uniform"/>
</Button>
<!--<OmagOFFICE:VeinMatchingTree x:Name="TreeViewWnd" Visibility="Hidden"/>-->
<OmagOFFICE:VeinMatchingInfo x:Name="InfoPartWnd" Visibility="Hidden"/>
<Popup x:Name="Popup_LeftPanel" PlacementTarget="{Binding ElementName=ShowTreeView}"
Placement="Left" AllowsTransparency="True" Focusable="False">
<OmagOFFICE:VeinMatchingTree x:Name="TreeViewWnd"/>
</Popup>
</StackPanel>
<TextBlock DockPanel.Dock="Bottom"
TextWrapping="WrapWithOverflow"
Margin="5,2,5,2"
Name="MyMsgTxBl"
Text="DEMO by Egalware ( N. and D. ) "
Foreground="{DynamicResource Omag_Yellow}"
FontSize="20"
Height="auto"/>
</DockPanel>
</EgtWPFLib5:EgtCustomWindow>
File diff suppressed because it is too large Load Diff
+285
View File
@@ -0,0 +1,285 @@
<EgtWPFLib5:EgtCustomWindow x:Class="MyWaterjetDbWindowV"
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:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Title="{Binding Title}"
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="False"
IsMinimizable="False" WindowStartupLocation="CenterOwner" ShowInTaskbar="False"
CloseCommand="{Binding CloseToolsDbCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}"
CloseCommandParameter="{Binding Path=SelectedItem, ElementName=ToolsTreeView}"
Height="900" Width="1100">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="0.75*"/>
<RowDefinition Height="11*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<Grid Grid.Row="1" Grid.RowSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="3*"/>
</Grid.ColumnDefinitions>
<ListBox x:Name="MaterialListBox"
Background="Transparent"
Foreground="{StaticResource Omag_White}"
BorderThickness="0"
ItemsSource="{Binding MaterialList}"
DisplayMemberPath="Name"
SelectedItem="{Binding SelMaterial}"
Grid.Column="0">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Opacity" Value="1"/>
</Trigger>
<Trigger Property="IsSelected" Value="false">
<Setter Property="Opacity" Value="0.6"/>
</Trigger>
</Style.Triggers>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
<ListBox x:Name="SubMaterialListBox"
Background="Transparent"
Foreground="{StaticResource Omag_White}"
BorderThickness="0"
ItemsSource="{Binding Path=SelectedItem.SubMaterialList, ElementName=MaterialListBox}"
DisplayMemberPath="Name"
SelectedItem="{Binding Path=SelectedItem.SelSubMaterial, ElementName=MaterialListBox}"
Grid.Column="1">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Opacity" Value="1"/>
</Trigger>
<Trigger Property="IsSelected" Value="false">
<Setter Property="Opacity" Value="0.6"/>
</Trigger>
</Style.Triggers>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
<DataGrid ItemsSource="{Binding Path=SelectedItem.ParamList, ElementName=SubMaterialListBox}"
SelectedItem="{Binding Path=SelectedItem.SelWjParam, ElementName=SubMaterialListBox}"
Grid.Column="2"
Background="Transparent"
BorderThickness="0"
Margin="2.5,0,2.5,0"
HeadersVisibility="Column"
AutoGenerateColumns="False">
<DataGrid.Resources>
<Style TargetType="{x:Type DataGridColumnHeader}" BasedOn="{StaticResource {x:Type DataGridColumnHeader}}">
<Setter Property="Background" Value="{StaticResource Omag_Black}"/>
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
<Setter Property="BorderBrush" Value="{StaticResource Omag_DarkGray}"/>
<Setter Property="BorderThickness" Value="0.25"/>
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="Margin" Value="0"/>
<Setter Property="Opacity" Value="0.7"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
</Style>
<Style TargetType="{x:Type DataGridRow}">
<Setter Property="Background" Value="{StaticResource Omag_Black}"/>
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
<Setter Property="BorderBrush" Value="{StaticResource Omag_DarkGray}"/>
<Setter Property="BorderThickness" Value="0.25"/>
</Style>
<Style TargetType="{x:Type DataGridCell}">
<Setter Property="BorderBrush" Value="{StaticResource Omag_DarkGray}"/>
<Setter Property="BorderThickness" Value="0.25"/>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="{StaticResource Omag_DarkGray}"/>
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
<Setter Property="BorderBrush" Value="{StaticResource Omag_DarkGray}"/>
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.Resources>
<DataGrid.Columns>
<!--Thickness-->
<DataGridTextColumn Binding="{Binding Thickness}"
Width="*">
<DataGridTextColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding DataContext.Thickness_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
</DataTemplate>
</DataGridTextColumn.HeaderTemplate>
</DataGridTextColumn>
<!--Q1-->
<DataGridTextColumn Binding="{Binding Q1}"
Width="*">
<DataGridTextColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding DataContext.Q1_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
</DataTemplate>
</DataGridTextColumn.HeaderTemplate>
</DataGridTextColumn>
<!--Q2-->
<DataGridTextColumn Binding="{Binding Q2}"
Width="*">
<DataGridTextColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding DataContext.Q2_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
</DataTemplate>
</DataGridTextColumn.HeaderTemplate>
</DataGridTextColumn>
<!--Q3-->
<DataGridTextColumn Binding="{Binding Q3}"
Width="*">
<DataGridTextColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding DataContext.Q3_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
</DataTemplate>
</DataGridTextColumn.HeaderTemplate>
</DataGridTextColumn>
<!--Q4-->
<DataGridTextColumn Binding="{Binding Q4}"
Width="*">
<DataGridTextColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding DataContext.Q4_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
</DataTemplate>
</DataGridTextColumn.HeaderTemplate>
</DataGridTextColumn>
<!--Q5-->
<DataGridTextColumn Binding="{Binding Q5}"
Width="*">
<DataGridTextColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding DataContext.Q5_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
</DataTemplate>
</DataGridTextColumn.HeaderTemplate>
</DataGridTextColumn>
<!--QExtra-->
<DataGridTextColumn Binding="{Binding QExtra}"
Width="*">
<DataGridTextColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding DataContext.QExtra_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
</DataTemplate>
</DataGridTextColumn.HeaderTemplate>
</DataGridTextColumn>
<!--AngComp-->
<DataGridTextColumn Binding="{Binding dAngComp}"
Width="*">
<DataGridTextColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding DataContext.AngComp_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
</DataTemplate>
</DataGridTextColumn.HeaderTemplate>
</DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
</Grid>
<Grid Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="3*"/>
</Grid.ColumnDefinitions>
<EgtWPFLib5:EgtTextBox Grid.Column="0" Text="{Binding sNewMaterial, UpdateSourceTrigger=PropertyChanged}" Visibility="{Binding NewMaterial_Visibility}" Height="20" Margin="10,0">
<EgtWPFLib5:EgtTextBox.InputBindings>
<KeyBinding Key="Enter" Command="{Binding DoneCommand}"/>
<KeyBinding Key="Esc" Command="{Binding CancelCommand}"/>
</EgtWPFLib5:EgtTextBox.InputBindings>
</EgtWPFLib5:EgtTextBox>
<EgtWPFLib5:EgtTextBox Grid.Column="1" Text="{Binding sNewSubMaterial, UpdateSourceTrigger=PropertyChanged}" Visibility="{Binding NewSubMaterial_Visibility}" Height="20" Margin="10,0">
<EgtWPFLib5:EgtTextBox.InputBindings>
<KeyBinding Key="Enter" Command="{Binding DoneCommand}"/>
<KeyBinding Key="Esc" Command="{Binding CancelCommand}"/>
</EgtWPFLib5:EgtTextBox.InputBindings>
</EgtWPFLib5:EgtTextBox>
<!--<Grid DockPanel.Dock="Bottom" Visibility="{Binding NewMaterial_Visibility}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="4*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<EgtWPFLib5:EgtTextBox Text="{Binding sNewMaterial}"
DockPanel.Dock="Bottom"
Margin="0,0,0,5"/>
<Button Content="{Binding OkMsg}" Grid.Column="1"
Command="{Binding DoneCommand}"
IsEnabled="{Binding EnableOkNewMat}"
Style="{StaticResource OptionPanel_TextButton}"
Margin="2.5,0,0,2.5"/>
<Button Content="{Binding CancelMsg}" Grid.Column="2"
Command="{Binding CamcelCommand}"
Style="{StaticResource OptionPanel_TextButton}"
Margin="2.5,0,0,2.5"/>
</Grid>-->
</Grid>
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="3*"/>
</Grid.ColumnDefinitions>
<UniformGrid Grid.Column="0" Columns="3" HorizontalAlignment="left">
<Button Command="{Binding NewMaterialCommand}" ToolTip="{Binding New_Msg}"
Style = "{DynamicResource WaterjetDB_Button}">
<Image Source="/Resources/TopCommandBar/New.png" Stretch="Uniform"/>
</Button>
<Button Command="{Binding ModifyMaterialCommand}" ToolTip="{Binding Modify_Msg}"
Style = "{DynamicResource WaterjetDB_Button}">
<Image Source="/Resources/TopCommandBar/Modify.png" Stretch="Uniform"/>
</Button>
<Button Command="{Binding DeleteMaterialCommand}" ToolTip="{Binding Delete_Msg}"
Style = "{DynamicResource WaterjetDB_Button}">
<Image Source="/Resources/TopCommandBar/Remove.png" Stretch="Uniform"/>
</Button>
</UniformGrid>
<UniformGrid Grid.Column="1" Columns="3" HorizontalAlignment="left">
<Button Command="{Binding NewSubMaterialCommand}" ToolTip="{Binding New_Msg}"
Style = "{DynamicResource WaterjetDB_Button}">
<Image Source="/Resources/TopCommandBar/New.png" Stretch="Uniform"/>
</Button>
<Button Command="{Binding ModifySubMaterialCommand}" ToolTip="{Binding Modify_Msg}"
Style = "{DynamicResource WaterjetDB_Button}">
<Image Source="/Resources/TopCommandBar/Modify.png" Stretch="Uniform"/>
</Button>
<Button Command="{Binding DeleteSubMaterialCommand}" ToolTip="{Binding Delete_Msg}"
Style = "{DynamicResource WaterjetDB_Button}">
<Image Source="/Resources/TopCommandBar/Remove.png" Stretch="Uniform"/>
</Button>
</UniformGrid>
<UniformGrid Grid.Column="2" Columns="3" HorizontalAlignment="Right">
<Button Command="{Binding NewWjParamCommand}" ToolTip="{Binding New_Msg}"
Style = "{DynamicResource WaterjetDB_Button}">
<Image Source="/Resources/TopCommandBar/New.png" Stretch="Uniform"/>
</Button>
<Button Command="{Binding DeleteWjParamCommand}" ToolTip="{Binding Delete_Msg}"
Style = "{DynamicResource WaterjetDB_Button}">
<Image Source="/Resources/TopCommandBar/Remove.png" Stretch="Uniform"/>
</Button>
<Button Command="{Binding SaveCommand}" ToolTip="{Binding Save_Msg}"
Style = "{DynamicResource WaterjetDB_Button}">
<Image Source="/Resources/TopCommandBar/Save.png" Stretch="Uniform"/>
</Button>
</UniformGrid>
</Grid>
</Grid>
</EgtWPFLib5:EgtCustomWindow>
@@ -0,0 +1,20 @@
Imports EgtWPFLib5
Public Class MyWaterjetDbWindowV
Private WithEvents m_WaterjetDbWindowVM As WaterjetDbWindowVM
Sub New(Owner As Window, WaterjetDbWindowVM As WaterjetDbWindowVM)
MyBase.New(Owner)
' This call is required by the designer.
InitializeComponent()
Me.DataContext = WaterjetDbWindowVM
' Assegno al riferimento locale al VM il VM preso dal DataContext
m_WaterjetDbWindowVM = WaterjetDbWindowVM
End Sub
Private Sub CloseWindow(bDialogResult As Boolean) Handles m_WaterjetDbWindowVM.m_CloseWindow
Me.DialogResult = bDialogResult
End Sub
End Class
+403 -5
View File
@@ -12,6 +12,21 @@
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<MyType>Custom</MyType>
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
@@ -109,7 +124,13 @@
<PropertyGroup>
<ApplicationIcon>Resources\OmagOFFICE.ico</ApplicationIcon>
</PropertyGroup>
<PropertyGroup>
<ApplicationManifest>My Project\app.manifest</ApplicationManifest>
</PropertyGroup>
<ItemGroup>
<Reference Include="DotNetZip">
<HintPath>..\..\EgtProg\OmagOFFICE\DotNetZip.dll</HintPath>
</Reference>
<Reference Include="EgtPHOTOLib, Version=2.3.1.1, Culture=neutral, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\EgtProg\Dll32\EgtPHOTOLib.dll</HintPath>
@@ -120,9 +141,7 @@
<Reference Include="EgtWPFLib5">
<HintPath>..\..\EgtProg\DllD32\EgtWPFLib5.dll</HintPath>
</Reference>
<Reference Include="Ionic.Zip">
<HintPath>..\..\EgtProg\OmagOFFICE\Ionic.Zip.dll</HintPath>
</Reference>
<Reference Include="PresentationFramework.Aero" />
<Reference Include="System.Core" />
<Reference Include="System.Data.SQLite, Version=1.0.112.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
@@ -210,7 +229,26 @@
<Compile Include="EgtStoneLib\GeomCalc.vb" />
<Compile Include="EgtStoneLib\SplitAuto.vb" />
<Compile Include="EgtStoneLib\VacuumCups.vb" />
<Compile Include="EgtStoneLib\VeinMatchingWindow.xaml.vb">
<Compile Include="MyVeinMatch\PairInputDataVeinMatch.xaml.vb">
<DependentUpon>PairInputDataVeinMatch.xaml</DependentUpon>
</Compile>
<Compile Include="MyVeinMatch\RotationInputDataVeinMatch.xaml.vb">
<DependentUpon>RotationInputDataVeinMatch.xaml</DependentUpon>
</Compile>
<Compile Include="MyVeinMatch\RotationInputDataVeinMatchVM.vb" />
<Compile Include="MyVeinMatch\SolidInputDataVeinMatch.xaml.vb">
<DependentUpon>SolidInputDataVeinMatch.xaml</DependentUpon>
</Compile>
<Compile Include="MyVeinMatch\TopBarVeinMatch.xaml.vb">
<DependentUpon>TopBarVeinMatch.xaml</DependentUpon>
</Compile>
<Compile Include="MyVeinMatch\VeinMatchingInfo.xaml.vb">
<DependentUpon>VeinMatchingInfo.xaml</DependentUpon>
</Compile>
<Compile Include="MyVeinMatch\VeinMatchingTree.xaml.vb">
<DependentUpon>VeinMatchingTree.xaml</DependentUpon>
</Compile>
<Compile Include="MyVeinMatch\VeinMatchingWindow.xaml.vb">
<DependentUpon>VeinMatchingWindow.xaml</DependentUpon>
</Compile>
<Compile Include="InstrumentPanel\PrintPanelV.xaml.vb">
@@ -219,6 +257,9 @@
<Compile Include="InstrumentPanel\MyInstrumentPanelVM.vb" />
<Compile Include="InstrumentPanel\PrintPanelVM.vb" />
<Compile Include="MachinePanel\MyMachinePanelVM.vb" />
<Compile Include="MyMachGroupPanel\MyMachGroupPanelV.xaml.vb">
<DependentUpon>MyMachGroupPanelV.xaml</DependentUpon>
</Compile>
<Compile Include="MyMachGroupPanel\MyMachGroupPanelVM.vb" />
<Compile Include="MachinePanel\MachinePanelV.xaml.vb">
<DependentUpon>MachinePanelV.xaml</DependentUpon>
@@ -234,11 +275,17 @@
</Compile>
<Compile Include="MachOptionWindow\MachOptionWindowVM.vb" />
<Compile Include="MySceneHost\MySceneHostVM.vb" />
<Compile Include="MySetUpWindow\MySetUpWindowV.xaml.vb">
<DependentUpon>MySetUpWindowV.xaml</DependentUpon>
</Compile>
<Compile Include="MySetUpWindow\MySetUpWindowVM.vb" />
<Compile Include="MyToolDbWindow\MyToolDbWindowV.xaml.vb">
<DependentUpon>MyToolDbWindowV.xaml</DependentUpon>
</Compile>
<Compile Include="MyToolDbWindow\MyToolDbWindowVM.vb" />
<Compile Include="MyWaterjetDbWindow\MyWaterjetDbWindowV.xaml.vb">
<DependentUpon>MyWaterjetDbWindowV.xaml</DependentUpon>
</Compile>
<Compile Include="OptionPanel\MachiningTab\MachiningTabV.xaml.vb">
<DependentUpon>MachiningTabV.xaml</DependentUpon>
</Compile>
@@ -251,6 +298,10 @@
</Compile>
<Compile Include="OptionPanel\MachiningTab\ModifStartEndCutWindowVM.vb" />
<Compile Include="OptionPanel\MachiningTab\ModifStartEndWjWindowVM.vb" />
<Compile Include="OptionPanel\MachiningTab\ModifyQualityV.xaml.vb">
<DependentUpon>ModifyQualityV.xaml</DependentUpon>
</Compile>
<Compile Include="OptionPanel\MachiningTab\ModifyQualityVM.vb" />
<Compile Include="OptionPanel\MachiningTab\MoveRawModeV.xaml.vb">
<DependentUpon>MoveRawModeV.xaml</DependentUpon>
</Compile>
@@ -389,7 +440,31 @@
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="EgtStoneLib\VeinMatchingWindow.xaml">
<Page Include="MyVeinMatch\PairInputDataVeinMatch.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="MyVeinMatch\RotationInputDataVeinMatch.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="MyVeinMatch\SolidInputDataVeinMatch.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="MyVeinMatch\TopBarVeinMatch.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="MyVeinMatch\VeinMatchingInfo.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="MyVeinMatch\VeinMatchingTree.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="MyVeinMatch\VeinMatchingWindow.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
@@ -405,6 +480,10 @@
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="MyMachGroupPanel\MyMachGroupPanelV.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="MyMachiningDbWindow\MyMachiningDbWindowV.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
@@ -425,10 +504,18 @@
<DependentUpon>MainWindowV.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
<Page Include="MySetUpWindow\MySetUpWindowV.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="MyToolDbWindow\MyToolDbWindowV.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="MyWaterjetDbWindow\MyWaterjetDbWindowV.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="OptionPanel\MachiningTab\MachiningTabV.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
@@ -441,6 +528,10 @@
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="OptionPanel\MachiningTab\ModifyQualityV.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="OptionPanel\MachiningTab\MoveRawModeV.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
@@ -574,11 +665,13 @@
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<SubType>Designer</SubType>
</EmbeddedResource>
<None Include="My Project\app.manifest" />
<None Include="My Project\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
</None>
<AppDesigner Include="My Project\" />
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
@@ -702,6 +795,311 @@
<ItemGroup>
<Resource Include="Resources\InstrumentPanel\Print.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\NewIcons\1-BottomLeft.png" />
<Resource Include="Resources\NewIcons\2-BottomRight.png" />
<Resource Include="Resources\NewIcons\3-TopRight.png" />
<Resource Include="Resources\NewIcons\4-TopLeft.png" />
<Resource Include="Resources\NewIcons\Acquisisci-P.png" />
<Resource Include="Resources\NewIcons\Acquisisci-P1.png" />
<Resource Include="Resources\NewIcons\Acquisisci-P1_P2.png" />
<Resource Include="Resources\NewIcons\Acquisisci-P2.png" />
<Resource Include="Resources\NewIcons\Allunga-o-accorcia.png" />
<Resource Include="Resources\NewIcons\Arco.png" />
<Resource Include="Resources\NewIcons\AvantiVeloce.png" />
<Resource Include="Resources\NewIcons\BarCode.png" />
<Resource Include="Resources\NewIcons\Carica.png" />
<Resource Include="Resources\NewIcons\centro.png" />
<Resource Include="Resources\NewIcons\Chiudi.png" />
<Resource Include="Resources\NewIcons\Copia-dima.png" />
<Resource Include="Resources\NewIcons\CSV.png" />
<Resource Include="Resources\NewIcons\CsvMinus.png" />
<Resource Include="Resources\NewIcons\CsvNew.png" />
<Resource Include="Resources\NewIcons\CsvOpen.png" />
<Resource Include="Resources\NewIcons\CsvPlus.png" />
<Resource Include="Resources\NewIcons\CsvRuinedParts.png" />
<Resource Include="Resources\NewIcons\DatiMacchina.png" />
<Resource Include="Resources\NewIcons\DB-lavorazioni.png" />
<Resource Include="Resources\NewIcons\DB-utensili.png" />
<Resource Include="Resources\NewIcons\Deseleziona-tutto.png" />
<Resource Include="Resources\NewIcons\Drag_Rettangle.png" />
<Resource Include="Resources\NewIcons\Elimina-pezzo.png" />
<Resource Include="Resources\NewIcons\Esegui.png" />
<Resource Include="Resources\NewIcons\File-CSV.png" />
<Resource Include="Resources\NewIcons\Fine-allunga-o-accorcia.png" />
<Resource Include="Resources\NewIcons\Fine-centro-fuori.png" />
<Resource Include="Resources\NewIcons\Fine-tutti-centro.png" />
<Resource Include="Resources\NewIcons\Fine-tutti-fuori.png" />
<Resource Include="Resources\NewIcons\Foro-singolo.png" />
<Resource Include="Resources\NewIcons\FrameMachining.png" />
<Resource Include="Resources\NewIcons\freccia-dx.png" />
<Resource Include="Resources\NewIcons\freccia-giu.png" />
<Resource Include="Resources\NewIcons\freccia-nera.png" />
<Resource Include="Resources\NewIcons\freccia-small.png" />
<Resource Include="Resources\NewIcons\freccia-su.png" />
<Resource Include="Resources\NewIcons\freccia-sx.png" />
<Resource Include="Resources\NewIcons\freccia.png" />
<Resource Include="Resources\NewIcons\GenerateCN.png" />
<Resource Include="Resources\NewIcons\GenericView-hover.png" />
<Resource Include="Resources\NewIcons\GenericView.png" />
<Resource Include="Resources\NewIcons\ico-3D.png" />
<Resource Include="Resources\NewIcons\ico-cursore.png" />
<Resource Include="Resources\NewIcons\ico-cut.png" />
<Resource Include="Resources\NewIcons\ico-deseleziona.png" />
<Resource Include="Resources\NewIcons\ico-elimina.png" />
<Resource Include="Resources\NewIcons\ico-hover-3D.png" />
<Resource Include="Resources\NewIcons\ico-hover-cursore.png" />
<Resource Include="Resources\NewIcons\ico-hover-magnete.png" />
<Resource Include="Resources\NewIcons\ico-hover-mano.png" />
<Resource Include="Resources\NewIcons\ico-hover-puntatore.png" />
<Resource Include="Resources\NewIcons\ico-hover-righello.png" />
<Resource Include="Resources\NewIcons\ico-hover-zoom+.png" />
<Resource Include="Resources\NewIcons\ico-hover-zoom-.png" />
<Resource Include="Resources\NewIcons\ico-impostazioni.png" />
<Resource Include="Resources\NewIcons\ico-inserisci-prezzo.png" />
<Resource Include="Resources\NewIcons\ico-magnete.png" />
<Resource Include="Resources\NewIcons\ico-mano.png" />
<Resource Include="Resources\NewIcons\ico-parcheggia.png" />
<Resource Include="Resources\NewIcons\ico-puntatore.png" />
<Resource Include="Resources\NewIcons\ico-righello.png" />
<Resource Include="Resources\NewIcons\ico-salva.png" />
<Resource Include="Resources\NewIcons\ico-seleziona-tutto.png" />
<Resource Include="Resources\NewIcons\icone-tagli-1.png" />
<Resource Include="Resources\NewIcons\icone-tagli-2.png" />
<Resource Include="Resources\NewIcons\icone-tagli-4.png" />
<Resource Include="Resources\NewIcons\icone-tagli-5.png" />
<Resource Include="Resources\NewIcons\icone-tagli-6.png" />
<Resource Include="Resources\NewIcons\IndietroVeloce.png" />
<Resource Include="Resources\NewIcons\Inizio-allunga-o-accorcia.png" />
<Resource Include="Resources\NewIcons\Inizio-centro-fuori.png" />
<Resource Include="Resources\NewIcons\Inizio-tutti-centro.png" />
<Resource Include="Resources\NewIcons\Inizio-tutti-fuori.png" />
<Resource Include="Resources\NewIcons\Inserisci-pezzo.png" />
<Resource Include="Resources\NewIcons\Inverti.png" />
<Resource Include="Resources\NewIcons\Linea.png" />
<Resource Include="Resources\NewIcons\logo-OmCut.png" />
<Resource Include="Resources\NewIcons\Lucidatura.png" />
<Resource Include="Resources\NewIcons\Macchina.png" />
<Resource Include="Resources\NewIcons\Manual.png" />
<Resource Include="Resources\NewIcons\MHT.png" />
<Resource Include="Resources\NewIcons\Modifica-fine.png" />
<Resource Include="Resources\NewIcons\Modifica-inizio.png" />
<Resource Include="Resources\NewIcons\Movimento-manuale.png" />
<Resource Include="Resources\NewIcons\Nest.png" />
<Resource Include="Resources\NewIcons\NumericKeyboardArrow.png" />
<Resource Include="Resources\NewIcons\Nuovo.png" />
<Resource Include="Resources\NewIcons\ON_OFF-singolo-taglio.png" />
<Resource Include="Resources\NewIcons\Options.png" />
<Resource Include="Resources\NewIcons\Parcheggia-pezzo.png" />
<Resource Include="Resources\NewIcons\Parking.png" />
<Resource Include="Resources\NewIcons\Pausa-ON_OFF.png" />
<Resource Include="Resources\NewIcons\Ponticelli.png" />
<Resource Include="Resources\NewIcons\Ponticelli_delete.png" />
<Resource Include="Resources\NewIcons\Quality.png" />
<Resource Include="Resources\NewIcons\RawProbe.png" />
<Resource Include="Resources\NewIcons\Rimuovi-segmento.png" />
<Resource Include="Resources\NewIcons\Rimuovi_elimina.png" />
<Resource Include="Resources\NewIcons\Salva-con-nome.png" />
<Resource Include="Resources\NewIcons\Salva-taglio.png" />
<Resource Include="Resources\NewIcons\Salva.png" />
<Resource Include="Resources\NewIcons\SawProbe.png" />
<Resource Include="Resources\NewIcons\Seleziona-tutto.png" />
<Resource Include="Resources\NewIcons\Send.png" />
<Resource Include="Resources\NewIcons\Sezione-cornice.png" />
<Resource Include="Resources\NewIcons\Simula.png" />
<Resource Include="Resources\NewIcons\SlabId.png" />
<Resource Include="Resources\NewIcons\Specchia.png" />
<Resource Include="Resources\NewIcons\Spianatura.png" />
<Resource Include="Resources\NewIcons\SPLIT-WJ.png" />
<Resource Include="Resources\NewIcons\Split.png" />
<Resource Include="Resources\NewIcons\START-WJ.png" />
<Resource Include="Resources\NewIcons\Taglio-griglia.png" />
<Resource Include="Resources\NewIcons\Taglio-multiplo.png" />
<Resource Include="Resources\NewIcons\Taglio-singolo.png" />
<Resource Include="Resources\NewIcons\Take-point.png" />
<Resource Include="Resources\NewIcons\Test-lama.png" />
<Resource Include="Resources\NewIcons\ToolChangerPos.png" />
<Resource Include="Resources\NewIcons\Tutti-accorcia.png" />
<Resource Include="Resources\NewIcons\Tutti-allunga.png" />
<Resource Include="Resources\NewIcons\Tutti-OFF.png" />
<Resource Include="Resources\NewIcons\Tutti-ON.png" />
<Resource Include="Resources\NewIcons\V.png" />
<Resource Include="Resources\NewIcons\Vacuum.png" />
<Resource Include="Resources\NewIcons\Vein-match.png" />
<Resource Include="Resources\NewIcons\X.png" />
<Resource Include="Resources\NewIcons\XYJog.png" />
<Resource Include="Resources\NewIcons\ZBJog.png" />
<Resource Include="Resources\NewIcons\ZCJog.png" />
<Resource Include="Resources\NewIcons\zoom+.png" />
<Resource Include="Resources\NewIcons\zoom-.png" />
<Resource Include="Resources\NewIcons\ZoomAll-hover.png" />
<Resource Include="Resources\NewIcons\ZoomAll.png" />
<Resource Include="Resources\NewIcons\ZoomWin.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\RawPartTab\MovePhoto.png" />
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\TopCommandBar\Export_1.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\TopCommandBar\Import.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\TopCommandBar\Reset.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\TopCommandBar\Remove.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\TopCommandBar\Insert.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\TopCommandBar\Automatic.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\TopCommandBar\Modify.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\NewIcons\Crea-taglio.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\NewIcons\Attrezzaggio.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\NewIcons\Rimuovi-taglio.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\NewIcons\Modifica-taglio.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\NewIcons\Crea-taglio-parallelo.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\CsvWindow\CsvMinus - Color.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\CsvWindow\CsvPlus - Color.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\CsvWindow\Inserisci-pezzo CSV.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\CsvWindow\Parcheggia-pezzo CSV.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\NewIcons\Linea-Elimina.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\NewIcons\Linea-Muovi.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\NewIcons\Linea-Copia.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\TreeView\Import.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\TreeView\PartSolid.png" />
<Resource Include="Resources\NewIcons\DB-WJ.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\cube.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\cubes.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\reset cubes.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\explode.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\collapse.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\explode_normals.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\rotate.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\reset rotation.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\import.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\pair.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\unpair.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\feature-tree.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\ruler.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\avoid intersection.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\hide intersections.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\undo.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\redo.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\move.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\confirm move.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\reset move.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\reset pair.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\select all.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\deselect all.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\multi sel.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\reset.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\DetailPage\Cancel.png" />
<Resource Include="Resources\DetailPage\Confirm.png" />
<Resource Include="Resources\DetailPage\Elimina.png" />
<Resource Include="Resources\DetailPage\Photo.png" />
<Resource Include="Resources\DetailPage\Print.png" />
<Resource Include="Resources\DetailPage\Save.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\VeinMatchNewIcon\autopair.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\NewIcons\LightArrowOff.png" />
<Resource Include="Resources\NewIcons\LightArrowOn.png" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<PropertyGroup>
<PostBuildEvent>IF "$(PlatformName)"=="x86" IF "$(ConfigurationName)" == "Release" copy $(TargetPath) c:\EgtProg\OmagOFFICE\OmagOFFICER32.exe
+17 -12
View File
@@ -4,29 +4,34 @@
Margin="5,5,5,0">
<UniformGrid Columns="4" Margin="0,0,0,5">
<Button Style="{StaticResource OptionPanel_Button}"
<Button Style="{StaticResource MachiningTab_Button}"
Command="{Binding PrevCommand}"
IsEnabled="{Binding PrevIsEnabled}"
Margin="0,0,2.5,0">
<Image Source="/Resources/MachiningTab/BackArrow.png"/>
Background="{StaticResource Omag_Black}"
Margin="0,0,1,0">
<Image Source="/Resources/MachiningTab/BackArrow.png"/>
</Button>
<Button Style="{StaticResource OptionPanel_Button}"
<Button Style="{StaticResource MachiningTab_Button}"
Command="{Binding NextCommand}"
IsEnabled="{Binding NextIsEnabled}"
Margin="0,0,2.5,0">
<Image Source="/Resources/MachiningTab/ForwardArrow.png"/>
</Button>
<Button Style="{StaticResource OptionPanel_Button}"
Background="{StaticResource Omag_Black}"
Margin="0,0,0,0">
<Image Source="/Resources/MachiningTab/ForwardArrow.png"/>
</Button>
<Button Style="{StaticResource MachiningTab_Button}"
Content="{Binding ModifyMsg}"
Command="{Binding ModifyCommand}"
IsEnabled="{Binding ModifyIsEnabled}"
Margin="0,0,2.5,0"/>
<Button Style="{StaticResource OptionPanel_Button}"
Background="{StaticResource Omag_Black}"
Foreground="{StaticResource Omag_White}"
Margin="1,0,1,0"/>
<Button Style="{StaticResource MachiningTab_Button}"
Content="{Binding AutoMsg}"
Command="{Binding AutoCommand}"
IsEnabled="{Binding AutoIsEnabled}"
Visibility="{Binding AutoVisibility}"
Margin="0,0,0,0"/>
Background="{StaticResource Omag_Black}"
Foreground="{StaticResource Omag_White}"
Margin="1,0,1,0"/>
</UniformGrid>
<ContentControl Content="{Binding MachiningModeControl}"/>
@@ -334,6 +334,12 @@ Public Class MachiningTabVM
End If
End Sub
Friend Sub OnMouseDownScene_DoubleClick(sender As Object, e As Windows.Forms.MouseEventArgs)
If m_MachiningMode = MachiningModeOpt.SPLIT Then
OmagOFFICEMap.refSplitModeVM.OnMouseDownScene_DoubleClick(sender, e)
End If
End Sub
#End Region ' EVENTS
End Class
@@ -6,48 +6,29 @@
ShowInTaskbar="False"
Title="{Binding Title}"
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
Height="200" Width="400"
SizeToContent="Height" Width="270"
WindowStartupLocation="CenterOwner">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="4*"/>
<ColumnDefinition Width="4*"/>
<ColumnDefinition Width="0.5*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
<StackPanel Margin="5,5,5,0">
<TextBlock Grid.Column="1" Grid.Row="1" Margin="0,5,0,0"
<UniformGrid Columns="2" Margin="0,0,0,5">
<TextBlock Grid.Column="1" Grid.Row="1" Margin="0,0,0,0"
Style="{StaticResource OptionTextBlock}" Text="{Binding ValueMsg}"/>
<EgtWPFLib5:EgtTextBox Grid.Column="2" Grid.Row="1" Margin="10,5,10,0"
<EgtWPFLib5:EgtTextBox Grid.Column="2" Grid.Row="1" Margin="0,0,0,0"
Style="{StaticResource OptionTextBox}" Text="{Binding sValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
<Grid Name="ButtonsGrid" Grid.Column="1" Grid.Row="3" Grid.RowSpan="1" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="0.5*"/>
</Grid.ColumnDefinitions>
</UniformGrid>
<UniformGrid Columns="2"
Margin="0,0,0,5">
<Button Name="OkBtn" Content="{Binding OkMsg}" Grid.Column="1"
Style="{DynamicResource ToolBar_TextButton}">
Style="{DynamicResource CompoWindow_Button}">
</Button>
<Button Content="{Binding ExitMsg}" Grid.Column="3"
IsCancel="True"
Style="{DynamicResource ToolBar_TextButton}">
Style="{DynamicResource CompoWindow_Button}">
</Button>
</Grid>
</Grid>
</UniformGrid>
</StackPanel>
</EgtWPFLib5:EgtCustomWindow>
@@ -6,94 +6,79 @@
ShowInTaskbar="False"
Title="{Binding Title}"
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
Height="400" Width="400"
SizeToContent="Height" Width="270"
WindowStartupLocation="CenterOwner">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="4*"/>
<ColumnDefinition Width="4*"/>
<ColumnDefinition Width="0.5*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
<StackPanel Margin="5,5,5,0">
<TextBlock Name="HoleTxbl" Grid.Column="1" Grid.Row="1" Margin="0,5,0,0"
Style="{StaticResource OptionTextBlock}" Text="{Binding HoleMsg}" Visibility="{Binding HoleVisibility}"/>
<CheckBox Name="HoleChBx" Grid.Column="2" Grid.Row="1" HorizontalAlignment="Center" Margin="10,5,10,0"
Style="{DynamicResource OptionCheckBox}" IsChecked="{Binding bHole, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Visibility="{Binding HoleVisibility}"/>
<TextBlock Grid.Column="1" Grid.Row="2" Margin="0,5,0,0"
<UniformGrid Columns="2" Margin="0,0,0,5">
<TextBlock Name="HoleTxbl" Margin="0,5,0,0"
Style="{StaticResource OptionTextBlock}" Text="{Binding HoleMsg}" Visibility="{Binding HoleVisibility}"/>
<CheckBox Name="HoleChBx" HorizontalAlignment="Center" Margin="10,5,10,0"
Style="{DynamicResource OptionCheckBox}" IsChecked="{Binding bHole, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Visibility="{Binding HoleVisibility}"/>
</UniformGrid>
<UniformGrid Columns="2" Margin="0,0,0,5">
<TextBlock Margin="0,5,0,0"
Style="{StaticResource OptionTextBlock}" Text="{Binding ValueMsg}"/>
<EgtWPFLib5:EgtTextBox Grid.Column="2" Grid.Row="2" Margin="10,5,10,0"
<EgtWPFLib5:EgtTextBox Margin="0,0,0,5"
Style="{StaticResource OptionTextBox}" Text="{Binding sValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
</UniformGrid>
<TextBlock Name="LeadInTxbl" Grid.Column="1" Grid.Row="3" Margin="0,5,0,0"
Style="{StaticResource OptionTextBlock}" Text="{Binding LeadInMsg}" Visibility="{Binding LeadInVisibility}"/>
<ComboBox Name="LeadInCmBx" Grid.Column="2" Grid.Row="3" Margin="10,5,10,0"
ItemsSource="{Binding LeadInTypeList, Mode=OneWay}"
SelectedIndex="{Binding SelectedLeadInType,Mode=TwoWay}"
Style="{DynamicResource MachiningsComboBox}" Visibility="{Binding LeadInVisibility}"/>
<UniformGrid Columns="2" Margin="0,0,0,5">
<TextBlock Name="LeadInTxbl" Margin="0,5,0,0"
Style="{StaticResource OptionTextBlock}" Text="{Binding LeadInMsg}" Visibility="{Binding LeadInVisibility}"/>
<ComboBox Name="LeadInCmBx" Margin="0,0,0,5"
ItemsSource="{Binding LeadInTypeList, Mode=OneWay}"
SelectedIndex="{Binding SelectedLeadInType,Mode=TwoWay}"
Style="{DynamicResource MachiningsComboBox}" Visibility="{Binding LeadInVisibility}"/>
</UniformGrid>
<UniformGrid Columns="2" Margin="0,0,0,5">
<TextBlock Name="LeadOutTxbl"
Style="{StaticResource OptionTextBlock}" Text="{Binding LeadOutMsg}" Visibility="{Binding LeadOutVisibility}"/>
<ComboBox Name="LeadOutCmBx" Margin="0,0,0,5"
ItemsSource="{Binding LeadOutTypeList, Mode=OneWay}"
SelectedIndex="{Binding SelectedLeadOutType,Mode=TwoWay}"
Style="{DynamicResource MachiningsComboBox}" Visibility="{Binding LeadOutVisibility}"/>
</UniformGrid>
<TextBlock Name="LeadOutTxbl" Grid.Column="1" Grid.Row="3"
Style="{StaticResource OptionTextBlock}" Text="{Binding LeadOutMsg}" Visibility="{Binding LeadOutVisibility}"/>
<ComboBox Name="LeadOutCmBx" Grid.Column="2" Grid.Row="3" Margin="10,5,10,0"
ItemsSource="{Binding LeadOutTypeList, Mode=OneWay}"
SelectedIndex="{Binding SelectedLeadOutType,Mode=TwoWay}"
Style="{DynamicResource MachiningsComboBox}" Visibility="{Binding LeadOutVisibility}"/>
<TextBlock Name="TangDistTxbl" Grid.Column="1" Grid.Row="4" Margin="0,5,0,0"
Style="{StaticResource OptionTextBlock}" Text="{Binding TangDistMsg}"/>
<EgtWPFLib5:EgtTextBox Name="LiTangDistTxBx" Grid.Column="2" Grid.Row="4" Margin="10,5,10,0"
<UniformGrid Columns="2" Margin="0,0,0,5">
<TextBlock Name="TangDistTxbl" Margin="0,5,0,0"
Style="{StaticResource OptionTextBlock}" Text="{Binding TangDistMsg}"/>
<EgtWPFLib5:EgtTextBox Name="LiTangDistTxBx" Margin="0,0,0,5"
Style="{StaticResource OptionTextBox}" Text="{Binding sLiTangDist, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Visibility="{Binding LeadInVisibility}"/>
<TextBlock Name="PerpDistTxbl" Grid.Column="1" Grid.Row="5" Margin="0,5,0,0"
Style="{StaticResource OptionTextBlock}" Text="{Binding PerpDistMsg}"/>
<EgtWPFLib5:EgtTextBox Name="LiPerpDistTxBx" Grid.Column="2" Grid.Row="5" Margin="10,5,10,0"
Style="{StaticResource OptionTextBox}" Text="{Binding sLiPerpDist, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Visibility="{Binding LeadInVisibility}"/>
<EgtWPFLib5:EgtTextBox Name="LoTangDistTxBx" Grid.Column="2" Grid.Row="4" Margin="10,5,10,0"
<EgtWPFLib5:EgtTextBox Name="LoTangDistTxBx" Margin="0,0,0,5"
Style="{StaticResource OptionTextBox}" Text="{Binding sLoTangDist, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Visibility="{Binding LeadOutVisibility}"/>
</UniformGrid>
<EgtWPFLib5:EgtTextBox Name="LoPerpDistTxBx" Grid.Column="2" Grid.Row="5" Margin="10,5,10,0"
<UniformGrid Columns="2" Margin="0,0,0,5">
<TextBlock Name="PerpDistTxbl" Margin="0,5,0,0"
Style="{StaticResource OptionTextBlock}" Text="{Binding PerpDistMsg}"/>
<EgtWPFLib5:EgtTextBox Name="LiPerpDistTxBx" Margin="0,0,0,5"
Style="{StaticResource OptionTextBox}" Text="{Binding sLiPerpDist, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Visibility="{Binding LeadInVisibility}"/>
<EgtWPFLib5:EgtTextBox Name="LoPerpDistTxBx" Margin="0,0,0,5"
Style="{StaticResource OptionTextBox}" Text="{Binding sLoPerpDist, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Visibility="{Binding LeadOutVisibility}"/>
</UniformGrid>
<Grid Name="ButtonsGrid" Grid.Column="1" Grid.Row="7" Grid.RowSpan="1" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="0.5*"/>
</Grid.ColumnDefinitions>
<UniformGrid Name="ButtonsGrid" Columns="2" Margin="0,0,0,5">
<Button Name="OkBtn" Content="{Binding OkMsg}" Grid.Column="1"
Style="{DynamicResource ToolBar_TextButton}">
Style="{DynamicResource CompoWindow_Button}">
</Button>
<Button Content="{Binding ExitMsg}" Grid.Column="3"
IsCancel="True"
Style="{DynamicResource ToolBar_TextButton}">
Style="{DynamicResource CompoWindow_Button}">
</Button>
</UniformGrid>
</Grid>
</StackPanel>
</Grid>
<!--<GroupBox Header="{Binding DirectInsertHdr}"
<!--<GroupBox Header="{Binding DirectInsertHdr}"
Grid.Row="2" Margin="0,0,5,5">
<UniformGrid Rows="2">
<Grid>
@@ -0,0 +1,32 @@
<EgtWPFLib5:EgtCustomWindow x:Class="ModifyQualityV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
IsMinimizable="False"
ShowInTaskbar="False"
Title="{Binding Title}"
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
SizeToContent="Height" Width="270"
WindowStartupLocation="CenterOwner">
<StackPanel Margin="5,5,5,0">
<UniformGrid Columns="2" Margin="0,0,0,5">
<TextBlock Margin="0,5,0,0"
Style="{StaticResource OptionTextBlock}" Text="{Binding ValueMsg}"/>
<ComboBox ItemsSource="{Binding QualityList}"
SelectedItem="{Binding SelectedQuality}"
Style="{StaticResource MachiningsComboBox}"
Grid.Column="2" Grid.Row="1" Margin="10,5,10,0"/>
</UniformGrid>
<UniformGrid Columns="2" Margin="0,0,0,5">
<Button Name="OkBtn" Content="{Binding OkMsg}" Grid.Column="1"
Style="{DynamicResource CompoWindow_Button}">
</Button>
<Button Content="{Binding ExitMsg}" Grid.Column="3"
IsCancel="True"
Style="{DynamicResource CompoWindow_Button}">
</Button>
</UniformGrid>
</StackPanel>
</EgtWPFLib5:EgtCustomWindow>
@@ -0,0 +1,6 @@
Public Class ModifyQualityV
Private Sub OkBtn_Click(sender As Object, e As RoutedEventArgs) Handles OkBtn.Click
DialogResult = True
End Sub
End Class
@@ -0,0 +1,61 @@
Imports System.Collections.ObjectModel
Imports System.IO
Imports EgtUILib
Imports EgtWPFLib5
Public Class ModifyQualityVM
Inherits VMBase
Private m_Title As String = String.Empty
Public Property Title As String
Get
Return m_Title
End Get
Set(value As String)
m_Title = value
End Set
End Property
Public ReadOnly Property ValueMsg As String
Get
Return EgtMsg(MSG_SPLITPAGEUC + 35)
End Get
End Property
Public ReadOnly Property OkMsg As String
Get
Return EgtMsg(91651) 'Ok
End Get
End Property
Public ReadOnly Property ExitMsg As String
Get
Return EgtMsg(91652) 'Annulla
End Get
End Property
Private m_QualityList As New ObservableCollection(Of String)
Public Property QualityList As ObservableCollection(Of String)
Get
Return m_QualityList
End Get
Set(value As ObservableCollection(Of String))
m_QualityList = value
End Set
End Property
Private m_SelectedQuality As String
Public Property SelectedQuality As String
Get
Return m_SelectedQuality
End Get
Set(value As String)
m_SelectedQuality = value
End Set
End Property
Sub New()
End Sub
End Class
+81 -69
View File
@@ -3,96 +3,108 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<StackPanel IsEnabled="{Binding MoveRawModeIsEnabled}">
<Grid HorizontalAlignment="Center"
<StackPanel IsEnabled="{Binding MoveRawModeIsEnabled}">
<Border Margin="0,0,0,5" Style="{StaticResource Border}">
<Grid HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="5"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="5"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="5"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="5"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="5"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="0.5"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="0.5"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="0.5"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="0.5"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="0.5"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Button Grid.Column="2" Grid.Row="0"
Style="{StaticResource OptionPanel_NestingButton}"
<Button Grid.Column="2" Grid.Row="0"
Style="{StaticResource OptionPanel_MoveButton}"
Command="{Binding UpCommand}">
<Image Source="/Resources/NestingTab/UpArrow.png" Stretch="Uniform"/>
</Button>
<Button Grid.Column="0" Grid.Row="2"
Style="{StaticResource OptionPanel_NestingButton}"
<Image Source="/Resources/NestingTab/UpArrow.png"
Width="45" Height="45" HorizontalAlignment="Center"/>
</Button>
<Button Grid.Column="0" Grid.Row="2"
Style="{StaticResource OptionPanel_MoveButton}"
Command="{Binding LeftCommand}"
Visibility="{Binding LRArrowVisibility}">
<Image Source="/Resources/NestingTab/LeftArrow.png"/>
</Button>
<EgtWPFLib5:EgtTextBox Grid.Column="2" Grid.Row="2" Width="40"
<Image Source="/Resources/NestingTab/LeftArrow.png"
Width="45" Height="45" HorizontalAlignment="Center"/>
</Button>
<TextBox Grid.Column="2" Grid.Row="2" Width="40" Height="20"
Text="{Binding MoveStep}"
VerticalAlignment="Center"
HorizontalContentAlignment="Right"/>
<Button Grid.Column="4" Grid.Row="2"
Style="{StaticResource OptionPanel_NestingButton}"
HorizontalAlignment="Center"
HorizontalContentAlignment="right"
Background="{StaticResource Omag_Black}"
Foreground="{StaticResource Omag_White}"
VerticalAlignment="Center"/>
<Button Grid.Column="4" Grid.Row="2"
Style="{StaticResource OptionPanel_MoveButton}"
Command="{Binding RightCommand}"
Visibility="{Binding LRArrowVisibility}">
<Image Source="/Resources/NestingTab/RightArrow.png"/>
</Button>
<Image Source="/Resources/NestingTab/RightArrow.png"
Width="45" Height="45" HorizontalAlignment="Center"/>
</Button>
<Button Grid.Column="2" Grid.Row="4"
Style="{StaticResource OptionPanel_NestingButton}"
<Button Grid.Column="2" Grid.Row="4"
Style="{StaticResource OptionPanel_MoveButton}"
Command="{Binding DownCommand}">
<Image Source="/Resources/NestingTab/DownArrow.png"/>
</Button>
<Image Source="/Resources/NestingTab/DownArrow.png"
Width="45" Height="45" HorizontalAlignment="Center"/>
</Button>
<Button Grid.Column="0" Grid.Row="6"
Style="{StaticResource OptionPanel_NestingButton}"
<Button Grid.Column="0" Grid.Row="6"
Style="{StaticResource OptionPanel_MoveButton}"
Command="{Binding CcwRotCommand}"
Visibility="{Binding RotationVisibility}">
<Image Source="/Resources/NestingTab/CounterClockwiseRotate.png"
Width="64" Height="65" HorizontalAlignment="Center"
VerticalAlignment="Center" />
</Button>
<Grid Name="RotationAngle" Grid.Column="2" Grid.Row="6"
HorizontalAlignment="Center" VerticalAlignment="Center"
Visibility="{Binding RotationVisibility}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<EgtWPFLib5:EgtTextBox Text="{Binding RotationStep}" Width="40"/>
<TextBlock Grid.Column="1" FontSize="30" Margin="2,-5,0,0"
Text="°"/>
</Grid>
<Button Grid.Column="4" Grid.Row="6"
Style="{StaticResource OptionPanel_NestingButton}"
Command="{Binding CwRotCommand}"
Visibility="{Binding RotationVisibility}">
<Image Source="/Resources/NestingTab/ClockwiseRotate.png"
<Image Source="/Resources/NestingTab/CounterClockwiseRotate.png"
Width="65" Height="65" HorizontalAlignment="Center"
VerticalAlignment="Center" />
</Button>
</Button>
</Grid>
<Grid Name="RotationAngle" Grid.Column="2" Grid.Row="6"
HorizontalAlignment="Center" VerticalAlignment="Center"
Visibility="{Binding RotationVisibility}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBox Text="{Binding RotationStep}" Width="40" Height="20"
HorizontalAlignment="center"
HorizontalContentAlignment="right"
Background="{StaticResource Omag_Black}"
Foreground="{StaticResource Omag_White}"/>
<TextBlock Grid.Column="1" FontSize="25" Margin="2,-5,0,0"
Foreground="{StaticResource Omag_White}" Text="°"/>
</Grid>
<Button Grid.Column="2" Grid.Row="4"
<Button Grid.Column="4" Grid.Row="6"
Style="{StaticResource OptionPanel_MoveButton}"
Command="{Binding CwRotCommand}"
Visibility="{Binding RotationVisibility}">
<Image Source="/Resources/NestingTab/ClockwiseRotate.png"
Width="65" Height="65" HorizontalAlignment="Center"
VerticalAlignment="Center" />
</Button>
</Grid>
</Border>
<Button Grid.Column="2" Grid.Row="4"
Content="{Binding RemoveMsg}"
Style="{StaticResource OptionPanel_TextButton}"
Command="{Binding RemovePartCommand}"
Margin="0,0,0,5"/>
Margin="0,5,0,5"/>
</StackPanel>
</StackPanel>
</UserControl>
+568 -159
View File
@@ -1,219 +1,628 @@
<UserControl x:Class="SplitModeV"
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"
Background="Transparent">
<StackPanel IsEnabled="{Binding SplitModeIsEnabled}">
<UserControl.InputBindings>
<KeyBinding Key="Escape" Command="{Binding SplitCutCommand}" />
</UserControl.InputBindings>
<ListBox ItemsSource="{Binding ItemList}"
DisplayMemberPath="Name"
<StackPanel IsEnabled="{Binding SplitModeIsEnabled}">
<Border Margin="0,0,0,5" Style="{StaticResource BorderSplit}" Padding="0">
<ListBox ItemsSource="{Binding ItemList}"
Background="{StaticResource Omag_Gray}"
SelectionMode="Extended"
Height="250" Margin="0,0,0,5">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Style.Triggers>
<DataTrigger Binding="{Binding bIsActive}" Value="False">
<Setter Property="Foreground" Value="{StaticResource Omag_Gray}"/>
</DataTrigger>
</Style.Triggers>
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
BorderThickness="0"
Height="200" Margin="0,0,0,0">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<Image Margin="1" Height="20" Width="20"
Source="{Binding SourceImg}">
</Image>
<TextBlock Margin="1" Text="{Binding Name}"/>
<StackPanel.InputBindings>
<MouseBinding MouseAction="LeftDoubleClick"
Command="{Binding Path=DataContext.OnOffCommand,
RelativeSource={RelativeSource AncestorType=UserControl, Mode=FindAncestor }}"/>
</StackPanel.InputBindings>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Style.Triggers>
<DataTrigger Binding="{Binding bIsActive}" Value="False">
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
<Setter Property="FontStyle" Value="Oblique"/>
<Setter Property="FontWeight" Value="Light"/>
</DataTrigger>
<DataTrigger Binding="{Binding bIsActive}" Value="True">
<Setter Property="Foreground" Value="{StaticResource Omag_Black}"/>
<Setter Property="FontWeight" Value="Bold"/>
</DataTrigger>
</Style.Triggers>
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
</Border>
<Grid Margin="0,0,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="0.5*"/>
</Grid.ColumnDefinitions>
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,0,0,2.5">
<Button Grid.Column="1"
<Button
IsEnabled="{Binding bEnabledCommandMove}"
Style="{StaticResource OptionPanel_Button}"
Command="{Binding MoveUpCommand}">
<Image Source="/Resources/MachiningTab/UpArrow.png"/>
</Button>
<Button Grid.Column="2"
Command="{Binding MoveUpCommand}"
Margin="0,0,0.5,0">
<Image Source="/Resources/NestingTab/UpArrow.png"/>
</Button>
<Button
IsEnabled="{Binding bEnabledCommandMove}"
Style="{StaticResource OptionPanel_Button}"
Command="{Binding MoveDownCommand}">
<Image Source="/Resources/MachiningTab/DownArrow.png"/>
</Button>
Command="{Binding MoveDownCommand}"
Margin="0.5,0,0,0">
<Image Source="/Resources/NestingTab/DownArrow.png"/>
</Button>
<ToggleButton ToolTip="{Binding LayNbArrTgBtnMsg}"
Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding LayNbArrTgBtn_IsChecked}"
Height="20" Width="20"
Margin="10,0,1,0">
<Image Source="{Binding LayNbArrTgBtnImg}"/>
</ToggleButton>
</StackPanel>
</Grid>
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Name="myExpander1" Background="Transparent"
Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="{Binding EnableCutMsg}"
ExpandDirection="Down" IsExpanded="{Binding bOnOffCut_IsExpanded}">
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="2,2.5,2,0">
<Border Margin="0,0,0,5" Style="{StaticResource Border}">
<UniformGrid Columns="3">
<Button Content="{Binding OnOffMsg}"
<!--<Button Content="{Binding OnOffMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding OnOffCommand}"
Margin="0,0,2.5,0"/>
<Button Content="{Binding AllOnMsg}"
Margin="0,0,2.5,0"/>-->
<StackPanel Margin="1,0,0,0">
<Button ToolTip="{Binding OnOffMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding OnOffCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/ON_OFF-singolo-taglio.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<!--<Button Content="{Binding AllOnMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding AllOnCommand}"
Margin="2.5,0,2.5,0"/>
<Button Content="{Binding AllOffMsg}"
Margin="2.5,0,2.5,0"/>-->
<StackPanel Margin="1,0,0,0">
<Button ToolTip="{Binding AllOnMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding AllOnCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Tutti-ON.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<!--<Button Content="{Binding AllOffMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding AllOffCommand}"
Margin="2.5,0,0,0"/>
Margin="2.5,0,0,0"/>-->
<StackPanel Margin="1,0,0,0">
<Button ToolTip="{Binding AllOffMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding AllOffCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Tutti-OFF.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
</UniformGrid>
</StackPanel>
</Border>
</Expander>
</Border>
<Border Margin="0,0,0,5" Style="{StaticResource Border}">
<StackPanel>
<UniformGrid Columns="3" Margin="0,0,0,5">
<Grid>
<Button Content="{Binding CutMsg}"
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Name="myExpander2" Background="Transparent"
Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="{Binding SplitCutMsg}"
ExpandDirection="Down" IsExpanded="{Binding bSpLitCut_IsExpanded}">
<StackPanel Margin="0,0,0,-2.5">
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1">
<Grid>
<!--<Button Content="{Binding CutMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding CutCommand}"
Visibility="{Binding CutBtnVisibility}"
Margin="0,0,2.5,0"/>
<ToggleButton Grid.Row="0"
Margin="0,0,2.5,0"/>-->
<StackPanel Visibility="{Binding CutBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding CutMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding CutCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Allunga-o-accorcia.png"
Height="40" Margin="0,2,0,0"
HorizontalAlignment="Center" VerticalAlignment="Center"/>
</StackPanel>
</Button>
</StackPanel>
<!--<ToggleButton Grid.Row="0"
Content="{Binding BridgeMsg}"
Style="{StaticResource OptionPanel_ToggleWrapButton}"
IsChecked="{Binding BridgeBtn_IsChecked}"
Visibility="{Binding BridgeBtnVisibility}"
Margin="0,0,2.5,0" Padding="0"/>
</Grid>
<Button Content="{Binding CutStartMsg}"
Margin="0,0,2.5,0" Padding="0"/>-->
<StackPanel Visibility="{Binding BridgeBtnVisibility}" Margin="1,0,0,0">
<ToggleButton ToolTip="{Binding BridgeMsg}"
Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding BridgeBtn_IsChecked}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Ponticelli.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</ToggleButton>
</StackPanel>
</Grid>
<Grid>
<!--<Button Content="{Binding CutStartMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding CutStartCommand}"
Visibility="{Binding CutStartBtnVisibility}"
Margin="2.5,0,2.5,0"/>
<Grid>
<Button Content="{Binding CutEndMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding CutEndCommand}"
Visibility="{Binding CutEndBtnVisibility}"
Margin="2.5,0,0,0"/>
<ToggleButton Grid.Row="0"
Content="{Binding BridgeDeleteMsg}"
Style="{StaticResource OptionPanel_ToggleWrapButton}"
IsChecked="{Binding BridgeDeleteBtn_IsChecked}"
Visibility="{Binding BridgeDeleteBtnVisibility}"
Margin="2.5,0,0,0" Padding="0"/>
</Grid>
</UniformGrid>
Margin="2.5,0,2.5,0"/>-->
<StackPanel Visibility="{Binding CutStartBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding CutStartMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding CutStartCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Inizio-allunga-o-accorcia.png"
Height="40" Margin="0,2,0,0"
HorizontalAlignment="Center" VerticalAlignment="Center"/>
</StackPanel>
</Button>
</StackPanel>
<Grid Visibility="{Binding AllExtRedVisibility}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="0.5*"/>
</Grid.ColumnDefinitions>
<Button Content="{Binding AllExtendMsg}" Grid.Column="1"
<!--<Button Content="{Binding QualityMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding QualityCommand}"
Visibility="{Binding QualityBtnVisibility}"
Margin="2.5,0,2.5,0"/>!-->
<StackPanel Visibility="{Binding QualityBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding QualityMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding QualityCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Quality.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
</Grid>
<Grid>
<StackPanel Visibility="{Binding CutEndBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding CutEndMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding CutEndCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Fine-allunga-o-accorcia.png"
Height="40" Margin="0,2,0,0"
HorizontalAlignment="Center" VerticalAlignment="Center"/>
</StackPanel>
</Button>
</StackPanel>
<StackPanel Visibility="{Binding BridgeDeleteBtnVisibility}" Margin="1,0,0,0">
<ToggleButton ToolTip="{Binding BridgeDeleteMsg}"
Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding BridgeDeleteBtn_IsChecked}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Ponticelli_delete.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</ToggleButton>
</StackPanel>
</Grid>
</StackPanel>
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1">
<!--Bottone invisibile per permetter il corretto allineamento-->
<!--
<Button Content="{Binding }" Grid.Column="0"
Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding }"
Visibility="Hidden"
Margin="0,0,1,0"/>-->
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="2" Margin="1,0,0,0">
<Button ToolTip="{Binding AllExtendMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding AllExtendCommand}"
Visibility="{Binding AllExtendBtnVisibility}"
Margin="0,0,2.5,0"/>
<Button Content="{Binding AllReduceMsg}" Grid.Column="2"
Style="{StaticResource OptionPanel_TextWrapButton}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Tutti-allunga.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<StackPanel Visibility="{Binding AllReduceBtnVisibility}" Grid.Column="2" Margin="1,0,0,0">
<Button ToolTip="{Binding AllReduceMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding AllReduceCommand}"
Visibility="{Binding AllReduceBtnVisibility}"
Margin="2.5,0,0,0"/>
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Tutti-accorcia.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
</Grid>
</StackPanel>
</StackPanel>
</Border>
<!--<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1">
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0">
<ToggleButton ToolTip="{Binding AllExtendMsg}"
Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding CreateCut_IsChecked}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Width="40" Height="40"
Margin="1,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Crea-taglio.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</ToggleButton>
</StackPanel>
<Border Margin="0,0,0,5" Style="{StaticResource Border}">
<StackPanel>
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0">
<ToggleButton ToolTip="{Binding AllExtendMsg}"
Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding RemoveCut_IsChecked}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Width="40" Height="40"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Rimuovi-taglio.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</ToggleButton>
</StackPanel>
<UniformGrid Columns="3" Margin="0,0,0,5">
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0">
<ToggleButton ToolTip="{Binding AllExtendMsg}"
Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding CreateParallelCut_IsChecked}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Width="40" Height="40"
Margin="1,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Crea-taglio-parallelo.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</ToggleButton>
</StackPanel>
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0">
<ToggleButton ToolTip="{Binding AllExtendMsg}"
Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding CreateParallelCut_IsChecked}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Width="40" Height="40"
Margin="1,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Modifica-taglio.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</ToggleButton>
</StackPanel>
</StackPanel>-->
<Button Content="{Binding OutCenStartMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}"
</StackPanel>
</Expander>
</Border>
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Name="myExpander3" Background="Transparent"
Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="{Binding DirectSplitCutMsg}"
ExpandDirection="Down" IsExpanded="{Binding bDirectSpLitCut_IsExpanded}">
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1">
<StackPanel Grid.Column="1" Margin="1,0,0,0">
<ToggleButton ToolTip="Crea"
Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding CreateCut_IsChecked}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Width="40" Height="40"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Linea.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</ToggleButton>
</StackPanel>
<StackPanel Grid.Column="1" Margin="1,0,0,0">
<ToggleButton ToolTip="Elimina"
Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding RemoveCut_IsChecked}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Width="40" Height="40"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Linea-Elimina.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</ToggleButton>
</StackPanel>
<StackPanel Grid.Column="1" Margin="1,0,0,0">
<ToggleButton ToolTip="Copia"
Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding CreateParallelCut_IsChecked}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Width="40" Height="40"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Linea-Copia.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</ToggleButton>
</StackPanel>
<StackPanel Grid.Column="1" Margin="1,0,0,0">
<ToggleButton ToolTip="Muovi"
Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding ModifyCut_IsChecked}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Width="40" Height="40"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Linea-Muovi.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</ToggleButton>
</StackPanel>
</StackPanel>
</Expander>
</Border>
<Border Style="{StaticResource Border}" Margin="0,1,0,0">
<Expander Name="myExpander4" Background="Transparent"
Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="{Binding ManageStartEndCutMsg}"
ExpandDirection="Down" IsExpanded="{Binding bModifyCut_IsExpanded}">
<StackPanel Margin="0,0,0,-2.5">
<UniformGrid Columns="4" Margin="0,2.5,0,1">
<StackPanel Visibility="{Binding OutCenStartBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding OutCenStartMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding OutCenStartCommand}"
Visibility="{Binding OutCenStartBtnVisibility}"
Margin="0,0,2.5,0" Padding="0"/>
<Button Content="{Binding AllOutStartMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Inizio-centro-fuori.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<StackPanel Visibility="{Binding AllOutStartBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding AllOutStartMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding AllOutStartCommand}"
Visibility="{Binding AllOutStartBtnVisibility}"
Margin="2.5,0,2.5,0"/>
<Button Content="{Binding AllCenStartMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Inizio-tutti-fuori.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<StackPanel Visibility="{Binding AllCenStartBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding AllCenStartMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding AllCenStartCommand}"
Visibility="{Binding AllCenStartBtnVisibility}"
Margin="2.5,0,0,0"/>
</UniformGrid>
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Inizio-tutti-centro.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<UniformGrid Columns="3" Margin="0,0,0,5">
<Button Content="{Binding OutCenEndMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding OutCenEndCommand}"
Visibility="{Binding OutCenEndBtnVisibility}"
Margin="0,0,2.5,0" Padding="0"/>
<Button Content="{Binding AllOutEndMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding AllOutEndCommand}"
Visibility="{Binding AllOutEndBtnVisibility}"
Margin="2.5,0,2.5,0"/>
<Button Content="{Binding AllCenEndMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding AllCenEndCommand}"
Visibility="{Binding AllCenEndBtnVisibility}"
Margin="2.5,0,0,0"/>
</UniformGrid>
<UniformGrid Columns="3" Margin="0,0,0,5">
<Button Content="{Binding ModifStartMsg}" Grid.Column="0"
Style="{StaticResource OptionPanel_TextWrapButton}"
<StackPanel Margin="1,0,0,0">
<Button ToolTip="{Binding ModifStartMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding ModifStartCommand}"
Margin="2.5,0,2.5,0"/>
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Modifica-Inizio.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
<Button Content="{Binding ModifEndMsg}" Grid.Column="1"
Style="{StaticResource OptionPanel_TextWrapButton}"
</StackPanel>
</UniformGrid>
<UniformGrid Columns="4" Margin="0,0,0,1">
<StackPanel Margin="1,0,0,0" Visibility="{Binding OutCenEndBtnVisibility}">
<Button ToolTip="{Binding OutCenEndMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding OutCenEndCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Fine-Centro-Fuori.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<StackPanel Visibility="{Binding AllOutEndBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding AllOutEndMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding AllOutEndCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Fine-tutti-fuori.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<StackPanel Visibility="{Binding AllCenEndBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding AllCenEndMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding AllCenEndCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Fine-tutti-centro.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<StackPanel Margin="1,0,0,0">
<Button ToolTip="{Binding ModifEndMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding ModifEndCommand}"
Margin="2.5,0,2.5,0"/>
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Modifica-Fine.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<Button Content="{Binding PauseMsg}" Grid.Column="2"
Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding PauseCommand}"
Visibility="{Binding PauseBtnVisibility}"
Margin="2.5,0,2.5,0"/>
</UniformGrid>
</UniformGrid>
<UniformGrid Columns="4" Margin="0,0,0,1">
<UniformGrid Columns="3" Margin="0,0,0,5">
<!--Bottone invisibile per permetter il corretto allineamento-->
<Button Content="{Binding }" Grid.Column="0"
<!--Bottone invisibile per permetter il corretto allineamento-->
<Button Content="{Binding }" Grid.Column="0"
Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding }"
Visibility="Hidden"
Margin="2.5,0,2.5,0"/>
<!--Inverti direzione di taglio-->
<Button Content="{Binding InvertMsg}" Grid.Column="0"
Style="{StaticResource OptionPanel_TextWrapButton}"
Margin="0,0,1,0"/>
<StackPanel Margin="1,0,0,0">
<Button ToolTip="{Binding PauseMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding PauseCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Pausa-ON_OFF.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<StackPanel Visibility="{Binding InvertBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding InvertMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding InvertCommand}"
Visibility="{Binding InvertBtnVisibility}"
Margin="2.5,0,2.5,0"/>
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Inverti.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
</UniformGrid>
</UniformGrid>
</StackPanel>
</StackPanel>
</Border>
</StackPanel>
</Expander>
</Border>
</StackPanel>
</UserControl>
File diff suppressed because it is too large Load Diff
+263 -130
View File
@@ -4,203 +4,336 @@
xmlns:EgtWPFLib5 ="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Margin="5,5,5,0">
<Grid HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="5"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="5"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Grid.Column="0" Grid.Row="0"
Style="{StaticResource OptionPanel_NestingButton}"
<GroupBox Header="{Binding DrawingMsg}" Style="{StaticResource GroupBoxSplit}">
<Grid HorizontalAlignment="Center"
VerticalAlignment="Center" Margin="0,2.5,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="5"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="5"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Grid.Column="0" Grid.Row="0"
Style="{StaticResource DrawImport_NestingButton}"
Command="{Binding DrawCommand}">
<Image Source="/Resources/NestingTab/Draw.png" Stretch="Uniform"/>
</Button>
<Button Grid.Column="2" Grid.Row="0"
Style="{StaticResource OptionPanel_NestingButton}"
<Image Source="/Resources/NestingTab/Draw.png" Stretch="Uniform"/>
</Button>
<Button Grid.Column="2" Grid.Row="0"
Style="{StaticResource DrawImport_NestingButton}"
Command="{Binding ImportDxfCommand}">
<Image Source="/Resources/NestingTab/ImportDxf.png" Stretch="Uniform"/>
</Button>
<ToggleButton Grid.Column="4" Grid.Row="0"
Style="{StaticResource OptionPanel_NestingToggleButton}"
<Image Source="/Resources/NestingTab/ImportDxf.png" Stretch="Uniform"/>
</Button>
<ToggleButton Grid.Column="4" Grid.Row="0"
Style="{StaticResource DrawImport_NestingToggleButton}"
IsChecked="{Binding CsvImport_IsChecked}">
<Image Source="/Resources/NestingTab/ImportCsv.png" Stretch="Uniform"/>
</ToggleButton>
<Image Source="/Resources/NestingTab/ImportCsv.png" Stretch="Uniform"/>
</ToggleButton>
</Grid>
</Grid>
</GroupBox>
<Border Margin="0,0,0,5" Style="{StaticResource Border}">
<Border Margin="0,5,0,5" Style="{StaticResource Border}">
<Grid HorizontalAlignment="Center"
<Grid HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="5"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="5"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="5"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="5"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="5"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
Margin="0,0,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="5"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="5"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="5"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="5"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="5"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<!--<TextBlock Name="PositioningLbl" Grid.ColumnSpan="3" VerticalAlignment="Center"
<!--<TextBlock Name="PositioningLbl" Grid.ColumnSpan="3" VerticalAlignment="Center"
HorizontalAlignment="Center" FontSize="15" />-->
<Button Grid.Column="0" Grid.Row="0"
<Button Grid.Column="0" Grid.Row="0"
Style="{StaticResource OptionPanel_NestingButton}" Width="48" Height="48"
Command="{Binding PartRotOnCommand}">
<Image Source="/Resources/NestingTab/PartRotOn.png" Stretch="Uniform"/>
</Button>
<Button Grid.Column="2" Grid.Row="0"
<Image Source="/Resources/NestingTab/PartRotOn.png" Stretch="Uniform"/>
</Button>
<Button Grid.Column="2" Grid.Row="0"
Style="{StaticResource OptionPanel_NestingButton}"
Command="{Binding UpCommand}">
<Image Source="/Resources/NestingTab/UpArrow.png" Stretch="Uniform"/>
</Button>
<Button Grid.Column="4" Grid.Row="0"
<Image Source="/Resources/NestingTab/UpArrow.png"
Width="40"/>
</Button>
<Button Grid.Column="4" Grid.Row="0"
Style="{StaticResource OptionPanel_NestingButton}" Width="48" Height="48"
Command="{Binding PartRotOffCommand}">
<Image Source="/Resources/NestingTab/PartRotOff.png" Stretch="Uniform"/>
</Button>
<Button Grid.Column="0" Grid.Row="2"
<Image Source="/Resources/NestingTab/PartRotOff.png" Stretch="Uniform"/>
</Button>
<Button Grid.Column="0" Grid.Row="2"
Style="{StaticResource OptionPanel_NestingButton}"
Command="{Binding LeftCommand}">
<Image Source="/Resources/NestingTab/LeftArrow.png"/>
</Button>
<ToggleButton Grid.Column="2" Grid.Row="2"
<Image Source="/Resources/NestingTab/LeftArrow.png"
Width="40"/>
</Button>
<ToggleButton Grid.Column="2" Grid.Row="2"
Style="{StaticResource OptionPanel_NestingToggleButton}"
IsChecked="{Binding MaxMoveIsChecked}">
<Image Source="/Resources/NestingTab/MaxMove.png"/>
</ToggleButton>
<Button Grid.Column="4" Grid.Row="2"
<Image Source="/Resources/NestingTab/MaxMove.png"/>
</ToggleButton>
<Button Grid.Column="4" Grid.Row="2"
Style="{StaticResource OptionPanel_NestingButton}"
Command="{Binding RightCommand}">
<Image Source="/Resources/NestingTab/RightArrow.png"/>
</Button>
<Image Source="/Resources/NestingTab/RightArrow.png"
Width="40"/>
</Button>
<EgtWPFLib5:EgtTextBox Grid.Column="0" Grid.Row="4" Width="40"
<EgtWPFLib5:EgtTextBox Grid.Column="0" Grid.Row="4" Width="40"
Text="{Binding StepMove}"
VerticalAlignment="Center"
HorizontalContentAlignment="Right"/>
<Button Grid.Column="2" Grid.Row="4"
<Button Grid.Column="2" Grid.Row="4"
Style="{StaticResource OptionPanel_NestingButton}"
Command="{Binding DownCommand}">
<Image Source="/Resources/NestingTab/DownArrow.png"/>
</Button>
<Image Source="/Resources/NestingTab/DownArrow.png"
Width="40"/>
</Button>
<Grid Grid.Column="4" Grid.Row="4" HorizontalAlignment="Center" VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="4" Grid.Row="4" HorizontalAlignment="Center" VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<EgtWPFLib5:EgtTextBox Text="{Binding RotationAngle}" Width="50"
<EgtWPFLib5:EgtTextBox Text="{Binding RotationAngle}" Width="40"
VerticalAlignment="Center"
HorizontalContentAlignment="Right"/>
<TextBlock Grid.Column="1" Margin="2,0,0,0"
HorizontalContentAlignment="Left"/>
<TextBlock Grid.Column="1" Margin="2,0,0,0"
FontSize="20" Text="°"/>
</Grid>
</Grid>
<Button Grid.Column="0" Grid.Row="6"
<Button Grid.Column="0" Grid.Row="6"
Style="{StaticResource OptionPanel_NestingButton}"
Command="{Binding CClockwiseRotCommand}">
<Image Source="/Resources/NestingTab/CounterClockwiseRotate.png"
<Image Source="/Resources/NestingTab/CounterClockwiseRotate.png"
Width="64" Height="65" HorizontalAlignment="Center"
VerticalAlignment="Center" />
</Button>
<ToggleButton Grid.Column="2" Grid.Row="6"
</Button>
<ToggleButton Grid.Column="2" Grid.Row="6"
Style="{StaticResource OptionPanel_NestingToggleButton}"
IsChecked="{Binding MagneticIsChecked}">
<Image Source="/Resources/NestingTab/AlignPieces.png"
<Image Source="/Resources/NestingTab/AlignPieces.png"
Width="65" Height="65" HorizontalAlignment="Center"
VerticalAlignment="Center" />
</ToggleButton>
<Button Grid.Column="4" Grid.Row="6"
</ToggleButton>
<Button Grid.Column="4" Grid.Row="6"
Style="{StaticResource OptionPanel_NestingButton}"
Command="{Binding ClockwiseRotCommand}">
<Image Source="/Resources/NestingTab/ClockwiseRotate.png"
<Image Source="/Resources/NestingTab/ClockwiseRotate.png"
Width="65" Height="65" HorizontalAlignment="Center"
VerticalAlignment="Center" />
</Button>
</Button>
</Grid>
</Grid>
</Border>
</Border>
<UniformGrid Grid.Column="0" Columns="2" Margin="0,0,0,5">
<Button Content="{Binding InsertPartMsg}"
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Name="myExpander1" Background="Transparent"
Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="{Binding ManagePartsMsg}"
ExpandDirection="Down" IsExpanded="{Binding bManageParts_IsExpanded}">
<UniformGrid Grid.Column="0" Columns="3" Margin="0,2.5,0,0">
<!--<Button Content="{Binding InsertPartMsg}"
Style="{StaticResource OptionPanel_TextButton}"
Command="{Binding InsertPartCommand}"
Margin="0,0,2.5,0"/>
<Button Content="{Binding StorePartMsg}" Grid.Column="1"
Style="{StaticResource OptionPanel_TextButton}"
Command="{Binding StorePartCommand}"
Margin="2.5,0,0,0"/>
<!--<ToggleButton Content="{Binding StartCurvWJMsg}" Grid.Column="2"
Margin="2.5,0,0,0"/>-->
<StackPanel>
<Button ToolTip="{Binding InsertPartMsg}" Grid.Column="1"
Style="{StaticResource Nest_Button_Img}"
Command="{Binding InsertPartCommand}"
HorizontalContentAlignment="Stretch"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Inserisci-pezzo.png"
Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding InsertPartMsg}"
HorizontalAlignment="Center"/>-->
</StackPanel>
</Button>
</StackPanel>
<StackPanel>
<Button ToolTip="{Binding StorePartMsg}" Grid.Column="1"
Style="{StaticResource Nest_Button_Img}"
Command="{Binding StorePartCommand}"
HorizontalContentAlignment="Stretch"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Parcheggia-pezzo.png"
Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding StorePartMsg}"
HorizontalAlignment="Center"/>-->
</StackPanel>
</Button>
</StackPanel>
<StackPanel>
<Button ToolTip="{Binding RemovePartMsg}" Grid.Column="1"
Style="{StaticResource Nest_Button_Img}"
Command="{Binding RemovePartCommand}"
HorizontalContentAlignment="Stretch"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Elimina-pezzo.png"
Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding RemovePartMsg}"
HorizontalAlignment="Center"/>-->
</StackPanel>
</Button>
</StackPanel>
<!--<ToggleButton Content="{Binding StartCurvWJMsg}" Grid.Column="2"
Visibility="{Binding StartCurvWJ_Visibility}"
Style="{StaticResource OptionPanel_ToggleButton}"
IsChecked="{Binding bStartCurvWJ}"
Margin="2.5,0,2.5,0"/>-->
</UniformGrid>
</UniformGrid>
</Expander>
</Border>
<UniformGrid Grid.Column="0" Columns="{Binding CountColumn}" Margin="0,0,0,5">
<Button Content="{Binding RemovePartMsg}"
Style="{StaticResource OptionPanel_TextButton}"
Command="{Binding RemovePartCommand}"
Margin="0,0,2.5,0"/>
<ToggleButton Content="{Binding DragRectangleMsg}" Grid.Column="1"
Visibility="{Binding DragRectangle_Visibility}"
Style="{StaticResource OptionPanel_ToggleButton}"
IsChecked="{Binding bDragRectangle}"
Margin="2.5,0,2.5,0"/>
<!--<ToggleButton Content="{Binding SplitCurvWJMsg}" Grid.Column="2"
Visibility="{Binding SplitCurvWJ_Visibility}"
Style="{StaticResource OptionPanel_ToggleButton}"
IsChecked="{Binding bSplitCurvWJ}"
Margin="2.5,0,2.5,0"/>-->
</UniformGrid>
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Name="myExpander2" Background="Transparent"
Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="{Binding SelectionPartMsg}"
ExpandDirection="Down" IsExpanded="{Binding bSelectionParts_IsExpanded}">
<UniformGrid Grid.Column="0" Columns="2" Margin="0,0,0,5" Visibility="{Binding WJ_Cmd_Visibility}">
<ToggleButton Content="{Binding SplitCurvWJMsg}" Grid.Column="2"
Style="{StaticResource OptionPanel_ToggleButton}"
IsChecked="{Binding bSplitCurvWJ}"
Margin="2.5,0,2.5,0"/>
<ToggleButton Content="{Binding StartCurvWJMsg}" Grid.Column="2"
Style="{StaticResource OptionPanel_ToggleButton}"
IsChecked="{Binding bStartCurvWJ}"
Margin="2.5,0,2.5,0"/>
</UniformGrid>
<UniformGrid Columns="2" Margin="0,0,0,5">
<Button Content="{Binding SelectAllMsg}"
Style="{StaticResource OptionPanel_TextButton}"
Command="{Binding SelectAllCommand}"
Margin="0,0,2.5,0"/>
<Button Content="{Binding DeselectAllMsg}"
Style="{StaticResource OptionPanel_TextButton}"
Command="{Binding DeselectAllCommand}"
Margin="2.5,0,0,0"/>
</UniformGrid>
<UniformGrid Grid.Column="0" Columns="{Binding CountColumn}" Margin="0,2.5,0,0">
<Button Content="{Binding ResetMsg}"
<StackPanel>
<Button ToolTip="{Binding SelectAllMsg}" Grid.Column="1"
Style="{StaticResource Nest_Button_Img}"
Command="{Binding SelectAllCommand}"
HorizontalContentAlignment="Stretch"
Margin="2.5,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Seleziona-tutto.png"
Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding SelectAllMsg}"
HorizontalAlignment="Center"/>-->
</StackPanel>
</Button>
</StackPanel>
<StackPanel>
<Button ToolTip="{Binding DeselectAllMsg}" Grid.Column="1"
Style="{StaticResource Nest_Button_Img}"
Command="{Binding DeselectAllCommand}"
HorizontalContentAlignment="Stretch"
Margin="2.5,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Deseleziona-tutto.png"
Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding DeselectAllMsg}"
HorizontalAlignment="Center"/>-->
</StackPanel>
</Button>
</StackPanel>
<StackPanel>
<ToggleButton ToolTip="{Binding DragRectangleMsg}" Grid.Column="1"
Visibility="{Binding DragRectangle_Visibility}"
Style="{StaticResource Nest_ToggleButton_Img}"
IsChecked="{Binding bDragRectangle}"
HorizontalContentAlignment="Stretch"
Margin="2.5,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Drag_Rettangle.png"
Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding DragRectangleMsg}"
HorizontalAlignment="Center"/>-->
</StackPanel>
</ToggleButton>
</StackPanel>
</UniformGrid>
</Expander>
</Border>
<Border Style="{StaticResource Border}" Margin="0,1,0,5" Visibility="{Binding WJ_Cmd_Visibility}">
<Expander Name="myExpander3" Background="Transparent"
Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="{Binding ManageWJMsg}"
ExpandDirection="Down" IsExpanded="{Binding bManageWJ_IsExpanded}">
<UniformGrid Grid.Column="0" Columns="2" Margin="2.5,0,0,0" Visibility="{Binding WJ_Cmd_Visibility}">
<StackPanel HorizontalAlignment="Right" Margin="0,0,3.75,0">
<ToggleButton ToolTip="{Binding SplitCurvWJMsg}" Grid.Column="1"
Style="{StaticResource Nest_ToggleButton_Img}"
IsChecked="{Binding bSplitCurvWJ}"
HorizontalContentAlignment="Stretch"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/SPLIT-WJ.png"
Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding SplitCurvWJMsg}"
HorizontalAlignment="Center"/>-->
</StackPanel>
</ToggleButton>
</StackPanel>
<StackPanel HorizontalAlignment="Left" Margin="3.75,0,0,0">
<ToggleButton ToolTip="{Binding StartCurvWJMsg}" Grid.Column="1"
Style="{StaticResource Nest_ToggleButton_Img}"
IsChecked="{Binding bStartCurvWJ}"
HorizontalContentAlignment="Stretch"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/START-WJ.png"
Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding StartCurvWJMsg}"
HorizontalAlignment="Center"/>-->
</StackPanel>
</ToggleButton>
</StackPanel>
</UniformGrid>
</Expander>
</Border>
<Button Content="{Binding ResetMsg}"
Style="{StaticResource OptionPanel_TextButton}"
Command="{Binding ResetCommand}"
Margin="0,0,0,5"/>
Margin="0,5,0,5"/>
<Button Content="{Binding CsvDataMsg}"
<Button Content="{Binding CsvDataMsg}"
Style="{StaticResource OptionPanel_TextButton}"
Command="{Binding CsvDataCommand}"
Visibility="{Binding CsvData_Visibility}"
Margin="0,0,0,5"/>
</StackPanel>
+97 -2
View File
@@ -162,13 +162,49 @@ Public Class NestingTabVM
End Set
End Property
Private m_CountColumn As Integer = 1
Private m_CountColumn As Integer = 2
Public ReadOnly Property CountColumn As Integer
Get
Return m_CountColumn
End Get
End Property
Private m_bManageParts_IsExpanded As Boolean = True
Public Property bManageParts_IsExpanded As Boolean
Get
Return m_bManageParts_IsExpanded
End Get
Set(value As Boolean)
m_bManageParts_IsExpanded = value
NotifyPropertyChanged(NameOf(bManageParts_IsExpanded))
WriteMainPrivateProfileString("Nest", "ManageParts", If(m_bManageParts_IsExpanded, "1", "0"))
End Set
End Property
Private m_bSelectionParts_IsExpanded As Boolean = True
Public Property bSelectionParts_IsExpanded As Boolean
Get
Return m_bSelectionParts_IsExpanded
End Get
Set(value As Boolean)
m_bSelectionParts_IsExpanded = value
NotifyPropertyChanged(NameOf(bSelectionParts_IsExpanded))
WriteMainPrivateProfileString("Nest", "SelectionParts", If(m_bSelectionParts_IsExpanded, "1", "0"))
End Set
End Property
Private m_bManageWJ_IsExpanded As Boolean = True
Public Property bManageWJ_IsExpanded As Boolean
Get
Return m_bManageWJ_IsExpanded
End Get
Set(value As Boolean)
m_bManageWJ_IsExpanded = value
NotifyPropertyChanged(NameOf(bManageWJ_IsExpanded))
WriteMainPrivateProfileString("Nest", "ManageWJ", If(m_bManageWJ_IsExpanded, "1", "0"))
End Set
End Property
#Region "Messages"
Public ReadOnly Property InsertPartMsg As String
@@ -191,7 +227,7 @@ Public Class NestingTabVM
Public ReadOnly Property DragRectangleMsg As String
Get
Return "Drag Rectangle"
Return EgtMsg(91670)
End Get
End Property
@@ -233,8 +269,54 @@ Public Class NestingTabVM
End Get
End Property
Public ReadOnly Property DrawingMsg As String
Get
Return EgtMsg(91657)
End Get
End Property
Public ReadOnly Property ManagePartsMsg As String
Get
Return EgtMsg(91660)
End Get
End Property
Public ReadOnly Property SelectionPartMsg As String
Get
Return EgtMsg(91661)
End Get
End Property
Public ReadOnly Property ManageWJMsg As String
Get
Return EgtMsg(91662)
End Get
End Property
#End Region ' Messages
#Region "ToolTip"
Public ReadOnly Property ParametricToolTip As String
Get
Return EgtMsg(91657)
End Get
End Property
Public ReadOnly Property ImportDrawToolTip As String
Get
Return EgtMsg(91658)
End Get
End Property
Public ReadOnly Property ImportCSVToolTip As String
Get
Return EgtMsg(91659)
End Get
End Property
#End Region ' ToolTip
' Definizione comandi
Private m_cmdDraw As ICommand
Private m_cmdImportDxf As ICommand
@@ -276,6 +358,12 @@ Public Class NestingTabVM
#Region "METHODS"
Friend Function InitNesting() As Boolean
m_bManageParts_IsExpanded = GetMainPrivateProfileInt("Nest", "ManageParts", 0) <> 0
NotifyPropertyChanged(NameOf(bManageParts_IsExpanded))
m_bSelectionParts_IsExpanded = GetMainPrivateProfileInt("Nest", "SelectionParts", 0) <> 0
NotifyPropertyChanged(NameOf(bSelectionParts_IsExpanded))
m_bManageWJ_IsExpanded = GetMainPrivateProfileInt("Nest", "ManageWJ", 0) <> 0
NotifyPropertyChanged(NameOf(bManageWJ_IsExpanded))
' Se previsto, abilito bottone VeinMatching
If Not IsNothing(OmagOFFICEMap.refMainWindowVM.VeinMatchingWnd) Then
OmagOFFICEMap.refVeinMatchPanelVM.VeinMatchIsEnabled = True
@@ -1994,6 +2082,8 @@ Public Class NestingTabVM
ResetAllStartCurv()
' cancello tutti i ponticelli disegnati
ResetAllBridges()
' cancello tutti i tagli di separazione disegnati
ResetAllSplitCut()
' Cancello tutte le lavorazioni
CamAuto.EraseMachinings(GDB_ID.NULL)
' Reinserisco tutte le lavorazioni piane
@@ -2080,6 +2170,10 @@ Public Class NestingTabVM
#Region "EVENTS"
Friend Sub OnMouseDownScene(sender As Object, e As Windows.Forms.MouseEventArgs)
Dim nCtx As Integer = EgtGetCurrentContext()
Dim x As Integer = EgtGetFirstInGroup(0)
Dim y As Integer = EgtGetLastInGroup(0)
Dim z As Integer = EgtGetFirstPart()
' se in modalità DragRectangle (deformazione delle componenti rettangolari)
If m_bDragRectangle Then
OnMyMouseDownSceneSelSideRectangle(sender, e)
@@ -2428,6 +2522,7 @@ Public Class NestingTabVM
VeinMatching.OnDeselectPart(m_nIdToDesel)
End If
' Reset
GetFamilyGroupInPark()
m_bDrag = False
m_nIdToSel = GDB_ID.NULL
m_nIdToDesel = GDB_ID.NULL
+73 -34
View File
@@ -1,39 +1,78 @@
<EgtFloating:EgtFloatingPanel x:Class="OptionPanelV"
<UserControl x:Class="OptionPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"
xmlns:OmagOFFICE="clr-namespace:OmagOFFICE"
Width="268"
IsTopDockable="False" IsBottomDockable="False" IsLeftDockable="True"
IsRightDockable="False" Style="{StaticResource Option_EgtFloatingPanel}">
Width="190">
<TabControl Name="Tabs" SelectedIndex="{Binding SelItem}">
<TabItem Header="{Binding RawPartTabMsg}" IsEnabled="{Binding RawTabIsEnabled}"
Background="{Binding RawPart_Background}">
<TabItem.Content>
<OmagOFFICE:RawPartTabV DataContext="{StaticResource RawPartTabVM}"/>
</TabItem.Content>
</TabItem>
<TabItem Header="{Binding NestingTabMsg}" IsEnabled="{Binding NestTabIsEnabled}">
<TabItem.Content>
<OmagOFFICE:NestingTabV DataContext="{StaticResource NestingTabVM}"/>
</TabItem.Content>
<TabItem.Style>
<Style TargetType="{x:Type TabItem}" BasedOn="{StaticResource {x:Type TabItem}}">
<EventSetter Event="PreviewMouseDown" Handler="NestingTab_Click"/>
</Style>
</TabItem.Style>
</TabItem>
<TabItem Header="{Binding MachiningTabMsg}" IsEnabled="{Binding MachTabIsEnabled}">
<TabItem.Content>
<OmagOFFICE:MachiningTabV DataContext="{StaticResource MachiningTabVM}"/>
</TabItem.Content>
</TabItem>
<TabItem Header="{Binding SimulTabMsg}" IsEnabled="{Binding SimulTabIsEnabled}">
<TabItem.Content>
<OmagOFFICE:SimulTabV DataContext="{StaticResource SimulTabVM}"/>
</TabItem.Content>
</TabItem>
</TabControl>
</EgtFloating:EgtFloatingPanel>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<TabControl Name="Tabs" SelectedIndex="{Binding SelItem}" Background="Transparent"
Padding="0,0,0,0"
Margin="5,0.5,5,0"
Style="{StaticResource TabControlOptinPanel}">
<TabItem IsEnabled="{Binding RawTabIsEnabled}"
Margin="0,0,0,0"
Style="{StaticResource TabItemOptinPanel}">
<TabItem.Header>
<StackPanel Orientation="Horizontal" Width="35" Height="35">
<Image Source="/Resources/NewIcons/icone-tagli-5.png"
Stretch="UniformToFill"
ToolTip="{Binding RawPartTabMsg}"/>
</StackPanel>
</TabItem.Header>
<TabItem.Content>
<OmagOFFICE:RawPartTabV DataContext="{StaticResource RawPartTabVM}"/>
</TabItem.Content>
</TabItem>
<TabItem IsEnabled="{Binding NestTabIsEnabled}"
Margin="0,0,0,0"
Style="{StaticResource TabItemOptinPanel}">
<TabItem.Header>
<StackPanel Orientation="Horizontal" Width="35" Height="35">
<Image ToolTip="{Binding NestingTabMsg}" Source="/Resources/NewIcons/Nest.png" Stretch="Uniform" />
</StackPanel>
</TabItem.Header>
<TabItem.Content>
<OmagOFFICE:NestingTabV DataContext="{StaticResource NestingTabVM}"/>
</TabItem.Content>
<!--<TabItem.Style>
<Style TargetType="{x:Type TabItem}" BasedOn="{StaticResource TabItemOptinPanel}">
<EventSetter Event="PreviewMouseDown" Handler="NestingTab_Click"/>
</Style>
</TabItem.Style>-->
</TabItem>
<TabItem IsEnabled="{Binding MachTabIsEnabled}"
Margin="0,0,0,0"
Style="{StaticResource TabItemOptinPanel}">
<TabItem.Header>
<StackPanel Orientation="Horizontal" Width="35" Height="35">
<Image ToolTip="{Binding MachiningTabMsg}" Source="/Resources/NewIcons/Split.png" Stretch="Uniform" />
</StackPanel>
</TabItem.Header>
<TabItem.Content>
<OmagOFFICE:MachiningTabV DataContext="{StaticResource MachiningTabVM}"/>
</TabItem.Content>
</TabItem>
<TabItem IsEnabled="{Binding SimulTabIsEnabled}"
Margin="0,0,0,0"
Style="{StaticResource TabItemOptinPanel}">
<TabItem.Header>
<StackPanel Orientation="Horizontal" Width="35" Height="35">
<Image ToolTip="{Binding SimulTabMsg}" Source="/Resources/NewIcons/Simula.png" Stretch="Uniform" />
</StackPanel>
</TabItem.Header>
<TabItem.Content>
<OmagOFFICE:SimulTabV DataContext="{StaticResource SimulTabVM}"/>
</TabItem.Content>
</TabItem>
</TabControl>
<!--Se click + Key Shift sopra Label apertura dellì file Log-->
<Label Grid.Row="1"
Background="Transparent"
MouseLeftButtonDown="Label_MouseLeftButtonDown"/>
</Grid>
</UserControl>
+33 -1
View File
@@ -1,4 +1,7 @@
Public Class OptionPanelV
Imports System.IO
Imports EgtUILib
Public Class OptionPanelV
Private m_OptionPanelVM As OptionPanelVM
@@ -24,6 +27,35 @@
If Not OmagOFFICEMap.refOptionPanelVM.NestTabIsEnabled Then e.Handled = True
End Sub
Private Sub Label_MouseLeftButtonDown(sender As Object, e As MouseButtonEventArgs)
If Not (Keyboard.Modifiers And ModifierKeys.Shift) > 0 Then Return
Dim sTmpDir As String = String.Empty
If Not EgtInterface.EgtGetTempDir(sTmpDir) Then Return
' Genero file CNC (lancio anche se errore in precedenza)
Dim sLog1 As String = sTmpDir & "\OmagOFFICELog1.txt"
Dim sLog2 As String = sTmpDir & "\OmagOFFICELog2.txt"
Dim sLog As String = ""
If File.Exists(sLog1) AndAlso File.Exists(sLog2) Then
If File.GetLastAccessTimeUtc(sLog1) > File.GetLastAccessTimeUtc(sLog2) Then
sLog = sLog1
Else
sLog = sLog2
End If
ElseIf File.Exists(sLog1) AndAlso Not File.Exists(sLog2) Then
sLog = sLog1
ElseIf File.Exists(sLog2) AndAlso Not File.Exists(sLog1) Then
sLog = sLog2
End If
Try
Process.Start("Notepad.exe", sLog)
Catch ex As Exception
ex.ToString()
End Try
'End If
End Sub
#End Region ' EVENTS
End Class
+6 -7
View File
@@ -5,16 +5,15 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
xmlns:EgtPHOTOLib="clr-namespace:EgtPHOTOLib;assembly=EgtPHOTOLib"
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300"
Title="OmagPHOTO"
ResizeMode="NoResize" ShowInTaskbar="False">
<EgtPHOTOLib:ProjectSlabV DataContext="{StaticResource ProjectSlabVM}"/>
<!--<DockPanel>
<Grid>
<ContentControl Content="{Binding OmagPhotoContent}"/>
</Grid>
</DockPanel>-->
<DockPanel>
<!--Progetto corrente-->
<EgtPHOTOLib:ProjectSlabV DataContext="{StaticResource ProjectSlabVM}"/>
</DockPanel>
</EgtWPFLib5:EgtCustomWindow>
+3 -5
View File
@@ -2,13 +2,11 @@
'Private m_OmagPhotoVM As OmagPhotoVM
'Sub New(Owner As Window, OmagPhotoVM As OmagPhotoVM)
'Public Sub New(Owner As Window)
' MyBase.New(Owner)
' ' This call is required by the designer.
' 'This call Is required by the designer.
' InitializeComponent()
' Me.DataContext = OmagPhotoVM
' ' Assegno al riferimento locale al VM il VM preso dal DataContext
' m_OmagPhotoVM = OmagPhotoVM
'End Sub
End Class
+148 -107
View File
@@ -5,176 +5,217 @@
xmlns:EgtPHOTOLib="clr-namespace:EgtPHOTOLib;assembly=EgtPHOTOLib"
Margin="5,5,5,0">
<Border Style="{StaticResource DefaultBorder}"
Padding="5,5,5,0">
<StackPanel>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Button Style="{StaticResource OptionPanel_Button}"
Grid.Column="0"
<StackPanel>
<GroupBox Header="Photo" Style="{StaticResource GroupBoxRow}">
<Grid HorizontalAlignment="Center"
VerticalAlignment="Center" Margin="0,2.5,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="5"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="5"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Style="{StaticResource OptionPanelRaw_Button}"
Grid.Column="0" Grid.Row="0"
Visibility="{Binding SlabIdVisibility}"
IsEnabled="{Binding SlabIdIsEnabled}"
Command="{Binding SlabIdCommand}"
Width="30" Height="30"
Margin="0,0,0,5" >
<Image Source="/Resources/RawPartTab/SlabId.png" Stretch="Uniform"/>
</Button>
<Button Style="{StaticResource OptionPanel_Button}"
Grid.Column="1"
Margin="0,0,0,0" >
<Image Source="/Resources/RawPartTab/SlabId.png" Stretch="Uniform"/>
</Button>
<Button Style="{StaticResource OptionPanelRaw_Button}"
Grid.Column="2" Grid.Row="0"
Command="{Binding PhotoCommand}"
Margin="0,0,0,5" >
<Image Source="/Resources/RawPartTab/Photo.png" Stretch="Uniform"/>
</Button>
<ToggleButton Style="{StaticResource OptionPanel_ToggleButton}"
Grid.Column="2"
ToolTip="{Binding PhotoToolTip }"
Margin="0,0,0,0" >
<Image Source="/Resources/RawPartTab/Photo.png" Stretch="Uniform"/>
</Button>
<ToggleButton Style="{StaticResource OptionPanelRaw_ToggleButton}"
Grid.Column="4" Grid.Row="0"
IsChecked="{Binding PhotoWithMouse}"
Width="30"
Margin="0,0,0,5" >
<Image Source="/Resources/RawPartTab/Mouse.png" Stretch="Uniform"/>
</ToggleButton>
</Grid>
ToolTip="{Binding MovePhotoToolTip }"
Margin="0,0,0,0" >
<Image Source="/Resources/RawPartTab/MovePhoto.png" Stretch="Uniform" Width="40"/>
</ToggleButton>
</Grid>
</GroupBox>
<UniformGrid Columns="2" Rows="3" Margin="0,0,0,0">
<GroupBox Header="Offset photo" Style="{StaticResource GroupBoxRow}">
<UniformGrid Columns="2" Rows="3" Margin="0,0,0,0">
<TextBlock Text="{Binding OffsetXMsg}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding PhotoOffsetX}"
Margin="13,0,0,5"
<TextBlock Text="{Binding OffsetXMsg}" Style="{StaticResource RawTextBlock}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding PhotoOffsetX}"
BorderThickness="0"
Margin="0,0,0,5"
TextAlignment="Right"/>
<TextBlock Text="{Binding OffsetYMsg}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding PhotoOffsetY}"
Margin="13,0,0,5"
<TextBlock Text="{Binding OffsetYMsg}" Style="{StaticResource RawTextBlock}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding PhotoOffsetY}"
Margin="0,0,0,5"
TextAlignment="Right"/>
<TextBlock Text="{Binding PhotoRotMsg}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding PhotoRot}"
Margin="13,0,0,5"
<TextBlock Text="{Binding PhotoRotMsg}" Style="{StaticResource RawTextBlock}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding PhotoRot}"
Margin="0,0,0,5"
TextAlignment="Right"/>
</UniformGrid>
</StackPanel>
</Border>
</UniformGrid>
</GroupBox>
</StackPanel>
<!-- Definizione della Grid per il materiale -->
<GroupBox Header="{Binding MaterialMsg}" Margin="0,0,0,5">
<!-- Definizione della Grid per il materiale -->
<GroupBox Header="{Binding MaterialMsg}" Style="{StaticResource GroupBoxRow}">
<StackPanel>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<ComboBox ItemsSource="{Binding MaterialList}"
DisplayMemberPath="sName"
SelectedItem="{Binding SelMaterial}"/>
<TextBlock Grid.Row="1" Text="{Binding MaterialFromDB}"
<ComboBox ItemsSource="{Binding MaterialList}"
Style="{DynamicResource Raw_ComboBox}"
DisplayMemberPath="sName"
SelectedItem="{Binding SelMaterial}">
<ComboBox.ItemContainerStyle>
<Style TargetType="ComboBoxItem">
<Setter Property="Height" Value="30"/>
<Setter Property="Width" Value="150" />
</Style>
</ComboBox.ItemContainerStyle>
</ComboBox>
<TextBlock Grid.Row="1" Text="{Binding MaterialFromDB}"
Style="{StaticResource RawTextBlock}"
Visibility="{Binding VisibilityMaterialFromDB}"
Margin="0,5,0,0"/>
</Grid>
</StackPanel>
</GroupBox>
<UniformGrid Columns="2" Margin="0,0,0,0">
<TextBlock Text="{Binding HeightMsg}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding Height}"
Margin="13,0,0,5"
IsEnabled="{Binding HeightIsEnabled}" TextAlignment="Right"/>
</UniformGrid>
<Button Content="{Binding CurrMachMsg}"
<Button Content="{Binding CurrMachMsg}"
Command="{Binding CurrMachCommand}"
Background="{Binding CurrMach_Background}"
Style="{StaticResource OptionPanel_TextButton}"
Margin="0,0,0,5"/>
Margin="0,5,0,0"/>
<UniformGrid Columns="2" Margin="0,0,0,5">
<GroupBox Header="Definizion grezzo" Style="{StaticResource GroupBoxRow}">
<StackPanel>
<RadioButton Content="{Binding OutlineMsg}"
<UniformGrid Columns="2" Margin="0,0,0,5">
<RadioButton Content="{Binding OutlineMsg}"
Style="{StaticResource OptionPanel_ToggleButton}"
IsChecked="{Binding OutlineIsChecked}"
Margin="0,0,2.5,0">
</RadioButton>
<RadioButton Content="{Binding DamagedAreaMsg}"
Margin="0,0,1,0">
</RadioButton>
<RadioButton Content="{Binding DamagedAreaMsg}"
Style="{StaticResource OptionPanel_ToggleButton}"
IsChecked="{Binding DAIsChecked}"
Margin="2.5,0,0,0">
</RadioButton>
Margin="1,0,0,0">
</RadioButton>
</UniformGrid>
</UniformGrid>
<ComboBox ItemsSource="{Binding TypeList}"
<ComboBox ItemsSource="{Binding TypeList}"
SelectedIndex="{Binding SelType}"
Style="{StaticResource Raw_ComboBox}"
Margin="0,0,0,5"
IsEnabled="{Binding TypeIsEnabled}"/>
IsEnabled="{Binding TypeIsEnabled}">
<ComboBox.ItemContainerStyle>
<Style TargetType="ComboBoxItem">
<Setter Property="Height" Value="30"/>
<!-- Definizione della Grid per definizione grezzo -->
<UniformGrid Columns="2" Rows="5" Margin="0,0,0,0">
</Style>
</ComboBox.ItemContainerStyle>
</ComboBox>
<TextBlock Text="{Binding LengthMsg}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding Length}"
Margin="13,0,0,5"
<!-- Definizione della Grid per definizione grezzo -->
<UniformGrid Columns="2" Rows="6" Margin="0,0,0,0">
<TextBlock Text="{Binding LengthMsg}" Style="{StaticResource RawTextBlock}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding Length}"
Margin="0,0,0,5"
IsEnabled="{Binding LengthIsEnabled}" TextAlignment="Right"/>
<TextBlock Text="{Binding WidthMsg}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding Width}"
Margin="13,0,0,5"
<TextBlock Text="{Binding WidthMsg}" Style="{StaticResource RawTextBlock}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding Width}"
Margin="0,0,0,5"
IsEnabled="{Binding WidthIsEnabled}" TextAlignment="Right"/>
<TextBlock Text="{Binding OffsetXMsg}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding OffsetX}"
Margin="13,0,0,5"
<TextBlock Text="{Binding HeightMsg}" Style="{StaticResource RawTextBlock}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding Height}"
Margin="0,0,0,5"
IsEnabled="{Binding HeightIsEnabled}" TextAlignment="Right"/>
<TextBlock Text="{Binding OffsetXMsg}" Style="{StaticResource RawTextBlock}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding OffsetX}"
Margin="0,0,0,5"
IsEnabled="{Binding OffsetXIsEnabled}" TextAlignment="Right"/>
<TextBlock Text="{Binding OffsetYMsg}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding OffsetY}"
Margin="13,0,0,5"
<TextBlock Text="{Binding OffsetYMsg}" Style="{StaticResource RawTextBlock}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding OffsetY}"
Margin="0,0,0,5"
IsEnabled="{Binding OffsetYIsEnabled}" TextAlignment="Right"/>
<TextBlock Text="{Binding KerfMsg}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding Kerf, UpdateSourceTrigger=PropertyChanged}"
Margin="13,0,0,5"
<TextBlock Text="{Binding KerfMsg}" Style="{StaticResource RawTextBlock}"/>
<EgtWpfLib5:EgtTextBox Text="{Binding Kerf, UpdateSourceTrigger=PropertyChanged}"
Margin="0,0,0,5"
IsEnabled="{Binding KerfIsEnabled}" TextAlignment="Right"/>
</UniformGrid>
</UniformGrid>
<!-- Definizione della Grid per Punti -->
<GroupBox Header="{Binding PointsMsg}" Margin="0,0,0,5"
</StackPanel>
</GroupBox>
<!-- Definizione della Grid per Punti -->
<GroupBox Header="{Binding PointsMsg}" Style="{StaticResource GroupBoxRow}"
Visibility="{Binding PointsVisibility}">
<StackPanel>
<StackPanel>
<UniformGrid Columns="2">
<UniformGrid Columns="2">
<ToggleButton Content="{Binding AddMsg}"
<ToggleButton Content="{Binding AddMsg}"
IsChecked="{Binding AddPoint}"
Style="{StaticResource OptionPanel_ToggleButton}"/>
<ToggleButton Content="{Binding RemoveMsg}" Grid.Column="1"
<ToggleButton Content="{Binding RemoveMsg}" Grid.Column="1"
IsChecked="{Binding RemovePoint}"
Style="{StaticResource OptionPanel_ToggleButton}"/>
</UniformGrid>
</UniformGrid>
</StackPanel>
</StackPanel>
</GroupBox>
</GroupBox>
<!-- Definizione della Grid per Zona rovinata -->
<GroupBox Header="{Binding DamagedAreaMsg}" Margin="0,0,0,5"
<!-- Definizione della Grid per Zona rovinata -->
<GroupBox Header="{Binding DamagedAreaMsg}" Style="{StaticResource GroupBoxRow}"
Visibility="{Binding DAVisibility}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<ToggleButton Content="{Binding NewMsg}"
<ToggleButton Content="{Binding NewMsg}"
IsChecked="{Binding NewDA}"
Style="{StaticResource OptionPanel_ToggleButton}"/>
<ToggleButton Content="{Binding DeleteMsg}" Grid.Column="1"
<ToggleButton Content="{Binding DeleteMsg}" Grid.Column="1"
IsChecked="{Binding DeleteDA}"
Style="{StaticResource OptionPanel_ToggleButton}"/>
</Grid>
</GroupBox>
</Grid>
</GroupBox>
<!-- Definizione della Grid per Punti Per il Registration -->
<GroupBox Header="{Binding PointsRegMsg}" Style="{StaticResource GroupBoxRow}"
Visibility="{Binding PointsRegVisibility}">
<StackPanel>
<UniformGrid Columns="3">
<ToggleButton Content="{Binding AddMsg}"
IsChecked="{Binding AddPointReg}"
Style="{StaticResource OptionPanel_ToggleButton}"/>
<ToggleButton Content="{Binding ModMsg}"
IsChecked="{Binding ModPointReg}"
Style="{StaticResource OptionPanel_ToggleButton}"/>
<ToggleButton Content="{Binding RemoveMsg}"
IsChecked="{Binding RemovePointReg}"
Style="{StaticResource OptionPanel_ToggleButton}"/>
</UniformGrid>
</StackPanel>
</GroupBox>
<Button Content="{Binding ConfirmPhotoMsg}"
Command="{Binding ConfirmPhotoCommand}"
@@ -183,5 +224,5 @@
Margin="0,0,0,5"/>
<!--<EgtPHOTOLib:ProjectSlabV DataContext="{StaticResource ProjectSlabVM}"/>-->
</StackPanel>
@@ -1,3 +1,5 @@
Public Class RawPartTabV
Private Sub ComboBox_SelectionChanged(sender As Object, e As SelectionChangedEventArgs)
End Sub
End Class
+314 -27
View File
@@ -42,6 +42,17 @@ Public Class RawPartTabVM
' Layer per crocette temporanee
Private m_nTempLay As Integer = GDB_ID.NULL
' Layer per crocette dei punti REG
Private m_nRegGroupId As Integer = GDB_ID.NULL
' Numero di spot inseriti nel grezzo corrente
Private m_nCountSpot As Integer = 0
' Gruppo Spot attualmente selezionato
Private m_nCurrSpotRegId As Integer = GDB_ID.NULL
Private Const COUNTSPOT As String = "CountSpot"
Private Const REG As String = "Reg"
Private Const SPOTREG_ As String = "SpotReg_"
Private Const RADSPOT As Double = 20
' Costante minima dimensione del grezzo
Private Const MIN_RAW_DIM As Double = 10
' Costante distanza di sicurezza del grezzo dal bordo
@@ -343,9 +354,11 @@ Public Class RawPartTabVM
Dim dHeight As Double = 0
If StringToLen(value, dHeight) And dHeight > -EPS_ZERO Then
OmagOFFICEMap.refStatusBarVM.ClearOutputMessage()
Dim dPrevHeight As Double = m_dHeight
m_dHeight = dHeight
UpdateRawPartHeight()
UpdateTabState()
MoveAllSpotRegistration(New Vector3d(0, 0, m_dHeight - dPrevHeight))
EstCalc.SetSlabHeight(dHeight)
OmagOFFICEMap.refMachGroupPanelVM.SelectedMachGroup.NotifyPropertyChanged("MachGroupToolTip")
Else
@@ -741,6 +754,73 @@ Public Class RawPartTabVM
End Set
End Property
'-------------------- REGISTRATION '--------------------
Private m_AddPointReg As Boolean
Public Property AddPointReg As Boolean
Get
Return m_AddPointReg
End Get
Set(value As Boolean)
If value <> m_AddPointReg Then
If value Then
PhotoWithMouse = False
m_bDrag = False
End If
m_AddPointReg = value
NotifyPropertyChanged("AddPointReg")
m_ModPointReg = False
NotifyPropertyChanged("ModPointReg")
m_RemovePointReg = False
NotifyPropertyChanged("RemovePointReg")
End If
End Set
End Property
Private m_ModPointReg As Boolean
Public Property ModPointReg As Boolean
Get
Return m_ModPointReg
End Get
Set(value As Boolean)
If value <> m_ModPointReg Then
EgtDeselectAll()
EgtResetMark(m_nCurrSpotRegId)
EgtDraw()
If value Then
PhotoWithMouse = False
End If
m_ModPointReg = value
NotifyPropertyChanged("ModPointReg")
m_AddPointReg = False
NotifyPropertyChanged("AddPointReg")
m_RemovePointReg = False
NotifyPropertyChanged("RemovePointReg")
End If
End Set
End Property
Private m_RemovePointReg As Boolean
Public Property RemovePointReg As Boolean
Get
Return m_RemovePointReg
End Get
Set(value As Boolean)
If value <> m_RemovePointReg Then
If value Then
PhotoWithMouse = False
m_bDrag = False
End If
m_RemovePointReg = value
NotifyPropertyChanged("RemovePointReg")
m_AddPointReg = False
NotifyPropertyChanged("AddPointReg")
m_ModPointReg = False
NotifyPropertyChanged("ModPointReg")
End If
End Set
End Property
'-------------------- REGISTRATION '--------------------
Private m_PointsVisibility As Visibility
Public Property PointsVisibility As Visibility
Get
@@ -824,7 +904,7 @@ Public Class RawPartTabVM
End Set
End Property
Private m_CurrMach_Background As Brush = DirectCast(New BrushConverter().ConvertFrom("#FFDDDDDD"), SolidColorBrush)
Private m_CurrMach_Background As Brush = DirectCast(New BrushConverter().ConvertFrom("#1C1D22"), SolidColorBrush)
Public Property CurrMach_Background As Brush
Get
Return m_CurrMach_Background
@@ -943,6 +1023,12 @@ Public Class RawPartTabVM
End Get
End Property
Public ReadOnly Property ModMsg As String
Get
Return EgtMsg(91668)
End Get
End Property
Public ReadOnly Property NewMsg As String
Get
Return EgtMsg(MSG_RAWPARTPAGEUC + 11)
@@ -967,6 +1053,12 @@ Public Class RawPartTabVM
End Get
End Property
Public ReadOnly Property PointsRegMsg As String
Get
Return EgtMsg(91669)
End Get
End Property
#End Region ' Messages
#Region "ToolTip"
@@ -977,6 +1069,12 @@ Public Class RawPartTabVM
End Get
End Property
Public ReadOnly Property MovePhotoToolTip As String
Get
Return EgtMsg(MSG_RAWPARTTAB + 3)
End Get
End Property
#End Region ' ToolTip
' Definizione comandi
@@ -993,9 +1091,12 @@ Public Class RawPartTabVM
' Creo riferimento a questa classe in OmagOFFICEMap
OmagOFFICEMap.SetRefRawPartTabVM(Me)
If OmagOFFICEMap.refMainWindowVM.MainWindowM.m_SlabDB Then
'Me.OmagPhoto = New OmagPhotoV(Application.Current.MainWindow(), New OmagPhotoVM)
' Me.OmagPhoto = New OmagPhotoV(Application.Current.MainWindow())
Me.OmagPhoto = New OmagPhotoV
If Not PhotoMap.ContinueApplication Then End
If Not PhotoMap.ContinueApplication Then
EgtOutLog("Key protection denied to acces to DB photo, set configuration to image directory")
End
End If
End If
' Aggiungo voci alla lista di tipi di definizione grezzo
m_TypeList.Add(EgtMsg(MSG_RAWPARTPAGEUC + 1))
@@ -1009,8 +1110,8 @@ Public Class RawPartTabVM
Friend Function InitRawPart() As Boolean
EgtSetCurrentContext(OmagOFFICEMap.refSceneHostVM.MainScene.GetCtx())
' Se abilitati, visualizzo bottone per dati lastra
Dim bSlabId As Boolean = ( GetMainPrivateProfileInt( S_RAWPART, K_SLABID, 0) <> 0)
SlabIdVisibility = If( bSlabId, Windows.Visibility.Visible, Windows.Visibility.Hidden)
Dim bSlabId As Boolean = (GetMainPrivateProfileInt(S_RAWPART, K_SLABID, 0) <> 0)
SlabIdVisibility = If(bSlabId, Windows.Visibility.Visible, Windows.Visibility.Hidden)
' Se disponibile, imposto possibilità di contorno da foto
If EstPhoto.GetContour() = GDB_ID.NULL Then
If m_TypeList.Count = 3 Then m_TypeList.RemoveAt(2)
@@ -1092,10 +1193,26 @@ Public Class RawPartTabVM
RecalcRawPart(True)
End If
' Abilitazione eventuale bottone per dati slab
SlabIdIsEnabled = ( EstCalc.GetRawId() <> GDB_ID.NULL)
SlabIdIsEnabled = (EstCalc.GetRawId() <> GDB_ID.NULL)
' Creo layer temporaneo per crocette
m_nTempLay = EgtCreateGroup(GDB_ID.ROOT)
EgtSetLevel(m_nTempLay, GDB_LV.TEMP)
' Veroifico se esiste il gruppo "REG"
Dim nIdRaws As Integer = EgtGetParent(EstCalc.GetRawId())
Dim nIdReg As Integer = EgtGetFirstNameInGroup(EgtGetParent(nIdRaws), "Reg")
If nIdReg <> GDB_ID.NULL Then
m_nRegGroupId = nIdReg
EgtGetInfo(m_nRegGroupId, COUNTSPOT, m_nCountSpot)
' Lo rendo visibile
EgtSetStatus(m_nRegGroupId, GDB_ST.ON_)
Else
' Creo layer per definire i punti di REG
m_nRegGroupId = EgtCreateGroup(EgtGetParent(nIdRaws))
EgtSetName(m_nRegGroupId, REG)
m_nCountSpot = 0
End If
' Determino modalità di definizione
OutlineIsChecked = True
If EgtExistsInfo(EstCalc.GetRawId(), KEY_RAWBYPOINTS) Then
@@ -1177,6 +1294,8 @@ Public Class RawPartTabVM
WriteMainPrivateProfileString(S_RAWPART, K_RAWOFFSX, DoubleToString(m_dOffsetX, 2))
WriteMainPrivateProfileString(S_RAWPART, K_RAWOFFSY, DoubleToString(m_dOffsetY, 2))
WriteMainPrivateProfileString(S_RAWPART, K_RAWKERF, DoubleToString(m_dKerf, 2))
' Nascondo il gruppo dei punti Reg
EgtSetStatus(m_nRegGroupId, GDB_ST.OFF)
' Se ci sono pezzi nel grezzo
If EgtGetFirstPartInRawPart(EstCalc.GetRawId()) <> GDB_ID.NULL Then
' Cancello tutte le lavorazioni
@@ -1310,7 +1429,7 @@ Public Class RawPartTabVM
AdjustRawPartPosition()
End If
' Abilitazione eventuale bottone per dati slab
SlabIdIsEnabled = ( EstCalc.GetRawId() <> GDB_ID.NULL)
SlabIdIsEnabled = (EstCalc.GetRawId() <> GDB_ID.NULL)
' Aggiorno visualizzazione
EgtDraw()
End Sub
@@ -1374,7 +1493,6 @@ Public Class RawPartTabVM
nInvert = -1
End If
Dim dOffset As Double = (-m_dKerf - m_PrecKerf) * nInvert
EgtSaveFile("c:\EgtData\OmagOFFICE\Temp\Error.nge", NGE.TEXT)
Dim nCount As Integer = 0
Dim bOK As Boolean = EgtOffsetCurve(nKerfId, dOffset, OFF_TYPE.EXTEND)
EgtSetColor(nKerfId, m_KerfCol)
@@ -1413,7 +1531,7 @@ Public Class RawPartTabVM
If EstCalc.GetRawId() = GDB_ID.NULL Then
RecalcRawPart(True)
Return
' se da cancellare
' se da cancellare
ElseIf m_dHeight < EPS_SMALL Then
' Se ci sono pezzi
If EgtGetFirstPartInRawPart(EstCalc.GetRawId()) <> GDB_ID.NULL Then
@@ -1434,7 +1552,7 @@ Public Class RawPartTabVM
End If
' Elimino il grezzo
EgtRemoveRawPart(EstCalc.GetRawId())
' altrimenti da aggiornare
' altrimenti da aggiornare
Else
' Salvo vecchia altezza
Dim dOldHeight As Double = EstCalc.GetRawHeight()
@@ -1468,7 +1586,7 @@ Public Class RawPartTabVM
EstPhoto.UpdateContour()
End If
' Abilitazione eventuale bottone per dati slab
SlabIdIsEnabled = ( EstCalc.GetRawId() <> GDB_ID.NULL)
SlabIdIsEnabled = (EstCalc.GetRawId() <> GDB_ID.NULL)
' Aggiorno visualizzazione
EgtDraw()
End Sub
@@ -1576,6 +1694,10 @@ Public Class RawPartTabVM
' Muovo eventuali cerchietti alle estremità della curva di contorno
MoveCircles(vtMove)
End If
' Muovo eventuali punti SpotReg
If m_nRegGroupId <> GDB_ID.NULL Then
MoveAllSpotRegistration(vtMove)
End If
' Incremento opportunamente l'offset della fotografia
Dim dPhotoOffsetX As Double = m_dPhotoOffsetX + vtMove.x
Dim dPhotoOffsetY As Double = m_dPhotoOffsetY + vtMove.y
@@ -1831,6 +1953,106 @@ Public Class RawPartTabVM
Return True
End Function
Private Function MoveSpotRegistration(nIdGroup As Integer, vtMove As Vector3d) As Boolean
If nIdGroup = GDB_ID.NULL Then Return False
' Non ci deve essere movimento in Z
vtMove.z = 0
' Recupero il cercio di riferimento
Dim nArcId As Integer = EgtGetFirstInGroup(nIdGroup)
Dim b3Crv As New BBox3d
EgtGetBBoxGlob(nArcId, GDB_BB.STANDARD, b3Crv)
b3Crv.Move(vtMove)
If b3Crv.Min().x < m_ptTableMin.x + 10 * EPS_SMALL Then
vtMove.x += m_ptTableMin.x + 10 * EPS_SMALL - b3Crv.Min().x
ElseIf b3Crv.Max().x > m_ptTableMin.x + m_dTableLength + 10 * EPS_SMALL Then
vtMove.x += m_ptTableMin.x + m_dTableLength - 10 * EPS_SMALL - b3Crv.Max().x
End If
If b3Crv.Min().y < m_ptTableMin.y + 10 * EPS_SMALL Then
vtMove.y += m_ptTableMin.y + 10 * EPS_SMALL - b3Crv.Min().y
ElseIf b3Crv.Max().y > m_ptTableMin.y + m_dTableWidth + 10 * EPS_SMALL Then
vtMove.y += m_ptTableMin.y + m_dTableWidth - 10 * EPS_SMALL - b3Crv.Max().y
End If
' muovo il gruppo
EgtMove(nIdGroup, vtMove)
EgtDraw()
Return True
End Function
Private Sub MoveAllSpotRegistration(vtMove As Vector3d)
Dim nId As Integer = EgtGetFirstInGroup(m_nRegGroupId)
While nId <> GDB_ID.NULL
EgtMove(nId, vtMove)
nId = EgtGetNext(nId)
End While
EgtDraw()
End Sub
Private Function CreateSpotRegistration(nLayerIdReg As Integer, ptP As Point3d, nIndexSpot As Integer) As Boolean
' creo uno specifico layer per ogni spot (definito da una croce inscritta in un cerchio)
Dim nIdSpotLay As Integer = EgtCreateGroup(nLayerIdReg)
' Aggiungo cerchio
Dim nCircId As Integer = EgtCreateCircle(nIdSpotLay, ptP, RADSPOT)
' Inserisco una croce all'interno del
Dim nLineVId As Integer = EgtCreateLinePVL(nIdSpotLay, ptP, Vector3d.Y_AX, RADSPOT)
EgtExtendCurveStartByLen(nLineVId, RADSPOT)
Dim nLineHId As Integer = EgtCreateLinePVL(nIdSpotLay, ptP, Vector3d.X_AX, RADSPOT)
EgtExtendCurveStartByLen(nLineHId, RADSPOT)
Dim nTextId As Integer = EgtCreateText(nIdSpotLay, ptP + New Vector3d(1, 1, 0), nIndexSpot.ToString, 10)
' coloro gli oggetti appena creati ed assegno il nome
Dim bOk As Boolean = EgtSetColor(nCircId, New Color3d(0, 0, 0))
bOk = bOk And EgtSetName(nCircId, SPOTREG_ & "Arc")
bOk = bOk And EgtSetColor(nLineVId, New Color3d(0, 0, 0))
bOk = bOk And EgtSetName(nLineVId, SPOTREG_ & "LineV")
bOk = bOk And EgtSetColor(nLineHId, New Color3d(0, 0, 0))
bOk = bOk And EgtSetName(nLineHId, SPOTREG_ & "LineH")
bOk = bOk And EgtSetColor(nTextId, New Color3d(255, 0, 0))
bOk = bOk And EgtSetName(nTextId, SPOTREG_ & "Text")
' assegno il nome del gruppo corrente
bOk = bOk And EgtSetName(nIdSpotLay, SPOTREG_ & nIndexSpot.ToString)
If bOk Then
' Aggiorno il contatore degli Spot
EgtSetInfo(nLayerIdReg, COUNTSPOT, nIndexSpot)
m_nCountSpot = nIndexSpot
End If
Return bOk
End Function
Private Function RemoveSpotRegistration(nSpotRegId As Integer) As Boolean
Dim nIndSpotReg As Integer = GetIndexGroupSpotReg(nSpotRegId)
If Not EgtErase(nSpotRegId) Then Return False
' faccio scorrere tutti i gruppi ed eventualmente li rinomino
Dim n_IdSR As Integer = EgtGetFirstInGroup(m_nRegGroupId)
m_nCountSpot -= 1
EgtSetInfo(m_nRegGroupId, COUNTSPOT, m_nCountSpot)
While n_IdSR <> GDB_ID.NULL
Dim nCurrIndSpotReg As Integer = GetIndexGroupSpotReg(n_IdSR)
If nCurrIndSpotReg > nIndSpotReg Then
' Recupero il testo
Dim nIdtext As Integer = EgtGetFirstNameInGroup(n_IdSR, SPOTREG_ & "Text")
nCurrIndSpotReg -= 1
EgtModifyText(nIdtext, nCurrIndSpotReg.ToString)
EgtSetName(n_IdSR, SPOTREG_ & nCurrIndSpotReg.ToString)
End If
n_IdSR = EgtGetNext(n_IdSR)
End While
EgtDraw()
Return True
End Function
Private Function GetIndexGroupSpotReg(nSpotRegId As Integer) As Integer
Dim sNameParent As String = String.Empty
EgtGetName(nSpotRegId, sNameParent)
' Ricavo l'indice dal nome
Dim sItems As String() = sNameParent.Split("_"c)
Dim nCurrIndex As Integer = 0
If sItems.Count = 2 Then
If Not Integer.TryParse(sItems(1), nCurrIndex) Then
nCurrIndex = -1
End If
End If
Return nCurrIndex
End Function
Private Function ValidateCurrMachMatThick() As Boolean
' Verifico che le lavorazioni correnti siano compatibili con materiale e spessore
' Lama
@@ -1881,7 +2103,7 @@ Public Class RawPartTabVM
OmagOFFICEMap.refOptionPanelVM.MachTabIsEnabled = True
OmagOFFICEMap.refOptionPanelVM.SimulTabIsEnabled = True
OmagOFFICEMap.refOptionPanelVM.RawPart_Background = OmagOFFICEDictionary.TabControl_Header_Background
CurrMach_Background = DirectCast(New BrushConverter().ConvertFrom("#FFDDDDDD"), SolidColorBrush)
CurrMach_Background = DirectCast(New BrushConverter().ConvertFrom("#1C1D22"), SolidColorBrush)
Else
OmagOFFICEMap.refOptionPanelVM.NestTabIsEnabled = False
OmagOFFICEMap.refOptionPanelVM.MachTabIsEnabled = False
@@ -1892,7 +2114,7 @@ Public Class RawPartTabVM
If Not ValidateCurrMachToolIsInSetUp() Then
OmagOFFICEMap.refMachinePanelVM.SetUp_Background = Brushes.Red
Else
OmagOFFICEMap.refMachinePanelVM.SetUp_Background = DirectCast(New BrushConverter().ConvertFrom("#FFDDDDDD"), SolidColorBrush)
OmagOFFICEMap.refMachinePanelVM.SetUp_Background = DirectCast(New BrushConverter().ConvertFrom("#1C1D22"), SolidColorBrush)
End If
If String.IsNullOrWhiteSpace(CurrentMachine.sCurrSawing) And String.IsNullOrWhiteSpace(CurrentMachine.sCurrWaterJetting) Then
CurrMach_Background = Brushes.Red
@@ -1945,32 +2167,32 @@ Public Class RawPartTabVM
End Property
Public Sub SlabId(ByVal param As Object)
Dim nRawId As Integer = EstCalc.GetRawId()
Dim nRawId As Integer = EstCalc.GetRawId()
If nRawId = GDB_ID.NULL Then Return
' Finestra input dati
Dim DlgSlabIdVM As New SlabIdWindowVM()
Dim DlgSlabIdV As New SlabIdWindowV(Application.Current.MainWindow, DlgSlabIdVM)
' Recupero eventuali vecchi dati della lastra
Dim sBlockName As String = "" : Dim sSlabNbr As String = ""
EgtGetInfo( nRawId, INFO_RAW_BLOCK, sBlockName)
EgtGetInfo( nRawId, INFO_RAW_SLABNBR, sSlabNbr)
DlgSlabIdVM.SetData( sBlockName, sSlabNbr)
EgtGetInfo(nRawId, INFO_RAW_BLOCK, sBlockName)
EgtGetInfo(nRawId, INFO_RAW_SLABNBR, sSlabNbr)
DlgSlabIdVM.SetData(sBlockName, sSlabNbr)
' Visualizzo finestra richiesta dati
If DlgSlabIdV.ShowDialog() Then
DlgSlabIdVM.GetData( sBlockName, sSlabNbr)
DlgSlabIdVM.GetData(sBlockName, sSlabNbr)
' Assegno info
EgtSetInfo( nRawId, INFO_RAW_BLOCK, sBlockName)
EgtSetInfo( nRawId, INFO_RAW_SLABNBR, sSlabNbr)
EgtSetInfo(nRawId, INFO_RAW_BLOCK, sBlockName)
EgtSetInfo(nRawId, INFO_RAW_SLABNBR, sSlabNbr)
' Aggiorno nome lastra
If Not String.IsNullOrWhiteSpace( sBlockName) And Not String.IsNullOrWhiteSpace( sBlockName) Then
If Not String.IsNullOrWhiteSpace(sBlockName) And Not String.IsNullOrWhiteSpace(sBlockName) Then
Dim sSlabName = sBlockName & "-" & sSlabNbr
EstCalc.SetSlabName( sSlabName)
EstCalc.SetSlabName(sSlabName)
' notifico il MachGroup Corrente
OmagOFFICEMap.refMachGroupPanelVM.SelectedMachGroup.NotifyPropertyChanged("MachGroupToolTip")
End If
' Cancello vecchio BarCode e se definito inserisco nuovo
Dim sBarCode As String = sBlockName & " - " & sSlabNbr
ShowBarCode( nRawId, sBarCode)
ShowBarCode(nRawId, sBarCode)
' Aggiorno visualizzazione
EgtDraw()
End If
@@ -2036,6 +2258,13 @@ Public Class RawPartTabVM
PhotoMap.refSearchPanelVM.InitSearchPanel()
' inizializzo la ricerca a tutti le lastre di tipo "AVAILABLE" (=1)
PhotoMap.refSearchPanelVM.State = 1
' Resetto la data corrente per la prima ricerca
PhotoMap.refSearchPanelVM.StartAddedDate = Nothing
PhotoMap.refSearchPanelVM.NotifyPropertyChanged("StartAddedDate")
PhotoMap.refSearchPanelVM.EndAddedDate = Nothing
PhotoMap.refSearchPanelVM.NotifyPropertyChanged("EndAddedDate")
PhotoMap.refSearchPanelVM.Search()
' inserisco in elenco solo i materiali della macchina corrente
AddHandler PhotoMap.refOptionPanelVM.SlabIsSelectedOFFICE, AddressOf OmagOFFICEMap.refRawPartTabVM.ClosePhotoWnd
@@ -2045,10 +2274,9 @@ Public Class RawPartTabVM
m_RefreshTimer.Interval = TimeSpan.FromMilliseconds(2000)
m_RefreshTimer.Start()
' apro la finestra per accedere al DB delle lastre
' apro la finestra per accedere al DB delle lastre (Devo crea una nuova istanza perchè la chiusura elimina la stessa)
Me.OmagPhoto = New OmagPhotoV
OmagPhoto.ShowDialog()
Me.OmagPhoto.ShowDialog()
m_RefreshTimer.Stop()
EgtSetCurrentContext(EgtPHOTOLib.MainData.PreviousContext)
@@ -2086,6 +2314,17 @@ Public Class RawPartTabVM
' aggiungo la nuova lastra
OmagOFFICEMap.refMachGroupPanelVM.SlabNameListCurr.Add(sSlabNameDB)
EgtPHOTOLib.PhotoMap.refOptionPanelVM.SetAssignedSlab(sSlabNameDB)
' Provo ad assegnare il nome della macchinata
Dim sName As String = LocalSlab.Id
EgtGetMachGroupNewName(sName)
If sName <> LocalSlab.Id Then
EgtOutLog("Nome lastra (Id lastra) già presente nell'elenco delle macchinate correnti!")
Else
OmagOFFICEMap.refMachGroupPanelVM.SelectedMachGroup.SetName(LocalSlab.Id)
EgtChangeMachGroupName(EgtGetCurrMachGroup, LocalSlab.Id)
End If
Else
' Apro dialogo per scelta immagine
Dim PhotoDlg As New Microsoft.Win32.OpenFileDialog()
@@ -2141,7 +2380,7 @@ Public Class RawPartTabVM
EstCalc.SetSlabHeight(m_dHeight)
' Visualizzo eventuale codice
Dim sBarCode As String = sBlockCode & " - " & sSlabCode
ShowBarCode( EstCalc.GetRawId(), sBarCode)
ShowBarCode(EstCalc.GetRawId(), sBarCode)
' notifico il MachGroup Corrente
OmagOFFICEMap.refMachGroupPanelVM.SelectedMachGroup.NotifyPropertyChanged("MachGroupToolTip")
' Carico contorno
@@ -2227,6 +2466,52 @@ Public Class RawPartTabVM
m_dDragPar = -1
Exit While
End If
' ---------- SELEZIONE SpotReg ----------
ElseIf m_AddPointReg Then
' Acquisisco punto da disegno
EgtUnProjectPoint(e.Location, m_ptPrev)
Dim ptRawMax As Point3d = GetRawPtMax()
m_ptPrev.z = ptRawMax.z + 0.1
' Inserisco un nuovo punto registrazione
CreateSpotRegistration(m_nRegGroupId, m_ptPrev, m_nCountSpot + 1)
EgtDraw()
' disattivo il comando di inserimento
m_AddPointReg = False
NotifyPropertyChanged("AddPointReg")
Return
ElseIf m_ModPointReg Then
If sName.StartsWith(SPOTREG_) Then
EgtDeselectAll()
EgtResetMark(m_nCurrSpotRegId)
' recupero recupero il centro della prima curva
Dim nArcId As Integer = EgtGetFirstInGroup(nSelId)
Dim nIdParent As Integer = EgtGetParent(nSelId)
EgtSelectGroupObjs(nIdParent)
EgtSetMark(nIdParent)
EgtDraw()
' Acquisisco punto da disegno
EgtUnProjectPoint(e.Location, m_ptPrev)
m_bDrag = True
m_nDragEnt = nIdParent
' Salvo l'Id del punto SpotReg da spostare
m_nCurrSpotRegId = nIdParent
' esco dal ciclo
Return
End If
ElseIf m_RemovePointReg Then
If sName.StartsWith(SPOTREG_) Then
' recupero recupero il centro della prima curva
Dim nIdParent As Integer = EgtGetParent(nSelId)
RemoveSpotRegistration(nIdParent)
EgtDraw()
EgtErase(nIdParent)
m_RemovePointReg = False
NotifyPropertyChanged("RemovePointReg")
' esco dal ciclo
Return
End If
' ---------- SELEZIONE SpotReg ----------
ElseIf sName = NAME_RAW_SOLID Then
m_bDrag = EgtUnProjectPoint(e.Location, m_ptPrev)
m_nDragEnt = -1
@@ -2377,6 +2662,8 @@ Public Class RawPartTabVM
' Eseguo modifica
If m_PhotoWithMouse Then
ModifyPhoto(ptCurr)
ElseIf m_ModPointReg Then
MoveSpotRegistration(m_nDragEnt, ptCurr - m_ptPrev)
Else
Select Case GetRawMode()
Case RAWMODE.RECTANGLE
+43 -40
View File
@@ -3,31 +3,32 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Margin="5,5,5,0">
<GroupBox Header="{Binding MachViewMsg}" Margin="0,0,0,5">
<GroupBox Header="{Binding MachViewMsg}" Style="{StaticResource GroupBoxRow}">
<UniformGrid Columns="3">
<Button Command="{Binding ToolModeCommand}"
Style="{StaticResource OptionPanel_NestingButton}">
Style="{StaticResource Simul_Button_Img}">
<Image Source="/Resources/SimulTab/ToolMode.png" Stretch="Uniform"/>
</Button>
<Button Command="{Binding HeadModeCommand}"
Style="{StaticResource OptionPanel_NestingButton}">
<Button Command="{Binding HeadModeCommand}"
Style="{StaticResource Simul_Button_Img}">
<Image Source="/Resources/SimulTab/HeadMode.png" Stretch="Uniform"/>
</Button>
<Button Command="{Binding MachModeCommand}"
Style="{StaticResource OptionPanel_NestingButton}">
Style="{StaticResource Simul_Button_Img}">
<Image Source="/Resources/SimulTab/MachMode.png" Stretch="Uniform"/>
</Button>
</UniformGrid>
</GroupBox>
<GroupBox BorderThickness="0">
<Border Style="{StaticResource Border}" Margin="0,5,0,0">
<StackPanel DataContext="{Binding MySimul}">
<UniformGrid Columns="3" Margin="0,10,0,5">
<Button Command="{Binding StepCommand}" Grid.Column="0" Grid.Row="3"
Style="{StaticResource OptionPanel_NestingButton}"
Style="{StaticResource Simul_Button_Img}"
ToolTip="{Binding OneStepToolTip}" Margin="0,0,2.5,0">
<Image Source="/Resources/SimulTab/PlayStep.png"
HorizontalAlignment="Center" VerticalAlignment="Center"
@@ -35,14 +36,14 @@
</Button>
<Button Command="{Binding PlayPauseCommand}" Grid.Column="1" Grid.Row="3"
Style="{StaticResource OptionPanel_NestingButton}"
Style="{StaticResource Simul_Button_Img}"
ToolTip="{Binding PlayPauseToolTip}" Margin="2.5,0,2.5,0">
<Image Source="{Binding PlayPauseImage}" HorizontalAlignment="Center"
VerticalAlignment="Center" Height="50" Width="50"/>
</Button>
<Button Command="{Binding StopCommand}" Grid.Column="2" Grid.Row="3"
Style="{StaticResource OptionPanel_NestingButton}"
Style="{StaticResource Simul_Button_Img}"
ToolTip="{Binding StopHomeToolTip}" Margin="2.5,0,0,0">
<Image Source="/Resources/SimulTab/Stop.png"
HorizontalAlignment="Center" VerticalAlignment="Center"
@@ -50,35 +51,41 @@
</Button>
</UniformGrid>
<TextBlock Text="{Binding StatusMsg}" FontSize="15" TextAlignment="Center" Margin="10,5,10,0"/>
<TextBlock Text="{Binding StatusMsg}" FontSize="15" TextAlignment="Center" Margin="10,5,10,0"
Style="{StaticResource SimulTextBlock}"/>
<Slider Name="SpeedSlider" Grid.Row="5" Grid.ColumnSpan="3" Height="30"
Minimum="1" Maximum="100" TickPlacement="BottomRight" TickFrequency="10"
Margin="0,5,0,0" Value="{Binding SliderValue}"/>
<Grid Margin="0,0,0,5">
<Grid >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding TName}" Grid.Row="0" FontSize="15" HorizontalAlignment="Center"
VerticalAlignment="Center" TextAlignment="Center" Margin="5,5,5,0" Grid.ColumnSpan="2" />
VerticalAlignment="Center" TextAlignment="Center" Margin="5,5,5,0" Grid.ColumnSpan="2"
Style="{StaticResource SimulTextBlock}"/>
<TextBlock Text="{Binding SValue}" Grid.Row="0" Grid.Column="2" FontSize="15" HorizontalAlignment="Center"
VerticalAlignment="Center" TextAlignment="Right" Margin="0,5,5,5" />
VerticalAlignment="Center" TextAlignment="Right" Margin="0,5,5,5"
Style="{StaticResource SimulTextBlock}"/>
<TextBlock Text="{Binding GCode}" Grid.Row="1" FontSize="15" HorizontalAlignment="Center"
VerticalAlignment="Center" TextAlignment="Center" Margin="5,5,5,0" Grid.ColumnSpan="2" />
VerticalAlignment="Center" TextAlignment="Center" Margin="5,5,5,0" Grid.ColumnSpan="2"
Style="{StaticResource SimulTextBlock}"/>
<TextBlock Text="{Binding FValue}" Grid.Row="1" Grid.Column="2" FontSize="15" HorizontalAlignment="Center"
VerticalAlignment="Center" TextAlignment="Right" Margin="0,5,5,5" />
</Grid>
<ItemsControl ItemsSource="{Binding MachineAxisList}" Margin="0,0,0,5">
VerticalAlignment="Center" TextAlignment="Right" Margin="0,5,5,5"
Style="{StaticResource SimulTextBlock}"/>
</Grid>
<ItemsControl ItemsSource="{Binding MachineAxisList}" Margin="0,0,0,5">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid Margin="0,0,0,5">
@@ -89,11 +96,12 @@
<TextBlock Text="{Binding Token}" FontSize="15"
HorizontalAlignment="Center" VerticalAlignment="Center"
TextWrapping="Wrap" TextAlignment="Center"/>
TextWrapping="Wrap" TextAlignment="Center"
Style="{StaticResource SimulTextBlock}"/>
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}" Grid.Column="1"
IsReadOnly="{Binding IsReadOnlyAxesValue}"
IsEnabled="{Binding IsEnabledAxesValue}"
TextAlignment="Right">
Style="{StaticResource AxisTextBox}">
<TextBox.InputBindings>
<KeyBinding Key="Enter" Command="{Binding ManualAxisModifyCommand}"/>
</TextBox.InputBindings>
@@ -104,10 +112,9 @@
</ItemsControl.ItemTemplate>
</ItemsControl>
</StackPanel>
</GroupBox>
</Border>
<GroupBox Header="{Binding EstimationMsg}"
IsEnabled="{Binding Estimation_IsEnabled}"
<GroupBox Header="{Binding EstimationMsg}" Style="{StaticResource GroupBoxRow}"
DataContext="{Binding MyEstim}">
<StackPanel Margin="2,2,2,0">
@@ -116,8 +123,7 @@
<TextBlock Text="{Binding TimeMsg}"/>
<TextBox Text="{Binding Time, Mode=OneWay}"
IsReadOnly="True"
TextAlignment="Right"/>
Style="{StaticResource EstimateTextBox}"/>
</UniformGrid>
@@ -125,28 +131,25 @@
<TextBlock Text="{Binding CutLenMsg}"/>
<TextBox Text="{Binding CutLen, Mode=OneWay}"
IsReadOnly="True"
TextAlignment="Right"/>
Style="{StaticResource EstimateTextBox}"/>
</UniformGrid>
<UniformGrid Columns="2" Margin="0,0,0,5">
<TextBlock Text="{Binding NetAreaMsg}"/>
<TextBox Text="{Binding NetArea, Mode=OneWay}"
IsReadOnly="True"
TextAlignment="Right"/>
Style="{StaticResource EstimateTextBox}"/>
</UniformGrid>
<UniformGrid Columns="2" Margin="0,0,0,5">
<TextBlock Text="{Binding UsageMsg}"/>
<TextBox Text="{Binding Usage, Mode=OneWay}"
IsReadOnly="True"
TextAlignment="Right"/>
Style="{StaticResource EstimateTextBox}"/>
</UniformGrid>
<Button Content="{Binding DetailsMsg}" Height="30"
<Button Content="{Binding DetailsMsg}" Style="{StaticResource SimulPanel_TextButton}"
Command="{Binding Details_Command}"
Margin="0,0,0,2"/>
+11 -5
View File
@@ -17,7 +17,13 @@ Public Class SimulTabVM
Public ReadOnly Property MachViewMsg As String
Get
Return "Vista macchina"
Return EgtMsg(91667)
End Get
End Property
Public ReadOnly Property EstimationMsg As String
Get
Return EgtMsg(91668)
End Get
End Property
@@ -137,10 +143,10 @@ Public Class SimulTabVM
MyEstim.Estimation_IsEnabled = False
End If
' Impostazioni box stime
NotifyPropertyChanged("Time")
NotifyPropertyChanged("CutLen")
NotifyPropertyChanged("NetArea")
NotifyPropertyChanged("Usage")
MyEstim.NotifyPropertyChanged("Time")
MyEstim.NotifyPropertyChanged("CutLen")
MyEstim.NotifyPropertyChanged("NetArea")
MyEstim.NotifyPropertyChanged("Usage")
' Nascondo eventuali pezzi in parcheggio
HideParkedParts()
' Nascondo eventuale contorno da foto
+11 -1
View File
@@ -21,9 +21,11 @@
</Grid.RowDefinitions>
<GroupBox Header="{Binding CurrentLanguageMsg}"
Style="{StaticResource GroupBoxOptionWnd}"
Grid.Column="0" Margin="0,0,5,5">
<UniformGrid Rows="2">
<ComboBox ItemsSource="{Binding LanguageList, Mode=OneWay}" Height="25"
Style="{DynamicResource OptionWnd_ComboBox}"
SelectedItem="{Binding SelLanguage}" DisplayMemberPath="Name"/>
<TextBlock Text="{Binding LanguageAdvertMsg}" TextWrapping="Wrap"
TextAlignment="Center"/>
@@ -31,20 +33,25 @@
</GroupBox>
<GroupBox Header="{Binding MeasureUnitMsg}"
Style="{StaticResource GroupBoxOptionWnd}"
Grid.Column="1" Margin="0,0,5,5">
<ComboBox ItemsSource="{Binding MeasureUnitList, Mode=OneWay}"
Style="{DynamicResource OptionWnd_ComboBox}"
SelectedIndex="{Binding SelMeasureUnit}"
Height="25" Width="60"/>
</GroupBox>
<GroupBox Header="{Binding SideAngleHdr}"
Style="{StaticResource GroupBoxOptionWnd}"
Grid.Row="1" Margin="0,0,5,5">
<ComboBox ItemsSource="{Binding SideModeList, Mode=OneWay}"
Style="{DynamicResource OptionWnd_ComboBox}"
SelectedIndex="{Binding SelSideModeIndex}"
Height="25"/>
</GroupBox>
<GroupBox Header="{Binding DirectInsertHdr}"
Style="{StaticResource GroupBoxOptionWnd}"
Grid.Row="2" Margin="0,0,5,5">
<UniformGrid Rows="2">
<Grid>
@@ -63,7 +70,8 @@
</GroupBox>
<GroupBox Header="{Binding TextColorMsg}"
Grid.Column="1" Grid.Row="1" Margin="0,0,5,5">
Style="{StaticResource GroupBoxOptionWnd}"
Grid.Column="1" Grid.Row="1" Margin="0,0,5,5">
<Button Height="25" Width="60" Margin="0,5,0,0" Background="{Binding TextColorBackground}"
Command="{Binding ChangeColorCommand}" IsEnabled="{Binding bSelOk}" Style="{StaticResource Option_ColorButton}">
</Button>
@@ -71,6 +79,7 @@
<!--SideAngle from color-->
<GroupBox Name="ColorToSideAngGpBx" Header="{Binding ColorToSideAngMsg}"
Style="{StaticResource GroupBoxOptionWnd}"
Grid.Column="0" Grid.Row="3" Margin="0,0,5,5" >
<Grid>
@@ -146,6 +155,7 @@
<!--Engrave from color-->
<GroupBox Name="ColorToEngraveGpBx" Header="{Binding ColorToEngraveMsg}"
Style="{StaticResource GroupBoxOptionWnd}"
Grid.Column="1" Grid.Row="3" Margin="0,0,5,5" >
<Grid>
+59 -29
View File
@@ -1,36 +1,66 @@
<EgtFloating:EgtFloatingManager x:Class="ProjectV"
<DockPanel x:Class="ProjectV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
xmlns:OmagOFFICE="clr-namespace:OmagOFFICE">
<EgtFloating:EgtFloatingTray x:Name="LEFTTRAY" DockPanel.Dock="Left">
<OmagOFFICE:OptionPanelV DataContext="{StaticResource OptionPanelVM}"
xmlns:OmagOFFICE="clr-namespace:OmagOFFICE"
Background="{StaticResource Omag_DarkGray}">
<DockPanel x:Name="LEFTTRAY" DockPanel.Dock="Left" Background="Transparent">
<OmagOFFICE:OptionPanelV DataContext="{StaticResource OptionPanelVM}"
Height="{Binding MaxHeight,ElementName=LEFTTRAY}"/>
</EgtFloating:EgtFloatingTray>
<EgtFloating:EgtFloatingTray x:Name="TOPTRAY" DockPanel.Dock="Top">
<OmagOFFICE:ShowPanelV DataContext="{StaticResource ShowPanelVM}"/>
<OmagOFFICE:ViewPanelV DataContext="{StaticResource ViewPanelVM}"/>
<OmagOFFICE:InstrumentPanelV DataContext="{StaticResource InstrumentPanelVM}"/>
<OmagOFFICE:PrintPanelV DataContext="{StaticResource PrintPanelVM}"/>
<OmagOFFICE:VeinMatchPanelV DataContext="{StaticResource VeinMatchPanelVM}"/>
<OmagOFFICE:MachinePanelV DataContext="{StaticResource MachinePanelVM}"/>
</EgtFloating:EgtFloatingTray>
<EgtFloating:EgtFloatingTray x:Name="BOTTOMTRAY" DockPanel.Dock="Bottom">
<EgtWPFLib5:EgtMachGroupPanelV DataContext="{StaticResource MachGroupPanelVM}"
Background="{StaticResource Omag_Gray}"
BorderBrush="{StaticResource Omag_Gray}"
</DockPanel>
<DockPanel x:Name="TOPTRAY" DockPanel.Dock="Top" Background="Transparent">
<!--<StackPanel Orientation="Horizontal" HorizontalAlignment="Right" Width="{Binding}">-->
<!--<DockPanel>
<OmagOFFICE:MachinePanelV DataContext="{StaticResource MachinePanelVM}" DockPanel.Dock="Left"/>
<OmagOFFICE:VeinMatchPanelV DataContext="{StaticResource VeinMatchPanelVM}" />
<OmagOFFICE:PrintPanelV DataContext="{StaticResource PrintPanelVM}" />
<OmagOFFICE:ShowPanelV DataContext="{StaticResource ShowPanelVM}" DockPanel.Dock="Right"/>
<OmagOFFICE:ViewPanelV DataContext="{StaticResource ViewPanelVM}" DockPanel.Dock="Right"/>
<OmagOFFICE:InstrumentPanelV DataContext="{StaticResource InstrumentPanelVM}" DockPanel.Dock="Right"/>
</DockPanel>-->
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="7*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="19.75*"/>
<ColumnDefinition Width="7*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="0.25*"/>
</Grid.ColumnDefinitions>
<OmagOFFICE:MachinePanelV Grid.Column="0" DataContext="{StaticResource MachinePanelVM}"/>
<OmagOFFICE:VeinMatchPanelV Grid.Column="1" DataContext="{StaticResource VeinMatchPanelVM}"/>
<OmagOFFICE:PrintPanelV Grid.Column="2" DataContext="{StaticResource PrintPanelVM}"/>
<OmagOFFICE:ShowPanelV Grid.Column="5" DataContext="{StaticResource ShowPanelVM}"/>
<OmagOFFICE:ViewPanelV Grid.Column="4" DataContext="{StaticResource ViewPanelVM}"/>
<OmagOFFICE:InstrumentPanelV Grid.Column="6" DataContext="{StaticResource InstrumentPanelVM}"/>
</Grid>
<!--<OmagOFFICE:MachinePanelV DataContext="{StaticResource MachinePanelVM}"/>
<OmagOFFICE:VeinMatchPanelV DataContext="{StaticResource VeinMatchPanelVM}"/>
<OmagOFFICE:PrintPanelV DataContext="{StaticResource PrintPanelVM}"/>
<OmagOFFICE:ShowPanelV DataContext="{StaticResource ShowPanelVM}"/>
<OmagOFFICE:ViewPanelV DataContext="{StaticResource ViewPanelVM}"/>
<OmagOFFICE:InstrumentPanelV DataContext="{StaticResource InstrumentPanelVM}"/>-->
<!--</StackPanel>-->
</DockPanel>
<DockPanel x:Name="BOTTOMTRAY" DockPanel.Dock="Bottom" Background="Transparent">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Left" Width="{Binding}">
<OmagOFFICE:MyMachGroupPanelV DataContext="{StaticResource MachGroupPanelVM}"/>
<!--<EgtWPFLib5:EgtMachGroupPanelV DataContext="{StaticResource MachGroupPanelVM}"
Background="Transparent"
BorderBrush="Transparent"
RepaetButtonStyle="{StaticResource CustomScrollBarButton}"
MachGroupButtonStyle="{StaticResource {x:Type ToggleButton}}"
IsToolBar="False"
IsTopDockable="False" IsBottomDockable="True" IsLeftDockable="False"
IsRightDockable="False"/>
</EgtFloating:EgtFloatingTray>
<!--Scena restituita sotto forma di WindowsFormsHost-->
<OmagOFFICE:SceneHostV/>
</EgtFloating:EgtFloatingManager>
IsTopDockable="False" IsBottomDockable="false" IsLeftDockable="False"
IsRightDockable="False"/>-->
</StackPanel>
</DockPanel>
<OmagOFFICE:SceneHostV />
</DockPanel>
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 703 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 637 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 610 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

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