Skip to content

Commit

Permalink
Merge pull request #104 from jm7uz/dev
Browse files Browse the repository at this point in the history
A new User interface window has been created.
  • Loading branch information
dotnetgoo authored Nov 1, 2023
2 parents 1d67b9b + 9cc2481 commit 1822f22
Show file tree
Hide file tree
Showing 9 changed files with 477 additions and 342 deletions.
3 changes: 1 addition & 2 deletions src/Shamsheer.Messenger.Desktop/App.xaml
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
<Application x:Class="Shamsheer.Messenger.Desktop.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:Shamsheer.Messenger.Desktop"
StartupUri="MainWindow.xaml">
xmlns:local="clr-namespace:Shamsheer.Messenger.Desktop">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
Expand Down
22 changes: 21 additions & 1 deletion src/Shamsheer.Messenger.Desktop/App.xaml.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using System;
using Shamsheer.Messenger.Desktop.Windows;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
Expand All @@ -13,5 +14,24 @@ namespace Shamsheer.Messenger.Desktop
/// </summary>
public partial class App : Application
{
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);

this.ShutdownMode = ShutdownMode.OnLastWindowClose;

bool userSignin = true;

if (userSignin)
{
var mainWindow = new MainWindow();
mainWindow.Show();
}
else
{
var userWindow = new Home();
userWindow.Show();
}
}
}
}
114 changes: 77 additions & 37 deletions src/Shamsheer.Messenger.Desktop/MainWindow.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,64 +2,106 @@
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:md="http://materialdesigninxaml.net/winfx/xaml/themes"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Shamsheer.Messenger.Desktop"
mc:Ignorable="d"
Title="Shamsheer"
MinHeight="540" MinWidth="430">
Background="#17212B"
WindowStyle="None"
Title="Shamsheer Desktop"
Height="550" Width="700" >

<WindowChrome.WindowChrome>
<WindowChrome CaptionHeight="0" ResizeBorderThickness="5"/>
</WindowChrome.WindowChrome>

<Window.Resources>
<Storyboard x:Key="MenuOpen">
<ThicknessAnimationUsingKeyFrames Storyboard.TargetProperty="Margin" Storyboard.TargetName="MenuGrid">
<SplineThicknessKeyFrame KeyTime="0" Value="-280 0 0 0"/>
<SplineThicknessKeyFrame KeyTime="0:0:0.2" Value="0 0 0 0"/>
</ThicknessAnimationUsingKeyFrames>
</Storyboard>

<Storyboard x:Key="MenuClose" Name="MenuClose">
<ThicknessAnimationUsingKeyFrames Storyboard.TargetProperty="Margin" Storyboard.TargetName="MenuGrid">
<SplineThicknessKeyFrame KeyTime="0" Value="0 0 0 0"/>
<SplineThicknessKeyFrame KeyTime="0:0:0.2" Value="-280 0 0 0"/>
</ThicknessAnimationUsingKeyFrames>
</Storyboard>
<Storyboard x:Key="BorderOpacityIn">
<DoubleAnimation Storyboard.TargetProperty="Opacity" Storyboard.TargetName="CloseMenu_Border" From="0" To="0.3" Duration="0:0:0.2"/>
</Storyboard>
</Window.Resources>

<Grid x:Name="windowGrid" >
<Grid.RowDefinitions>
<RowDefinition Height="22"/>
<RowDefinition/>
</Grid.RowDefinitions>

<Grid x:Name="drag_grid" MouseLeftButtonDown="NavBar" Grid.Row="0" Background="#1F2936">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
<Button x:Name="minimizeButton" Click="minimize_btn_Click" Height="22" Width="25" Padding="0 5 0 0" BorderThickness="0" Background="Transparent">
<md:PackIcon Kind="WindowMinimize" Foreground="#576673" FontWeight="ExtraBold"/>
</Button>
<Button x:Name="maximize_btn" Click="maximize_btn_Click" Height="22" Width="25" Padding="0" BorderThickness="0" Background="Transparent">
<md:PackIcon Kind="WindowMaximize" Foreground="#576673" FontWeight="ExtraBold"/>
</Button>
<Button x:Name="close_btn" Click="close_btn_Click" Height="22" Width="25" Padding="0" BorderThickness="0" Background="Transparent">
<md:PackIcon Kind="WindowClose" Foreground="#576673" FontWeight="ExtraBold"/>
</Button>
</StackPanel>
</Grid>

<Grid Grid.Row="1">

<Grid Background="#17212B">
<Border>
<StackPanel HorizontalAlignment="Center"
VerticalAlignment="Center">
<Image x:Name="ImagePicture"
Source="C:\Users\Jasurbek Abdunazarov\Desktop\Contributer\Shamsheer\src\Shamsheer.Messenger.Desktop\Images\tg.jpg"
Stretch="UniformToFill"
Margin="0 -115 0 0"/>
VerticalAlignment="Center">

<TextBlock Text="Shamsheer Desktop"
FontSize="25"
HorizontalAlignment="Center"
FontWeight="Bold"
Foreground="Snow"
Margin="0,30,0,0"/>
FontSize="25"
HorizontalAlignment="Center"
FontWeight="Bold"
Foreground="Snow"
Margin="0,30,0,0"/>

<TextBlock Text="Welcome to the official Shamsheer Desktop app."
FontSize="14"
HorizontalAlignment="Center"
Foreground="Gray"
Margin="0,10,0,0"/>
FontSize="14"
HorizontalAlignment="Center"
Foreground="Gray"
Margin="0,10,0,0"/>

<TextBlock Text="It's fast and secure"
FontSize="14"
HorizontalAlignment="Center"
Foreground="Gray"
Margin="0,10,0,0"/>
FontSize="14"
HorizontalAlignment="Center"
Foreground="Gray"
Margin="0,10,0,0"/>

<Button x:Name="startMessagingBtn"
Content="Start Messaging"
FontSize="16"
Foreground="Snow"
Background="#2F6EA5"
Margin="0 50 0 0"
Height="42"
Width="250"
Cursor="Hand" Click="startMessagingBtn_Click">
Content="Start Messaging"
FontSize="16"
Foreground="Snow"
Background="#2F6EA5"
Margin="0 50 0 0"
Height="42"
Width="250"
Cursor="Hand" Click="startMessagingBtn_Click">
<Button.Style>
<Style TargetType="Button">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Border x:Name="Message" Background="{TemplateBinding Background}"
CornerRadius="5">
CornerRadius="5">
<ContentPresenter HorizontalAlignment="Center"
VerticalAlignment="Center" />
VerticalAlignment="Center" />
</Border>

<ControlTemplate.Triggers>
<Trigger Property="IsMouseCaptured" Value="True">
<Setter Property="Background" Value="#0C9CE9"
TargetName="Message" />
TargetName="Message" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
Expand All @@ -74,9 +116,7 @@
</Button.Resources>
</Button>
</StackPanel>
</Border>

<Frame x:Name="MainFrame" NavigationUIVisibility="Hidden"/>

<Frame x:Name="MainFrame" NavigationUIVisibility="Hidden"/>
</Grid>
</Grid>
</Window>
37 changes: 37 additions & 0 deletions src/Shamsheer.Messenger.Desktop/MainWindow.xaml.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
using Shamsheer.Messenger.Desktop.Pages;
using System;
using System.Windows;
using System.Windows.Input;

namespace Shamsheer.Messenger.Desktop
{
Expand All @@ -13,7 +14,43 @@ public MainWindow()
{
InitializeComponent();
}
private void NavBar(object sender, MouseButtonEventArgs e)
{
if (e.ClickCount == 2)
{
maximize_btn_Click(sender, null);
}
else
{
this.DragMove();
}
}

private void minimize_btn_Click(object sender, RoutedEventArgs e)
{
this.WindowState = WindowState.Minimized;
}

private void maximize_btn_Click(object sender, RoutedEventArgs e)
{
if (this.WindowState == WindowState.Normal)
{
windowGrid.Margin = new Thickness(8, 10, 10, 10);
WindowStyle = WindowStyle.SingleBorderWindow;
WindowState = WindowState.Maximized;
WindowStyle = WindowStyle.None;
}
else
{
this.WindowState = WindowState.Normal;
windowGrid.Margin = new Thickness(0);
}
}

private void close_btn_Click(object sender, RoutedEventArgs e)
{
this.Close();
}
private void startMessagingBtn_Click(object sender, RoutedEventArgs e)
{
MainFrame.Navigate(new QrCodePage());
Expand Down
113 changes: 0 additions & 113 deletions src/Shamsheer.Messenger.Desktop/Pages/Home.xaml

This file was deleted.

Loading

0 comments on commit 1822f22

Please sign in to comment.