diff --git a/Controls.DocumentViewer/DocumentViewer.resx b/Controls.DocumentViewer/DocumentViewer.resx
index 6ef662b6..cf91e5b4 100644
--- a/Controls.DocumentViewer/DocumentViewer.resx
+++ b/Controls.DocumentViewer/DocumentViewer.resx
@@ -123,21 +123,6 @@
508, 25
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAAFQAAABUCAYAAAAcaxDBAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAu
- IwAALiMBeKU/dgAAAfdJREFUeF7t3OFNw0AQROGUQAmUkBJSSjogJaQESqAUOjNzKJGiy8R2lnFki/fj
- E9KCtXdPIIEI7IZhQJAdos4OUWeHqLPDqtPHx1mGDTq4+1TYYZUORlA3rNLBCOqGVToYQd2wSgcjqBtW
- 6WAEdcMqHYygblilgxHUDat0sDlB28e80pe4c9zabtD+maVp56E/g0HQubSToEnaSdAk7SRoknYSNEk7
- CZqknQRN0k6CJmknQZO0k6BJ2knQJO0kaJJ2EjRJOwmapJ3rCKoln/I90/HyzKaD6q272yP7fldzN7i6
- POSWO+fLM1sP6t73iP2svhtc6QGCjntJ0KNcvySsfs/StHPfn8H4/fLVW3e3R5YPunXmXmMIOsXcawxB
- p5h7jSHoFHOvMQSdYu41hqBTzL3GLBq0fWz7HnTr3N0eWTTof0TQMIKGETSMoGEEDSNoGEHDCBpG0DCC
- hhE0jKBhBA1bR9B+z9K0c86vkSsIGkbQMIKGETSMoGEEDSNoGEHDCBpG0DCChhE0jKBhBA0jaBhBw54O
- 2v4cpR3mGZP/xavfszTtbOeyZ7lxkv4uU97cvrvBX2jJnBetusMtqcVy57hlP9sq7LBKB3v2VcBrQdAw
- goYRNIygYQQNI2gYQcNWG/S9HW6D7E89FXaIOjtEnR2iatj9AHBfSpIBJpk2AAAAAElFTkSuQmCC
-
-
@@ -163,39 +148,41 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
- dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAANcCAAAC77u/
- PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDIw
- IDIwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8xIj4NCiAgPGRl
- ZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiNhNTI0MzE7fS5jbHMtMntmaWxsOiM2NDYzNjM7fTwv
- c3R5bGU+DQogIDwvZGVmcz4NCiAgPHBvbHlnb24gcG9pbnRzPSIyLjkyMSAwLjg5MyAyLjkyMSAxLjg5
- MyAzLjkyMSAxLjg5MyA0LjAzOCAxLjg5MyA0LjAzOCAxNC40MzYgMy45MjEgMTQuNDM2IDIuOTIxIDE0
- LjQzNiAyLjkyMSAxNS40MzYgNS4wMzggMTUuNDM2IDUuMDM4IDAuODkzIDIuOTIxIDAuODkzIiBjbGFz
- cz0iY2xzLTEiIC8+DQogIDxwb2x5Z29uIHBvaW50cz0iNi41MzggMTYuOTg5IDYuNTM4IDE5LjEwNyA3
- LjYgMTkuMTA3IDcuNiAxOC4xMDcgNy41OTkgMTguMTA3IDcuNTk5IDE3Ljk4OSA3LjYgMTcuOTg5IDE2
- LjAxOCAxNy45ODkgMTYuMDE4IDE4LjEwNyAxNi4wMTggMTkuMTA3IDE3LjA3OSAxOS4xMDcgMTcuMDc5
- IDE2Ljk4OSA2LjUzOCAxNi45ODkiIGNsYXNzPSJjbHMtMSIgLz4NCiAgPHBhdGggZD0iTTExLjM3Mjks
- Mi44OTM1bDMuNzA2MywzLjQ5MzRWMTMuNDM2SDguNTM4MVYyLjg5MzVoMi44MzQ4bS43OTQxLTJINi41
- MzgxVjE1LjQzNkgxNy4wNzkyVjUuNTIzN0wxMi4xNjcuODkzNVoiIGNsYXNzPSJjbHMtMiIgLz4NCjwv
- c3ZnPgs=
+ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAO4CAAAC77u/
+ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
+ IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
+ MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBlbmFibGUt
+ YmFja2dyb3VuZD0ibmV3IDAgMCAzMiAzMiIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgaWQ9IkxheWVyXzEi
+ Pg0KICA8ZyBpZD0iTGF5ZXJfMV8yXyI+DQogICAgPHBvbHlnb24gcG9pbnRzPSI0LDIgNCw0IDYsNCA2
+ LDIyIDQsMjIgNCwyNCA4LDI0IDgsMiAgIiBmaWxsPSIjMzc3QUI1IiAvPg0KICAgIDxwb2x5Z29uIHBv
+ aW50cz0iMTAsMzAgMTIsMzAgMTIsMjggMjYsMjggMjYsMzAgMjgsMzAgMjgsMjYgMTAsMjYgICIgZmls
+ bD0iIzM3N0FCNSIgLz4NCiAgICA8ZyBpZD0iTGF5ZXJfMV8xXyI+DQogICAgICA8cG9seWdvbiBwb2lu
+ dHM9IjEwLDIgMTAsMjQgMjgsMjQgMjgsOCAyMiwyICAgIiBvcGFjaXR5PSIwLjYiIC8+DQogICAgICA8
+ cG9seWdvbiBwb2ludHM9IjEyLDQgMTIsMjIgMjYsMjIgMjYsMTAgMjAsMTAgMjAsNCAgICIgZmlsbD0i
+ I0ZGRkZGRiIgLz4NCiAgICAgIDxwb2x5Z29uIHBvaW50cz0iMjIsNCAyMiw4IDI2LDggICAiIGZpbGw9
+ IiNGRkZGRkYiIC8+DQogICAgPC9nPg0KICAgIDxnIGlkPSJMYXllcl8yXzFfIiAvPg0KICA8L2c+DQog
+ IDxnIGlkPSJMYXllcl8yIiAvPg0KPC9zdmc+Cw==
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
- dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAJcCAAAC77u/
- PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDIw
- IDIwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8xIj4NCiAgPGRl
- ZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiM3MDZmNmY7fTwvc3R5bGU+DQogIDwvZGVmcz4NCiAg
- PHJlY3QgeD0iNi4wNTg2IiB5PSI3LjYwNzUiIHdpZHRoPSI3Ljg4MzgiIGhlaWdodD0iMS41MDgxIiBy
- eD0iMCIgcnk9IjAiIGNsYXNzPSJjbHMtMSIgLz4NCiAgPHJlY3QgeD0iNi4wNTg2IiB5PSIxMC44ODQ0
- IiB3aWR0aD0iNy44ODM4IiBoZWlnaHQ9IjEuNTA4MSIgcng9IjAiIHJ5PSIwIiBjbGFzcz0iY2xzLTEi
- IC8+DQogIDxyZWN0IHg9IjYuMDU4NiIgeT0iMTQuMTYxOSIgd2lkdGg9IjcuODgzOCIgaGVpZ2h0PSIx
- LjUwODEiIHJ4PSIwIiByeT0iMCIgY2xhc3M9ImNscy0xIiAvPg0KICA8cmVjdCB4PSI2LjA1ODYiIHk9
- IjQuMzMiIHdpZHRoPSIzLjc3OTMiIGhlaWdodD0iMS41MDgxIiByeD0iMCIgcnk9IjAiIGNsYXNzPSJj
- bHMtMSIgLz4NCiAgPHBhdGggZD0iTTE3LDE5LjEwNjVIM1YuODkzNWg4Ljc1MUwxNyw2LjE3MVpNNSwx
- Ny4wOTU2SDE1VjcuMDAzNkwxMC45MjI5LDIuOTA0NEg1WiIgY2xhc3M9ImNscy0xIiAvPg0KPC9zdmc+
- Cw==
+ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAACMDAAAC77u/
+ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
+ IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
+ MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBlbmFibGUt
+ YmFja2dyb3VuZD0ibmV3IDAgMCAzMiAzMiIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgaWQ9IkxheWVyXzEi
+ Pg0KICA8ZyBpZD0iTGF5ZXJfMV8xXyI+DQogICAgPHBvbHlnb24gcG9pbnRzPSI0LDAgNCwzMCAyOCwz
+ MCAyOCw3IDIxLDAgICIgb3BhY2l0eT0iMC42IiAvPg0KICAgIDxwb2x5Z29uIHBvaW50cz0iNiwyIDYs
+ MjggMjYsMjggMjYsMTAgMTgsMTAgMTgsMiAgIiBmaWxsPSIjRkZGRkZGIiAvPg0KICAgIDxwb2x5Z29u
+ IHBvaW50cz0iMjAsMiAyMCw4IDI2LDggICIgZmlsbD0iI0ZGRkZGRiIgLz4NCiAgPC9nPg0KICA8ZyBp
+ ZD0iTGF5ZXJfMiIgLz4NCiAgPHJlY3QgeD0iOCIgeT0iOCIgd2lkdGg9IjgiIGhlaWdodD0iMiIgcng9
+ IjAiIHJ5PSIwIiBvcGFjaXR5PSIwLjMiIC8+DQogIDxyZWN0IHg9IjgiIHk9IjEyIiB3aWR0aD0iMTYi
+ IGhlaWdodD0iMiIgcng9IjAiIHJ5PSIwIiBvcGFjaXR5PSIwLjMiIC8+DQogIDxyZWN0IHg9IjgiIHk9
+ IjE2IiB3aWR0aD0iMTYiIGhlaWdodD0iMiIgcng9IjAiIHJ5PSIwIiBvcGFjaXR5PSIwLjMiIC8+DQog
+ IDxyZWN0IHg9IjgiIHk9IjIwIiB3aWR0aD0iMTYiIGhlaWdodD0iMiIgcng9IjAiIHJ5PSIwIiBvcGFj
+ aXR5PSIwLjMiIC8+DQo8L3N2Zz4L
@@ -241,83 +228,106 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
- dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAHIBAAAC77u/
- PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDIw
- IDIwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8xIj4NCiAgPGRl
- ZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiNhNTI0MzE7fTwvc3R5bGU+DQogIDwvZGVmcz4NCiAg
- PHBhdGggZD0iTTExLjI5MiwxOC42OTh2LTJBNi42OTgsNi42OTgsMCwxLDAsNC41OTM4LDEwaC0yQTgu
- Njk4Myw4LjY5ODMsMCwxLDEsMTEuMjkyLDE4LjY5OFoiIGNsYXNzPSJjbHMtMSIgLz4NCiAgPHBvbHls
- aW5lIHBvaW50cz0iMC4wMSAxMCAzLjU2NiAxNC45MjQgNy4xMjIgMTAiIGNsYXNzPSJjbHMtMSIgLz4N
- Cjwvc3ZnPgs=
+ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALgCAAAC77u/
+ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
+ IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
+ MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
+ Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
+ MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ
+ LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD
+ MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
+ Y2l0eTowLjc1O30KPC9zdHlsZT4NCiAgPGcgaWQ9IlJvdGF0ZUNvdW50ZXJjbG9ja3dpc2UiPg0KICAg
+ IDxwYXRoIGQ9Ik0xOCw0QzExLjQsNCw2LDkuNCw2LDE2SDFsNyw3bDctN2gtNWMwLTQuNCwzLjYtOCw4
+ LThzOCwzLjYsOCw4cy0zLjYsOC04LDhjLTEuNywwLTMuMy0wLjUtNC42LTEuNCAgIGwtMi45LDIuOWMy
+ LDEuNiw0LjYsMi42LDcuNCwyLjZjNi42LDAsMTItNS40LDEyLTEyQzMwLDkuNCwyNC42LDQsMTgsNHoi
+ IGNsYXNzPSJHcmVlbiIgLz4NCiAgPC9nPg0KPC9zdmc+Cw==
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
- dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAHMBAAAC77u/
- PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDIw
- IDIwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8xIj4NCiAgPGRl
- ZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiNhNTI0MzE7fTwvc3R5bGU+DQogIDwvZGVmcz4NCiAg
- PHBhdGggZD0iTTguNzA4LDE4LjY5OHYtMkE2LjY5OCw2LjY5OCwwLDEsMSwxNS40MDYyLDEwaDJBOC42
- OTgzLDguNjk4MywwLDEsMCw4LjcwOCwxOC42OThaIiBjbGFzcz0iY2xzLTEiIC8+DQogIDxwb2x5bGlu
- ZSBwb2ludHM9IjE5Ljk5IDEwIDE2LjQzNCAxNC45MjQgMTIuODc4IDEwIiBjbGFzcz0iY2xzLTEiIC8+
- DQo8L3N2Zz4L
+ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALACAAAC77u/
+ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
+ IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
+ MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
+ Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
+ MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ
+ LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD
+ MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
+ Y2l0eTowLjc1O30KPC9zdHlsZT4NCiAgPGcgaWQ9IlJvdGF0ZUNsb2Nrd2lzZSI+DQogICAgPHBhdGgg
+ ZD0iTTE4LjYsMjIuNkMxNy4zLDIzLjUsMTUuNywyNCwxNCwyNGMtNC40LDAtOC0zLjYtOC04czMuNi04
+ LDgtOHM4LDMuNiw4LDhoLTVsNyw3bDctN2gtNWMwLTYuNi01LjQtMTItMTItMTIgICBTMiw5LjQsMiwx
+ NmMwLDYuNiw1LjQsMTIsMTIsMTJjMi44LDAsNS40LTEsNy40LTIuNkwxOC42LDIyLjZ6IiBjbGFzcz0i
+ R3JlZW4iIC8+DQogIDwvZz4NCjwvc3ZnPgs=
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
- dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAIIBAAAC77u/
- PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDIw
- IDIwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8xIj4NCiAgPGRl
- ZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiNhNTI0MzE7fS5jbHMtMntmaWxsOiM2NDYzNjM7fTwv
- c3R5bGU+DQogIDwvZGVmcz4NCiAgPHJlY3QgeD0iMi45ODk3IiB5PSIyLjk5MDEiIHdpZHRoPSI3LjAx
- MDMiIGhlaWdodD0iMTQuMDIiIHJ4PSIwIiByeT0iMCIgY2xhc3M9ImNscy0xIiAvPg0KICA8cGF0aCBk
- PSJNMTkuMDEsMTkuMDFILjk5Vi45OUgxOS4wMVpNMi45OSwxNy4wMUgxNy4wMVYyLjk5SDIuOTlaIiBj
- bGFzcz0iY2xzLTIiIC8+DQo8L3N2Zz4L
+ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAC0CAAAC77u/
+ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
+ IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
+ MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
+ Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
+ MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku
+ R3JlZW57ZmlsbDojMDM5QzIzO30KPC9zdHlsZT4NCiAgPHBhdGggZD0iTTIsMzBWMmMwLTEuMSwwLjkt
+ MiwyLTJoMTB2MzJINEMyLjksMzIsMiwzMS4xLDIsMzB6IiBjbGFzcz0iR3JlZW4iIC8+DQogIDxwYXRo
+ IGQ9Ik0zMiwzMVYxYzAtMC41LTAuNS0xLTEtMUgxQzAuNSwwLDAsMC41LDAsMXYzMGMwLDAuNSwwLjUs
+ MSwxLDFoMzBDMzEuNSwzMiwzMiwzMS41LDMyLDMxeiBNMiwzMFYyaDI4djI4SDJ6IiBjbGFzcz0iQmxh
+ Y2siIC8+DQo8L3N2Zz4L
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
- dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAIABAAAC77u/
- PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDIw
- IDIwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8xIj4NCiAgPGRl
- ZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiNhNTI0MzE7fS5jbHMtMntmaWxsOiM2NDYzNjM7fTwv
- c3R5bGU+DQogIDwvZGVmcz4NCiAgPHJlY3QgeD0iMi45ODk3IiB5PSIyLjk5IiB3aWR0aD0iMTQuMDIw
- NSIgaGVpZ2h0PSI3LjAxIiByeD0iMCIgcnk9IjAiIGNsYXNzPSJjbHMtMSIgLz4NCiAgPHBhdGggZD0i
- TTE5LjAxLDE5LjAxSC45OVYuOTlIMTkuMDFaTTIuOTksMTcuMDFIMTcuMDFWMi45OUgyLjk5WiIgY2xh
- c3M9ImNscy0yIiAvPg0KPC9zdmc+Cw==
+ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAACQCAAAC77u/
+ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
+ IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
+ MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
+ Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
+ MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku
+ R3JlZW57ZmlsbDojMDM5QzIzO30KPC9zdHlsZT4NCiAgPHBhdGggZD0iTTIsMmgyOGMxLjEsMCwyLDAu
+ OSwyLDJ2MTBIMFY0QzAsMi45LDAuOSwyLDIsMnoiIGNsYXNzPSJHcmVlbiIgLz4NCiAgPHBhdGggZD0i
+ TTEsMzJoMzBjMC41LDAsMS0wLjUsMS0xVjFjMC0wLjUtMC41LTEtMS0xSDFDMC41LDAsMCwwLjUsMCwx
+ djMwQzAsMzEuNSwwLjUsMzIsMSwzMnogTTIsMmgyOHYyOEgyVjJ6IiBjbGFzcz0iQmxhY2siIC8+DQo8
+ L3N2Zz4L
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
- dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAANUBAAAC77u/
- PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDIw
- IDIwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8xIj4NCiAgPGRl
- ZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiNhNTI0MzE7fTwvc3R5bGU+DQogIDwvZGVmcz4NCiAg
- PHBhdGggZD0iTTIwLDIwLDYuNjY2NywxMC4wMDA3LDIwLDBaIiBjbGFzcz0iY2xzLTEiIC8+DQogIDxw
- YXRoIGQ9Ik0xMy4zMzMzLDE1VjVsLTYuNjY2Niw1WiIgY2xhc3M9ImNscy0xIiAvPg0KICA8cG9seWdv
- biBwb2ludHM9IjEyLjYzIDE2LjQwNSA1Ljk2MyAxMS40MDUgNC4wOTEgMTAuMDAxIDUuOTYzIDguNTk2
- IDEyLjYzIDMuNTk2IDEzLjMzMyAzLjA2OCAxMy4zMzMgMCAwIDEwLjAwMSAxMy4zMzMgMjAgMTMuMzMz
- IDE2LjkzMiAxMi42MyAxNi40MDUiIGNsYXNzPSJjbHMtMSIgLz4NCjwvc3ZnPgs=
+ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAKACAAAC77u/
+ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
+ IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
+ MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
+ Y2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMiAzMiI+DQogIDxz
+ dHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQo8L3N0eWxlPg0KICA8ZyBp
+ ZD0iTGF5ZXJfMSI+DQogICAgPHBhdGggZD0iTTguMywxNS42Yy0wLjUtMC4zLTAuNS0wLjgsMC0xLjFs
+ MTEuOC03LjNWNC42YzAtMC42LTAuNC0wLjgtMC45LTAuNUwyLjQsMTQuNWMtMC41LDAuMy0wLjUsMC44
+ LDAsMS4xICAgbDE2LjgsMTAuM2MwLjUsMC4zLDAuOSwwLjEsMC45LTAuNXYtMi42TDguMywxNS42eiIg
+ Y2xhc3M9IkJsdWUiIC8+DQogICAgPHBhdGggZD0iTTEyLjMsMTQuNWMtMC41LDAuMy0wLjUsMC44LDAs
+ MS4xbDE2LjgsMTAuM2MwLjUsMC4zLDAuOSwwLjEsMC45LTAuNVY0LjdjMC0wLjYtMC40LTAuOC0wLjkt
+ MC41TDEyLjMsMTQuNXoiIGNsYXNzPSJCbHVlIiAvPg0KICA8L2c+DQogIDxnIGlkPSJMYXllcl8yIiAv
+ Pg0KPC9zdmc+Cw==
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
- dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAP8AAAAC77u/
- PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDIw
- IDIwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8xIj4NCiAgPGRl
- ZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiNhNTI0MzE7fTwvc3R5bGU+DQogIDwvZGVmcz4NCiAg
- PHBhdGggZD0iTTE2LjY2NjcsMjAsMy4zMzMzLDEwLjAwMDcsMTYuNjY2NywwWiIgY2xhc3M9ImNscy0x
- IiAvPg0KPC9zdmc+Cw==
+ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALwBAAAC77u/
+ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
+ IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
+ MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
+ Y2U9InByZXNlcnZlIiBpZD0iUHJldiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMzIg
+ MzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KPC9zdHls
+ ZT4NCiAgPHBhdGggZD0iTTIzLjEsNC4xQzIzLjYsMy44LDI0LDQuMSwyNCw0LjZ2MjAuN2MwLDAuNi0w
+ LjQsMC44LTAuOSwwLjVMNi40LDE1LjVjLTAuNS0wLjMtMC41LTAuOCwwLTEuMUwyMy4xLDQuMXoiIGNs
+ YXNzPSJCbHVlIiAvPg0KPC9zdmc+Cw==
diff --git a/Controls.DocumentViewer/DocumentViewer.vb b/Controls.DocumentViewer/DocumentViewer.vb
index ff0b2293..3bb75763 100644
--- a/Controls.DocumentViewer/DocumentViewer.vb
+++ b/Controls.DocumentViewer/DocumentViewer.vb
@@ -31,6 +31,7 @@ Public Class DocumentViewer
Private _hide_file_info_from_user As Boolean = False
Private _FilePath As String
+
' List of all created temp files when converting msg files
Private _TempFiles As New List(Of String)
@@ -40,6 +41,8 @@ Public Class DocumentViewer
UpdateMainUi()
End Sub
+ Public Property FileLoaded As Boolean = False
+
'''
''' Initialize the Viewer
'''
@@ -66,6 +69,8 @@ Public Class DocumentViewer
'''
'''
Public Sub LoadFile(FilePath As String)
+ FileLoaded = False
+
If _licenseKey = String.Empty Then
_logger.Warn("License key was not provided. File {0} not loaded.", FilePath)
Exit Sub
@@ -73,12 +78,19 @@ Public Class DocumentViewer
_logger.Info("Loading File {0}", FilePath)
- DoLoadFile(FilePath)
+ Dim oFileLoaded = DoLoadFile(FilePath)
_FilePath = FilePath
+
+ If oFileLoaded = True Then
+ FileLoaded = True
+ End If
+
UpdateMainUi()
End Sub
Public Sub LoadFile(FileName As String, Stream As Stream)
+ FileLoaded = False
+
If _licenseKey = String.Empty Then
_logger.Warn("License key was not provided. File [{0}] not loaded.", FileName)
Exit Sub
@@ -88,7 +100,11 @@ Public Class DocumentViewer
_logger.Info("Loading File [{0}]", FileName)
- DoLoadFile(Stream, oExtension)
+ Dim ofileloaded = DoLoadFile(Stream, oExtension)
+
+ If oFileLoaded = True Then
+ FileLoaded = True
+ End If
UpdateMainUi()
End Sub
@@ -114,22 +130,23 @@ Public Class DocumentViewer
Dim oExtension As String = oFileInfo.Extension.ToUpper
Select Case oExtension.ToUpper
Case ".MSG"
-
RichEditControl1.CreateNewDocument()
-
Case ".EML", ".DOC", ".DOCX", ".ODT", ".RTF", ".TXT"
RichEditControl1.CreateNewDocument()
+
Case ".XLSX", ".XLS", "CSV"
SpreadsheetControl1.CreateNewDocument()
+
Case Else
GdViewer.CloseDocument()
+
End Select
Catch ex As Exception
_logger.Warn($"Unexpected error in FreeFile: {ex.Message}")
End Try
End Sub
- Private Sub DoLoadFile(FilePath As String)
+ Private Function DoLoadFile(FilePath As String) As Boolean
Try
Dim oFileInfo = New IO.FileInfo(FilePath)
Dim oExtension As String = oFileInfo.Extension.ToUpper
@@ -183,12 +200,15 @@ Public Class DocumentViewer
End Select
UpdateMainUi()
+
+ Return True
Catch ex As Exception
_logger.Error(ex)
+ Return False
End Try
- End Sub
+ End Function
- Private Sub DoLoadFile(Stream As Stream, Extension As String)
+ Private Function DoLoadFile(Stream As Stream, Extension As String) As Boolean
Try
RichEditControl1.Visible = False
RichEditControl1.Dock = DockStyle.None
@@ -240,10 +260,13 @@ Public Class DocumentViewer
End Select
UpdateMainUi()
+
+ Return True
Catch ex As Exception
_logger.Error(ex)
+ Return False
End Try
- End Sub
+ End Function
Private Function GetSpreadsheetFormat(Extension) As Spreadsheet.DocumentFormat
Dim oFormat As Spreadsheet.DocumentFormat = Spreadsheet.DocumentFormat.Undefined
@@ -257,7 +280,7 @@ Public Class DocumentViewer
Return oFormat
End Function
- Private Function GetDocumentFormat(Extension)
+ Private Function GetDocumentFormat(Extension) As XtraRichEdit.DocumentFormat
Dim oFormat As XtraRichEdit.DocumentFormat = XtraRichEdit.DocumentFormat.Undefined
Select Case Extension.ToUpper
@@ -444,4 +467,5 @@ Public Class DocumentViewer
Private Sub btnSettings_Click(sender As Object, e As XtraBars.ItemClickEventArgs) Handles buttonSettings.ItemClick
End Sub
+
End Class
diff --git a/Controls.DocumentViewer/DocumentViewer.vbproj b/Controls.DocumentViewer/DocumentViewer.vbproj
index d572e461..80ad1687 100644
--- a/Controls.DocumentViewer/DocumentViewer.vbproj
+++ b/Controls.DocumentViewer/DocumentViewer.vbproj
@@ -121,12 +121,6 @@
UserControl
-
- frmViewerPrint.vb
-
-
- Form
-
frmViewerSettings.vb
@@ -153,9 +147,6 @@
DocumentViewer.vb
-
- frmViewerPrint.vb
-
frmViewerSettings.vb
diff --git a/Controls.DocumentViewer/My Project/AssemblyInfo.vb b/Controls.DocumentViewer/My Project/AssemblyInfo.vb
index 25002b89..3792aba0 100644
--- a/Controls.DocumentViewer/My Project/AssemblyInfo.vb
+++ b/Controls.DocumentViewer/My Project/AssemblyInfo.vb
@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
'
-
-
+
+
diff --git a/Controls.DocumentViewer/frmViewerPrint.Designer.vb b/Controls.DocumentViewer/frmViewerPrint.Designer.vb
deleted file mode 100644
index 9a1feb54..00000000
--- a/Controls.DocumentViewer/frmViewerPrint.Designer.vb
+++ /dev/null
@@ -1,348 +0,0 @@
- _
-Partial Class frmViewerPrint
- Inherits System.Windows.Forms.Form
-
- 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
- _
- Protected Overrides Sub Dispose(ByVal disposing As Boolean)
- Try
- If disposing AndAlso components IsNot Nothing Then
- components.Dispose()
- End If
- Finally
- MyBase.Dispose(disposing)
- End Try
- End Sub
-
- 'Wird vom Windows Form-Designer benötigt.
- Private components As System.ComponentModel.IContainer
-
- 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich.
- 'Das Bearbeiten ist mit dem Windows Form-Designer möglich.
- 'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
- _
- Private Sub InitializeComponent()
- Me.numCopies = New System.Windows.Forms.NumericUpDown()
- Me.cmbPrintAlignment = New System.Windows.Forms.ComboBox()
- Me.chkCollate = New System.Windows.Forms.CheckBox()
- Me.lblPrintAlignment = New System.Windows.Forms.Label()
- Me.grpPageRange = New System.Windows.Forms.GroupBox()
- Me.txtPageRangeEnd = New System.Windows.Forms.TextBox()
- Me.lblPageRangeTo = New System.Windows.Forms.Label()
- Me.txtPageRangeStart = New System.Windows.Forms.TextBox()
- Me.rbPageRangePages = New System.Windows.Forms.RadioButton()
- Me.rbPageRangeCurrent = New System.Windows.Forms.RadioButton()
- Me.rbPageRangeSelection = New System.Windows.Forms.RadioButton()
- Me.rbPageRangeAll = New System.Windows.Forms.RadioButton()
- Me.cmbPrintSize = New System.Windows.Forms.ComboBox()
- Me.btnPrinterProperties = New System.Windows.Forms.Button()
- Me.lblPrintSize = New System.Windows.Forms.Label()
- Me.cmbPrinterList = New System.Windows.Forms.ComboBox()
- Me.lblCopies = New System.Windows.Forms.Label()
- Me.lblPrinter = New System.Windows.Forms.Label()
- Me.btnCancel = New System.Windows.Forms.Button()
- Me.btnPrint = New System.Windows.Forms.Button()
- Me.grpOrientation = New System.Windows.Forms.GroupBox()
- Me.rbOrientationLandscape = New System.Windows.Forms.RadioButton()
- Me.rbOrientationPortrait = New System.Windows.Forms.RadioButton()
- Me.rbOrientationAutomatic = New System.Windows.Forms.RadioButton()
- CType(Me.numCopies, System.ComponentModel.ISupportInitialize).BeginInit()
- Me.grpPageRange.SuspendLayout()
- Me.grpOrientation.SuspendLayout()
- Me.SuspendLayout()
- '
- 'numCopies
- '
- Me.numCopies.Location = New System.Drawing.Point(140, 33)
- Me.numCopies.Name = "numCopies"
- Me.numCopies.Size = New System.Drawing.Size(61, 20)
- Me.numCopies.TabIndex = 47
- Me.numCopies.TextAlign = System.Windows.Forms.HorizontalAlignment.Right
- Me.numCopies.Value = New Decimal(New Integer() {1, 0, 0, 0})
- '
- 'cmbPrintAlignment
- '
- Me.cmbPrintAlignment.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList
- Me.cmbPrintAlignment.FormattingEnabled = True
- Me.cmbPrintAlignment.Location = New System.Drawing.Point(140, 87)
- Me.cmbPrintAlignment.Name = "cmbPrintAlignment"
- Me.cmbPrintAlignment.Size = New System.Drawing.Size(198, 21)
- Me.cmbPrintAlignment.TabIndex = 38
- '
- 'chkCollate
- '
- Me.chkCollate.AutoSize = True
- Me.chkCollate.Location = New System.Drawing.Point(207, 37)
- Me.chkCollate.Name = "chkCollate"
- Me.chkCollate.Size = New System.Drawing.Size(58, 17)
- Me.chkCollate.TabIndex = 36
- Me.chkCollate.Text = "Collate"
- Me.chkCollate.UseVisualStyleBackColor = True
- '
- 'lblPrintAlignment
- '
- Me.lblPrintAlignment.AutoSize = True
- Me.lblPrintAlignment.Location = New System.Drawing.Point(12, 90)
- Me.lblPrintAlignment.Name = "lblPrintAlignment"
- Me.lblPrintAlignment.Size = New System.Drawing.Size(53, 13)
- Me.lblPrintAlignment.TabIndex = 45
- Me.lblPrintAlignment.Text = "Alignment"
- '
- 'grpPageRange
- '
- Me.grpPageRange.Controls.Add(Me.txtPageRangeEnd)
- Me.grpPageRange.Controls.Add(Me.lblPageRangeTo)
- Me.grpPageRange.Controls.Add(Me.txtPageRangeStart)
- Me.grpPageRange.Controls.Add(Me.rbPageRangePages)
- Me.grpPageRange.Controls.Add(Me.rbPageRangeCurrent)
- Me.grpPageRange.Controls.Add(Me.rbPageRangeSelection)
- Me.grpPageRange.Controls.Add(Me.rbPageRangeAll)
- Me.grpPageRange.Location = New System.Drawing.Point(236, 114)
- Me.grpPageRange.Name = "grpPageRange"
- Me.grpPageRange.Size = New System.Drawing.Size(288, 100)
- Me.grpPageRange.TabIndex = 42
- Me.grpPageRange.TabStop = False
- Me.grpPageRange.Text = "Page range"
- '
- 'txtPageRangeEnd
- '
- Me.txtPageRangeEnd.Location = New System.Drawing.Point(169, 68)
- Me.txtPageRangeEnd.Name = "txtPageRangeEnd"
- Me.txtPageRangeEnd.Size = New System.Drawing.Size(42, 20)
- Me.txtPageRangeEnd.TabIndex = 17
- '
- 'lblPageRangeTo
- '
- Me.lblPageRangeTo.AutoSize = True
- Me.lblPageRangeTo.Location = New System.Drawing.Point(146, 73)
- Me.lblPageRangeTo.Name = "lblPageRangeTo"
- Me.lblPageRangeTo.Size = New System.Drawing.Size(16, 13)
- Me.lblPageRangeTo.TabIndex = 16
- Me.lblPageRangeTo.Text = "to"
- Me.lblPageRangeTo.TextAlign = System.Drawing.ContentAlignment.TopCenter
- '
- 'txtPageRangeStart
- '
- Me.txtPageRangeStart.Location = New System.Drawing.Point(98, 68)
- Me.txtPageRangeStart.Name = "txtPageRangeStart"
- Me.txtPageRangeStart.Size = New System.Drawing.Size(42, 20)
- Me.txtPageRangeStart.TabIndex = 16
- '
- 'rbPageRangePages
- '
- Me.rbPageRangePages.AutoSize = True
- Me.rbPageRangePages.Location = New System.Drawing.Point(13, 69)
- Me.rbPageRangePages.Name = "rbPageRangePages"
- Me.rbPageRangePages.Size = New System.Drawing.Size(78, 17)
- Me.rbPageRangePages.TabIndex = 15
- Me.rbPageRangePages.TabStop = True
- Me.rbPageRangePages.Text = "Pages from"
- Me.rbPageRangePages.UseVisualStyleBackColor = True
- '
- 'rbPageRangeCurrent
- '
- Me.rbPageRangeCurrent.AutoSize = True
- Me.rbPageRangeCurrent.Location = New System.Drawing.Point(149, 21)
- Me.rbPageRangeCurrent.Name = "rbPageRangeCurrent"
- Me.rbPageRangeCurrent.Size = New System.Drawing.Size(86, 17)
- Me.rbPageRangeCurrent.TabIndex = 14
- Me.rbPageRangeCurrent.TabStop = True
- Me.rbPageRangeCurrent.Text = "Current page"
- Me.rbPageRangeCurrent.UseVisualStyleBackColor = True
- '
- 'rbPageRangeSelection
- '
- Me.rbPageRangeSelection.AutoSize = True
- Me.rbPageRangeSelection.Enabled = False
- Me.rbPageRangeSelection.Location = New System.Drawing.Point(13, 45)
- Me.rbPageRangeSelection.Name = "rbPageRangeSelection"
- Me.rbPageRangeSelection.Size = New System.Drawing.Size(100, 17)
- Me.rbPageRangeSelection.TabIndex = 13
- Me.rbPageRangeSelection.TabStop = True
- Me.rbPageRangeSelection.Text = "Checked pages"
- Me.rbPageRangeSelection.UseVisualStyleBackColor = True
- '
- 'rbPageRangeAll
- '
- Me.rbPageRangeAll.AutoSize = True
- Me.rbPageRangeAll.Checked = True
- Me.rbPageRangeAll.Location = New System.Drawing.Point(13, 21)
- Me.rbPageRangeAll.Name = "rbPageRangeAll"
- Me.rbPageRangeAll.Size = New System.Drawing.Size(36, 17)
- Me.rbPageRangeAll.TabIndex = 12
- Me.rbPageRangeAll.TabStop = True
- Me.rbPageRangeAll.Text = "All"
- Me.rbPageRangeAll.UseVisualStyleBackColor = True
- '
- 'cmbPrintSize
- '
- Me.cmbPrintSize.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList
- Me.cmbPrintSize.FormattingEnabled = True
- Me.cmbPrintSize.Location = New System.Drawing.Point(140, 60)
- Me.cmbPrintSize.Name = "cmbPrintSize"
- Me.cmbPrintSize.Size = New System.Drawing.Size(198, 21)
- Me.cmbPrintSize.TabIndex = 37
- '
- 'btnPrinterProperties
- '
- Me.btnPrinterProperties.Location = New System.Drawing.Point(417, 5)
- Me.btnPrinterProperties.Name = "btnPrinterProperties"
- Me.btnPrinterProperties.Size = New System.Drawing.Size(107, 23)
- Me.btnPrinterProperties.TabIndex = 35
- Me.btnPrinterProperties.Text = "Properties"
- Me.btnPrinterProperties.UseVisualStyleBackColor = True
- '
- 'lblPrintSize
- '
- Me.lblPrintSize.AutoSize = True
- Me.lblPrintSize.Location = New System.Drawing.Point(12, 63)
- Me.lblPrintSize.Name = "lblPrintSize"
- Me.lblPrintSize.Size = New System.Drawing.Size(49, 13)
- Me.lblPrintSize.TabIndex = 43
- Me.lblPrintSize.Text = "Print size"
- '
- 'cmbPrinterList
- '
- Me.cmbPrinterList.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList
- Me.cmbPrinterList.FormattingEnabled = True
- Me.cmbPrinterList.Location = New System.Drawing.Point(140, 6)
- Me.cmbPrinterList.Name = "cmbPrinterList"
- Me.cmbPrinterList.Size = New System.Drawing.Size(271, 21)
- Me.cmbPrinterList.TabIndex = 34
- '
- 'lblCopies
- '
- Me.lblCopies.AutoSize = True
- Me.lblCopies.Location = New System.Drawing.Point(12, 35)
- Me.lblCopies.Name = "lblCopies"
- Me.lblCopies.Size = New System.Drawing.Size(39, 13)
- Me.lblCopies.TabIndex = 41
- Me.lblCopies.Text = "Copies"
- '
- 'lblPrinter
- '
- Me.lblPrinter.AutoSize = True
- Me.lblPrinter.Location = New System.Drawing.Point(12, 9)
- Me.lblPrinter.Name = "lblPrinter"
- Me.lblPrinter.Size = New System.Drawing.Size(37, 13)
- Me.lblPrinter.TabIndex = 39
- Me.lblPrinter.Text = "Printer"
- '
- 'btnCancel
- '
- Me.btnCancel.Location = New System.Drawing.Point(449, 230)
- Me.btnCancel.Name = "btnCancel"
- Me.btnCancel.Size = New System.Drawing.Size(75, 23)
- Me.btnCancel.TabIndex = 46
- Me.btnCancel.Text = "Cancel"
- Me.btnCancel.UseVisualStyleBackColor = True
- '
- 'btnPrint
- '
- Me.btnPrint.Location = New System.Drawing.Point(365, 230)
- Me.btnPrint.Name = "btnPrint"
- Me.btnPrint.Size = New System.Drawing.Size(74, 23)
- Me.btnPrint.TabIndex = 44
- Me.btnPrint.Text = "Print"
- Me.btnPrint.UseVisualStyleBackColor = True
- '
- 'grpOrientation
- '
- Me.grpOrientation.Controls.Add(Me.rbOrientationLandscape)
- Me.grpOrientation.Controls.Add(Me.rbOrientationPortrait)
- Me.grpOrientation.Controls.Add(Me.rbOrientationAutomatic)
- Me.grpOrientation.Location = New System.Drawing.Point(15, 114)
- Me.grpOrientation.Name = "grpOrientation"
- Me.grpOrientation.Size = New System.Drawing.Size(200, 100)
- Me.grpOrientation.TabIndex = 40
- Me.grpOrientation.TabStop = False
- Me.grpOrientation.Text = "Orientation"
- '
- 'rbOrientationLandscape
- '
- Me.rbOrientationLandscape.AutoSize = True
- Me.rbOrientationLandscape.Location = New System.Drawing.Point(13, 68)
- Me.rbOrientationLandscape.Name = "rbOrientationLandscape"
- Me.rbOrientationLandscape.Size = New System.Drawing.Size(78, 17)
- Me.rbOrientationLandscape.TabIndex = 10
- Me.rbOrientationLandscape.Text = "Landscape"
- Me.rbOrientationLandscape.UseVisualStyleBackColor = True
- '
- 'rbOrientationPortrait
- '
- Me.rbOrientationPortrait.AutoSize = True
- Me.rbOrientationPortrait.Location = New System.Drawing.Point(13, 45)
- Me.rbOrientationPortrait.Name = "rbOrientationPortrait"
- Me.rbOrientationPortrait.Size = New System.Drawing.Size(58, 17)
- Me.rbOrientationPortrait.TabIndex = 9
- Me.rbOrientationPortrait.Text = "Portrait"
- Me.rbOrientationPortrait.UseVisualStyleBackColor = True
- '
- 'rbOrientationAutomatic
- '
- Me.rbOrientationAutomatic.AutoSize = True
- Me.rbOrientationAutomatic.Checked = True
- Me.rbOrientationAutomatic.Location = New System.Drawing.Point(13, 22)
- Me.rbOrientationAutomatic.Name = "rbOrientationAutomatic"
- Me.rbOrientationAutomatic.Size = New System.Drawing.Size(72, 17)
- Me.rbOrientationAutomatic.TabIndex = 8
- Me.rbOrientationAutomatic.TabStop = True
- Me.rbOrientationAutomatic.Text = "Automatic"
- Me.rbOrientationAutomatic.UseVisualStyleBackColor = True
- '
- 'frmViewerPrint
- '
- Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
- Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
- Me.ClientSize = New System.Drawing.Size(534, 265)
- Me.Controls.Add(Me.numCopies)
- Me.Controls.Add(Me.cmbPrintAlignment)
- Me.Controls.Add(Me.chkCollate)
- Me.Controls.Add(Me.lblPrintAlignment)
- Me.Controls.Add(Me.grpPageRange)
- Me.Controls.Add(Me.cmbPrintSize)
- Me.Controls.Add(Me.btnPrinterProperties)
- Me.Controls.Add(Me.lblPrintSize)
- Me.Controls.Add(Me.cmbPrinterList)
- Me.Controls.Add(Me.lblCopies)
- Me.Controls.Add(Me.lblPrinter)
- Me.Controls.Add(Me.btnCancel)
- Me.Controls.Add(Me.btnPrint)
- Me.Controls.Add(Me.grpOrientation)
- Me.Name = "frmViewerPrint"
- Me.Text = "frmViewerPrint"
- CType(Me.numCopies, System.ComponentModel.ISupportInitialize).EndInit()
- Me.grpPageRange.ResumeLayout(False)
- Me.grpPageRange.PerformLayout()
- Me.grpOrientation.ResumeLayout(False)
- Me.grpOrientation.PerformLayout()
- Me.ResumeLayout(False)
- Me.PerformLayout()
-
- End Sub
-
- Friend WithEvents numCopies As NumericUpDown
- Friend WithEvents cmbPrintAlignment As ComboBox
- Friend WithEvents chkCollate As CheckBox
- Friend WithEvents lblPrintAlignment As Label
- Friend WithEvents grpPageRange As GroupBox
- Friend WithEvents txtPageRangeEnd As TextBox
- Friend WithEvents lblPageRangeTo As Label
- Friend WithEvents txtPageRangeStart As TextBox
- Friend WithEvents rbPageRangePages As RadioButton
- Friend WithEvents rbPageRangeCurrent As RadioButton
- Friend WithEvents rbPageRangeSelection As RadioButton
- Friend WithEvents rbPageRangeAll As RadioButton
- Friend WithEvents cmbPrintSize As ComboBox
- Friend WithEvents btnPrinterProperties As Button
- Friend WithEvents lblPrintSize As Label
- Friend WithEvents cmbPrinterList As ComboBox
- Friend WithEvents lblCopies As Label
- Friend WithEvents lblPrinter As Label
- Friend WithEvents btnCancel As Button
- Friend WithEvents btnPrint As Button
- Friend WithEvents grpOrientation As GroupBox
- Friend WithEvents rbOrientationLandscape As RadioButton
- Friend WithEvents rbOrientationPortrait As RadioButton
- Friend WithEvents rbOrientationAutomatic As RadioButton
-End Class
diff --git a/Controls.DocumentViewer/frmViewerPrint.resx b/Controls.DocumentViewer/frmViewerPrint.resx
deleted file mode 100644
index 1af7de15..00000000
--- a/Controls.DocumentViewer/frmViewerPrint.resx
+++ /dev/null
@@ -1,120 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
\ No newline at end of file
diff --git a/Controls.DocumentViewer/frmViewerPrint.vb b/Controls.DocumentViewer/frmViewerPrint.vb
deleted file mode 100644
index e2d3195d..00000000
--- a/Controls.DocumentViewer/frmViewerPrint.vb
+++ /dev/null
@@ -1,137 +0,0 @@
-Option Explicit On
-Option Infer On
-Option Strict On
-
-Imports System.Windows.Forms
-Imports GdPicture14
-
-Public Class frmViewerPrint
-
- Enum PrintOrientation
- AutoDetection
- Portrait
- Paysage
- End Enum
-
- Enum PagesToPrint
- All
- Selection
- Current
- Range
- End Enum
-
- Public Structure PrintSettings
- Public Printer As String
- Public Copies As Short
- Public Collate As Boolean
- Public PrintSize As PrintSizeOption
- Public PrintAlignment As PrintAlignment
- Public Orientation As PrintOrientation
- Public PagesToPrint As PagesToPrint
- Public PageRange As String
- End Structure
-
- Private m_printSettings As PrintSettings
- Private ReadOnly m_owner As GdViewer
-
- Public ReadOnly Property printConfiguration() As PrintSettings
- Get
- Return m_printSettings
- End Get
- End Property
-
-
- Private ReadOnly m_isSelectionPartial As Boolean
- Private ReadOnly m_isEmptySelection As Boolean
-
- Public Sub New(ByVal owner As GdViewer)
- InitializeComponent()
- m_owner = owner
- End Sub
-
- Private Sub frmPrint_Load(ByVal sender As Object, ByVal e As EventArgs)
- cmbPrinterList.Items.Clear()
- For i As Integer = 1 To m_owner.PrintGetPrintersCount()
- Dim printerName As String = m_owner.PrintGetPrinterName(i)
- cmbPrinterList.Items.Add(printerName)
- If printerName = m_owner.PrintGetActivePrinter() Then
- cmbPrinterList.SelectedIndex = cmbPrinterList.Items.IndexOf(printerName)
- End If
- Next i
-
- cmbPrintSize.Items.Add("Actual size") '0 = PrintSizeOptionActual
- cmbPrintSize.Items.Add("Fit to page") '1 = PrintSizeOptionFit, default
- cmbPrintSize.Items.Add("Shrink oversized pages") '2 = PrintSizeOptionShrinkOversized
- cmbPrintSize.SelectedIndex = 2
-
- cmbPrintAlignment.Items.Add("Middle left") '0 = PrintAlignmentMiddleLeft
- cmbPrintAlignment.Items.Add("Middle right") '1 = PrintAlignmentMiddleRight
- cmbPrintAlignment.Items.Add("Middle center") '2 = PrintAlignmentMiddleCenter
- cmbPrintAlignment.Items.Add("Default") '3 = PrintAlignmentDefault
- cmbPrintAlignment.Items.Add("Top left") '4 = PrintAlignmentTopLeft
- cmbPrintAlignment.Items.Add("Top right") '5 = PrintAlignmentTopRight
- cmbPrintAlignment.Items.Add("Top center") '6 = PrintAlignmentTopCenter
- cmbPrintAlignment.Items.Add("Bottom left") '7 = PrintAlignmentBottomLeft
- cmbPrintAlignment.Items.Add("Bottom right") '8 = PrintAlignmentBottomRight
- cmbPrintAlignment.Items.Add("Bottom center") '9 = PrintAlignmentBottomCenter
- cmbPrintAlignment.SelectedIndex = 2
-
- If m_isEmptySelection Then
- rbPageRangeSelection.Enabled = False
- Else
- If m_isSelectionPartial Then
- rbPageRangeSelection.Checked = True
- End If
- End If
- txtPageRangeStart.Enabled = False
- txtPageRangeEnd.Enabled = False
- txtPageRangeStart.Text = "1"
- txtPageRangeEnd.Text = m_owner.PageCount.ToString()
-
- btnPrint.DialogResult = DialogResult.OK
- btnCancel.DialogResult = DialogResult.Cancel
- End Sub
-
- Private Sub btnPrinterProperties_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnPrinterProperties.Click
-
- End Sub
-
- Private Sub cmbPrinterList_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles cmbPrinterList.SelectedIndexChanged
-
- End Sub
-
- Private Sub btnCancel_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnCancel.Click
- Me.Close()
- End Sub
-
- Private Sub rbPageRangeAll_CheckedChanged(ByVal sender As Object, ByVal e As EventArgs) Handles rbPageRangeAll.CheckedChanged
- rbPageRangeGeneric_CheckedChanged()
- End Sub
-
- Private Sub rbPageRangeSelection_CheckedChanged(ByVal sender As Object, ByVal e As EventArgs) Handles rbPageRangeSelection.CheckedChanged
- rbPageRangeGeneric_CheckedChanged()
- End Sub
-
- Private Sub rbPageRangeCurrent_CheckedChanged(ByVal sender As Object, ByVal e As EventArgs) Handles rbPageRangeCurrent.CheckedChanged
- rbPageRangeGeneric_CheckedChanged()
- End Sub
-
- Private Sub rbPageRangePages_CheckedChanged(ByVal sender As Object, ByVal e As EventArgs) Handles rbPageRangePages.CheckedChanged
- rbPageRangeGeneric_CheckedChanged()
- End Sub
-
- Private Sub rbPageRangeGeneric_CheckedChanged()
- If rbPageRangePages.Checked Then
- txtPageRangeStart.Enabled = True
- txtPageRangeEnd.Enabled = True
- Else
- txtPageRangeStart.Enabled = False
- txtPageRangeEnd.Enabled = False
- End If
- End Sub
-
- Private Sub btnPrint_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnPrint.Click
-
- End Sub
-
-End Class
\ No newline at end of file
diff --git a/GUIs.Common/Common.vbproj b/GUIs.Common/Common.vbproj
index 4dadd9fc..9b288c84 100644
--- a/GUIs.Common/Common.vbproj
+++ b/GUIs.Common/Common.vbproj
@@ -104,6 +104,7 @@
+
frmDocumentResultList.vb
diff --git a/GUIs.Common/DataResultList/frmDataResultList.vb b/GUIs.Common/DataResultList/frmDataResultList.vb
index cb158cbe..dedbca7c 100644
--- a/GUIs.Common/DataResultList/frmDataResultList.vb
+++ b/GUIs.Common/DataResultList/frmDataResultList.vb
@@ -25,7 +25,7 @@ Public Class frmDataResultList
Private _ActiveGrid As GridControl = Nothing
Private _ActiveGridBand As GridBand = Nothing
- Private _ActiveRowHandle As Integer = Constants.NO_ROW_HANDLE
+ Private _Helpers As DocumentResultList
Public Property ShouldReturnToPreviousForm As Boolean Implements IResultForm.ShouldReturnToPreviousForm
@@ -39,6 +39,7 @@ Public Class frmDataResultList
_LogConfig = LogConfig
_Logger = LogConfig.GetLogger()
_Config = New ConfigManager(Of DataResultConfig)(LogConfig, oConfigPath, Application.StartupPath)
+ _Helpers = New DocumentResultList(_LogConfig)
_Environment = Environment
_Params = Params
_ResultLists = Params.Results
@@ -128,7 +129,7 @@ Public Class frmDataResultList
End Sub
Private Sub GridView_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs)
- _ActiveRowHandle = e.FocusedRowHandle
+ _Helpers.SetRowHandle(e)
End Sub
Private Sub GridControl_Enter(sender As GridControl, e As EventArgs) Handles GridControl1.Enter, GridControl2.Enter, GridControl3.Enter
@@ -204,7 +205,7 @@ Public Class frmDataResultList
Private Function GetActiveRow() As DataRow
Dim oActiveGrid = GetActiveGridControl()
- Dim oActiveRowhandle = GetActiveRowHandle()
+ Dim oActiveRowhandle = _Helpers.ActiveRowHandle
If oActiveGrid IsNot Nothing And oActiveRowhandle <> Constants.NO_ROW_HANDLE Then
Dim oView = DirectCast(oActiveGrid.DefaultView, GridView)
@@ -223,14 +224,6 @@ Public Class frmDataResultList
Return _ActiveGrid
End Function
- Private Function GetActiveRowHandle() As Integer
- If _ActiveRowHandle = Constants.NO_ROW_HANDLE Then
- Return Constants.NO_ROW_HANDLE
- End If
-
- Return _ActiveRowHandle
- End Function
-
Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick
Dim oActiveGrid = GetActiveGridControl()
diff --git a/GUIs.Common/DocumentPropertyMenu/DocumentPropertyMenu.vb b/GUIs.Common/DocumentPropertyMenu/DocumentPropertyMenu.vb
index 7ccd70d3..8e2e9ccb 100644
--- a/GUIs.Common/DocumentPropertyMenu/DocumentPropertyMenu.vb
+++ b/GUIs.Common/DocumentPropertyMenu/DocumentPropertyMenu.vb
@@ -6,11 +6,13 @@ Imports DigitalData.Modules.Windows.NativeMethods
Imports DigitalData.Modules.Windows.File
Imports DigitalData.Modules.ZooFlow
Imports DigitalData.Modules.EDMI.API.Rights
+Imports DigitalData.Modules.EDMI.API
Public Class DocumentPropertyMenu
Private ReadOnly _Logger As Logger
Private ReadOnly _LogConfig As LogConfig
Private ReadOnly _Environment As Environment
+ Private ReadOnly _Client As Client
Private ReadOnly _File As Modules.Windows.File
Private ReadOnly _FilePath As String
@@ -21,10 +23,11 @@ Public Class DocumentPropertyMenu
Public Const COPY_PATH As String = "Dateipfad kopieren"
Public Const OPEN_PROPERTIES As String = "Eigenschaften"
- Public Sub New(LogConfig As LogConfig, Environment As Environment, FilePath As String, Optional ObjectId As Long = 0)
+ Public Sub New(LogConfig As LogConfig, Environment As Environment, Client As Client, FilePath As String, Optional ObjectId As Long = 0)
_LogConfig = LogConfig
_Logger = LogConfig.GetLogger()
_Environment = Environment
+ _Client = Client
_FilePath = FilePath
_ObjectId = ObjectId
_File = New Modules.Windows.File(LogConfig)
@@ -77,7 +80,7 @@ Public Class DocumentPropertyMenu
Exit Sub
End If
- Dim oPropertyDialog As New frmObjectPropertyDialog(_LogConfig, _Environment, _ObjectId)
+ Dim oPropertyDialog As New frmObjectPropertyDialog(_LogConfig, _Environment, _Client, _ObjectId)
oPropertyDialog.Show()
End Sub
diff --git a/GUIs.Common/DocumentResultList/DocumentResultList.vb b/GUIs.Common/DocumentResultList/DocumentResultList.vb
new file mode 100644
index 00000000..ac72e588
--- /dev/null
+++ b/GUIs.Common/DocumentResultList/DocumentResultList.vb
@@ -0,0 +1,61 @@
+Imports System.Drawing
+Imports System.IO
+Imports DevExpress.XtraGrid.Views.Base
+Imports DigitalData.Modules.Logging
+
+Public Class DocumentResultList
+ Private Logger As Logger
+
+ Public ActiveRowHandle As Integer = Constants.NO_ROW_HANDLE
+
+ Public Sub New(LogConfig As LogConfig)
+ Logger = LogConfig.GetLogger()
+ End Sub
+
+ Public Sub SetRowHandle(e As FocusedRowChangedEventArgs)
+ ActiveRowHandle = e.FocusedRowHandle
+ End Sub
+
+ Public Function GetIconByExtension(FilePath As String) As Bitmap
+ Dim oFileextension = Path.GetExtension(FilePath)
+
+ Select Case oFileextension.ToUpper
+ Case ".csv".ToUpper
+ Return My.Resources.xls
+ Case ".txt".ToUpper
+ Return My.Resources.txt
+ Case ".pdf".ToUpper
+ Return My.Resources.pdf
+ Case ".doc".ToUpper
+ Return My.Resources.doc
+ Case ".docx".ToUpper
+ Return My.Resources.doc
+ Case ".xls".ToUpper
+ Return My.Resources.xls
+ Case ".xlsx".ToUpper
+ Return My.Resources.xls
+ Case ".xlsm".ToUpper
+ Return My.Resources.xls
+ Case ".ppt".ToUpper
+ Return My.Resources.ppt
+ Case ".pptx".ToUpper
+ Return My.Resources.ppt
+ Case ".dwg".ToUpper
+ Return My.Resources.dwg
+ Case ".dxf".ToUpper
+ Return My.Resources.dxf
+ Case ".msg".ToUpper
+ Return My.Resources._page
+ Case ".msg".ToUpper
+ Return My.Resources._page
+ Case ".tif".ToUpper
+ Return My.Resources.tiff
+ Case ".tiff".ToUpper
+ Return My.Resources.tiff
+ Case ".jpg".ToUpper
+ Return My.Resources.jpg
+ Case Else
+ Return My.Resources._blank
+ End Select
+ End Function
+End Class
diff --git a/GUIs.Common/DocumentResultList/DocumentResultParams.vb b/GUIs.Common/DocumentResultList/DocumentResultParams.vb
index d05c96a8..45a983ed 100644
--- a/GUIs.Common/DocumentResultList/DocumentResultParams.vb
+++ b/GUIs.Common/DocumentResultList/DocumentResultParams.vb
@@ -4,8 +4,15 @@
'''
Public WindowGuid As String
Public Results As New List(Of DocumentResult)
+ Public ColumnNames As New ColumnNames
End Class
Public Class DocumentResult
Inherits BaseResult
End Class
+
+Public Class ColumnNames
+ Public ObjectIdColumn As String = "DocId"
+ Public FullPathColumn As String = "FULL_PATH"
+ Public FilenameColumn As String = "Filename"
+End Class
diff --git a/GUIs.Common/DocumentResultList/frmDocumentResultList.Designer.vb b/GUIs.Common/DocumentResultList/frmDocumentResultList.Designer.vb
index 6178daf0..bcb0ab58 100644
--- a/GUIs.Common/DocumentResultList/frmDocumentResultList.Designer.vb
+++ b/GUIs.Common/DocumentResultList/frmDocumentResultList.Designer.vb
@@ -32,6 +32,12 @@ Partial Class frmDocumentResultList
Me.labelResultCount = New DevExpress.XtraBars.BarStaticItem()
Me.BarButtonBack = New DevExpress.XtraBars.BarButtonItem()
Me.BarButtonItem5 = New DevExpress.XtraBars.BarButtonItem()
+ Me.BarEditItem1 = New DevExpress.XtraBars.BarEditItem()
+ Me.RepositoryItemTextEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit()
+ Me.BarEditItem2 = New DevExpress.XtraBars.BarEditItem()
+ Me.RepositoryItemTextEdit2 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit()
+ Me.labelCriticalError = New DevExpress.XtraBars.BarStaticItem()
+ Me.labelWarning = New DevExpress.XtraBars.BarStaticItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup_Navigation = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup_Layout = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
@@ -52,6 +58,8 @@ Partial Class frmDocumentResultList
Me.DocumentViewer1 = New DigitalData.Controls.DocumentViewer.DocumentViewer()
Me.XtraSaveFileDialog = New DevExpress.XtraEditors.XtraSaveFileDialog(Me.components)
CType(Me.RibbonControl, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SplitContainerControl1.SuspendLayout()
CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -69,13 +77,14 @@ Partial Class frmDocumentResultList
'RibbonControl
'
Me.RibbonControl.ExpandCollapseItem.Id = 0
- Me.RibbonControl.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl.ExpandCollapseItem, Me.RibbonControl.SearchEditItem, Me.SwitchMainContainerHorizontal, Me.SwitchDetailContainerHorizontal, Me.BarButtonItemExportGrid1, Me.BarButtonItem1, Me.BarButtonItem2, Me.BarButtonItem3, Me.BarStaticItem1, Me.labelResultCount, Me.BarButtonBack, Me.BarButtonItem5})
+ Me.RibbonControl.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl.ExpandCollapseItem, Me.RibbonControl.SearchEditItem, Me.SwitchMainContainerHorizontal, Me.SwitchDetailContainerHorizontal, Me.BarButtonItemExportGrid1, Me.BarButtonItem1, Me.BarButtonItem2, Me.BarButtonItem3, Me.BarStaticItem1, Me.labelResultCount, Me.BarButtonBack, Me.BarButtonItem5, Me.BarEditItem1, Me.BarEditItem2, Me.labelCriticalError, Me.labelWarning})
Me.RibbonControl.Location = New System.Drawing.Point(0, 0)
- Me.RibbonControl.MaxItemId = 12
+ Me.RibbonControl.MaxItemId = 16
Me.RibbonControl.Name = "RibbonControl"
Me.RibbonControl.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
+ Me.RibbonControl.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemTextEdit1, Me.RepositoryItemTextEdit2})
Me.RibbonControl.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False]
- Me.RibbonControl.Size = New System.Drawing.Size(1189, 159)
+ Me.RibbonControl.Size = New System.Drawing.Size(1189, 158)
Me.RibbonControl.StatusBar = Me.RibbonStatusBar
'
'SwitchMainContainerHorizontal
@@ -151,6 +160,54 @@ Partial Class frmDocumentResultList
Me.BarButtonItem5.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem5.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem5.Name = "BarButtonItem5"
'
+ 'BarEditItem1
+ '
+ Me.BarEditItem1.Caption = "BarEditItem1"
+ Me.BarEditItem1.CaptionToEditorIndent = 0
+ Me.BarEditItem1.Edit = Me.RepositoryItemTextEdit1
+ Me.BarEditItem1.Id = 12
+ Me.BarEditItem1.Name = "BarEditItem1"
+ '
+ 'RepositoryItemTextEdit1
+ '
+ Me.RepositoryItemTextEdit1.AutoHeight = False
+ Me.RepositoryItemTextEdit1.Name = "RepositoryItemTextEdit1"
+ '
+ 'BarEditItem2
+ '
+ Me.BarEditItem2.Caption = "BarEditItem2"
+ Me.BarEditItem2.Edit = Me.RepositoryItemTextEdit2
+ Me.BarEditItem2.Id = 13
+ Me.BarEditItem2.Name = "BarEditItem2"
+ '
+ 'RepositoryItemTextEdit2
+ '
+ Me.RepositoryItemTextEdit2.AutoHeight = False
+ Me.RepositoryItemTextEdit2.Name = "RepositoryItemTextEdit2"
+ '
+ 'labelCriticalError
+ '
+ Me.labelCriticalError.Caption = "Critical Error"
+ Me.labelCriticalError.Id = 14
+ Me.labelCriticalError.ImageOptions.SvgImage = CType(resources.GetObject("labelCriticalError.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
+ Me.labelCriticalError.ItemAppearance.Normal.BackColor = System.Drawing.Color.White
+ Me.labelCriticalError.ItemAppearance.Normal.ForeColor = DevExpress.LookAndFeel.DXSkinColors.ForeColors.Critical
+ Me.labelCriticalError.ItemAppearance.Normal.Options.UseBackColor = True
+ Me.labelCriticalError.ItemAppearance.Normal.Options.UseForeColor = True
+ Me.labelCriticalError.Name = "labelCriticalError"
+ Me.labelCriticalError.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph
+ Me.labelCriticalError.Visibility = DevExpress.XtraBars.BarItemVisibility.OnlyInCustomizing
+ '
+ 'labelWarning
+ '
+ Me.labelWarning.Caption = "Warning"
+ Me.labelWarning.Id = 15
+ Me.labelWarning.ImageOptions.SvgImage = CType(resources.GetObject("labelWarning.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
+ Me.labelWarning.ItemAppearance.Normal.BackColor = System.Drawing.Color.White
+ Me.labelWarning.ItemAppearance.Normal.Options.UseBackColor = True
+ Me.labelWarning.Name = "labelWarning"
+ Me.labelWarning.Visibility = DevExpress.XtraBars.BarItemVisibility.OnlyInCustomizing
+ '
'RibbonPage1
'
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup_Navigation, Me.RibbonPageGroup_Layout, Me.RibbonPageGroup_Export})
@@ -183,10 +240,12 @@ Partial Class frmDocumentResultList
'RibbonStatusBar
'
Me.RibbonStatusBar.ItemLinks.Add(Me.labelResultCount)
- Me.RibbonStatusBar.Location = New System.Drawing.Point(0, 649)
+ Me.RibbonStatusBar.ItemLinks.Add(Me.labelCriticalError)
+ Me.RibbonStatusBar.ItemLinks.Add(Me.labelWarning)
+ Me.RibbonStatusBar.Location = New System.Drawing.Point(0, 647)
Me.RibbonStatusBar.Name = "RibbonStatusBar"
Me.RibbonStatusBar.Ribbon = Me.RibbonControl
- Me.RibbonStatusBar.Size = New System.Drawing.Size(1189, 22)
+ Me.RibbonStatusBar.Size = New System.Drawing.Size(1189, 24)
'
'SplitContainerControl1
'
@@ -198,7 +257,7 @@ Partial Class frmDocumentResultList
Me.SplitContainerControl1.Panel1.Text = "Panel1"
Me.SplitContainerControl1.Panel2.Controls.Add(Me.SplitContainerControl2)
Me.SplitContainerControl1.Panel2.Text = "Panel2"
- Me.SplitContainerControl1.Size = New System.Drawing.Size(762, 490)
+ Me.SplitContainerControl1.Size = New System.Drawing.Size(762, 489)
Me.SplitContainerControl1.SplitterPosition = 382
Me.SplitContainerControl1.TabIndex = 2
Me.SplitContainerControl1.Text = "SplitContainerControl1"
@@ -210,7 +269,7 @@ Partial Class frmDocumentResultList
Me.GridControl1.MainView = Me.GridView1
Me.GridControl1.MenuManager = Me.RibbonControl
Me.GridControl1.Name = "GridControl1"
- Me.GridControl1.Size = New System.Drawing.Size(382, 490)
+ Me.GridControl1.Size = New System.Drawing.Size(382, 489)
Me.GridControl1.TabIndex = 0
Me.GridControl1.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView1})
'
@@ -250,7 +309,7 @@ Partial Class frmDocumentResultList
Me.SplitContainerControl2.Panel1.Text = "Panel1"
Me.SplitContainerControl2.Panel2.Controls.Add(Me.GridControl3)
Me.SplitContainerControl2.Panel2.Text = "Panel2"
- Me.SplitContainerControl2.Size = New System.Drawing.Size(370, 490)
+ Me.SplitContainerControl2.Size = New System.Drawing.Size(370, 489)
Me.SplitContainerControl2.SplitterPosition = 223
Me.SplitContainerControl2.TabIndex = 0
Me.SplitContainerControl2.Text = "SplitContainerControl2"
@@ -295,7 +354,7 @@ Partial Class frmDocumentResultList
Me.GridControl3.MainView = Me.GridView3
Me.GridControl3.MenuManager = Me.RibbonControl
Me.GridControl3.Name = "GridControl3"
- Me.GridControl3.Size = New System.Drawing.Size(370, 257)
+ Me.GridControl3.Size = New System.Drawing.Size(370, 256)
Me.GridControl3.TabIndex = 0
Me.GridControl3.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView3})
'
@@ -324,13 +383,13 @@ Partial Class frmDocumentResultList
'SplitContainerControl3
'
Me.SplitContainerControl3.Dock = System.Windows.Forms.DockStyle.Fill
- Me.SplitContainerControl3.Location = New System.Drawing.Point(0, 159)
+ Me.SplitContainerControl3.Location = New System.Drawing.Point(0, 158)
Me.SplitContainerControl3.Name = "SplitContainerControl3"
Me.SplitContainerControl3.Panel1.Controls.Add(Me.SplitContainerControl1)
Me.SplitContainerControl3.Panel1.Text = "Panel1"
Me.SplitContainerControl3.Panel2.Controls.Add(Me.DocumentViewer1)
Me.SplitContainerControl3.Panel2.Text = "Panel2"
- Me.SplitContainerControl3.Size = New System.Drawing.Size(1189, 490)
+ Me.SplitContainerControl3.Size = New System.Drawing.Size(1189, 489)
Me.SplitContainerControl3.SplitterPosition = 762
Me.SplitContainerControl3.TabIndex = 5
Me.SplitContainerControl3.Text = "SplitContainerControl3"
@@ -338,9 +397,10 @@ Partial Class frmDocumentResultList
'DocumentViewer1
'
Me.DocumentViewer1.Dock = System.Windows.Forms.DockStyle.Fill
+ Me.DocumentViewer1.FileLoaded = False
Me.DocumentViewer1.Location = New System.Drawing.Point(0, 0)
Me.DocumentViewer1.Name = "DocumentViewer1"
- Me.DocumentViewer1.Size = New System.Drawing.Size(417, 490)
+ Me.DocumentViewer1.Size = New System.Drawing.Size(417, 489)
Me.DocumentViewer1.TabIndex = 0
'
'XtraSaveFileDialog
@@ -363,6 +423,8 @@ Partial Class frmDocumentResultList
Me.StatusBar = Me.RibbonStatusBar
Me.Text = "Dokumenten Suche"
CType(Me.RibbonControl, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerControl1.ResumeLayout(False)
CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).EndInit()
@@ -410,4 +472,10 @@ Partial Class frmDocumentResultList
Friend WithEvents BarButtonBack As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroup_Navigation As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents BarButtonItem5 As DevExpress.XtraBars.BarButtonItem
+ Friend WithEvents BarEditItem1 As DevExpress.XtraBars.BarEditItem
+ Friend WithEvents RepositoryItemTextEdit1 As DevExpress.XtraEditors.Repository.RepositoryItemTextEdit
+ Friend WithEvents BarEditItem2 As DevExpress.XtraBars.BarEditItem
+ Friend WithEvents RepositoryItemTextEdit2 As DevExpress.XtraEditors.Repository.RepositoryItemTextEdit
+ Friend WithEvents labelCriticalError As DevExpress.XtraBars.BarStaticItem
+ Friend WithEvents labelWarning As DevExpress.XtraBars.BarStaticItem
End Class
diff --git a/GUIs.Common/DocumentResultList/frmDocumentResultList.resx b/GUIs.Common/DocumentResultList/frmDocumentResultList.resx
index e19145f9..f27923d5 100644
--- a/GUIs.Common/DocumentResultList/frmDocumentResultList.resx
+++ b/GUIs.Common/DocumentResultList/frmDocumentResultList.resx
@@ -290,6 +290,50 @@
OFYxMnoiIGNsYXNzPSJCbHVlIiAvPg0KICA8L2c+DQogIDxwb2x5Z29uIHBvaW50cz0iMjIsMTIgMjAs
MTAgMTYsMTQgMTIsMTAgMTAsMTIgMTQsMTYgMTAsMjAgMTIsMjIgMTYsMTggMjAsMjIgMjIsMjAgMTgs
MTYgIiBjbGFzcz0iUmVkIiAvPg0KPC9zdmc+Cw==
+
+
+
+
+ AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
+ LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
+ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALMCAAAC77u/
+ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
+ IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
+ MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
+ Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
+ MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5Z
+ ZWxsb3d7ZmlsbDojRkZCMTE1O30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLkdyZWVue2ZpbGw6IzAz
+ OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9Cgkuc3Qwe29wYWNpdHk6MC43NTt9Cgkuc3Qxe29wYWNp
+ dHk6MC41O30KPC9zdHlsZT4NCiAgPGcgaWQ9IkRlbGV0ZUNpcmNsZWQiPg0KICAgIDxwYXRoIGQ9Ik0x
+ Niw0QzkuNCw0LDQsOS40LDQsMTZzNS40LDEyLDEyLDEyczEyLTUuNCwxMi0xMlMyMi42LDQsMTYsNHog
+ TTIzLjEsMjAuMmwtMi44LDIuOEwxNiwxOC44bC00LjIsNC4yICAgbC0yLjgtMi44bDQuMi00LjJsLTQu
+ Mi00LjJsMi44LTIuOGw0LjIsNC4ybDQuMi00LjJsMi44LDIuOEwxOC44LDE2TDIzLjEsMjAuMnoiIGNs
+ YXNzPSJSZWQiIC8+DQogIDwvZz4NCjwvc3ZnPgs=
+
+
+
+
+ AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
+ LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
+ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAABkEAAAC77u/
+ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
+ IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
+ MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
+ Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
+ MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5Z
+ ZWxsb3d7ZmlsbDojRkZCMTE1O30KCS5SZWR7ZmlsbDojRDExQzFDO30KCS5HcmVlbntmaWxsOiMwMzlD
+ MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
+ Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQoJLnN0MntkaXNwbGF5Om5vbmU7fQoJLnN0M3tk
+ aXNwbGF5OmlubGluZTtmaWxsOiNGRkIxMTU7fQoJLnN0NHtkaXNwbGF5OmlubGluZTt9Cgkuc3Q1e2Rp
+ c3BsYXk6aW5saW5lO29wYWNpdHk6MC43NTt9Cgkuc3Q2e2Rpc3BsYXk6aW5saW5lO29wYWNpdHk6MC41
+ O30KCS5zdDd7ZGlzcGxheTppbmxpbmU7ZmlsbDojMDM5QzIzO30KCS5zdDh7ZGlzcGxheTppbmxpbmU7
+ ZmlsbDojRDExQzFDO30KCS5zdDl7ZGlzcGxheTppbmxpbmU7ZmlsbDojMTE3N0Q3O30KCS5zdDEwe2Rp
+ c3BsYXk6aW5saW5lO2ZpbGw6I0ZGRkZGRjt9Cjwvc3R5bGU+DQogIDxnIGlkPSJBdHRlbnRpb24iPg0K
+ ICAgIDxwYXRoIGQ9Ik0xNS4xLDIuNUwyLjEsMjYuNUMxLjgsMjcuMiwyLjMsMjgsMy4xLDI4aDI1Ljlj
+ MC44LDAsMS4zLTAuOCwwLjktMS41TDE2LjksMi41ICAgQzE2LjUsMS44LDE1LjUsMS44LDE1LjEsMi41
+ eiIgY2xhc3M9IlllbGxvdyIgLz4NCiAgICA8cGF0aCBkPSJNMTYsMjBjMS4xLDAsMiwwLjksMiwycy0w
+ LjksMi0yLDJzLTItMC45LTItMlMxNC45LDIwLDE2LDIweiBNMTQsMTBoNHY4aC00VjEweiIgY2xhc3M9
+ IkJsYWNrIiAvPg0KICA8L2c+DQo8L3N2Zz4L
diff --git a/GUIs.Common/DocumentResultList/frmDocumentResultList.vb b/GUIs.Common/DocumentResultList/frmDocumentResultList.vb
index a53fbaff..b4de47b5 100644
--- a/GUIs.Common/DocumentResultList/frmDocumentResultList.vb
+++ b/GUIs.Common/DocumentResultList/frmDocumentResultList.vb
@@ -21,10 +21,11 @@ Imports System.Threading
Public Class frmDocumentResultList
Implements IResultForm
- Private Const COLUMN_ICON = "ICON"
- Private Const COLUMN_FILEPATH = "FULL_FILENAME"
- Private Const COLUMN_FILENAME = "Filename"
- Private Const COLUMN_DOCID = "DocID"
+
+ Private COLUMN_FILEPATH = "FULL_FILENAME"
+ Private COLUMN_FILENAME = "Filename"
+ Private COLUMN_DOCID = "DocID"
+ Private COLUMN_ICON = "ICON"
Private _IsLoading As Boolean = True
Private _IsLegacy As Boolean = True
@@ -36,10 +37,10 @@ Public Class frmDocumentResultList
Private _Environment As Environment
Private _Params As DocumentResultParams
Private _ResultLists As List(Of DocumentResult)
+ Private _Helpers As DocumentResultList
Private _ActiveGrid As GridControl = Nothing
Private _ActiveGridBand As GridBand = Nothing
- Private _ActiveRowHandle As Integer = Constants.NO_ROW_HANDLE
Private _DocumentInfo As DocumentInfo = Nothing
@@ -52,47 +53,29 @@ Public Class frmDocumentResultList
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
Dim oConfigPath As String = Path.Combine(Application.UserAppDataPath, "ResultList", Params.WindowGuid)
+ COLUMN_DOCID = Params.ColumnNames.ObjectIdColumn
+ COLUMN_FILENAME = Params.ColumnNames.FilenameColumn
+ COLUMN_FILEPATH = Params.ColumnNames.FullPathColumn
+
_LogConfig = LogConfig
_Logger = LogConfig.GetLogger()
_Config = New ConfigManager(Of DocumentResultConfig)(LogConfig, oConfigPath, oConfigPath)
+ _Helpers = New DocumentResultList(LogConfig)
+
_Environment = Environment
_Params = Params
_ResultLists = Params.Results
- Try
- Dim Culture = CultureInfo.CreateSpecificCulture(_Environment.User.Language)
- ' The following line provides localization for the application's user interface.
- Thread.CurrentThread.CurrentUICulture = Culture
- ' The following line provides localization for data formats.
- Thread.CurrentThread.CurrentCulture = Culture
- ' Set this culture as the default culture for all threads in this application.
- ' Note: The following properties are supported in the .NET Framework 4.5+
- CultureInfo.DefaultThreadCurrentCulture = Culture
- CultureInfo.DefaultThreadCurrentUICulture = Culture
- Culture.DateTimeFormat.ShortDatePattern = _Environment.User.DateFormat
- Catch ex As Exception
- _Logger.Warn($"Error loading CultureInfo: {ex.Message}")
- End Try
- MaybeInitIDB()
- End Sub
-
- Private Sub MaybeInitIDB()
- _IsLegacy = Not _Environment.Service.IsActive
- If _Environment.Service.IsActive Then
- Dim oSplit As List(Of String) = _Environment.Service.Address.Split(":").ToList()
- Dim oAddress As String = oSplit.Item(0)
- Dim oPort As Integer = oSplit.Item(1)
-
- _IDBClient = New Client(_LogConfig, oAddress, oPort)
-
- If Not _IDBClient.Connect() Then
- _Logger.Warn("Client could not connect to Service at [{0}]", _Environment.Service.Address)
- End If
- End If
End Sub
Private Sub frmDocumentResultList_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Try
+ MaybeInitIDB()
+ ' Initialize Viewer with GDPicture.NET License
+ If _Environment.Settings.GdPictureKey = String.Empty Then
+ Throw New ApplicationException("GDPicture Licensekey is missing!")
+ End If
+ DocumentViewer1.Init(_LogConfig, _Environment.Settings.GdPictureKey)
' Load config
SplitContainerControl1.SplitterPosition = _Config.Config.SplitContainer1Distance
@@ -115,12 +98,6 @@ Public Class frmDocumentResultList
SwitchDetailContainerHorizontal.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
End If
- 'RibbonControl.Minimized = True
-
- ' Initialize Viewer with GDPicture.NET License
- DocumentViewer1.Init(_LogConfig, _Environment.Settings.GdPictureKey)
-
-
AddHandler GridView1.FocusedRowChanged, AddressOf GridView_FocusedRowChanged
AddHandler GridView2.FocusedRowChanged, AddressOf GridView_FocusedRowChanged
AddHandler GridView3.FocusedRowChanged, AddressOf GridView_FocusedRowChanged
@@ -135,17 +112,55 @@ Public Class frmDocumentResultList
End Try
End Sub
- Private Async Sub GridView_FocusedRowChanged(sender As GridView, e As FocusedRowChangedEventArgs)
- _ActiveRowHandle = e.FocusedRowHandle
+ Private Sub GridView_FocusedRowChanged(sender As GridView, e As FocusedRowChangedEventArgs)
+ _Helpers.SetRowHandle(e)
- If e.FocusedRowHandle >= 0 Then
- Dim oRow = sender.GetDataRow(e.FocusedRowHandle)
- DocumentViewer1.CloseDocument()
+ Try
+ Reset_Errors()
+ Cursor = Cursors.WaitCursor
- If _IsLegacy Then
- LoadFile_Legacy(oRow)
- Else
- Await LoadFile_IDB(oRow)
+ If e.FocusedRowHandle >= 0 Then
+ Dim oRow = sender.GetDataRow(e.FocusedRowHandle)
+ DocumentViewer1.CloseDocument()
+
+ If _IsLegacy Then
+ LoadFile_Legacy(oRow)
+ Else
+ LoadFile_IDB(oRow)
+ End If
+
+ If IsNothing(_DocumentInfo) Or DocumentViewer1.FileLoaded = False Then
+ Show_Warning("File could not be loaded!")
+ End If
+ DocumentViewer1.LoadFile(_DocumentInfo.FullPath)
+
+ If _DocumentInfo.AccessRight = Rights.AccessRight.VIEW_ONLY Then
+ DocumentViewer1.SetViewOnly(True)
+ RibbonPageGroup_Export.Visible = False
+ Else
+ DocumentViewer1.SetViewOnly(False)
+ RibbonPageGroup_Export.Visible = True
+ End If
+ End If
+ Catch ex As Exception
+ _Logger.Error(ex)
+ Show_CriticalError(ex.Message)
+ Finally
+ Cursor = Cursors.Default
+ End Try
+ End Sub
+
+ Private Sub MaybeInitIDB()
+ _IsLegacy = Not _Environment.Service.IsActive
+ If _Environment.Service.IsActive Then
+ Dim oSplit As List(Of String) = _Environment.Service.Address.Split(":").ToList()
+ Dim oAddress As String = oSplit.Item(0)
+ Dim oPort As Integer = oSplit.Item(1)
+
+ _IDBClient = New Client(_LogConfig, oAddress, oPort)
+
+ If Not _IDBClient.Connect() Then
+ _Logger.Warn("Client could not connect to Service at [{0}]", _Environment.Service.Address)
End If
End If
End Sub
@@ -154,33 +169,27 @@ Public Class frmDocumentResultList
Try
Dim oFullPath = GridRow.Item(COLUMN_FILEPATH)
- DocumentViewer1.LoadFile(oFullPath)
+ _DocumentInfo = New DocumentInfo() With {
+ .AccessRight = Rights.AccessRight.FULL,
+ .FullPath = oFullPath
+ }
Catch ex As Exception
_Logger.Error(ex)
MsgBox("Error while loading file", MsgBoxStyle.Critical, Text)
End Try
End Sub
- Private Async Function LoadFile_IDB(GridRow As DataRow) As Task
+ Private Sub LoadFile_IDB(GridRow As DataRow)
Try
Dim oObjectId = GridRow.Item(COLUMN_DOCID)
_Logger.Debug($"Gettin' Infor for oObjectId: {oObjectId}")
- _DocumentInfo = Await _IDBClient.GetDocumentInfo(_Environment.User.UserId, oObjectId)
- DocumentViewer1.LoadFile(_DocumentInfo.FullPath)
-
- If _DocumentInfo.AccessRight = Rights.AccessRight.VIEW_ONLY Then
- DocumentViewer1.SetViewOnly(True)
- RibbonPageGroup_Export.Visible = False
- Else
- DocumentViewer1.SetViewOnly(False)
- RibbonPageGroup_Export.Visible = True
- End If
+ ' This needs to be Sync bc otherwise the PopupMenuShowing event will fire before this method loaded the Document Info
+ _DocumentInfo = _IDBClient.GetDocumentInfo(_Environment.User.UserId, oObjectId)
Catch ex As Exception
_Logger.Error(ex)
- MsgBox("Error while loading file", MsgBoxStyle.Critical, Text)
End Try
- End Function
+ End Sub
Public Function RefreshResults(pResults As IEnumerable(Of BaseResult)) As Boolean Implements IResultForm.RefreshResults
@@ -262,7 +271,6 @@ Public Class frmDocumentResultList
labelResultCount.Caption = String.Format(labelResultCount.Caption, oTotalResults)
End Sub
-
Private Sub UpdateGridHeader(pResultList As List(Of DocumentResult), pIndex As Integer, pCount As Integer)
Select Case pIndex
Case 0
@@ -282,6 +290,14 @@ Public Class frmDocumentResultList
Private Sub CreateDocumentGrid(GridView As GridView, Datatable As DataTable)
Dim oDocDatatable As New DataTable
Try
+ If Datatable.Columns.Contains(COLUMN_DOCID) = False Then
+ Throw New ApplicationException($"Datatable is missing DocId Column [{COLUMN_DOCID}]!")
+ End If
+
+ If Datatable.Columns.Contains(COLUMN_FILEPATH) = False Then
+ Throw New ApplicationException($"Datatable is missing Filepath Column [{COLUMN_FILEPATH}]!")
+ End If
+
'Die Icon Colum erstellen und konfigurieren
oDocDatatable.Columns.Add(New DataColumn() With {
.DataType = GetType(Image),
@@ -300,7 +316,7 @@ Public Class frmDocumentResultList
})
oDocDatatable.Columns.Add(New DataColumn() With {
.DataType = GetType(String),
- .ColumnName = "Filename",
+ .ColumnName = COLUMN_FILENAME,
.Caption = "Filename"
})
@@ -326,12 +342,12 @@ Public Class frmDocumentResultList
oNewRow = oDocDatatable.NewRow()
'Icon zuweisen
- oNewRow.Item(0) = GetIconByExtension(oFullpath)
+ oNewRow.Item(COLUMN_ICON) = _Helpers.GetIconByExtension(oFullpath)
'Den Filepath mitgeben
- oNewRow.Item(1) = oFullpath
- oNewRow.Item(2) = oDocID
- oNewRow.Item(3) = oFilename
+ oNewRow.Item(COLUMN_FILEPATH) = oFullpath
+ oNewRow.Item(COLUMN_DOCID) = oDocID
+ oNewRow.Item(COLUMN_FILENAME) = oFilename
Dim oIndex = 4 'Fängt bei 4 an, um die definierten Spalten zu überspringen
For Each oColumnName As String In oRestColArray
@@ -390,55 +406,14 @@ Public Class frmDocumentResultList
GridView.OptionsView.BestFitMaxRowCount = -1
GridView.BestFitColumns(True)
+ Catch ex As ApplicationException
+ MsgBox($"Error while loading grid data: {vbNewLine}{vbNewLine}{ex.Message}", MsgBoxStyle.Critical, Text)
+ _Logger.Error(ex)
Catch ex As Exception
_Logger.Error(ex)
End Try
End Sub
- Private Function GetIconByExtension(FilePath As String) As Bitmap
- Dim oFileextension = Path.GetExtension(FilePath)
-
- Select Case oFileextension.ToUpper
- Case ".csv".ToUpper
- Return My.Resources.xls
- Case ".txt".ToUpper
- Return My.Resources.txt
- Case ".pdf".ToUpper
- Return My.Resources.pdf
- Case ".doc".ToUpper
- Return My.Resources.doc
- Case ".docx".ToUpper
- Return My.Resources.doc
- Case ".xls".ToUpper
- Return My.Resources.xls
- Case ".xlsx".ToUpper
- Return My.Resources.xls
- Case ".xlsm".ToUpper
- Return My.Resources.xls
- Case ".ppt".ToUpper
- Return My.Resources.ppt
- Case ".pptx".ToUpper
- Return My.Resources.ppt
- Case ".dwg".ToUpper
- Return My.Resources.dwg
- Case ".dxf".ToUpper
- Return My.Resources.dxf
- Case ".msg".ToUpper
- Return My.Resources._page
- Case ".msg".ToUpper
- Return My.Resources._page
- Case ".tif".ToUpper
- Return My.Resources.tiff
- Case ".tiff".ToUpper
- Return My.Resources.tiff
- Case ".jpg".ToUpper
- Return My.Resources.jpg
- Case Else
- Return My.Resources._blank
- End Select
- End Function
-
-
Private Sub SwitchMainContainerHorizontal_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles SwitchMainContainerHorizontal.CheckedChanged
SplitContainerControl1.Horizontal = SwitchMainContainerHorizontal.Checked
@@ -494,7 +469,7 @@ Public Class frmDocumentResultList
Private Function GetActiveRow() As DataRow
Dim oActiveGrid = GetActiveGridControl()
- Dim oActiveRowhandle = GetActiveRowHandle()
+ Dim oActiveRowhandle = _Helpers.ActiveRowHandle
If oActiveGrid IsNot Nothing And oActiveRowhandle <> Constants.NO_ROW_HANDLE Then
Dim oView = DirectCast(oActiveGrid.DefaultView, GridView)
@@ -513,13 +488,7 @@ Public Class frmDocumentResultList
Return _ActiveGrid
End Function
- Private Function GetActiveRowHandle() As Integer
- If _ActiveRowHandle = Constants.NO_ROW_HANDLE Then
- Return Constants.NO_ROW_HANDLE
- End If
- Return _ActiveRowHandle
- End Function
Private Sub GridControl_Enter(sender As GridControl, e As EventArgs) Handles GridControl1.Enter, GridControl2.Enter, GridControl3.Enter
_ActiveGrid = sender
@@ -589,7 +558,7 @@ Public Class frmDocumentResultList
If oRow IsNot Nothing Then
Dim oObjectId = oRow.Item(COLUMN_DOCID)
- Dim oPropertyDialog As New frmObjectPropertyDialog(_LogConfig, _Environment, oObjectId)
+ Dim oPropertyDialog As New frmObjectPropertyDialog(_LogConfig, _Environment, _IDBClient, oObjectId)
oPropertyDialog.Show()
End If
Catch ex As Exception
@@ -645,6 +614,7 @@ Public Class frmDocumentResultList
Dim oMenu As New DocumentPropertyMenu(
_LogConfig,
_Environment,
+ _IDBClient,
oFilepath,
oObjectId)
@@ -659,4 +629,20 @@ Public Class frmDocumentResultList
MsgBox("Unexpected Error while preparing context menu", MsgBoxStyle.Critical, Text)
End Try
End Sub
+
+
+ Public Sub Show_CriticalError(Message As String)
+ labelCriticalError.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
+ labelCriticalError.Caption = Message
+ End Sub
+
+ Public Sub Show_Warning(Message As String)
+ labelWarning.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
+ labelWarning.Caption = Message
+ End Sub
+
+ Public Sub Reset_Errors()
+ labelCriticalError.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
+ labelWarning.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
+ End Sub
End Class
\ No newline at end of file
diff --git a/GUIs.Common/My Project/AssemblyInfo.vb b/GUIs.Common/My Project/AssemblyInfo.vb
index 5f5b6620..21b936a9 100644
--- a/GUIs.Common/My Project/AssemblyInfo.vb
+++ b/GUIs.Common/My Project/AssemblyInfo.vb
@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
'
-
-
+
+
diff --git a/GUIs.Common/My Project/licenses.licx b/GUIs.Common/My Project/licenses.licx
index 9447cbf5..cc9e5531 100644
--- a/GUIs.Common/My Project/licenses.licx
+++ b/GUIs.Common/My Project/licenses.licx
@@ -1,7 +1,8 @@
DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.Repository.RepositoryItemComboBox, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.ProgressBarControl, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.GridLookUpEdit, DevExpress.XtraGrid.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.Repository.RepositoryItemComboBox, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
diff --git a/GUIs.Common/ObjectPropertyDialog/frmObjectPropertyDialog.Designer.vb b/GUIs.Common/ObjectPropertyDialog/frmObjectPropertyDialog.Designer.vb
index 3b9b4499..0c9c984c 100644
--- a/GUIs.Common/ObjectPropertyDialog/frmObjectPropertyDialog.Designer.vb
+++ b/GUIs.Common/ObjectPropertyDialog/frmObjectPropertyDialog.Designer.vb
@@ -141,12 +141,14 @@ Partial Class frmObjectPropertyDialog
Me.cmbBusinessEntity.EditWidth = 100
Me.cmbBusinessEntity.Id = 6
Me.cmbBusinessEntity.Name = "cmbBusinessEntity"
+ Me.cmbBusinessEntity.Visibility = DevExpress.XtraBars.BarItemVisibility.OnlyInCustomizing
'
'BarStaticItem1
'
Me.BarStaticItem1.Caption = "Entity:"
Me.BarStaticItem1.Id = 0
Me.BarStaticItem1.Name = "BarStaticItem1"
+ Me.BarStaticItem1.Visibility = DevExpress.XtraBars.BarItemVisibility.OnlyInCustomizing
'
'TabPageAttributes
'
diff --git a/GUIs.Common/ObjectPropertyDialog/frmObjectPropertyDialog.vb b/GUIs.Common/ObjectPropertyDialog/frmObjectPropertyDialog.vb
index 7c98444f..53f93237 100644
--- a/GUIs.Common/ObjectPropertyDialog/frmObjectPropertyDialog.vb
+++ b/GUIs.Common/ObjectPropertyDialog/frmObjectPropertyDialog.vb
@@ -8,16 +8,18 @@ Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.ZooFlow
Imports DigitalData.Modules.Language
Imports DevExpress.XtraGrid
+Imports DigitalData.Modules.EDMI.API
Public Class frmObjectPropertyDialog
Private _LogConfig As LogConfig
Private _Logger As Logger
Private _Environment As Environment
+ Private ReadOnly _Client As Client
Private _ObjectId As Int64
Private _Db As MSSQLServer
Private _Controls As PropertyControls
- Public Sub New(LogConfig As LogConfig, Environment As Environment, ObjectId As Long)
+ Public Sub New(LogConfig As LogConfig, Environment As Environment, Client As Client, ObjectId As Long)
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
@@ -25,6 +27,7 @@ Public Class frmObjectPropertyDialog
_LogConfig = LogConfig
_Logger = LogConfig.GetLogger()
_Environment = Environment
+ _Client = Client
_ObjectId = ObjectId
_Db = _Environment.DatabaseIDB
_Controls = New PropertyControls(_LogConfig, _Db)
@@ -36,6 +39,10 @@ Public Class frmObjectPropertyDialog
Try
oHandle = SplashScreenManager.ShowOverlayForm(Me)
+ If IsNothing(_ObjectId) Then
+ Throw New ApplicationException("No valid Object Id supplied!")
+ End If
+
Dim oEntityIds = Await GetBusinessEntitiesForObjectId(_ObjectId)
Dim oHistoryDataTable = Await GetValueHistoryForObjectId(_ObjectId)
Dim oObjectProperties = Await GetPropertiesForObjectId(_ObjectId)
@@ -45,15 +52,16 @@ Public Class frmObjectPropertyDialog
ShowAttributeHistory(oHistoryDataTable)
ShowObjectProperties(oObjectProperties)
- If oEntityIds.Count = 1 Then
- cmbBusinessEntity.EditValue = oEntityIds.First()
- End If
+ 'If oEntityIds.Count = 1 Then
+ ' cmbBusinessEntity.EditValue = oEntityIds.First()
+ 'End If
+ cmbBusinessEntity.EditValue = oEntityIds.First()
Catch ex As ApplicationException
_Logger.Error(ex)
MessageBox.Show(ex.Message, Text, MessageBoxButtons.OK, MessageBoxIcon.Error)
Catch ex As Exception
_Logger.Error(ex)
- MessageBox.Show("Unhandled exception occurred please check the log", Text, MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
+ MessageBox.Show("Unhandled exception occurred. Please check the log." & vbNewLine & ex.Message, Text, MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
Finally
If oHandle IsNot Nothing
SplashScreenManager.CloseOverlayForm(oHandle)
@@ -62,72 +70,90 @@ Public Class frmObjectPropertyDialog
End Sub
Private Async Function GetAttributesForBusinessEntity(EntityId As Long) As Task(Of List(Of Attribute))
- Dim oSQL = $"SELECT * FROM VWIDB_BE_ATTRIBUTE WHERE BE_ID = {EntityId}"
- Dim oDatatable = Await _Db.GetDatatableAsync(oSQL)
+ Try
+ Dim oSQL = $"SELECT * FROM VWIDB_BE_ATTRIBUTE WHERE BE_ID = {EntityId}"
+ Dim oResult = Await _Client.GetDatatableFromIDBAsync(oSQL)
- If oDatatable.Rows.Count = 0 Then
- Throw New ApplicationException($"BusinessEntity {EntityId} does not have any attributes!")
- Else
- Dim oAttributes As New List(Of Attribute)
+ If oResult.OK = False Then
+ Throw New ApplicationException($"Attributes for Business Entity {EntityId} could not be retrieved!")
- For Each oRow As DataRow In oDatatable.Rows
- oAttributes.Add(New Attribute() With {
- .ID = oRow.Item("ATTR_ID"),
- .Title = oRow.Item("ATTR_TITLE"),
- .TypeID = oRow.Item("TYPE_ID"),
- .TypeName = oRow.Item("TYPE_NAME")
- })
- Next
+ ElseIf oResult.Table.Rows.Count = 0 Then
+ Throw New ApplicationException($"BusinessEntity {EntityId} does not have any attributes!")
- Return oAttributes
- End If
+ Else
+ Dim oAttributes As New List(Of Attribute)
+
+ For Each oRow As DataRow In oResult.Table.Rows
+ oAttributes.Add(New Attribute() With {
+ .ID = oRow.Item("ATTR_ID"),
+ .Title = oRow.Item("ATTR_TITLE"),
+ .TypeID = oRow.Item("TYPE_ID"),
+ .TypeName = oRow.Item("TYPE_NAME")
+ })
+ Next
+
+ Return oAttributes
+ End If
+ Catch ex As Exception
+ _Logger.Error(ex)
+ Return New List(Of Attribute)
+ End Try
End Function
Private Async Function GetBusinessEntitiesForObjectId(ObjectId As Long) As Task(Of List(Of Long))
- Dim oSQL = $"SELECT BE_ID FROM TBIDB_OBJECT_BE WHERE IDB_OBJ_ID = {ObjectId}"
- Dim oDatatable = Await _Db.GetDatatableAsync(oSQL)
+ Try
+ Dim oSQL = $"SELECT BE_ID FROM TBIDB_OBJECT_BE WHERE IDB_OBJ_ID = {ObjectId}"
+ Dim oResult = Await _Client.GetDatatableFromIDBAsync(oSQL)
- If oDatatable.Rows.Count = 0 Then
- Throw New ApplicationException($"ObjectId {ObjectId} is not assigned to any business entity!")
- Else
- Dim oEntities As New List(Of Long)
+ If oResult.OK = False Then
+ Throw New ApplicationException($"Business Entities could not be retrieved!")
- For Each oRow In oDatatable.Rows
- oEntities.Add(oRow.item("BE_ID"))
- Next
+ ElseIf oResult.Table.Rows.Count = 0 Then
+ Throw New ApplicationException($"ObjectId {ObjectId} is not assigned to any business entity!")
- Return oEntities
- End If
+ Else
+ Dim oEntities As New List(Of Long)
+
+ For Each oRow In oResult.Table.Rows
+ oEntities.Add(oRow.item("BE_ID"))
+ Next
+
+ Return oEntities
+ End If
+ Catch ex As Exception
+ _Logger.Error(ex)
+ Return New List(Of Long)
+ End Try
End Function
Private Async Function GetValueHistoryForObjectId(ObjectId As Long) As Task(Of DataTable)
Dim oSQL As String = $"SELECT * FROM VWIDB_CHANGE_LOG WHERE IDB_OBJ_ID = {ObjectId} ORDER BY ChangeID DESC"
- Dim oDatatable = Await _Db.GetDatatableAsync(oSQL)
+ Dim oResult = Await _Client.GetDatatableFromIDBAsync(oSQL)
- Return oDatatable
+ Return oResult.Table
End Function
Private Async Function GetPropertiesForObjectId(ObjectId As Long) As Task(Of DataTable)
Dim oSQL As String = $"SELECT * FROM TBIDB_OBJECT WHERE IDB_OBJ_ID = {ObjectId}"
- Dim oDatatable = Await _Db.GetDatatableAsync(oSQL)
+ Dim oResult = Await _Client.GetDatatableFromIDBAsync(oSQL)
- Return oDatatable
+ Return oResult.Table
End Function
Private Async Function GetAttributeValue(AttributeName As String, ObjectId As Long, Optional LanguageCode As String = "de-DE", Optional IsForeign As Boolean = False) As Task(Of Object)
Dim oIsForeign = IIf(IsForeign, 1, 0)
Dim oSQL = $"SELECT TERM_VALUE FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] ({ObjectId}, '{AttributeName}', '{LanguageCode}', {oIsForeign})"
- Dim oTermValue = Await _Db.GetScalarValueAsync(oSQL)
+ Dim oResult = Await _Client.GetScalarValueFromIDBAsync(oSQL)
- Return oTermValue
+ Return oResult.Scalar
End Function
Private Async Function GetAttributeValueAsTable(AttributeName As String, ObjectId As Long, Optional LanguageCode As String = "de-DE", Optional IsForeign As Boolean = False) As Task(Of DataTable)
Dim oIsForeign = IIf(IsForeign, 1, 0)
Dim oSQL = $"SELECT TERM_VALUE FROM [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] ({ObjectId}, '{AttributeName}', '{LanguageCode}', {oIsForeign})"
- Dim oDatatable = Await _Db.GetDatatableAsync(oSQL)
+ Dim oResult = Await _Client.GetDatatableFromIDBAsync(oSQL)
- Return oDatatable
+ Return oResult.Table
End Function
Private Async Sub cmbBusinessEntity_EditValueChanged(sender As Object, e As EventArgs) Handles cmbBusinessEntity.EditValueChanged
diff --git a/GUIs.Test.EDMIBenchmark/Form1.Designer.vb b/GUIs.Test.EDMIBenchmark/Form1.Designer.vb
index 0b04b3e1..9f6a0e20 100644
--- a/GUIs.Test.EDMIBenchmark/Form1.Designer.vb
+++ b/GUIs.Test.EDMIBenchmark/Form1.Designer.vb
@@ -24,6 +24,7 @@ Partial Class Form1
Private Sub InitializeComponent()
Me.components = New System.ComponentModel.Container()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Form1))
+ Dim DockingContainer2 As DevExpress.XtraBars.Docking2010.Views.Tabbed.DockingContainer = New DevExpress.XtraBars.Docking2010.Views.Tabbed.DockingContainer()
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
Me.ButtonSelectFiles = New DevExpress.XtraBars.BarButtonItem()
Me.ButtonImportFiles = New DevExpress.XtraBars.BarButtonItem()
@@ -65,14 +66,16 @@ Partial Class Form1
Me.DockPanel2 = New DevExpress.XtraBars.Docking.DockPanel()
Me.DockPanel2_Container = New DevExpress.XtraBars.Docking.ControlContainer()
Me.DocumentViewer1 = New DigitalData.Controls.DocumentViewer.DocumentViewer()
+ Me.DockPanel4 = New DevExpress.XtraBars.Docking.DockPanel()
+ Me.DockPanel4_Container = New DevExpress.XtraBars.Docking.ControlContainer()
+ Me.GridControl1 = New DevExpress.XtraGrid.GridControl()
+ Me.GridView1 = New DevExpress.XtraGrid.Views.Grid.GridView()
Me.BindingSource1 = New System.Windows.Forms.BindingSource(Me.components)
Me.Timer1 = New System.Windows.Forms.Timer(Me.components)
Me.BarEditItem1 = New DevExpress.XtraBars.BarEditItem()
Me.panelContainer1 = New DevExpress.XtraBars.Docking.DockPanel()
- Me.GridControl1 = New DevExpress.XtraGrid.GridControl()
- Me.GridView1 = New DevExpress.XtraGrid.Views.Grid.GridView()
- Me.DockPanel4 = New DevExpress.XtraBars.Docking.DockPanel()
- Me.DockPanel4_Container = New DevExpress.XtraBars.Docking.ControlContainer()
+ Me.Document1 = New DevExpress.XtraBars.Docking2010.Views.Tabbed.Document(Me.components)
+ Me.DocumentGroup1 = New DevExpress.XtraBars.Docking2010.Views.Tabbed.DocumentGroup(Me.components)
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -90,11 +93,13 @@ Partial Class Form1
CType(Me.listboxFiles, System.ComponentModel.ISupportInitialize).BeginInit()
Me.DockPanel2.SuspendLayout()
Me.DockPanel2_Container.SuspendLayout()
- CType(Me.BindingSource1, System.ComponentModel.ISupportInitialize).BeginInit()
- CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).BeginInit()
- CType(Me.GridView1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.DockPanel4.SuspendLayout()
Me.DockPanel4_Container.SuspendLayout()
+ CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.GridView1, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.BindingSource1, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.Document1, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.DocumentGroup1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'RibbonControl1
@@ -108,7 +113,7 @@ Partial Class Form1
Me.RibbonControl1.PageHeaderItemLinks.Add(Me.BarMdiChildrenListItem1)
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
Me.RibbonControl1.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemTextEdit1, Me.RepositoryItemTextEdit2, Me.RepositoryItemTextEdit3, Me.RepositoryItemTextEdit4})
- Me.RibbonControl1.Size = New System.Drawing.Size(1093, 158)
+ Me.RibbonControl1.Size = New System.Drawing.Size(1093, 159)
Me.RibbonControl1.StatusBar = Me.RibbonStatusBar1
'
'ButtonSelectFiles
@@ -287,10 +292,10 @@ Partial Class Form1
'
'RibbonStatusBar1
'
- Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 640)
+ Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 642)
Me.RibbonStatusBar1.Name = "RibbonStatusBar1"
Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1
- Me.RibbonStatusBar1.Size = New System.Drawing.Size(1093, 24)
+ Me.RibbonStatusBar1.Size = New System.Drawing.Size(1093, 22)
'
'RibbonPage2
'
@@ -304,6 +309,13 @@ Partial Class Form1
Me.DocumentManager1.View = Me.TabbedView1
Me.DocumentManager1.ViewCollection.AddRange(New DevExpress.XtraBars.Docking2010.Views.BaseView() {Me.TabbedView1})
'
+ 'TabbedView1
+ '
+ Me.TabbedView1.DocumentGroups.AddRange(New DevExpress.XtraBars.Docking2010.Views.Tabbed.DocumentGroup() {Me.DocumentGroup1})
+ Me.TabbedView1.Documents.AddRange(New DevExpress.XtraBars.Docking2010.Views.BaseDocument() {Me.Document1})
+ DockingContainer2.Element = Me.DocumentGroup1
+ Me.TabbedView1.RootContainer.Nodes.AddRange(New DevExpress.XtraBars.Docking2010.Views.Tabbed.DockingContainer() {DockingContainer2})
+ '
'DockManager1
'
Me.DockManager1.AutoHideContainers.AddRange(New DevExpress.XtraBars.Docking.AutoHideContainer() {Me.hideContainerBottom})
@@ -313,12 +325,12 @@ Partial Class Form1
'
'hideContainerBottom
'
- Me.hideContainerBottom.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(240, Byte), Integer), CType(CType(240, Byte), Integer))
+ Me.hideContainerBottom.BackColor = System.Drawing.Color.FromArgb(CType(CType(248, Byte), Integer), CType(CType(248, Byte), Integer), CType(CType(248, Byte), Integer))
Me.hideContainerBottom.Controls.Add(Me.DockPanel3)
Me.hideContainerBottom.Dock = System.Windows.Forms.DockStyle.Bottom
- Me.hideContainerBottom.Location = New System.Drawing.Point(0, 619)
+ Me.hideContainerBottom.Location = New System.Drawing.Point(0, 615)
Me.hideContainerBottom.Name = "hideContainerBottom"
- Me.hideContainerBottom.Size = New System.Drawing.Size(1093, 21)
+ Me.hideContainerBottom.Size = New System.Drawing.Size(1093, 27)
'
'DockPanel3
'
@@ -357,27 +369,28 @@ Partial Class Form1
Me.DockPanel1.Controls.Add(Me.DockPanel1_Container)
Me.DockPanel1.Dock = DevExpress.XtraBars.Docking.DockingStyle.Left
Me.DockPanel1.ID = New System.Guid("12b5eead-07cc-48c6-93a4-85cd0b4b82ce")
- Me.DockPanel1.Location = New System.Drawing.Point(0, 158)
+ Me.DockPanel1.Location = New System.Drawing.Point(0, 159)
Me.DockPanel1.Name = "DockPanel1"
Me.DockPanel1.Options.ShowCloseButton = False
Me.DockPanel1.OriginalSize = New System.Drawing.Size(297, 200)
- Me.DockPanel1.Size = New System.Drawing.Size(297, 461)
+ Me.DockPanel1.Size = New System.Drawing.Size(297, 456)
Me.DockPanel1.Text = "Files to Upload"
'
'DockPanel1_Container
'
Me.DockPanel1_Container.Controls.Add(Me.listboxFiles)
- Me.DockPanel1_Container.Location = New System.Drawing.Point(3, 26)
+ Me.DockPanel1_Container.Location = New System.Drawing.Point(3, 46)
Me.DockPanel1_Container.Name = "DockPanel1_Container"
- Me.DockPanel1_Container.Size = New System.Drawing.Size(290, 432)
+ Me.DockPanel1_Container.Size = New System.Drawing.Size(290, 407)
Me.DockPanel1_Container.TabIndex = 0
'
'listboxFiles
'
+ Me.listboxFiles.DataSource = Me.BindingSource1
Me.listboxFiles.Dock = System.Windows.Forms.DockStyle.Fill
Me.listboxFiles.Location = New System.Drawing.Point(0, 0)
Me.listboxFiles.Name = "listboxFiles"
- Me.listboxFiles.Size = New System.Drawing.Size(290, 432)
+ Me.listboxFiles.Size = New System.Drawing.Size(290, 407)
Me.listboxFiles.TabIndex = 1
'
'DockPanel2
@@ -385,19 +398,19 @@ Partial Class Form1
Me.DockPanel2.Controls.Add(Me.DockPanel2_Container)
Me.DockPanel2.Dock = DevExpress.XtraBars.Docking.DockingStyle.Right
Me.DockPanel2.ID = New System.Guid("e82850af-b594-49e9-ae83-36d4bf007da5")
- Me.DockPanel2.Location = New System.Drawing.Point(893, 158)
+ Me.DockPanel2.Location = New System.Drawing.Point(893, 159)
Me.DockPanel2.Name = "DockPanel2"
Me.DockPanel2.Options.ShowCloseButton = False
Me.DockPanel2.OriginalSize = New System.Drawing.Size(200, 200)
- Me.DockPanel2.Size = New System.Drawing.Size(200, 461)
+ Me.DockPanel2.Size = New System.Drawing.Size(200, 456)
Me.DockPanel2.Text = "Document Viewer"
'
'DockPanel2_Container
'
Me.DockPanel2_Container.Controls.Add(Me.DocumentViewer1)
- Me.DockPanel2_Container.Location = New System.Drawing.Point(4, 26)
+ Me.DockPanel2_Container.Location = New System.Drawing.Point(4, 46)
Me.DockPanel2_Container.Name = "DockPanel2_Container"
- Me.DockPanel2_Container.Size = New System.Drawing.Size(193, 432)
+ Me.DockPanel2_Container.Size = New System.Drawing.Size(193, 407)
Me.DockPanel2_Container.TabIndex = 0
'
'DocumentViewer1
@@ -405,9 +418,48 @@ Partial Class Form1
Me.DocumentViewer1.Dock = System.Windows.Forms.DockStyle.Fill
Me.DocumentViewer1.Location = New System.Drawing.Point(0, 0)
Me.DocumentViewer1.Name = "DocumentViewer1"
- Me.DocumentViewer1.Size = New System.Drawing.Size(193, 432)
+ Me.DocumentViewer1.Size = New System.Drawing.Size(193, 407)
Me.DocumentViewer1.TabIndex = 0
'
+ 'DockPanel4
+ '
+ Me.DockPanel4.Controls.Add(Me.DockPanel4_Container)
+ Me.DockPanel4.DockedAsTabbedDocument = True
+ Me.DockPanel4.FloatLocation = New System.Drawing.Point(354, 490)
+ Me.DockPanel4.FloatSize = New System.Drawing.Size(538, 200)
+ Me.DockPanel4.FloatVertical = True
+ Me.DockPanel4.ID = New System.Guid("d8d91c41-bf1b-4f30-b72e-66f2da18db8e")
+ Me.DockPanel4.Name = "DockPanel4"
+ Me.DockPanel4.OriginalSize = New System.Drawing.Size(200, 200)
+ Me.DockPanel4.SavedDock = DevExpress.XtraBars.Docking.DockingStyle.Top
+ Me.DockPanel4.SavedIndex = 2
+ Me.DockPanel4.Text = "DockPanelGrid"
+ '
+ 'DockPanel4_Container
+ '
+ Me.DockPanel4_Container.Controls.Add(Me.GridControl1)
+ Me.DockPanel4_Container.Location = New System.Drawing.Point(0, 0)
+ Me.DockPanel4_Container.Name = "DockPanel4_Container"
+ Me.DockPanel4_Container.Size = New System.Drawing.Size(590, 424)
+ Me.DockPanel4_Container.TabIndex = 0
+ '
+ 'GridControl1
+ '
+ Me.GridControl1.DataSource = Me.BindingSource1
+ Me.GridControl1.Dock = System.Windows.Forms.DockStyle.Fill
+ Me.GridControl1.Location = New System.Drawing.Point(0, 0)
+ Me.GridControl1.MainView = Me.GridView1
+ Me.GridControl1.MenuManager = Me.RibbonControl1
+ Me.GridControl1.Name = "GridControl1"
+ Me.GridControl1.Size = New System.Drawing.Size(590, 424)
+ Me.GridControl1.TabIndex = 5
+ Me.GridControl1.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView1})
+ '
+ 'GridView1
+ '
+ Me.GridView1.GridControl = Me.GridControl1
+ Me.GridView1.Name = "GridView1"
+ '
'BindingSource1
'
'
@@ -435,53 +487,27 @@ Partial Class Form1
Me.panelContainer1.Size = New System.Drawing.Size(192, 145)
Me.panelContainer1.Text = "panelContainer1"
'
- 'GridControl1
+ 'Document1
'
- Me.GridControl1.Dock = System.Windows.Forms.DockStyle.Fill
- Me.GridControl1.Location = New System.Drawing.Point(0, 0)
- Me.GridControl1.MainView = Me.GridView1
- Me.GridControl1.MenuManager = Me.RibbonControl1
- Me.GridControl1.Name = "GridControl1"
- Me.GridControl1.Size = New System.Drawing.Size(530, 171)
- Me.GridControl1.TabIndex = 5
- Me.GridControl1.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView1})
+ Me.Document1.Caption = "DockPanelGrid"
+ Me.Document1.ControlName = "DockPanel4"
+ Me.Document1.FloatLocation = New System.Drawing.Point(354, 490)
+ Me.Document1.FloatSize = New System.Drawing.Size(538, 200)
+ Me.Document1.Properties.AllowClose = DevExpress.Utils.DefaultBoolean.[True]
+ Me.Document1.Properties.AllowFloat = DevExpress.Utils.DefaultBoolean.[True]
+ Me.Document1.Properties.AllowFloatOnDoubleClick = DevExpress.Utils.DefaultBoolean.[True]
'
- 'GridView1
+ 'DocumentGroup1
'
- Me.GridView1.GridControl = Me.GridControl1
- Me.GridView1.Name = "GridView1"
- '
- 'DockPanel4
- '
- Me.DockPanel4.Controls.Add(Me.DockPanel4_Container)
- Me.DockPanel4.Dock = DevExpress.XtraBars.Docking.DockingStyle.Float
- Me.DockPanel4.FloatLocation = New System.Drawing.Point(2475, 322)
- Me.DockPanel4.FloatSize = New System.Drawing.Size(538, 200)
- Me.DockPanel4.FloatVertical = True
- Me.DockPanel4.ID = New System.Guid("d8d91c41-bf1b-4f30-b72e-66f2da18db8e")
- Me.DockPanel4.Location = New System.Drawing.Point(0, 0)
- Me.DockPanel4.Name = "DockPanel4"
- Me.DockPanel4.OriginalSize = New System.Drawing.Size(200, 200)
- Me.DockPanel4.SavedDock = DevExpress.XtraBars.Docking.DockingStyle.Top
- Me.DockPanel4.SavedIndex = 2
- Me.DockPanel4.Size = New System.Drawing.Size(538, 200)
- Me.DockPanel4.Text = "DockPanelGrid"
- '
- 'DockPanel4_Container
- '
- Me.DockPanel4_Container.Controls.Add(Me.GridControl1)
- Me.DockPanel4_Container.Location = New System.Drawing.Point(4, 26)
- Me.DockPanel4_Container.Name = "DockPanel4_Container"
- Me.DockPanel4_Container.Size = New System.Drawing.Size(530, 171)
- Me.DockPanel4_Container.TabIndex = 0
+ Me.DocumentGroup1.Items.AddRange(New DevExpress.XtraBars.Docking2010.Views.Tabbed.Document() {Me.Document1})
'
'Form1
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(1093, 664)
- Me.Controls.Add(Me.DockPanel2)
Me.Controls.Add(Me.DockPanel1)
+ Me.Controls.Add(Me.DockPanel2)
Me.Controls.Add(Me.hideContainerBottom)
Me.Controls.Add(Me.RibbonStatusBar1)
Me.Controls.Add(Me.RibbonControl1)
@@ -506,11 +532,13 @@ Partial Class Form1
CType(Me.listboxFiles, System.ComponentModel.ISupportInitialize).EndInit()
Me.DockPanel2.ResumeLayout(False)
Me.DockPanel2_Container.ResumeLayout(False)
- CType(Me.BindingSource1, System.ComponentModel.ISupportInitialize).EndInit()
- CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).EndInit()
- CType(Me.GridView1, System.ComponentModel.ISupportInitialize).EndInit()
Me.DockPanel4.ResumeLayout(False)
Me.DockPanel4_Container.ResumeLayout(False)
+ CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.GridView1, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.BindingSource1, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.Document1, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.DocumentGroup1, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
Me.PerformLayout()
@@ -564,4 +592,6 @@ Partial Class Form1
Friend WithEvents GridView1 As DevExpress.XtraGrid.Views.Grid.GridView
Friend WithEvents DockPanel4 As DevExpress.XtraBars.Docking.DockPanel
Friend WithEvents DockPanel4_Container As DevExpress.XtraBars.Docking.ControlContainer
+ Friend WithEvents DocumentGroup1 As DevExpress.XtraBars.Docking2010.Views.Tabbed.DocumentGroup
+ Friend WithEvents Document1 As DevExpress.XtraBars.Docking2010.Views.Tabbed.Document
End Class
diff --git a/GUIs.Test.EDMIBenchmark/Form1.resx b/GUIs.Test.EDMIBenchmark/Form1.resx
index 7d14a195..e655131f 100644
--- a/GUIs.Test.EDMIBenchmark/Form1.resx
+++ b/GUIs.Test.EDMIBenchmark/Form1.resx
@@ -341,6 +341,9 @@
316, 17
+
+ 316, 17
+
453, 17
diff --git a/GUIs.Test.EDMIBenchmark/Form1.vb b/GUIs.Test.EDMIBenchmark/Form1.vb
index f04a0428..7ff56136 100644
--- a/GUIs.Test.EDMIBenchmark/Form1.vb
+++ b/GUIs.Test.EDMIBenchmark/Form1.vb
@@ -5,6 +5,7 @@ Imports DevExpress.XtraEditors
Imports DevExpress.XtraEditors.Controls
Imports System.IO
Imports DigitalData.Modules.EDMI.API.EDMIServiceReference
+Imports DigitalData.GUIs.Common
Public Class Form1
Private _LogConfig As LogConfig
@@ -120,7 +121,7 @@ Public Class Form1
End Function
- Private Async Sub ButtonLoadFile_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles ButtonLoadFile.ItemClick
+ Private Sub ButtonLoadFile_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles ButtonLoadFile.ItemClick
Try
Dim oSWTotal As New Stopwatch()
oSWTotal.Start()
@@ -130,7 +131,7 @@ Public Class Form1
End If
Dim oObjectId As Integer = TextboxObjectId.EditValue
- Dim oResponse As Client.DocumentInfo = Await _Client.GetDocumentInfo(2, oObjectId)
+ Dim oResponse As Client.DocumentInfo = _Client.GetDocumentInfo(2, oObjectId)
DocumentViewer1.LoadFile(oResponse.FullPath)
@@ -146,7 +147,28 @@ Public Class Form1
Private Async Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick
Try
Dim oResult As Client.FileList = Await _Client.ListFilesForUserAsync()
- BindingSource1.DataSource = oResult.Datatable
+ Dim oParams As New DocumentResultParams() With {
+ .Results = New List(Of DocumentResult) From {
+ New DocumentResult() With {.Title = "lol", .Datatable = oResult.Datatable}
+ },
+ .WindowGuid = "1",
+ .ColumnNames = New ColumnNames() With {
+ .FilenameColumn = "FILENAME_EXT",
+ .FullPathColumn = "FULL_PATH",
+ .ObjectIdColumn = "IDB_OBJ_ID"
+ }
+ }
+ Dim oEnv As New DigitalData.Modules.ZooFlow.Environment() With {
+ .Service = New DigitalData.Modules.ZooFlow.State.ServiceState() With {
+ .IsActive = True,
+ .Address = "172.24.12.39:9000"
+ },
+ .Settings = New DigitalData.Modules.ZooFlow.State.SettingsState With {
+ .GdPictureKey = "21182889975216572111813147150675976632"
+ }
+ }
+ Dim oForm As New frmDocumentResultList(_LogConfig, oEnv, oParams)
+ oForm.Show()
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Uh oh!")
End Try
diff --git a/GUIs.Test.EDMIBenchmark/GUIs.Test.EDMIBenchmark.vbproj b/GUIs.Test.EDMIBenchmark/GUIs.Test.EDMIBenchmark.vbproj
index c159aa05..f8af10ca 100644
--- a/GUIs.Test.EDMIBenchmark/GUIs.Test.EDMIBenchmark.vbproj
+++ b/GUIs.Test.EDMIBenchmark/GUIs.Test.EDMIBenchmark.vbproj
@@ -156,6 +156,10 @@
{0958cddf-4a16-41f6-8837-8335f71d599c}
DocumentViewer
+
+ {d20a6bf2-c7c6-4a7a-b34d-fa27d775a049}
+ Common
+
{25017513-0d97-49d3-98d7-ba76d9b251b0}
EDMI.API
@@ -164,6 +168,10 @@
{903b2d7d-3b80-4be9-8713-7447b704e1b0}
Logging
+
+ {81cac44f-3711-4c8f-ae98-e02a7448782a}
+ ZooFlow
+
\ No newline at end of file
diff --git a/Modules.EDMIAPI/Client.vb b/Modules.EDMIAPI/Client.vb
index 4ed0ca7e..2d7c7a73 100644
--- a/Modules.EDMIAPI/Client.vb
+++ b/Modules.EDMIAPI/Client.vb
@@ -137,6 +137,47 @@ Public Class Client
End Try
End Function
+ Public Function GetDatatableFromIDB(SQL As String) As TableResult
+ Try
+ Dim oResponse = _channel.ReturnDatatable_MSSQL_IDB(SQL)
+ Return oResponse
+ Catch ex As Exception
+ _logger.Error(ex)
+ Throw ex
+ End Try
+ End Function
+
+
+ Public Async Function GetDatatableFromIDBAsync(SQL As String) As Task(Of TableResult)
+ Try
+ Dim oResponse = Await _channel.ReturnDatatable_MSSQL_IDBAsync(SQL)
+ Return oResponse
+ Catch ex As Exception
+ _logger.Error(ex)
+ Throw ex
+ End Try
+ End Function
+
+ Public Function GetScalarValueFromIDB(SQL As String) As ScalarResult
+ Try
+ Dim oResponse = _channel.ReturnScalar_MSSQL_IDB(SQL)
+ Return oResponse
+ Catch ex As Exception
+ _logger.Error(ex)
+ Throw ex
+ End Try
+ End Function
+
+ Public Async Function GetScalarValueFromIDBAsync(SQL As String) As Task(Of ScalarResult)
+ Try
+ Dim oResponse = Await _channel.ReturnScalar_MSSQL_IDBAsync(SQL)
+ Return oResponse
+ Catch ex As Exception
+ _logger.Error(ex)
+ Throw ex
+ End Try
+ End Function
+
Public Function GetDatatableByName(DatatableName As String, Optional FilterExpression As String = "", Optional SortByColumn As String = "") As TableResult
Try
Dim oResponse = _channel.ReturnDatatableFromCache(DatatableName, FilterExpression, SortByColumn)
@@ -157,7 +198,25 @@ Public Class Client
End Try
End Function
- Public Async Function GetDocumentInfo(UserId As Long, ObjectId As Long) As Task(Of DocumentInfo)
+ Public Function GetDocumentInfo(UserId As Long, ObjectId As Long) As DocumentInfo
+ Try
+ Dim oParams = New DocumentInfoRequest With {
+ .ObjectId = ObjectId,
+ .UserId = UserId
+ }
+ Dim oResponse As DocumentInfoResponse = _channel.GetFileInfoByObjectId(oParams)
+
+ Return New DocumentInfo With {
+ .AccessRight = oResponse.FileRight,
+ .FullPath = oResponse.FullPath
+ }
+ Catch ex As Exception
+ _logger.Error(ex)
+ Throw ex
+ End Try
+ End Function
+
+ Public Async Function GetDocumentInfoAsync(UserId As Long, ObjectId As Long) As Task(Of DocumentInfo)
Try
Dim oParams = New DocumentInfoRequest With {
.ObjectId = ObjectId,
diff --git a/Modules.EDMIAPI/My Project/AssemblyInfo.vb b/Modules.EDMIAPI/My Project/AssemblyInfo.vb
index bd160e92..843272b3 100644
--- a/Modules.EDMIAPI/My Project/AssemblyInfo.vb
+++ b/Modules.EDMIAPI/My Project/AssemblyInfo.vb
@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
'
-
-
+
+
diff --git a/Service.EDMIService/EDMIService.vb b/Service.EDMIService/EDMIService.vb
index a64eb0ca..19e6a493 100644
--- a/Service.EDMIService/EDMIService.vb
+++ b/Service.EDMIService/EDMIService.vb
@@ -127,6 +127,7 @@ Public Class EDMIService
Try
_Logger.Info($"ReturnDatatable_MSSQL_IDB, SQL: {SQL}")
Dim oResult As DataTable = MSSQL_IDB.GetDatatable(SQL)
+ oResult.TableName = "DD_RESULT"
Return New TableResult(oResult)
Catch ex As FaultException
@@ -183,6 +184,7 @@ Public Class EDMIService
Try
_Logger.Info($"ReturnDatatable_MSSQL_ECM, SQL: {SQL}")
Dim oResult As DataTable = MSSQL_ECM.GetDatatable(SQL)
+ oResult.TableName = "DD_RESULT"
Return New TableResult(oResult)
Catch ex As FaultException
@@ -239,6 +241,7 @@ Public Class EDMIService
Try
_Logger.Info($"ReturnDatatable, SQL: {SQL}")
Dim oResult As DataTable = Firebird.GetDatatable(SQL)
+ oResult.TableName = "DD_RESULT"
Return New TableResult(oResult)
Catch ex As FaultException