This repository has been archived on 2025-02-17. You can view files and clone it, but cannot push or open issues or pull requests.
BreCal/src/BreCalClient
2023-12-26 17:13:10 +01:00
..
Properties Storing window location and size for main window and all six dialogs 2023-12-26 17:05:16 +01:00
Resources renamed gedreht to port 2023-12-24 16:16:53 +01:00
.editorconfig Edit and save a shipcall 2023-08-21 15:34:09 +02:00
AboutDialog.xaml Allow saving of user data also if password change info has not been given 2023-10-28 12:07:07 +02: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 Storing window location and size for main window and all six dialogs 2023-12-26 17:05:16 +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 Version bump to 1.1.1 2023-12-26 17:13:10 +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 Storing window location and size for main window and all six dialogs 2023-12-26 17:05:16 +01:00
EditShipcallControl.xaml.cs Mark required fields bold and prevent empty entries 2023-12-26 09:17:52 +01:00
EditTimesAgencyIncomingControl.xaml Storing window location and size for main window and all six dialogs 2023-12-26 17:05:16 +01:00
EditTimesAgencyIncomingControl.xaml.cs created 0.9.7 version with some minor fixes 2023-11-25 11:39:45 +01:00
EditTimesAgencyOutgoingControl.xaml Storing window location and size for main window and all six dialogs 2023-12-26 17:05:16 +01:00
EditTimesAgencyOutgoingControl.xaml.cs created 0.9.7 version with some minor fixes 2023-11-25 11:39:45 +01:00
EditTimesAgencyShiftingControl.xaml Storing window location and size for main window and all six dialogs 2023-12-26 17:05:16 +01:00
EditTimesAgencyShiftingControl.xaml.cs created 0.9.7 version with some minor fixes 2023-11-25 11:39:45 +01:00
EditTimesControl.xaml Storing window location and size for main window and all six dialogs 2023-12-26 17:05:16 +01:00
EditTimesControl.xaml.cs Mark required fields bold and prevent empty entries 2023-12-26 09:17:52 +01:00
EditTimesTerminalControl.xaml Storing window location and size for main window and all six dialogs 2023-12-26 17:05:16 +01:00
EditTimesTerminalControl.xaml.cs Mark required fields bold and prevent empty entries 2023-12-26 09:17:52 +01:00
Extensions.cs set enabled flags in times and terminal edit controls 2023-10-16 11:07:18 +02:00
IEditTimesControl.cs bugfixes and small improvements for 0.9.5 test results 2023-11-10 14:13:06 +01:00
MainWindow.xaml Storing window location and size for main window and all six dialogs 2023-12-26 17:05:16 +01:00
MainWindow.xaml.cs Enabled combobox ship search by adding helper container class ShipModel 2023-12-26 08:41:54 +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 Save and restore of filter criteria (user-context) 2023-09-15 17:05:07 +02:00
SearchFilterModel.cs Save and restore of filter criteria (user-context) 2023-09-15 17:05:07 +02: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 fixed typo textBlockAgencyBerthRemarks 2023-12-24 11:33:48 +01:00
ShipcallControlModel.cs only undeleted berths and ships to select, but display all 2023-12-15 16:58:50 +01:00
ShipModel.cs Enabled combobox ship search by adding helper container class ShipModel 2023-12-26 08:41:54 +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.