Skip to content

Commit

Permalink
Store готов
Browse files Browse the repository at this point in the history
  • Loading branch information
MilkRen committed May 31, 2024
1 parent 5aa0fed commit c1add29
Show file tree
Hide file tree
Showing 28 changed files with 551 additions and 46 deletions.
1 change: 1 addition & 0 deletions LauncherDM/App.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
<ResourceDictionary Source="Styles/Other/TabPanelStyle.xaml"/>
<ResourceDictionary Source="Styles/Other/ScrollbarStyle.xaml"/>
<ResourceDictionary Source="Styles/Other/MediaElementStyle.xaml"/>
<ResourceDictionary Source="Styles/Other/ProgressBarStyle.xaml"/>

</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
Expand Down
18 changes: 18 additions & 0 deletions LauncherDM/Properties/Resources.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions LauncherDM/Properties/Resources.en.resx
Original file line number Diff line number Diff line change
Expand Up @@ -161,4 +161,7 @@
<data name="AccountChange" xml:space="preserve">
<value>Change account</value>
</data>
<data name="InTheLibrary" xml:space="preserve">
<value>In the library</value>
</data>
</root>
6 changes: 6 additions & 0 deletions LauncherDM/Properties/Resources.resx
Original file line number Diff line number Diff line change
Expand Up @@ -280,4 +280,10 @@
<data name="AccountChange" xml:space="preserve">
<value>Сменить аккаунт</value>
</data>
<data name="ErrorSend" xml:space="preserve">
<value />
</data>
<data name="InTheLibrary" xml:space="preserve">
<value>В библиотеке</value>
</data>
</root>
13 changes: 13 additions & 0 deletions LauncherDM/Services/Interfaces/ILibraryUserControlService.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace LauncherDM.Services.Interfaces
{
interface ILibraryUserControlService
{
string GetAllItems();
}
}
2 changes: 2 additions & 0 deletions LauncherDM/Services/Interfaces/IStoreUserControlService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,7 @@ interface IStoreUserControlService
GamesForXml GetGames();

string GetGamesPath();

bool SaleItem(string item);
}
}
21 changes: 21 additions & 0 deletions LauncherDM/Services/LibraryUserControlService.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
using LauncherDM.Services.Interfaces;
using ServerTCP;

namespace LauncherDM.Services
{
class LibraryUserControlService : ILibraryUserControlService
{
private IServerRequestService _serverRequest;

public LibraryUserControlService(ServerRequestService serverRequest)
{
_serverRequest = serverRequest;
}

public string GetAllItems()
{
var requestMessageServer = _serverRequest.SendMessageRequest(MessageHeader.MessageType.AllGamesOrPrograms, true);
return requestMessageServer.Message.ToString();
}
}
}
7 changes: 5 additions & 2 deletions LauncherDM/Services/ServerRequestService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,11 @@ public MessageHeader SendMessageRequest(object data, MessageHeader.MessageType m
{
tcpClient = new TcpClient();
tcpClient.Connect(_endPoint);

var messageHeader = new MessageHeader(data, messageType, MessageLanguages.Language);
MessageHeader messageHeader = null;
if (loadToken)
messageHeader = new MessageHeader(data, messageType, MessageLanguages.Language, SettingsApp.Default.Token);
else
messageHeader = new MessageHeader(data, messageType, MessageLanguages.Language);
byte[] headerBytes = messageHeader.MessageToArray(loadToken);
NetworkStream tcpStream = tcpClient.GetStream();
tcpStream.Write(headerBytes);
Expand Down
9 changes: 8 additions & 1 deletion LauncherDM/Services/StoreUserControlService.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using LauncherDM.Models;
using System;
using LauncherDM.Models;
using LauncherDM.Services.Interfaces;
using ServerTCP;
using ServerTCP.Models;
Expand Down Expand Up @@ -66,5 +67,11 @@ public string GetGamesPath()
var requestMessageServer = _serverRequest.SendMessageRequest(MessageHeader.MessageType.GamesPath);
return requestMessageServer.Message.ToString();
}

public bool SaleItem(string item)
{
var requestMessageServer = _serverRequest.SendMessageRequest(item, MessageHeader.MessageType.Sale, true);
return requestMessageServer.Message.ToString() == "1";
}
}
}
6 changes: 6 additions & 0 deletions LauncherDM/Styles/Other/BorderStyle.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@
<Setter Property="Height" Value="2"/>
</Style>

<Style x:Key="BorderRoundedVertical" TargetType="Border">
<Setter Property="Background" Value="White"/>
<Setter Property="CornerRadius" Value="2"/>
<Setter Property="Width" Value="2"/>
</Style>



</ResourceDictionary>
35 changes: 35 additions & 0 deletions LauncherDM/Styles/Other/ButtonStyle.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -533,4 +533,39 @@
</Style.Triggers>
</Style>

<Style x:Key="ButtonItemSend" TargetType="Button">
<Setter Property="FontFamily" Value="#Cascadia Mono SemiLight"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<!--<Setter Property="Background" Value="#738aea"/>-->
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border BorderThickness="1" BorderBrush="White" CornerRadius="3" Background="{TemplateBinding Background}" Height="{TemplateBinding Height}" Width="{TemplateBinding Width}">
<Label FontSize="{TemplateBinding FontSize}" Content="{TemplateBinding Content}" Foreground="{TemplateBinding Foreground}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>

<!--<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<ColorAnimation Storyboard.TargetProperty="Background.(SolidColorBrush.Color)" To="#738aea" Duration="0:0:0.3"/>
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
<Trigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<ColorAnimation Storyboard.TargetProperty="Background.(SolidColorBrush.Color)" To="#33c02b" Duration="0:0:0.3"/>
</Storyboard>
</BeginStoryboard>
</Trigger.ExitActions>
</Trigger>
</Style.Triggers>-->
</Style>

</ResourceDictionary>
18 changes: 18 additions & 0 deletions LauncherDM/Styles/Other/ProgressBarStyle.xaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

<Style x:Key="ProgressBarStyle" TargetType="ProgressBar">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ProgressBar">
<Border BorderBrush="#D9DCE1" BorderThickness="0" Background="#FF0C0B0B" CornerRadius="0" Padding="0">
<Grid x:Name="PART_Track">
<Rectangle x:Name="PART_Indicator" HorizontalAlignment="Left" Fill="#FF2BA9FF" />
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>

</ResourceDictionary>
42 changes: 42 additions & 0 deletions LauncherDM/ViewModels/LibrarySelectItemViewModel.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
using LauncherDM.Infastructure.Commands;
using LauncherDM.Infastructure.Commands.Base;

namespace LauncherDM.ViewModels
{
class LibrarySelectItemViewModel : ViewModel.Base.ViewModel
{
private string _nameItem;

public string NameItem
{
get => _nameItem;
set => Set(ref _nameItem, value);
}


#region ImageItemPath

private string _imageItemPath;

public string ImageItemPath
{
get => _imageItemPath;
set => Set(ref _imageItemPath, value);
}

#endregion

#region Command

public Command ClickItemCommand { get; }

#endregion

public LibrarySelectItemViewModel(string nameItem, string imageItemPath, LambdaCommand lambdaCommand = null)
{
NameItem = nameItem;
ImageItemPath = imageItemPath;
ClickItemCommand = lambdaCommand;
}
}
}
64 changes: 64 additions & 0 deletions LauncherDM/ViewModels/LibraryUserControlViewModel.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
using LauncherDM.Infastructure.Commands;
using LauncherDM.Services;
using System.Collections.ObjectModel;
using System.Windows.Forms.VisualStyles;
using LauncherDM.Services.Interfaces;

namespace LauncherDM.ViewModels
{
class LibraryUserControlViewModel : ViewModel.Base.ViewModel
{
#region Service

private readonly IResourcesHelperService _resourcesHelper;

private readonly ILibraryUserControlService _libraryUserService;

#endregion

#region Bindings

public string ItemTitle => _resourcesHelper.LocalizationGet("Programs");


#region ItemListView

private ObservableCollection<LibrarySelectItemViewModel> _itemListView;

public ObservableCollection<LibrarySelectItemViewModel> ItemListView
{
get => _itemListView;
set => Set(ref _itemListView, value);
}

#endregion

#endregion



public LibraryUserControlViewModel(ResourcesHelperService resourcesHelper, ServerRequestService serverRequest)
{
_resourcesHelper = resourcesHelper;
_libraryUserService = new LibraryUserControlService(serverRequest);
ItemListView = new ObservableCollection<LibrarySelectItemViewModel>();
LoadItems();
}

private void LoadItems()
{
var a = StoreUserControlViewModel.progArray;
var b = StoreUserControlViewModel.gamesArray;

var g = _libraryUserService.GetAllItems();
ItemListView.Add(new LibrarySelectItemViewModel("sdads", "https://get.wallhere.com/photo/anime-anime-girls-2235748.jpg", new LambdaCommand(o =>
{
//ImageItem = image;
}, o => true)));
ItemListView.Add(new LibrarySelectItemViewModel("sdads", "https://get.wallhere.com/photo/anime-anime-girls-2235748.jpg"));
ItemListView.Add(new LibrarySelectItemViewModel("sdads", "https://get.wallhere.com/photo/anime-anime-girls-2235748.jpg"));
ItemListView.Add(new LibrarySelectItemViewModel("sdads", "https://get.wallhere.com/photo/anime-anime-girls-2235748.jpg"));
ItemListView.Add(new LibrarySelectItemViewModel("sdads", "https://get.wallhere.com/photo/anime-anime-girls-2235748.jpg"));
}
}
}
14 changes: 14 additions & 0 deletions LauncherDM/ViewModels/MainWindowViewModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
using System;
using System.Windows.Input;
using LauncherDM.ViewModels;
using LauncherDM.Views.UserControls;

namespace LauncherDM.ViewModel
{
Expand Down Expand Up @@ -97,6 +98,18 @@ public MyAccountUserControlViewModel MyAccountUserControlVM

#endregion

#region LibraryUserControlViewModel

private LibraryUserControlViewModel _libraryUserControlVM;

public LibraryUserControlViewModel LibraryUserControlVM
{
get => _libraryUserControlVM;
set => Set(ref _libraryUserControlVM, value);
}

#endregion

#endregion

#region Command
Expand Down Expand Up @@ -128,6 +141,7 @@ public MainWindowViewModel(Action closeAction, Action dragMove, ToolbarToWindowV
StoreUserControlVM = new StoreUserControlViewModel(resourcesHelper, serverRequest);
SettingsUserControlVM = new SettingsUserControlViewModel(closeAction, resourcesHelper);
MyAccountUserControlVM = new MyAccountUserControlViewModel();
LibraryUserControlVM = new LibraryUserControlViewModel(resourcesHelper, serverRequest);
MoveWindowCommand = new LambdaCommand(OnMoveWindowCommandExecuted, CanMoveWindowCommandExecute);
}
}
Expand Down
1 change: 0 additions & 1 deletion LauncherDM/ViewModels/SelectItemViewModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ public string ImageItemPath

#endregion


#endregion

#region Command
Expand Down
Loading

0 comments on commit c1add29

Please sign in to comment.