git_brcal/src/BreCalClient
2024-01-15 16:02:27 +01:00
..
Properties Open all dialogs at the same stored position 2023-12-28 11:20:09 +01:00
Resources fixed some bugs in the dialog, but still cannot save a ship 2024-01-15 16:02:27 +01:00
.editorconfig Edit and save a shipcall 2023-08-21 15:34:09 +02:00
AboutDialog.xaml Open all dialogs at the same stored position 2023-12-28 11:20:09 +01:00
AboutDialog.xaml.cs Allow changes of users phone and email contact info by the user 2023-10-26 16:29:17 +02:00
App.config Open all dialogs at the same stored position 2023-12-28 11:20:09 +01:00
App.xaml Storing window location and size for main window and all six dialogs 2023-12-26 17:05:16 +01:00
App.xaml.cs Storing window location and size for main window and all six dialogs 2023-12-26 17:05:16 +01:00
AssemblyInfo.cs added sample client with sample autogenerated client code 2023-07-11 17:17:27 +02:00
BoolToIndexConverter.cs Edit and save a shipcall 2023-08-21 15:34:09 +02:00
BreCalClient.csproj Ship editing pt. 1 (doesn't compile) 2024-01-14 15:40:00 +01:00
BreCalClient.licenseheader Shipcall list now working with traffic light on bound property, data from server 2023-07-27 12:55:39 +02:00
BreCalClient.sln Select participants on edit shipcall control 2023-08-16 12:16:08 +02:00
BreCalLists.cs Enabled combobox ship search by adding helper container class ShipModel 2023-12-26 08:41:54 +01:00
containership.ico Many little details in the client, added password change dialog 2023-08-18 09:48:37 +02:00
EditShipcallControl.xaml fixed some bugs in the dialog, but still cannot save a ship 2024-01-15 16:02:27 +01:00
EditShipcallControl.xaml.cs fixed some bugs in the dialog, but still cannot save a ship 2024-01-15 16:02:27 +01:00
EditShipDialog.xaml fixed some bugs in the dialog, but still cannot save a ship 2024-01-15 16:02:27 +01:00
EditShipDialog.xaml.cs fixed some bugs in the dialog, but still cannot save a ship 2024-01-15 16:02:27 +01:00
EditTimesAgencyIncomingControl.xaml Open all dialogs at the same stored position 2023-12-28 11:20:09 +01:00
EditTimesAgencyIncomingControl.xaml.cs Enums, work in progress 2024-01-13 19:09:49 +01:00
EditTimesAgencyOutgoingControl.xaml Open all dialogs at the same stored position 2023-12-28 11:20:09 +01:00
EditTimesAgencyOutgoingControl.xaml.cs Enums, work in progress 2024-01-13 19:09:49 +01:00
EditTimesAgencyShiftingControl.xaml Open all dialogs at the same stored position 2023-12-28 11:20:09 +01:00
EditTimesAgencyShiftingControl.xaml.cs Enums, work in progress 2024-01-13 19:09:49 +01:00
EditTimesControl.xaml Set max lengh for times and terminal text info fields 2023-12-28 11:29:58 +01:00
EditTimesControl.xaml.cs Added ship post/put/delete to API 2024-01-14 13:35:35 +01:00
EditTimesTerminalControl.xaml Set max lengh for times and terminal text info fields 2023-12-28 11:29:58 +01:00
EditTimesTerminalControl.xaml.cs Added ship post/put/delete to API 2024-01-14 13:35:35 +01:00
ENIDataGrid.cs Ship editing pt. 1 (doesn't compile) 2024-01-14 15:40:00 +01:00
Extensions.cs now the code is compiling. Yaml file documented via description tags. 2024-01-13 19:09:49 +01:00
IEditTimesControl.cs Enums, work in progress 2024-01-13 19:09:49 +01:00
MainWindow.xaml removed bold text 2023-12-28 11:22:56 +01:00
MainWindow.xaml.cs fixed some bugs in the dialog, but still cannot save a ship 2024-01-15 16:02:27 +01:00
ReadMe.md Fixed test client setup as a separate setup. 2023-09-13 07:09:52 +02:00
SearchFilterControl.xaml Changed search box watermark for better understanding 2023-12-05 09:06:48 +01:00
SearchFilterControl.xaml.cs now the code is compiling. Yaml file documented via description tags. 2024-01-13 19:09:49 +01:00
SearchFilterModel.cs now the code is compiling. Yaml file documented via description tags. 2024-01-13 19:09:49 +01:00
SettingBindingExtension.cs Storing window location and size for main window and all six dialogs 2023-12-26 17:05:16 +01:00
ShipcallControl.xaml made cancelled row look cancelled 2023-12-23 20:43:46 +01:00
ShipcallControl.xaml.cs now the code is compiling. Yaml file documented via description tags. 2024-01-13 19:09:49 +01:00
ShipcallControlModel.cs now the code is compiling. Yaml file documented via description tags. 2024-01-13 19:09:49 +01:00
ShipListDialog.xaml fixed some bugs in the dialog, but still cannot save a ship 2024-01-15 16:02:27 +01:00
ShipListDialog.xaml.cs fixed some bugs in the dialog, but still cannot save a ship 2024-01-15 16:02:27 +01:00
ShipModel.cs fixed some bugs in the dialog, but still cannot save a ship 2024-01-15 16:02:27 +01:00
Util.cs Ship editing pt. 1 (doesn't compile) 2024-01-14 15:40:00 +01:00

Bremen calling WPF client

Introduction

API / code generation

The Rest API client is generated from the OpenAPI specification BreCalApi.yaml into the C# file BreCalApi.cs. In order to do so an extension for Visual Studio needs to be installed: REST API Client Code Generator for VS 2022.

https://marketplace.visualstudio.com/items?itemName=ChristianResmaHelle.ApiClientCodeGenerator2022

This extension has multiple generators, for this project OpenApiCodeGenerator is used (must be set on the yaml file in the project settings). Internally this uses Java, currently > 55 which translates into Java JDK 17 LTS. If code generation is not working please have a look in the output pane and select appropriate output source.

Installation

The client is deployed via ClickOnce.

To deploy the test client, leave everything as it is in develop branch and publish using the profile ClickOnceTestProfile.pubxml. To deploy the productive version, use the profile ClickOnceProfile.pubxml. You will also need to change the AssemblyName in BreCalClient.csproj back to BreCalClient.

<AssemblyName>BreCalClient</AssemblyName>

Resources are embedded in the assembly. Therefore wherever Resources are referenced via assembly name this name has to be adjusted as well. For example:

this.imageShipcallType.Source = new BitmapImage(new Uri("pack://application:,,,/BreCalClient;component/Resources/arrow_right_green.png"));

It is debatable if the single contained file deployment makes sense at this point. Installation file size is at about 150MB which takes a long time to upload however it should run on any current windows installation. Theoretically it should also work on Linux.

Signing

Currently neither assemblies nor the installation is signed. This probably only makes sense with a paid public code signing certificate.