128 Commits

Author SHA1 Message Date
Jonathan Jenne
e403d81296 Merge branch 'master' of http://dd-vmp07-com04:3000/AppStd/Monorepo 2020-06-15 10:38:07 +02:00
Jonathan Jenne
ac545552e0 DocumentViewer: 1.0.4.1 2020-06-15 10:37:42 +02:00
Jonathan Jenne
9a6e2a7b86 fix zoom display 2020-06-15 10:37:30 +02:00
238c8e0860 Merge branch 'master' of http://dd-vmp07-com04:3000/AppStd/Monorepo 2020-06-09 16:59:14 +02:00
886c1115ec MS: Chat und co 2020-06-09 16:59:04 +02:00
Jonathan Jenne
4be0ac5e49 SQLEditor: Init 2020-06-09 15:50:02 +02:00
Jonathan Jenne
934bbfb063 ClipboardWatcher: more accurate result text 2020-06-09 15:49:48 +02:00
Jonathan Jenne
eae9abb3be ClipboardWatcher: Version 1.0.0.2 2020-06-08 16:54:00 +02:00
Jonathan Jenne
9ee627e2ef CLipboardWatcher: replace clipboard placeholder for datasearches 2020-06-08 16:53:29 +02:00
Jonathan Jenne
905a660e2b Merge branch 'master' of http://dd-vmp07-com04:3000/AppStd/Monorepo 2020-06-08 15:46:08 +02:00
Jonathan Jenne
de1fc4a5cc ClipboardWatcher: Version 1.0.0.1 2020-06-08 15:45:51 +02:00
Jonathan Jenne
664ff68b32 ZUGFeRDTest: add license 2020-06-08 15:45:18 +02:00
Jonathan Jenne
b288544a32 ClipboardWatcher: fix treeview button anchor 2020-06-08 15:44:59 +02:00
3d6eb0af14 Merge branch 'master' of http://dd-vmp07-com04:3000/AppStd/Monorepo 2020-06-04 16:32:57 +02:00
fdd7ed40c0 MS DocView Done 2020-06-04 16:32:48 +02:00
Jonathan Jenne
095b79be96 ClipboardWatcher: Actually use configured connection strings 2020-06-02 16:19:24 +02:00
Jonathan Jenne
66ad52ba26 Chat: WIP 2020-06-02 16:12:10 +02:00
Jonathan Jenne
3a61685882 Database: Version 1.0.0.6 2020-06-02 16:11:55 +02:00
Jonathan Jenne
21802dcfa2 Database/MSSQL: Support connection string per query, for now only for datatable 2020-06-02 16:11:42 +02:00
Jonathan Jenne
e61f85c4cc Windream: Version 1.0.0.7 2020-05-29 13:56:37 +02:00
Jonathan Jenne
f04c5ec4b0 Windream: fix NormalizePath 2020-05-29 13:56:27 +02:00
Jonathan Jenne
068f660451 ChatControl + Test 2020-05-29 10:54:18 +02:00
Jonathan Jenne
79736df064 Windream: Version 1.0.0.6 2020-05-29 10:54:06 +02:00
Jonathan Jenne
30827fb841 fix breaking unc path 2020-05-29 10:53:38 +02:00
Jonathan Jenne
8bd6cd63d4 merge 2020-05-28 14:57:01 +02:00
Jonathan Jenne
69c7772417 update NLog to 4.7.2 2020-05-28 14:55:43 +02:00
Jonathan Jenne
09e2787704 add chattest 2020-05-28 14:55:30 +02:00
4cd801003b Merge branch 'master' of http://dd-vmp07-com04:3000/AppStd/Monorepo 2020-05-20 14:54:03 +02:00
07aa03a47e MS Remove Chat 2020-05-20 14:53:55 +02:00
Jonathan Jenne
5d4133659e LookupGrid: Prevent crash when selectedvalues contains dbnull 2020-05-20 13:57:12 +02:00
Jonathan Jenne
968ea6c914 Merge branch 'master' of http://dd-vmp07-com04:3000/AppStd/Monorepo 2020-05-20 13:37:21 +02:00
Jonathan Jenne
1189ca5fac Interfaces: Use Root Store for Certificates 2020-05-20 13:37:12 +02:00
Jonathan Jenne
cf7adaac27 LookupControlGui: Update 2020-05-20 13:36:53 +02:00
Jonathan Jenne
cd6e741cd2 LookupGrid: 1.0.2.3 2020-05-20 13:36:28 +02:00
Jonathan Jenne
8e864d5b07 LookupGrid: handle empty datasource better 2020-05-20 13:36:11 +02:00
Jonathan Jenne
7d8300a1db fix make getcleanedpath public 2020-05-15 16:02:20 +02:00
a950c09802 MS 2020-05-15 12:33:43 +02:00
Jonathan Jenne
9b290cce72 EDMI: Fix byte array creation 2020-05-15 12:26:59 +02:00
Jonathan Jenne
9a70252ff3 GraphQL: remove message box when cert is not found lol 2020-05-15 11:34:59 +02:00
Jonathan Jenne
cfa2800c5b Filesystem: Dont copy file.vb to debug dir lol 2020-05-15 10:54:08 +02:00
Jonathan Jenne
8c7a79addd JobRunner: Version 1.0.2.0 2020-05-15 10:24:15 +02:00
Jonathan Jenne
1b38141e3e JobRunner: fix debug not working because of duplicate job definitions 2020-05-15 10:22:44 +02:00
92a1364edb MS 2020-05-14 15:21:53 +02:00
Jonathan Jenne
6d243bff89 JobRunner: Version 1.0.1.0 2020-05-14 14:45:53 +02:00
Jonathan Jenne
a2578f1c86 JobRunner: Fix GraphQL Args 2020-05-14 14:45:25 +02:00
Jonathan Jenne
421f6f6827 Jobs: Version 1.3.0.0 2020-05-14 14:39:19 +02:00
Jonathan Jenne
7327a9b2fa Jobs: Add option to start jobs immediately 2020-05-14 14:38:30 +02:00
Jonathan Jenne
ffcfd017ce EDMI: JobTest 2020-05-14 13:17:52 +02:00
Jonathan Jenne
b8040cff2b Database: Clean up GetSQLConnection() 2020-05-14 13:17:40 +02:00
Jonathan Jenne
f3986bb8fa EDMI: WIP GraphQLJob 2020-05-14 13:17:11 +02:00
Jonathan Jenne
de2bb5e88d Config: Version 0.0.7.2 2020-05-14 13:16:43 +02:00
Jonathan Jenne
3d5315d032 Config: Fix creating ComputerConfig folder when no path is given 2020-05-14 13:16:22 +02:00
Jonathan Jenne
ab83044664 Logging: Version 2.0.2.0 2020-05-14 13:13:03 +02:00
Jonathan Jenne
267c90e287 Logging: Keep debug file open to prevent massive slowdown when writing many log messages 2020-05-14 13:12:46 +02:00
Jonathan Jenne
32ac19cbd0 GraphQL: WIP JobRunner Job GraphQL 2020-05-13 16:36:51 +02:00
Jonathan Jenne
5b829e8ef1 GraphQL: show total lines inserted and mask special chars for insert 2020-05-13 16:28:26 +02:00
eff07ac410 MS Icon etc 2020-05-13 14:36:13 +02:00
Jonathan Jenne
3ece4e6222 GraphQL: Use cert from store 2020-05-13 11:42:28 +02:00
Jonathan Jenne
874cf74796 Merge branch 'master' of http://dd-vmp07-com04:3000/AppStd/Monorepo 2020-05-13 10:45:28 +02:00
Jonathan Jenne
967ad15052 GraphQL: fix cert store access 2020-05-13 10:45:11 +02:00
2ff902fc1e Merge branch 'master' of http://dd-vmp07-com04:3000/AppStd/Monorepo 2020-05-06 15:23:22 +02:00
66bab9b7c1 ms 2020-05-06 15:23:08 +02:00
Jonathan Jenne
6e577627d3 GraphQLTest: Add Proxy config 2020-05-05 13:21:35 +02:00
Jonathan Jenne
729b4d8195 GraphQLTest: Prepare for test 2020-05-04 14:48:01 +02:00
Jonathan Jenne
857f1b1f9f Filesystem: Version 1.0.1.1 2020-04-30 11:45:04 +02:00
Jonathan Jenne
dfb53d60e6 Filesystem: Version 1.0.1.0 2020-04-30 11:40:54 +02:00
Jonathan Jenne
3ad3519201 Filesystem: Add GetCleanFilename and GetCleanPath 2020-04-30 11:40:18 +02:00
Jonathan Jenne
150a95643c ZUGFeRD: Improve logging for ZUGFeRD Service 2020-04-29 15:01:41 +02:00
Jonathan Jenne
31ae07b3eb EDMI: fix API.Client constructor 2020-04-28 14:51:24 +02:00
Jonathan Jenne
7f59e1d1ca Version 2.0.1.0 2020-04-28 14:50:55 +02:00
Jonathan Jenne
874e8c893c Logging: Show Method/Line Numbers for Debug Messages 2020-04-28 14:50:41 +02:00
Jonathan Jenne
7bf03b303b EDMI: clean up service 2020-04-28 11:11:54 +02:00
Jonathan Jenne
ebc482b7b2 Windream: Log if object does not exist 2020-04-27 16:22:34 +02:00
631929ec46 MS 2020-04-27 15:09:44 +02:00
Jonathan Jenne
29600e0a5e Merge branch 'master' of http://dd-vmp07-com04:3000/AppStd/Monorepo 2020-04-27 14:17:12 +02:00
Jonathan Jenne
4cde711955 EDMI 2020-04-27 14:16:42 +02:00
f2273ceed7 Merge branch 'master' of http://dd-vmp07-com04:3000/AppStd/Monorepo 2020-04-27 14:16:41 +02:00
cbc603cbb7 MS WINDREAM MOdule 2020-04-27 14:16:32 +02:00
Jonathan Jenne
ed29e1b6a9 EDMI: Update Service and Client to Use Messages for EDMI Methods 2020-04-24 11:53:08 +02:00
Jonathan Jenne
d2717b9216 Language: Add ToBoolean, EMIBenchmark: try blocks 2020-04-22 14:34:22 +02:00
Jonathan Jenne
162485e3f0 EDMIBenchmark: add logging 2020-04-22 11:07:21 +02:00
Jonathan Jenne
99e7a36d84 Interfaces: Dont log ZUGFeRD Exceptions while validating, leads to misleading error messages 2020-04-22 10:47:09 +02:00
Jonathan Jenne
afe42e52c0 Version 0.0.7.1: dont try to create app startup path 2020-04-20 17:19:58 +02:00
Jonathan Jenne
4cb20bfb59 skip path test 2020-04-20 10:58:56 +02:00
Jonathan Jenne
409e4e375d ZUGFeRD Service: Version 1.2.1.0 2020-04-20 10:58:40 +02:00
Jonathan Jenne
ed02436dd6 Jobs.EDMI.ZUGFeRD: Use GDPicture for Validation, Fix Group counter being nothing, remove xml from allowed extensions 2020-04-20 10:58:13 +02:00
45359d3cab Merge branch 'master' of http://dd-vmp07-com04:3000/AppStd/Monorepo 2020-04-20 10:01:56 +02:00
79e1d0a7de MS WISAG ZUGFERD 2020-04-20 10:01:46 +02:00
Jonathan Jenne
dc43397d55 Merge branch 'master' of http://dd-vmp07-com04:3000/AppStd/Monorepo 2020-04-17 11:57:32 +02:00
Jonathan Jenne
14194248ad EDMI: Load Object Store Paths 2020-04-17 11:57:18 +02:00
fde2ca6198 Merge branch 'master' of http://dd-vmp07-com04:3000/AppStd/Monorepo 2020-04-17 11:55:42 +02:00
1d88a8467c MS EmailFunctions
- ZuGferd Service
- Windream
2020-04-17 11:55:33 +02:00
Jonathan Jenne
88dfb3fab1 EDMI: Prepare using moving files to archive and setting retention date on import 2020-04-16 16:31:34 +02:00
Jonathan Jenne
9095c0cd07 EDMI: Add Testing to EDMIBenchmark, Add ListFiles to EDMIService 2020-04-16 13:38:01 +02:00
Jonathan Jenne
6ee7bd07a3 EDMIBenchmark: Prepare further tests 2020-04-15 16:13:26 +02:00
Jonathan Jenne
b7a5f4d4a3 WIP: EDMI: Improve Error Handling 2020-04-15 14:44:42 +02:00
Jonathan Jenne
62e4e409a6 WIP: EDMI Service 2020-04-15 12:09:01 +02:00
Jonathan Jenne
a20c0eb4b0 WIP: Streaming files from service to client 2020-04-14 16:25:16 +02:00
Jonathan Jenne
52a6d103e6 EDMIService: fix paths on import 2020-04-14 10:34:30 +02:00
Jonathan Jenne
bb9dd66d1f EDMI Service: WIP 2020-04-09 16:23:39 +02:00
Jonathan Jenne
7abf47c2fc Modules.Interfaces: Version 1.0.2.0 2020-04-09 12:36:52 +02:00
Jonathan Jenne
b1f7883757 remove users from group on sync 2020-04-09 12:36:19 +02:00
Jonathan Jenne
84ebac00a9 test sync delete user 2020-04-09 12:23:45 +02:00
Jonathan Jenne
308fdef2f8 EDMIBenchmark: small changes 2020-04-08 15:02:03 +02:00
Jonathan Jenne
a7125add1e DocumentViewer: Version 1.0.3.0 2020-04-08 15:01:45 +02:00
Jonathan Jenne
10e2579df4 DocumentViewer: Support Streams 2020-04-08 15:01:28 +02:00
Jonathan Jenne
594d71bc75 add FileId to DocumentObject 2020-04-08 14:14:50 +02:00
Jonathan Jenne
86c99f0fc6 set logEntireMessage to false to prevent outofmemory exception when importing multiple large files 2020-04-08 13:42:17 +02:00
Jonathan Jenne
b78949ae46 stupid wcf config 2020-04-08 11:41:47 +02:00
Jonathan Jenne
425d51c65c create directory on import, version filename 2020-04-08 11:38:34 +02:00
Jonathan Jenne
a7e48a939c add edmi benchmark 2020-04-08 11:37:51 +02:00
Jonathan Jenne
d1817fedb5 bring EDMIService up to date 2020-04-07 10:55:09 +02:00
Jonathan Jenne
37a3675d84 update Service Reference in EDMI.API 2020-04-07 10:54:35 +02:00
Jonathan Jenne
fa476e3101 Logging: Version 2.0.0.1 2020-04-07 10:44:43 +02:00
Jonathan Jenne
a394c5e557 set default product name if not supplied 2020-04-07 10:44:33 +02:00
Jonathan Jenne
b38e3acb6d remove last IDB fragments 2020-04-06 16:27:33 +02:00
Jonathan Jenne
bd01dfe6d2 fix EDMI.File Test 2020-04-06 16:27:10 +02:00
Jonathan Jenne
eb527a7abb EDMIService: Use EDMI.File functions, add DatastorePath 2020-04-06 16:04:01 +02:00
Jonathan Jenne
0e13de63fb fix old references to IDBService 2020-04-06 15:21:02 +02:00
Jonathan Jenne
ec779f7697 Add new Temp option to Logging 2020-04-06 15:18:04 +02:00
Jonathan Jenne
1d62d18ced fix Logging.Test 2020-04-06 15:17:54 +02:00
Jonathan Jenne
729f4c73ee fix Filesystem.Test 2020-04-06 15:17:38 +02:00
Jonathan Jenne
77b6658988 add EDMI.File Module 2020-04-06 15:17:18 +02:00
Jonathan Jenne
7de03b4889 rename service directories 2020-04-06 15:17:03 +02:00
Jonathan Jenne
9a0235e941 fix remaining EDMI.API reference errors 2020-04-06 14:11:16 +02:00
Jonathan Jenne
018469dc21 clean up changes in EDMI.API 2020-04-06 14:02:46 +02:00
Jonathan Jenne
4809337c86 Merge remote-tracking branch 'origin/master' into ZugferdService-Redesign 2020-04-06 13:24:48 +02:00
dc82b42e7a MS windream 2020-04-06 13:20:15 +02:00
347 changed files with 10741 additions and 2713 deletions

6
ChatTest/App.config Normal file
View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
</configuration>

View File

@@ -4,15 +4,16 @@
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{A8C3F298-76AB-4359-AB3C-986E313B4336}</ProjectGuid>
<OutputType>Exe</OutputType>
<StartupObject>DigitalData.Services.IDBService.WindowsService</StartupObject>
<RootNamespace>DigitalData.Services.IDBService</RootNamespace>
<AssemblyName>IDBService</AssemblyName>
<ProjectGuid>{4A726345-FD6B-4E1C-9E5D-18C9043D7714}</ProjectGuid>
<OutputType>WinExe</OutputType>
<StartupObject>ChatTest.My.MyApplication</StartupObject>
<RootNamespace>ChatTest</RootNamespace>
<AssemblyName>ChatTest</AssemblyName>
<FileAlignment>512</FileAlignment>
<MyType>Console</MyType>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<MyType>WindowsForms</MyType>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
@@ -21,7 +22,7 @@
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>IDBService.xml</DocumentationFile>
<DocumentationFile>ChatTest.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
@@ -31,7 +32,7 @@
<DefineTrace>true</DefineTrace>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DocumentationFile>IDBService.xml</DocumentationFile>
<DocumentationFile>ChatTest.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup>
@@ -47,22 +48,30 @@
<OptionInfer>On</OptionInfer>
</PropertyGroup>
<ItemGroup>
<Reference Include="FirebirdSql.Data.FirebirdClient, Version=6.4.0.0, Culture=neutral, PublicKeyToken=3750abcc3150b00c, processorArchitecture=MSIL">
<HintPath>..\..\packages\FirebirdSql.Data.FirebirdClient.6.4.0\lib\net452\FirebirdSql.Data.FirebirdClient.dll</HintPath>
<Reference Include="DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Utils.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraGrid.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DigitalData.Controls.ChatNewConv">
<HintPath>..\Controls.ChatNewConv\obj\Debug\DigitalData.Controls.ChatNewConv.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Modules.Database, Version=1.0.0.6, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\Modules.Database\bin\Debug\DigitalData.Modules.Database.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\..\packages\NLog.4.6.8\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.7.2\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Configuration.Install" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.IO.Compression" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.ServiceProcess" />
<Reference Include="System.Transactions" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
@@ -77,25 +86,21 @@
<Import Include="System.Collections" />
<Import Include="System.Collections.Generic" />
<Import Include="System.Data" />
<Import Include="System.Drawing" />
<Import Include="System.Diagnostics" />
<Import Include="System.Windows.Forms" />
<Import Include="System.Linq" />
<Import Include="System.Xml.Linq" />
<Import Include="System.Threading.Tasks" />
</ItemGroup>
<ItemGroup>
<Compile Include="AppConfig.vb" />
<Compile Include="Results\BaseResult.vb" />
<Compile Include="Results\ContainerResult.vb" />
<Compile Include="Results\DocumentResult.vb" />
<Compile Include="Exceptions.vb" />
<Compile Include="Results\DatabaseResult.vb" />
<Compile Include="IDBService.vb" />
<Compile Include="Results\DocumentResult2.vb" />
<Compile Include="Results\IndexResult.vb" />
<Compile Include="WindowsService.vb">
<SubType>Component</SubType>
<Compile Include="Form1.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="Form1.Designer.vb">
<DependentUpon>Form1.vb</DependentUpon>
<SubType>Form</SubType>
</Compile>
<Compile Include="IIDBService.vb" />
<Compile Include="My Project\AssemblyInfo.vb" />
<Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen>
@@ -111,22 +116,17 @@
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
<Compile Include="ProjectInstaller.vb">
<SubType>Component</SubType>
</Compile>
<Compile Include="Request.vb" />
<Compile Include="SettingsModule.vb" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Form1.resx">
<DependentUpon>Form1.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="My Project\Resources.resx">
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="ProjectInstaller.resx">
<DependentUpon>ProjectInstaller.vb</DependentUpon>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="My Project\Application.myapp">
@@ -138,27 +138,16 @@
<CustomToolNamespace>My</CustomToolNamespace>
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
</None>
<None Include="App.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<SubType>Designer</SubType>
</None>
<None Include="App.config" />
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\Modules.Database\Database.vbproj">
<Project>{EAF0EA75-5FA7-485D-89C7-B2D843B03A96}</Project>
<Name>Database</Name>
<ProjectReference Include="..\Controls.ChatControl\ChatControl.vbproj">
<Project>{1f278760-4f6b-42e8-b82d-01d4c8618340}</Project>
<Name>ChatControl</Name>
</ProjectReference>
<ProjectReference Include="..\..\Modules.EDMIAPI\EDMIAPI.vbproj">
<Project>{5B1171DC-FFFE-4813-A20D-786AAE47B320}</Project>
<Name>EDMIAPI</Name>
</ProjectReference>
<ProjectReference Include="..\..\Modules.Filesystem\Filesystem.vbproj">
<Project>{991D0231-4623-496D-8BD0-9CA906029CBC}</Project>
<Name>Filesystem</Name>
</ProjectReference>
<ProjectReference Include="..\..\Modules.Logging\Logging.vbproj">
<Project>{903B2D7D-3B80-4BE9-8713-7447B704E1B0}</Project>
<ProjectReference Include="..\Modules.Logging\Logging.vbproj">
<Project>{903b2d7d-3b80-4be9-8713-7447b704e1b0}</Project>
<Name>Logging</Name>
</ProjectReference>
</ItemGroup>

60
ChatTest/Form1.Designer.vb generated Normal file
View File

@@ -0,0 +1,60 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class Form1
Inherits System.Windows.Forms.Form
'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
<System.Diagnostics.DebuggerNonUserCode()> _
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.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.ChatNewConv1 = New DigitalData.Controls.ChatNewConv.ChatNewConv()
Me.ChatControl1 = New DigitalData.Controls.ChatControl.ChatControl()
Me.SuspendLayout()
'
'ChatNewConv1
'
Me.ChatNewConv1.Font = New System.Drawing.Font("Tahoma", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.ChatNewConv1.Location = New System.Drawing.Point(479, 51)
Me.ChatNewConv1.Name = "ChatNewConv1"
Me.ChatNewConv1.Size = New System.Drawing.Size(497, 450)
Me.ChatNewConv1.TabIndex = 1
'
'ChatControl1
'
Me.ChatControl1.Font = New System.Drawing.Font("Tahoma", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.ChatControl1.Location = New System.Drawing.Point(12, 12)
Me.ChatControl1.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
Me.ChatControl1.Name = "ChatControl1"
Me.ChatControl1.Size = New System.Drawing.Size(422, 587)
Me.ChatControl1.TabIndex = 2
'
'Form1
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(1044, 584)
Me.Controls.Add(Me.ChatControl1)
Me.Controls.Add(Me.ChatNewConv1)
Me.Name = "Form1"
Me.Text = "Form1"
Me.ResumeLayout(False)
End Sub
Friend WithEvents ChatNewConv1 As DigitalData.Controls.ChatNewConv.ChatNewConv
Friend WithEvents ChatControl1 As DigitalData.Controls.ChatControl.ChatControl
End Class

View File

@@ -117,22 +117,4 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="txtQuery.Text" xml:space="preserve">
<value>query Nls{
niederlassungen {
niederlassungen {
mdnr
mdkurzbezeichnung
bezeichnung
sparte {
id
name
__typename
}
__typename
}
__typename
}
}</value>
</data>
</root>

23
ChatTest/Form1.vb Normal file
View File

@@ -0,0 +1,23 @@
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.Database
Public Class Form1
Private _Database As MSSQLServer
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
Dim oLogConfig As New LogConfig(LogConfig.PathType.CustomPath, Application.StartupPath)
Dim oConnectionString = "Server=sDD-VMP04-SQL17\DD_DEVELOP01;Database=IDB_TEST;User Id=sa;Password=dd;"
Me._Database = New MSSQLServer(oLogConfig, oConnectionString)
ChatControl1.Init(oLogConfig, oConnectionString, "Email", "JenneJ")
ChatControl1.GetConversations(10070)
Dim oSQL = "SELECT GUID as UserID,NAME,USERNAME,EMAIL from TBDD_USER"
Dim oDTUSERS As DataTable = _Database.GetDatatable(oSQL)
ChatNewConv1.Init(oLogConfig, oConnectionString, 10070, "SchreiberM", "de-DE", oDTUSERS, Nothing)
AddHandler ChatNewConv1.Conversation_Created, AddressOf onConversationCreated
End Sub
Sub onConversationCreated()
MsgBox("Created")
End Sub
End Class

View File

@@ -0,0 +1,38 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:4.0.30319.42000
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My
'NOTE: This file is auto-generated; do not modify it directly. To make changes,
' or if you encounter build errors in this file, go to the Project Designer
' (go to Project Properties or double-click the My Project node in
' Solution Explorer), and make changes on the Application tab.
'
Partial Friend Class MyApplication
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
Public Sub New()
MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
Me.IsSingleInstance = false
Me.EnableVisualStyles = true
Me.SaveMySettingsOnExit = true
Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses
End Sub
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
Protected Overrides Sub OnCreateMainForm()
Me.MainForm = Global.ChatTest.Form1
End Sub
End Class
End Namespace

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<MyApplicationData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<MySubMain>true</MySubMain>
<MainForm>Form1</MainForm>
<SingleInstance>false</SingleInstance>
<ShutdownMode>0</ShutdownMode>
<EnableVisualStyles>true</EnableVisualStyles>
<AuthenticationMode>0</AuthenticationMode>
<ApplicationType>0</ApplicationType>
<SaveMySettingsOnExit>true</SaveMySettingsOnExit>
</MyApplicationData>

View File

@@ -0,0 +1,35 @@
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
' Allgemeine Informationen über eine Assembly werden über die folgenden
' Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
' die einer Assembly zugeordnet sind.
' Werte der Assemblyattribute überprüfen
<Assembly: AssemblyTitle("ChatTest")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("ChatTest")>
<Assembly: AssemblyCopyright("Copyright © 2020")>
<Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(False)>
'Die folgende GUID wird für die typelib-ID verwendet, wenn dieses Projekt für COM verfügbar gemacht wird.
<Assembly: Guid("f348c274-1ccf-49cc-9729-9495f1d94958")>
' Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
'
' Hauptversion
' Nebenversion
' Buildnummer
' Revision
'
' Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
' indem Sie "*" wie unten gezeigt eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.0.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

View File

@@ -0,0 +1,62 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:4.0.30319.42000
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My.Resources
'This class was auto-generated by the StronglyTypedResourceBuilder
'class via a tool like ResGen or Visual Studio.
'To add or remove a member, edit your .ResX file then rerun ResGen
'with the /str option, or rebuild your VS project.
'''<summary>
''' A strongly-typed resource class, for looking up localized strings, etc.
'''</summary>
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0"), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
Friend Module Resources
Private resourceMan As Global.System.Resources.ResourceManager
Private resourceCulture As Global.System.Globalization.CultureInfo
'''<summary>
''' Returns the cached ResourceManager instance used by this class.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
Get
If Object.ReferenceEquals(resourceMan, Nothing) Then
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ChatTest.Resources", GetType(Resources).Assembly)
resourceMan = temp
End If
Return resourceMan
End Get
End Property
'''<summary>
''' Overrides the current thread's CurrentUICulture property for all
''' resource lookups using this strongly typed resource class.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend Property Culture() As Global.System.Globalization.CultureInfo
Get
Return resourceCulture
End Get
Set(ByVal value As Global.System.Globalization.CultureInfo)
resourceCulture = value
End Set
End Property
End Module
End Namespace

73
ChatTest/My Project/Settings.Designer.vb generated Normal file
View File

@@ -0,0 +1,73 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:4.0.30319.42000
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0"), _
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Partial Friend NotInheritable Class MySettings
Inherits Global.System.Configuration.ApplicationSettingsBase
Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings)
#Region "My.Settings Auto-Save Functionality"
#If _MyType = "WindowsForms" Then
Private Shared addedHandler As Boolean
Private Shared addedHandlerLockObject As New Object
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
If My.Application.SaveMySettingsOnExit Then
My.Settings.Save()
End If
End Sub
#End If
#End Region
Public Shared ReadOnly Property [Default]() As MySettings
Get
#If _MyType = "WindowsForms" Then
If Not addedHandler Then
SyncLock addedHandlerLockObject
If Not addedHandler Then
AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
addedHandler = True
End If
End SyncLock
End If
#End If
Return defaultInstance
End Get
End Property
End Class
End Namespace
Namespace My
<Global.Microsoft.VisualBasic.HideModuleNameAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
Friend Module MySettingsProperty
<Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
Friend ReadOnly Property Settings() As Global.ChatTest.My.MySettings
Get
Return Global.ChatTest.My.MySettings.Default
End Get
End Property
End Module
End Namespace

4
ChatTest/packages.config Normal file
View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NLog" version="4.7.2" targetFramework="net472" />
</packages>

View File

@@ -0,0 +1,299 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class ChatControl
Inherits System.Windows.Forms.UserControl
'UserControl1 überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
<System.Diagnostics.DebuggerNonUserCode()> _
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.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.components = New System.ComponentModel.Container()
Dim ItemTemplate1 As DevExpress.XtraGrid.Views.Tile.ItemTemplate = New DevExpress.XtraGrid.Views.Tile.ItemTemplate()
Dim TableColumnDefinition1 As DevExpress.XtraEditors.TableLayout.TableColumnDefinition = New DevExpress.XtraEditors.TableLayout.TableColumnDefinition()
Dim TableColumnDefinition2 As DevExpress.XtraEditors.TableLayout.TableColumnDefinition = New DevExpress.XtraEditors.TableLayout.TableColumnDefinition()
Dim TileViewItemElement1 As DevExpress.XtraGrid.Views.Tile.TileViewItemElement = New DevExpress.XtraGrid.Views.Tile.TileViewItemElement()
Dim TileViewItemElement2 As DevExpress.XtraGrid.Views.Tile.TileViewItemElement = New DevExpress.XtraGrid.Views.Tile.TileViewItemElement()
Dim TileViewItemElement3 As DevExpress.XtraGrid.Views.Tile.TileViewItemElement = New DevExpress.XtraGrid.Views.Tile.TileViewItemElement()
Dim TableRowDefinition1 As DevExpress.XtraEditors.TableLayout.TableRowDefinition = New DevExpress.XtraEditors.TableLayout.TableRowDefinition()
Dim TableRowDefinition2 As DevExpress.XtraEditors.TableLayout.TableRowDefinition = New DevExpress.XtraEditors.TableLayout.TableRowDefinition()
Dim ItemTemplate2 As DevExpress.XtraGrid.Views.Tile.ItemTemplate = New DevExpress.XtraGrid.Views.Tile.ItemTemplate()
Dim TableColumnDefinition3 As DevExpress.XtraEditors.TableLayout.TableColumnDefinition = New DevExpress.XtraEditors.TableLayout.TableColumnDefinition()
Dim TableColumnDefinition4 As DevExpress.XtraEditors.TableLayout.TableColumnDefinition = New DevExpress.XtraEditors.TableLayout.TableColumnDefinition()
Dim TileViewItemElement4 As DevExpress.XtraGrid.Views.Tile.TileViewItemElement = New DevExpress.XtraGrid.Views.Tile.TileViewItemElement()
Dim TileViewItemElement5 As DevExpress.XtraGrid.Views.Tile.TileViewItemElement = New DevExpress.XtraGrid.Views.Tile.TileViewItemElement()
Dim TileViewItemElement6 As DevExpress.XtraGrid.Views.Tile.TileViewItemElement = New DevExpress.XtraGrid.Views.Tile.TileViewItemElement()
Dim TableRowDefinition3 As DevExpress.XtraEditors.TableLayout.TableRowDefinition = New DevExpress.XtraEditors.TableLayout.TableRowDefinition()
Dim TableRowDefinition4 As DevExpress.XtraEditors.TableLayout.TableRowDefinition = New DevExpress.XtraEditors.TableLayout.TableRowDefinition()
Dim TableColumnDefinition5 As DevExpress.XtraEditors.TableLayout.TableColumnDefinition = New DevExpress.XtraEditors.TableLayout.TableColumnDefinition()
Dim TableColumnDefinition6 As DevExpress.XtraEditors.TableLayout.TableColumnDefinition = New DevExpress.XtraEditors.TableLayout.TableColumnDefinition()
Dim TableRowDefinition5 As DevExpress.XtraEditors.TableLayout.TableRowDefinition = New DevExpress.XtraEditors.TableLayout.TableRowDefinition()
Dim TableRowDefinition6 As DevExpress.XtraEditors.TableLayout.TableRowDefinition = New DevExpress.XtraEditors.TableLayout.TableRowDefinition()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(ChatControl))
Me.columnUsername = New DevExpress.XtraGrid.Columns.TileViewColumn()
Me.columnMessage = New DevExpress.XtraGrid.Columns.TileViewColumn()
Me.columnDate = New DevExpress.XtraGrid.Columns.TileViewColumn()
Me.RepositoryItemHypertextLabel1 = New DevExpress.XtraEditors.Repository.RepositoryItemHypertextLabel()
Me.RepositoryItemHyperLinkEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemHyperLinkEdit()
Me.GridChat = New DevExpress.XtraGrid.GridControl()
Me.ChatView = New DevExpress.XtraGrid.Views.Tile.TileView()
Me.btnSendMessage = New DevExpress.XtraEditors.SimpleButton()
Me.ChatSource = New System.Windows.Forms.BindingSource(Me.components)
Me.Panel1 = New System.Windows.Forms.Panel()
Me.txtMessage = New System.Windows.Forms.TextBox()
Me.lblTitle = New System.Windows.Forms.Label()
CType(Me.RepositoryItemHypertextLabel1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RepositoryItemHyperLinkEdit1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridChat, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.ChatView, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.ChatSource, System.ComponentModel.ISupportInitialize).BeginInit()
Me.Panel1.SuspendLayout()
Me.SuspendLayout()
'
'columnUsername
'
Me.columnUsername.FieldName = "USER_FROM"
Me.columnUsername.MinWidth = 23
Me.columnUsername.Name = "columnUsername"
Me.columnUsername.Visible = True
Me.columnUsername.VisibleIndex = 1
Me.columnUsername.Width = 87
'
'columnMessage
'
Me.columnMessage.FieldName = "MESSAGE_TEXT"
Me.columnMessage.MinWidth = 23
Me.columnMessage.Name = "columnMessage"
Me.columnMessage.Visible = True
Me.columnMessage.VisibleIndex = 0
Me.columnMessage.Width = 87
'
'columnDate
'
Me.columnDate.FieldName = "ADDED_WHEN"
Me.columnDate.MinWidth = 23
Me.columnDate.Name = "columnDate"
Me.columnDate.Visible = True
Me.columnDate.VisibleIndex = 2
Me.columnDate.Width = 87
'
'RepositoryItemHypertextLabel1
'
Me.RepositoryItemHypertextLabel1.Name = "RepositoryItemHypertextLabel1"
'
'RepositoryItemHyperLinkEdit1
'
Me.RepositoryItemHyperLinkEdit1.AutoHeight = False
Me.RepositoryItemHyperLinkEdit1.Name = "RepositoryItemHyperLinkEdit1"
'
'GridChat
'
Me.GridChat.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _
Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.GridChat.BackgroundImage = Global.DigitalData.Controls.ChatControl.My.Resources.Resources.crop_php
Me.GridChat.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center
Me.GridChat.EmbeddedNavigator.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
Me.GridChat.Font = New System.Drawing.Font("Segoe UI", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.GridChat.Location = New System.Drawing.Point(0, 30)
Me.GridChat.MainView = Me.ChatView
Me.GridChat.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
Me.GridChat.Name = "GridChat"
Me.GridChat.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemHyperLinkEdit1, Me.RepositoryItemHypertextLabel1})
Me.GridChat.Size = New System.Drawing.Size(420, 454)
Me.GridChat.TabIndex = 0
Me.GridChat.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.ChatView})
'
'ChatView
'
Me.ChatView.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.columnMessage, Me.columnUsername, Me.columnDate})
Me.ChatView.ContextButtonOptions.HoverStateOpacity = 0.75!
Me.ChatView.ContextButtonOptions.TopPanelColor = System.Drawing.Color.White
Me.ChatView.DetailHeight = 431
Me.ChatView.GridControl = Me.GridChat
Me.ChatView.Name = "ChatView"
Me.ChatView.OptionsTiles.ColumnCount = 1
Me.ChatView.OptionsTiles.GroupTextPadding = New System.Windows.Forms.Padding(0, 8, 12, 8)
Me.ChatView.OptionsTiles.IndentBetweenGroups = 0
Me.ChatView.OptionsTiles.IndentBetweenItems = 10
Me.ChatView.OptionsTiles.ItemPadding = New System.Windows.Forms.Padding(0)
Me.ChatView.OptionsTiles.ItemSize = New System.Drawing.Size(374, 64)
Me.ChatView.OptionsTiles.LayoutMode = DevExpress.XtraGrid.Views.Tile.TileViewLayoutMode.Kanban
Me.ChatView.OptionsTiles.Orientation = System.Windows.Forms.Orientation.Vertical
Me.ChatView.OptionsTiles.Padding = New System.Windows.Forms.Padding(5)
Me.ChatView.OptionsTiles.RowCount = 0
Me.ChatView.OptionsTiles.ScrollMode = DevExpress.XtraEditors.TileControlScrollMode.ScrollBar
TableColumnDefinition1.Length.Value = 250.0R
TableColumnDefinition2.Length.Value = 100.0R
ItemTemplate1.Columns.Add(TableColumnDefinition1)
ItemTemplate1.Columns.Add(TableColumnDefinition2)
TileViewItemElement1.Column = Me.columnUsername
TileViewItemElement1.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
TileViewItemElement1.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.ZoomInside
TileViewItemElement1.Text = "columnUsername"
TileViewItemElement1.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleLeft
TileViewItemElement1.TextLocation = New System.Drawing.Point(10, 0)
TileViewItemElement2.Column = Me.columnMessage
TileViewItemElement2.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
TileViewItemElement2.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.ZoomInside
TileViewItemElement2.RowIndex = 1
TileViewItemElement2.Text = "columnMessage"
TileViewItemElement2.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleLeft
TileViewItemElement2.TextLocation = New System.Drawing.Point(10, 0)
TileViewItemElement3.Column = Me.columnDate
TileViewItemElement3.ColumnIndex = 1
TileViewItemElement3.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
TileViewItemElement3.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.ZoomInside
TileViewItemElement3.Text = "columnDate"
TileViewItemElement3.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleRight
TileViewItemElement3.TextLocation = New System.Drawing.Point(-10, 0)
ItemTemplate1.Elements.Add(TileViewItemElement1)
ItemTemplate1.Elements.Add(TileViewItemElement2)
ItemTemplate1.Elements.Add(TileViewItemElement3)
ItemTemplate1.Name = "ChatLeft"
TableRowDefinition1.Length.Value = 24.0R
TableRowDefinition2.Length.Value = 24.0R
ItemTemplate1.Rows.Add(TableRowDefinition1)
ItemTemplate1.Rows.Add(TableRowDefinition2)
TableColumnDefinition3.Length.Value = 100.0R
TableColumnDefinition4.Length.Value = 250.0R
ItemTemplate2.Columns.Add(TableColumnDefinition3)
ItemTemplate2.Columns.Add(TableColumnDefinition4)
TileViewItemElement4.Column = Me.columnUsername
TileViewItemElement4.ColumnIndex = 1
TileViewItemElement4.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
TileViewItemElement4.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.ZoomInside
TileViewItemElement4.Text = "columnUsername"
TileViewItemElement4.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleRight
TileViewItemElement4.TextLocation = New System.Drawing.Point(-10, 0)
TileViewItemElement5.Column = Me.columnMessage
TileViewItemElement5.ColumnIndex = 1
TileViewItemElement5.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
TileViewItemElement5.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.ZoomInside
TileViewItemElement5.RowIndex = 1
TileViewItemElement5.Text = "columnMessage"
TileViewItemElement5.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleRight
TileViewItemElement5.TextLocation = New System.Drawing.Point(-10, 0)
TileViewItemElement6.Column = Me.columnDate
TileViewItemElement6.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
TileViewItemElement6.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.ZoomInside
TileViewItemElement6.Text = "columnDate"
TileViewItemElement6.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleLeft
TileViewItemElement6.TextLocation = New System.Drawing.Point(10, 0)
ItemTemplate2.Elements.Add(TileViewItemElement4)
ItemTemplate2.Elements.Add(TileViewItemElement5)
ItemTemplate2.Elements.Add(TileViewItemElement6)
ItemTemplate2.Name = "ChatRight"
TableRowDefinition3.Length.Value = 24.0R
TableRowDefinition4.Length.Value = 24.0R
ItemTemplate2.Rows.Add(TableRowDefinition3)
ItemTemplate2.Rows.Add(TableRowDefinition4)
Me.ChatView.Templates.Add(ItemTemplate1)
Me.ChatView.Templates.Add(ItemTemplate2)
Me.ChatView.TileColumns.Add(TableColumnDefinition5)
Me.ChatView.TileColumns.Add(TableColumnDefinition6)
Me.ChatView.TileRows.Add(TableRowDefinition5)
Me.ChatView.TileRows.Add(TableRowDefinition6)
'
'btnSendMessage
'
Me.btnSendMessage.Dock = System.Windows.Forms.DockStyle.Right
Me.btnSendMessage.ImageOptions.Image = CType(resources.GetObject("btnSendMessage.ImageOptions.Image"), System.Drawing.Image)
Me.btnSendMessage.ImageOptions.Location = DevExpress.XtraEditors.ImageLocation.MiddleCenter
Me.btnSendMessage.Location = New System.Drawing.Point(373, 0)
Me.btnSendMessage.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
Me.btnSendMessage.Name = "btnSendMessage"
Me.btnSendMessage.PaintStyle = DevExpress.XtraEditors.Controls.PaintStyles.Light
Me.btnSendMessage.Size = New System.Drawing.Size(49, 102)
Me.btnSendMessage.TabIndex = 2
Me.btnSendMessage.ToolTip = "Add message"
'
'Panel1
'
Me.Panel1.BackColor = System.Drawing.SystemColors.GradientActiveCaption
Me.Panel1.Controls.Add(Me.txtMessage)
Me.Panel1.Controls.Add(Me.btnSendMessage)
Me.Panel1.Dock = System.Windows.Forms.DockStyle.Bottom
Me.Panel1.Location = New System.Drawing.Point(0, 485)
Me.Panel1.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
Me.Panel1.Name = "Panel1"
Me.Panel1.Size = New System.Drawing.Size(422, 102)
Me.Panel1.TabIndex = 3
'
'txtMessage
'
Me.txtMessage.AcceptsReturn = True
Me.txtMessage.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _
Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.txtMessage.BackColor = System.Drawing.Color.GhostWhite
Me.txtMessage.BorderStyle = System.Windows.Forms.BorderStyle.None
Me.txtMessage.Font = New System.Drawing.Font("Calibri", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.txtMessage.ForeColor = System.Drawing.SystemColors.InfoText
Me.txtMessage.Location = New System.Drawing.Point(17, 15)
Me.txtMessage.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
Me.txtMessage.Multiline = True
Me.txtMessage.Name = "txtMessage"
Me.txtMessage.ScrollBars = System.Windows.Forms.ScrollBars.Vertical
Me.txtMessage.Size = New System.Drawing.Size(349, 70)
Me.txtMessage.TabIndex = 3
'
'lblTitle
'
Me.lblTitle.AutoSize = True
Me.lblTitle.Font = New System.Drawing.Font("Tahoma", 9.75!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblTitle.Location = New System.Drawing.Point(3, 10)
Me.lblTitle.Name = "lblTitle"
Me.lblTitle.Size = New System.Drawing.Size(50, 16)
Me.lblTitle.TabIndex = 4
Me.lblTitle.Text = "Label1"
'
'ChatControl
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(7.0!, 16.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.Controls.Add(Me.lblTitle)
Me.Controls.Add(Me.GridChat)
Me.Controls.Add(Me.Panel1)
Me.Font = New System.Drawing.Font("Tahoma", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
Me.Name = "ChatControl"
Me.Size = New System.Drawing.Size(422, 587)
CType(Me.RepositoryItemHypertextLabel1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.RepositoryItemHyperLinkEdit1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridChat, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.ChatView, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.ChatSource, System.ComponentModel.ISupportInitialize).EndInit()
Me.Panel1.ResumeLayout(False)
Me.Panel1.PerformLayout()
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents GridChat As DevExpress.XtraGrid.GridControl
Friend WithEvents ChatView As DevExpress.XtraGrid.Views.Tile.TileView
Friend WithEvents columnMessage As DevExpress.XtraGrid.Columns.TileViewColumn
Friend WithEvents columnUsername As DevExpress.XtraGrid.Columns.TileViewColumn
Friend WithEvents columnDate As DevExpress.XtraGrid.Columns.TileViewColumn
Friend WithEvents ChatSource As BindingSource
Friend WithEvents btnSendMessage As DevExpress.XtraEditors.SimpleButton
Friend WithEvents RepositoryItemHyperLinkEdit1 As DevExpress.XtraEditors.Repository.RepositoryItemHyperLinkEdit
Friend WithEvents RepositoryItemHypertextLabel1 As DevExpress.XtraEditors.Repository.RepositoryItemHypertextLabel
Friend WithEvents txtMessage As TextBox
Friend WithEvents Panel1 As Panel
Friend WithEvents lblTitle As Label
End Class

View File

@@ -0,0 +1,161 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="btnSendMessage.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAACp0RVh0VGl0
bGUARm9vdGVyO0FkZCBHcm91cCBGb290ZXI7Rm9vdGVyO0dyb3VwlRubyQAABwtJREFUWEetl3lQ1GUY
x38ddpl2Oh1/mV2THTOVZU79o+bYMdNtpplTjZV55VGGoKQisiDHLnKJIIggCOJRKl4pAiLHgiiQTXdc
oYAIArtcfXue5/29u0uxw9S0M5/5Pu8yvN/v876/991dg15XEFcSVxFXD8Gw/wDPy/PLC8AA+HXVliz7
8eTscgzKTqaM6jIkkSbRWKlJltItGhoLUtuRkFFynDw4PDc6aICr2ai//8//iX70mTVrQqadXa4hvAYY
xmn5H3r7+gentx89jDmW2hwPrPtMVN1HYTZnlLLLtYRsw2ABrkmkpfIagCbTtZgw2tQ06zaNWaXuUcoB
4tOL2eU6wnsAXiZeLm3Gk7q69oT+pk0UNDbNunvMmnCa8FxxaUMHuHZzRokE0Mu4aYd9IBl/I92OONI4
Wt7YdI1ddENCARzdva4AMamn2OV6wmuA6zZtVwFcnejOpFYd6q48cfT0EqayKcHKdHVTAJonKqWQXW4g
vAfgZeK02ihme6lJibtOo5qI9iS1BFFEdGoxqcISdwJdTg7QK9sWmVygA/B9MGiA63mZOICTOnF3R0pd
OP4GT6yg2jRiOllp3KlxqADWpHx2GU54D8DLxAHU8vUhalsxNgpFSlNYixCZUkwUwUZEbmVOUU1QbeOa
CIzJJfMedBC8ohEJeUMGuIGXidPK3jn7pAPpzLMjgSdW3YnSe2zEtWhXDy5rJZwUIDT+BLvcSHgNMJyX
iQNoEyt1Yk0+hQjCmlxIy1iIiCQaa7bwuBDhDNWasMSTWBN5TMzbCV7NkLjj7DKC8B6Al4mPn+rG3RF3
I5id6bq9q9vEHHcqwzaXdqOto1sCWGK+HTLAjaHxubJf2pQ7CU0sQGgCKZ1rVRfIGRc2M/kK11i95289
jEtkfolC8Haujz7KLiMJ/kAaNMAIXiZ+6vXSadqoS+mKYJXOTNiAkZoNiVaXOqXmZyhg4xF2uYnwHsAS
e0wCtNNkTEh8PoLj81wavImUkZqIY/JhoTqIsNCY4dov7BAuXnYKHfQ8rbUdYpebCa8BRq6POirnWi+d
6sjp1svUFU2o4ck96wG0O9T+U0N8u/5a2zJkgJsCIo/IfmnDILrNgmIV60VzRYUYhsYmfO4D6T2luVgR
kiNXeMK+RfCNf87FfMu4Y/OCnzQ+tYwzfGKfFVwB1loPyRFspU65C3kGzL3/J/q50M+D+9ngBrh7PtIr
4p5FdWMcKhtjUdkQjblBT+JMvc2oqLca5fXhxhdRE1wBbv4qPEfOf0u7k3B4qAPNVDe3EaRNbTSmWqkD
TZdMuCYuUM1wgOXRE5D742Kk2acKnwQ+gfK6MKOsNsSw1wQbSyPdAW5ZFZojR1BMaaLw3dUI212F0OxK
bCBCMs/CknkGQRkVWJdegYC001izrRyrU8rgn2JH9N5qFJ+7gF8a2vFzQxsd6X4s2zgBR39YiNTSqcJH
AY+jpCbIKK4JNIp+CzAWW8e7A/iF7JcjqLsKzjqLA9+3Yj9zrhXfMN+1YG+1Yjexq4qobMHOymbUtXUj
MmseltqewRLbeCyxKg5/Pw+pJVOwjfgs/GksCjMJfYp4+lsd4Fbf4H2yv3oJ120/TUYXEX2yQYgqIPIb
sDG/HpFMXj1shPUEU4faVicWR4xHWe0G2GtDUFoTjJLfg5Bz7mNsK56CFGJ/1YfI/2Ul8n72xYmffPC+
/2PkrwLc5rP+a3mYzrc6cP5SF1Yl25FNnYkhGWlDW16dGEbkKsKZ47WooQALw57CwXNzxYzZKjyPlKLn
RZNZCVZmtt+j7gDLA/fIU9zY2iV8GV+E9NNN2F5+AWlEahlhP48UpvQ8thLJpY1IKm5EItFAWzA/ZBwO
VM8Rk61Fk02zyUg+RbASSVQrJmGWR4DbPw/YI0eosbUTjRc7sciWhw+CjmL2uiOYHXAYs9YcxMzVBzHD
PwfvrDyAaX778JbvPryx/Gu8Tpw8U481m+Zg+rKH8PbSBzGNmO33mBgpJmOW76N4bcEDxP14lXhl/n05
OsCopWt3yR3wx8UuRUsnGgbQJVrfrMb1Zq25QNvGn3z62xQzy/cRZFfMwJbCScREvOvzCLtd8U3VHGPv
2Q+Nl+fe6zoFo5aszpYLyNOUTRpaOpQZw2Y89jCua+Zxh2idjImmTgnAhpll05B4cqIw48uHJcCeiveM
XWfeM176eIwrwG2f+Wej5TLdARSihS4agS8jvoDoaPLdoC+bJvMiUpcQ1aLm3/gUkfJFNJMMM+xvIoHM
mXeWj5UAWeUzjKzy6cb0z8e6Aoz81Cc1d9GqnWAWrsoawIKVmViglfHLxHytwg6lvqYS5VW1WGaZiRc/
GkPcgxfmCAc5wNQPRhtT3h9tTF/mDsC/2/gLwyjiDuJOL9z1L7jbVJ6PPwm9/DaE8RdajUyGSTHyEAAA
AABJRU5ErkJggg==
</value>
</data>
<metadata name="ChatSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,163 @@
Imports DevExpress.XtraGrid.Views.Tile
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.Logging
Public Class ChatControl
Private ReadOnly IdColumn As String = "GUID"
Private ReadOnly IdentificationColumn As String = "USER_FROM"
Private ReadOnly MessageColumn As String = "MESSAGE_TEXT"
Private ReadOnly DateColumn As String = "ADDED_WHEN"
Private Db As MSSQLServer
Private LogConfig As LogConfig
Private Logger As Logger
Private ReadOnly UsernameColorsDict As New Dictionary(Of String, Color)
Private ReadOnly UsernameColors As New List(Of Color) From {
Color.Purple,
Color.Red,
Color.LightBlue,
Color.DarkSeaGreen
}
Public IDBObjectId As Long
Public ConnStringIDB As String
Public ConversationIdentification As String
Public Username As String
Public CurrentConversation As Long
Public Sub New()
InitializeComponent()
End Sub
Public Sub Init(LogConfig As LogConfig, ConnectionStringIDB As String, ConversationIdentification As String, Username As String)
Me.LogConfig = LogConfig
Me.Logger = LogConfig.GetLogger()
Me.ConnStringIDB = ConnectionStringIDB
Me.ConversationIdentification = ConversationIdentification
Me.Username = Username
Me.Db = New MSSQLServer(LogConfig, ConnStringIDB)
End Sub
Public Function GetConversations(IDBObjectId As Long)
Dim oSQL As String = $"SELECT * FROM VWIDB_CONVERSATION WHERE IDB_OBJ_ID = {IDBObjectId} ORDER BY CONVERSATION_ID DESC"
Dim oDatatable As DataTable = Db.GetDatatable(oSQL)
Dim oConversations As New List(Of String)
If Not IsNothing(oDatatable) Then
If oDatatable.Rows.Count = 1 Then
Dim oItem = oDatatable.Rows(0).Item("CONVERSATION_ID").ToString + "|" + oDatatable.Rows(0).Item("TITLE").ToString
oConversations.Insert(0, oItem)
CurrentConversation = oDatatable.Rows(0).Item("CONVERSATION_ID")
LoadConversation(CurrentConversation)
Else
For Each oROW As DataRow In oDatatable.Rows
Dim oItem = oROW.Item("CONVERSATION_ID").ToString + "|" + oROW.Item("TITLE").ToString
oConversations.Insert(0, oItem)
If oROW.Item("CONVERSATION_STATE") = "Started" Then
CurrentConversation = oROW.Item("CONVERSATION_ID")
LoadConversation(CurrentConversation)
End If
Next
End If
End If
Return oConversations
End Function
Private Sub tsCBConversations_SelectedIndexChanged(sender As Object, e As EventArgs)
'If tsCBConversations.SelectedIndex <> -1 Then
' Dim oValues As List(Of String) = tsCBConversations.Text.Split("|").ToList()
' CurrentConversation = oValues(0)
' LoadConversation(CurrentConversation)
'End If
End Sub
Public Sub LoadConversation(ConversationId As Long)
Dim oSQL As String = $"SELECT * FROM VWIDB_CONV_MESSAGES WHERE CONV_ID = {ConversationId} ORDER BY GUID"
Dim oDatatable As DataTable = Db.GetDatatable(oSQL)
BuildUsernameColorDict(oDatatable)
oSQL = $"SELECT * FROM VWIDB_CONVERSATION WHERE CONVERSATION_ID = {ConversationId}"
Dim oDatatable2 As DataTable = Db.GetDatatable(oSQL)
GridChat.DataSource = ChatSource
ChatSource.DataSource = oDatatable
lblTitle.Text = oDatatable2.Rows(0).Item("TITLE")
End Sub
Public Sub NewMessage(MessageText As String)
Try
Dim oSQL As String = $"EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] {CurrentConversation},'{MessageText}', '{ConversationIdentification}'"
Dim oResult = Db.GetScalarValue(oSQL)
LoadConversation(CurrentConversation)
txtMessage.Text = String.Empty
ChatView.MoveLast()
Catch ex As Exception
Logger.Error(ex)
End Try
End Sub
Private Sub BuildUsernameColorDict(Datatable As DataTable)
Dim oIndex = 0
UsernameColorsDict.Clear()
Datatable.AsEnumerable().
Select(Function(Row) Row.Item(IdentificationColumn)).
Distinct().ToList().
ForEach(Sub(Name)
UsernameColorsDict.Add(Name, UsernameColors.Item(oIndex))
oIndex += 1
End Sub)
End Sub
Private Sub ChatView_CustomItemTemplate(sender As Object, e As TileViewCustomItemTemplateEventArgs) Handles ChatView.CustomItemTemplate
Dim oRow As DataRow = ChatView.GetDataRow(e.RowHandle)
Dim oUsername As String = oRow.Item(IdentificationColumn)
If oUsername = ConversationIdentification Or oUsername = Username Then
e.Template = e.Templates.Item("ChatRight")
Else
e.Template = e.Templates.Item("ChatLeft")
End If
End Sub
Private Sub ChatView_ItemCustomize(sender As Object, e As TileViewItemCustomizeEventArgs) Handles ChatView.ItemCustomize
Dim oRow As DataRow = ChatView.GetDataRow(e.RowHandle)
Dim oUsername As String = oRow.Item(IdentificationColumn)
Dim oMessage As String = oRow.Item(MessageColumn)
Dim oColor As Color = UsernameColorsDict.Item(oUsername)
If oUsername = ConversationIdentification Or oUsername = Username Then
e.Item.AppearanceItem.Normal.BackColor = Color.PaleTurquoise
End If
e.Item.AppearanceItem.Focused.BackColor = Color.Turquoise
e.Item.Item(IdentificationColumn).Appearance.Normal.ForeColor = oColor
End Sub
Private Sub txtMessage_KeyUp(sender As Object, e As KeyEventArgs)
End Sub
Private Sub SimpleButton1_Click(sender As Object, e As EventArgs) Handles btnSendMessage.Click
If txtMessage.Text.Count > 0 Then
NewMessage(txtMessage.Text)
End If
End Sub
Private Sub TextBox1_KeyUp(sender As Object, e As KeyEventArgs) Handles txtMessage.KeyUp
If e.Control And e.KeyCode = Keys.Enter And txtMessage.Text.Count > 0 Then
NewMessage(txtMessage.Text)
End If
End Sub
Private Sub ChatControl_Click(sender As Object, e As EventArgs) Handles MyBase.Click
End Sub
Private Sub ChatControl_Leave(sender As Object, e As EventArgs) Handles Me.Leave
End Sub
End Class

View File

@@ -0,0 +1,171 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{1F278760-4F6B-42E8-B82D-01D4C8618340}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>DigitalData.Controls.ChatControl</RootNamespace>
<AssemblyName>DigitalData.Controls.ChatControl</AssemblyName>
<FileAlignment>512</FileAlignment>
<MyType>Windows</MyType>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<Deterministic>true</Deterministic>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>DigitalData.Controls.ChatControl.xml</DocumentationFile>
<DefineConstants>_MYFORMS=True</DefineConstants>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DocumentationFile>DigitalData.Controls.ChatControl.xml</DocumentationFile>
<DefineConstants>_MYFORMS=True</DefineConstants>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup>
<OptionExplicit>On</OptionExplicit>
</PropertyGroup>
<PropertyGroup>
<OptionCompare>Binary</OptionCompare>
</PropertyGroup>
<PropertyGroup>
<OptionStrict>Off</OptionStrict>
</PropertyGroup>
<PropertyGroup>
<OptionInfer>On</OptionInfer>
</PropertyGroup>
<ItemGroup>
<Reference Include="DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Printing.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Utils.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraGrid.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraLayout.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraPrinting.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DigitalData.Controls.LookupGrid">
<HintPath>..\Controls.LookupGrid\obj\Debug\DigitalData.Controls.LookupGrid.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.7.2\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="PresentationCore" />
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" />
<Reference Include="System.Data" />
<Reference Include="System.Drawing" />
<Reference Include="System.IO.Compression" />
<Reference Include="System.Runtime.Remoting" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.Transactions" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Net.Http" />
<Reference Include="UIAutomationClient" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Import Include="Microsoft.VisualBasic" />
<Import Include="System" />
<Import Include="System.Collections" />
<Import Include="System.Collections.Generic" />
<Import Include="System.Data" />
<Import Include="System.Drawing" />
<Import Include="System.Diagnostics" />
<Import Include="System.Windows.Forms" />
<Import Include="System.Linq" />
<Import Include="System.Xml.Linq" />
<Import Include="System.Threading.Tasks" />
</ItemGroup>
<ItemGroup>
<Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Application.myapp</DependentUpon>
</Compile>
<Compile Include="ChatControl.vb">
<SubType>UserControl</SubType>
</Compile>
<Compile Include="ChatControl.Designer.vb">
<DependentUpon>ChatControl.vb</DependentUpon>
</Compile>
<Compile Include="My Project\AssemblyInfo.vb" />
<Compile Include="My Project\Resources.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="My Project\Settings.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="ChatControl.resx">
<DependentUpon>ChatControl.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="My Project\licenses.licx" />
<EmbeddedResource Include="My Project\Resources.resx">
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="My Project\Application.myapp">
<Generator>MyApplicationCodeGenerator</Generator>
<LastGenOutput>Application.Designer.vb</LastGenOutput>
</None>
<None Include="My Project\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<CustomToolNamespace>My</CustomToolNamespace>
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
</None>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Service Include="{94E38DFF-614B-4cbd-B67C-F211BB35CE8B}" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Modules.Database\Database.vbproj">
<Project>{eaf0ea75-5fa7-485d-89c7-b2d843b03a96}</Project>
<Name>Database</Name>
</ProjectReference>
<ProjectReference Include="..\Modules.Logging\Logging.vbproj">
<Project>{903b2d7d-3b80-4be9-8713-7447b704e1b0}</Project>
<Name>Logging</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="Resources\crop.php.jpeg" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\Send_16x16.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\Action_Workflow_Activate.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\Action_Workflow_Deactivate.png" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
</Project>

View File

@@ -0,0 +1,34 @@
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
' Allgemeine Informationen über eine Assembly werden über die folgenden
' Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
' die einer Assembly zugeordnet sind.
' Werte der Assemblyattribute überprüfen
<Assembly: AssemblyTitle("ChatControl")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("ChatControl")>
<Assembly: AssemblyCopyright("Copyright © 2020")>
<Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(False)>
'Die folgende GUID wird für die typelib-ID verwendet, wenn dieses Projekt für COM verfügbar gemacht wird.
<Assembly: Guid("3019c541-3ad3-4afb-86b5-e3d9c705783a")>
' Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
'
' Hauptversion
' Nebenversion
' Buildnummer
' Revision
'
' Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
' indem Sie "*" wie unten gezeigt eingeben:
<Assembly: AssemblyVersion("1.0.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

View File

@@ -0,0 +1,103 @@
'------------------------------------------------------------------------------
' <auto-generated>
' Dieser Code wurde von einem Tool generiert.
' Laufzeitversion:4.0.30319.42000
'
' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
' der Code erneut generiert wird.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Imports System
Namespace My.Resources
'Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert
'-Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert.
'Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
'mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu.
'''<summary>
''' Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
'''</summary>
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0"), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
Friend Module Resources
Private resourceMan As Global.System.Resources.ResourceManager
Private resourceCulture As Global.System.Globalization.CultureInfo
'''<summary>
''' Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
Get
If Object.ReferenceEquals(resourceMan, Nothing) Then
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("DigitalData.Controls.ChatControl.Resources", GetType(Resources).Assembly)
resourceMan = temp
End If
Return resourceMan
End Get
End Property
'''<summary>
''' Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
''' Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend Property Culture() As Global.System.Globalization.CultureInfo
Get
Return resourceCulture
End Get
Set
resourceCulture = value
End Set
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary>
Friend ReadOnly Property Action_Workflow_Activate() As System.Drawing.Bitmap
Get
Dim obj As Object = ResourceManager.GetObject("Action_Workflow_Activate", resourceCulture)
Return CType(obj,System.Drawing.Bitmap)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary>
Friend ReadOnly Property Action_Workflow_Deactivate() As System.Drawing.Bitmap
Get
Dim obj As Object = ResourceManager.GetObject("Action_Workflow_Deactivate", resourceCulture)
Return CType(obj,System.Drawing.Bitmap)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary>
Friend ReadOnly Property crop_php() As System.Drawing.Bitmap
Get
Dim obj As Object = ResourceManager.GetObject("crop.php", resourceCulture)
Return CType(obj,System.Drawing.Bitmap)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary>
Friend ReadOnly Property Send_16x16() As System.Drawing.Bitmap
Get
Dim obj As Object = ResourceManager.GetObject("Send_16x16", resourceCulture)
Return CType(obj,System.Drawing.Bitmap)
End Get
End Property
End Module
End Namespace

View File

@@ -0,0 +1,133 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="crop.php" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\crop.php.jpeg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Send_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Send_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Action_Workflow_Activate" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Action_Workflow_Activate.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Action_Workflow_Deactivate" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Action_Workflow_Deactivate.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root>

View File

@@ -0,0 +1,73 @@
'------------------------------------------------------------------------------
' <auto-generated>
' Dieser Code wurde von einem Tool generiert.
' Laufzeitversion:4.0.30319.42000
'
' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
' der Code erneut generiert wird.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.4.0.0"), _
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Partial Friend NotInheritable Class MySettings
Inherits Global.System.Configuration.ApplicationSettingsBase
Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings)
#Region "Automatische My.Settings-Speicherfunktion"
#If _MyType = "WindowsForms" Then
Private Shared addedHandler As Boolean
Private Shared addedHandlerLockObject As New Object
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs)
If My.Application.SaveMySettingsOnExit Then
My.Settings.Save()
End If
End Sub
#End If
#End Region
Public Shared ReadOnly Property [Default]() As MySettings
Get
#If _MyType = "WindowsForms" Then
If Not addedHandler Then
SyncLock addedHandlerLockObject
If Not addedHandler Then
AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
addedHandler = True
End If
End SyncLock
End If
#End If
Return defaultInstance
End Get
End Property
End Class
End Namespace
Namespace My
<Global.Microsoft.VisualBasic.HideModuleNameAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
Friend Module MySettingsProperty
<Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
Friend ReadOnly Property Settings() As Global.DigitalData.Controls.ChatControl.My.MySettings
Get
Return Global.DigitalData.Controls.ChatControl.My.MySettings.Default
End Get
End Property
End Module
End Namespace

View File

@@ -0,0 +1,5 @@
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.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.XtraBars.BarManager, DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.LookUpEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.ButtonEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a

Binary file not shown.

After

Width:  |  Height:  |  Size: 862 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 887 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 426 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 172 KiB

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NLog" version="4.7.2" targetFramework="net472" />
</packages>

View File

@@ -0,0 +1,236 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class ChatNewConv
Inherits System.Windows.Forms.UserControl
'UserControl1 überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
<System.Diagnostics.DebuggerNonUserCode()> _
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.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(ChatNewConv))
Me.Panel1 = New System.Windows.Forms.Panel()
Me.txtConv_Title = New System.Windows.Forms.TextBox()
Me.Label1 = New System.Windows.Forms.Label()
Me.Panel2 = New System.Windows.Forms.Panel()
Me.SimpleButton1 = New DevExpress.XtraEditors.SimpleButton()
Me.BackgroundWorker1 = New System.ComponentModel.BackgroundWorker()
Me.AccordionControl1 = New DevExpress.XtraBars.Navigation.AccordionControl()
Me.AccordionContentContainer1 = New DevExpress.XtraBars.Navigation.AccordionContentContainer()
Me.GridControlUsers = New DevExpress.XtraGrid.GridControl()
Me.GridViewUsers = New DevExpress.XtraGrid.Views.Grid.GridView()
Me.AccordionContentContainer2 = New DevExpress.XtraBars.Navigation.AccordionContentContainer()
Me.GridControlGroups = New DevExpress.XtraGrid.GridControl()
Me.GridViewGroups = New DevExpress.XtraGrid.Views.Grid.GridView()
Me.AccordionControlElement1 = New DevExpress.XtraBars.Navigation.AccordionControlElement()
Me.AccordionControlElementUser = New DevExpress.XtraBars.Navigation.AccordionControlElement()
Me.AccordionControlElementGroups = New DevExpress.XtraBars.Navigation.AccordionControlElement()
Me.Panel1.SuspendLayout()
Me.Panel2.SuspendLayout()
CType(Me.AccordionControl1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.AccordionControl1.SuspendLayout()
Me.AccordionContentContainer1.SuspendLayout()
CType(Me.GridControlUsers, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridViewUsers, System.ComponentModel.ISupportInitialize).BeginInit()
Me.AccordionContentContainer2.SuspendLayout()
CType(Me.GridControlGroups, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridViewGroups, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'Panel1
'
Me.Panel1.Controls.Add(Me.txtConv_Title)
Me.Panel1.Controls.Add(Me.Label1)
Me.Panel1.Dock = System.Windows.Forms.DockStyle.Top
Me.Panel1.Location = New System.Drawing.Point(0, 0)
Me.Panel1.Name = "Panel1"
Me.Panel1.Size = New System.Drawing.Size(463, 57)
Me.Panel1.TabIndex = 0
'
'txtConv_Title
'
Me.txtConv_Title.Font = New System.Drawing.Font("Tahoma", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.txtConv_Title.Location = New System.Drawing.Point(6, 28)
Me.txtConv_Title.Name = "txtConv_Title"
Me.txtConv_Title.Size = New System.Drawing.Size(449, 23)
Me.txtConv_Title.TabIndex = 1
'
'Label1
'
Me.Label1.AutoSize = True
Me.Label1.Location = New System.Drawing.Point(3, 11)
Me.Label1.Name = "Label1"
Me.Label1.Size = New System.Drawing.Size(345, 14)
Me.Label1.TabIndex = 0
Me.Label1.Text = "Bitte geben Sie einen aussagekräftigen Konversationstitel ein:"
'
'Panel2
'
Me.Panel2.Controls.Add(Me.SimpleButton1)
Me.Panel2.Dock = System.Windows.Forms.DockStyle.Bottom
Me.Panel2.Location = New System.Drawing.Point(0, 413)
Me.Panel2.Name = "Panel2"
Me.Panel2.Size = New System.Drawing.Size(463, 59)
Me.Panel2.TabIndex = 1
'
'SimpleButton1
'
Me.SimpleButton1.Dock = System.Windows.Forms.DockStyle.Fill
Me.SimpleButton1.ImageOptions.SvgImage = CType(resources.GetObject("SimpleButton1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.SimpleButton1.Location = New System.Drawing.Point(0, 0)
Me.SimpleButton1.Name = "SimpleButton1"
Me.SimpleButton1.Size = New System.Drawing.Size(463, 59)
Me.SimpleButton1.TabIndex = 0
Me.SimpleButton1.Text = "Konversation anlegen"
'
'AccordionControl1
'
Me.AccordionControl1.Controls.Add(Me.AccordionContentContainer1)
Me.AccordionControl1.Controls.Add(Me.AccordionContentContainer2)
Me.AccordionControl1.Dock = System.Windows.Forms.DockStyle.Fill
Me.AccordionControl1.Elements.AddRange(New DevExpress.XtraBars.Navigation.AccordionControlElement() {Me.AccordionControlElement1})
Me.AccordionControl1.Location = New System.Drawing.Point(0, 57)
Me.AccordionControl1.Name = "AccordionControl1"
Me.AccordionControl1.Size = New System.Drawing.Size(463, 356)
Me.AccordionControl1.TabIndex = 5
Me.AccordionControl1.Text = "AccordionControl1"
'
'AccordionContentContainer1
'
Me.AccordionContentContainer1.Controls.Add(Me.GridControlUsers)
Me.AccordionContentContainer1.Name = "AccordionContentContainer1"
Me.AccordionContentContainer1.Size = New System.Drawing.Size(444, 177)
Me.AccordionContentContainer1.TabIndex = 1
'
'GridControlUsers
'
Me.GridControlUsers.Dock = System.Windows.Forms.DockStyle.Fill
Me.GridControlUsers.Location = New System.Drawing.Point(0, 0)
Me.GridControlUsers.MainView = Me.GridViewUsers
Me.GridControlUsers.Name = "GridControlUsers"
Me.GridControlUsers.Size = New System.Drawing.Size(444, 177)
Me.GridControlUsers.TabIndex = 0
Me.GridControlUsers.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewUsers})
'
'GridViewUsers
'
Me.GridViewUsers.Appearance.EvenRow.BackColor = System.Drawing.Color.PaleTurquoise
Me.GridViewUsers.Appearance.EvenRow.Options.UseBackColor = True
Me.GridViewUsers.GridControl = Me.GridControlUsers
Me.GridViewUsers.Name = "GridViewUsers"
Me.GridViewUsers.OptionsBehavior.Editable = False
Me.GridViewUsers.OptionsSelection.MultiSelect = True
Me.GridViewUsers.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CheckBoxRowSelect
Me.GridViewUsers.OptionsView.EnableAppearanceEvenRow = True
Me.GridViewUsers.OptionsView.ShowAutoFilterRow = True
Me.GridViewUsers.OptionsView.ShowGroupPanel = False
'
'AccordionContentContainer2
'
Me.AccordionContentContainer2.Controls.Add(Me.GridControlGroups)
Me.AccordionContentContainer2.Name = "AccordionContentContainer2"
Me.AccordionContentContainer2.Size = New System.Drawing.Size(444, 96)
Me.AccordionContentContainer2.TabIndex = 2
'
'GridControlGroups
'
Me.GridControlGroups.Dock = System.Windows.Forms.DockStyle.Fill
Me.GridControlGroups.Location = New System.Drawing.Point(0, 0)
Me.GridControlGroups.MainView = Me.GridViewGroups
Me.GridControlGroups.Name = "GridControlGroups"
Me.GridControlGroups.Size = New System.Drawing.Size(444, 96)
Me.GridControlGroups.TabIndex = 1
Me.GridControlGroups.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewGroups})
'
'GridViewGroups
'
Me.GridViewGroups.Appearance.EvenRow.BackColor = System.Drawing.Color.PaleTurquoise
Me.GridViewGroups.Appearance.EvenRow.Options.UseBackColor = True
Me.GridViewGroups.GridControl = Me.GridControlGroups
Me.GridViewGroups.Name = "GridViewGroups"
Me.GridViewGroups.OptionsBehavior.Editable = False
Me.GridViewGroups.OptionsSelection.MultiSelect = True
Me.GridViewGroups.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CheckBoxRowSelect
Me.GridViewGroups.OptionsView.EnableAppearanceEvenRow = True
Me.GridViewGroups.OptionsView.ShowAutoFilterRow = True
Me.GridViewGroups.OptionsView.ShowGroupPanel = False
'
'AccordionControlElement1
'
Me.AccordionControlElement1.Elements.AddRange(New DevExpress.XtraBars.Navigation.AccordionControlElement() {Me.AccordionControlElementUser, Me.AccordionControlElementGroups})
Me.AccordionControlElement1.Expanded = True
Me.AccordionControlElement1.Name = "AccordionControlElement1"
Me.AccordionControlElement1.Text = "Bestimmen Sie wer an der Konversation teilnehmen kann:"
'
'AccordionControlElementUser
'
Me.AccordionControlElementUser.ContentContainer = Me.AccordionContentContainer1
Me.AccordionControlElementUser.Expanded = True
Me.AccordionControlElementUser.Name = "AccordionControlElementUser"
Me.AccordionControlElementUser.Style = DevExpress.XtraBars.Navigation.ElementStyle.Item
Me.AccordionControlElementUser.Text = "User"
'
'AccordionControlElementGroups
'
Me.AccordionControlElementGroups.ContentContainer = Me.AccordionContentContainer2
Me.AccordionControlElementGroups.Expanded = True
Me.AccordionControlElementGroups.Name = "AccordionControlElementGroups"
Me.AccordionControlElementGroups.Style = DevExpress.XtraBars.Navigation.ElementStyle.Item
Me.AccordionControlElementGroups.Text = "Gruppen"
'
'ChatNewConv
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(7.0!, 14.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.Controls.Add(Me.AccordionControl1)
Me.Controls.Add(Me.Panel2)
Me.Controls.Add(Me.Panel1)
Me.Font = New System.Drawing.Font("Tahoma", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Name = "ChatNewConv"
Me.Size = New System.Drawing.Size(463, 472)
Me.Panel1.ResumeLayout(False)
Me.Panel1.PerformLayout()
Me.Panel2.ResumeLayout(False)
CType(Me.AccordionControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.AccordionControl1.ResumeLayout(False)
Me.AccordionContentContainer1.ResumeLayout(False)
CType(Me.GridControlUsers, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridViewUsers, System.ComponentModel.ISupportInitialize).EndInit()
Me.AccordionContentContainer2.ResumeLayout(False)
CType(Me.GridControlGroups, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridViewGroups, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
End Sub
Friend WithEvents Panel1 As Panel
Friend WithEvents txtConv_Title As TextBox
Friend WithEvents Label1 As Label
Friend WithEvents Panel2 As Panel
Friend WithEvents BackgroundWorker1 As System.ComponentModel.BackgroundWorker
Friend WithEvents AccordionControl1 As DevExpress.XtraBars.Navigation.AccordionControl
Friend WithEvents AccordionContentContainer1 As DevExpress.XtraBars.Navigation.AccordionContentContainer
Friend WithEvents GridControlUsers As DevExpress.XtraGrid.GridControl
Friend WithEvents GridViewUsers As DevExpress.XtraGrid.Views.Grid.GridView
Friend WithEvents AccordionContentContainer2 As DevExpress.XtraBars.Navigation.AccordionContentContainer
Friend WithEvents GridControlGroups As DevExpress.XtraGrid.GridControl
Friend WithEvents GridViewGroups As DevExpress.XtraGrid.Views.Grid.GridView
Friend WithEvents AccordionControlElement1 As DevExpress.XtraBars.Navigation.AccordionControlElement
Friend WithEvents AccordionControlElementUser As DevExpress.XtraBars.Navigation.AccordionControlElement
Friend WithEvents AccordionControlElementGroups As DevExpress.XtraBars.Navigation.AccordionControlElement
Friend WithEvents SimpleButton1 As DevExpress.XtraEditors.SimpleButton
End Class

View File

@@ -0,0 +1,142 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="DevExpress.Data.v19.2" name="DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="SimpleButton1.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAGICAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5Z
ZWxsb3d7ZmlsbDojRkZCMTE1O30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLkdyZWVue2ZpbGw6IzAz
OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9Cgkuc3Qwe29wYWNpdHk6MC43NTt9Cgkuc3Qxe29wYWNp
dHk6MC41O30KPC9zdHlsZT4NCiAgPGcgaWQ9IkFkZENpcmNsZWQiPg0KICAgIDxwYXRoIGQ9Ik0xNiw0
QzkuNCw0LDQsOS40LDQsMTZzNS40LDEyLDEyLDEyczEyLTUuNCwxMi0xMlMyMi42LDQsMTYsNHogTTI0
LDE4aC02djZoLTR2LTZIOHYtNGg2VjhoNHY2aDZWMTh6IiBjbGFzcz0iR3JlZW4iIC8+DQogIDwvZz4N
Cjwvc3ZnPgs=
</value>
</data>
<metadata name="BackgroundWorker1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,25 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.29728.190
MinimumVisualStudioVersion = 10.0.40219.1
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ChatNewConv", "ChatNewConv.vbproj", "{1F278760-4F6B-42E8-B82D-01D4C8618340}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{1F278760-4F6B-42E8-B82D-01D4C8618340}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1F278760-4F6B-42E8-B82D-01D4C8618340}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1F278760-4F6B-42E8-B82D-01D4C8618340}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1F278760-4F6B-42E8-B82D-01D4C8618340}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {7A1345F2-0B32-4B54-AD8C-2DA579BFF116}
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,108 @@
Imports DevExpress.XtraGrid.Views.Tile
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.Logging
Public Class ChatNewConv
Public Delegate Sub ConversationCreated()
Public Event Conversation_Created As ConversationCreated
Private _Database As MSSQLServer
Private LogConfig As LogConfig
Private Logger As Logger
Public IDBObjectId As Long
Public ConnStringIDB As String
Public Username As String
Public User_Language As String
Public NewConversation As Long
Public Sub New()
InitializeComponent()
End Sub
Public Sub Init(LogConfig As LogConfig, ConnectionStringIDB As String, IDB_OBJ_ID As Long, Username As String, UserLanguage As String, DTUsers As DataTable, DTGroups As DataTable)
Me.LogConfig = LogConfig
Me.Logger = LogConfig.GetLogger()
Me.ConnStringIDB = ConnectionStringIDB
IDBObjectId = IDB_OBJ_ID
Me.Username = Username
Me.User_Language = UserLanguage
Me._Database = New MSSQLServer(LogConfig, ConnectionStringIDB)
If Not IsNothing(DTUsers) Then
If DTUsers.Rows.Count > 1 Then
AccordionControlElementUser.Visible = True
GridControlUsers.DataSource = DTUsers
Else
AccordionControlElementUser.Visible = False
End If
Else
AccordionControlElementUser.Visible = False
End If
If Not IsNothing(DTGroups) Then
If DTGroups.Rows.Count > 1 Then
AccordionControlElementGroups.Visible = True
GridControlGroups.DataSource = DTUsers
Try
GridViewUsers.Columns("UserID").Visible = False
Catch ex As Exception
GridViewUsers.Columns("USER_ID").Visible = False
End Try
Else
AccordionControlElementGroups.Visible = False
End If
Else
AccordionControlElementGroups.Visible = False
End If
End Sub
Private Sub SimpleButton1_Click(sender As Object, e As EventArgs) Handles SimpleButton1.Click
Try
If txtConv_Title.Text = String.Empty Then
MsgBox("Please add a conversation-title!", MsgBoxStyle.Information)
Exit Sub
End If
Dim oSQL = $"EXEC PRIDB_NEW_CONVERSATION {IDBObjectId},'{txtConv_Title.Text}','{Username}','{User_Language}'"
If _Database.ExecuteNonQuery(oSQL) = True Then
Dim oError As Boolean = False
oSQL = $"SELECT MAX(CONVERSATION_ID) FROM VWIDB_CONVERSATION WHERE IDB_OBJ_ID = {IDBObjectId}"
Dim oCONV_ID = _Database.NewExecuteScalar(oSQL)
If Not IsNothing(oCONV_ID) Then
NewConversation = oCONV_ID
Dim oSelectedUsers As Integer() = GridViewUsers.GetSelectedRows()
If oSelectedUsers.Count > 0 Then
For Each oRowHandle As Integer In oSelectedUsers
Dim oUserID
Try
oUserID = GridViewUsers.GetRowCellValue(oRowHandle, "UserID")
Catch ex As Exception
Try
oUserID = GridViewUsers.GetRowCellValue(oRowHandle, "USER_ID")
Catch ex1 As Exception
Logger.Warn("Error Selecting UserID/USER_ID: " & ex.Message)
oError = True
Exit Sub
End Try
End Try
oSQL = $"EXEC PRIDB_ADD_USER_2_CONVERSATION {oCONV_ID},{oUserID},'{Username}'"
If _Database.ExecuteNonQuery(oSQL) = False Then
oError = True
End If
Next
End If
If oError = False Then
RaiseEvent Conversation_Created()
End If
End If
Else
MsgBox("Error running create procedure. Check Your log!", MsgBoxStyle.Information)
End If
Catch ex As Exception
MsgBox($"Unexpected error in Add Conversation: {ex.Message}")
End Try
End Sub
End Class

View File

@@ -0,0 +1,171 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{86D27FFA-480F-481D-8D23-26DEAE92FE6C}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>DigitalData.Controls.ChatNewConv</RootNamespace>
<AssemblyName>DigitalData.Controls.ChatNewConv</AssemblyName>
<FileAlignment>512</FileAlignment>
<MyType>Windows</MyType>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<Deterministic>true</Deterministic>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>DigitalData.Controls.ChatNewConv.xml</DocumentationFile>
<DefineConstants>_MYFORMS=True</DefineConstants>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DocumentationFile>DigitalData.Controls.ChatNewConv.xml</DocumentationFile>
<DefineConstants>_MYFORMS=True</DefineConstants>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup>
<OptionExplicit>On</OptionExplicit>
</PropertyGroup>
<PropertyGroup>
<OptionCompare>Binary</OptionCompare>
</PropertyGroup>
<PropertyGroup>
<OptionStrict>Off</OptionStrict>
</PropertyGroup>
<PropertyGroup>
<OptionInfer>On</OptionInfer>
</PropertyGroup>
<ItemGroup>
<Reference Include="DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Printing.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Utils.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraGrid.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraLayout.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraPrinting.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DigitalData.Controls.LookupGrid">
<HintPath>..\Controls.LookupGrid\obj\Debug\DigitalData.Controls.LookupGrid.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.7.2\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="PresentationCore" />
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" />
<Reference Include="System.Data" />
<Reference Include="System.Drawing" />
<Reference Include="System.IO.Compression" />
<Reference Include="System.Runtime.Remoting" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.Transactions" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Net.Http" />
<Reference Include="UIAutomationClient" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Import Include="Microsoft.VisualBasic" />
<Import Include="System" />
<Import Include="System.Collections" />
<Import Include="System.Collections.Generic" />
<Import Include="System.Data" />
<Import Include="System.Drawing" />
<Import Include="System.Diagnostics" />
<Import Include="System.Windows.Forms" />
<Import Include="System.Linq" />
<Import Include="System.Xml.Linq" />
<Import Include="System.Threading.Tasks" />
</ItemGroup>
<ItemGroup>
<Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Application.myapp</DependentUpon>
</Compile>
<Compile Include="ChatNewConv.vb">
<SubType>UserControl</SubType>
</Compile>
<Compile Include="ChatNewConv.Designer.vb">
<DependentUpon>ChatNewConv.vb</DependentUpon>
</Compile>
<Compile Include="My Project\AssemblyInfo.vb" />
<Compile Include="My Project\Resources.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="My Project\Settings.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="ChatNewConv.resx">
<DependentUpon>ChatNewConv.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="My Project\licenses.licx" />
<EmbeddedResource Include="My Project\Resources.resx">
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="My Project\Application.myapp">
<Generator>MyApplicationCodeGenerator</Generator>
<LastGenOutput>Application.Designer.vb</LastGenOutput>
</None>
<None Include="My Project\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<CustomToolNamespace>My</CustomToolNamespace>
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
</None>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Service Include="{94E38DFF-614B-4cbd-B67C-F211BB35CE8B}" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Modules.Database\Database.vbproj">
<Project>{eaf0ea75-5fa7-485d-89c7-b2d843b03a96}</Project>
<Name>Database</Name>
</ProjectReference>
<ProjectReference Include="..\Modules.Logging\Logging.vbproj">
<Project>{903b2d7d-3b80-4be9-8713-7447b704e1b0}</Project>
<Name>Logging</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="Resources\crop.php.jpeg" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\Send_16x16.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\Action_Workflow_Activate.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\Action_Workflow_Deactivate.png" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
</Project>

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<MyApplicationData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<MySubMain>false</MySubMain>
<SingleInstance>false</SingleInstance>
<ShutdownMode>0</ShutdownMode>
<EnableVisualStyles>true</EnableVisualStyles>
<AuthenticationMode>0</AuthenticationMode>
<ApplicationType>1</ApplicationType>
<SaveMySettingsOnExit>true</SaveMySettingsOnExit>
</MyApplicationData>

View File

@@ -0,0 +1,34 @@
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
' Allgemeine Informationen über eine Assembly werden über die folgenden
' Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
' die einer Assembly zugeordnet sind.
' Werte der Assemblyattribute überprüfen
<Assembly: AssemblyTitle("ChatNewConv")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("ChatControl")>
<Assembly: AssemblyCopyright("Copyright © 2020")>
<Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(False)>
'Die folgende GUID wird für die typelib-ID verwendet, wenn dieses Projekt für COM verfügbar gemacht wird.
<Assembly: Guid("3019c541-3ad3-4afb-86b5-e3d9c705783a")>
' Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
'
' Hauptversion
' Nebenversion
' Buildnummer
' Revision
'
' Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
' indem Sie "*" wie unten gezeigt eingeben:
<Assembly: AssemblyVersion("1.0.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

View File

@@ -0,0 +1,103 @@
'------------------------------------------------------------------------------
' <auto-generated>
' Dieser Code wurde von einem Tool generiert.
' Laufzeitversion:4.0.30319.42000
'
' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
' der Code erneut generiert wird.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Imports System
Namespace My.Resources
'Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert
'-Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert.
'Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
'mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu.
'''<summary>
''' Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
'''</summary>
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0"), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
Friend Module Resources
Private resourceMan As Global.System.Resources.ResourceManager
Private resourceCulture As Global.System.Globalization.CultureInfo
'''<summary>
''' Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
Get
If Object.ReferenceEquals(resourceMan, Nothing) Then
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("DigitalData.Controls.ChatNewConv.Resources", GetType(Resources).Assembly)
resourceMan = temp
End If
Return resourceMan
End Get
End Property
'''<summary>
''' Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
''' Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend Property Culture() As Global.System.Globalization.CultureInfo
Get
Return resourceCulture
End Get
Set
resourceCulture = value
End Set
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary>
Friend ReadOnly Property Action_Workflow_Activate() As System.Drawing.Bitmap
Get
Dim obj As Object = ResourceManager.GetObject("Action_Workflow_Activate", resourceCulture)
Return CType(obj,System.Drawing.Bitmap)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary>
Friend ReadOnly Property Action_Workflow_Deactivate() As System.Drawing.Bitmap
Get
Dim obj As Object = ResourceManager.GetObject("Action_Workflow_Deactivate", resourceCulture)
Return CType(obj,System.Drawing.Bitmap)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary>
Friend ReadOnly Property crop_php() As System.Drawing.Bitmap
Get
Dim obj As Object = ResourceManager.GetObject("crop.php", resourceCulture)
Return CType(obj,System.Drawing.Bitmap)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary>
Friend ReadOnly Property Send_16x16() As System.Drawing.Bitmap
Get
Dim obj As Object = ResourceManager.GetObject("Send_16x16", resourceCulture)
Return CType(obj,System.Drawing.Bitmap)
End Get
End Property
End Module
End Namespace

View File

@@ -0,0 +1,133 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="crop.php" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\crop.php.jpeg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Send_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Send_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Action_Workflow_Activate" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Action_Workflow_Activate.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Action_Workflow_Deactivate" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Action_Workflow_Deactivate.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root>

View File

@@ -0,0 +1,73 @@
'------------------------------------------------------------------------------
' <auto-generated>
' Dieser Code wurde von einem Tool generiert.
' Laufzeitversion:4.0.30319.42000
'
' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
' der Code erneut generiert wird.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.4.0.0"), _
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Partial Friend NotInheritable Class MySettings
Inherits Global.System.Configuration.ApplicationSettingsBase
Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings)
#Region "Automatische My.Settings-Speicherfunktion"
#If _MyType = "WindowsForms" Then
Private Shared addedHandler As Boolean
Private Shared addedHandlerLockObject As New Object
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs)
If My.Application.SaveMySettingsOnExit Then
My.Settings.Save()
End If
End Sub
#End If
#End Region
Public Shared ReadOnly Property [Default]() As MySettings
Get
#If _MyType = "WindowsForms" Then
If Not addedHandler Then
SyncLock addedHandlerLockObject
If Not addedHandler Then
AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
addedHandler = True
End If
End SyncLock
End If
#End If
Return defaultInstance
End Get
End Property
End Class
End Namespace
Namespace My
<Global.Microsoft.VisualBasic.HideModuleNameAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
Friend Module MySettingsProperty
<Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
Friend ReadOnly Property Settings() As Global.DigitalData.Controls.ChatNewConv.My.MySettings
Get
Return Global.DigitalData.Controls.ChatNewConv.My.MySettings.Default
End Get
End Property
End Module
End Namespace

View File

@@ -0,0 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" UseMySettingsClassName="true">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>

View File

@@ -0,0 +1,6 @@
DevExpress.XtraBars.BarManager, DevExpress.XtraBars.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.LookUpEdit, 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.XtraEditors.ButtonEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a

Binary file not shown.

After

Width:  |  Height:  |  Size: 862 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 887 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 426 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 172 KiB

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NLog" version="4.7.2" targetFramework="net472" />
</packages>

View File

@@ -38,7 +38,7 @@ Partial Class DocumentViewer
Me.ToolStripSeparator6 = New System.Windows.Forms.ToolStripSeparator()
Me.btnFirstPage = New System.Windows.Forms.ToolStripButton()
Me.btnPreviousPage = New System.Windows.Forms.ToolStripButton()
Me.tbCurrentPage = New System.Windows.Forms.ToolStripTextBox()
Me.txtCurrentPage = New System.Windows.Forms.ToolStripTextBox()
Me.lblPageCount = New System.Windows.Forms.ToolStripLabel()
Me.btnNextPage = New System.Windows.Forms.ToolStripButton()
Me.btnLastPage = New System.Windows.Forms.ToolStripButton()
@@ -136,7 +136,7 @@ Partial Class DocumentViewer
Me.mainToolStrip.Font = New System.Drawing.Font("Tahoma", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.mainToolStrip.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden
Me.mainToolStrip.ImageScalingSize = New System.Drawing.Size(24, 24)
Me.mainToolStrip.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.btnPrint, Me.btnFitWidth, Me.btnFitPage, Me.ToolStripSeparator2, Me.btnMouseMode, Me.ToolStripSeparator6, Me.btnFirstPage, Me.btnPreviousPage, Me.tbCurrentPage, Me.lblPageCount, Me.btnNextPage, Me.btnLastPage, Me.ToolStripSeparator1, Me.btnZoomOut, Me.cbZoom, Me.btnZoomIn, Me.ToolStripSeparator5, Me.btnRotateLeft, Me.btnRotateRight, Me.btnFlipX, Me.btnFlipY, Me.ToolStripSeparator4, Me.btnSettings})
Me.mainToolStrip.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.btnPrint, Me.btnFitWidth, Me.btnFitPage, Me.ToolStripSeparator2, Me.btnMouseMode, Me.ToolStripSeparator6, Me.btnFirstPage, Me.btnPreviousPage, Me.txtCurrentPage, Me.lblPageCount, Me.btnNextPage, Me.btnLastPage, Me.ToolStripSeparator1, Me.btnZoomOut, Me.cbZoom, Me.btnZoomIn, Me.ToolStripSeparator5, Me.btnRotateLeft, Me.btnRotateRight, Me.btnFlipX, Me.btnFlipY, Me.ToolStripSeparator4, Me.btnSettings})
Me.mainToolStrip.Location = New System.Drawing.Point(0, 0)
Me.mainToolStrip.Name = "mainToolStrip"
Me.mainToolStrip.Size = New System.Drawing.Size(1015, 31)
@@ -254,10 +254,10 @@ Partial Class DocumentViewer
'
'tbCurrentPage
'
Me.tbCurrentPage.Font = New System.Drawing.Font("Tahoma", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.tbCurrentPage.Name = "tbCurrentPage"
Me.tbCurrentPage.Size = New System.Drawing.Size(40, 31)
Me.tbCurrentPage.TextBoxTextAlign = System.Windows.Forms.HorizontalAlignment.Right
Me.txtCurrentPage.Font = New System.Drawing.Font("Tahoma", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.txtCurrentPage.Name = "tbCurrentPage"
Me.txtCurrentPage.Size = New System.Drawing.Size(40, 31)
Me.txtCurrentPage.TextBoxTextAlign = System.Windows.Forms.HorizontalAlignment.Right
'
'lblPageCount
'
@@ -438,7 +438,7 @@ Partial Class DocumentViewer
Friend WithEvents ToolStripSeparator6 As ToolStripSeparator
Friend WithEvents btnFirstPage As ToolStripButton
Friend WithEvents btnPreviousPage As ToolStripButton
Friend WithEvents tbCurrentPage As ToolStripTextBox
Friend WithEvents txtCurrentPage As ToolStripTextBox
Friend WithEvents lblPageCount As ToolStripLabel
Friend WithEvents btnNextPage As ToolStripButton
Friend WithEvents btnLastPage As ToolStripButton

View File

@@ -7,6 +7,7 @@ Imports DevExpress.Spreadsheet
Imports GdPicture14
Imports DevExpress
Imports DevExpress.Office.Utils
Imports System.IO
Public Class DocumentViewer
Private Enum ZoomMode
@@ -28,6 +29,7 @@ Public Class DocumentViewer
Private _logger As Logger
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)
@@ -71,6 +73,7 @@ Public Class DocumentViewer
''' </summary>
Public Sub Done()
DeleteTempFiles()
FreeFile()
End Sub
''' <summary>
@@ -83,12 +86,24 @@ Public Class DocumentViewer
Exit Sub
End If
GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer
GdViewer.DocumentAlignment = ViewerDocumentAlignment.DocumentAlignmentTopCenter
_logger.Info("Loading File {0}", FilePath)
DoLoadFile(FilePath)
_FilePath = FilePath
UpdateMainUi()
End Sub
Public Sub LoadFile(FileName As String, Stream As Stream)
If _licenseKey = String.Empty Then
_logger.Warn("License key was not provided. File [{0}] not loaded.", FileName)
Exit Sub
End If
Dim oExtension As String = FileName.Substring(FileName.LastIndexOf("."))
_logger.Info("Loading File [{0}]", FileName)
DoLoadFile(Stream, oExtension)
UpdateMainUi()
End Sub
@@ -108,7 +123,27 @@ Public Class DocumentViewer
Next
_TempFiles.Clear()
End Sub
Private Sub FreeFile()
Try
Dim oFileInfo = New IO.FileInfo(_FilePath)
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)
Try
Dim oFileInfo = New IO.FileInfo(FilePath)
@@ -139,32 +174,13 @@ Public Class DocumentViewer
RichEditControl1.Dock = DockStyle.Fill
Case ".EML", ".DOC", ".DOCX", ".ODT", ".RTF", ".TXT"
Dim oFormat As XtraRichEdit.DocumentFormat = XtraRichEdit.DocumentFormat.Undefined
Select Case oExtension.ToUpper
Case ".EML" : oFormat = XtraRichEdit.DocumentFormat.Mht
Case ".DOC" : oFormat = XtraRichEdit.DocumentFormat.Doc
Case ".DOCX" : oFormat = XtraRichEdit.DocumentFormat.OpenXml
Case ".ODT" : oFormat = XtraRichEdit.DocumentFormat.OpenDocument
Case ".RTF" : oFormat = XtraRichEdit.DocumentFormat.Rtf
Case ".TXT" : oFormat = XtraRichEdit.DocumentFormat.PlainText
End Select
RichEditControl1.LoadDocument(FilePath, oFormat)
RichEditControl1.LoadDocument(FilePath, GetDocumentFormat(oExtension))
RichEditControl1.Visible = True
RichEditControl1.Dock = DockStyle.Fill
Case ".XLSX", ".XLS", "CSV"
Dim oFormat As Spreadsheet.DocumentFormat = Spreadsheet.DocumentFormat.Undefined
Select Case oExtension.ToUpper
Case "XLSX" : oFormat = Spreadsheet.DocumentFormat.Xlsx
Case "XLS" : oFormat = Spreadsheet.DocumentFormat.Xls
Case "CSV" : oFormat = Spreadsheet.DocumentFormat.Csv
End Select
SpreadsheetControl1.LoadDocument(FilePath, oFormat)
SpreadsheetControl1.LoadDocument(FilePath, GetSpreadsheetFormat(oExtension))
Dim oRange = SpreadsheetControl1.ActiveWorksheet.GetUsedRange()
oRange.AutoFitColumns()
@@ -175,13 +191,103 @@ Public Class DocumentViewer
Case Else
mainToolStrip.Visible = True
GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer
GdViewer.DocumentAlignment = ViewerDocumentAlignment.DocumentAlignmentTopCenter
GdViewer.DisplayFromFile(FilePath)
End Select
UpdateMainUi()
Catch ex As Exception
_logger.Error(ex)
End Try
End Sub
Private Sub DoLoadFile(Stream As Stream, Extension As String)
Try
RichEditControl1.Visible = False
RichEditControl1.Dock = DockStyle.None
SpreadsheetControl1.Visible = False
SpreadsheetControl1.Dock = DockStyle.None
mainToolStrip.Visible = False
Select Case Extension.ToUpper
Case ".MSG"
Dim oMsg As New Message(Stream)
' TODO: Improve Encoding, maybe convert based on encoding
oMsg.Encoding = System.Text.Encoding.UTF32
Dim oMime = oMsg.ConvertToMimeMessage()
Dim oTempFileName = IO.Path.GetTempFileName()
oMime.Save(oTempFileName, True)
RichEditControl1.LoadDocument(oTempFileName, XtraRichEdit.DocumentFormat.Mht)
_TempFiles.Add(oTempFileName)
RichEditControl1.Visible = True
RichEditControl1.Dock = DockStyle.Fill
Case ".EML", ".DOC", ".DOCX", ".ODT", ".RTF", ".TXT"
RichEditControl1.LoadDocument(Stream, GetDocumentFormat(Extension))
RichEditControl1.Visible = True
RichEditControl1.Dock = DockStyle.Fill
Case ".XLSX", ".XLS", "CSV"
SpreadsheetControl1.LoadDocument(Stream, GetSpreadsheetFormat(Extension))
Dim oRange = SpreadsheetControl1.ActiveWorksheet.GetUsedRange()
oRange.AutoFitColumns()
SpreadsheetControl1.Visible = True
SpreadsheetControl1.Dock = DockStyle.Fill
Case Else
mainToolStrip.Visible = True
GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer
GdViewer.DocumentAlignment = ViewerDocumentAlignment.DocumentAlignmentTopCenter
GdViewer.DisplayFromStream(Stream)
End Select
UpdateMainUi()
Catch ex As Exception
_logger.Error(ex)
End Try
End Sub
Private Function GetSpreadsheetFormat(Extension) As Spreadsheet.DocumentFormat
Dim oFormat As Spreadsheet.DocumentFormat = Spreadsheet.DocumentFormat.Undefined
Select Case Extension.ToUpper
Case "XLSX" : oFormat = Spreadsheet.DocumentFormat.Xlsx
Case "XLS" : oFormat = Spreadsheet.DocumentFormat.Xls
Case "CSV" : oFormat = Spreadsheet.DocumentFormat.Csv
End Select
Return oFormat
End Function
Private Function GetDocumentFormat(Extension)
Dim oFormat As XtraRichEdit.DocumentFormat = XtraRichEdit.DocumentFormat.Undefined
Select Case Extension.ToUpper
Case ".EML" : oFormat = XtraRichEdit.DocumentFormat.Mht
Case ".DOC" : oFormat = XtraRichEdit.DocumentFormat.Doc
Case ".DOCX" : oFormat = XtraRichEdit.DocumentFormat.OpenXml
Case ".ODT" : oFormat = XtraRichEdit.DocumentFormat.OpenDocument
Case ".RTF" : oFormat = XtraRichEdit.DocumentFormat.Rtf
Case ".TXT" : oFormat = XtraRichEdit.DocumentFormat.PlainText
End Select
Return oFormat
End Function
Private Sub btnOpen_Click(sender As Object, e As EventArgs)
GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer
GdViewer.DocumentAlignment = ViewerDocumentAlignment.DocumentAlignmentTopCenter
@@ -217,7 +323,7 @@ Public Class DocumentViewer
btnPrint.Enabled = False
btnFirstPage.Enabled = False
btnPreviousPage.Enabled = False
tbCurrentPage.Enabled = False
txtCurrentPage.Enabled = False
lblPageCount.Enabled = False
btnNextPage.Enabled = False
btnLastPage.Enabled = False
@@ -230,14 +336,14 @@ Public Class DocumentViewer
btnRotateRight.Enabled = False
btnFlipX.Enabled = False
btnFlipY.Enabled = False
tbCurrentPage.Text = "0"
txtCurrentPage.Text = "0"
lblPageCount.Text = "/ 0"
cbZoom.SelectedIndex = -1
Else
btnPrint.Enabled = True
btnFirstPage.Enabled = True
btnPreviousPage.Enabled = True
tbCurrentPage.Enabled = True
txtCurrentPage.Enabled = True
lblPageCount.Enabled = True
btnNextPage.Enabled = True
btnLastPage.Enabled = True
@@ -270,9 +376,9 @@ Public Class DocumentViewer
GdViewer.DisplayLastPage()
End Sub
Private Sub tbCurrentPage_Leave(ByVal sender As System.Object, ByVal e As EventArgs) Handles tbCurrentPage.Leave
Private Sub tbCurrentPage_Leave(ByVal sender As System.Object, ByVal e As EventArgs) Handles txtCurrentPage.Leave
Dim page As Integer = 0
If Integer.TryParse(tbCurrentPage.Text, page) Then
If Integer.TryParse(txtCurrentPage.Text, page) Then
If page > 0 And page <= GdViewer.PageCount Then
GdViewer.DisplayPage(page)
UpdateaNavigationToolbar()
@@ -459,24 +565,25 @@ Public Class DocumentViewer
End Sub
Private Sub UpdateaNavigationToolbar()
Dim currentPage As Integer = GdViewer.CurrentPage()
tbCurrentPage.Text = currentPage.ToString()
lblPageCount.Text = "/ " & GdViewer.PageCount.ToString()
If currentPage = 1 Then
btnFirstPage.Enabled = False
btnPreviousPage.Enabled = False
Else
btnFirstPage.Enabled = True
btnPreviousPage.Enabled = True
End If
If currentPage = GdViewer.PageCount Then
btnNextPage.Enabled = False
btnLastPage.Enabled = False
Else
btnNextPage.Enabled = True
btnLastPage.Enabled = True
End If
cbZoom.Text = String.Format(CultureInfo.InvariantCulture, "{0:#0.##%}", GdViewer.Zoom)
Try
Dim oCurrentZoom As Double = GdViewer.Zoom
Dim oCurrentPage As Integer = GdViewer.CurrentPage()
Dim oPageCount As Integer = GdViewer.PageCount
txtCurrentPage.Text = oCurrentPage.ToString()
lblPageCount.Text = "/ " & GdViewer.PageCount.ToString()
If oCurrentPage = 1 Or oCurrentPage = oPageCount Then
btnFirstPage.Enabled = False
btnPreviousPage.Enabled = False
Else
btnFirstPage.Enabled = True
btnPreviousPage.Enabled = True
End If
cbZoom.Text = String.Format(format:="{0:#0.##%}", arg0:=oCurrentZoom)
Catch ex As Exception
_logger.Error(ex)
End Try
End Sub
Private Sub btnFitWidth_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnFitWidth.Click

View File

@@ -78,7 +78,7 @@
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.7.0\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.7.2\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />

View File

@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.0.2.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>
<Assembly: AssemblyVersion("1.0.4.1")>
<Assembly: AssemblyFileVersion("1.4.0.0")>

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NLog" version="4.7.0" targetFramework="net461" />
<package id="NLog" version="4.7.2" targetFramework="net461" />
</packages>

View File

@@ -62,6 +62,8 @@ Public Class LookupControl2
Friend WithEvents GridView1 As DevExpress.XtraGrid.Views.Grid.GridView
Friend WithEvents GridView2 As DevExpress.XtraGrid.Views.Grid.GridView
Friend WithEvents fProperties As RepositoryItemGridLookUpEdit
Friend WithEvents fPropertiesView As DevExpress.XtraGrid.Views.Grid.GridView
Private _ReadOnly As Boolean = False
Shared Sub New()
@@ -197,6 +199,31 @@ Public Class LookupControl2
Return RepositoryItemLookupControl2.CustomEditName
End Get
End Property
Private Sub InitializeComponent()
Me.fProperties = New DevExpress.XtraEditors.Repository.RepositoryItemGridLookUpEdit()
Me.fPropertiesView = New DevExpress.XtraGrid.Views.Grid.GridView()
CType(Me.fProperties, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.fPropertiesView, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'fProperties
'
Me.fProperties.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)})
Me.fProperties.Name = "fProperties"
Me.fProperties.PopupView = Me.fPropertiesView
'
'fPropertiesView
'
Me.fPropertiesView.FocusRectStyle = DevExpress.XtraGrid.Views.Grid.DrawFocusRectStyle.RowFocus
Me.fPropertiesView.Name = "fPropertiesView"
Me.fPropertiesView.OptionsSelection.EnableAppearanceFocusedCell = False
Me.fPropertiesView.OptionsView.ShowGroupPanel = False
CType(Me.fProperties, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.fPropertiesView, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
End Sub
End Class
<UserRepositoryItem("RegisterLookupControl2")>

View File

@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.0.2.2")>
<Assembly: AssemblyVersion("1.0.2.3")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

View File

@@ -10,86 +10,89 @@ Public Class frmLookupGrid
Public Property DataSource As DataTable
Public Property SelectedValues As List(Of String)
Private dataColumn As Integer
Private dataSourceTemp As DataTable
Private view As GridView
Private grid As GridControl
Private _DataColumn As Integer
Private _DataSourceTemp As DataTable
Private _View As GridView
Private _Grid As GridControl
Private Sub frmLookupGrid_Load(sender As Object, e As EventArgs) Handles Me.Load
view = viewLookup
grid = gridLookup
If DataSource Is Nothing Then
Exit Sub
End If
_View = viewLookup
_Grid = gridLookup
' Original Datasource soll nicht verändert werden
dataSourceTemp = DataSource.Copy()
If DataSource Is Nothing Then
_DataSourceTemp = New DataTable("TEMP")
_DataSourceTemp.Columns.Add(New DataColumn("VALUE"))
Else
_DataSourceTemp = DataSource.Copy()
End If
If MultiSelect Then
If Not dataSourceTemp.Columns.Contains("SELECTED") Then
If Not _DataSourceTemp.Columns.Contains("SELECTED") Then
Dim selectedColumn = New DataColumn() With {
.ColumnName = "SELECTED",
.DataType = GetType(Boolean),
.DefaultValue = False
}
dataSourceTemp.Columns.Add(selectedColumn)
_DataSourceTemp.Columns.Add(selectedColumn)
selectedColumn.SetOrdinal(0)
End If
End If
' Datasource setzen
grid.DataSource = dataSourceTemp
_Grid.DataSource = _DataSourceTemp
' Anzeige Eigeschaften setzen
view.OptionsFind.Condition = DevExpress.Data.Filtering.FilterCondition.Contains
view.OptionsFind.AlwaysVisible = True
view.OptionsSelection.MultiSelect = False
_View.OptionsFind.Condition = DevExpress.Data.Filtering.FilterCondition.Contains
_View.OptionsFind.AlwaysVisible = True
_View.OptionsSelection.MultiSelect = False
If MultiSelect Then
' Selected Spalte anpassen
Dim checkboxColumn = view.Columns.Item(0)
checkboxColumn.Caption = " "
checkboxColumn.MaxWidth = 10
Dim oCheckboxColumn = _View.Columns.Item(0)
oCheckboxColumn.Caption = " "
oCheckboxColumn.MaxWidth = 10
Text = "Wählen Sie einen oder mehrere Werte:"
dataColumn = 1
_DataColumn = 1
Else
Text = "Wählen Sie einen Wert:"
dataColumn = 0
_DataColumn = 0
End If
If AddNewValues Then
view.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.True
view.OptionsView.NewItemRowPosition = NewItemRowPosition.Top
_View.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.True
_View.OptionsView.NewItemRowPosition = NewItemRowPosition.Top
Else
view.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.False
view.OptionsView.NewItemRowPosition = NewItemRowPosition.None
_View.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.False
_View.OptionsView.NewItemRowPosition = NewItemRowPosition.None
End If
If SelectedValues Is Nothing Then
SelectedValues = New List(Of String)
Else
SelectedValues = SelectedValues.Where(Function(v) Not (IsDBNull(v) OrElse String.IsNullOrWhiteSpace(v))).ToList()
End If
' Bereits ausgewählte Werte im grid auswählen
SyncItemsWithView(view)
SyncItemsWithView(_View)
' Focus auf Find panel setzen
view.ShowFindPanel()
_View.ShowFindPanel()
' Spaltenbreite anpassen
view.BestFitColumns()
_View.BestFitColumns()
End Sub
Private Sub SaveSelectedValues()
' Filter vor dem Auslesen entfernen, damit alle Werte erfasst werden
view.FindFilterText = String.Empty
_View.FindFilterText = String.Empty
If MultiSelect Then
Dim oValues As New List(Of String)
For oIndex = 0 To viewLookup.DataRowCount - 1
Dim oRow As DataRow = view.GetDataRow(oIndex)
Dim oRow As DataRow = _View.GetDataRow(oIndex)
Dim oSelected As Boolean = oRow.Item(0)
Dim oValue As Object = oRow.Item(1)
@@ -105,8 +108,8 @@ Public Class frmLookupGrid
SelectedValues = oValues
Else
Dim oRowHandle As Integer = view.GetSelectedRows().ToList().FirstOrDefault()
Dim oRow As DataRow = view.GetDataRow(oRowHandle)
Dim oRowHandle As Integer = _View.GetSelectedRows().ToList().FirstOrDefault()
Dim oRow As DataRow = _View.GetDataRow(oRowHandle)
Dim oValues As New List(Of String)
If oRow IsNot Nothing Then
@@ -128,16 +131,20 @@ Public Class frmLookupGrid
If rowView IsNot Nothing Then
Dim row As DataRow = rowView.Row
Dim value = row.Item(dataColumn)
Dim value = row.Item(_DataColumn)
If SelectedValues.Contains(value) Then
If MultiSelect Then
row.Item(0) = True
Else
view.SelectRow(rowHandle)
If Not (IsDBNull(value) OrElse String.IsNullOrWhiteSpace(value)) Then
If SelectedValues.Contains(value) Then
If MultiSelect Then
row.Item(0) = True
Else
view.SelectRow(rowHandle)
End If
End If
End If
End If
Next
End If
End Sub
@@ -187,8 +194,8 @@ Public Class frmLookupGrid
End Sub
Private Sub viewLookup_ShowingEditor(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles viewLookup.ShowingEditor
Dim rowHandleIsNewItemRow = (view.FocusedRowHandle = GridControl.NewItemRowHandle)
Dim columnIsCheckboxColumn = view.FocusedColumn.FieldName = "SELECTED"
Dim rowHandleIsNewItemRow = (_View.FocusedRowHandle = GridControl.NewItemRowHandle)
Dim columnIsCheckboxColumn = _View.FocusedColumn.FieldName = "SELECTED"
' Prevent editing of Data Column/allow editing for Checkbox Column and NewValue Row
If rowHandleIsNewItemRow Or columnIsCheckboxColumn Then
@@ -206,10 +213,10 @@ Public Class frmLookupGrid
' If multiselect is true, check the current row
' If multiselect is false, select the current row and close the window
If MultiSelect = True Then
Dim row As DataRow = view.GetDataRow(e.RowHandle)
Dim row As DataRow = _View.GetDataRow(e.RowHandle)
row.Item(0) = Not CBool(row.Item(0))
Else
Dim row As DataRow = view.GetDataRow(e.RowHandle)
Dim row As DataRow = _View.GetDataRow(e.RowHandle)
Dim value = row.Item(0)
SelectedValues = New List(Of String) From {value}

View File

@@ -1,4 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NLog" version="4.7.0" targetFramework="net461" />
</packages>

View File

@@ -40,22 +40,14 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Licenses", "Licenses", "{59
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Logging.Test", "Modules.Logging.Test\Logging.Test.vbproj", "{3207D8E7-36E3-4714-9B03-7B5B3D6D351A}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DDZUGFeRDService", "DDZUGFeRDService\DDZUGFeRDService.vbproj", "{7DEEC36E-EA5F-4711-AD1E-FD8894F4AD77}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Interfaces", "Modules.Interfaces\Interfaces.vbproj", "{AB6F09BF-E794-4F6A-94BB-C97C0BA84D64}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ZUGFeRDTest", "GUIs.Test.ZUGFeRDTest\ZUGFeRDTest.vbproj", "{16156434-E471-43F1-8030-76A0DA17CD5A}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DD_CommunicationService", "DD_CommunicationService\DD_CommunicationService.vbproj", "{1FB2854F-C050-427D-9FAC-1D8F232E8025}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "GUI_EDMI", "GUIs.Test.GUI_EDMI\GUI_EDMI.vbproj", "{88EDAD5B-1B98-43E4-B068-1251E7AF01A0}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ClientSuite", "GUIs.ClientSuite\ClientSuite.vbproj", "{406C95F4-9FEA-45B6-8385-1768CDBBF1A7}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "IDBService", "SERVICES\DDEDM_NetworkService\IDBService.vbproj", "{A8C3F298-76AB-4359-AB3C-986E313B4336}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DDEDMLicenseService", "DDLicenseService\DDEDMLicenseService.vbproj", "{CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "License", "Modules.License\License.vbproj", "{5EBACBFA-F11A-4BBF-8D02-91461F2293ED}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ADSyncTest", "GUIs.Test.ADSyncTest\ADSyncTest.vbproj", "{7386AB04-DF8D-4DFB-809D-1FAC8212CB7E}"
@@ -92,8 +84,6 @@ Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ClipboardWatcher", "GUIs.Cl
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Filesystem", "Modules.Filesystem\Filesystem.vbproj", "{991D0231-4623-496D-8BD0-9CA906029CBC}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "EDMIAPI", "Modules.EDMIAPI\EDMIAPI.vbproj", "{5B1171DC-FFFE-4813-A20D-786AAE47B320}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Jobs", "Modules.Jobs\Jobs.vbproj", "{39EC839A-3C30-4922-A41E-6B09D1DDE5C3}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Filesystem.Test", "Modules\Filesystem.Test\Filesystem.Test.vbproj", "{B29ED6D4-839B-413A-A485-B10F4A4788EA}"
@@ -102,11 +92,37 @@ Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "GUIs.Test.GraphQLTest", "GU
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "GUIs.Test.DocumentViewerTest", "GUIs.Test.DocumentViewerTest\GUIs.Test.DocumentViewerTest.vbproj", "{F9CCEFCD-21B3-4319-9DB1-A0756DA5BA1C}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DDEmailService", "DDEmailService\DDEmailService.vbproj", "{83ED2617-B398-4859-8F59-B38F8807E83E}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WebServices", "WebServices", "{D3BAE68E-406E-493D-A4E5-DB6EDDFFB371}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ZUGFeRDRESTService", "WEBSERVICES\ZUGFeRDRESTService\ZUGFeRDRESTService.csproj", "{FD50590A-59C1-4798-AD90-419A588DCE76}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ZUGFeRDRESTService", "WEBSERVICES\ZUGFeRDRESTService\ZUGFeRDRESTService.csproj", "{FD50590A-59C1-4798-AD90-419A588DCE76}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "EDMI.File", "EDMI.File\EDMI.File.vbproj", "{1477032D-7A02-4C5F-B026-A7117DA4BC6B}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "EDMI.API", "Modules.EDMIAPI\EDMI.API.vbproj", "{25017513-0D97-49D3-98D7-BA76D9B251B0}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "EDMI.File.Test", "EDMI.File.Test\EDMI.File.Test.vbproj", "{16857A4E-2609-47E6-9C35-7669D64DD040}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "EDMIService", "Service.EDMIService\EDMIService.vbproj", "{A8C3F298-76AB-4359-AB3C-986E313B4336}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DDEmailService", "Services.EmailService\DDEmailService.vbproj", "{83ED2617-B398-4859-8F59-B38F8807E83E}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DD_CommunicationService", "Services.CommunicationService\DD_CommunicationService.vbproj", "{1FB2854F-C050-427D-9FAC-1D8F232E8025}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DDZUGFeRDService", "Services.ZUGFeRDService\DDZUGFeRDService.vbproj", "{7DEEC36E-EA5F-4711-AD1E-FD8894F4AD77}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DDEDMLicenseService", "Services.LicenseService\DDEDMLicenseService.vbproj", "{CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "GUIs.Test.EDMIBenchmark", "GUIs.Test.EDMIBenchmark\GUIs.Test.EDMIBenchmark.vbproj", "{5FDEC007-7AE0-4829-B1AE-6165E29375DA}"
EndProject
Project("{778DAE3C-4631-46EA-AA77-85C1314464D9}") = "ChatServer", "ChatServer\ChatServer.vbproj", "{C8F9C3DD-9328-49E3-8530-48E6A4C82CAF}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ChatClient", "ChatClient\ChatClient.vbproj", "{9713484C-6EE3-4D7E-B6E6-F32CF6B6BB6C}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ChatControl", "Controls.ChatControl\ChatControl.vbproj", "{1F278760-4F6B-42E8-B82D-01D4C8618340}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ChatTest", "ChatTest\ChatTest.vbproj", "{4A726345-FD6B-4E1C-9E5D-18C9043D7714}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ChatNewConv", "Controls.ChatNewConv\ChatNewConv.vbproj", "{86D27FFA-480F-481D-8D23-26DEAE92FE6C}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -150,10 +166,6 @@ Global
{3207D8E7-36E3-4714-9B03-7B5B3D6D351A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3207D8E7-36E3-4714-9B03-7B5B3D6D351A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3207D8E7-36E3-4714-9B03-7B5B3D6D351A}.Release|Any CPU.Build.0 = Release|Any CPU
{7DEEC36E-EA5F-4711-AD1E-FD8894F4AD77}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7DEEC36E-EA5F-4711-AD1E-FD8894F4AD77}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7DEEC36E-EA5F-4711-AD1E-FD8894F4AD77}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7DEEC36E-EA5F-4711-AD1E-FD8894F4AD77}.Release|Any CPU.Build.0 = Release|Any CPU
{AB6F09BF-E794-4F6A-94BB-C97C0BA84D64}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AB6F09BF-E794-4F6A-94BB-C97C0BA84D64}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AB6F09BF-E794-4F6A-94BB-C97C0BA84D64}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -162,10 +174,6 @@ Global
{16156434-E471-43F1-8030-76A0DA17CD5A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{16156434-E471-43F1-8030-76A0DA17CD5A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{16156434-E471-43F1-8030-76A0DA17CD5A}.Release|Any CPU.Build.0 = Release|Any CPU
{1FB2854F-C050-427D-9FAC-1D8F232E8025}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1FB2854F-C050-427D-9FAC-1D8F232E8025}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1FB2854F-C050-427D-9FAC-1D8F232E8025}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1FB2854F-C050-427D-9FAC-1D8F232E8025}.Release|Any CPU.Build.0 = Release|Any CPU
{88EDAD5B-1B98-43E4-B068-1251E7AF01A0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{88EDAD5B-1B98-43E4-B068-1251E7AF01A0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{88EDAD5B-1B98-43E4-B068-1251E7AF01A0}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -174,14 +182,6 @@ Global
{406C95F4-9FEA-45B6-8385-1768CDBBF1A7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{406C95F4-9FEA-45B6-8385-1768CDBBF1A7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{406C95F4-9FEA-45B6-8385-1768CDBBF1A7}.Release|Any CPU.Build.0 = Release|Any CPU
{A8C3F298-76AB-4359-AB3C-986E313B4336}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A8C3F298-76AB-4359-AB3C-986E313B4336}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A8C3F298-76AB-4359-AB3C-986E313B4336}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A8C3F298-76AB-4359-AB3C-986E313B4336}.Release|Any CPU.Build.0 = Release|Any CPU
{CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}.Release|Any CPU.Build.0 = Release|Any CPU
{5EBACBFA-F11A-4BBF-8D02-91461F2293ED}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5EBACBFA-F11A-4BBF-8D02-91461F2293ED}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5EBACBFA-F11A-4BBF-8D02-91461F2293ED}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -250,10 +250,6 @@ Global
{991D0231-4623-496D-8BD0-9CA906029CBC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{991D0231-4623-496D-8BD0-9CA906029CBC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{991D0231-4623-496D-8BD0-9CA906029CBC}.Release|Any CPU.Build.0 = Release|Any CPU
{5B1171DC-FFFE-4813-A20D-786AAE47B320}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5B1171DC-FFFE-4813-A20D-786AAE47B320}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5B1171DC-FFFE-4813-A20D-786AAE47B320}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5B1171DC-FFFE-4813-A20D-786AAE47B320}.Release|Any CPU.Build.0 = Release|Any CPU
{39EC839A-3C30-4922-A41E-6B09D1DDE5C3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{39EC839A-3C30-4922-A41E-6B09D1DDE5C3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{39EC839A-3C30-4922-A41E-6B09D1DDE5C3}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -270,14 +266,66 @@ Global
{F9CCEFCD-21B3-4319-9DB1-A0756DA5BA1C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F9CCEFCD-21B3-4319-9DB1-A0756DA5BA1C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F9CCEFCD-21B3-4319-9DB1-A0756DA5BA1C}.Release|Any CPU.Build.0 = Release|Any CPU
{83ED2617-B398-4859-8F59-B38F8807E83E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{83ED2617-B398-4859-8F59-B38F8807E83E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{83ED2617-B398-4859-8F59-B38F8807E83E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{83ED2617-B398-4859-8F59-B38F8807E83E}.Release|Any CPU.Build.0 = Release|Any CPU
{FD50590A-59C1-4798-AD90-419A588DCE76}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FD50590A-59C1-4798-AD90-419A588DCE76}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FD50590A-59C1-4798-AD90-419A588DCE76}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FD50590A-59C1-4798-AD90-419A588DCE76}.Release|Any CPU.Build.0 = Release|Any CPU
{1477032D-7A02-4C5F-B026-A7117DA4BC6B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1477032D-7A02-4C5F-B026-A7117DA4BC6B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1477032D-7A02-4C5F-B026-A7117DA4BC6B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1477032D-7A02-4C5F-B026-A7117DA4BC6B}.Release|Any CPU.Build.0 = Release|Any CPU
{25017513-0D97-49D3-98D7-BA76D9B251B0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{25017513-0D97-49D3-98D7-BA76D9B251B0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{25017513-0D97-49D3-98D7-BA76D9B251B0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{25017513-0D97-49D3-98D7-BA76D9B251B0}.Release|Any CPU.Build.0 = Release|Any CPU
{16857A4E-2609-47E6-9C35-7669D64DD040}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{16857A4E-2609-47E6-9C35-7669D64DD040}.Debug|Any CPU.Build.0 = Debug|Any CPU
{16857A4E-2609-47E6-9C35-7669D64DD040}.Release|Any CPU.ActiveCfg = Release|Any CPU
{16857A4E-2609-47E6-9C35-7669D64DD040}.Release|Any CPU.Build.0 = Release|Any CPU
{A8C3F298-76AB-4359-AB3C-986E313B4336}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A8C3F298-76AB-4359-AB3C-986E313B4336}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A8C3F298-76AB-4359-AB3C-986E313B4336}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A8C3F298-76AB-4359-AB3C-986E313B4336}.Release|Any CPU.Build.0 = Release|Any CPU
{83ED2617-B398-4859-8F59-B38F8807E83E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{83ED2617-B398-4859-8F59-B38F8807E83E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{83ED2617-B398-4859-8F59-B38F8807E83E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{83ED2617-B398-4859-8F59-B38F8807E83E}.Release|Any CPU.Build.0 = Release|Any CPU
{1FB2854F-C050-427D-9FAC-1D8F232E8025}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1FB2854F-C050-427D-9FAC-1D8F232E8025}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1FB2854F-C050-427D-9FAC-1D8F232E8025}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1FB2854F-C050-427D-9FAC-1D8F232E8025}.Release|Any CPU.Build.0 = Release|Any CPU
{7DEEC36E-EA5F-4711-AD1E-FD8894F4AD77}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7DEEC36E-EA5F-4711-AD1E-FD8894F4AD77}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7DEEC36E-EA5F-4711-AD1E-FD8894F4AD77}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7DEEC36E-EA5F-4711-AD1E-FD8894F4AD77}.Release|Any CPU.Build.0 = Release|Any CPU
{CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C}.Release|Any CPU.Build.0 = Release|Any CPU
{5FDEC007-7AE0-4829-B1AE-6165E29375DA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5FDEC007-7AE0-4829-B1AE-6165E29375DA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5FDEC007-7AE0-4829-B1AE-6165E29375DA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5FDEC007-7AE0-4829-B1AE-6165E29375DA}.Release|Any CPU.Build.0 = Release|Any CPU
{C8F9C3DD-9328-49E3-8530-48E6A4C82CAF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C8F9C3DD-9328-49E3-8530-48E6A4C82CAF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C8F9C3DD-9328-49E3-8530-48E6A4C82CAF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C8F9C3DD-9328-49E3-8530-48E6A4C82CAF}.Release|Any CPU.Build.0 = Release|Any CPU
{9713484C-6EE3-4D7E-B6E6-F32CF6B6BB6C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9713484C-6EE3-4D7E-B6E6-F32CF6B6BB6C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9713484C-6EE3-4D7E-B6E6-F32CF6B6BB6C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9713484C-6EE3-4D7E-B6E6-F32CF6B6BB6C}.Release|Any CPU.Build.0 = Release|Any CPU
{1F278760-4F6B-42E8-B82D-01D4C8618340}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1F278760-4F6B-42E8-B82D-01D4C8618340}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1F278760-4F6B-42E8-B82D-01D4C8618340}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1F278760-4F6B-42E8-B82D-01D4C8618340}.Release|Any CPU.Build.0 = Release|Any CPU
{4A726345-FD6B-4E1C-9E5D-18C9043D7714}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4A726345-FD6B-4E1C-9E5D-18C9043D7714}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4A726345-FD6B-4E1C-9E5D-18C9043D7714}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4A726345-FD6B-4E1C-9E5D-18C9043D7714}.Release|Any CPU.Build.0 = Release|Any CPU
{86D27FFA-480F-481D-8D23-26DEAE92FE6C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{86D27FFA-480F-481D-8D23-26DEAE92FE6C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{86D27FFA-480F-481D-8D23-26DEAE92FE6C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{86D27FFA-480F-481D-8D23-26DEAE92FE6C}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -292,14 +340,10 @@ Global
{44982F9B-6116-44E2-85D0-F39650B1EF99} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC}
{3DCD6D1A-C830-4241-B7E4-27430E7EA483} = {F98C0329-C004-417F-B2AB-7466E88D8220}
{3207D8E7-36E3-4714-9B03-7B5B3D6D351A} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC}
{7DEEC36E-EA5F-4711-AD1E-FD8894F4AD77} = {7AF3F9C2-C939-4A08-95C1-0453207E298A}
{AB6F09BF-E794-4F6A-94BB-C97C0BA84D64} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC}
{16156434-E471-43F1-8030-76A0DA17CD5A} = {CC368D6A-6AC4-4EB9-A092-14700FABEF7A}
{1FB2854F-C050-427D-9FAC-1D8F232E8025} = {7AF3F9C2-C939-4A08-95C1-0453207E298A}
{88EDAD5B-1B98-43E4-B068-1251E7AF01A0} = {CC368D6A-6AC4-4EB9-A092-14700FABEF7A}
{406C95F4-9FEA-45B6-8385-1768CDBBF1A7} = {8FFE925E-8B84-45F1-93CB-32B1C96F41EB}
{A8C3F298-76AB-4359-AB3C-986E313B4336} = {7AF3F9C2-C939-4A08-95C1-0453207E298A}
{CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C} = {7AF3F9C2-C939-4A08-95C1-0453207E298A}
{5EBACBFA-F11A-4BBF-8D02-91461F2293ED} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC}
{7386AB04-DF8D-4DFB-809D-1FAC8212CB7E} = {CC368D6A-6AC4-4EB9-A092-14700FABEF7A}
{926E6474-5613-4373-BB99-B101158B91EF} = {7AF3F9C2-C939-4A08-95C1-0453207E298A}
@@ -317,13 +361,25 @@ Global
{AF664D85-0A4B-4BAB-A2F8-83110C06553A} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC}
{B7D465A2-AE31-4CDF-A8B2-34B42D3EA84E} = {8FFE925E-8B84-45F1-93CB-32B1C96F41EB}
{991D0231-4623-496D-8BD0-9CA906029CBC} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC}
{5B1171DC-FFFE-4813-A20D-786AAE47B320} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC}
{39EC839A-3C30-4922-A41E-6B09D1DDE5C3} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC}
{B29ED6D4-839B-413A-A485-B10F4A4788EA} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC}
{609B09B4-AD1E-40F7-8899-A6685924621C} = {CC368D6A-6AC4-4EB9-A092-14700FABEF7A}
{F9CCEFCD-21B3-4319-9DB1-A0756DA5BA1C} = {CC368D6A-6AC4-4EB9-A092-14700FABEF7A}
{83ED2617-B398-4859-8F59-B38F8807E83E} = {7AF3F9C2-C939-4A08-95C1-0453207E298A}
{FD50590A-59C1-4798-AD90-419A588DCE76} = {D3BAE68E-406E-493D-A4E5-DB6EDDFFB371}
{1477032D-7A02-4C5F-B026-A7117DA4BC6B} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC}
{25017513-0D97-49D3-98D7-BA76D9B251B0} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC}
{16857A4E-2609-47E6-9C35-7669D64DD040} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC}
{A8C3F298-76AB-4359-AB3C-986E313B4336} = {7AF3F9C2-C939-4A08-95C1-0453207E298A}
{83ED2617-B398-4859-8F59-B38F8807E83E} = {7AF3F9C2-C939-4A08-95C1-0453207E298A}
{1FB2854F-C050-427D-9FAC-1D8F232E8025} = {7AF3F9C2-C939-4A08-95C1-0453207E298A}
{7DEEC36E-EA5F-4711-AD1E-FD8894F4AD77} = {7AF3F9C2-C939-4A08-95C1-0453207E298A}
{CBE9322E-67A1-4CC5-B25F-4A1B4C9FC55C} = {7AF3F9C2-C939-4A08-95C1-0453207E298A}
{5FDEC007-7AE0-4829-B1AE-6165E29375DA} = {CC368D6A-6AC4-4EB9-A092-14700FABEF7A}
{C8F9C3DD-9328-49E3-8530-48E6A4C82CAF} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC}
{9713484C-6EE3-4D7E-B6E6-F32CF6B6BB6C} = {CC368D6A-6AC4-4EB9-A092-14700FABEF7A}
{1F278760-4F6B-42E8-B82D-01D4C8618340} = {F98C0329-C004-417F-B2AB-7466E88D8220}
{4A726345-FD6B-4E1C-9E5D-18C9043D7714} = {CC368D6A-6AC4-4EB9-A092-14700FABEF7A}
{86D27FFA-480F-481D-8D23-26DEAE92FE6C} = {F98C0329-C004-417F-B2AB-7466E88D8220}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {C1BE4090-A0FD-48AF-86CB-39099D14B286}

View File

@@ -1,5 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="FirebirdSql.Data.FirebirdClient" version="6.4.0" targetFramework="net461" />
<package id="NLog" version="4.7.0" targetFramework="net461" />
</packages>

View File

@@ -0,0 +1,138 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\packages\MSTest.TestAdapter.1.3.2\build\net45\MSTest.TestAdapter.props" Condition="Exists('..\packages\MSTest.TestAdapter.1.3.2\build\net45\MSTest.TestAdapter.props')" />
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{16857A4E-2609-47E6-9C35-7669D64DD040}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>EDMI.File.Test</RootNamespace>
<AssemblyName>EDMI.File.Test</AssemblyName>
<FileAlignment>512</FileAlignment>
<MyType>Windows</MyType>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
<ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\$(VisualStudioVersion)\UITestExtensionPackages</ReferencePath>
<IsCodedUITest>False</IsCodedUITest>
<TestProjectType>UnitTest</TestProjectType>
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>EDMI.File.Test.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DocumentationFile>EDMI.File.Test.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup>
<OptionExplicit>On</OptionExplicit>
</PropertyGroup>
<PropertyGroup>
<OptionCompare>Binary</OptionCompare>
</PropertyGroup>
<PropertyGroup>
<OptionStrict>Off</OptionStrict>
</PropertyGroup>
<PropertyGroup>
<OptionInfer>On</OptionInfer>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.VisualStudio.TestPlatform.TestFramework, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\MSTest.TestFramework.1.3.2\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.dll</HintPath>
</Reference>
<Reference Include="Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\MSTest.TestFramework.1.3.2\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
</ItemGroup>
<ItemGroup>
<Import Include="Microsoft.VisualBasic" />
<Import Include="System" />
<Import Include="System.Collections" />
<Import Include="System.Collections.Generic" />
<Import Include="System.Data" />
<Import Include="System.Diagnostics" />
<Import Include="System.Linq" />
<Import Include="System.Xml.Linq" />
<Import Include="System.Threading.Tasks" />
<Import Include="Microsoft.VisualStudio.TestTools.UnitTesting" />
</ItemGroup>
<ItemGroup>
<Compile Include="PathTest.vb" />
<Compile Include="My Project\AssemblyInfo.vb" />
<Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Application.myapp</DependentUpon>
</Compile>
<Compile Include="My Project\Resources.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="My Project\Settings.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="My Project\Resources.resx">
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="My Project\Application.myapp">
<Generator>MyApplicationCodeGenerator</Generator>
<LastGenOutput>Application.Designer.vb</LastGenOutput>
</None>
<None Include="My Project\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<CustomToolNamespace>My</CustomToolNamespace>
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
</None>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\EDMI.File\EDMI.File.vbproj">
<Project>{1477032d-7a02-4c5f-b026-a7117da4bc6b}</Project>
<Name>EDMI.File</Name>
</ProjectReference>
<ProjectReference Include="..\Modules.Logging\Logging.vbproj">
<Project>{903B2D7D-3B80-4BE9-8713-7447B704E1B0}</Project>
<Name>Logging</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets" Condition="Exists('$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets')" />
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\MSTest.TestAdapter.1.3.2\build\net45\MSTest.TestAdapter.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MSTest.TestAdapter.1.3.2\build\net45\MSTest.TestAdapter.props'))" />
<Error Condition="!Exists('..\packages\MSTest.TestAdapter.1.3.2\build\net45\MSTest.TestAdapter.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MSTest.TestAdapter.1.3.2\build\net45\MSTest.TestAdapter.targets'))" />
</Target>
<Import Project="..\packages\MSTest.TestAdapter.1.3.2\build\net45\MSTest.TestAdapter.targets" Condition="Exists('..\packages\MSTest.TestAdapter.1.3.2\build\net45\MSTest.TestAdapter.targets')" />
</Project>

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<MyApplicationData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<MySubMain>false</MySubMain>
<SingleInstance>false</SingleInstance>
<ShutdownMode>0</ShutdownMode>
<EnableVisualStyles>true</EnableVisualStyles>
<AuthenticationMode>0</AuthenticationMode>
<ApplicationType>1</ApplicationType>
<SaveMySettingsOnExit>true</SaveMySettingsOnExit>
</MyApplicationData>

View File

@@ -0,0 +1,18 @@
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
<Assembly: AssemblyTitle("EDMI.File.Test")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("EDMI.File.Test")>
<Assembly: AssemblyCopyright("Copyright © 2020")>
<Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(False)>
<Assembly: Guid("a6f8dbf8-5ba9-478d-a230-1aca3ed6379c")>
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.0.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

View File

@@ -0,0 +1,62 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:4.0.30319.42000
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My.Resources
'This class was auto-generated by the StronglyTypedResourceBuilder
'class via a tool like ResGen or Visual Studio.
'To add or remove a member, edit your .ResX file then rerun ResGen
'with the /str option, or rebuild your VS project.
'''<summary>
''' A strongly-typed resource class, for looking up localized strings, etc.
'''</summary>
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0"), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
Friend Module Resources
Private resourceMan As Global.System.Resources.ResourceManager
Private resourceCulture As Global.System.Globalization.CultureInfo
'''<summary>
''' Returns the cached ResourceManager instance used by this class.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
Get
If Object.ReferenceEquals(resourceMan, Nothing) Then
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("EDMI.File.Test.Resources", GetType(Resources).Assembly)
resourceMan = temp
End If
Return resourceMan
End Get
End Property
'''<summary>
''' Overrides the current thread's CurrentUICulture property for all
''' resource lookups using this strongly typed resource class.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend Property Culture() As Global.System.Globalization.CultureInfo
Get
Return resourceCulture
End Get
Set(ByVal value As Global.System.Globalization.CultureInfo)
resourceCulture = value
End Set
End Property
End Module
End Namespace

View File

@@ -0,0 +1,73 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:4.0.30319.42000
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "12.0.0.0"), _
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Partial Friend NotInheritable Class MySettings
Inherits Global.System.Configuration.ApplicationSettingsBase
Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings)
#Region "My.Settings Auto-Save Functionality"
#If _MyType = "WindowsForms" Then
Private Shared addedHandler As Boolean
Private Shared addedHandlerLockObject As New Object
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
If My.Application.SaveMySettingsOnExit Then
My.Settings.Save()
End If
End Sub
#End If
#End Region
Public Shared ReadOnly Property [Default]() As MySettings
Get
#If _MyType = "WindowsForms" Then
If Not addedHandler Then
SyncLock addedHandlerLockObject
If Not addedHandler Then
AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
addedHandler = True
End If
End SyncLock
End If
#End If
Return defaultInstance
End Get
End Property
End Class
End Namespace
Namespace My
<Global.Microsoft.VisualBasic.HideModuleNameAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
Friend Module MySettingsProperty
<Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
Friend ReadOnly Property Settings() As Global.EDMI.File.Test.My.MySettings
Get
Return Global.EDMI.File.Test.My.MySettings.Default
End Get
End Property
End Module
End Namespace

View File

@@ -0,0 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" UseMySettingsClassName="true">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>

View File

@@ -0,0 +1,22 @@
Imports System.Text
Imports DigitalData.Modules.Logging
Imports Microsoft.VisualStudio.TestTools.UnitTesting
Imports DigitalData.Modules.EDMI
<TestClass()> Public Class PathTest
'<TestMethod()> Public Sub TestMethod1()
' Dim oLogConfig As New LogConfig(LogConfig.PathType.Temp)
' Dim oTempPath = System.IO.Path.GetTempPath()
' Dim oPath As New DigitalData.Modules.EDMI.File.Path(oLogConfig, oTempPath)
' Dim oNow As DateTime = DateTime.Now
' Dim oYear = oNow.Year
' Dim oMonth = oNow.Month.ToString.PadLeft(2, "0")
' Dim oDay = oNow.Day.ToString.PadLeft(2, "0")
' Assert.AreEqual(oPath.GetFullPath("TestDocumentType"), $"{oTempPath}EDMI\Active\TestDocumentType\{oYear}\{oMonth}\{oDay}")
' Assert.AreEqual(oPath.GetArchivePath("TestDocumentType"), $"{oTempPath}EDMI\Archive\TestDocumentType\{oYear}\{oMonth}\{oDay}")
'End Sub
End Class

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="MSTest.TestAdapter" version="1.3.2" targetFramework="net472" />
<package id="MSTest.TestFramework" version="1.3.2" targetFramework="net472" />
</packages>

View File

@@ -1,11 +1,39 @@
Imports DigitalData.Modules.Logging
Imports System.IO
Imports DigitalData.Modules.Logging
Public Class Archive
Private _LogConfig As LogConfig
Private _Logger As Logger
Private ReadOnly _LogConfig As LogConfig
Private ReadOnly _Logger As Logger
Public Sub New(LogConfig As LogConfig)
_LogConfig = LogConfig
_Logger = LogConfig.GetLogger()
End Sub
''' <summary>
''' Sets a retention-period for a give file path by setting the file attributes LastAccessTime and ReadOnly
''' </summary>
''' <param name="FilePath"></param>
''' <param name="RetentionTimeInDays">If greater than 0, sets this plus the current date as LastAccessTime</param>
''' <param name="[ReadOnly]">If true, sets ReadOnly Attribute</param>
Public Sub SetRetention(FilePath As String, RetentionTimeInDays As Integer, [ReadOnly] As Boolean)
Try
If RetentionTimeInDays > 0 Then
_Logger.Info("Setting LastAccessTime for file [{0}]", FilePath)
IO.File.SetLastAccessTime(FilePath, Date.Now.AddDays(RetentionTimeInDays))
End If
Catch ex As Exception
_Logger.Error(ex)
End Try
Try
If [ReadOnly] Then
_Logger.Info("Setting ReadOnly Attribute for file [{0}]", FilePath)
Dim oAttributes = IO.File.GetAttributes(FilePath) Or FileAttributes.ReadOnly
IO.File.SetAttributes(FilePath, oAttributes)
End If
Catch ex As Exception
_Logger.Error(ex)
End Try
End Sub
End Class

View File

@@ -46,7 +46,7 @@
<ItemGroup>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.7.0\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.7.2\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Configuration" />
@@ -89,6 +89,7 @@
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
<Compile Include="Path.vb" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="My Project\Resources.resx">

50
EDMI.File/Path.vb Normal file
View File

@@ -0,0 +1,50 @@
Imports DigitalData.Modules.Logging
Imports System.IO
Public Class Path
Private ReadOnly _LogConfig As LogConfig
Private ReadOnly _Logger As Logger
Private ReadOnly _BasePath As String
Public Sub New(LogConfig As LogConfig, DatastoreBasePath As String)
_LogConfig = LogConfig
_Logger = LogConfig.GetLogger()
_BasePath = DatastoreBasePath
End Sub
Public Function GetFullPath(DocumentType As String, Optional FileName As String = "") As String
Dim oParts = New List(Of String) From {_BasePath}
oParts.AddRange(Do_GetRelativePath(DocumentType, FileName))
Return IO.Path.Combine(oParts.ToArray())
End Function
Public Function GetFullPathFromRelativePath(RelativePath As String) As String
Dim oParts = New List(Of String) From {_BasePath}
oParts.Add(RelativePath)
Return IO.Path.Combine(oParts.ToArray)
End Function
Public Function GetRelativePath(DocumentType As String, Optional FileName As String = "") As String
Return IO.Path.Combine(Do_GetRelativePath(DocumentType, FileName).ToArray)
End Function
Private Function Do_GetRelativePath(DocumentType As String, Optional FileName As String = "") As List(Of String)
Dim oPathParts As New List(Of String) From {DocumentType}
oPathParts.AddRange(GetDatePath())
oPathParts.Add(FileName)
Return oPathParts
End Function
Private Function GetDatePath() As List(Of String)
Dim oDate = DateTime.Now
Dim oResultList As New List(Of String) From {
oDate.Year,
oDate.Month.ToString.PadLeft(2, "0"),
oDate.Day.ToString.PadLeft(2, "0")
}
Return oResultList
End Function
End Class

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NLog" version="4.7.0" targetFramework="net472" />
<package id="NLog" version="4.7.2" targetFramework="net472" />
</packages>

View File

@@ -1,8 +1,8 @@
Imports System.ServiceModel
Imports System.ServiceModel.Channels
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.EDMIAPI
Imports DigitalData.Modules.EDMIAPI.IDBServiceReference
Imports DigitalData.Modules.EDMI.API
Imports DigitalData.Modules.EDMI.API.EDMIServiceReference
Imports DigitalData.GUIs.ClientSuite.Base
Imports System.ServiceModel.Security
@@ -73,15 +73,15 @@ Public Class ClassService
End Function)
End Function
Public Function GetChannelFactory() As IChannelFactory(Of IIDBServiceChannel)
Public Function GetChannelFactory() As IChannelFactory(Of IEDMIServiceChannel)
Return GetChannelFactory(My.SysConfig.ServiceConnection)
End Function
Public Function GetChannelFactory(EndpointURL As String) As ChannelFactory(Of IIDBServiceChannel)
Public Function GetChannelFactory(EndpointURL As String) As ChannelFactory(Of IEDMIServiceChannel)
Dim oBinding = GetBinding()
Dim oEndpoint = New EndpointAddress(EndpointURL)
Dim oFactory As New ChannelFactory(Of IIDBServiceChannel)(oBinding, oEndpoint)
Dim oFactory As New ChannelFactory(Of IEDMIServiceChannel)(oBinding, oEndpoint)
Return oFactory
End Function

View File

@@ -497,7 +497,7 @@
<Name>Config</Name>
</ProjectReference>
<ProjectReference Include="..\Modules.EDMIAPI\EDMI.API.vbproj">
<Project>{5b1171dc-fffe-4813-a20d-786aae47b320}</Project>
<Project>{25017513-0d97-49d3-98d7-ba76d9b251b0}</Project>
<Name>EDMI.API</Name>
</ProjectReference>
<ProjectReference Include="..\Modules.Language\Language.vbproj">
@@ -512,8 +512,8 @@
<Project>{903b2d7d-3b80-4be9-8713-7447b704e1b0}</Project>
<Name>Logging</Name>
</ProjectReference>
<ProjectReference Include="..\SERVICES\DDEDM_NetworkService\EDMIService.vbproj">
<Project>{A8C3F298-76AB-4359-AB3C-986E313B4336}</Project>
<ProjectReference Include="..\Service.EDMIService\EDMIService.vbproj">
<Project>{a8c3f298-76ab-4359-ab3c-986e313b4336}</Project>
<Name>EDMIService</Name>
</ProjectReference>
</ItemGroup>

View File

@@ -1,5 +1,5 @@
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.EDMIAPI.IDBServiceReference
Imports DigitalData.Modules.EDMI.API.EDMIServiceReference
Public Class ClassCommonCommands
Private _LogConfig As LogConfig

View File

@@ -2,7 +2,7 @@
Imports System.Threading
Imports DigitalData.Modules.Config
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.EDMIAPI.IDBServiceReference
Imports DigitalData.Modules.EDMI.API.EDMIServiceReference
Namespace My
''' <summary>
@@ -26,8 +26,8 @@ Namespace My
End Property
Property LogConfig As LogConfig
Property ChannelFactory As ChannelFactory(Of IIDBServiceChannel)
Property Channel As IIDBServiceChannel
Property ChannelFactory As ChannelFactory(Of IEDMIServiceChannel)
Property Channel As IEDMIServiceChannel
Property MainForm As frmMain
Property Common As ClassCommon
End Module

View File

@@ -1,6 +1,6 @@
Imports System.IO
Imports DigitalData.Modules.EDMIAPI
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.EDMI.API
Public Class frmFileTest
Private _fileOp As Document

View File

@@ -2,12 +2,12 @@
Imports System.ServiceModel
Imports System.Threading
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.EDMIAPI.IDBServiceReference
Imports DigitalData.Modules.EDMI.API.EDMIServiceReference
Public NotInheritable Class frmSplash
Private _Worker As New BackgroundWorker()
Private _ChannelFactory As ChannelFactory(Of IIDBServiceChannel)
Private _Channel As IIDBServiceChannel
Private _ChannelFactory As ChannelFactory(Of IEDMIServiceChannel)
Private _Channel As IEDMIServiceChannel
Private _Logger As Logger
Private _CurrentRetry As Integer = 0

View File

@@ -6,8 +6,8 @@
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{B7D465A2-AE31-4CDF-A8B2-34B42D3EA84E}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>DigitalData.Modules.ClipboardWatcher</RootNamespace>
<AssemblyName>DigitalData.Modules.ClipboardWatcher</AssemblyName>
<RootNamespace>DigitalData.GUIs.ClipboardWatcher</RootNamespace>
<AssemblyName>DigitalData.GUIs.ClipboardWatcher</AssemblyName>
<FileAlignment>512</FileAlignment>
<MyType>Windows</MyType>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
@@ -18,7 +18,7 @@
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>DigitalData.Modules.ClipboardWatcher.xml</DocumentationFile>
<DocumentationFile>DigitalData.GUIs.ClipboardWatcher.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
@@ -27,7 +27,7 @@
<DefineTrace>true</DefineTrace>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DocumentationFile>DigitalData.Modules.ClipboardWatcher.xml</DocumentationFile>
<DocumentationFile>DigitalData.GUIs.ClipboardWatcher.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup>
@@ -55,7 +55,7 @@
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.7.0\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.7.2\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Configuration" />

View File

@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.0.0.0")>
<Assembly: AssemblyVersion("1.0.0.2")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

View File

@@ -22,7 +22,7 @@ Namespace My.Resources
'''<summary>
''' Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
'''</summary>
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0"), _
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0"), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
@@ -39,7 +39,7 @@ Namespace My.Resources
Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
Get
If Object.ReferenceEquals(resourceMan, Nothing) Then
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("DigitalData.Modules.ClipboardWatcher.Resources", GetType(Resources).Assembly)
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("DigitalData.GUIs.ClipboardWatcher.Resources", GetType(Resources).Assembly)
resourceMan = temp
End If
Return resourceMan

View File

@@ -15,7 +15,7 @@ Option Explicit On
Namespace My
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.7.0.0"), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.4.0.0"), _
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Partial Friend NotInheritable Class MySettings
Inherits Global.System.Configuration.ApplicationSettingsBase
@@ -64,9 +64,9 @@ Namespace My
Friend Module MySettingsProperty
<Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
Friend ReadOnly Property Settings() As Global.DigitalData.Modules.ClipboardWatcher.My.MySettings
Friend ReadOnly Property Settings() As Global.DigitalData.GUIs.ClipboardWatcher.My.MySettings
Get
Return Global.DigitalData.Modules.ClipboardWatcher.My.MySettings.Default
Return Global.DigitalData.GUIs.ClipboardWatcher.My.MySettings.Default
End Get
End Property
End Module

View File

@@ -0,0 +1 @@
DevExpress.XtraEditors.TileControl, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a

View File

@@ -1,5 +1,7 @@
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.ZooFlow
Imports DigitalData.Modules.Patterns
Public Class ProfileSearches
Private _LogConfig As LogConfig
@@ -34,7 +36,7 @@ Public Class ProfileSearches
Dim oSearchesDataTable = _Environment.Database.GetDatatable(oSQL)
Dim oDocSearches As New List(Of Search)
Dim oCounter As Integer = 0
Dim oPatterns As New Patterns.ClassPatterns(_LogConfig)
Dim oPatterns As New ClassPatterns(_LogConfig)
For Each oRow As DataRow In oSearchesDataTable.Rows
Dim oProfileId As Integer = oRow.Item("PROFILE_ID")
@@ -47,7 +49,8 @@ Public Class ProfileSearches
oSQL = oPatterns.ReplaceInternalValues(oSQL)
oSQL = oPatterns.ReplaceClipboardContents(oSQL, _Params.ClipboardContents)
Dim oDatatable As DataTable = _Environment.Database.GetDatatable(oSQL, oConnectionId)
Dim oConnectionString = GetConnectionString(oConnectionId)
Dim oDatatable As DataTable = _Environment.Database.GetDatatableWithConnection(oSQL, oConnectionString)
If oDatatable Is Nothing Then
_Logger.Warn("Error in SQL-Query '{0}'", oSQL)
@@ -69,6 +72,26 @@ Public Class ProfileSearches
Return oDocSearches
End Function
Private Function GetConnectionString(ConnectionId As Integer) As String
Dim oDatatable As DataTable = _Environment.Database.GetDatatable($"SELECT * FROM TBDD_CONNECTION WHERE GUID = {ConnectionId}")
If oDatatable.Rows.Count > 0 Then
Dim oRow As DataRow = oDatatable.Rows.Item(0)
Select Case oRow.Item("SQL_PROVIDER")
Case "MS-SQL"
Dim oConnectionString = MSSQLServer.GetConnectionString(oRow.Item("SERVER"), oRow.Item("DATENBANK"), oRow.Item("USERNAME"), oRow.Item("PASSWORD"))
Return oConnectionString
Case Else
Return Nothing
End Select
Else
Return Nothing
End If
End Function
Public Async Function LoadDataSearchesAsync(ProfileId As Integer) As Task(Of List(Of Search))
Return Await Task.Run(Function()
Return DoLoadDataSearches(ProfileId)
@@ -83,7 +106,7 @@ Public Class ProfileSearches
Dim oSearchesDataTable = _Environment.Database.GetDatatable(oSQL)
Dim oCounter As Integer = 0
Dim oPatterns As New Patterns.ClassPatterns(_LogConfig)
Dim oPatterns As New ClassPatterns(_LogConfig)
For Each oRow As DataRow In oSearchesDataTable.Rows
Try
@@ -94,8 +117,10 @@ Public Class ProfileSearches
oSQL = oRow.Item("SQL_COMMAND")
oSQL = oPatterns.ReplaceUserValues(oSQL, _Environment.User)
oSQL = oPatterns.ReplaceInternalValues(oSQL)
oSQL = oPatterns.ReplaceClipboardContents(oSQL, _Params.ClipboardContents)
Dim oDatatable As DataTable = _Environment.Database.GetDatatable(oSQL, oConnectionId)
Dim oConnectionString = GetConnectionString(oConnectionId)
Dim oDatatable As DataTable = _Environment.Database.GetDatatableWithConnection(oSQL, oConnectionString)
If oDatatable Is Nothing Then
_Logger.Warn("Error in SQL-Query '{0}'", oSQL)

View File

@@ -75,12 +75,13 @@ Partial Class frmMatch
Me.Label1.ForeColor = System.Drawing.Color.White
Me.Label1.Location = New System.Drawing.Point(12, 9)
Me.Label1.Name = "Label1"
Me.Label1.Size = New System.Drawing.Size(368, 21)
Me.Label1.Size = New System.Drawing.Size(408, 21)
Me.Label1.TabIndex = 1
Me.Label1.Text = "Es wurde(n) {0} für Ihre Suche nach '{1}' gefunden:"
Me.Label1.Text = "Es wurde(n) {0} in {1} für Ihre Suche nach '{2}' gefunden:"
'
'Label2
'
Me.Label2.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles)
Me.Label2.AutoSize = True
Me.Label2.BackColor = System.Drawing.Color.FromArgb(CType(CType(64, Byte), Integer), CType(CType(64, Byte), Integer), CType(CType(64, Byte), Integer))
Me.Label2.Cursor = System.Windows.Forms.Cursors.Hand
@@ -100,8 +101,8 @@ Partial Class frmMatch
Me.Controls.Add(Me.Label2)
Me.Controls.Add(Me.Label1)
Me.Controls.Add(Me.TileControlMatch)
Me.IconOptions.ShowIcon = False
Me.Name = "frmMatch"
Me.ShowIcon = False
Me.Text = "Profile gefunden"
Me.ResumeLayout(False)
Me.PerformLayout()

View File

@@ -7,6 +7,7 @@ Imports DigitalData.Modules.Windows
Imports DigitalData.Modules.Language
Imports DigitalData.Modules.ZooFlow
Imports DigitalData.Modules.ZooFlow.Params
Imports DigitalData.Modules
''' <summary>
'''
@@ -55,8 +56,18 @@ Public Class frmMatch
_Params = Params
End Sub
Private Function GetResultString(CreatedTiles, MatchedProfiles, ClipboardContents) As String
Dim oResultString = IIf(CreatedTiles = 1, "wurde ein Ergebnis", $"wurden {CreatedTiles} Ergebnisse")
Dim oProfileString = IIf(MatchedProfiles = 1, "einem Profil", $"{MatchedProfiles} Profilen")
Dim oBase = "Es {0} in {1} für Ihre Suche nach '{2}' gefunden:"
Return String.Format(oBase, oResultString, oProfileString, _Params.ClipboardContents)
End Function
Private Async Sub frmMatch_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim oCreatedTiles = CreateTiles()
Dim oResult As Tuple(Of Integer, Integer) = CreateTiles()
Dim oCreatedTiles As Integer = oResult.Item1
Dim oMatchedProfiles As Integer = oResult.Item2
If oCreatedTiles = -1 Then
Exit Sub
@@ -67,11 +78,11 @@ Public Class frmMatch
Close()
End If
Dim oMatchString = IIf(oCreatedTiles = 1, "1 Profil", $"{oCreatedTiles} Profile")
Label1.Text = String.Format(Label1.Text, oMatchString, _Params.ClipboardContents)
Label1.Text = GetResultString(oCreatedTiles, oMatchedProfiles, _Params.ClipboardContents)
_Logger.Debug($"Created Tiles: {oCreatedTiles} ")
If oCreatedTiles = 1 Then
_Logger.Debug($"Matched Profiles: {oMatchedProfiles}")
If oCreatedTiles = 1 Then
Dim oProfile As ProfileData = _Params.MatchingProfiles.First()
Dim oProfileSearch As New ProfileSearches(_LogConfig, _Environment, _Params)
@@ -96,9 +107,11 @@ Public Class frmMatch
TopMost = True
End Sub
Function CreateTiles() As Integer
Function CreateTiles() As Tuple(Of Integer, Integer)
Try
Dim oCreatedTiles As Integer = 0
Dim oMatchedProfiles As Integer = 0
Dim oDocumentGroup = TileControlMatch.Groups.Item("TileGroupDocuments")
Dim oDataGroup = TileControlMatch.Groups.Item("TileGroupData")
Dim oDataDocumentsGroup = TileControlMatch.Groups.Item("TileGroupDocumentsData")
@@ -117,12 +130,15 @@ Public Class frmMatch
' End If
'End If
Dim oProfileMatch As Boolean = False
If oProfile.ProfileType = ProfileType.ANY Or oProfile.ProfileType = ProfileType.DOCS_ONLY Then
_Logger.Debug("Docs only or ProfileTypeAny")
If oProfile.CountDocs > 0 Then
Dim oItem = CreateTile(oProfile, $"{oProfile.CountDocs} Dateien")
oDocumentGroup.Items.Add(oItem)
oCreatedTiles += 1
oProfileMatch = True
Else
_Logger.Debug("NO Doc-Results!")
End If
@@ -133,17 +149,22 @@ Public Class frmMatch
Dim oItem = CreateTile(oProfile, $"{oProfile.CountData} Datensätze")
oDataGroup.Items.Add(oItem)
oCreatedTiles += 1
oProfileMatch = True
Else
_Logger.Debug("NO Data-Results!")
End If
End If
If oProfileMatch Then
oMatchedProfiles += 1
End If
Next
Return oCreatedTiles
Return New Tuple(Of Integer, Integer)(oCreatedTiles, oMatchedProfiles)
Catch ex As Exception
_Logger.Error(ex)
MsgBox("Error while creating profile tiles!" & vbNewLine & ex.Message)
Return -1
Return New Tuple(Of Integer, Integer)(-1, -1)
End Try
End Function
@@ -199,7 +220,9 @@ Public Class frmMatch
Private Sub Label2_Click(sender As Object, e As EventArgs) Handles Label2.Click
Dim oForm As New frmTreeView(_Params.MatchTreeView.Nodes) With {
.StartPosition = FormStartPosition.CenterScreen
.StartPosition = FormStartPosition.Manual,
.Left = Left + Width,
.Top = Top
}
oForm.ShowDialog()
End Sub

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NLog" version="4.7.0" targetFramework="net461" />
<package id="NLog" version="4.7.2" targetFramework="net461" />
</packages>

View File

@@ -62,7 +62,7 @@
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.7.0\lib\net45\NLog.dll</HintPath>
<HintPath>..\packages\NLog.4.7.2\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Configuration" />

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NLog" version="4.7.0" targetFramework="net461" />
<package id="NLog" version="4.7.2" targetFramework="net461" />
</packages>

View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
</configuration>

535
GUIs.Test.EDMIBenchmark/Form1.Designer.vb generated Normal file
View File

@@ -0,0 +1,535 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()>
Partial Class Form1
Inherits DevExpress.XtraBars.Ribbon.RibbonForm
'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
<System.Diagnostics.DebuggerNonUserCode()>
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.
<System.Diagnostics.DebuggerStepThrough()>
Private Sub InitializeComponent()
Me.components = New System.ComponentModel.Container()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Form1))
Dim DockingContainer1 As DevExpress.XtraBars.Docking2010.Views.Tabbed.DockingContainer = New DevExpress.XtraBars.Docking2010.Views.Tabbed.DockingContainer()
Me.DocumentGroup1 = New DevExpress.XtraBars.Docking2010.Views.Tabbed.DocumentGroup(Me.components)
Me.Document1 = New DevExpress.XtraBars.Docking2010.Views.Tabbed.Document(Me.components)
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
Me.ButtonSelectFiles = New DevExpress.XtraBars.BarButtonItem()
Me.ButtonImportFiles = New DevExpress.XtraBars.BarButtonItem()
Me.buttonClearLog = New DevExpress.XtraBars.BarButtonItem()
Me.buttonClearFiles = New DevExpress.XtraBars.BarButtonItem()
Me.TextboxObjectId = New DevExpress.XtraBars.BarEditItem()
Me.RepositoryItemTextEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit()
Me.ButtonLoadFile = New DevExpress.XtraBars.BarButtonItem()
Me.BarListItem1 = New DevExpress.XtraBars.BarListItem()
Me.BarButtonItem2 = New DevExpress.XtraBars.BarButtonItem()
Me.BarToggleSwitchItem1 = New DevExpress.XtraBars.BarToggleSwitchItem()
Me.BarDockingMenuItem1 = New DevExpress.XtraBars.BarDockingMenuItem()
Me.BarMdiChildrenListItem1 = New DevExpress.XtraBars.BarMdiChildrenListItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup4 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.DocumentManager1 = New DevExpress.XtraBars.Docking2010.DocumentManager(Me.components)
Me.TabbedView1 = New DevExpress.XtraBars.Docking2010.Views.Tabbed.TabbedView(Me.components)
Me.DockManager1 = New DevExpress.XtraBars.Docking.DockManager(Me.components)
Me.hideContainerBottom = New DevExpress.XtraBars.Docking.AutoHideContainer()
Me.DockPanel3 = New DevExpress.XtraBars.Docking.DockPanel()
Me.DockPanel3_Container = New DevExpress.XtraBars.Docking.ControlContainer()
Me.listboxLog = New DevExpress.XtraEditors.ListBoxControl()
Me.panelContainer1 = New DevExpress.XtraBars.Docking.DockPanel()
Me.DockPanel4 = New DevExpress.XtraBars.Docking.DockPanel()
Me.DockPanel4_Container = New DevExpress.XtraBars.Docking.ControlContainer()
Me.GridControl1 = New DevExpress.XtraGrid.GridControl()
Me.BindingSource1 = New System.Windows.Forms.BindingSource(Me.components)
Me.GridView1 = New DevExpress.XtraGrid.Views.Grid.GridView()
Me.GridColumn1 = New DevExpress.XtraGrid.Columns.GridColumn()
Me.GridColumn2 = New DevExpress.XtraGrid.Columns.GridColumn()
Me.DockPanel1 = New DevExpress.XtraBars.Docking.DockPanel()
Me.DockPanel1_Container = New DevExpress.XtraBars.Docking.ControlContainer()
Me.listboxFiles = New DevExpress.XtraEditors.ListBoxControl()
Me.DockPanel2 = New DevExpress.XtraBars.Docking.DockPanel()
Me.DockPanel2_Container = New DevExpress.XtraBars.Docking.ControlContainer()
Me.DocumentViewer1 = New DigitalData.Controls.DocumentViewer.DocumentViewer()
Me.Timer1 = New System.Windows.Forms.Timer(Me.components)
Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem()
CType(Me.DocumentGroup1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.Document1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.DocumentManager1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.TabbedView1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.DockManager1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.hideContainerBottom.SuspendLayout()
Me.DockPanel3.SuspendLayout()
Me.DockPanel3_Container.SuspendLayout()
CType(Me.listboxLog, System.ComponentModel.ISupportInitialize).BeginInit()
Me.panelContainer1.SuspendLayout()
Me.DockPanel4.SuspendLayout()
Me.DockPanel4_Container.SuspendLayout()
CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.BindingSource1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridView1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.DockPanel1.SuspendLayout()
Me.DockPanel1_Container.SuspendLayout()
CType(Me.listboxFiles, System.ComponentModel.ISupportInitialize).BeginInit()
Me.DockPanel2.SuspendLayout()
Me.DockPanel2_Container.SuspendLayout()
Me.SuspendLayout()
'
'DocumentGroup1
'
Me.DocumentGroup1.Items.AddRange(New DevExpress.XtraBars.Docking2010.Views.Tabbed.Document() {Me.Document1})
'
'Document1
'
Me.Document1.Caption = "Document Viewer"
Me.Document1.ControlName = "DockPanel2"
Me.Document1.FloatLocation = New System.Drawing.Point(0, 0)
Me.Document1.FloatSize = New System.Drawing.Size(200, 200)
Me.Document1.Properties.AllowClose = DevExpress.Utils.DefaultBoolean.[False]
Me.Document1.Properties.AllowFloat = DevExpress.Utils.DefaultBoolean.[True]
Me.Document1.Properties.AllowFloatOnDoubleClick = DevExpress.Utils.DefaultBoolean.[True]
'
'RibbonControl1
'
Me.RibbonControl1.ExpandCollapseItem.Id = 0
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.ButtonSelectFiles, Me.ButtonImportFiles, Me.buttonClearLog, Me.buttonClearFiles, Me.TextboxObjectId, Me.ButtonLoadFile, Me.BarListItem1, Me.BarButtonItem2, Me.BarToggleSwitchItem1, Me.BarDockingMenuItem1, Me.BarMdiChildrenListItem1, Me.BarButtonItem1})
Me.RibbonControl1.Location = New System.Drawing.Point(0, 0)
Me.RibbonControl1.MaxItemId = 14
Me.RibbonControl1.Name = "RibbonControl1"
Me.RibbonControl1.PageHeaderItemLinks.Add(Me.BarDockingMenuItem1)
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.RibbonControl1.Size = New System.Drawing.Size(1310, 158)
Me.RibbonControl1.StatusBar = Me.RibbonStatusBar1
'
'ButtonSelectFiles
'
Me.ButtonSelectFiles.Caption = "Select Files..."
Me.ButtonSelectFiles.Id = 1
Me.ButtonSelectFiles.ImageOptions.SvgImage = CType(resources.GetObject("ButtonSelectFiles.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.ButtonSelectFiles.Name = "ButtonSelectFiles"
'
'ButtonImportFiles
'
Me.ButtonImportFiles.Caption = "Import Files"
Me.ButtonImportFiles.Id = 2
Me.ButtonImportFiles.ImageOptions.SvgImage = CType(resources.GetObject("ButtonImportFiles.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.ButtonImportFiles.Name = "ButtonImportFiles"
'
'buttonClearLog
'
Me.buttonClearLog.Caption = "Clear Log"
Me.buttonClearLog.Id = 3
Me.buttonClearLog.ImageOptions.SvgImage = CType(resources.GetObject("buttonClearLog.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.buttonClearLog.Name = "buttonClearLog"
'
'buttonClearFiles
'
Me.buttonClearFiles.Caption = "Clear Files"
Me.buttonClearFiles.Id = 4
Me.buttonClearFiles.ImageOptions.SvgImage = CType(resources.GetObject("buttonClearFiles.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.buttonClearFiles.Name = "buttonClearFiles"
'
'TextboxObejctId
'
Me.TextboxObjectId.Caption = "Document Id"
Me.TextboxObjectId.Edit = Me.RepositoryItemTextEdit1
Me.TextboxObjectId.EditWidth = 100
Me.TextboxObjectId.Id = 5
Me.TextboxObjectId.ImageOptions.SvgImage = CType(resources.GetObject("TextboxObejctId.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.TextboxObjectId.Name = "TextboxObejctId"
'
'RepositoryItemTextEdit1
'
Me.RepositoryItemTextEdit1.AutoHeight = False
Me.RepositoryItemTextEdit1.Name = "RepositoryItemTextEdit1"
'
'ButtonLoadFile
'
Me.ButtonLoadFile.Caption = "Load File"
Me.ButtonLoadFile.Id = 6
Me.ButtonLoadFile.ImageOptions.SvgImage = CType(resources.GetObject("ButtonLoadFile.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.ButtonLoadFile.Name = "ButtonLoadFile"
'
'BarListItem1
'
Me.BarListItem1.Caption = "Strategy"
Me.BarListItem1.Id = 7
Me.BarListItem1.ImageOptions.SvgImage = CType(resources.GetObject("BarListItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarListItem1.Name = "BarListItem1"
Me.BarListItem1.Strings.AddRange(New Object() {"Small Files", "Big Files", "Mixed Files"})
'
'BarButtonItem2
'
Me.BarButtonItem2.Caption = "List Files"
Me.BarButtonItem2.Id = 9
Me.BarButtonItem2.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem2.Name = "BarButtonItem2"
'
'BarToggleSwitchItem1
'
Me.BarToggleSwitchItem1.Caption = "Load File every 3 Seconds"
Me.BarToggleSwitchItem1.Id = 10
Me.BarToggleSwitchItem1.Name = "BarToggleSwitchItem1"
'
'BarDockingMenuItem1
'
Me.BarDockingMenuItem1.Caption = "BarDockingMenuItem1"
Me.BarDockingMenuItem1.Id = 11
Me.BarDockingMenuItem1.Name = "BarDockingMenuItem1"
'
'BarMdiChildrenListItem1
'
Me.BarMdiChildrenListItem1.Caption = "BarMdiChildrenListItem1"
Me.BarMdiChildrenListItem1.Id = 12
Me.BarMdiChildrenListItem1.Name = "BarMdiChildrenListItem1"
'
'RibbonPage1
'
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup4, Me.RibbonPageGroup3})
Me.RibbonPage1.Name = "RibbonPage1"
Me.RibbonPage1.Text = "Start"
'
'RibbonPageGroup1
'
Me.RibbonPageGroup1.ItemLinks.Add(Me.ButtonSelectFiles)
Me.RibbonPageGroup1.ItemLinks.Add(Me.ButtonImportFiles)
Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
Me.RibbonPageGroup1.Text = "Import"
'
'RibbonPageGroup4
'
Me.RibbonPageGroup4.ItemLinks.Add(Me.TextboxObjectId)
Me.RibbonPageGroup4.ItemLinks.Add(Me.BarToggleSwitchItem1)
Me.RibbonPageGroup4.ItemLinks.Add(Me.ButtonLoadFile)
Me.RibbonPageGroup4.ItemLinks.Add(Me.BarButtonItem2)
Me.RibbonPageGroup4.Name = "RibbonPageGroup4"
Me.RibbonPageGroup4.Text = "Retrieve"
'
'RibbonPageGroup3
'
Me.RibbonPageGroup3.ItemLinks.Add(Me.buttonClearLog, True)
Me.RibbonPageGroup3.ItemLinks.Add(Me.buttonClearFiles)
Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem1)
Me.RibbonPageGroup3.Name = "RibbonPageGroup3"
Me.RibbonPageGroup3.Text = "Utils"
'
'RibbonStatusBar1
'
Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 640)
Me.RibbonStatusBar1.Name = "RibbonStatusBar1"
Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1
Me.RibbonStatusBar1.Size = New System.Drawing.Size(1310, 24)
'
'RibbonPage2
'
Me.RibbonPage2.Name = "RibbonPage2"
Me.RibbonPage2.Text = "RibbonPage2"
'
'DocumentManager1
'
Me.DocumentManager1.ContainerControl = Me
Me.DocumentManager1.MenuManager = Me.RibbonControl1
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})
DockingContainer1.Element = Me.DocumentGroup1
Me.TabbedView1.RootContainer.Nodes.AddRange(New DevExpress.XtraBars.Docking2010.Views.Tabbed.DockingContainer() {DockingContainer1})
'
'DockManager1
'
Me.DockManager1.AutoHideContainers.AddRange(New DevExpress.XtraBars.Docking.AutoHideContainer() {Me.hideContainerBottom})
Me.DockManager1.Form = Me
Me.DockManager1.RootPanels.AddRange(New DevExpress.XtraBars.Docking.DockPanel() {Me.panelContainer1, Me.DockPanel2})
Me.DockManager1.TopZIndexControls.AddRange(New String() {"DevExpress.XtraBars.BarDockControl", "DevExpress.XtraBars.StandaloneBarDockControl", "System.Windows.Forms.StatusBar", "System.Windows.Forms.MenuStrip", "System.Windows.Forms.StatusStrip", "DevExpress.XtraBars.Ribbon.RibbonStatusBar", "DevExpress.XtraBars.Ribbon.RibbonControl", "DevExpress.XtraBars.Navigation.OfficeNavigationBar", "DevExpress.XtraBars.Navigation.TileNavPane", "DevExpress.XtraBars.TabFormControl", "DevExpress.XtraBars.FluentDesignSystem.FluentDesignFormControl", "DevExpress.XtraBars.ToolbarForm.ToolbarFormControl"})
'
'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.Controls.Add(Me.DockPanel3)
Me.hideContainerBottom.Dock = System.Windows.Forms.DockStyle.Bottom
Me.hideContainerBottom.Location = New System.Drawing.Point(0, 619)
Me.hideContainerBottom.Name = "hideContainerBottom"
Me.hideContainerBottom.Size = New System.Drawing.Size(1310, 21)
'
'DockPanel3
'
Me.DockPanel3.Controls.Add(Me.DockPanel3_Container)
Me.DockPanel3.Dock = DevExpress.XtraBars.Docking.DockingStyle.Bottom
Me.DockPanel3.FloatVertical = True
Me.DockPanel3.ID = New System.Guid("b0b62b80-3cf3-4f78-a50d-4a79b9cabc39")
Me.DockPanel3.Location = New System.Drawing.Point(0, 0)
Me.DockPanel3.Name = "DockPanel3"
Me.DockPanel3.Options.ShowCloseButton = False
Me.DockPanel3.OriginalSize = New System.Drawing.Size(200, 119)
Me.DockPanel3.SavedDock = DevExpress.XtraBars.Docking.DockingStyle.Bottom
Me.DockPanel3.SavedIndex = 0
Me.DockPanel3.Size = New System.Drawing.Size(1310, 119)
Me.DockPanel3.Text = "Log"
Me.DockPanel3.Visibility = DevExpress.XtraBars.Docking.DockVisibility.AutoHide
'
'DockPanel3_Container
'
Me.DockPanel3_Container.Controls.Add(Me.listboxLog)
Me.DockPanel3_Container.Location = New System.Drawing.Point(3, 27)
Me.DockPanel3_Container.Name = "DockPanel3_Container"
Me.DockPanel3_Container.Size = New System.Drawing.Size(1304, 89)
Me.DockPanel3_Container.TabIndex = 0
'
'listboxLog
'
Me.listboxLog.Dock = System.Windows.Forms.DockStyle.Fill
Me.listboxLog.Location = New System.Drawing.Point(0, 0)
Me.listboxLog.Name = "listboxLog"
Me.listboxLog.Size = New System.Drawing.Size(1304, 89)
Me.listboxLog.TabIndex = 0
'
'panelContainer1
'
Me.panelContainer1.ActiveChild = Me.DockPanel4
Me.panelContainer1.Controls.Add(Me.DockPanel4)
Me.panelContainer1.Controls.Add(Me.DockPanel1)
Me.panelContainer1.Dock = DevExpress.XtraBars.Docking.DockingStyle.Left
Me.panelContainer1.ID = New System.Guid("17067a8c-1b48-4d4a-b383-b7f8d5a8be59")
Me.panelContainer1.Location = New System.Drawing.Point(0, 158)
Me.panelContainer1.Name = "panelContainer1"
Me.panelContainer1.Options.ShowCloseButton = False
Me.panelContainer1.OriginalSize = New System.Drawing.Size(451, 200)
Me.panelContainer1.Size = New System.Drawing.Size(451, 461)
Me.panelContainer1.Tabbed = True
Me.panelContainer1.Text = "panelContainer1"
'
'DockPanel4
'
Me.DockPanel4.Controls.Add(Me.DockPanel4_Container)
Me.DockPanel4.Dock = DevExpress.XtraBars.Docking.DockingStyle.Fill
Me.DockPanel4.ID = New System.Guid("bddc849b-1066-4d2f-8fd3-9bc377a2bd74")
Me.DockPanel4.Location = New System.Drawing.Point(3, 26)
Me.DockPanel4.Name = "DockPanel4"
Me.DockPanel4.Options.ShowCloseButton = False
Me.DockPanel4.OriginalSize = New System.Drawing.Size(200, 200)
Me.DockPanel4.Size = New System.Drawing.Size(444, 406)
Me.DockPanel4.Text = "List Files"
'
'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(444, 406)
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(444, 406)
Me.GridControl1.TabIndex = 0
Me.GridControl1.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView1})
'
'BindingSource1
'
'
'GridView1
'
Me.GridView1.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.GridColumn1, Me.GridColumn2})
Me.GridView1.GridControl = Me.GridControl1
Me.GridView1.Name = "GridView1"
Me.GridView1.OptionsBehavior.Editable = False
Me.GridView1.OptionsBehavior.ReadOnly = True
'
'GridColumn1
'
Me.GridColumn1.Caption = "Object Id"
Me.GridColumn1.FieldName = "IDB_OBJ_ID"
Me.GridColumn1.MaxWidth = 100
Me.GridColumn1.MinWidth = 100
Me.GridColumn1.Name = "GridColumn1"
Me.GridColumn1.Visible = True
Me.GridColumn1.VisibleIndex = 0
Me.GridColumn1.Width = 100
'
'GridColumn2
'
Me.GridColumn2.Caption = "Document Name"
Me.GridColumn2.FieldName = "DocName"
Me.GridColumn2.Name = "GridColumn2"
Me.GridColumn2.Visible = True
Me.GridColumn2.VisibleIndex = 1
Me.GridColumn2.Width = 409
'
'DockPanel1
'
Me.DockPanel1.Controls.Add(Me.DockPanel1_Container)
Me.DockPanel1.Dock = DevExpress.XtraBars.Docking.DockingStyle.Fill
Me.DockPanel1.ID = New System.Guid("12b5eead-07cc-48c6-93a4-85cd0b4b82ce")
Me.DockPanel1.Location = New System.Drawing.Point(3, 26)
Me.DockPanel1.Name = "DockPanel1"
Me.DockPanel1.Options.ShowCloseButton = False
Me.DockPanel1.OriginalSize = New System.Drawing.Size(200, 200)
Me.DockPanel1.Size = New System.Drawing.Size(444, 406)
Me.DockPanel1.Text = "Files to Upload"
'
'DockPanel1_Container
'
Me.DockPanel1_Container.Controls.Add(Me.listboxFiles)
Me.DockPanel1_Container.Location = New System.Drawing.Point(0, 0)
Me.DockPanel1_Container.Name = "DockPanel1_Container"
Me.DockPanel1_Container.Size = New System.Drawing.Size(444, 406)
Me.DockPanel1_Container.TabIndex = 0
'
'listboxFiles
'
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(444, 406)
Me.listboxFiles.TabIndex = 1
'
'DockPanel2
'
Me.DockPanel2.Controls.Add(Me.DockPanel2_Container)
Me.DockPanel2.DockedAsTabbedDocument = True
Me.DockPanel2.ID = New System.Guid("e82850af-b594-49e9-ae83-36d4bf007da5")
Me.DockPanel2.Name = "DockPanel2"
Me.DockPanel2.Options.ShowCloseButton = False
Me.DockPanel2.OriginalSize = New System.Drawing.Size(200, 200)
Me.DockPanel2.Text = "Document Viewer"
'
'DockPanel2_Container
'
Me.DockPanel2_Container.Controls.Add(Me.DocumentViewer1)
Me.DockPanel2_Container.Location = New System.Drawing.Point(0, 0)
Me.DockPanel2_Container.Name = "DockPanel2_Container"
Me.DockPanel2_Container.Size = New System.Drawing.Size(853, 432)
Me.DockPanel2_Container.TabIndex = 0
'
'DocumentViewer1
'
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(853, 432)
Me.DocumentViewer1.TabIndex = 0
'
'Timer1
'
Me.Timer1.Interval = 3000
'
'BarButtonItem1
'
Me.BarButtonItem1.Caption = "Open Log Directory"
Me.BarButtonItem1.Id = 13
Me.BarButtonItem1.Name = "BarButtonItem1"
'
'Form1
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(1310, 664)
Me.Controls.Add(Me.panelContainer1)
Me.Controls.Add(Me.hideContainerBottom)
Me.Controls.Add(Me.RibbonStatusBar1)
Me.Controls.Add(Me.RibbonControl1)
Me.Name = "Form1"
Me.Ribbon = Me.RibbonControl1
Me.StatusBar = Me.RibbonStatusBar1
Me.Text = "Form1"
CType(Me.DocumentGroup1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.Document1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.DocumentManager1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.TabbedView1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.DockManager1, System.ComponentModel.ISupportInitialize).EndInit()
Me.hideContainerBottom.ResumeLayout(False)
Me.DockPanel3.ResumeLayout(False)
Me.DockPanel3_Container.ResumeLayout(False)
CType(Me.listboxLog, System.ComponentModel.ISupportInitialize).EndInit()
Me.panelContainer1.ResumeLayout(False)
Me.DockPanel4.ResumeLayout(False)
Me.DockPanel4_Container.ResumeLayout(False)
CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.BindingSource1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridView1, System.ComponentModel.ISupportInitialize).EndInit()
Me.DockPanel1.ResumeLayout(False)
Me.DockPanel1_Container.ResumeLayout(False)
CType(Me.listboxFiles, System.ComponentModel.ISupportInitialize).EndInit()
Me.DockPanel2.ResumeLayout(False)
Me.DockPanel2_Container.ResumeLayout(False)
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents RibbonControl1 As DevExpress.XtraBars.Ribbon.RibbonControl
Friend WithEvents RibbonPage1 As DevExpress.XtraBars.Ribbon.RibbonPage
Friend WithEvents RibbonPageGroup1 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents RibbonPage2 As DevExpress.XtraBars.Ribbon.RibbonPage
Friend WithEvents ButtonSelectFiles As DevExpress.XtraBars.BarButtonItem
Friend WithEvents ButtonImportFiles As DevExpress.XtraBars.BarButtonItem
Friend WithEvents buttonClearLog As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents buttonClearFiles As DevExpress.XtraBars.BarButtonItem
Friend WithEvents TextboxObjectId As DevExpress.XtraBars.BarEditItem
Friend WithEvents RepositoryItemTextEdit1 As DevExpress.XtraEditors.Repository.RepositoryItemTextEdit
Friend WithEvents ButtonLoadFile As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroup4 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents BarListItem1 As DevExpress.XtraBars.BarListItem
Friend WithEvents DocumentManager1 As DevExpress.XtraBars.Docking2010.DocumentManager
Friend WithEvents DockPanel1 As DevExpress.XtraBars.Docking.DockPanel
Friend WithEvents DockPanel1_Container As DevExpress.XtraBars.Docking.ControlContainer
Friend WithEvents listboxFiles As DevExpress.XtraEditors.ListBoxControl
Friend WithEvents listboxLog As DevExpress.XtraEditors.ListBoxControl
Friend WithEvents DocumentViewer1 As DigitalData.Controls.DocumentViewer.DocumentViewer
Friend WithEvents TabbedView1 As DevExpress.XtraBars.Docking2010.Views.Tabbed.TabbedView
Friend WithEvents DockManager1 As DevExpress.XtraBars.Docking.DockManager
Friend WithEvents DockPanel3 As DevExpress.XtraBars.Docking.DockPanel
Friend WithEvents DockPanel3_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
Friend WithEvents DockPanel2 As DevExpress.XtraBars.Docking.DockPanel
Friend WithEvents DockPanel2_Container As DevExpress.XtraBars.Docking.ControlContainer
Friend WithEvents RibbonStatusBar1 As DevExpress.XtraBars.Ribbon.RibbonStatusBar
Friend WithEvents panelContainer1 As DevExpress.XtraBars.Docking.DockPanel
Friend WithEvents DockPanel4 As DevExpress.XtraBars.Docking.DockPanel
Friend WithEvents DockPanel4_Container As DevExpress.XtraBars.Docking.ControlContainer
Friend WithEvents GridControl1 As DevExpress.XtraGrid.GridControl
Friend WithEvents GridView1 As DevExpress.XtraGrid.Views.Grid.GridView
Friend WithEvents hideContainerBottom As DevExpress.XtraBars.Docking.AutoHideContainer
Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents GridColumn1 As DevExpress.XtraGrid.Columns.GridColumn
Friend WithEvents GridColumn2 As DevExpress.XtraGrid.Columns.GridColumn
Friend WithEvents BindingSource1 As BindingSource
Friend WithEvents BarToggleSwitchItem1 As DevExpress.XtraBars.BarToggleSwitchItem
Friend WithEvents Timer1 As Timer
Friend WithEvents BarDockingMenuItem1 As DevExpress.XtraBars.BarDockingMenuItem
Friend WithEvents BarMdiChildrenListItem1 As DevExpress.XtraBars.BarMdiChildrenListItem
Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem
End Class

View File

@@ -0,0 +1,301 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="DevExpress.Data.v19.2" name="DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="ButtonSelectFiles.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAJQCAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iT3BlbiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMzIg
MzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJLnN0
MHtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBjbGFzcz0ic3QwIj4NCiAgICA8cGF0aCBkPSJN
Mi4yLDI1LjJsNS41LTEyYzAuMy0wLjcsMS0xLjIsMS44LTEuMkgyNlY5YzAtMC42LTAuNC0xLTEtMUgx
MlY1YzAtMC42LTAuNC0xLTEtMUgzQzIuNCw0LDIsNC40LDIsNXYyMCAgIGMwLDAuMiwwLDAuMywwLjEs
MC40QzIuMSwyNS4zLDIuMiwyNS4zLDIuMiwyNS4yeiIgY2xhc3M9IlllbGxvdyIgLz4NCiAgPC9nPg0K
ICA8cGF0aCBkPSJNMzEuMywxNEg5LjZMNCwyNmgyMS44YzAuNSwwLDEuMS0wLjMsMS4zLTAuN0wzMiwx
NC43QzMyLjEsMTQuMywzMS44LDE0LDMxLjMsMTR6IiBjbGFzcz0iWWVsbG93IiAvPg0KPC9zdmc+Cw==
</value>
</data>
<data name="ButtonImportFiles.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAOsCAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJs
YWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAzOUMy
Mzt9CgkuWWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl
Pg0KICA8ZyBpZD0iSW1wb3J0Ij4NCiAgICA8cGF0aCBkPSJNMTAsMTJINlY2aDRWMTJ6IE0yMiwxN3Yx
djljMCwwLjYtMC40LDEtMSwxSDFjLTAuNiwwLTEtMC40LTEtMVY3YzAtMC42LDAuNC0xLDEtMWgzdjho
MTRMMjIsMTd6IE0xOCwxOEg0ICAgdjZoMTRWMTh6IiBjbGFzcz0iQmxhY2siIC8+DQogICAgPHBvbHln
b24gcG9pbnRzPSIzMCw2IDIyLDYgMjIsMiAxNCw4IDIyLDE0IDIyLDEwIDMwLDEwICAiIGNsYXNzPSJH
cmVlbiIgLz4NCiAgPC9nPg0KPC9zdmc+Cw==
</value>
</data>
<data name="buttonClearLog.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAK8DAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iQ2xlYXJfUGl2b3RfVGFibGUiIHN0eWxlPSJlbmFibGUtYmFja2dyb3Vu
ZDpuZXcgMCAwIDMyIDMyIj4NCiAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5SZWR7ZmlsbDojRDEx
QzFDO30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5zdDB7b3Bh
Y2l0eTowLjU7fQo8L3N0eWxlPg0KICA8ZyBjbGFzcz0ic3QwIj4NCiAgICA8cGF0aCBkPSJNMTAsMTBI
NlY2aDRWMTB6IE0yNCw2SDEydjRoMTJWNnogTTEwLDEySDZ2MTJoNFYxMnoiIGNsYXNzPSJCbHVlIiAv
Pg0KICA8L2c+DQogIDxwYXRoIGQ9Ik0xOSwyMy4zTDE2LjMsMjZjLTAuNCwwLjQtMC40LDEuMiwwLDEu
Nmw0LDRjMC40LDAuNCwxLjIsMC40LDEuNiwwbDIuNy0yLjdMMTksMjMuM3oiIGNsYXNzPSJCbHVlIiAv
Pg0KICA8cGF0aCBkPSJNMTQsMjYuOGMwLTAuMywwLjEtMC42LDAuMS0wLjhINFY0aDIydjEwLjFjMC4z
LTAuMSwwLjUtMC4xLDAuOC0wLjFjMC40LDAsMC44LDAuMSwxLjIsMC4yVjMgIGMwLTAuNi0wLjQtMS0x
LTFIM0MyLjQsMiwyLDIuNCwyLDN2MjRjMCwwLjYsMC40LDEsMSwxaDExLjJDMTQuMSwyNy42LDE0LDI3
LjIsMTQsMjYuOHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgPHBhdGggZD0iTTMxLjcsMjAuNGwtNC00Yy0w
LjQtMC40LTEuMi0wLjQtMS42LDBsLTYuMSw2LjFsNS42LDUuNmw2LjEtNi4xQzMyLjEsMjEuNSwzMi4x
LDIwLjgsMzEuNywyMC40eiIgY2xhc3M9IlJlZCIgLz4NCjwvc3ZnPgs=
</value>
</data>
<data name="buttonClearFiles.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAEACAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iQ2xlYXIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDMy
IDMyIj4NCiAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5SZWR7ZmlsbDojRDExQzFDO30KCS5CbHVl
e2ZpbGw6IzExNzdENzt9Cjwvc3R5bGU+DQogIDxwYXRoIGQ9Ik0xNi4xLDIzLjFsLTQuNCw0LjRjLTAu
NywwLjctMS45LDAuNy0yLjYsMGwtNi42LTYuNmMtMC43LTAuNy0wLjctMS45LDAtMi42TDYuOSwxNEwx
Ni4xLDIzLjF6IiBjbGFzcz0iQmx1ZSIgLz4NCiAgPHBhdGggZD0iTTI3LjUsMTEuOGwtMTAsMTBsLTku
Mi05LjJsMTAtMTBjMC43LTAuNywxLjktMC43LDIuNiwwbDYuNiw2LjZDMjguMiw5LjksMjguMiwxMSwy
Ny41LDExLjh6IiBjbGFzcz0iUmVkIiAvPg0KPC9zdmc+Cw==
</value>
</data>
<data name="TextboxObejctId.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAGkEAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAxNiAxNiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MTYgMTYiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku
R3JlZW57ZmlsbDojMDM5QzIzO30KCS5XaGl0ZXtmaWxsOiNGRkZGRkY7fQoJLnN0MHtvcGFjaXR5OjAu
Njt9Cgkuc3Qxe29wYWNpdHk6MC41O30KPC9zdHlsZT4NCiAgPHBhdGggZD0iTTE1LDFIMUMwLjUsMSww
LDEuNSwwLDJ2MTJjMCwwLjUsMC41LDEsMSwxaDE0YzAuNSwwLDEtMC41LDEtMVYyQzE2LDEuNSwxNS41
LDEsMTUsMXogTTE1LDE0SDFWMmgxNFYxNHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgPHBhdGggZD0iTTAs
NVYyYzAtMC41LDAuNS0xLDEtMWgxNGMwLjYsMCwxLDAuNSwxLDF2M0gweiIgY2xhc3M9IkdyZWVuIiAv
Pg0KICA8ZyBpZD0iTGF5ZXJfMiIgY2xhc3M9InN0MCI+DQogICAgPHJlY3QgeD0iMSIgeT0iMiIgd2lk
dGg9IjE0IiBoZWlnaHQ9IjIiIHJ4PSIwIiByeT0iMCIgY2xhc3M9IldoaXRlIiAvPg0KICA8L2c+DQog
IDxyZWN0IHg9IjEiIHk9IjUiIHdpZHRoPSIxNCIgaGVpZ2h0PSI5IiByeD0iMCIgcnk9IjAiIGNsYXNz
PSJXaGl0ZSIgLz4NCiAgPHBhdGggZD0iTTUsMTJWN2gxdjVINXoiIGNsYXNzPSJCbGFjayIgLz4NCiAg
PHBhdGggZD0iTTExLDEyaC0xbDAtMC42QzkuOCwxMS42LDkuNSwxMiw4LjcsMTJjLTAuNSwwLTAuOS0w
LjItMS4yLTAuNUM3LjIsMTEuMiw3LDEwLjcsNywxMC4xQzcsOS41LDcuMiw5LDcuNSw4LjcgIGMwLjMt
MC4zLDAuNy0wLjUsMS4yLTAuNXMwLjksMC4yLDEuMiwwLjVWN0gxMVYxMnogTTguMSwxMC4xYzAsMC40
LDAsMS4yLDAuOSwxLjJjMC44LDAsMC45LTAuOCwwLjktMS4xQzkuOSw5LjgsOS44LDksOSw5ICBDOC4z
LDksOC4xLDkuNyw4LjEsMTAuMXoiIGNsYXNzPSJCbGFjayIgLz4NCjwvc3ZnPgs=
</value>
</data>
<data name="ButtonLoadFile.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAFcCAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ
LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD
MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
Y2l0eTowLjc1O30KPC9zdHlsZT4NCiAgPGcgaWQ9Ik5leHQiPg0KICAgIDxwYXRoIGQ9Ik0xNiwyQzgu
MywyLDIsOC4zLDIsMTZzNi4zLDE0LDE0LDE0czE0LTYuMywxNC0xNFMyMy43LDIsMTYsMnogTTE2LDI0
bC04LThoNlY4aDR2OGg2TDE2LDI0eiIgY2xhc3M9IkdyZWVuIiAvPg0KICA8L2c+DQo8L3N2Zz4L
</value>
</data>
<data name="BarListItem1.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAMMDAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5Z
ZWxsb3d7ZmlsbDojRkZCMTE1O30KCS5SZWR7ZmlsbDojRDExQzFDO30KCS5HcmVlbntmaWxsOiMwMzlD
MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQoJLnN0MntkaXNwbGF5Om5vbmU7fQoJLnN0M3tk
aXNwbGF5OmlubGluZTtmaWxsOiNGRkIxMTU7fQoJLnN0NHtkaXNwbGF5OmlubGluZTt9Cgkuc3Q1e2Rp
c3BsYXk6aW5saW5lO29wYWNpdHk6MC43NTt9Cgkuc3Q2e2Rpc3BsYXk6aW5saW5lO29wYWNpdHk6MC41
O30KCS5zdDd7ZGlzcGxheTppbmxpbmU7ZmlsbDojMDM5QzIzO30KCS5zdDh7ZGlzcGxheTppbmxpbmU7
ZmlsbDojRDExQzFDO30KCS5zdDl7ZGlzcGxheTppbmxpbmU7ZmlsbDojMTE3N0Q3O30KCS5zdDEwe2Rp
c3BsYXk6aW5saW5lO2ZpbGw6I0ZGRkZGRjt9Cjwvc3R5bGU+DQogIDxnIGlkPSJLUElfeDVGX0RlZmlu
aXRpb24iPg0KICAgIDxwb2x5Z29uIHBvaW50cz0iMjYsOS4yIDI2LDAgMTIsMTQgOCwxMCAyLDE2IDIs
MjQgMTEuMiwyNCAgIiBjbGFzcz0iR3JlZW4iIC8+DQogICAgPHBhdGggZD0iTTYsMzJoMjZWNkw2LDMy
eiBNMjYsMjZoLTUuNWw1LjUtNS41VjI2eiIgY2xhc3M9IlllbGxvdyIgLz4NCiAgPC9nPg0KPC9zdmc+
Cw==
</value>
</data>
<data name="BarButtonItem2.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAMEDAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAxNiAxNiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MTYgMTYiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku
V2hpdGV7ZmlsbDojRkZGRkZGO30KCS5HcmVlbntmaWxsOiMwMzlDMjM7fQoJLnN0MHtvcGFjaXR5OjAu
Njt9Cgkuc3Qxe29wYWNpdHk6MC41O30KPC9zdHlsZT4NCiAgPHBhdGggZD0iTTE1LDFIMUMwLjUsMSww
LDEuNSwwLDJ2MTFjMCwwLjUsMC41LDEsMSwxaDE0YzAuNSwwLDEtMC41LDEtMVYyQzE2LDEuNSwxNS41
LDEsMTUsMXogTTE1LDEzSDFWMmgxNFYxM3oiIGNsYXNzPSJCbGFjayIgLz4NCiAgPHBhdGggZD0iTTAs
NVYyYzAtMC41LDAuNS0xLDEtMWgxNGMwLjYsMCwxLDAuNSwxLDF2M0gweiIgY2xhc3M9IkdyZWVuIiAv
Pg0KICA8ZyBpZD0iTGF5ZXJfMiIgY2xhc3M9InN0MCI+DQogICAgPHJlY3QgeD0iMSIgeT0iMiIgd2lk
dGg9IjE0IiBoZWlnaHQ9IjIiIHJ4PSIwIiByeT0iMCIgY2xhc3M9IldoaXRlIiAvPg0KICA8L2c+DQog
IDxyZWN0IHg9IjEiIHk9IjUiIHdpZHRoPSIxNCIgaGVpZ2h0PSI4IiByeD0iMCIgcnk9IjAiIGNsYXNz
PSJXaGl0ZSIgLz4NCiAgPGcgaWQ9IkxheWVyXzMiIGNsYXNzPSJzdDAiPg0KICAgIDxwYXRoIGQ9Ik0x
NSw4VjdoLTNWNWgtMXYySDVWNUg0djJIMXYxaDN2MkgxdjFoM3YyaDF2LTJoNnYyaDF2LTJoM3YtMWgt
M1Y4SDE1eiBNMTEsMTBINVY4aDZWMTB6IiBjbGFzcz0iQmxhY2siIC8+DQogIDwvZz4NCjwvc3ZnPgs=
</value>
</data>
<metadata name="DocumentManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="BindingSource1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>316, 17</value>
</metadata>
<metadata name="DockManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>181, 17</value>
</metadata>
<metadata name="Timer1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>453, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,216 @@
Imports System.ServiceModel
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.EDMI.API
Imports DevExpress.XtraEditors
Imports DevExpress.XtraEditors.Controls
Imports System.IO
Imports DigitalData.Modules.EDMI.API.EDMIServiceReference
Public Class Form1
Private _LogConfig As LogConfig
Private _Logger As Logger
Private _Client As Client
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Try
_LogConfig = New LogConfig(LogConfig.PathType.Temp, Nothing, "EDMIBenschmark")
_Logger = _LogConfig.GetLogger()
_Client = New Client(_LogConfig, "172.24.12.39", 9000)
_Client.Connect()
DocumentViewer1.Init(_LogConfig, "21182889975216572111813147150675976632")
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, Text)
End Try
End Sub
Private Sub AddLogMessage(Message As String)
_Logger.Info(Message)
listboxLog.Items.Add(Message)
listboxLog.MakeItemVisible(listboxLog.Items.Count - 1)
End Sub
Private Sub ButtonSelectFiles_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles ButtonSelectFiles.ItemClick
Dim oDialog As New OpenFileDialog() With {
.Multiselect = True,
.CheckFileExists = True
}
Dim oResult = oDialog.ShowDialog()
listboxFiles.Items.Clear()
If oResult = DialogResult.OK Then
For Each oFileName In oDialog.FileNames
listboxFiles.Items.Add(oFileName)
Next
End If
End Sub
Private Async Sub ButtonImportFiles_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles ButtonImportFiles.ItemClick
Try
Dim oFiles As New List(Of String)
Dim oSWTotal As New Stopwatch()
oSWTotal.Start()
Dim oCountFiles As Integer = 0
For Each oItem As String In listboxFiles.Items
Dim oSW As New Stopwatch()
oSW.Start()
Dim oFileName As String = oItem
Dim oFileInfo As New FileInfo(oFileName)
AddLogMessage($"Importing {oFileInfo.Name}... ({FormatBytes(oFileInfo.Length)})")
Dim oObjectId As Long = Await _Client.ImportFileAsync(oFileInfo.FullName, "WichtigesDokument", 1, 0)
AddLogMessage($"File with Id [{oObjectId}] imported!")
oCountFiles += 1
oSW.Stop()
AddLogMessage($"Import Time: {FormatTime(oSW.ElapsedMilliseconds)}")
AddLogMessage("")
Next
oSWTotal.Stop()
AddLogMessage($"Imported {oCountFiles} files - Total Time: {FormatTime(oSWTotal.ElapsedMilliseconds)}")
MsgBox($"Imported {oCountFiles} files - Total Time: {FormatTime(oSWTotal.ElapsedMilliseconds)}", MsgBoxStyle.Information)
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, Text)
End Try
End Sub
Private Sub buttonClearLog_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles buttonClearLog.ItemClick
listboxLog.Items.Clear()
End Sub
Private Sub buttonClearFiles_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles buttonClearFiles.ItemClick
listboxFiles.Items.Clear()
End Sub
Public Function FormatTime(Milliseconds As Integer) As String
If Milliseconds < 1000 Then
Return Milliseconds & " ms"
Else
Return (Milliseconds / 1000) & " s"
End If
End Function
Dim DoubleBytes As Double
Public Function FormatBytes(ByVal BytesCaller As ULong) As String
Try
Select Case BytesCaller
Case Is >= 1099511627776
DoubleBytes = CDbl(BytesCaller / 1099511627776) 'TB
Return FormatNumber(DoubleBytes, 2) & " TB"
Case 1073741824 To 1099511627775
DoubleBytes = CDbl(BytesCaller / 1073741824) 'GB
Return FormatNumber(DoubleBytes, 2) & " GB"
Case 1048576 To 1073741823
DoubleBytes = CDbl(BytesCaller / 1048576) 'MB
Return FormatNumber(DoubleBytes, 2) & " MB"
Case 1024 To 1048575
DoubleBytes = CDbl(BytesCaller / 1024) 'KB
Return FormatNumber(DoubleBytes, 2) & " KB"
Case 0 To 1023
DoubleBytes = BytesCaller ' bytes
Return FormatNumber(DoubleBytes, 2) & " bytes"
Case Else
Return ""
End Select
Catch
Return ""
End Try
End Function
Private Async Sub ButtonLoadFile_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles ButtonLoadFile.ItemClick
Try
Dim oSWTotal As New Stopwatch()
oSWTotal.Start()
If TextboxObjectId.EditValue = "" Then
MsgBox("Please enter an object id!", MsgBoxStyle.Exclamation, "Uh oh!")
End If
Dim oObjectId As Integer = TextboxObjectId.EditValue
Dim oResponse As Client.StreamedFile = Await _Client.GetFileByObjectIdAsync(oObjectId)
DocumentViewer1.LoadFile(oResponse.FileName, oResponse.Stream)
oSWTotal.Stop()
AddLogMessage($"File [{oResponse.FileName}] loaded: [{FormatTime(oSWTotal.ElapsedMilliseconds)}]")
Catch ex As FaultException
MsgBox(ex.Reason.ToString, MsgBoxStyle.Critical, "Error from Service")
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Uh oh!")
End Try
End Sub
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
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Uh oh!")
End Try
End Sub
Private Async Sub BindingSource1_CurrentChanged(sender As Object, e As EventArgs) Handles BindingSource1.CurrentChanged
Dim oRow As DataRow = GridView1.GetFocusedDataRow()
If oRow Is Nothing Then
Exit Sub
End If
Try
Dim oSWTotal As New Stopwatch()
oSWTotal.Start()
Dim oObjectId As Long = oRow.Item("IDB_OBJ_ID")
Dim oResponse As Client.StreamedFile = Await _Client.GetFileByObjectIdAsync(oObjectId)
DocumentViewer1.LoadFile(oResponse.FileName, oResponse.Stream)
oSWTotal.Stop()
AddLogMessage($"File [{oResponse.FileName}] loaded: [{FormatTime(oSWTotal.ElapsedMilliseconds)}]")
Catch ex As FaultException
MsgBox(ex.Reason.ToString, MsgBoxStyle.Critical, "Error from Service")
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Uh oh!")
End Try
End Sub
Private Async Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
Try
Dim oSWTotal As New Stopwatch()
oSWTotal.Start()
Dim oObjectId As Integer = TextboxObjectId.EditValue
Dim oResponse As Client.StreamedFile = Await _Client.GetFileByObjectIdAsync(oObjectId)
DocumentViewer1.LoadFile(oResponse.FileName, oResponse.Stream)
oSWTotal.Stop()
AddLogMessage($"File [{oResponse.FileName}] loaded: [{FormatTime(oSWTotal.ElapsedMilliseconds)}]")
Catch ex As Exception
AddLogMessage($"Error while getting file: [{ex.Message}]")
End Try
End Sub
Private Sub BarToggleSwitchItem1_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarToggleSwitchItem1.CheckedChanged
If BarToggleSwitchItem1.Checked Then
If TextboxObjectId.EditValue = "" Then
Timer1.Stop()
MsgBox("Please set a ObjectId!", MsgBoxStyle.Critical, Text)
Else
Timer1.Start()
AddLogMessage("Timer Started!")
End If
Else
Timer1.Stop()
AddLogMessage("Timer Stopped!")
End If
End Sub
Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick
Process.Start(_LogConfig.LogDirectory)
End Sub
End Class

View File

@@ -0,0 +1,169 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{5FDEC007-7AE0-4829-B1AE-6165E29375DA}</ProjectGuid>
<OutputType>WinExe</OutputType>
<StartupObject>GUIs.Test.EDMIBenchmark.My.MyApplication</StartupObject>
<RootNamespace>GUIs.Test.EDMIBenchmark</RootNamespace>
<AssemblyName>GUIs.Test.EDMIBenchmark</AssemblyName>
<FileAlignment>512</FileAlignment>
<MyType>WindowsForms</MyType>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>GUIs.Test.EDMIBenchmark.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DocumentationFile>GUIs.Test.EDMIBenchmark.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup>
<OptionExplicit>On</OptionExplicit>
</PropertyGroup>
<PropertyGroup>
<OptionCompare>Binary</OptionCompare>
</PropertyGroup>
<PropertyGroup>
<OptionStrict>Off</OptionStrict>
</PropertyGroup>
<PropertyGroup>
<OptionInfer>On</OptionInfer>
</PropertyGroup>
<ItemGroup>
<Reference Include="DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Printing.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Sparkline.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Utils.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraGrid.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DigitalData.Controls.DocumentViewer">
<HintPath>..\Controls.DocumentViewer\obj\Debug\DigitalData.Controls.DocumentViewer.dll</HintPath>
</Reference>
<Reference Include="DigitalData.Controls.LookupGrid">
<HintPath>..\Controls.LookupGrid\obj\Debug\DigitalData.Controls.LookupGrid.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14">
<HintPath>D:\ProgramFiles\GdPicture.NET 14\Redist\GdPicture.NET (.NET Framework 4.5)\GdPicture.NET.14.dll</HintPath>
</Reference>
<Reference Include="Independentsoft.Msg">
<HintPath>P:\Visual Studio Projekte\Bibliotheken\MSG .NET\Bin\22_11_19\Independentsoft.Msg.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
<HintPath>..\packages\NLog.4.7.0\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" />
<Reference Include="System.Data" />
<Reference Include="System.Data.Linq" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.IO.Compression" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.Transactions" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Net.Http" />
</ItemGroup>
<ItemGroup>
<Import Include="Microsoft.VisualBasic" />
<Import Include="System" />
<Import Include="System.Collections" />
<Import Include="System.Collections.Generic" />
<Import Include="System.Data" />
<Import Include="System.Drawing" />
<Import Include="System.Diagnostics" />
<Import Include="System.Windows.Forms" />
<Import Include="System.Linq" />
<Import Include="System.Xml.Linq" />
<Import Include="System.Threading.Tasks" />
</ItemGroup>
<ItemGroup>
<Compile Include="Form1.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="Form1.Designer.vb">
<DependentUpon>Form1.vb</DependentUpon>
<SubType>Form</SubType>
</Compile>
<Compile Include="My Project\AssemblyInfo.vb" />
<Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Application.myapp</DependentUpon>
</Compile>
<Compile Include="My Project\Resources.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="My Project\Settings.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Form1.resx">
<DependentUpon>Form1.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="My Project\licenses.licx" />
<EmbeddedResource Include="My Project\Resources.resx">
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="My Project\Application.myapp">
<Generator>MyApplicationCodeGenerator</Generator>
<LastGenOutput>Application.Designer.vb</LastGenOutput>
</None>
<None Include="My Project\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<CustomToolNamespace>My</CustomToolNamespace>
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
</None>
<None Include="App.config" />
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Controls.DocumentViewer\DocumentViewer.vbproj">
<Project>{0958cddf-4a16-41f6-8837-8335f71d599c}</Project>
<Name>DocumentViewer</Name>
</ProjectReference>
<ProjectReference Include="..\Modules.EDMIAPI\EDMI.API.vbproj">
<Project>{25017513-0d97-49d3-98d7-ba76d9b251b0}</Project>
<Name>EDMI.API</Name>
</ProjectReference>
<ProjectReference Include="..\Modules.Logging\Logging.vbproj">
<Project>{903b2d7d-3b80-4be9-8713-7447b704e1b0}</Project>
<Name>Logging</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
</Project>

View File

@@ -0,0 +1,38 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:4.0.30319.42000
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My
'NOTE: This file is auto-generated; do not modify it directly. To make changes,
' or if you encounter build errors in this file, go to the Project Designer
' (go to Project Properties or double-click the My Project node in
' Solution Explorer), and make changes on the Application tab.
'
Partial Friend Class MyApplication
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
Public Sub New()
MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
Me.IsSingleInstance = false
Me.EnableVisualStyles = true
Me.SaveMySettingsOnExit = true
Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses
End Sub
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
Protected Overrides Sub OnCreateMainForm()
Me.MainForm = Global.GUIs.Test.EDMIBenchmark.Form1
End Sub
End Class
End Namespace

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<MyApplicationData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<MySubMain>true</MySubMain>
<MainForm>Form1</MainForm>
<SingleInstance>false</SingleInstance>
<ShutdownMode>0</ShutdownMode>
<EnableVisualStyles>true</EnableVisualStyles>
<AuthenticationMode>0</AuthenticationMode>
<ApplicationType>0</ApplicationType>
<SaveMySettingsOnExit>true</SaveMySettingsOnExit>
</MyApplicationData>

View File

@@ -0,0 +1,35 @@
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
' Allgemeine Informationen über eine Assembly werden über die folgenden
' Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
' die einer Assembly zugeordnet sind.
' Werte der Assemblyattribute überprüfen
<Assembly: AssemblyTitle("GUIs.Test.EDMIBenchmark")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("GUIs.Test.EDMIBenchmark")>
<Assembly: AssemblyCopyright("Copyright © 2020")>
<Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(False)>
'Die folgende GUID wird für die typelib-ID verwendet, wenn dieses Projekt für COM verfügbar gemacht wird.
<Assembly: Guid("a89a679a-e39a-4227-8425-0205431edf60")>
' Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
'
' Hauptversion
' Nebenversion
' Buildnummer
' Revision
'
' Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
' indem Sie "*" wie unten gezeigt eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.0.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

View File

@@ -0,0 +1,62 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:4.0.30319.42000
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My.Resources
'This class was auto-generated by the StronglyTypedResourceBuilder
'class via a tool like ResGen or Visual Studio.
'To add or remove a member, edit your .ResX file then rerun ResGen
'with the /str option, or rebuild your VS project.
'''<summary>
''' A strongly-typed resource class, for looking up localized strings, etc.
'''</summary>
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0"), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
Friend Module Resources
Private resourceMan As Global.System.Resources.ResourceManager
Private resourceCulture As Global.System.Globalization.CultureInfo
'''<summary>
''' Returns the cached ResourceManager instance used by this class.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
Get
If Object.ReferenceEquals(resourceMan, Nothing) Then
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("GUIs.Test.EDMIBenchmark.Resources", GetType(Resources).Assembly)
resourceMan = temp
End If
Return resourceMan
End Get
End Property
'''<summary>
''' Overrides the current thread's CurrentUICulture property for all
''' resource lookups using this strongly typed resource class.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend Property Culture() As Global.System.Globalization.CultureInfo
Get
Return resourceCulture
End Get
Set(ByVal value As Global.System.Globalization.CultureInfo)
resourceCulture = value
End Set
End Property
End Module
End Namespace

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