Skip to content

Commit 7c00079

Browse files
committed
init SnippetHistory
1 parent 25a3081 commit 7c00079

12 files changed

Lines changed: 934 additions & 14 deletions

File tree

CodeHubDesktop/App.xaml.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using HandyControl.Tools;
44
using ModernWpf;
55
using Prism.Ioc;
6+
using Prism.Regions;
67
using System;
78
using System.Windows;
89
using System.Windows.Media;
@@ -17,6 +18,12 @@ public App()
1718
ConfigHelper.Instance.SetLang(GlobalData.Config.Lang);
1819
}
1920

21+
protected override void OnStartup(StartupEventArgs e)
22+
{
23+
base.OnStartup(e);
24+
Container.Resolve<IRegionManager>().RequestNavigate("ContentRegion", "CreateSnippet");
25+
}
26+
2027
protected override Window CreateShell()
2128
{
2229
if (GlobalData.Config.Skin != SkinType.Default)

CodeHubDesktop/CodeHubDesktop.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
<None Remove="Resources\Img\Flag\fa.png" />
2727
</ItemGroup>
2828
<ItemGroup>
29+
<PackageReference Include="AvalonEdit" Version="6.0.1" />
2930
<PackageReference Include="HandyControls" Version="2.4.9.2" />
3031
<PackageReference Include="ModernWpfUI.MahApps" Version="0.8.2-preview.1" />
3132
<PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
using System;
2+
using System.ComponentModel;
3+
using System.Windows;
4+
5+
namespace CodeHubDesktop.Controls
6+
{
7+
public class BindableAvalonEditor : ICSharpCode.AvalonEdit.TextEditor, INotifyPropertyChanged
8+
{
9+
/// <summary>
10+
/// A bindable Text property
11+
/// </summary>
12+
public new string Text
13+
{
14+
get => (string)GetValue(TextProperty);
15+
set
16+
{
17+
SetValue(TextProperty, value);
18+
RaisePropertyChanged("Text");
19+
}
20+
}
21+
22+
/// <summary>
23+
/// The bindable text property dependency property
24+
/// </summary>
25+
public static readonly DependencyProperty TextProperty =
26+
DependencyProperty.Register(
27+
"Text",
28+
typeof(string),
29+
typeof(BindableAvalonEditor),
30+
new FrameworkPropertyMetadata
31+
{
32+
DefaultValue = default(string),
33+
BindsTwoWayByDefault = true,
34+
PropertyChangedCallback = OnDependencyPropertyChanged
35+
}
36+
);
37+
38+
protected static void OnDependencyPropertyChanged(DependencyObject obj, DependencyPropertyChangedEventArgs args)
39+
{
40+
BindableAvalonEditor target = (BindableAvalonEditor)obj;
41+
42+
if (target.Document != null)
43+
{
44+
int caretOffset = target.CaretOffset;
45+
object newValue = args.NewValue;
46+
47+
if (newValue == null)
48+
{
49+
newValue = "";
50+
}
51+
52+
target.Document.Text = (string)newValue;
53+
target.CaretOffset = Math.Min(caretOffset, newValue.ToString().Length);
54+
}
55+
}
56+
57+
protected override void OnTextChanged(EventArgs e)
58+
{
59+
if (Document != null)
60+
{
61+
Text = Document.Text;
62+
}
63+
64+
base.OnTextChanged(e);
65+
}
66+
67+
/// <summary>
68+
/// Raises a property changed event
69+
/// </summary>
70+
/// <param name="property">The name of the property that updates</param>
71+
public void RaisePropertyChanged(string property)
72+
{
73+
if (PropertyChanged != null)
74+
{
75+
PropertyChanged(this, new PropertyChangedEventArgs(property));
76+
}
77+
}
78+
79+
public event PropertyChangedEventHandler PropertyChanged;
80+
}
81+
}

CodeHubDesktop/Controls/MyHamburgerMenu.cs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
11
using ModernWpf.MahApps.Controls;
2-
using System;
3-
using System.Collections.Generic;
4-
using System.Text;
52
using System.Windows;
63
using System.Windows.Controls;
74
using System.Windows.Media;
@@ -34,7 +31,7 @@ private void ApplyPaneFontFamily()
3431
{
3532
if (PaneGrid != null)
3633
{
37-
var paneFontFamily = PaneFontFamily;
34+
FontFamily paneFontFamily = PaneFontFamily;
3835
if (paneFontFamily != null)
3936
{
4037
PaneGrid.Resources[SystemFonts.MessageFontFamilyKey] = paneFontFamily;
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
namespace CodeHubDesktop.Models
2+
{
3+
public class CreateSnippetModel
4+
{
5+
public string title { get; set; }
6+
public string detail { get; set; }
7+
public string script { get; set; }
8+
public string language { get; set; }
9+
}
10+
11+
public class GetSnippetModel
12+
{
13+
public string SID { get; set; }
14+
public string title { get; set; }
15+
public string detail { get; set; }
16+
public string script { get; set; }
17+
public string language { get; set; }
18+
public string pub_date { get; set; }
19+
public string link { get; set; }
20+
}
21+
}

CodeHubDesktop/MultiLanguage/Language/Lang.Designer.cs

Lines changed: 99 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

CodeHubDesktop/MultiLanguage/Language/Lang.fa-IR.resx

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,9 +135,15 @@
135135
<data name="CheckForUpdate" xml:space="preserve">
136136
<value>بررسی بروزرسانی</value>
137137
</data>
138+
<data name="Clear" xml:space="preserve">
139+
<value>پاک کن</value>
140+
</data>
138141
<data name="ContactUs" xml:space="preserve">
139142
<value>تماس با ما</value>
140143
</data>
144+
<data name="Create" xml:space="preserve">
145+
<value>ایجاد</value>
146+
</data>
141147
<data name="Created" xml:space="preserve">
142148
<value>ایجاد در</value>
143149
</data>
@@ -147,6 +153,12 @@
147153
<data name="CurrentVer" xml:space="preserve">
148154
<value>نسخه فعلی</value>
149155
</data>
156+
<data name="Detail" xml:space="preserve">
157+
<value>توضیحات بیشتر...</value>
158+
</data>
159+
<data name="DetailTitle" xml:space="preserve">
160+
<value>توضیحات بیشتر (اختیاری)</value>
161+
</data>
150162
<data name="Developer" xml:space="preserve">
151163
<value>برنامه نویس مهدی حسینی</value>
152164
</data>
@@ -186,12 +198,33 @@
186198
<data name="Published" xml:space="preserve">
187199
<value>انتشار در</value>
188200
</data>
201+
<data name="SelectLanguage" xml:space="preserve">
202+
<value>زبان خودتان را انتخاب کنید...</value>
203+
</data>
204+
<data name="SelectLanguageTitle" xml:space="preserve">
205+
<value>انتخاب زبان اسنیپت</value>
206+
</data>
189207
<data name="Settings" xml:space="preserve">
190208
<value>تنظیمات</value>
191209
</data>
210+
<data name="ShieldSubject" xml:space="preserve">
211+
<value>لینک به حافظه کپی شد</value>
212+
</data>
192213
<data name="SnippetHistory" xml:space="preserve">
193214
<value>اسنیپت های قبلی</value>
194215
</data>
216+
<data name="Subject" xml:space="preserve">
217+
<value>عنوان...</value>
218+
</data>
219+
<data name="SubjectTitle" xml:space="preserve">
220+
<value>عنوان اسنیپت</value>
221+
</data>
222+
<data name="TabLocal" xml:space="preserve">
223+
<value>اسنیپت های شما</value>
224+
</data>
225+
<data name="TabOther" xml:space="preserve">
226+
<value>اسنیپت های دیگران</value>
227+
</data>
195228
<data name="Update" xml:space="preserve">
196229
<value>بروزرسانی</value>
197230
</data>

0 commit comments

Comments
 (0)