zwischenstand blablabla

This commit is contained in:
2025-04-03 16:47:50 +02:00
parent 8b61ac0fff
commit aa48d9d92d
12 changed files with 715 additions and 249 deletions

View File

@@ -1,15 +1,25 @@
<UserControl x:Class="BeWo.LoginControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
mc:Ignorable="d"
Width="Auto" Background="{StaticResource LoginBackground}"
d:DesignHeight="600" d:DesignWidth="800">
<Grid Name="grid_root" >
<UserControl
x:Class="BeWo.LoginControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
Width="Auto"
d:DesignHeight="600"
d:DesignWidth="800"
Background="{StaticResource LoginBackground}"
mc:Ignorable="d">
<Grid Name="grid_root">
<StackPanel HorizontalAlignment="Center">
<Grid Background="{x:Null}" Height="400" Width="600" Visibility="Visible" x:Name="gridLogin" RenderTransformOrigin="0.5,0.5" Margin="0,0,0,0">
<Grid
x:Name="gridLogin"
Width="600"
Height="400"
Margin="0,0,0,0"
Background="{x:Null}"
RenderTransformOrigin="0.5,0.5"
Visibility="Visible">
<Grid.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
@@ -18,7 +28,13 @@
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Grid.RenderTransform>
<Border CornerRadius="7,7,7,7" BorderThickness="2,2,2,2" Padding="5,5,5,5" BorderBrush="#FF606060" Background="{DynamicResource LoginBackgroundColor}" KeyDown="UIElement_OnKeyDown">
<Border
Padding="5,5,5,5"
Background="{DynamicResource LoginBackgroundColor}"
BorderBrush="#FF606060"
BorderThickness="2,2,2,2"
CornerRadius="7,7,7,7"
KeyDown="UIElement_OnKeyDown">
<Grid Opacity="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="100" />
@@ -34,152 +50,369 @@
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Image Grid.Row="0" Grid.ColumnSpan="4" HorizontalAlignment="Left" VerticalAlignment="Top" Source="Ressources\Icons\bewoplaner_logo_small.png" Height="44" Margin="7,7,0,0"/>
<Label VerticalAlignment="Top" HorizontalAlignment="Right" Content="Version x.x.x" Foreground="#FF818181" Margin="5,7,3,0" Grid.Row="0" Grid.ColumnSpan="4"
Grid.Column="0" FontSize="10" x:Name="lblVersion" />
<StackPanel Grid.Column="1" Grid.Row="0" Grid.ColumnSpan="2" Margin="0,80,0,0">
<Label Content="Herzlich willkommen beim BeWoPlaner!" Foreground="#FF000000" FontSize="12" FontWeight="Bold" Margin="0,30,0,0" />
<Label Content="{markup:Translate Bitte geben Sie Ihren Benutzernamen und Ihr Passwort ein.}" Foreground="#FF000000" FontSize="12" />
<Image
Grid.Row="0"
Grid.ColumnSpan="4"
Height="44"
Margin="7,7,0,0"
HorizontalAlignment="Left"
VerticalAlignment="Top"
Source="Ressources\Icons\bewoplaner_logo_small.png" />
<Label
x:Name="lblVersion"
Grid.Row="0"
Grid.Column="0"
Grid.ColumnSpan="4"
Margin="5,7,3,0"
HorizontalAlignment="Right"
VerticalAlignment="Top"
Content="Version x.x.x"
FontSize="10"
Foreground="#FF818181" />
<StackPanel
Grid.Row="0"
Grid.Column="1"
Grid.ColumnSpan="2"
Margin="0,80,0,0">
<Label
Margin="0,30,0,0"
Content="Herzlich willkommen beim BeWoPlaner!"
FontSize="12"
FontWeight="Bold"
Foreground="#FF000000" />
<Label
Content="{markup:Translate Bitte geben Sie Ihren Benutzernamen und Ihr Passwort ein.}"
FontSize="12"
Foreground="#FF000000" />
</StackPanel>
<Label x:Name="lblPin" Content="PIN:" Grid.Column="1" Grid.Row="1" Foreground="#FF000000" Background="#00000000" VerticalAlignment="Center" Visibility="Collapsed"/>
<TextBox x:Name="PINTextBox" Grid.Column="2" Grid.Row="1" Margin="10,0,20,0" Height="24" SnapsToDevicePixels="True" HorizontalAlignment="Stretch" Visibility="Collapsed"/>
<Label
x:Name="lblPin"
Grid.Row="1"
Grid.Column="1"
VerticalAlignment="Center"
Background="#00000000"
Content="PIN:"
Foreground="#FF000000"
Visibility="Collapsed" />
<TextBox
x:Name="PINTextBox"
Grid.Row="1"
Grid.Column="2"
Height="24"
Margin="10,0,20,0"
HorizontalAlignment="Stretch"
SnapsToDevicePixels="True"
Visibility="Collapsed" />
<Label Grid.Column="1" Grid.Row="2" VerticalAlignment="Center" HorizontalAlignment="Right" Content="{markup:Translate Benutzername:}" Foreground="#FF000000" Background="#00000000" />
<Label Grid.Column="1" Grid.Row="3" VerticalAlignment="Center" HorizontalAlignment="Left" Content="Passwort:" Foreground="#FF000000" Background="#00000000" />
<Label
Grid.Row="2"
Grid.Column="1"
HorizontalAlignment="Right"
VerticalAlignment="Center"
Background="#00000000"
Content="{markup:Translate Benutzername:}"
Foreground="#FF000000" />
<Label
Grid.Row="3"
Grid.Column="1"
HorizontalAlignment="Left"
VerticalAlignment="Center"
Background="#00000000"
Content="Passwort:"
Foreground="#FF000000" />
<TextBox TabIndex="0" SnapsToDevicePixels="True" Grid.Column="2" Grid.Row="2" Margin="10,10,20,10" Height="24" x:Name="TextBox_Username" HorizontalAlignment="Stretch" Text="" GotFocus="TextBox_Username_OnGotFocus" />
<TextBox
x:Name="TextBox_Username"
Grid.Row="2"
Grid.Column="2"
Height="24"
Margin="10,10,20,10"
HorizontalAlignment="Stretch"
GotFocus="TextBox_Username_OnGotFocus"
SnapsToDevicePixels="True"
TabIndex="0"
Text="" />
<PasswordBox Margin="10,0,20,0" Height="24" Grid.Column="2" Grid.Row="3" x:Name="PasswordBox_Password" Password="" HorizontalAlignment="Stretch" GotFocus="PasswordBox_Password_OnGotFocus" TabIndex="1"/>
<PasswordBox
x:Name="PasswordBox_Password"
Grid.Row="3"
Grid.Column="2"
Height="24"
Margin="10,0,20,0"
HorizontalAlignment="Stretch"
GotFocus="PasswordBox_Password_OnGotFocus"
Password=""
TabIndex="1" />
<Label x:Name="profileLabel" Grid.Column="1" Grid.Row="5" Content="Profil:" Foreground="#FF000000" FontSize="12" Visibility="Collapsed" VerticalAlignment="Center"/>
<StackPanel x:Name="profileStackPanel" Grid.Row="5" Grid.Column="2" Orientation="Horizontal" Margin="0,10,20,0" Visibility="Collapsed" >
<ComboBox HorizontalAlignment="Left" x:Name="profileSelectionComboBox" Width="175" Height="24" ItemsSource="{Binding Path=ProfileList}" SelectedIndex="0" Margin="10,0,0,0" />
<Button Click="button_addProfile_Click" Content="@" FontFamily="Webdings" FontSize="14" Height="23" Width="23" Margin="3,0,0,0" ToolTip="Profile bearbeiten"/>
<Label
x:Name="profileLabel"
Grid.Row="5"
Grid.Column="1"
VerticalAlignment="Center"
Content="Profil:"
FontSize="12"
Foreground="#FF000000"
Visibility="Collapsed" />
<StackPanel
x:Name="profileStackPanel"
Grid.Row="5"
Grid.Column="2"
Margin="0,10,20,0"
Orientation="Horizontal"
Visibility="Collapsed">
<ComboBox
x:Name="profileSelectionComboBox"
Width="175"
Height="24"
Margin="10,0,0,0"
HorizontalAlignment="Left"
ItemsSource="{Binding Path=ProfileList}"
SelectedIndex="0" />
<Button
Width="23"
Height="23"
Margin="3,0,0,0"
Click="button_addProfile_Click"
Content="@"
FontFamily="Webdings"
FontSize="14"
ToolTip="Profile bearbeiten" />
</StackPanel>
<Label x:Name="proxyLabel" Grid.Column="1" Grid.Row="6" Content="Proxy:" Foreground="#FF000000" FontSize="12" Visibility="Collapsed" VerticalAlignment="Center"/>
<Label
x:Name="proxyLabel"
Grid.Row="6"
Grid.Column="1"
VerticalAlignment="Center"
Content="Proxy:"
FontSize="12"
Foreground="#FF000000"
Visibility="Collapsed" />
<StackPanel x:Name="proxyStackPanel" Grid.Row="6" Grid.Column="2" Orientation="Horizontal" Margin="0,5,20,0" Visibility="Collapsed">
<TextBox HorizontalAlignment="Left" x:Name="proxyTextBox" Width="175" Height="24" Margin="10,0,0,0" IsReadOnly="True"/>
<Button Click="button_configureProxy_Click" Content="@" FontFamily="Webdings" FontSize="14" Height="23" Width="23" Margin="3,0,0,0" ToolTip="Proxy bearbeiten"/>
<StackPanel
x:Name="proxyStackPanel"
Grid.Row="6"
Grid.Column="2"
Margin="0,5,20,0"
Orientation="Horizontal"
Visibility="Collapsed">
<TextBox
x:Name="proxyTextBox"
Width="175"
Height="24"
Margin="10,0,0,0"
HorizontalAlignment="Left"
IsReadOnly="True" />
<Button
Width="23"
Height="23"
Margin="3,0,0,0"
Click="button_configureProxy_Click"
Content="@"
FontFamily="Webdings"
FontSize="14"
ToolTip="Proxy bearbeiten" />
</StackPanel>
<ToggleButton x:Name="showProfileSelectionBtn" Click="ShowProfileStackPanel" HorizontalAlignment="Right" Content="Erweitert" Grid.Row="4" Grid.Column="2" Margin="0,5,20,0" Foreground="#FF818181">
<ToggleButton.Template>
<ControlTemplate TargetType="{x:Type ToggleButton}">
<Grid >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="18"/>
</Grid.ColumnDefinitions>
<ContentPresenter x:Name="ButtonContent"/>
<Path Grid.Column="1"
x:Name="Down_Arrow"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Fill="{TemplateBinding Foreground}"
Data="M 0 0 L 4 4 L 8 0 L 4 2 Z" Margin="0,3,0,0"
/>
<Path Grid.Column="1"
x:Name="Down_Arrow2"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Fill="{TemplateBinding Foreground}"
Data="M 0 0 L 4 4 L 8 0 L 4 2 Z" Margin="0,-3,0,0"
/>
<Path Grid.Column="1"
x:Name="Up_Arrow"
Visibility="Collapsed"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Fill="{TemplateBinding Foreground}"
Data="M 0 4 L 4 0 L 8 4 L 4 2 Z" Margin="0,-3,0,0"
/>
<Path Grid.Column="1"
x:Name="Up_Arrow2"
Visibility="Collapsed"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Fill="{TemplateBinding Foreground}"
Data="M 0 4 L 4 0 L 8 4 L 4 2 Z" Margin="0,3,0,0"
/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Fill" Value="#FF333333" TargetName="Down_Arrow"/>
<Setter Property="Fill" Value="#FF333333" TargetName="Down_Arrow2"/>
<Setter Property="Fill" Value="#FF333333" TargetName="Up_Arrow"/>
<Setter Property="Fill" Value="#FF333333" TargetName="Up_Arrow2"/>
<Setter Property="TextBlock.Foreground" Value="#FF333333" TargetName="ButtonContent"/>
</Trigger>
<Trigger Property="IsChecked" Value="true">
<Setter Property="Visibility" Value="Collapsed" TargetName="Down_Arrow"/>
<Setter Property="Visibility" Value="Collapsed" TargetName="Down_Arrow2"/>
<Setter Property="Visibility" Value="Visible" TargetName="Up_Arrow"/>
<Setter Property="Visibility" Value="Visible" TargetName="Up_Arrow2"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</ToggleButton.Template>
<ToggleButton.Triggers>
<EventTrigger RoutedEvent="Button.Click">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetName="gridLogin"
Storyboard.TargetProperty="Height"
From="{Binding HeightFrom, UpdateSourceTrigger=PropertyChanged}" To="{Binding HeightTo, UpdateSourceTrigger=PropertyChanged}" Duration="0:0:0.1"
AutoReverse="False" Completed="AnimationComplete" />
<DoubleAnimation
Storyboard.TargetName="linkLine"
Storyboard.TargetProperty="Y1"
From="{Binding LineYCoordFrom, UpdateSourceTrigger=PropertyChanged}" To="{Binding LineYCoordTo, UpdateSourceTrigger=PropertyChanged}" Duration="0:0:0.1"
AutoReverse="False" Completed="Animation2Complete" />
<DoubleAnimation
Storyboard.TargetName="linkLine"
Storyboard.TargetProperty="Y2"
From="{Binding LineYCoordFrom, UpdateSourceTrigger=PropertyChanged}" To="{Binding LineYCoordTo, UpdateSourceTrigger=PropertyChanged}" Duration="0:0:0.1"
AutoReverse="False" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</ToggleButton.Triggers>
</ToggleButton>
<StackPanel Margin="10,30,20,50" Grid.Column="2" Grid.Row="7" Orientation="Vertical" HorizontalAlignment="Stretch">
<Button Height="30" x:Name="button_login" HorizontalAlignment="Stretch" Content="Anmelden" Click="button_login_Click" IsDefault="True" Foreground="White" Margin="3" />
<TextBlock VerticalAlignment="Center" Visibility="Collapsed" HorizontalAlignment="Center" Foreground="{DynamicResource MainGroupBoxForegroundBrush}" Margin="3">
<Hyperlink RequestNavigate="PasswortVergessenLinkOnRequestNavigate" NavigateUri="#" >
<TextBlock Text="Passwort vergessen" HorizontalAlignment="Center" FontSize="10" VerticalAlignment="Center" />
</Hyperlink>
</TextBlock>
</StackPanel>
<TextBlock x:Name="txtCopyright" Grid.Row="7" Grid.Column="0" Grid.ColumnSpan="3" HorizontalAlignment="Left" VerticalAlignment="Bottom" FontSize="10" Margin="10,5,0,5" Text="Copyright 2022 | ownSoft GmbH" Foreground="#FF818181"/>
<TextBlock Grid.Row="7" Grid.Column="3" HorizontalAlignment="Right" VerticalAlignment="Bottom" FontSize="10" Margin="0,5,12,5">
<Hyperlink x:Name="hyperlink" TargetName="newWindow" Foreground="#FF818181" NavigateUri="https://www.ownsoft.de" RequestNavigate="Hyperlink_OnRequestNavigate">www.ownsoft.de</Hyperlink>
<ToggleButton
x:Name="showProfileSelectionBtn"
Grid.Row="4"
Grid.Column="2"
Margin="0,5,20,0"
HorizontalAlignment="Right"
Click="ShowProfileStackPanel"
Content="Erweitert"
Foreground="#FF818181">
<ToggleButton.Template>
<ControlTemplate TargetType="{x:Type ToggleButton}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="18" />
</Grid.ColumnDefinitions>
<ContentPresenter x:Name="ButtonContent" />
<Path
x:Name="Down_Arrow"
Grid.Column="1"
Margin="0,3,0,0"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Data="M 0 0 L 4 4 L 8 0 L 4 2 Z"
Fill="{TemplateBinding Foreground}" />
<Path
x:Name="Down_Arrow2"
Grid.Column="1"
Margin="0,-3,0,0"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Data="M 0 0 L 4 4 L 8 0 L 4 2 Z"
Fill="{TemplateBinding Foreground}" />
<Path
x:Name="Up_Arrow"
Grid.Column="1"
Margin="0,-3,0,0"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Data="M 0 4 L 4 0 L 8 4 L 4 2 Z"
Fill="{TemplateBinding Foreground}"
Visibility="Collapsed" />
<Path
x:Name="Up_Arrow2"
Grid.Column="1"
Margin="0,3,0,0"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Data="M 0 4 L 4 0 L 8 4 L 4 2 Z"
Fill="{TemplateBinding Foreground}"
Visibility="Collapsed" />
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="true">
<Setter TargetName="Down_Arrow" Property="Fill" Value="#FF333333" />
<Setter TargetName="Down_Arrow2" Property="Fill" Value="#FF333333" />
<Setter TargetName="Up_Arrow" Property="Fill" Value="#FF333333" />
<Setter TargetName="Up_Arrow2" Property="Fill" Value="#FF333333" />
<Setter TargetName="ButtonContent" Property="TextBlock.Foreground" Value="#FF333333" />
</Trigger>
<Trigger Property="IsChecked" Value="true">
<Setter TargetName="Down_Arrow" Property="Visibility" Value="Collapsed" />
<Setter TargetName="Down_Arrow2" Property="Visibility" Value="Collapsed" />
<Setter TargetName="Up_Arrow" Property="Visibility" Value="Visible" />
<Setter TargetName="Up_Arrow2" Property="Visibility" Value="Visible" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</ToggleButton.Template>
<ToggleButton.Triggers>
<EventTrigger RoutedEvent="Button.Click">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
AutoReverse="False"
Completed="AnimationComplete"
Storyboard.TargetName="gridLogin"
Storyboard.TargetProperty="Height"
From="{Binding HeightFrom, UpdateSourceTrigger=PropertyChanged}"
To="{Binding HeightTo, UpdateSourceTrigger=PropertyChanged}"
Duration="0:0:0.1" />
<DoubleAnimation
AutoReverse="False"
Completed="Animation2Complete"
Storyboard.TargetName="linkLine"
Storyboard.TargetProperty="Y1"
From="{Binding LineYCoordFrom, UpdateSourceTrigger=PropertyChanged}"
To="{Binding LineYCoordTo, UpdateSourceTrigger=PropertyChanged}"
Duration="0:0:0.1" />
<DoubleAnimation
AutoReverse="False"
Storyboard.TargetName="linkLine"
Storyboard.TargetProperty="Y2"
From="{Binding LineYCoordFrom, UpdateSourceTrigger=PropertyChanged}"
To="{Binding LineYCoordTo, UpdateSourceTrigger=PropertyChanged}"
Duration="0:0:0.1" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</ToggleButton.Triggers>
</ToggleButton>
<StackPanel
Grid.Row="7"
Grid.Column="2"
Margin="10,30,20,50"
HorizontalAlignment="Stretch"
Orientation="Vertical">
<Button
x:Name="button_login"
Height="30"
Margin="3"
HorizontalAlignment="Stretch"
Click="button_login_Click"
Content="Anmelden"
Foreground="White"
IsDefault="True" />
<TextBlock
Margin="3"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Foreground="{DynamicResource MainGroupBoxForegroundBrush}"
Visibility="Collapsed">
<Hyperlink NavigateUri="#" RequestNavigate="PasswortVergessenLinkOnRequestNavigate">
<TextBlock
HorizontalAlignment="Center"
VerticalAlignment="Center"
FontSize="10"
Text="Passwort vergessen" />
</Hyperlink>
</TextBlock>
</StackPanel>
<TextBlock
x:Name="txtCopyright"
Grid.Row="7"
Grid.Column="0"
Grid.ColumnSpan="3"
Margin="10,5,0,5"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
FontSize="10"
Foreground="#FF818181"
Text="Copyright 2022 | ownSoft GmbH" />
<TextBlock
Grid.Row="7"
Grid.Column="3"
Margin="0,5,12,5"
HorizontalAlignment="Right"
VerticalAlignment="Bottom"
FontSize="10">
<Hyperlink
x:Name="hyperlink"
Foreground="#FF818181"
NavigateUri="https://www.ownsoft.de"
RequestNavigate="Hyperlink_OnRequestNavigate"
TargetName="newWindow">
www.ownsoft.de
</Hyperlink>
</TextBlock>
</Grid>
</Border>
<Line Grid.ColumnSpan="4" Stroke="#FFADADAD" X1="14" Y1="70" X2="585" Y2="70" StrokeThickness="1"></Line>
<Line x:Name="linkLine" Stroke="#FFADADAD" X1="14" Y1="340" X2="585" Y2="340" StrokeThickness="1" Margin="0,30,0,-30"></Line>
<Line
Grid.ColumnSpan="4"
Stroke="#FFADADAD"
StrokeThickness="1"
X1="14"
X2="585"
Y1="70"
Y2="70" />
<Line
x:Name="linkLine"
Margin="0,30,0,-30"
Stroke="#FFADADAD"
StrokeThickness="1"
X1="14"
X2="585"
Y1="340"
Y2="340" />
</Grid>
<Rectangle Width="600" Height="400" RenderTransformOrigin="0.5,0.5">
<Rectangle
Width="600"
Height="400"
RenderTransformOrigin="0.5,0.5">
<Rectangle.OpacityMask>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0.418">
<GradientStop Color="#00000000" Offset="0" />
<GradientStop Color="#4CFFFFFF" Offset="1" />
<LinearGradientBrush StartPoint="0.5,0.418" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#00000000" />
<GradientStop Offset="1" Color="#4CFFFFFF" />
</LinearGradientBrush>
</Rectangle.OpacityMask>
<Rectangle.RenderTransform>
@@ -195,6 +428,6 @@
</Rectangle.Fill>
</Rectangle>
</StackPanel>
<Border x:Name="profileEditPopUp" />
<Border x:Name="profileEditPopUp" />
</Grid>
</UserControl>

View File

@@ -835,34 +835,13 @@
x:Name="button_ai_chat"
Width="90"
HorizontalAlignment="Stretch"
r:DemandUserRight.VisibleDemands="AiModuleView2"
Background="{StaticResource ModuleAiChatTabItem}"
Click="button_ai_chat_Click"
Content="{t:Translate AiModuleMenuItem}"
ImageSource="Ressources\Icons\chatbot2.png"
RenderTransformOrigin="0.5,0.5"
Style="{StaticResource NavBarButton}">
<Button.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
<SkewTransform AngleX="0" AngleY="0" />
<RotateTransform Angle="0" />
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Button.RenderTransform>
</localView:ImageButton>
<localView:ImageButton
x:Name="button_ai_chat_popup"
Width="90"
HorizontalAlignment="Stretch"
r:DemandUserRight.VisibleDemands="AiModuleView"
Background="{StaticResource ModuleAiChatTabItem}"
Click="button_ai_chat_popup_Click"
Content="{t:Translate AiModulePopupMenuItem}"
ImageSource="Ressources\Icons\chatbot2.png"
RenderTransformOrigin="0.5,0.5"
Style="{StaticResource NavBarButton}">
Style="{StaticResource NavBarButton}"
Visibility="Collapsed">
<Button.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />

View File

@@ -1,9 +1,16 @@
<Window x:Class="BeWo.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="BeWoPlaner" Height="768" Width="1024" WindowStartupLocation="CenterScreen" WindowState="Maximized"
BorderThickness="1" Closing="MainWindow_OnClosing" SizeChanged="Window_SizeChanged">
<Window
x:Class="BeWo.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="BeWoPlaner"
Width="1024"
Height="768"
BorderThickness="1"
Closing="MainWindow_OnClosing"
SizeChanged="Window_SizeChanged"
WindowStartupLocation="CenterScreen"
WindowState="Maximized">
<Grid x:Name="rootGrid">
<ComboBox Width="100"></ComboBox>
<ComboBox Width="100" />
</Grid>
</Window>

View File

@@ -94,7 +94,14 @@
<GradientStop Offset="0.546" Color="#FFFBC15C" />
</LinearGradientBrush>
<SolidColorBrush x:Key="NavigationHeaderBrushTest" Color="#FF474747" />
<LinearGradientBrush x:Key="NavigationContentBrushTest" StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#FFBEAF00" />
<GradientStop Offset="1" Color="#FF8C7D00" />
</LinearGradientBrush>
<!-- Endregion -->
<!-- Module AI Farben -->
<SolidColorBrush x:Key="ModuleAiChatTabItem" Color="#FFFFFFBF" />
<SolidColorBrush x:Key="ModuleAiChatPrimaryColor" Color="#FFCECF7F" />
<!-- Endregion -->
</ResourceDictionary>

View File

@@ -1,4 +1,7 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="..\DataTemplates\ControlTemplates.xaml" />
</ResourceDictionary.MergedDictionaries>
<Style x:Key="BaseGroupBox" TargetType="{x:Type GroupBox}">
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Padding" Value="3" />
@@ -50,15 +53,28 @@
</Setter>
</Style>
<Style x:Key="ModuleAiZeiterfassungStyle" TargetType="{x:Type GroupBox}">
<Style.Resources>
<SolidColorBrush x:Key="NavigationHeaderBrush" Color="#FF5C0000" />
<LinearGradientBrush x:Key="NavigationContentBrush" StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#FF993B3B" />
<GradientStop Offset="3" Color="#FF5C1919" />
</LinearGradientBrush>
</Style.Resources>
<Setter Property="Template" Value="{StaticResource NavigationGroupTemplate2}" />
</Style>
<!-- OLD -->
<Style x:Key="ModuleAiNavigationStyle" TargetType="{x:Type GroupBox}">
<Style.Resources>
<SolidColorBrush x:Key="NavigationHeaderBrush" Color="#FFC64605" />
<LinearGradientBrush x:Key="NavigationContentBrush" StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#FF45993B" />
<GradientStop Offset="1" Color="#FFFFFFFF" />
<GradientStop Offset="0" Color="#FFFFC48A" />
<GradientStop Offset="1" Color="#FFFF7830" />
</LinearGradientBrush>
</Style.Resources>
<Setter Property="Template" Value="{StaticResource NavigationGroupTemplate}" />
<Setter Property="Template" Value="{StaticResource NavigationGroupTemplate2}" />
</Style>
</ResourceDictionary>

View File

@@ -2,6 +2,11 @@
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:Microsoft_Windows_Themes="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Aero">
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="..\Colors\Colors.xaml" />
</ResourceDictionary.MergedDictionaries>
<Style x:Key="ComboBoxFocusVisual">
<Setter Property="Control.Template">
<Setter.Value>
@@ -89,4 +94,55 @@
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
<ControlTemplate x:Key="NavigationGroupTemplate2" TargetType="{x:Type GroupBox}">
<Grid SnapsToDevicePixels="True">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Border
Grid.Row="0"
Grid.Column="0"
Background="{DynamicResource NavigationHeaderBrush}"
CornerRadius="1,1,1,1">
<Border
x:Name="Header"
Grid.Row="0"
Grid.Column="0"
Margin="8"
Padding="0"
Background="{x:Null}">
<ContentPresenter
Margin="0,0,0,0"
Content="{TemplateBinding Header}"
ContentSource="Header"
ContentStringFormat="{TemplateBinding HeaderStringFormat}"
ContentTemplate="{TemplateBinding HeaderTemplate}"
RecognizesAccessKey="True"
RenderTransformOrigin="0,0.5"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
</Border>
</Border>
<Border
Grid.Row="1"
Grid.Column="0"
Margin="0,2,0,0"
Padding="0,0,0,0"
Background="{DynamicResource NavigationContentBrush}"
CornerRadius="1,1,1,1">
<ContentPresenter
Content="{TemplateBinding Content}"
ContentStringFormat="{TemplateBinding ContentStringFormat}"
ContentTemplate="{TemplateBinding ContentTemplate}"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
</Border>
</Grid>
</ControlTemplate>
</ResourceDictionary>

View File

@@ -17,7 +17,6 @@
Height="Auto"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
d:DataContext="{d:DesignInstance Type=listviewmodel:AiConversationListVM}"
d:DesignHeight="600"
d:DesignWidth="600"
Focusable="True"
@@ -34,14 +33,15 @@
<listviewmodel:AiConversationListVM />
</localView:BeWoView.DataContext>
<Grid>
<GroupBox Style="{StaticResource ModuleAiNavigationStyle}">
<GroupBox Style="{StaticResource ModuleAiZeiterfassungStyle}">
<GroupBox.Header>
<StackPanel
Grid.Row="0"
Margin="3"
Margin="0"
Orientation="Horizontal">
<Label
Margin="0,-4,0,0"
Margin="0,0,0,0"
Padding="2"
Content="Suche"
FontSize="14"
Foreground="#FFFFFFFF" />
@@ -50,15 +50,16 @@
Width="300"
Height="20"
MinWidth="90"
Margin="3,-5,0,0"
Margin="4,0,0,0"
BorderThickness="0,0,0,0"
IsEnabled="False"
TabIndex="0"
Template="{DynamicResource SearchTextBoxTemplate}" />
<Button
x:Name="ReloadButton"
Width="36"
Height="24"
Margin="5,-5,0,0"
Margin="8,0,0,0"
Command="{Binding ReloadConversationsCommand, RelativeSource={RelativeSource AncestorType={x:Type localView:BeWoView}, Mode=FindAncestor}}"
ToolTip="Liste aktualisieren">
<Button.Template>
@@ -81,14 +82,7 @@
</StackPanel>
</GroupBox.Header>
<Grid Margin="0,0,0,0">
<Grid.Background>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Offset="0" Color="#FFFFC48A" />
<GradientStop Offset="1" Color="#FFFF7830" />
</LinearGradientBrush>
</Grid.Background>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
@@ -96,7 +90,7 @@
</Grid.RowDefinitions>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" MinWidth="50" />
<ColumnDefinition Width="*" MinWidth="200" />
<ColumnDefinition Width="3*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
@@ -141,7 +135,7 @@
<TextBox
x:Name="txt_input_message"
Grid.Column="1"
Height="100"
Height="28"
MaxHeight="200"
Margin="5"
HorizontalAlignment="Stretch"
@@ -150,7 +144,7 @@
Text="{Binding MessageInput}" />
<Button
Grid.Column="2"
Margin="5"
Margin="4"
VerticalAlignment="Stretch"
Command="{Binding SendNewMessageCommand}"
Content="Senden" />

View File

@@ -4,6 +4,7 @@ using BS.Shared.Extensions;
using DevExpress.Mvvm;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
@@ -52,20 +53,6 @@ namespace BeWo.View.Detail
{
ReloadModels();
ReloadConversations();
//if (Dispatcher.CheckAccess())
//{
// ReloadModels();
// ReloadConversations();
//}
//else
//{
// Dispatcher.BeginInvoke(new Action(() =>
// {
// ReloadModels();
// ReloadConversations();
// }));
//}
}
private void ReloadButton_OnClick(object sender, RoutedEventArgs e)
@@ -100,6 +87,7 @@ namespace BeWo.View.Detail
ServiceFacade.DoOperationsEnhancedServiceAsnyc(x => x.GetAiConversations(ui_context), (x) =>
{
x.Reverse();
var vms = new AiConversationListVM(x);
ViewModel.VMList.MakeEqualTo(vms.VMList);
}, true);

View File

@@ -1,10 +1,11 @@
<UserControl x:Class="BeWo.View.WaitLayer2"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
Foreground="{DynamicResource BSOrangeBrush}">
<UserControl
x:Class="BeWo.View.WaitLayer2"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
Foreground="{DynamicResource BSOrangeBrush}"
mc:Ignorable="d">
<UserControl.Resources>
<Style TargetType="{x:Type Rectangle}">
<Setter Property="Fill" Value="{Binding Path=Foreground, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}" />
@@ -12,28 +13,52 @@
<Setter Property="Height" Value="40" />
</Style>
<Storyboard x:Key="OnLoaded1" RepeatBehavior="Forever">
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.1" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<DoubleAnimationUsingKeyFrames
BeginTime="00:00:00.1"
Storyboard.TargetName="bSLogoControl"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)">
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="45" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.2" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<DoubleAnimationUsingKeyFrames
BeginTime="00:00:00.2"
Storyboard.TargetName="bSLogoControl"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)">
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="90" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.3" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<DoubleAnimationUsingKeyFrames
BeginTime="00:00:00.3"
Storyboard.TargetName="bSLogoControl"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)">
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="135" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.4" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<DoubleAnimationUsingKeyFrames
BeginTime="00:00:00.4"
Storyboard.TargetName="bSLogoControl"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)">
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="180" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.5" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<DoubleAnimationUsingKeyFrames
BeginTime="00:00:00.5"
Storyboard.TargetName="bSLogoControl"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)">
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="225" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.6" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<DoubleAnimationUsingKeyFrames
BeginTime="00:00:00.6"
Storyboard.TargetName="bSLogoControl"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)">
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="270" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.7" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<DoubleAnimationUsingKeyFrames
BeginTime="00:00:00.7"
Storyboard.TargetName="bSLogoControl"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)">
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="315" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.8" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<DoubleAnimationUsingKeyFrames
BeginTime="00:00:00.8"
Storyboard.TargetName="bSLogoControl"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)">
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="360" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
@@ -45,11 +70,20 @@
</UserControl.Triggers>
<Grid>
<Grid Background="White" Opacity="0.01" />
<Border CornerRadius="5,5,5,5" Opacity="0.92" BorderThickness="1,1,1,1" Padding="5,5,5,5" BorderBrush="#FF606060" VerticalAlignment="Center" Width="250" Height="100" Background="#FFFFFFFF">
<Border
Width="250"
Height="100"
Padding="5,5,5,5"
VerticalAlignment="Center"
Background="#FFFFFFFF"
BorderBrush="#FF606060"
BorderThickness="1,1,1,1"
CornerRadius="5,5,5,5"
Opacity="0.92">
<Border.OpacityMask>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#F3FFFFFF" Offset="0.027" />
<GradientStop Color="#D7FFFFFF" Offset="1" />
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0.027" Color="#F3FFFFFF" />
<GradientStop Offset="1" Color="#D7FFFFFF" />
</LinearGradientBrush>
</Border.OpacityMask>
<Grid>
@@ -57,8 +91,23 @@
<RowDefinition Height="*" />
<RowDefinition Height="2*" />
</Grid.RowDefinitions>
<Label Content="Daten werden übertragen. Bitte warten..." Foreground="#FF000000" FontSize="12" FontFamily="Microsoft Sans Serif" FontWeight="Normal" HorizontalAlignment="Center" VerticalAlignment="Center" />
<Grid Grid.Row="1" HorizontalAlignment="Center" VerticalAlignment="Center" Width="40" Height="40" x:Name="bSLogoControl" RenderTransformOrigin="0.5,0.5" Background="#00000000" >
<Label
HorizontalAlignment="Center"
VerticalAlignment="Center"
Content="Daten werden übertragen. Bitte warten..."
FontFamily="Microsoft Sans Serif"
FontSize="12"
FontWeight="Normal"
Foreground="#FF000000" />
<Grid
x:Name="bSLogoControl"
Grid.Row="1"
Width="40"
Height="40"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Background="#00000000"
RenderTransformOrigin="0.5,0.5">
<Grid.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
@@ -67,14 +116,29 @@
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Grid.RenderTransform>
<Viewbox StretchDirection="Both" Stretch="Fill"
MaxWidth="{Binding Path=ActualWidth, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
MaxHeight="{Binding Path=ActualHeight, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}">
<Viewbox
MaxWidth="{Binding Path=ActualWidth, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
MaxHeight="{Binding Path=ActualHeight, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
Stretch="Fill"
StretchDirection="Both">
<Canvas Width="100" Height="100">
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0">
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6"/>
<Canvas
Canvas.Left="0"
Canvas.Top="0"
Width="100"
Height="100">
<Rectangle
Canvas.Left="44"
Canvas.Top="0"
RadiusX="6"
RadiusY="6" />
</Canvas>
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0" RenderTransformOrigin="0.5,0.5">
<Canvas
Canvas.Left="0"
Canvas.Top="0"
Width="100"
Height="100"
RenderTransformOrigin="0.5,0.5">
<Canvas.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
@@ -83,9 +147,19 @@
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Canvas.RenderTransform>
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6" Opacity="0.875"/>
<Rectangle
Canvas.Left="44"
Canvas.Top="0"
Opacity="0.875"
RadiusX="6"
RadiusY="6" />
</Canvas>
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0" RenderTransformOrigin="0.5,0.5">
<Canvas
Canvas.Left="0"
Canvas.Top="0"
Width="100"
Height="100"
RenderTransformOrigin="0.5,0.5">
<Canvas.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
@@ -94,9 +168,19 @@
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Canvas.RenderTransform>
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6" Opacity="0.75"/>
<Rectangle
Canvas.Left="44"
Canvas.Top="0"
Opacity="0.75"
RadiusX="6"
RadiusY="6" />
</Canvas>
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0" RenderTransformOrigin="0.5,0.5">
<Canvas
Canvas.Left="0"
Canvas.Top="0"
Width="100"
Height="100"
RenderTransformOrigin="0.5,0.5">
<Canvas.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
@@ -105,10 +189,20 @@
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Canvas.RenderTransform>
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6" Opacity="0.625"/>
<Rectangle
Canvas.Left="44"
Canvas.Top="0"
Opacity="0.625"
RadiusX="6"
RadiusY="6" />
</Canvas>
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0" RenderTransformOrigin="0.5,0.5">
<Canvas
Canvas.Left="0"
Canvas.Top="0"
Width="100"
Height="100"
RenderTransformOrigin="0.5,0.5">
<Canvas.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
@@ -117,9 +211,19 @@
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Canvas.RenderTransform>
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6" Opacity="0.5"/>
<Rectangle
Canvas.Left="44"
Canvas.Top="0"
Opacity="0.5"
RadiusX="6"
RadiusY="6" />
</Canvas>
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0" RenderTransformOrigin="0.5,0.5">
<Canvas
Canvas.Left="0"
Canvas.Top="0"
Width="100"
Height="100"
RenderTransformOrigin="0.5,0.5">
<Canvas.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
@@ -128,9 +232,19 @@
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Canvas.RenderTransform>
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6" Opacity="0.375"/>
<Rectangle
Canvas.Left="44"
Canvas.Top="0"
Opacity="0.375"
RadiusX="6"
RadiusY="6" />
</Canvas>
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0" RenderTransformOrigin="0.5,0.5">
<Canvas
Canvas.Left="0"
Canvas.Top="0"
Width="100"
Height="100"
RenderTransformOrigin="0.5,0.5">
<Canvas.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
@@ -139,9 +253,19 @@
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Canvas.RenderTransform>
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6" Opacity="0.25"/>
<Rectangle
Canvas.Left="44"
Canvas.Top="0"
Opacity="0.25"
RadiusX="6"
RadiusY="6" />
</Canvas>
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0" RenderTransformOrigin="0.5,0.5">
<Canvas
Canvas.Left="0"
Canvas.Top="0"
Width="100"
Height="100"
RenderTransformOrigin="0.5,0.5">
<Canvas.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
@@ -150,7 +274,12 @@
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Canvas.RenderTransform>
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6" Opacity="0.125"/>
<Rectangle
Canvas.Left="44"
Canvas.Top="0"
Opacity="0.125"
RadiusX="6"
RadiusY="6" />
</Canvas>
</Canvas>
</Viewbox>

View File

@@ -8,6 +8,7 @@ using DevExpress.XtraPrinting.Native;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.Linq;
using System.Runtime.Remoting.Contexts;
using System.Text;
@@ -26,8 +27,12 @@ namespace BeWo.ViewModel.ListViewModel
public AiConversationListVM() : this(null)
{
if (BeWoApp.IsInDesignMode)
{
InitDesigner();
}
}
public AiConversationListVM(List<AiConversationDC> pDCs) : base(pDCs)
{
Models = new ObservableSortCollection<AiModelDC>();
@@ -88,6 +93,7 @@ namespace BeWo.ViewModel.ListViewModel
ServiceFacade.DoOperationsEnhancedServiceAsnyc(x => x.CreateAiConversation(UIContext, SelectedModel.Oid.Value, ContextBeWoObjects), dc => {
var vm = new AiConversationVM(dc);
VMList.Insert(0, vm);
SelectedVM = vm;
}, true, null);
}
@@ -159,5 +165,57 @@ namespace BeWo.ViewModel.ListViewModel
{
return SelectedVM is object;
}
private void InitDesigner()
{
var message_dc = new AiConversationMessageDC()
{
Created = DateTime.Now,
Message = "Anweisungen \n\nTest",
Role = BS.Shared.AiConversationMessageRole.System
};
var message_dc2 = new AiConversationMessageDC()
{
Created = DateTime.Now,
Message = "Userprompt \n\nTest",
Role = BS.Shared.AiConversationMessageRole.User
};
var message_dc3 = new AiConversationMessageDC()
{
Created = DateTime.Now,
Message = "Antwort\n\nTest",
Role = BS.Shared.AiConversationMessageRole.Assistent
};
var messages_dc = new List<AiConversationMessageDC>()
{
message_dc,
message_dc2,
message_dc3
};
var model = new AiModelDC()
{
ModelName = "llama3.2"
};
var conversation_dc = new AiConversationDC()
{
Created = DateTime.Now,
Displayname = "Displayname",
Messages = messages_dc,
Modell = model,
UIContext = 19,
Updated = DateTime.Now,
};
var conversation_vm = new AiConversationVM(conversation_dc);
VMList.Add(conversation_vm);
SelectedVM = conversation_vm;
}
}
}

View File

@@ -124,10 +124,10 @@ namespace BeWo.Service.ServiceUtils
{ "ServiceCategory", service_record.ServiceDescription.Category.Name },
{ "ServiceDescription", service_record.ServiceDescription.Name },
{ "Documentation", service_record.Notice
+ "\n\n" + service_record.Notice2
+ "\n\n" + service_record.Notice3
+ "\n\n" + service_record.Notice4
+ "\n\n" + service_record.Notice5},
+ "\n" + service_record.Notice2
+ "\n" + service_record.Notice3
+ "\n" + service_record.Notice4
+ "\n" + service_record.Notice5},
{ "Distance (Meter)", service_record.DistanceInMeter ?? 0 },
{ "InsertedOn", service_record.InsertedOn },
{ "Betrag", service_record.Betrag },
@@ -161,8 +161,6 @@ namespace BeWo.Service.ServiceUtils
string result = reader.ReadToEnd();
return result;
}
return null;
}
private static Dictionary<long, List<long>> getDictionary(List<Tuple<long, long>> tuples)

View File

@@ -1,4 +1,5 @@
Du bist ein intelligenter Assistent. Deine Aufgabe ist es, basierend auf einer Nutzeranfrage, den bereitgestellten Daten und dem bisherigen Chatverlauf eine klare und präzise Antwort zu generieren.
Du bist ein intelligenter Assistent.
Deine Aufgabe ist es, basierend auf einer Nutzeranfrage, den bereitgestellten Daten und dem bisherigen Chatverlauf eine klare und präzise Antwort zu generieren.
WICHTIG:
- Verwende ausschließlich die bereitgestellten Daten für deine Antwort.