-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathnbookmark.cs
More file actions
119 lines (94 loc) · 3.86 KB
/
nbookmark.cs
File metadata and controls
119 lines (94 loc) · 3.86 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
using System;
using Gtk;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Text;
using UI = Gtk.Builder.ObjectAttribute;
namespace Appbatrozlinux
{
class nbookmark : Window
{
List<string> lists = new List<string>();
List<string[]> fl = new List<string[]>();
[UI] private Entry entry1 = null;
[UI] private Entry entry2 = null;
[UI] private Entry entry3 = null;
[UI] private TextView textview1 = null;
private int _counter;
public nbookmark() : this(new Builder("nbookmark.glade")) { }
private nbookmark(Builder builder) : base(builder.GetRawOwnedObject("nbookmark"))
{
string text;
string folder = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal) ;
if (File.Exists(folder+ "/appbatrozlnx/appbatroztext/" + "bmrk.txt"))
{
var fileStream = new FileStream(folder+ "/appbatrozlnx/appbatroztext/" + "bmrk.txt", FileMode.Open, FileAccess.Read);
using (var streamReader = new StreamReader(fileStream, Encoding.UTF8))
{
text = streamReader.ReadToEnd();
}
if (text != "") {
string[] parts1 = text.Split(new string[] { "{/]'[}" }, StringSplitOptions.None);
foreach(var i in parts1)
{
string[] ps2= i.Split(new string[] { "{;:}" }, StringSplitOptions.None);
foreach (var s in ps2)
{
lists.Add(s);
}
fl.Add(lists.ToArray());
lists.Clear();
}
}
}
builder.Autoconnect(this);
// DeleteEvent += Window_DeleteEvent;
// _button1.Clicked += Button1_Clicked;
}
protected void save_Clicked(object sender, EventArgs e)
{
string folder = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal) + "/appbatrozlnx/appbatroztext/";
System.IO.FileInfo file = new System.IO.FileInfo(folder);
file.Directory.Create();
lists.Add(entry1.Text);
lists.Add(entry2.Text);
lists.Add(entry3.Text);
lists.Add(textview1.Buffer.Text);
if (fl.ToArray().Length == 0 || fl.ToArray().Length < 1)
{
File.WriteAllText(folder + "bmrk.txt", String.Join("{;:}", lists.ToArray()));
fl.Add(lists.ToArray());
lists.Clear();
}
else if (fl.ToArray().Length >= 1)
{
fl.Add(lists.ToArray());
lists.Clear();
File.WriteAllText(folder + "bmrk.txt", PrettyPrintArrayOfArrays(fl.ToArray()));
}
MessageDialog md = new MessageDialog(null, DialogFlags.Modal, MessageType.Other, ButtonsType.Ok, "Success");
md.Run();
md.Destroy();
entry1.Text = "";
entry2.Text = "";
entry3.Text = "";
textview1.Buffer.Text = "";
}
protected void cancel_Clicked(object sender, EventArgs e)
{
this.Close();
}
public string PrettyPrintArrayOfArrays(string[][] arrayOfArrays)
{
if (arrayOfArrays == null)
return "";
var prettyArrays = new string[arrayOfArrays.Length];
for (int i = 0; i < arrayOfArrays.Length; i++)
{
prettyArrays[i] = String.Join("{;:}", arrayOfArrays[i]) ;
}
return String.Join("{/]'[}", prettyArrays);
}
}
}