跳到主要内容

github/tai

公开

Tai · Windows 软件与网站使用时长统计。上游 Planshit/Tai 的源码镜像,非灵栈原创;MIT 许可。来源:https://github.com/Planshit/Tai 。本次为手动同步,暂不提供安装包。

提交记录
修改UI/Models/DataPageModel.cs+28 −0看文件
@@ -5,11 +5,36 @@ using System.Linq;
55using System.Text;
66using System.Threading.Tasks;
77using UI.Controls.Charts.Model;
8新增:using UI.Controls.DatePickerBar;
89
910namespace UI.Models
1011{
1112 public class DataPageModel : UINotifyPropertyChanged
1213 {
14新增: private ObservableCollection<string> TabbarData_;
15新增: /// <summary>
16新增: /// tabbar data
17新增: /// </summary>
18新增: public ObservableCollection<string> TabbarData
19新增: {
20新增: get { return TabbarData_; }
21新增: set { TabbarData_ = value; OnPropertyChanged(); }
22新增: }
23新增:
24新增: private int TabbarSelectedIndex_;
25新增: /// <summary>
26新增: /// tabbar selected item index
27新增: /// </summary>
28新增: public int TabbarSelectedIndex
29新增: {
30新增: get { return TabbarSelectedIndex_; }
31新增: set
32新增: {
33新增: TabbarSelectedIndex_ = value;
34新增: OnPropertyChanged();
35新增: }
36新增: }
37新增:
1338 private List<ChartsDataModel> Data_;
1439 /// <summary>
1540 /// data
@@ -29,5 +54,8 @@ namespace UI.Models
2954 get { return Date_; }
3055 set { Date_ = value; OnPropertyChanged(); }
3156 }
57新增:
58新增: private DatePickerShowType DatePickerType_;
59新增: public DatePickerShowType DatePickerType { get { return DatePickerType_; } set { DatePickerType_ = value; OnPropertyChanged(); } }
3260 }
3361}
修改UI/Themes/DatePickerBar/DatePickerBarItem.xaml+30 −0看文件
@@ -5,6 +5,7 @@
55 <Style TargetType="{x:Type local:DatePickerBarItem}">
66 <Setter Property="SnapsToDevicePixels"
77 Value="true" />
8新增: <Setter Property="Cursor" Value="Hand"/>
89
910 <Setter Property="Background" Value="Transparent"/>
1011 <Setter Property="Template">
@@ -19,7 +20,36 @@
1920 <TextBlock x:Name="Text" Foreground="#5c5c5c" Text="{TemplateBinding Title}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
2021 </Border>
2122 </Grid>
23新增: <VisualStateManager.VisualStateGroups>
24新增: <VisualStateGroup x:Name="CommonStates">
25新增: <VisualStateGroup.Transitions>
26新增: <VisualTransition GeneratedDuration="0:0:0.18" />
27新增: <VisualTransition GeneratedDuration="0"
28新增: To="Pressed" />
29新增: </VisualStateGroup.Transitions>
30新增: <VisualState x:Name="Normal" />
31新增: <VisualState x:Name="MouseOver">
32新增: <Storyboard>
33新增: <ColorAnimation Storyboard.TargetProperty="(Border.Background).(SolidColorBrush.Color)"
34新增: Storyboard.TargetName="Bg" To="#192B20D9">
35新增: <ColorAnimation.EasingFunction>
36新增: <CubicEase EasingMode="EaseInOut"/>
37新增: </ColorAnimation.EasingFunction>
38新增: </ColorAnimation>
39新增: <!--<ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(Border.Background).(SolidColorBrush.Color)"
40新增: Storyboard.TargetName="Bg" >
41新增: <EasingColorKeyFrame KeyTime="0"
42新增: Value="#192B20D9"/>
43新增:
44新增: </ColorAnimationUsingKeyFrames>-->
2245
46新增: </Storyboard>
47新增: </VisualState>
48新增: <VisualState x:Name="Pressed">
49新增:
50新增: </VisualState>
51新增: </VisualStateGroup>
52新增: </VisualStateManager.VisualStateGroups>
2353 </Border>
2454 <ControlTemplate.Triggers>
2555 <Trigger Property="IsSelected"
修改UI/ViewModels/DataPageVM.cs+27 −1看文件
@@ -37,6 +37,14 @@ namespace UI.ViewModels
3737 {
3838 LoadData(DateTime.Now.Date);
3939 PropertyChanged += DataPageVM_PropertyChanged;
40新增:
41新增: TabbarData = new System.Collections.ObjectModel.ObservableCollection<string>()
42新增: {
43新增: "按天查看","按月查看"
44新增: };
45新增:
46新增: TabbarSelectedIndex = 0;
47新增: DatePickerType = Controls.DatePickerBar.DatePickerShowType.Day;
4048 }
4149
4250 private void OnTodetailCommand(object obj)
@@ -56,6 +64,18 @@ namespace UI.ViewModels
5664 {
5765 LoadData(Date);
5866 }
67新增:
68新增: if (e.PropertyName == nameof(TabbarSelectedIndex))
69新增: {
70新增: if (TabbarSelectedIndex == 0)
71新增: {
72新增: DatePickerType = Controls.DatePickerBar.DatePickerShowType.Day;
73新增: }
74新增: else
75新增: {
76新增: DatePickerType = Controls.DatePickerBar.DatePickerShowType.Month;
77新增: }
78新增: }
5979 }
6080
6181
@@ -67,7 +87,13 @@ namespace UI.ViewModels
6787
6888 private void LoadData(DateTime date)
6989 {
70删除: var list = data.GetDateRangelogList(date, date);
90新增: DateTime dateStart = date, dateEnd = date;
91新增: if (TabbarSelectedIndex == 1)
92新增: {
93新增: dateStart = new DateTime(date.Year, date.Month, 1);
94新增: dateEnd = new DateTime(date.Year, date.Month, DateTime.DaysInMonth(date.Year, date.Month));
95新增: }
96新增: var list = data.GetDateRangelogList(dateStart, dateEnd);
7197 Data = MapToChartsData(list);
7298 }
7399
修改UI/ViewModels/MainViewModel.cs+1 −1看文件
@@ -79,7 +79,7 @@ namespace UI.ViewModels
7979 Items.Add(new Controls.Navigation.Models.NavigationItemModel()
8080 {
8181 Icon = Controls.Base.IconTypes.BIDashboard,
82删除: Title = "每日",
82新增: Title = "详细",
8383 ID = 1,
8484 Uri = nameof(DataPage),
8585
修改UI/Views/DataPage.xaml+6 −2看文件
@@ -11,7 +11,11 @@
1111
1212 <Grid>
1313 <StackPanel Margin="20">
14删除: <TextBlock Text="每日" FontSize="18" Margin="0,5,0,20"/>
14新增: <TextBlock Text="详细" FontSize="18" Margin="0,5,0,20"/>
15新增:
16新增: <Tabbar:Tabbar Data="{Binding TabbarData}" SelectedIndex="{Binding TabbarSelectedIndex,Mode=TwoWay}"/>
17新增:
18新增: <!--<TextBlock Text="每日" FontSize="18" Margin="0,5,0,20"/>-->
1519
1620 <!--<Border Width="60" Height="60" HorizontalAlignment="Left" RenderTransformOrigin="1,0.5">
1721 <Border.Effect>
@@ -26,7 +30,7 @@
2630
2731 </Border>-->
2832 <!--<TextBlock Text="按月统计" FontSize="18" Margin="0,5,0,10"/>-->
29删除: <DatePickerBar:DatePickerBar SelectedDate="{Binding Date,Mode=TwoWay}"/>
33新增: <DatePickerBar:DatePickerBar SelectedDate="{Binding Date,Mode=TwoWay}" ShowType="{Binding DatePickerType}"/>
3034
3135 <Charts:Charts Data="{Binding Data}" ChartsType="HorizontalA" Margin="0,20,0,0" ClickCommand="{Binding ToDetailCommand}"/>
3236