123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329 |
- <UserControl x:Class="PRSDesktop.DailyReport"
- 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:local="clr-namespace:PRSDesktop"
- xmlns:dynamicgrid="clr-namespace:InABox.DynamicGrid;assembly=InABox.Wpf"
- mc:Ignorable="d"
- d:DesignHeight="450" d:DesignWidth="1200">
-
- <UserControl.Resources>
- <local:DueDateToColorConverter x:Key="DueDateToColorConverter" />
- <local:DateIsInListConverter x:Key="DateIsInListConverter" />
- <local:HighlightedDateDescriptionConverter x:Key="HighlightedDateDescriptionConverter" />
- <Style x:Key="CustomCalendarDayButtonStyle" TargetType="{x:Type CalendarDayButton}"
- BasedOn="{StaticResource {x:Type CalendarDayButton}}">
- <Style.Triggers>
- <DataTrigger Value="True">
- <DataTrigger.Binding>
- <MultiBinding Converter="{StaticResource DateIsInListConverter}">
- <Binding />
- <Binding
- RelativeSource="{RelativeSource FindAncestor, AncestorType=local:HighlightDatePicker}"
- Path="HighlightedDates" />
- </MultiBinding>
- </DataTrigger.Binding>
- <Setter Property="FontWeight" Value="Bold" />
- <Setter Property="Background"
- Value="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType=local:HighlightDatePicker}, Path=HighlightBrush}" />
- <Setter Property="ToolTip">
- <Setter.Value>
- <MultiBinding Converter="{StaticResource HighlightedDateDescriptionConverter}">
- <Binding />
- <Binding
- RelativeSource="{RelativeSource FindAncestor, AncestorType=local:HighlightDatePicker}"
- Path="HighlightedDates" />
- </MultiBinding>
- </Setter.Value>
- </Setter>
- </DataTrigger>
- </Style.Triggers>
- </Style>
- <Style x:Key="CustomCalendarStyle" TargetType="{x:Type Calendar}" BasedOn="{StaticResource {x:Type Calendar}}">
- <Setter Property="CalendarDayButtonStyle" Value="{StaticResource CustomCalendarDayButtonStyle}" />
- </Style>
- <Style TargetType="local:HighlightDatePicker" BasedOn="{StaticResource {x:Type DatePicker}}">
- <Setter Property="CalendarStyle" Value="{StaticResource CustomCalendarStyle}" />
- </Style>
-
- </UserControl.Resources>
- <Grid>
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="*"/>
- <ColumnDefinition Width="2"/>
- <ColumnDefinition Width="2*"/>
- <ColumnDefinition Width="2"/>
- <ColumnDefinition Width="*"/>
- </Grid.ColumnDefinitions>
- <Grid Grid.Column="0">
-
- <Grid.RowDefinitions>
- <RowDefinition Height="Auto"/>
- <RowDefinition Height="*"/>
- </Grid.RowDefinitions>
- <Border Grid.Row="0" BorderBrush="Gray" BorderThickness="0.75"
- Background="WhiteSmoke" MinHeight="35">
- <Grid>
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="Auto" />
- <ColumnDefinition Width="Auto" />
- <ColumnDefinition Width="Auto" />
- <ColumnDefinition Width="*" />
- <ColumnDefinition Width="Auto" />
- <ColumnDefinition Width="Auto" />
- </Grid.ColumnDefinitions>
- <Button x:Name="FirstDay" BorderThickness="0" Background="Transparent"
- Click="FirstDay_Click" Grid.Column="0" Padding="5" Width="32" />
- <Button x:Name="PrevDay" BorderThickness="0" Background="Transparent" Click="PrevDay_Click"
- Grid.Column="1" Padding="5" Width="32" />
- <Label x:Name="ActivityHeader" Grid.Column="2" Content="Activities for" Margin="0,0,5,0"
- VerticalContentAlignment="Center" />
- <local:HighlightDatePicker x:Name="DatePicker" Grid.Column="3" VerticalAlignment="Stretch"
- SelectedDateChanged="DatePicker_SelectedDateChanged" Margin="0,4,0,4"
- HighlightBrush="LightSalmon" HorizontalAlignment="Stretch" VerticalContentAlignment="Center"
- SelectedDateFormat="Long" Background="LightYellow"/>
- <Button x:Name="NextDay" BorderThickness="0" Background="Transparent" Click="NextDay_Click"
- Grid.Column="4" Padding="5" Width="32" />
- <Button x:Name="LastDay" BorderThickness="0" Background="Transparent" Click="LastDay_Click"
- Grid.Column="5" Padding="5" Width="32" />
- </Grid>
- </Border>
- <local:Calendar
- Grid.Row="1"
- x:Name="Calendar"
- Margin="0,2,0,0"
- SettingsVisible="Disabled"
- SelectionChanged = "Assignments_OnSelectionChanged"
- ItemChanged = "Assignments_OnItemChanged"
- CustomiseContextMenu = "Assignments_OnCustomiseContextMenu"
- LoadSettings="Calendar_OnLoadSettings"
- SaveSettings="Calendar_OnSaveSettings"
- ItemEditing="Assignments_OnItemEditing"
- HeaderVisibility="Collapsed"
- />
- </Grid>
- <Grid Grid.Column="2">
- <Grid.RowDefinitions>
- <RowDefinition Height="Auto" />
- <RowDefinition Height="*" />
- <RowDefinition Height="*" />
- </Grid.RowDefinitions>
- <Border Grid.Row="0" CornerRadius="0,0,0,0" BorderBrush="Gray" BorderThickness="0.75"
- Background="WhiteSmoke" MinHeight="35">
- <Label Content="Activity Details" HorizontalContentAlignment="Center"
- VerticalContentAlignment="Center" />
- </Border>
- <Border Grid.Row="1" Padding="5" Margin="0,2,0,1" BorderBrush="Gray" BorderThickness="0.75"
- Background="WhiteSmoke" KeyboardNavigation.TabNavigation="Local">
- <Grid x:Name="Editors">
- <Grid.RowDefinitions>
- <RowDefinition Height="40" />
- <RowDefinition Height="*" />
- <RowDefinition Height="40" />
- <RowDefinition Height="40" />
- <RowDefinition Height="40" />
- <RowDefinition Height="40" />
- <RowDefinition Height="40" />
- </Grid.RowDefinitions>
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="Auto" />
- <ColumnDefinition Width="*" />
- <ColumnDefinition Width="Auto" />
- <ColumnDefinition Width="*" />
- <ColumnDefinition Width="Auto" />
- <ColumnDefinition Width="*" />
- </Grid.ColumnDefinitions>
- <Label Content="Title" Grid.Row="0" Grid.Column="0" VerticalAlignment="Center" />
- <dynamicgrid:TextBoxEditorControl x:Name="Title" Grid.Row="0" Grid.Column="1"
- Grid.ColumnSpan="5" Margin="5"
- OnEditorValueChanged="EditorValueChanged"
- ColumnName="Title" Color="LightYellow"
- KeyboardNavigation.TabIndex="1" />
- <Label Content="Notes" Grid.Row="1" Grid.Column="0" VerticalAlignment="Center" />
- <dynamicgrid:MemoEditorControl Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="5"
- x:Name="ActivityNotes" Margin="5" Color="LightYellow"
- ColumnName="Description"
- OnEditorValueChanged="EditorValueChanged"
- KeyboardNavigation.TabIndex="2" />
- <Label Content="Start Time" Grid.Row="2" Grid.Column="0" VerticalAlignment="Center" />
- <dynamicgrid:TimeOfDayEditorControl x:Name="Start" Grid.Row="2" Grid.Column="1" Margin="5"
- Color="LightYellow" ColumnName="Actual.Start"
- OnEditorValueChanged="EditorValueChanged"
- NowButtonVisible="False" HorizontalAlignment="Stretch"
- MaxWidth="Infinity" KeyboardNavigation.TabIndex="3" />
- <Label Content="Duration" Grid.Row="2" Grid.Column="2" VerticalAlignment="Center" />
- <dynamicgrid:TimeOfDayEditorControl x:Name="Duration" Grid.Row="2" Grid.Column="3"
- Margin="5" Color="LightYellow" ColumnName="Actual.Duration"
- OnEditorValueChanged="EditorValueChanged"
- NowButtonVisible="False" HorizontalAlignment="Stretch"
- MaxWidth="Infinity" KeyboardNavigation.TabIndex="4" />
- <Label Content="Finish Time" Grid.Row="2" Grid.Column="4" VerticalAlignment="Center" />
- <dynamicgrid:TimeOfDayEditorControl x:Name="Finish" Grid.Row="2" Grid.Column="5" Margin="5"
- Color="LightYellow" ColumnName="Actual.Finish"
- OnEditorValueChanged="EditorValueChanged"
- NowButtonVisible="False" HorizontalAlignment="Stretch"
- MaxWidth="Infinity" KeyboardNavigation.TabIndex="5" />
- <Label Content="Task" Grid.Row="3" Grid.Column="0" VerticalAlignment="Center" />
- <dynamicgrid:LookupEditorControl x:Name="Kanban" Grid.Row="3" Grid.Column="1"
- Grid.ColumnSpan="5" Margin="5" Color="LightYellow"
- ColumnName="Task.ID"
- OnEditorValueChanged="EditorValueChanged"
- KeyboardNavigation.TabIndex="8" />
- <Label Content="Job" Grid.Row="4" Grid.Column="0" VerticalAlignment="Center" />
- <dynamicgrid:CodePopupEditorControl x:Name="Job" Grid.Row="4" Grid.Column="1"
- Grid.ColumnSpan="5" Margin="5" Color="LightYellow"
- ColumnName="JobLink.ID"
- OnEditorValueChanged="EditorValueChanged"
- CodeColumn="JobNumber" KeyboardNavigation.TabIndex="6" />
- <Label Content="ITP" Grid.Row="5" Grid.Column="0" VerticalAlignment="Center" />
- <dynamicgrid:LookupEditorControl x:Name="ITP" Grid.Row="5" Grid.Column="1"
- Grid.ColumnSpan="5" Margin="5" Color="LightYellow"
- ColumnName="ITP.ID"
- OnEditorValueChanged="EditorValueChanged"
- KeyboardNavigation.TabIndex="7" />
- <Label Content="Activity" Grid.Row="6" Grid.Column="0" VerticalAlignment="Center" />
- <dynamicgrid:LookupEditorControl x:Name="Activity" Grid.Row="6" Grid.Column="1"
- Grid.ColumnSpan="5" Margin="5" Color="LightYellow"
- ColumnName="ActivityLink.ID"
- OnEditorValueChanged="EditorValueChanged"
- KeyboardNavigation.TabIndex="8" />
- </Grid>
- </Border>
- <DockPanel Grid.Row="3">
- <Border DockPanel.Dock="Top" BorderBrush="Gray" BorderThickness="0.75" Background="WhiteSmoke"
- MinHeight="35" Margin="0,1,0,0">
- <Label Content="Overall Notes for Today" HorizontalContentAlignment="Center"
- VerticalContentAlignment="Center" />
- </Border>
- <DockPanel DockPanel.Dock="Bottom" x:Name="ConfirmDock">
- <Button x:Name="ProcessWindowTrackers" DockPanel.Dock="Left" Width="150" Height="35"
- Margin="0,2,0,0" Click="ProcessWindowTrackerMenu_Click" BorderBrush="Gray" Padding="4">
- <StackPanel Orientation="Horizontal">
- <Image x:Name="ImportHistoryImage" Source="pack://application:,,,/Resources/target.png" />
- <Label Content="Import History" VerticalContentAlignment="Center" />
- </StackPanel>
- </Button>
- <Button x:Name="ImportEmails" DockPanel.Dock="Left" Width="150" Height="35" Margin="5,2,0,0"
- Click="ViewEmailInterfaceForm_Click" BorderBrush="Gray" Padding="4">
- <StackPanel Orientation="Horizontal">
- <Image x:Name="ImportEmailsImage" Source="pack://application:,,,/Resources/email.png" />
- <Label Content="Import Emails" VerticalContentAlignment="Center" />
- </StackPanel>
- </Button>
- <Button x:Name="ConfirmTimesheet" DockPanel.Dock="Right" Width="150" Height="35"
- Margin="0,2,0,0" Click="ConfirmTimesheet_Click" BorderBrush="Gray" Padding="4">
- <StackPanel Orientation="Horizontal">
- <Image x:Name="ConfirmTimeSheetImage"
- Source="pack://application:,,,/Resources/tick.png" />
- <Label Content="Confirm TimeSheet" VerticalContentAlignment="Center" />
- </StackPanel>
- </Button>
- <Label Content="" DockPanel.Dock="Left" />
- </DockPanel>
- <dynamicgrid:MemoEditorControl Margin="0,4,0,0" x:Name="Notes" DockPanel.Dock="Top"
- Color="LightYellow" ColumnName="Notes"
- OnEditorValueChanged="TimeSheetEditorValueChanged" />
- </DockPanel>
-
- </Grid>
-
- <Grid Grid.Column="5" >
- <Grid.RowDefinitions>
- <RowDefinition Height="Auto" />
- <RowDefinition Height="Auto" />
- <RowDefinition Height="Auto" />
- <RowDefinition Height="Auto" />
- <RowDefinition Height="Auto" />
- <RowDefinition Height="*" />
- <RowDefinition Height="Auto" />
- <RowDefinition Height="Auto" />
- <RowDefinition Height="Auto" />
- </Grid.RowDefinitions>
- <DockPanel Grid.Row="0" Height="35">
- <Button x:Name="NewTask" DockPanel.Dock="Right" Content="New Task" Margin="2,0,0,0" Padding="5,0,5,0"
- Click="NewTask_Click" />
- <Border DockPanel.Dock="Left" BorderBrush="Gray" BorderThickness="0.75" Background="WhiteSmoke">
- <DockPanel>
- <CheckBox Content="Include Public?" x:Name="ShowPublicTasks" DockPanel.Dock="Left"
- VerticalContentAlignment="Center" Margin="5,0,5,0" IsThreeState="False"
- Checked="ShowPublicTasks_Checked" Unchecked="ShowPublicTasks_Checked" />
- <Label Content="My Task List" DockPanel.Dock="Left" HorizontalContentAlignment="Center"
- VerticalContentAlignment="Center" />
- </DockPanel>
- </Border>
- </DockPanel>
- <ListView x:Name="Tasks" Grid.Row="5" Margin="0,2,0,0"
- PreviewMouseLeftButtonDown="Tasks_PreviewMouseLeftButtonDown" PreviewMouseMove="Tasks_MouseMove"
- MouseDoubleClick="Tasks_MouseDoubleClick">
- <ListView.ItemTemplate>
- <DataTemplate>
- <Border BorderBrush="Gray" BorderThickness="0.75" CornerRadius="5" Padding="5"
- Background="{Binding Path='DueDate', Converter={StaticResource DueDateToColorConverter}}"
- Margin="0" Tag="{Binding}" Width="388" ContextMenuOpening="TaskMenu_ContextMenuOpening">
- <DockPanel>
- <TextBlock DockPanel.Dock="Right"
- Text="{Binding DueDate, StringFormat='{}{0:dd MMM yy}'}" FontWeight="Bold"
- FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center" />
- <TextBlock DockPanel.Dock="Left" FontWeight="DemiBold" FontSize="12"
- VerticalAlignment="Center">
- <Run Text="{Binding Path=Number}" /><Run Text=": " />
- <Run Text="{Binding Path=Title}" />
- </TextBlock>
- </DockPanel>
- <Border.ContextMenu>
- <ContextMenu x:Name="TaskMenu">
- <MenuItem x:Name="MoveTaskMenu" Header="Move To.." />
- </ContextMenu>
- </Border.ContextMenu>
- </Border>
- </DataTemplate>
- </ListView.ItemTemplate>
- </ListView>
- <Button x:Name="OpenTasks" Grid.Row="1" Click="OpenTasks_Click" Content="Open Tasks" Height="35"
- BorderBrush="Gray" BorderThickness="0.75" Margin="0,2,0,0" />
- <Button x:Name="CurrentTasks" Grid.Row="6" Click="CurrentTasks_Click" Content="Tasks In Progress"
- Height="35" Margin="0,2,0,0" BorderBrush="Gray" BorderThickness="0.75" />
- <Button x:Name="WaitingTasks" Grid.Row="7" Click="WaitingTasks_Click" Content="Waiting For Others"
- Height="35" Margin="0,2,0,0" BorderBrush="Gray" BorderThickness="0.75" />
- <Button x:Name="ClosedTasks" Grid.Row="8" Click="ClosedTasks_Click" Content="Completed Tasks" Height="35"
- Margin="0,2,0,0" BorderBrush="Gray" BorderThickness="0.75" />
- </Grid>
- </Grid>
- </UserControl>
|