v2.0 Lásd Changelog.txt
|
@ -18,8 +18,6 @@ namespace MSGer.tk
|
|||
this.labelProductName.Text = AssemblyProduct;
|
||||
this.labelVersion.Text = String.Format(Language.GetCuurentLanguage().Strings["about_version"], AssemblyVersion);
|
||||
this.labelCopyright.Text = AssemblyCopyright;
|
||||
//this.labelCompanyName.Text = AssemblyCompany;
|
||||
//this.textBoxDescription.Text = AssemblyDescription;
|
||||
|
||||
labelLicenseLink.Text = "https://www.gnu.org/copyleft/gpl.html"; //2014.04.18. - Frissitve: 2014.04.25.
|
||||
List<string> desc = new List<string>(); //2014.04.18.
|
||||
|
|
|
@ -67,7 +67,6 @@ namespace MSGer.tk
|
|||
{
|
||||
if (glacialList1.SelectedItems.Count == 0)
|
||||
return;
|
||||
//MessageBox.Show(glacialList1.SelectedItems[0].ToString());
|
||||
string username = ((GLItem)glacialList1.SelectedItems[0]).Text;
|
||||
string response = Networking.SendRequest("adduser", username, 0, true);
|
||||
if (Networking.SendRequest("adduser", username, 0, true) == "Success")
|
||||
|
|
|
@ -22,6 +22,12 @@
|
|||
<setting name="lang" serializeAs="String">
|
||||
<value>hu</value>
|
||||
</setting>
|
||||
<setting name="port" serializeAs="String">
|
||||
<value>4510</value>
|
||||
</setting>
|
||||
<setting name="lastusedemail" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
</MSGer.tk.Settings>
|
||||
</userSettings>
|
||||
</configuration>
|
69
MSGer.tk (C#)/ChatForm.Designer.cs
generated
|
@ -28,13 +28,14 @@
|
|||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.messageTextBox = new Khendys.Controls.ExRichTextBox();
|
||||
this.messageTextBox = new MSGer.tk.ExExRichTextBox();
|
||||
this.recentMsgTextBox = new Khendys.Controls.ExRichTextBox();
|
||||
this.panel1 = new System.Windows.Forms.Panel();
|
||||
this.panel2 = new System.Windows.Forms.Panel();
|
||||
this.statusLabel = new System.Windows.Forms.Label();
|
||||
this.partnerMsg = new System.Windows.Forms.Label();
|
||||
this.partnerName = new System.Windows.Forms.Label();
|
||||
this.statusLabel = new Khendys.Controls.ExRichTextBox();
|
||||
this.partnerMsg = new Khendys.Controls.ExRichTextBox();
|
||||
this.partnerName = new Khendys.Controls.ExRichTextBox();
|
||||
this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
|
||||
this.panel2.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
|
@ -97,33 +98,57 @@
|
|||
//
|
||||
// statusLabel
|
||||
//
|
||||
this.statusLabel.AutoSize = true;
|
||||
this.statusLabel.Location = new System.Drawing.Point(9, 51);
|
||||
this.statusLabel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.statusLabel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(150)))), ((int)(((byte)(200)))));
|
||||
this.statusLabel.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.statusLabel.ForeColor = System.Drawing.Color.Black;
|
||||
this.statusLabel.HiglightColor = Khendys.Controls.RtfColor.White;
|
||||
this.statusLabel.Location = new System.Drawing.Point(9, 52);
|
||||
this.statusLabel.Multiline = false;
|
||||
this.statusLabel.Name = "statusLabel";
|
||||
this.statusLabel.Size = new System.Drawing.Size(39, 13);
|
||||
this.statusLabel.TabIndex = 2;
|
||||
this.statusLabel.Text = "Állapot";
|
||||
this.statusLabel.Size = new System.Drawing.Size(390, 16);
|
||||
this.statusLabel.TabIndex = 5;
|
||||
this.statusLabel.Text = "statusLabel";
|
||||
this.statusLabel.TextColor = Khendys.Controls.RtfColor.Black;
|
||||
//
|
||||
// partnerMsg
|
||||
//
|
||||
this.partnerMsg.AutoSize = true;
|
||||
this.partnerMsg.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.partnerMsg.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(150)))), ((int)(((byte)(200)))));
|
||||
this.partnerMsg.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.partnerMsg.ForeColor = System.Drawing.Color.Black;
|
||||
this.partnerMsg.Location = new System.Drawing.Point(9, 38);
|
||||
this.partnerMsg.HiglightColor = Khendys.Controls.RtfColor.White;
|
||||
this.partnerMsg.Location = new System.Drawing.Point(9, 30);
|
||||
this.partnerMsg.Multiline = false;
|
||||
this.partnerMsg.Name = "partnerMsg";
|
||||
this.partnerMsg.Size = new System.Drawing.Size(60, 13);
|
||||
this.partnerMsg.TabIndex = 1;
|
||||
this.partnerMsg.Size = new System.Drawing.Size(390, 24);
|
||||
this.partnerMsg.TabIndex = 4;
|
||||
this.partnerMsg.Text = "partnerMsg";
|
||||
this.partnerMsg.TextColor = Khendys.Controls.RtfColor.Black;
|
||||
//
|
||||
// partnerName
|
||||
//
|
||||
this.partnerName.AutoSize = true;
|
||||
this.partnerName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.partnerName.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(150)))), ((int)(((byte)(200)))));
|
||||
this.partnerName.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.partnerName.Font = new System.Drawing.Font("Microsoft Sans Serif", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.partnerName.ForeColor = System.Drawing.Color.Black;
|
||||
this.partnerName.Location = new System.Drawing.Point(7, 13);
|
||||
this.partnerName.HiglightColor = Khendys.Controls.RtfColor.White;
|
||||
this.partnerName.Location = new System.Drawing.Point(9, 7);
|
||||
this.partnerName.Multiline = false;
|
||||
this.partnerName.Name = "partnerName";
|
||||
this.partnerName.Size = new System.Drawing.Size(136, 25);
|
||||
this.partnerName.TabIndex = 0;
|
||||
this.partnerName.ReadOnly = true;
|
||||
this.partnerName.Size = new System.Drawing.Size(399, 25);
|
||||
this.partnerName.TabIndex = 3;
|
||||
this.partnerName.Text = "partnerName";
|
||||
this.partnerName.TextColor = Khendys.Controls.RtfColor.Black;
|
||||
//
|
||||
// openFileDialog1
|
||||
//
|
||||
this.openFileDialog1.FileName = "openFileDialog1";
|
||||
//
|
||||
// ChatForm
|
||||
//
|
||||
|
@ -140,19 +165,19 @@
|
|||
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.ChatForm_FormClosing);
|
||||
this.Load += new System.EventHandler(this.ChatForm_Load);
|
||||
this.panel2.ResumeLayout(false);
|
||||
this.panel2.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private Khendys.Controls.ExRichTextBox messageTextBox;
|
||||
private ExExRichTextBox messageTextBox;
|
||||
private Khendys.Controls.ExRichTextBox recentMsgTextBox;
|
||||
private System.Windows.Forms.Panel panel1;
|
||||
private System.Windows.Forms.Panel panel2;
|
||||
public System.Windows.Forms.Label partnerMsg;
|
||||
public System.Windows.Forms.Label partnerName;
|
||||
public System.Windows.Forms.Label statusLabel;
|
||||
public Khendys.Controls.ExRichTextBox partnerName;
|
||||
public Khendys.Controls.ExRichTextBox partnerMsg;
|
||||
public Khendys.Controls.ExRichTextBox statusLabel;
|
||||
private System.Windows.Forms.OpenFileDialog openFileDialog1;
|
||||
}
|
||||
}
|
|
@ -1,15 +1,23 @@
|
|||
using System;
|
||||
//Hangulatjelek használata
|
||||
//#define emoticons
|
||||
|
||||
using Khendys.Controls;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Diagnostics;
|
||||
using System.Drawing;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Sockets;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using HdSystemLibrary.IO;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
|
@ -32,7 +40,9 @@ namespace MSGer.tk
|
|||
if (ChatPartners.Count == 1)
|
||||
{
|
||||
partnerName.Text = UserInfo.Partners[ChatPartners[0]].Name;
|
||||
TextFormat.Parse(partnerName);
|
||||
partnerMsg.Text = UserInfo.Partners[ChatPartners[0]].Message;
|
||||
TextFormat.Parse(partnerMsg);
|
||||
switch(UserInfo.Partners[ChatPartners[0]].State)
|
||||
{
|
||||
case "0":
|
||||
|
@ -62,12 +72,16 @@ namespace MSGer.tk
|
|||
}
|
||||
}
|
||||
|
||||
public bool InternalMessageChange = false;
|
||||
public int SelectionStart = 0;
|
||||
public int SelectionLength = 0;
|
||||
public int TextLength = 0;
|
||||
private void SendMessage(object sender, KeyEventArgs e)
|
||||
{
|
||||
if (e.KeyCode != Keys.Enter || e.Shift || messageTextBox.Text.Length==0)
|
||||
//SendMessage
|
||||
if (e.KeyCode != Keys.Enter || e.Shift || messageTextBox.Text.Length == 0)
|
||||
return;
|
||||
messageTextBox.ReadOnly = true;
|
||||
//Networking.SendRequest("sendmessage", messageTextBox.Text, 2); //Még nincs kész a PHP - 2014.03.08. 0:01
|
||||
/*
|
||||
* 2014.03.08. 0:03
|
||||
* A fenti kódra válaszul a másik felhasználó esetleges új válaszát is irja be; tehát frissitse az üzeneteket
|
||||
|
@ -85,8 +99,14 @@ namespace MSGer.tk
|
|||
|
||||
private void MessageTextChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (messageTextBox.Text == "\n")
|
||||
messageTextBox.Text = "";
|
||||
if (!InternalMessageChange)
|
||||
{
|
||||
if (messageTextBox.Text == "\n")
|
||||
messageTextBox.Text = "";
|
||||
#if emoticons
|
||||
TextFormat.Parse((ExExRichTextBox)sender);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
private void OpenLink(object sender, LinkClickedEventArgs e)
|
||||
|
@ -111,11 +131,7 @@ namespace MSGer.tk
|
|||
{
|
||||
try
|
||||
{
|
||||
/*MessageBox.Show(String.Concat(PendingMessages.ToArray()));
|
||||
PendingMessages.Clear();*/
|
||||
//Thread.Sleep(2000);
|
||||
string tmpstring = "";
|
||||
//tmpstring += LastCheck.ToString(CultureInfo.InvariantCulture) + "ͦ";
|
||||
for (int i = 0; i < ChatPartners.Count; i++)
|
||||
{
|
||||
tmpstring += UserInfo.Partners[ChatPartners[i]].UserID;
|
||||
|
@ -123,9 +139,6 @@ namespace MSGer.tk
|
|||
tmpstring += ","; //Több emberrel is beszélhet
|
||||
}
|
||||
tmpstring += "ͦ"; //2014.03.27.
|
||||
//int count = PendingMessages.Count; //Külön kell tennem, mert máskülönben folyamatosan csökken, és ezért a... Hoppá... While kell...
|
||||
//for(int i=0; i<count; i++)
|
||||
//{... //Ha nincs új üzenet, akkor a Count=0, tehát egyszer sem fut le ez (tapasztalat...) - Tökéletes
|
||||
if (PendingMessages.Count == 0)
|
||||
{
|
||||
tmpstring += "NoMSG" + "ͦ";
|
||||
|
@ -134,11 +147,7 @@ namespace MSGer.tk
|
|||
{
|
||||
tmpstring += PendingMessages[0] + "ͦ"; //Nem az i-nél tevékenykedik, hanem a 0-nál
|
||||
PendingMessages.RemoveAt(0);
|
||||
//MessageBox.Show("tmpstring: " + tmpstring);
|
||||
}
|
||||
//MessageBox.Show("tmpstring: " + tmpstring);
|
||||
//MessageBox.Show("Length: " + tmpstring.Length);
|
||||
//MessageBox.Show("tmpstring encoded: " + Uri.EscapeUriString(tmpstring));
|
||||
if (tmpstring.Length > 0)
|
||||
{ //Küldje el a lekérést
|
||||
string[] response = Networking.SendRequest("updatemessages", tmpstring, 0, true).Split('ͦ');
|
||||
|
@ -147,21 +156,23 @@ namespace MSGer.tk
|
|||
//0 - Frissitési idő; 1 - Üzenetküldő; 2 - Üzenet; 3 - Üzenetküldés időpontja
|
||||
if (response[0] != "NoChange")
|
||||
{
|
||||
//if (double.TryParse(response[0], out LastCheck) == false)
|
||||
/*try
|
||||
{
|
||||
LastCheck = double.Parse(response[0], CultureInfo.InvariantCulture);
|
||||
}
|
||||
catch
|
||||
{
|
||||
MessageBox.Show("Hiba:\n" + response[0]);
|
||||
}*/
|
||||
//LastCheck = Int32.Parse(response[0]);
|
||||
//recentMsgTextBox.AppendText(response[1] + " üzenete (" + response[3] + "):\n" + response[2]);
|
||||
for (int x = 0; x + 2 < response.Length; x += 3)
|
||||
{
|
||||
//TMessage = "\n" + ((Int32.Parse(response[x + 1]) == CurrentUser.UserID) ? CurrentUser.Name : UserInfo.Partners[Int32.Parse(response[x + 1])].Name) + " üzenete (" + Program.UnixTimeToDateTime(response[x + 3]).ToString("yyyy.MM.dd. HH:mm:ss") + "):\n" + response[x + 2];
|
||||
TMessage = "\n" + ((Int32.Parse(response[x]) == CurrentUser.UserID) ? CurrentUser.Name : UserInfo.Partners[Int32.Parse(response[x])].Name) + " " + Language.GetCuurentLanguage().Strings["said"] + " (" + Program.UnixTimeToDateTime(response[x + 2]).ToString("yyyy.MM.dd. HH:mm:ss") + "):\n" + response[x + 1];
|
||||
string[] cmd = response[x + 1].Split(' ');
|
||||
switch (cmd[0])
|
||||
{
|
||||
case "//sendfile":
|
||||
string[] ipportname = cmd[1].Split(':');
|
||||
IPAddress ipAddr = IPAddress.Parse(ipportname[0]);
|
||||
var permission = new SocketPermission(NetworkAccess.Accept, TransportType.Tcp, "", SocketPermission.AllPorts);
|
||||
var ipEndPoint = new IPEndPoint(ipAddr, Int32.Parse(ipportname[1]));
|
||||
var receiverSock = new Socket(ipAddr.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
|
||||
receiverSock.Connect(ipEndPoint);
|
||||
var ns = new NetworkStream(receiverSock);
|
||||
var fs = new FileStream(ipportname[2], FileMode.Create);
|
||||
break;
|
||||
}
|
||||
TMessage = "\n" + ((Int32.Parse(response[x]) == CurrentUser.UserID) ? CurrentUser.Name : UserInfo.Partners[Int32.Parse(response[x])].Name) + " " + Language.GetCuurentLanguage().Strings["said"] + " (" + Program.UnixTimeToDateTime(response[x + 2]).ToString("yyyy.MM.dd. HH:mm:ss") + "):\n" + response[x + 1]+"\n";
|
||||
this.Invoke(new LoginForm.MyDelegate(SetThreadValues));
|
||||
}
|
||||
}
|
||||
|
@ -176,11 +187,6 @@ namespace MSGer.tk
|
|||
|
||||
private void ChatForm_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
//for(int i=0; i<ChatWindows.Count; i++)
|
||||
//{
|
||||
//if (ChatWindows[i].Equals(this))
|
||||
//ChatWindows[i] = null;
|
||||
//}
|
||||
ChatWindows.Remove(this);
|
||||
}
|
||||
|
||||
|
@ -188,10 +194,73 @@ namespace MSGer.tk
|
|||
public int SetThreadValues()
|
||||
{
|
||||
recentMsgTextBox.AppendText(TMessage);
|
||||
TextFormat.Parse(recentMsgTextBox);
|
||||
TMessage = "";
|
||||
recentMsgTextBox.SelectionStart = recentMsgTextBox.TextLength; //2014.04.10.
|
||||
recentMsgTextBox.ScrollToCaret(); //2014.04.10.
|
||||
return 0;
|
||||
}
|
||||
public void OpenSendFile(SelectPartnerForm spform)
|
||||
{
|
||||
//A küldő a szerver - 2014.06.15.
|
||||
//Fogadás: //sendfile üzenet
|
||||
if (openFileDialog1.ShowDialog() == DialogResult.Cancel)
|
||||
return;
|
||||
Stream st = new FileStream(openFileDialog1.FileName, FileMode.Open);
|
||||
try
|
||||
{
|
||||
if (CurrentUser.CopyToMemoryOnFileSend)
|
||||
{
|
||||
List<byte> buf = new List<byte>();
|
||||
int b;
|
||||
do
|
||||
{
|
||||
b = st.ReadByte();
|
||||
buf.Add((byte)b);
|
||||
}
|
||||
while (b != -1);
|
||||
st = new MemoryStream(buf.ToArray(), false);
|
||||
}
|
||||
}
|
||||
catch(OutOfMemoryException)
|
||||
{ //A MemoryStream-et nem hozza létre, ezzel elméletileg memóriát felszabadítva
|
||||
st.Seek(0, SeekOrigin.Begin);
|
||||
}
|
||||
IPHostEntry host;
|
||||
IPAddress localIP = IPAddress.Parse("127.0.0.1");
|
||||
host = Dns.GetHostEntry(Dns.GetHostName());
|
||||
foreach (IPAddress ip in host.AddressList)
|
||||
{
|
||||
if (ip.AddressFamily == AddressFamily.InterNetwork)
|
||||
{
|
||||
localIP = ip;
|
||||
break;
|
||||
}
|
||||
}
|
||||
string ret = Networking.SendRequest("setip", spform.Partners[0] + 'ͦ' + localIP.ToString() + ":" + Settings.Default.port + ":" + openFileDialog1.FileName, 0, true);
|
||||
var ipAddr = IPAddress.Parse(ret);
|
||||
Socket sListener;
|
||||
SocketPermission permission;
|
||||
permission = new SocketPermission(NetworkAccess.Accept, TransportType.Tcp, "", SocketPermission.AllPorts);
|
||||
sListener = new Socket(ipAddr.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
|
||||
var ipEndPoint = new IPEndPoint(ipAddr, Settings.Default.port);
|
||||
sListener.Listen(1);
|
||||
ST = st; //Átadja az adatfolyamot a nyilvánosabb változónak
|
||||
AsyncCallback aCallback = new AsyncCallback(SendFile_AcceptCallback);
|
||||
sListener.BeginAccept(aCallback, sListener);
|
||||
}
|
||||
private Stream ST;
|
||||
private void SendFile_AcceptCallback(IAsyncResult ar)
|
||||
{
|
||||
Socket listener = (Socket)ar.AsyncState;
|
||||
Socket handler = listener.EndAccept(ar);
|
||||
var ns = new NetworkStream(handler);
|
||||
ns.CopyFrom(ST, new CopyFromArguments(new ProgressChange(SendFile_ProgressChange)));
|
||||
}
|
||||
|
||||
private void SendFile_ProgressChange(long bytesRead, long totalBytesToRead)
|
||||
{
|
||||
Console.WriteLine("SendFile: " + bytesRead + " / " + totalBytesToRead);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -117,4 +117,7 @@
|
|||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="openFileDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
</root>
|
|
@ -23,5 +23,11 @@ namespace MSGer.tk
|
|||
public static string State = "";
|
||||
public static string UserName = "";
|
||||
public static string Email = "";
|
||||
/// <summary>
|
||||
/// Átmásolja-e a memóriába az egész fájlt a küldés előtt.
|
||||
/// Nagy méretű fájloknál nem ajánlott, különben igen a fájl esetleges elérhetetlensége miatt.
|
||||
/// 2014.06.15.
|
||||
/// </summary>
|
||||
public static bool CopyToMemoryOnFileSend = true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,9 +16,9 @@ namespace MSGer.tk
|
|||
{
|
||||
switch (e.GetType().ToString())
|
||||
{
|
||||
case "System.NullReferenceException":
|
||||
/*case "System.NullReferenceException":
|
||||
MessageBox.Show("lol");
|
||||
break;
|
||||
break;*/
|
||||
default:
|
||||
MessageBox.Show("Ismeretlen hiba történt (" + e.GetType().ToString() + ")!\n\nForrás: " + e.Source + "\nA hibaüzenet: \n" + e.Message + "\nEnnél a műveletnél: " + e.TargetSite);
|
||||
break;
|
||||
|
@ -28,9 +28,9 @@ namespace MSGer.tk
|
|||
{
|
||||
switch (e.GetType().ToString())
|
||||
{
|
||||
case "System.NullReferenceException":
|
||||
/*case "System.NullReferenceException":
|
||||
MessageBox.Show("lol");
|
||||
break;
|
||||
break;*/
|
||||
default:
|
||||
MessageBox.Show("Ismeretlen hiba történt (" + e.GetType().ToString() + ")!\n\nForrás: " + e.Source + "\nA hibaüzenet: \n" + e.Message + "\nEnnél a műveletnél: " + e.TargetSite);
|
||||
break;
|
||||
|
|
|
@ -12,8 +12,6 @@ namespace MSGer.tk
|
|||
{
|
||||
public partial class InvitePartner : Form
|
||||
{
|
||||
//string[] Codes=new string[1024];
|
||||
//List<string> Codes = new List<string>();
|
||||
public InvitePartner()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
@ -48,7 +46,6 @@ namespace MSGer.tk
|
|||
else if (Int32.Parse(response[i + 1]) == 0)
|
||||
listBox1.Items.Add("Visszaigazolásra vár - " + response[i]);
|
||||
else MessageBox.Show("Hiba:\n" + response[i] + "\n" + response[i + 1]);
|
||||
//Codes[x] = response[i];
|
||||
x++;
|
||||
}
|
||||
}
|
||||
|
@ -57,12 +54,9 @@ namespace MSGer.tk
|
|||
{
|
||||
if (listBox1.SelectedIndex == -1)
|
||||
return;
|
||||
//MessageBox.Show(listBox1.Items[listBox1.SelectedIndex].ToString());
|
||||
//string res = Networking.SendRequest("remcode", Codes[listBox1.SelectedIndex], 0, true);
|
||||
string res = Networking.SendRequest("remcode", listBox1.SelectedItem.ToString().Remove(0, listBox1.SelectedItem.ToString().IndexOf(" - ") + " - ".Length), 0, true);
|
||||
if (res.Substring(0, "Fail".Length) == "Fail")
|
||||
MessageBox.Show("A kód törlése sikertelen.\n\n" + res, "Hiba");
|
||||
//else listBox1.Items.Add(res);
|
||||
else RefreshList();
|
||||
}
|
||||
|
||||
|
@ -70,7 +64,6 @@ namespace MSGer.tk
|
|||
{
|
||||
if (listBox1.SelectedIndex == -1)
|
||||
return;
|
||||
//Clipboard.SetText(Codes[listBox1.SelectedIndex]);
|
||||
Clipboard.SetText(listBox1.SelectedItem.ToString().Remove(0, listBox1.SelectedItem.ToString().IndexOf(" - ") + " - ".Length));
|
||||
}
|
||||
|
||||
|
|
|
@ -8,8 +8,6 @@ namespace MSGer.tk
|
|||
{
|
||||
public class Language
|
||||
{ //2014.04.19.
|
||||
//public static readonly Language English = new Language("en");
|
||||
//public static readonly Language Hungarian = new Language("hu");
|
||||
|
||||
public static Dictionary<string, Language> UsedLangs = new Dictionary<string, Language>();
|
||||
|
||||
|
@ -25,7 +23,6 @@ namespace MSGer.tk
|
|||
}
|
||||
public static Language FromString(string value)
|
||||
{
|
||||
//return new Language(value);
|
||||
Language tmp = null;
|
||||
try
|
||||
{
|
||||
|
|
|
@ -31,8 +31,6 @@ namespace MSGer.tk
|
|||
registerButton.Enabled = true;
|
||||
return;
|
||||
}
|
||||
//MessageBox.Show(codeText.Text + "ͦ" + userText.Text + "ͦ" + LoginForm.CalculateMD5Hash(passText.Text) + "ͦ" + emailText.Text);
|
||||
//MessageBox.Show(Uri.EscapeUriString(codeText.Text + "ͦ" + userText.Text + "ͦ" + LoginForm.CalculateMD5Hash(passText.Text) + "ͦ" + emailText.Text));
|
||||
string response = Networking.SendRequest("register", codeText.Text + "ͦ" + userText.Text + "ͦ" + LoginForm.CalculateMD5Hash(passText.Text) + "ͦ" + emailText.Text, 2, false);
|
||||
if(response=="code")
|
||||
{
|
||||
|
|
|
@ -25,7 +25,9 @@ namespace MSGer.tk
|
|||
if (Settings.Default.email.Length != 0)
|
||||
tmp = Settings.Default.email.Split(',').ToList<string>();
|
||||
else tmp = new List<string>();
|
||||
textBox1.Text = tmp[0];
|
||||
//textBox1.Text = tmp[0];
|
||||
//textBox1.Text = tmp[tmp.Count - 1]; //2014.07.08.
|
||||
textBox1.Text = tmp[Settings.Default.lastusedemail]; //2014.07.08.
|
||||
textBox1.AutoCompleteCustomSource.AddRange(tmp.ToArray());
|
||||
}
|
||||
public LoginForm()
|
||||
|
@ -62,6 +64,11 @@ namespace MSGer.tk
|
|||
catch
|
||||
{
|
||||
}
|
||||
|
||||
//Ellenőrizzen le néhány dolgot helyileg - 2014.04.28.
|
||||
if (textBox2.Text.Length == 0)
|
||||
return;
|
||||
|
||||
// Create the thread object, passing in the Alpha.Beta method
|
||||
// via a ThreadStart delegate. This does not start the thread.
|
||||
LThread = new Thread(new ThreadStart(LoginUser));
|
||||
|
@ -212,7 +219,13 @@ namespace MSGer.tk
|
|||
|
||||
//Elmenti az E-mail-t
|
||||
if (!Settings.Default.email.Contains(UserText))
|
||||
Settings.Default.email += "," + UserText;
|
||||
{
|
||||
if (Settings.Default.email.Length != 0) //2014.07.08.
|
||||
Settings.Default.email += ",";
|
||||
Settings.Default.email += UserText;
|
||||
}
|
||||
else
|
||||
Settings.Default.lastusedemail = Settings.Default.email.Split(',').ToList<string>().IndexOf(UserText);
|
||||
Settings.Default.Save();
|
||||
//Bejelentkezés
|
||||
string[] respstr = responseString.Split('ͦ');
|
||||
|
|
|
@ -121,12 +121,17 @@
|
|||
<Compile Include="Notifier.Designer.cs">
|
||||
<DependentUpon>Notifier.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ProgressStatistic.cs" />
|
||||
<Compile Include="SettingsForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="SettingsForm.Designer.cs">
|
||||
<DependentUpon>SettingsForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="StreamHelper.cs" />
|
||||
<Compile Include="TextFormat.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="_MyNotifier.cs" />
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
|
@ -243,6 +248,12 @@
|
|||
<Install>false</Install>
|
||||
</BootstrapperPackage>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\..\RichListView\RichListView\RichListView\RichListView.csproj">
|
||||
<Project>{AE5CA7F1-D19E-479B-B06B-39C1280C5005}</Project>
|
||||
<Name>RichListView</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
|
|
@ -1,8 +1,12 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Express 2012 for Windows Desktop
|
||||
# Visual Studio Express 2013 for Windows Desktop
|
||||
VisualStudioVersion = 12.0.21005.1
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MSGer.tk", "MSGer.tk.csproj", "{F60940C0-05FC-46C0-948E-6DBECBBE38DD}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RichListView", "..\..\..\RichListView\RichListView\RichListView\RichListView.csproj", "{AE5CA7F1-D19E-479B-B06B-39C1280C5005}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
|
@ -13,6 +17,10 @@ Global
|
|||
{F60940C0-05FC-46C0-948E-6DBECBBE38DD}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{F60940C0-05FC-46C0-948E-6DBECBBE38DD}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F60940C0-05FC-46C0-948E-6DBECBBE38DD}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{AE5CA7F1-D19E-479B-B06B-39C1280C5005}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{AE5CA7F1-D19E-479B-B06B-39C1280C5005}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{AE5CA7F1-D19E-479B-B06B-39C1280C5005}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{AE5CA7F1-D19E-479B-B06B-39C1280C5005}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
|
124
MSGer.tk (C#)/MainForm.Designer.cs
generated
|
@ -30,11 +30,8 @@
|
|||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
|
||||
GlacialComponents.Controls.GLColumn glColumn3 = new GlacialComponents.Controls.GLColumn();
|
||||
GlacialComponents.Controls.GLColumn glColumn4 = new GlacialComponents.Controls.GLColumn();
|
||||
GlacialComponents.Controls.GLItem glItem2 = new GlacialComponents.Controls.GLItem();
|
||||
GlacialComponents.Controls.GLSubItem glSubItem3 = new GlacialComponents.Controls.GLSubItem();
|
||||
GlacialComponents.Controls.GLSubItem glSubItem4 = new GlacialComponents.Controls.GLSubItem();
|
||||
SzNPProjects.RichListViewColumn richListViewColumn1 = new SzNPProjects.RichListViewColumn();
|
||||
SzNPProjects.RichListViewColumn richListViewColumn2 = new SzNPProjects.RichListViewColumn();
|
||||
this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components);
|
||||
this.iconMenu = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.toolStripMenuItem4 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
|
@ -106,7 +103,6 @@
|
|||
this.segitsenAProgramTökéletesitésébenToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator13 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.névjegyToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.contactList = new GlacialComponents.Controls.GlacialList();
|
||||
this.partnerImages = new System.Windows.Forms.ImageList(this.components);
|
||||
this.partnerMenu = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.üzenetküldésToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
|
@ -122,6 +118,7 @@
|
|||
this.eseményértesitésekToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator17 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.beszélgetésnaplóMegnyitásaToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.contactList = new SzNPProjects.RichListView();
|
||||
this.iconMenu.SuspendLayout();
|
||||
this.panel2.SuspendLayout();
|
||||
this.menuStrip1.SuspendLayout();
|
||||
|
@ -350,6 +347,7 @@
|
|||
this.bezárásToolStripMenuItem.Name = "bezárásToolStripMenuItem";
|
||||
this.bezárásToolStripMenuItem.Size = new System.Drawing.Size(292, 22);
|
||||
this.bezárásToolStripMenuItem.Text = "Bezárás";
|
||||
this.bezárásToolStripMenuItem.Click += new System.EventHandler(this.bezárásToolStripMenuItem_Click);
|
||||
//
|
||||
// toolStripSeparator4
|
||||
//
|
||||
|
@ -663,94 +661,6 @@
|
|||
this.névjegyToolStripMenuItem.Text = "Névjegy";
|
||||
this.névjegyToolStripMenuItem.Click += new System.EventHandler(this.névjegyToolStripMenuItem_Click);
|
||||
//
|
||||
// contactList
|
||||
//
|
||||
this.contactList.AllowColumnResize = false;
|
||||
this.contactList.AllowMultiselect = false;
|
||||
this.contactList.AlternateBackground = System.Drawing.Color.DarkGreen;
|
||||
this.contactList.AlternatingColors = false;
|
||||
this.contactList.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.contactList.AutoHeight = false;
|
||||
this.contactList.BackColor = System.Drawing.Color.LightSkyBlue;
|
||||
this.contactList.BackgroundStretchToFit = true;
|
||||
glColumn3.ActivatedEmbeddedType = GlacialComponents.Controls.GLActivatedEmbeddedTypes.None;
|
||||
glColumn3.CheckBoxes = false;
|
||||
glColumn3.ImageIndex = -1;
|
||||
glColumn3.Name = "Image";
|
||||
glColumn3.NumericSort = false;
|
||||
glColumn3.Text = "";
|
||||
glColumn3.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
glColumn3.Width = 100;
|
||||
glColumn4.ActivatedEmbeddedType = GlacialComponents.Controls.GLActivatedEmbeddedTypes.None;
|
||||
glColumn4.CheckBoxes = false;
|
||||
glColumn4.ImageIndex = -1;
|
||||
glColumn4.Name = "Name";
|
||||
glColumn4.NumericSort = false;
|
||||
glColumn4.Text = "";
|
||||
glColumn4.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
glColumn4.Width = 400;
|
||||
this.contactList.Columns.AddRange(new GlacialComponents.Controls.GLColumn[] {
|
||||
glColumn3,
|
||||
glColumn4});
|
||||
this.contactList.ControlStyle = GlacialComponents.Controls.GLControlStyles.Normal;
|
||||
this.contactList.ForeColor = System.Drawing.Color.Black;
|
||||
this.contactList.FullRowSelect = true;
|
||||
this.contactList.GridColor = System.Drawing.Color.LightGray;
|
||||
this.contactList.GridLines = GlacialComponents.Controls.GLGridLines.gridHorizontal;
|
||||
this.contactList.GridLineStyle = GlacialComponents.Controls.GLGridLineStyles.gridNone;
|
||||
this.contactList.GridTypes = GlacialComponents.Controls.GLGridTypes.gridOnExists;
|
||||
this.contactList.HeaderHeight = 0;
|
||||
this.contactList.HeaderVisible = false;
|
||||
this.contactList.HeaderWordWrap = false;
|
||||
this.contactList.HotColumnTracking = false;
|
||||
this.contactList.HotItemTracking = true;
|
||||
this.contactList.HotTrackingColor = System.Drawing.Color.LightGray;
|
||||
this.contactList.HoverEvents = false;
|
||||
this.contactList.HoverTime = 1;
|
||||
this.contactList.ImageList = null;
|
||||
this.contactList.ItemHeight = 60;
|
||||
glItem2.BackColor = System.Drawing.Color.White;
|
||||
glItem2.ForeColor = System.Drawing.Color.Black;
|
||||
glItem2.RowBorderColor = System.Drawing.Color.Black;
|
||||
glItem2.RowBorderSize = 0;
|
||||
glSubItem3.BackColor = System.Drawing.Color.Empty;
|
||||
glSubItem3.Checked = false;
|
||||
glSubItem3.ForceText = false;
|
||||
glSubItem3.ForeColor = System.Drawing.Color.Black;
|
||||
glSubItem3.ImageAlignment = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
glSubItem3.ImageIndex = -1;
|
||||
glSubItem3.Text = "Betöltés...";
|
||||
glSubItem4.BackColor = System.Drawing.Color.Empty;
|
||||
glSubItem4.Checked = false;
|
||||
glSubItem4.ForceText = false;
|
||||
glSubItem4.ForeColor = System.Drawing.Color.Black;
|
||||
glSubItem4.ImageAlignment = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
glSubItem4.ImageIndex = -1;
|
||||
glSubItem4.Text = "";
|
||||
glItem2.SubItems.AddRange(new GlacialComponents.Controls.GLSubItem[] {
|
||||
glSubItem3,
|
||||
glSubItem4});
|
||||
glItem2.Text = "Betöltés...";
|
||||
this.contactList.Items.AddRange(new GlacialComponents.Controls.GLItem[] {
|
||||
glItem2});
|
||||
this.contactList.ItemWordWrap = true;
|
||||
this.contactList.Location = new System.Drawing.Point(0, 133);
|
||||
this.contactList.Name = "contactList";
|
||||
this.contactList.Selectable = true;
|
||||
this.contactList.SelectedTextColor = System.Drawing.Color.White;
|
||||
this.contactList.SelectionColor = System.Drawing.Color.DarkBlue;
|
||||
this.contactList.ShowBorder = false;
|
||||
this.contactList.ShowFocusRect = false;
|
||||
this.contactList.Size = new System.Drawing.Size(624, 312);
|
||||
this.contactList.SortType = GlacialComponents.Controls.SortTypes.InsertionSort;
|
||||
this.contactList.SuperFlatHeaderColor = System.Drawing.Color.White;
|
||||
this.contactList.TabIndex = 6;
|
||||
this.contactList.Text = "contactList";
|
||||
this.contactList.DoubleClick += new System.EventHandler(this.OpenSendMessage);
|
||||
this.contactList.MouseClick += new System.Windows.Forms.MouseEventHandler(this.ContactItemRightClick);
|
||||
//
|
||||
// partnerImages
|
||||
//
|
||||
this.partnerImages.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
|
||||
|
@ -852,6 +762,30 @@
|
|||
this.beszélgetésnaplóMegnyitásaToolStripMenuItem.Size = new System.Drawing.Size(237, 22);
|
||||
this.beszélgetésnaplóMegnyitásaToolStripMenuItem.Text = "Beszélgetésnapló megnyitása...";
|
||||
//
|
||||
// contactList
|
||||
//
|
||||
this.contactList.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.contactList.AutoScroll = true;
|
||||
this.contactList.AutoUpdate = true;
|
||||
this.contactList.AutoValidate = System.Windows.Forms.AutoValidate.EnablePreventFocusChange;
|
||||
this.contactList.ColumnAutoFill = true;
|
||||
richListViewColumn1.Text = null;
|
||||
richListViewColumn1.Width = 50;
|
||||
richListViewColumn2.Text = null;
|
||||
richListViewColumn2.Width = 100;
|
||||
this.contactList.Columns = new SzNPProjects.RichListViewColumn[] {
|
||||
richListViewColumn1,
|
||||
richListViewColumn2};
|
||||
this.contactList.HeaderHeight = 0;
|
||||
this.contactList.ItemHeight = 50;
|
||||
this.contactList.Location = new System.Drawing.Point(0, 134);
|
||||
this.contactList.Name = "contactList";
|
||||
this.contactList.Size = new System.Drawing.Size(624, 311);
|
||||
this.contactList.TabIndex = 8;
|
||||
this.contactList.ItemDoubleClicked += new System.EventHandler<int>(this.contactList_ItemDoubleClicked);
|
||||
//
|
||||
// MainForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
|
@ -948,7 +882,6 @@
|
|||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem1;
|
||||
private System.Windows.Forms.Panel panel1;
|
||||
private System.Windows.Forms.ImageList partnerImages;
|
||||
private GlacialComponents.Controls.GlacialList contactList;
|
||||
private System.Windows.Forms.ContextMenuStrip partnerMenu;
|
||||
private System.Windows.Forms.ToolStripMenuItem üzenetküldésToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem emailKüldéseemailToolStripMenuItem;
|
||||
|
@ -969,6 +902,7 @@
|
|||
public System.Windows.Forms.ToolStripMenuItem toolStripMenuItem4;
|
||||
public System.Windows.Forms.ToolStripMenuItem toolStripMenuItem8;
|
||||
public System.Windows.Forms.ToolStripMenuItem toolStripMenuItem9;
|
||||
private SzNPProjects.RichListView contactList;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -14,6 +14,7 @@ using Khendys.Controls;
|
|||
using System.Threading;
|
||||
using CustomUIControls;
|
||||
using System.Reflection;
|
||||
using SzNPProjects;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
|
@ -24,14 +25,13 @@ namespace MSGer.tk
|
|||
public static Thread MainThread = null;
|
||||
public static bool PartnerListThreadActive = true;
|
||||
public static ToolStripMenuItem SelectPartnerSender = null;
|
||||
//public static TaskbarNotifier taskbarNotifier;
|
||||
public static Notifier taskbarNotifier;
|
||||
public MainForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
Thread.CurrentThread.Name = "Main Thread";
|
||||
contactList.Columns[0].Width = contactList.ItemHeight; //2014.02.28.
|
||||
//this.Hide();
|
||||
contactList.Items.Add(new RichListViewItem());
|
||||
contactList.Items[0].SubItems[0].Text = "Betöltés...";
|
||||
toolStripMenuItem4.Enabled = false; //2014.04.12.
|
||||
toolStripMenuItem8.Enabled = false; //2014.04.12.
|
||||
|
||||
|
@ -117,7 +117,7 @@ namespace MSGer.tk
|
|||
névjegyToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_help_about"];
|
||||
|
||||
textBox1.Text = Language.GetCuurentLanguage().Strings["searchbar"];
|
||||
contactList.Items[0].Text = Language.GetCuurentLanguage().Strings["loading"];
|
||||
contactList.Items[0].SubItems[0].Text = Language.GetCuurentLanguage().Strings["loading"];
|
||||
|
||||
üzenetküldésToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_operations_sendmsg"];
|
||||
emailKüldéseemailToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["contact_sendemail"];
|
||||
|
@ -139,6 +139,9 @@ namespace MSGer.tk
|
|||
}
|
||||
#endregion
|
||||
|
||||
//2014.05.16.
|
||||
new TextFormat();
|
||||
|
||||
//2014.04.25.
|
||||
string response = Networking.SendRequest("checkforupdates",
|
||||
Assembly.GetExecutingAssembly().GetName().Version.ToString().Replace(".", ""),
|
||||
|
@ -174,25 +177,7 @@ namespace MSGer.tk
|
|||
|
||||
// Start the thread
|
||||
LThread.Start();
|
||||
|
||||
/*taskbarNotifier = new TaskbarNotifier();
|
||||
//if (File.Exists("skin.bmp")) //Kötelező megadni!
|
||||
if (!File.Exists("popup-bg.bmp"))
|
||||
MessageBox.Show("Hiba: Hiányzik a popup-bg.bmp fájl.");
|
||||
if (!File.Exists("close.bmp"))
|
||||
MessageBox.Show("Hiba: Hiányzik a close.bmp fájl.");
|
||||
taskbarNotifier.SetBackgroundBitmap("popup-bg.bmp",
|
||||
Color.FromArgb(255, 0, 255));
|
||||
//if (File.Exists("close.bmp")) //Kötelező megadni!
|
||||
taskbarNotifier.SetCloseBitmap("close.bmp",
|
||||
Color.FromArgb(255, 0, 255), new Point(180, 10));
|
||||
taskbarNotifier.TitleRectangle = new Rectangle(40, 9, 70, 25);
|
||||
taskbarNotifier.ContentRectangle = new Rectangle(8, 41, 133, 68);
|
||||
taskbarNotifier.TitleClick += new EventHandler(PopupClick);
|
||||
taskbarNotifier.ContentClick += new EventHandler(PopupClick);
|
||||
taskbarNotifier.CloseClick += new EventHandler(PopupCloseClick);
|
||||
taskbarNotifier.Show("Bejelentkezés", "Sikeresen bejelentkeztél a programba.", 500, 5000, 500);*/
|
||||
|
||||
|
||||
if (Settings.Default.windowstate == 1) //2014.04.18.
|
||||
this.WindowState = FormWindowState.Maximized;
|
||||
else if (Settings.Default.windowstate == 2)
|
||||
|
@ -210,13 +195,11 @@ namespace MSGer.tk
|
|||
|
||||
private void PopupCloseClick(object sender, EventArgs e)
|
||||
{
|
||||
//throw new NotImplementedException();
|
||||
MessageBox.Show("Close");
|
||||
}
|
||||
|
||||
private void PopupClick(object sender, EventArgs e)
|
||||
{
|
||||
//throw new NotImplementedException();
|
||||
MessageBox.Show("Click");
|
||||
}
|
||||
|
||||
|
@ -237,7 +220,8 @@ namespace MSGer.tk
|
|||
toolStripMenuItem8.Enabled = true; //2014.04.12.
|
||||
contactList.Items.Clear(); //2014.03.05.
|
||||
contactList.Enabled = false; //2014.03.05.
|
||||
contactList.Items.Add("Betöltés..."); //2014.03.05.
|
||||
contactList.Items.Add(new RichListViewItem());
|
||||
contactList.Items[0].SubItems[0].Text = "Betöltés...";
|
||||
this.Show();
|
||||
PartnerListThreadActive = true; //2014.02.28. - Törli, majd újra létrehozza a listafrissitő thread-et, ha újra bejelentkezett
|
||||
// Create the thread object, passing in the Alpha.Beta method
|
||||
|
@ -275,7 +259,6 @@ namespace MSGer.tk
|
|||
SelectPartnerSender = (ToolStripMenuItem)sender;
|
||||
DialogResult dr = new DialogResult();
|
||||
var form = new SelectPartnerForm();
|
||||
//dr = (new SelectPartnerForm()).ShowDialog();
|
||||
dr = form.ShowDialog();
|
||||
if (dr == DialogResult.OK)
|
||||
{
|
||||
|
@ -304,6 +287,7 @@ namespace MSGer.tk
|
|||
if (SelectPartnerSender == fájlKüldéseToolStripMenuItem)
|
||||
{
|
||||
tmpchat.Show();
|
||||
tmpchat.OpenSendFile(form);
|
||||
}
|
||||
if (SelectPartnerSender == azonnaliÜzenetKüldéseToolStripMenuItem)
|
||||
{
|
||||
|
@ -312,12 +296,6 @@ namespace MSGer.tk
|
|||
}
|
||||
}
|
||||
}
|
||||
public int UpdateContactList() //2014.03.01.
|
||||
{
|
||||
contactList.Refresh();
|
||||
contactList.Enabled = true; //2014.03.05. - A thread első futásához kell
|
||||
return 0;
|
||||
}
|
||||
public delegate int MyDelegate();
|
||||
public void UpdatePartnerList()
|
||||
{
|
||||
|
@ -329,79 +307,77 @@ namespace MSGer.tk
|
|||
CurrentUser.State = row[2];
|
||||
CurrentUser.UserName = row[3];
|
||||
CurrentUser.Email = row[4];
|
||||
List<GLItem> listViewItem = new List<GLItem>();
|
||||
List<int> tmp;
|
||||
if (Settings.Default.picupdatetime.Length != 0)
|
||||
tmp = Settings.Default.picupdatetime.Split(',').Select(s => Int32.Parse(s)).ToList<int>();
|
||||
else tmp = new List<int>();
|
||||
List<UserInfo> tmpuser = UserInfo.Partners;
|
||||
int i = 0;
|
||||
for (int x = 5; x < row.Length-1; x += 6) //Ezt az egyetlen számot (x+=3) kell módositani, és máris alkalmazkodott a hozzáadott adathoz
|
||||
{ //-1: 2014.04.04. - A végére is odarak egy elválasztó jelet, ami miatt eggyel több elem lesz a tömbben
|
||||
if (row.Length < 5) //2014.03.19. - Ha nincs ismerőse
|
||||
break;
|
||||
for (int y = 0; y < UserInfo.Partners.Count; y++)
|
||||
{
|
||||
if(UserInfo.Partners[y]!=null && Int32.Parse(row[x+3])==UserInfo.Partners[y].UserID) //Ha null az értéke, már nem is ellenőrzi a másik feltételt
|
||||
{ //Átrendezi a tömböt az új sorrendbe - Ha változott - 2014.03.07.
|
||||
tmpuser[i] = UserInfo.Partners[y];
|
||||
tmpuser[i].ListID = i; //És elmenti az új helyét - 2014.03.13.
|
||||
}
|
||||
}
|
||||
if(i>=tmpuser.Count)
|
||||
{
|
||||
tmpuser.Add(new UserInfo());
|
||||
}
|
||||
tmpuser[i].UserID = Int32.Parse(row[x + 3]); //Beállitja az ID-ket
|
||||
tmpuser[i].ListID = i;
|
||||
tmpuser[i].Name = row[x];
|
||||
tmpuser[i].Message = row[x + 1];
|
||||
tmpuser[i].State = row[x + 2];
|
||||
tmpuser[i].UserName = row[x + 4];
|
||||
tmpuser[i].Email = row[x + 5];
|
||||
string state = "";
|
||||
if (row[x + 2] == "1")
|
||||
state = " (Elérhető)";
|
||||
if (row[x + 2] == "2")
|
||||
state = " (Elfoglalt)";
|
||||
if (row[x + 2] == "3")
|
||||
state = " (Nincs a gépnél)";
|
||||
listViewItem.Add(new GLItem());
|
||||
PictureBox item = new PictureBox();
|
||||
tmpuser[i].PicUpdateTime = tmp[i];
|
||||
string imgpath = tmpuser[i].GetImage();
|
||||
if (imgpath!="noimage.png" || File.Exists("noimage.png")) //2014.03.13.
|
||||
item.ImageLocation = imgpath;
|
||||
else
|
||||
MessageBox.Show("Az alap profilkép nem található.\nMásold be a noimage.png-t, vagy telepitsd újra a programot.\n(Ez az üzenet minden egyes ismerősödnél megjelenik.)", "Hiba");
|
||||
item.SizeMode = PictureBoxSizeMode.StretchImage;
|
||||
|
||||
listViewItem[i].SubItems[0].Control = item;
|
||||
listViewItem[i].SubItems[1].Text = row[x] + " " + state + "\n" + row[x + 1];
|
||||
i++;
|
||||
}
|
||||
Settings.Default.picupdatetime = String.Join(",", tmp.Select(ix => ix.ToString()).ToArray());
|
||||
UserInfo.Partners = tmpuser;
|
||||
contactList.Items.Clear();
|
||||
try
|
||||
if (!this.IsDisposed)
|
||||
{
|
||||
contactList.Items.AddRange(listViewItem.ToArray()); //2014.03.01. - ToArray: 2014.03.21.
|
||||
}
|
||||
catch(ObjectDisposedException)
|
||||
{
|
||||
break;
|
||||
}
|
||||
try
|
||||
{ //Ha már leállt a program, hibát ir
|
||||
this.Invoke(new MyDelegate(UpdateContactList));
|
||||
}
|
||||
catch (ObjectDisposedException)
|
||||
{
|
||||
break;
|
||||
}
|
||||
catch (InvalidOperationException)
|
||||
{
|
||||
break;
|
||||
this.Invoke((MethodInvoker)delegate
|
||||
{
|
||||
List<int> tmp;
|
||||
if (Settings.Default.picupdatetime.Length != 0)
|
||||
tmp = Settings.Default.picupdatetime.Split(',').Select(s => Int32.Parse(s)).ToList<int>();
|
||||
else tmp = new List<int>();
|
||||
List<UserInfo> tmpuser = UserInfo.Partners;
|
||||
contactList.AutoUpdate = false;
|
||||
var items = new List<Control[]>();
|
||||
int i = 0;
|
||||
for (int x = 5; x < row.Length - 1; x += 6) //Ezt az egyetlen számot (x+=3) kell módositani, és máris alkalmazkodott a hozzáadott adathoz
|
||||
{ //-1: 2014.04.04. - A végére is odarak egy elválasztó jelet, ami miatt eggyel több elem lesz a tömbben
|
||||
if (row.Length < 5) //2014.03.19. - Ha nincs ismerőse
|
||||
break;
|
||||
for (int y = 0; y < UserInfo.Partners.Count; y++)
|
||||
{
|
||||
if (UserInfo.Partners[y] != null && Int32.Parse(row[x + 3]) == UserInfo.Partners[y].UserID) //Ha null az értéke, már nem is ellenőrzi a másik feltételt
|
||||
{ //Átrendezi a tömböt az új sorrendbe - Ha változott - 2014.03.07.
|
||||
tmpuser[i] = UserInfo.Partners[y];
|
||||
tmpuser[i].ListID = i; //És elmenti az új helyét - 2014.03.13.
|
||||
}
|
||||
}
|
||||
if (i >= tmpuser.Count)
|
||||
{
|
||||
tmpuser.Add(new UserInfo());
|
||||
}
|
||||
tmpuser[i].UserID = Int32.Parse(row[x + 3]); //Beállitja az ID-ket
|
||||
tmpuser[i].ListID = i;
|
||||
tmpuser[i].Name = row[x];
|
||||
tmpuser[i].Message = row[x + 1];
|
||||
tmpuser[i].State = row[x + 2];
|
||||
tmpuser[i].UserName = row[x + 4];
|
||||
tmpuser[i].Email = row[x + 5];
|
||||
string state = "";
|
||||
if (row[x + 2] == "1")
|
||||
state = " (Elérhető)";
|
||||
if (row[x + 2] == "2")
|
||||
state = " (Elfoglalt)";
|
||||
if (row[x + 2] == "3")
|
||||
state = " (Nincs a gépnél)";
|
||||
var oneitem = new Control[2];
|
||||
PictureBox item = new PictureBox();
|
||||
if (tmp.Count <= 1) //2014.04.28.
|
||||
tmp.Add(0);
|
||||
tmpuser[i].PicUpdateTime = tmp[i];
|
||||
string imgpath = tmpuser[i].GetImage();
|
||||
if (imgpath != "noimage.png" || File.Exists("noimage.png")) //2014.03.13.
|
||||
item.ImageLocation = imgpath;
|
||||
else
|
||||
MessageBox.Show("Az alap profilkép nem található.\nMásold be a noimage.png-t, vagy telepitsd újra a programot.\n(Ez az üzenet minden egyes ismerősödnél megjelenik.)", "Hiba");
|
||||
item.SizeMode = PictureBoxSizeMode.StretchImage;
|
||||
|
||||
oneitem[0] = item;
|
||||
ExRichTextBox item2 = new ExRichTextBox();
|
||||
item2.Text = row[x] + " " + state + "\n" + row[x + 1];
|
||||
item2 = TextFormat.Parse(item2);
|
||||
oneitem[1] = item2;
|
||||
items.Add(oneitem);
|
||||
i++;
|
||||
}
|
||||
Settings.Default.picupdatetime = String.Join(",", tmp.Select(ix => ix.ToString()).ToArray());
|
||||
UserInfo.Partners = tmpuser;
|
||||
contactList.Items.Clear();
|
||||
this.contactList.SetItems(items);
|
||||
contactList.AutoUpdate = true;
|
||||
contactList.Enabled = true;
|
||||
contactList.Refresh();
|
||||
});
|
||||
}
|
||||
Thread.Sleep(5000);
|
||||
}
|
||||
|
@ -420,17 +396,17 @@ namespace MSGer.tk
|
|||
}
|
||||
public static int RightClickedPartner = -1;
|
||||
private void ContactItemRightClick(object sender, MouseEventArgs e)
|
||||
{
|
||||
{/*
|
||||
if (e.Button != MouseButtons.Right || contactList.HotItemIndex>=contactList.Items.Count)
|
||||
{ //Igy nem reagál arra sem, ha üres területre kattintunk
|
||||
return;
|
||||
}
|
||||
contactList.Items[contactList.HotItemIndex].Selected = true;
|
||||
RightClickedPartner = contactList.HotItemIndex;
|
||||
partnerMenu.Show(Cursor.Position);
|
||||
partnerMenu.Show(Cursor.Position);*/
|
||||
}
|
||||
private void OpenSendMessage(object sender, EventArgs e) //2014.03.02. 0:17
|
||||
{
|
||||
{/*
|
||||
int tmp = contactList.HotItemIndex;
|
||||
if (RightClickedPartner == -1)
|
||||
RightClickedPartner = tmp;
|
||||
|
@ -458,7 +434,7 @@ namespace MSGer.tk
|
|||
ChatForm.ChatWindows[ChatNum].Focus();
|
||||
}
|
||||
|
||||
RightClickedPartner = -1;
|
||||
RightClickedPartner = -1;*/
|
||||
}
|
||||
|
||||
private void OnMainFormLoad(object sender, EventArgs e)
|
||||
|
@ -511,5 +487,42 @@ namespace MSGer.tk
|
|||
{
|
||||
(new SettingsForm()).Show();
|
||||
}
|
||||
|
||||
private void contactList_ItemDoubleClicked(object sender, int e)
|
||||
{
|
||||
int tmp = e;
|
||||
if (RightClickedPartner == -1)
|
||||
RightClickedPartner = tmp;
|
||||
if (RightClickedPartner == -1 || RightClickedPartner >= contactList.Items.Count)
|
||||
return;
|
||||
//Üzenetküldő form
|
||||
int ChatNum = -1;
|
||||
for (int i = 0; i < ChatForm.ChatWindows.Count; i++)
|
||||
{
|
||||
if (ChatForm.ChatWindows[i].ChatPartners.Count == 1 && ChatForm.ChatWindows[i].ChatPartners.Contains(RightClickedPartner))
|
||||
{ //Vele, és csak vele beszél
|
||||
ChatNum = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (ChatNum == -1)
|
||||
{ //Nincs még chatablaka
|
||||
ChatForm.ChatWindows.Add(new ChatForm());
|
||||
ChatForm.ChatWindows[ChatForm.ChatWindows.Count - 1].ChatPartners.Add(RightClickedPartner);
|
||||
ChatForm.ChatWindows[ChatForm.ChatWindows.Count - 1].Show();
|
||||
}
|
||||
else
|
||||
{
|
||||
ChatForm.ChatWindows[ChatNum].Show();
|
||||
ChatForm.ChatWindows[ChatNum].Focus();
|
||||
}
|
||||
|
||||
RightClickedPartner = -1;
|
||||
}
|
||||
|
||||
private void bezárásToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.Hide();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,12 +1,17 @@
|
|||
using System;
|
||||
//#define LOCAL_SERVER
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using SzNPProjects;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
|
@ -44,7 +49,6 @@ namespace MSGer.tk
|
|||
public static DateTime UnixTimeToDateTime(string text)
|
||||
{
|
||||
double seconds = double.Parse(text, CultureInfo.InvariantCulture);
|
||||
//return Epoch.AddSeconds(seconds);
|
||||
//2014.04.25.
|
||||
DateTime time = Epoch.AddSeconds(seconds);
|
||||
time = DateTime.SpecifyKind(time, DateTimeKind.Utc);
|
||||
|
@ -70,7 +74,7 @@ namespace MSGer.tk
|
|||
Settings.Default.Save();
|
||||
}
|
||||
}
|
||||
CurrentUser.UserID = 0;
|
||||
//CurrentUser.UserID = 0; - Felesleges, néha megáll itt, és úgy hajt végre egy bejelentkezést igénylő lekérést
|
||||
Application.Exit();
|
||||
Application.ExitThread();
|
||||
MessageBox.Show("Hiba: Nem sikerült leállítani a programot.");
|
||||
|
@ -78,12 +82,16 @@ namespace MSGer.tk
|
|||
}
|
||||
static class Networking
|
||||
{
|
||||
private static int Tries = 0;
|
||||
public static string SendRequest(string action, string data, int remnum, bool loggedin) //2014.02.18.
|
||||
{
|
||||
//HttpWebRequest httpWReq =
|
||||
// (HttpWebRequest)WebRequest.Create("http://msger.tk/client.php");
|
||||
#if LOCAL_SERVER //2014.07.07. 22:00
|
||||
HttpWebRequest httpWReq =
|
||||
(HttpWebRequest)WebRequest.Create("http://localhost/ChatWithWords/client.php");
|
||||
#else
|
||||
HttpWebRequest httpWReq =
|
||||
(HttpWebRequest)WebRequest.Create("http://msger.url.ph/client.php");
|
||||
#endif
|
||||
|
||||
ASCIIEncoding encoding = new ASCIIEncoding();
|
||||
string postData = "action=" + action;
|
||||
|
@ -114,8 +122,12 @@ namespace MSGer.tk
|
|||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
//MessageBox.Show("Hiba az ismerőslista frissítésekor:\n", e.Message);
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["error_network"]+":\n" + e.Message+"\n\n"+Language.GetCuurentLanguage().Strings["error_network2"], Language.GetCuurentLanguage().Strings["error"]); //2014.04.25.
|
||||
if (Tries > 10)
|
||||
{
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["error_network"] + ":\n" + e.Message + "\n\n" + Language.GetCuurentLanguage().Strings["error_network2"], Language.GetCuurentLanguage().Strings["error"]); //2014.04.25.
|
||||
Tries = 0;
|
||||
}
|
||||
Tries++;
|
||||
return SendRequest(action, data, remnum, loggedin); //Újrapróbálkozik
|
||||
}
|
||||
string responseString;
|
||||
|
@ -123,26 +135,4 @@ namespace MSGer.tk
|
|||
return responseString;
|
||||
}
|
||||
}
|
||||
class ThreadSetVar
|
||||
{ //2014.04.11.
|
||||
private Control SetVarTarget;
|
||||
private string SetVarValue;
|
||||
private delegate void SetVarDelegate();
|
||||
public ThreadSetVar(Control variable, object value, Control sender)
|
||||
{
|
||||
if (value is String)
|
||||
{
|
||||
SetVarTarget = variable;
|
||||
SetVarValue = (string)value;
|
||||
sender.Invoke(new SetVarDelegate(IntThreadSetVar));
|
||||
}
|
||||
}
|
||||
private void IntThreadSetVar()
|
||||
{ //Belső meghívás
|
||||
if (SetVarValue is String)
|
||||
{
|
||||
SetVarTarget.Text = (string)SetVarValue;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -86,30 +86,6 @@ namespace MSGer.tk
|
|||
selectedPartners.Text.Remove(x, 1);
|
||||
}
|
||||
Partners = selectedPartners.Text.Split(';');
|
||||
/*
|
||||
string[] partners = selectedPartners.Text.Split(';');
|
||||
ChatForm tmpchat = new ChatForm();
|
||||
for (int i = 0; i < partners.Length; i++)
|
||||
{
|
||||
if (partners[i] != "") //2014.04.17.
|
||||
{
|
||||
for (int j = 0; j < UserInfo.Partners.Count; j++)
|
||||
{
|
||||
int tmp; //2014.04.17.
|
||||
if (!Int32.TryParse(partners[i], out tmp))
|
||||
tmp = -1;
|
||||
if (UserInfo.Partners[j].UserName == partners[i] || UserInfo.Partners[j].Email == partners[i] || UserInfo.Partners[j].UserID == tmp)
|
||||
{ //Egyezik a név, E-mail vagy ID - UserName: 2014.04.17.
|
||||
tmpchat.ChatPartners.Add(j); //A Partners-beli indexét adja meg
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (tmpchat.ChatPartners.Count != 0)
|
||||
{
|
||||
ChatForm.ChatWindows.Add(tmpchat);
|
||||
tmpchat.Show();
|
||||
}*/
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
24
MSGer.tk (C#)/Settings.Designer.cs
generated
|
@ -70,5 +70,29 @@ namespace MSGer.tk {
|
|||
this["lang"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("4510")]
|
||||
public int port {
|
||||
get {
|
||||
return ((int)(this["port"]));
|
||||
}
|
||||
set {
|
||||
this["port"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("0")]
|
||||
public int lastusedemail {
|
||||
get {
|
||||
return ((int)(this["lastusedemail"]));
|
||||
}
|
||||
set {
|
||||
this["lastusedemail"] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -14,5 +14,11 @@
|
|||
<Setting Name="lang" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">hu</Value>
|
||||
</Setting>
|
||||
<Setting Name="port" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">4510</Value>
|
||||
</Setting>
|
||||
<Setting Name="lastusedemail" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">0</Value>
|
||||
</Setting>
|
||||
</Settings>
|
||||
</SettingsFile>
|
|
@ -29,7 +29,6 @@ namespace MSGer.tk
|
|||
{
|
||||
case 0:
|
||||
//Személyes
|
||||
//MessageBox.Show("Személyes...");
|
||||
panel1.ScrollControlIntoView(personal);
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -13,7 +13,6 @@ namespace MSGer.tk
|
|||
* 2014.03.07.
|
||||
* Az összes szükséges felhasználó szükséges adatai
|
||||
*/
|
||||
//public int ChatID { get; set; } //A chatablakának azonosítója
|
||||
public int UserID { get; set; } //Az egész rendszerben egyedi azonosítója
|
||||
public int ListID { get; set; } //A listabeli azonosítója
|
||||
public static List<UserInfo> Partners = new List<UserInfo>();
|
||||
|
@ -30,10 +29,8 @@ namespace MSGer.tk
|
|||
List<int> list=GetChatWindows();
|
||||
for (int i = 0; i < list.Count; i++)
|
||||
{
|
||||
//if (ChatForm.ChatWindows != null && ChatID < ChatForm.ChatWindows.Count && ChatForm.ChatWindows[ChatID] != null && !ChatForm.ChatWindows[ChatID].IsDisposed)
|
||||
if (ChatForm.ChatWindows != null && ChatForm.ChatWindows[list[i]] != null && !ChatForm.ChatWindows[list[i]].IsDisposed)
|
||||
{ //ChatForm
|
||||
new ThreadSetVar(ChatForm.ChatWindows[list[i]].partnerName, value, Program.MainF);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -51,10 +48,8 @@ namespace MSGer.tk
|
|||
List<int> list = GetChatWindows();
|
||||
for (int i = 0; i < list.Count; i++)
|
||||
{
|
||||
//if (ChatForm.ChatWindows != null && ChatID < ChatForm.ChatWindows.Count && ChatForm.ChatWindows[ChatID] != null && !ChatForm.ChatWindows[ChatID].IsDisposed)
|
||||
if (ChatForm.ChatWindows != null && ChatForm.ChatWindows[list[i]] != null && !ChatForm.ChatWindows[list[i]].IsDisposed)
|
||||
{ //ChatForm
|
||||
new ThreadSetVar(ChatForm.ChatWindows[list[i]].partnerMsg, value, Program.MainF);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -72,7 +67,6 @@ namespace MSGer.tk
|
|||
List<int> list = GetChatWindows();
|
||||
for (int i = 0; i < list.Count; i++)
|
||||
{
|
||||
//if (ChatForm.ChatWindows != null && ChatID < ChatForm.ChatWindows.Count && ChatForm.ChatWindows[ChatID] != null && !ChatForm.ChatWindows[ChatID].IsDisposed)
|
||||
if (ChatForm.ChatWindows != null && ChatForm.ChatWindows[list[i]] != null && !ChatForm.ChatWindows[list[i]].IsDisposed)
|
||||
{ //ChatForm
|
||||
string tmp = "Hiba";
|
||||
|
@ -91,7 +85,6 @@ namespace MSGer.tk
|
|||
tmp = Language.GetCuurentLanguage().Strings["menu_file_status_away"];
|
||||
break;
|
||||
}
|
||||
new ThreadSetVar(ChatForm.ChatWindows[list[i]].statusLabel, tmp, Program.MainF);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -22,6 +22,12 @@
|
|||
<setting name="lang" serializeAs="String">
|
||||
<value>hu</value>
|
||||
</setting>
|
||||
<setting name="port" serializeAs="String">
|
||||
<value>4510</value>
|
||||
</setting>
|
||||
<setting name="lastusedemail" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
</MSGer.tk.Settings>
|
||||
</userSettings>
|
||||
</configuration>
|
|
@ -22,6 +22,12 @@
|
|||
<setting name="lang" serializeAs="String">
|
||||
<value>hu</value>
|
||||
</setting>
|
||||
<setting name="port" serializeAs="String">
|
||||
<value>4510</value>
|
||||
</setting>
|
||||
<setting name="lastusedemail" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
</MSGer.tk.Settings>
|
||||
</userSettings>
|
||||
</configuration>
|
|
@ -20,3 +20,27 @@ D:\Z - Norbi cucca\0 Projektek\MSGer.tk\MSGer.tk (C#)\bin\Debug\Khendys.Controls
|
|||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\MSGer.tk (C#)\obj\Debug\MSGer.tk.AddPartner.resources
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\MSGer.tk (C#)\obj\Debug\MSGer.tk.AboutBox1.resources
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\MSGer.tk (C#)\obj\Debug\MSGer.tk.SettingsForm.resources
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\bin\Debug\MSGer.tk.exe.config
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.exe
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.pdb
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\bin\Debug\MSGer.tk.exe
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\bin\Debug\MSGer.tk.pdb
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\bin\Debug\GlacialList.dll
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\bin\Debug\Khendys.Controls.ExRichTextBox.dll
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\bin\Debug\GlacialList.pdb
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\bin\Debug\Khendys.Controls.ExRichTextBox.pdb
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.csprojResolveAssemblyReference.cache
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.AboutBox1.resources
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.AddPartner.resources
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.ChatForm.resources
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.InvitePartner.resources
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.LoginForm_RegistrationForm.resources
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.MainForm.resources
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.LoginForm.resources
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.Notifier.resources
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.Properties.Resources.resources
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.SelectPartnerForm.resources
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.SettingsForm.resources
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\obj\Debug\MSGer.tk.csproj.GenerateResource.Cache
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\bin\Debug\RichListView.dll
|
||||
D:\Z - Norbi cucca\0 Projektek\MSGer.tk\0 Repository\MSGer.tk (C#)\bin\Debug\RichListView.pdb
|
||||
|
|
29
Versions/Less Closed Beta/v2.0/Changelog.txt
Normal file
|
@ -0,0 +1,29 @@
|
|||
v2.0 - 2014.04.28., 05.16., egészen 06.15.-ig sokszor, 07.07., 07.08.
|
||||
----
|
||||
- ExRichTextBox mindenhol, ahol hangulatjelek és egyéb formázás lesz
|
||||
- Osztály(ok) a formázáshoz
|
||||
- Saját listanézet használható formában (két nap után igazi felfrissülés volt, mire összehoztam a thread-ekkel)
|
||||
- Hangulatjelek? Hangulatjelek!
|
||||
-- Hangulatjelek mindenhol! Kivéve néhány helyet
|
||||
-- Az üzenetíráskor egyelőre nem tudtam megoldani, ezért ott kikapcsoltam, de az üzenet elküldésekor láthatóvá válik
|
||||
- Fájlküldés socketekkel
|
||||
-- A küldő fél a szerver
|
||||
-- Nagy valószinűséggel nem működik
|
||||
- Most már csak 10 próbálkozás után írja ki a hálózati hibákat, így nem jeleníti meg olyan gyakran
|
||||
- Most már megjeleníti a legutóbb használt nevet
|
||||
-- Eddig a legelőször használtat mutatta, ami mindig üres volt a felépítésének köszönhetően
|
||||
-- Most már nem az, és a legutolsót mutatja (lastusedemail setting)
|
||||
- Nagytakarítás a kódban (0,02 MB-tal kisebb, mint előtte)
|
||||
- Bezárás menüpont működőképes
|
||||
|
||||
v2.1 Tervek:
|
||||
----
|
||||
- Angol fordítás
|
||||
|
||||
v3.0 Tervek:
|
||||
----
|
||||
- http://www.codeproject.com/Articles/16009/A-Much-Easier-to-Use-ListView HELYETT saját - Megvalósítva
|
||||
- TransparencyKey használata a kerekített sarkokhoz; külön megjelenítési mód, ha teljes képernyős, és ha nem
|
||||
- Hangulatjelek animálása
|
||||
- Egy gomb a hangulatjelek írásközbeni megjelenítésére; vagy egy checkbox; vagy inkább tán egy külön doboz, amibe írja
|
||||
- Fájlküldést megoldani
|
190
Versions/Less Closed Beta/v2.0/Post-Cleanup/MSGer.tk (C#)/AboutBox1.Designer.cs
generated
Normal file
|
@ -0,0 +1,190 @@
|
|||
namespace MSGer.tk
|
||||
{
|
||||
partial class AboutBox1
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AboutBox1));
|
||||
this.tableLayoutPanel = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.logoPictureBox = new System.Windows.Forms.PictureBox();
|
||||
this.labelProductName = new System.Windows.Forms.Label();
|
||||
this.labelVersion = new System.Windows.Forms.Label();
|
||||
this.labelCopyright = new System.Windows.Forms.Label();
|
||||
this.labelLicenseLink = new System.Windows.Forms.LinkLabel();
|
||||
this.textBoxDescription = new System.Windows.Forms.TextBox();
|
||||
this.okButton = new System.Windows.Forms.Button();
|
||||
this.tableLayoutPanel.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// tableLayoutPanel
|
||||
//
|
||||
this.tableLayoutPanel.ColumnCount = 2;
|
||||
this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33F));
|
||||
this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 67F));
|
||||
this.tableLayoutPanel.Controls.Add(this.logoPictureBox, 0, 0);
|
||||
this.tableLayoutPanel.Controls.Add(this.labelProductName, 1, 0);
|
||||
this.tableLayoutPanel.Controls.Add(this.labelVersion, 1, 1);
|
||||
this.tableLayoutPanel.Controls.Add(this.labelCopyright, 1, 2);
|
||||
this.tableLayoutPanel.Controls.Add(this.labelLicenseLink, 1, 3);
|
||||
this.tableLayoutPanel.Controls.Add(this.textBoxDescription, 1, 4);
|
||||
this.tableLayoutPanel.Controls.Add(this.okButton, 1, 5);
|
||||
this.tableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tableLayoutPanel.Location = new System.Drawing.Point(9, 9);
|
||||
this.tableLayoutPanel.Name = "tableLayoutPanel";
|
||||
this.tableLayoutPanel.RowCount = 6;
|
||||
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
|
||||
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
|
||||
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
|
||||
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
|
||||
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
|
||||
this.tableLayoutPanel.Size = new System.Drawing.Size(417, 265);
|
||||
this.tableLayoutPanel.TabIndex = 0;
|
||||
//
|
||||
// logoPictureBox
|
||||
//
|
||||
this.logoPictureBox.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.logoPictureBox.Image = ((System.Drawing.Image)(resources.GetObject("logoPictureBox.Image")));
|
||||
this.logoPictureBox.Location = new System.Drawing.Point(3, 3);
|
||||
this.logoPictureBox.Name = "logoPictureBox";
|
||||
this.tableLayoutPanel.SetRowSpan(this.logoPictureBox, 6);
|
||||
this.logoPictureBox.Size = new System.Drawing.Size(131, 259);
|
||||
this.logoPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
|
||||
this.logoPictureBox.TabIndex = 12;
|
||||
this.logoPictureBox.TabStop = false;
|
||||
//
|
||||
// labelProductName
|
||||
//
|
||||
this.labelProductName.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.labelProductName.Location = new System.Drawing.Point(143, 0);
|
||||
this.labelProductName.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
|
||||
this.labelProductName.MaximumSize = new System.Drawing.Size(0, 17);
|
||||
this.labelProductName.Name = "labelProductName";
|
||||
this.labelProductName.Size = new System.Drawing.Size(271, 17);
|
||||
this.labelProductName.TabIndex = 19;
|
||||
this.labelProductName.Text = "Product Name";
|
||||
this.labelProductName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// labelVersion
|
||||
//
|
||||
this.labelVersion.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.labelVersion.Location = new System.Drawing.Point(143, 26);
|
||||
this.labelVersion.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
|
||||
this.labelVersion.MaximumSize = new System.Drawing.Size(0, 17);
|
||||
this.labelVersion.Name = "labelVersion";
|
||||
this.labelVersion.Size = new System.Drawing.Size(271, 17);
|
||||
this.labelVersion.TabIndex = 0;
|
||||
this.labelVersion.Text = "Version";
|
||||
this.labelVersion.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// labelCopyright
|
||||
//
|
||||
this.labelCopyright.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.labelCopyright.Location = new System.Drawing.Point(143, 52);
|
||||
this.labelCopyright.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
|
||||
this.labelCopyright.MaximumSize = new System.Drawing.Size(0, 17);
|
||||
this.labelCopyright.Name = "labelCopyright";
|
||||
this.labelCopyright.Size = new System.Drawing.Size(271, 17);
|
||||
this.labelCopyright.TabIndex = 21;
|
||||
this.labelCopyright.Text = "Copyright";
|
||||
this.labelCopyright.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// labelLicenseLink
|
||||
//
|
||||
this.labelLicenseLink.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.labelLicenseLink.LinkColor = System.Drawing.Color.Blue;
|
||||
this.labelLicenseLink.Location = new System.Drawing.Point(143, 78);
|
||||
this.labelLicenseLink.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
|
||||
this.labelLicenseLink.MaximumSize = new System.Drawing.Size(0, 17);
|
||||
this.labelLicenseLink.Name = "labelLicenseLink";
|
||||
this.labelLicenseLink.Size = new System.Drawing.Size(271, 17);
|
||||
this.labelLicenseLink.TabIndex = 22;
|
||||
this.labelLicenseLink.TabStop = true;
|
||||
this.labelLicenseLink.Text = "License Link";
|
||||
this.labelLicenseLink.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
this.labelLicenseLink.VisitedLinkColor = System.Drawing.Color.Blue;
|
||||
this.labelLicenseLink.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.labelLicenseLink_LinkClicked);
|
||||
//
|
||||
// textBoxDescription
|
||||
//
|
||||
this.textBoxDescription.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.textBoxDescription.Location = new System.Drawing.Point(143, 107);
|
||||
this.textBoxDescription.Margin = new System.Windows.Forms.Padding(6, 3, 3, 3);
|
||||
this.textBoxDescription.Multiline = true;
|
||||
this.textBoxDescription.Name = "textBoxDescription";
|
||||
this.textBoxDescription.ReadOnly = true;
|
||||
this.textBoxDescription.ScrollBars = System.Windows.Forms.ScrollBars.Both;
|
||||
this.textBoxDescription.Size = new System.Drawing.Size(271, 126);
|
||||
this.textBoxDescription.TabIndex = 23;
|
||||
this.textBoxDescription.TabStop = false;
|
||||
this.textBoxDescription.Text = "Description";
|
||||
//
|
||||
// okButton
|
||||
//
|
||||
this.okButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.okButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||
this.okButton.Location = new System.Drawing.Point(339, 239);
|
||||
this.okButton.Name = "okButton";
|
||||
this.okButton.Size = new System.Drawing.Size(75, 23);
|
||||
this.okButton.TabIndex = 24;
|
||||
this.okButton.Text = "&OK";
|
||||
//
|
||||
// AboutBox1
|
||||
//
|
||||
this.AcceptButton = this.okButton;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(435, 283);
|
||||
this.Controls.Add(this.tableLayoutPanel);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "AboutBox1";
|
||||
this.Padding = new System.Windows.Forms.Padding(9);
|
||||
this.ShowIcon = false;
|
||||
this.ShowInTaskbar = false;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||
this.Text = "AboutBox1";
|
||||
this.tableLayoutPanel.ResumeLayout(false);
|
||||
this.tableLayoutPanel.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel;
|
||||
private System.Windows.Forms.PictureBox logoPictureBox;
|
||||
private System.Windows.Forms.Label labelProductName;
|
||||
private System.Windows.Forms.Label labelVersion;
|
||||
private System.Windows.Forms.Label labelCopyright;
|
||||
private System.Windows.Forms.TextBox textBoxDescription;
|
||||
private System.Windows.Forms.Button okButton;
|
||||
private System.Windows.Forms.LinkLabel labelLicenseLink;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,122 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
partial class AboutBox1 : Form
|
||||
{
|
||||
public AboutBox1()
|
||||
{
|
||||
InitializeComponent();
|
||||
this.Text = String.Format(Language.GetCuurentLanguage().Strings["about"], AssemblyTitle);
|
||||
this.labelProductName.Text = AssemblyProduct;
|
||||
this.labelVersion.Text = String.Format(Language.GetCuurentLanguage().Strings["about_version"], AssemblyVersion);
|
||||
this.labelCopyright.Text = AssemblyCopyright;
|
||||
|
||||
labelLicenseLink.Text = "https://www.gnu.org/copyleft/gpl.html"; //2014.04.18. - Frissitve: 2014.04.25.
|
||||
List<string> desc = new List<string>(); //2014.04.18.
|
||||
desc.Add(Language.GetCuurentLanguage().Strings["about_programmer"]); //2014.04.18.
|
||||
desc.Add("SzNP");
|
||||
desc.Add("http://sznp.tk");
|
||||
desc.Add("");
|
||||
desc.Add(Language.GetCuurentLanguage().Strings["about_specialthanks"]);
|
||||
desc.Add("Jonathan Kay");
|
||||
desc.Add("http://messengergeek.com");
|
||||
desc.Add(Language.GetCuurentLanguage().Strings["about_specthanks1"]);
|
||||
desc.Add("");
|
||||
desc.Add(Language.GetCuurentLanguage().Strings["about_specthanks2"]);
|
||||
textBoxDescription.Lines = desc.ToArray();
|
||||
}
|
||||
|
||||
#region Assembly Attribute Accessors
|
||||
|
||||
public string AssemblyTitle
|
||||
{
|
||||
get
|
||||
{
|
||||
object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyTitleAttribute), false);
|
||||
if (attributes.Length > 0)
|
||||
{
|
||||
AssemblyTitleAttribute titleAttribute = (AssemblyTitleAttribute)attributes[0];
|
||||
if (titleAttribute.Title != "")
|
||||
{
|
||||
return titleAttribute.Title;
|
||||
}
|
||||
}
|
||||
return System.IO.Path.GetFileNameWithoutExtension(Assembly.GetExecutingAssembly().CodeBase);
|
||||
}
|
||||
}
|
||||
|
||||
public string AssemblyVersion
|
||||
{
|
||||
get
|
||||
{
|
||||
return Assembly.GetExecutingAssembly().GetName().Version.ToString();
|
||||
}
|
||||
}
|
||||
|
||||
public string AssemblyDescription
|
||||
{
|
||||
get
|
||||
{
|
||||
object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyDescriptionAttribute), false);
|
||||
if (attributes.Length == 0)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
return ((AssemblyDescriptionAttribute)attributes[0]).Description;
|
||||
}
|
||||
}
|
||||
|
||||
public string AssemblyProduct
|
||||
{
|
||||
get
|
||||
{
|
||||
object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyProductAttribute), false);
|
||||
if (attributes.Length == 0)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
return ((AssemblyProductAttribute)attributes[0]).Product;
|
||||
}
|
||||
}
|
||||
|
||||
public string AssemblyCopyright
|
||||
{
|
||||
get
|
||||
{
|
||||
object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false);
|
||||
if (attributes.Length == 0)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
return ((AssemblyCopyrightAttribute)attributes[0]).Copyright;
|
||||
}
|
||||
}
|
||||
|
||||
public string AssemblyCompany
|
||||
{
|
||||
get
|
||||
{
|
||||
object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCompanyAttribute), false);
|
||||
if (attributes.Length == 0)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
return ((AssemblyCompanyAttribute)attributes[0]).Company;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
private void labelLicenseLink_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
|
||||
{
|
||||
System.Diagnostics.Process.Start(labelLicenseLink.Text);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,604 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="logoPictureBox.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
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
|
||||
AAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
175
Versions/Less Closed Beta/v2.0/Post-Cleanup/MSGer.tk (C#)/AddPartner.Designer.cs
generated
Normal file
|
@ -0,0 +1,175 @@
|
|||
namespace MSGer.tk
|
||||
{
|
||||
partial class AddPartner
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
GlacialComponents.Controls.GLColumn glColumn2 = new GlacialComponents.Controls.GLColumn();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.nameText = new System.Windows.Forms.TextBox();
|
||||
this.searchbtn = new System.Windows.Forms.Button();
|
||||
this.glacialList1 = new GlacialComponents.Controls.GlacialList();
|
||||
this.gobtn = new System.Windows.Forms.Button();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.label1.ForeColor = System.Drawing.Color.Blue;
|
||||
this.label1.Location = new System.Drawing.Point(13, 13);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(174, 25);
|
||||
this.label1.TabIndex = 0;
|
||||
this.label1.Text = "Ismerős felvétele";
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.label2.ForeColor = System.Drawing.Color.Black;
|
||||
this.label2.Location = new System.Drawing.Point(18, 86);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(174, 16);
|
||||
this.label2.TabIndex = 1;
|
||||
this.label2.Text = "Név/E-mail/Felhasználónév";
|
||||
//
|
||||
// nameText
|
||||
//
|
||||
this.nameText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.nameText.Location = new System.Drawing.Point(18, 106);
|
||||
this.nameText.Name = "nameText";
|
||||
this.nameText.Size = new System.Drawing.Size(270, 20);
|
||||
this.nameText.TabIndex = 2;
|
||||
//
|
||||
// searchbtn
|
||||
//
|
||||
this.searchbtn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.searchbtn.Location = new System.Drawing.Point(297, 104);
|
||||
this.searchbtn.Name = "searchbtn";
|
||||
this.searchbtn.Size = new System.Drawing.Size(75, 23);
|
||||
this.searchbtn.TabIndex = 3;
|
||||
this.searchbtn.Text = "Keresés";
|
||||
this.searchbtn.UseVisualStyleBackColor = true;
|
||||
this.searchbtn.Click += new System.EventHandler(this.searchbtn_Click);
|
||||
//
|
||||
// glacialList1
|
||||
//
|
||||
this.glacialList1.AllowColumnResize = true;
|
||||
this.glacialList1.AllowMultiselect = false;
|
||||
this.glacialList1.AlternateBackground = System.Drawing.Color.DarkGreen;
|
||||
this.glacialList1.AlternatingColors = false;
|
||||
this.glacialList1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.glacialList1.AutoHeight = true;
|
||||
this.glacialList1.BackColor = System.Drawing.SystemColors.ControlLightLight;
|
||||
this.glacialList1.BackgroundStretchToFit = true;
|
||||
glColumn2.ActivatedEmbeddedType = GlacialComponents.Controls.GLActivatedEmbeddedTypes.None;
|
||||
glColumn2.CheckBoxes = false;
|
||||
glColumn2.ImageIndex = -1;
|
||||
glColumn2.Name = "UserName";
|
||||
glColumn2.NumericSort = false;
|
||||
glColumn2.Text = "Felhasználónév";
|
||||
glColumn2.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
glColumn2.Width = 200;
|
||||
this.glacialList1.Columns.AddRange(new GlacialComponents.Controls.GLColumn[] {
|
||||
glColumn2});
|
||||
this.glacialList1.ControlStyle = GlacialComponents.Controls.GLControlStyles.Normal;
|
||||
this.glacialList1.FullRowSelect = true;
|
||||
this.glacialList1.GridColor = System.Drawing.Color.LightGray;
|
||||
this.glacialList1.GridLines = GlacialComponents.Controls.GLGridLines.gridBoth;
|
||||
this.glacialList1.GridLineStyle = GlacialComponents.Controls.GLGridLineStyles.gridSolid;
|
||||
this.glacialList1.GridTypes = GlacialComponents.Controls.GLGridTypes.gridOnExists;
|
||||
this.glacialList1.HeaderHeight = 22;
|
||||
this.glacialList1.HeaderVisible = true;
|
||||
this.glacialList1.HeaderWordWrap = false;
|
||||
this.glacialList1.HotColumnTracking = false;
|
||||
this.glacialList1.HotItemTracking = true;
|
||||
this.glacialList1.HotTrackingColor = System.Drawing.Color.LightGray;
|
||||
this.glacialList1.HoverEvents = false;
|
||||
this.glacialList1.HoverTime = 1;
|
||||
this.glacialList1.ImageList = null;
|
||||
this.glacialList1.ItemHeight = 17;
|
||||
this.glacialList1.ItemWordWrap = false;
|
||||
this.glacialList1.Location = new System.Drawing.Point(18, 152);
|
||||
this.glacialList1.Name = "glacialList1";
|
||||
this.glacialList1.Selectable = true;
|
||||
this.glacialList1.SelectedTextColor = System.Drawing.Color.White;
|
||||
this.glacialList1.SelectionColor = System.Drawing.Color.DarkBlue;
|
||||
this.glacialList1.ShowBorder = true;
|
||||
this.glacialList1.ShowFocusRect = false;
|
||||
this.glacialList1.Size = new System.Drawing.Size(354, 272);
|
||||
this.glacialList1.SortType = GlacialComponents.Controls.SortTypes.InsertionSort;
|
||||
this.glacialList1.SuperFlatHeaderColor = System.Drawing.Color.White;
|
||||
this.glacialList1.TabIndex = 4;
|
||||
this.glacialList1.Text = "glacialList1";
|
||||
this.glacialList1.Click += new System.EventHandler(this.glacialList1_Click);
|
||||
//
|
||||
// gobtn
|
||||
//
|
||||
this.gobtn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.gobtn.Location = new System.Drawing.Point(297, 427);
|
||||
this.gobtn.Name = "gobtn";
|
||||
this.gobtn.Size = new System.Drawing.Size(75, 23);
|
||||
this.gobtn.TabIndex = 5;
|
||||
this.gobtn.Text = "Felvétel";
|
||||
this.gobtn.UseVisualStyleBackColor = true;
|
||||
this.gobtn.Click += new System.EventHandler(this.gobtn_Click);
|
||||
//
|
||||
// AddPartner
|
||||
//
|
||||
this.AcceptButton = this.searchbtn;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BackColor = System.Drawing.Color.LightSkyBlue;
|
||||
this.ClientSize = new System.Drawing.Size(384, 462);
|
||||
this.Controls.Add(this.gobtn);
|
||||
this.Controls.Add(this.glacialList1);
|
||||
this.Controls.Add(this.searchbtn);
|
||||
this.Controls.Add(this.nameText);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Name = "AddPartner";
|
||||
this.Text = "Ismerős felvétele";
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.TextBox nameText;
|
||||
private System.Windows.Forms.Button searchbtn;
|
||||
private GlacialComponents.Controls.GlacialList glacialList1;
|
||||
private System.Windows.Forms.Button gobtn;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,78 @@
|
|||
using GlacialComponents.Controls;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
public partial class AddPartner : Form
|
||||
{
|
||||
public AddPartner()
|
||||
{
|
||||
InitializeComponent();
|
||||
this.Text = Language.GetCuurentLanguage().Strings["addcontact"];
|
||||
label1.Text = Language.GetCuurentLanguage().Strings["addcontact"];
|
||||
label2.Text = Language.GetCuurentLanguage().Strings["addcontact_nameemail"];
|
||||
searchbtn.Text = Language.GetCuurentLanguage().Strings["addcontact_search"];
|
||||
glacialList1.Columns[0].Text = Language.GetCuurentLanguage().Strings["reg_username"];
|
||||
gobtn.Text = Language.GetCuurentLanguage().Strings["addcontact_add"];
|
||||
}
|
||||
|
||||
string[] username;
|
||||
int[] uid;
|
||||
string[] message;
|
||||
int[] online;
|
||||
string[] shownname;
|
||||
string[] email;
|
||||
|
||||
private void searchbtn_Click(object sender, EventArgs e)
|
||||
{
|
||||
glacialList1.Items.Clear();
|
||||
string[] people = Networking.SendRequest("findpeople", nameText.Text, 0, true).Split('ͦ'); //2014.04.18. 0:07 - Még nem készítettem el
|
||||
for (int x = 0, y = 0; x + 5 < people.Length; x += 6, y++)
|
||||
{
|
||||
username = new string[people.Length / 6];
|
||||
uid = new int[people.Length / 6];
|
||||
message = new string[people.Length / 6];
|
||||
online = new int[people.Length / 6];
|
||||
shownname = new string[people.Length / 6];
|
||||
email = new string[people.Length / 6];
|
||||
|
||||
username[y] = people[x];
|
||||
uid[y] = Int32.Parse(people[x + 1]);
|
||||
message[y] = people[x + 2];
|
||||
online[y] = Int32.Parse(people[x + 3]);
|
||||
shownname[y] = people[x + 4];
|
||||
email[y] = people[x + 5];
|
||||
|
||||
glacialList1.Items.Add(username[y]);
|
||||
}
|
||||
}
|
||||
|
||||
private void glacialList1_Click(object sender, EventArgs e)
|
||||
{
|
||||
int item = glacialList1.HotItemIndex;
|
||||
if (item >= glacialList1.Items.Count)
|
||||
return;
|
||||
//2014.04.18. - Partnerinformáció mutatása
|
||||
}
|
||||
|
||||
private void gobtn_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (glacialList1.SelectedItems.Count == 0)
|
||||
return;
|
||||
string username = ((GLItem)glacialList1.SelectedItems[0]).Text;
|
||||
string response = Networking.SendRequest("adduser", username, 0, true);
|
||||
if (Networking.SendRequest("adduser", username, 0, true) == "Success")
|
||||
MessageBox.Show("Felhasználó felvéve az ismerőseid közé.");
|
||||
else
|
||||
MessageBox.Show("Nem sikerült felvenni a felhasználót az ismerőseid közé.\nLehet, hogy már felvetted, vagy valami hiba történt.\n(" + response + ")");
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,120 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
|
@ -0,0 +1,33 @@
|
|||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
|
||||
<section name="MSGer.tk.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
|
||||
</sectionGroup>
|
||||
</configSections>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
|
||||
</startup>
|
||||
<userSettings>
|
||||
<MSGer.tk.Settings>
|
||||
<setting name="email" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="picupdatetime" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="windowstate" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
<setting name="lang" serializeAs="String">
|
||||
<value>hu</value>
|
||||
</setting>
|
||||
<setting name="port" serializeAs="String">
|
||||
<value>4510</value>
|
||||
</setting>
|
||||
<setting name="lastusedemail" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
</MSGer.tk.Settings>
|
||||
</userSettings>
|
||||
</configuration>
|
183
Versions/Less Closed Beta/v2.0/Post-Cleanup/MSGer.tk (C#)/ChatForm.Designer.cs
generated
Normal file
|
@ -0,0 +1,183 @@
|
|||
namespace MSGer.tk
|
||||
{
|
||||
partial class ChatForm
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.messageTextBox = new MSGer.tk.ExExRichTextBox();
|
||||
this.recentMsgTextBox = new Khendys.Controls.ExRichTextBox();
|
||||
this.panel1 = new System.Windows.Forms.Panel();
|
||||
this.panel2 = new System.Windows.Forms.Panel();
|
||||
this.statusLabel = new Khendys.Controls.ExRichTextBox();
|
||||
this.partnerMsg = new Khendys.Controls.ExRichTextBox();
|
||||
this.partnerName = new Khendys.Controls.ExRichTextBox();
|
||||
this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
|
||||
this.panel2.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// messageTextBox
|
||||
//
|
||||
this.messageTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.messageTextBox.BackColor = System.Drawing.Color.White;
|
||||
this.messageTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.messageTextBox.DetectUrls = false;
|
||||
this.messageTextBox.ForeColor = System.Drawing.Color.Black;
|
||||
this.messageTextBox.HiglightColor = Khendys.Controls.RtfColor.White;
|
||||
this.messageTextBox.Location = new System.Drawing.Point(147, 310);
|
||||
this.messageTextBox.Name = "messageTextBox";
|
||||
this.messageTextBox.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.Vertical;
|
||||
this.messageTextBox.Size = new System.Drawing.Size(418, 75);
|
||||
this.messageTextBox.TabIndex = 0;
|
||||
this.messageTextBox.Text = "";
|
||||
this.messageTextBox.TextColor = Khendys.Controls.RtfColor.Black;
|
||||
this.messageTextBox.TextChanged += new System.EventHandler(this.MessageTextChanged);
|
||||
this.messageTextBox.KeyDown += new System.Windows.Forms.KeyEventHandler(this.SendMessage);
|
||||
//
|
||||
// recentMsgTextBox
|
||||
//
|
||||
this.recentMsgTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.recentMsgTextBox.BackColor = System.Drawing.Color.White;
|
||||
this.recentMsgTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.recentMsgTextBox.ForeColor = System.Drawing.Color.Black;
|
||||
this.recentMsgTextBox.HiglightColor = Khendys.Controls.RtfColor.White;
|
||||
this.recentMsgTextBox.Location = new System.Drawing.Point(147, 76);
|
||||
this.recentMsgTextBox.Name = "recentMsgTextBox";
|
||||
this.recentMsgTextBox.ReadOnly = true;
|
||||
this.recentMsgTextBox.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.Vertical;
|
||||
this.recentMsgTextBox.Size = new System.Drawing.Size(418, 228);
|
||||
this.recentMsgTextBox.TabIndex = 1;
|
||||
this.recentMsgTextBox.Text = "";
|
||||
this.recentMsgTextBox.TextColor = Khendys.Controls.RtfColor.Black;
|
||||
this.recentMsgTextBox.LinkClicked += new System.Windows.Forms.LinkClickedEventHandler(this.OpenLink);
|
||||
//
|
||||
// panel1
|
||||
//
|
||||
this.panel1.Dock = System.Windows.Forms.DockStyle.Left;
|
||||
this.panel1.Location = new System.Drawing.Point(0, 0);
|
||||
this.panel1.Name = "panel1";
|
||||
this.panel1.Size = new System.Drawing.Size(141, 422);
|
||||
this.panel1.TabIndex = 3;
|
||||
//
|
||||
// panel2
|
||||
//
|
||||
this.panel2.Controls.Add(this.statusLabel);
|
||||
this.panel2.Controls.Add(this.partnerMsg);
|
||||
this.panel2.Controls.Add(this.partnerName);
|
||||
this.panel2.Dock = System.Windows.Forms.DockStyle.Top;
|
||||
this.panel2.Location = new System.Drawing.Point(141, 0);
|
||||
this.panel2.Name = "panel2";
|
||||
this.panel2.Size = new System.Drawing.Size(423, 70);
|
||||
this.panel2.TabIndex = 4;
|
||||
//
|
||||
// statusLabel
|
||||
//
|
||||
this.statusLabel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.statusLabel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(150)))), ((int)(((byte)(200)))));
|
||||
this.statusLabel.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.statusLabel.ForeColor = System.Drawing.Color.Black;
|
||||
this.statusLabel.HiglightColor = Khendys.Controls.RtfColor.White;
|
||||
this.statusLabel.Location = new System.Drawing.Point(9, 52);
|
||||
this.statusLabel.Multiline = false;
|
||||
this.statusLabel.Name = "statusLabel";
|
||||
this.statusLabel.Size = new System.Drawing.Size(390, 16);
|
||||
this.statusLabel.TabIndex = 5;
|
||||
this.statusLabel.Text = "statusLabel";
|
||||
this.statusLabel.TextColor = Khendys.Controls.RtfColor.Black;
|
||||
//
|
||||
// partnerMsg
|
||||
//
|
||||
this.partnerMsg.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.partnerMsg.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(150)))), ((int)(((byte)(200)))));
|
||||
this.partnerMsg.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.partnerMsg.ForeColor = System.Drawing.Color.Black;
|
||||
this.partnerMsg.HiglightColor = Khendys.Controls.RtfColor.White;
|
||||
this.partnerMsg.Location = new System.Drawing.Point(9, 30);
|
||||
this.partnerMsg.Multiline = false;
|
||||
this.partnerMsg.Name = "partnerMsg";
|
||||
this.partnerMsg.Size = new System.Drawing.Size(390, 24);
|
||||
this.partnerMsg.TabIndex = 4;
|
||||
this.partnerMsg.Text = "partnerMsg";
|
||||
this.partnerMsg.TextColor = Khendys.Controls.RtfColor.Black;
|
||||
//
|
||||
// partnerName
|
||||
//
|
||||
this.partnerName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.partnerName.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(150)))), ((int)(((byte)(200)))));
|
||||
this.partnerName.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.partnerName.Font = new System.Drawing.Font("Microsoft Sans Serif", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.partnerName.ForeColor = System.Drawing.Color.Black;
|
||||
this.partnerName.HiglightColor = Khendys.Controls.RtfColor.White;
|
||||
this.partnerName.Location = new System.Drawing.Point(9, 7);
|
||||
this.partnerName.Multiline = false;
|
||||
this.partnerName.Name = "partnerName";
|
||||
this.partnerName.ReadOnly = true;
|
||||
this.partnerName.Size = new System.Drawing.Size(399, 25);
|
||||
this.partnerName.TabIndex = 3;
|
||||
this.partnerName.Text = "partnerName";
|
||||
this.partnerName.TextColor = Khendys.Controls.RtfColor.Black;
|
||||
//
|
||||
// openFileDialog1
|
||||
//
|
||||
this.openFileDialog1.FileName = "openFileDialog1";
|
||||
//
|
||||
// ChatForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(150)))), ((int)(((byte)(200)))));
|
||||
this.ClientSize = new System.Drawing.Size(564, 422);
|
||||
this.Controls.Add(this.panel2);
|
||||
this.Controls.Add(this.panel1);
|
||||
this.Controls.Add(this.recentMsgTextBox);
|
||||
this.Controls.Add(this.messageTextBox);
|
||||
this.Name = "ChatForm";
|
||||
this.Text = "Beszélgetés";
|
||||
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.ChatForm_FormClosing);
|
||||
this.Load += new System.EventHandler(this.ChatForm_Load);
|
||||
this.panel2.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private ExExRichTextBox messageTextBox;
|
||||
private Khendys.Controls.ExRichTextBox recentMsgTextBox;
|
||||
private System.Windows.Forms.Panel panel1;
|
||||
private System.Windows.Forms.Panel panel2;
|
||||
public Khendys.Controls.ExRichTextBox partnerName;
|
||||
public Khendys.Controls.ExRichTextBox partnerMsg;
|
||||
public Khendys.Controls.ExRichTextBox statusLabel;
|
||||
private System.Windows.Forms.OpenFileDialog openFileDialog1;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,266 @@
|
|||
//Hangulatjelek használata
|
||||
//#define emoticons
|
||||
|
||||
using Khendys.Controls;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Diagnostics;
|
||||
using System.Drawing;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Sockets;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using HdSystemLibrary.IO;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
public partial class ChatForm : Form
|
||||
{
|
||||
public static List<ChatForm> ChatWindows = new List<ChatForm>();
|
||||
public List<int> ChatPartners = new List<int>();
|
||||
public List<string> PendingMessages = new List<string>();
|
||||
public Thread UpdateT;
|
||||
public ChatForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
//Amint létrehozom, ez a kód lefut - Nem számit, hogy megjelenik-e
|
||||
}
|
||||
|
||||
private void ChatForm_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (ChatPartners.Count == 0)
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["error"] + ": " + Language.GetCuurentLanguage().Strings["chat_nowindow"]);
|
||||
if (ChatPartners.Count == 1)
|
||||
{
|
||||
partnerName.Text = UserInfo.Partners[ChatPartners[0]].Name;
|
||||
TextFormat.Parse(partnerName);
|
||||
partnerMsg.Text = UserInfo.Partners[ChatPartners[0]].Message;
|
||||
TextFormat.Parse(partnerMsg);
|
||||
switch(UserInfo.Partners[ChatPartners[0]].State)
|
||||
{
|
||||
case "0":
|
||||
{
|
||||
statusLabel.Text = Language.GetCuurentLanguage().Strings["offline"];
|
||||
break;
|
||||
}
|
||||
case "1":
|
||||
{
|
||||
statusLabel.Text = Language.GetCuurentLanguage().Strings["menu_file_status_online"];
|
||||
break;
|
||||
}
|
||||
case "2":
|
||||
{
|
||||
statusLabel.Text = Language.GetCuurentLanguage().Strings["menu_file_status_busy"];
|
||||
break;
|
||||
}
|
||||
case "3":
|
||||
{
|
||||
statusLabel.Text = Language.GetCuurentLanguage().Strings["menu_file_status_away"];
|
||||
break;
|
||||
}
|
||||
}
|
||||
UpdateT = new Thread(new ThreadStart(UpdateMessages));
|
||||
UpdateT.Name = "Message Update Thread (" + partnerName.Text + ")";
|
||||
UpdateT.Start();
|
||||
}
|
||||
}
|
||||
|
||||
public bool InternalMessageChange = false;
|
||||
public int SelectionStart = 0;
|
||||
public int SelectionLength = 0;
|
||||
public int TextLength = 0;
|
||||
private void SendMessage(object sender, KeyEventArgs e)
|
||||
{
|
||||
//SendMessage
|
||||
if (e.KeyCode != Keys.Enter || e.Shift || messageTextBox.Text.Length == 0)
|
||||
return;
|
||||
messageTextBox.ReadOnly = true;
|
||||
/*
|
||||
* 2014.03.08. 0:03
|
||||
* A fenti kódra válaszul a másik felhasználó esetleges új válaszát is irja be; tehát frissitse az üzeneteket
|
||||
* Az üzenetellenőrző thread folyamatosan fusson, amint végrehajtotta a parancsokat, kezdje újra (nincs Thread.Sleep)
|
||||
*
|
||||
* 2014.03.19.
|
||||
* Csinálja úgy, mint a képeknél, hogy a legutóbbi üzenetlekérés dátumához igazodjon, és csak a legújabb üzeneteket
|
||||
* töltse le
|
||||
*/
|
||||
PendingMessages.Add(messageTextBox.Text);
|
||||
messageTextBox.Focus();
|
||||
messageTextBox.Text = "";
|
||||
messageTextBox.ReadOnly = false;
|
||||
}
|
||||
|
||||
private void MessageTextChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (!InternalMessageChange)
|
||||
{
|
||||
if (messageTextBox.Text == "\n")
|
||||
messageTextBox.Text = "";
|
||||
#if emoticons
|
||||
TextFormat.Parse((ExExRichTextBox)sender);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
private void OpenLink(object sender, LinkClickedEventArgs e)
|
||||
{
|
||||
Process.Start(e.LinkText);
|
||||
}
|
||||
public void UpdateMessages()
|
||||
{
|
||||
/*
|
||||
* 2014.03.21.
|
||||
* updatemessages: küldje el, hogy mikor kapott utoljára üzenetet ÉS az új üzeneteket,
|
||||
* a szerver pedig először válaszoljon a szerinte aktuális időponttal,
|
||||
* majd küldje el az annál újabb üzeneteket
|
||||
* getrecentmessages: ezt csak önmagában küldje,
|
||||
* a szerver pedig válaszoljon a legutóbbi x üzenettel,
|
||||
* ahol x egy beállitható szám (alapból 10)
|
||||
* ----
|
||||
* Az új üzeneteket egy listában tárolja, majd amikor továbbitja őket, törölje a listából fokozatosan
|
||||
* (ahogy összeállitja a karakterláncot, mindig törölje azt az üzenetet a listából
|
||||
*/
|
||||
while (ChatWindows.Count != 0 && !this.IsDisposed && MainForm.MainThread.IsAlive)
|
||||
{
|
||||
try
|
||||
{
|
||||
string tmpstring = "";
|
||||
for (int i = 0; i < ChatPartners.Count; i++)
|
||||
{
|
||||
tmpstring += UserInfo.Partners[ChatPartners[i]].UserID;
|
||||
if (i + 1 < ChatPartners.Count)
|
||||
tmpstring += ","; //Több emberrel is beszélhet
|
||||
}
|
||||
tmpstring += "ͦ"; //2014.03.27.
|
||||
if (PendingMessages.Count == 0)
|
||||
{
|
||||
tmpstring += "NoMSG" + "ͦ";
|
||||
}
|
||||
while (PendingMessages.Count > 0)
|
||||
{
|
||||
tmpstring += PendingMessages[0] + "ͦ"; //Nem az i-nél tevékenykedik, hanem a 0-nál
|
||||
PendingMessages.RemoveAt(0);
|
||||
}
|
||||
if (tmpstring.Length > 0)
|
||||
{ //Küldje el a lekérést
|
||||
string[] response = Networking.SendRequest("updatemessages", tmpstring, 0, true).Split('ͦ');
|
||||
if (response == null || response.Length == 0 || response[0] == "Fail")
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["msgupdate_error"]);
|
||||
//0 - Frissitési idő; 1 - Üzenetküldő; 2 - Üzenet; 3 - Üzenetküldés időpontja
|
||||
if (response[0] != "NoChange")
|
||||
{
|
||||
for (int x = 0; x + 2 < response.Length; x += 3)
|
||||
{
|
||||
string[] cmd = response[x + 1].Split(' ');
|
||||
switch (cmd[0])
|
||||
{
|
||||
case "//sendfile":
|
||||
string[] ipportname = cmd[1].Split(':');
|
||||
IPAddress ipAddr = IPAddress.Parse(ipportname[0]);
|
||||
var permission = new SocketPermission(NetworkAccess.Accept, TransportType.Tcp, "", SocketPermission.AllPorts);
|
||||
var ipEndPoint = new IPEndPoint(ipAddr, Int32.Parse(ipportname[1]));
|
||||
var receiverSock = new Socket(ipAddr.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
|
||||
receiverSock.Connect(ipEndPoint);
|
||||
var ns = new NetworkStream(receiverSock);
|
||||
var fs = new FileStream(ipportname[2], FileMode.Create);
|
||||
break;
|
||||
}
|
||||
TMessage = "\n" + ((Int32.Parse(response[x]) == CurrentUser.UserID) ? CurrentUser.Name : UserInfo.Partners[Int32.Parse(response[x])].Name) + " " + Language.GetCuurentLanguage().Strings["said"] + " (" + Program.UnixTimeToDateTime(response[x + 2]).ToString("yyyy.MM.dd. HH:mm:ss") + "):\n" + response[x + 1]+"\n";
|
||||
this.Invoke(new LoginForm.MyDelegate(SetThreadValues));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch(InvalidOperationException)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void ChatForm_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
ChatWindows.Remove(this);
|
||||
}
|
||||
|
||||
public static string TMessage;
|
||||
public int SetThreadValues()
|
||||
{
|
||||
recentMsgTextBox.AppendText(TMessage);
|
||||
TextFormat.Parse(recentMsgTextBox);
|
||||
TMessage = "";
|
||||
recentMsgTextBox.SelectionStart = recentMsgTextBox.TextLength; //2014.04.10.
|
||||
recentMsgTextBox.ScrollToCaret(); //2014.04.10.
|
||||
return 0;
|
||||
}
|
||||
public void OpenSendFile(SelectPartnerForm spform)
|
||||
{
|
||||
//A küldő a szerver - 2014.06.15.
|
||||
//Fogadás: //sendfile üzenet
|
||||
if (openFileDialog1.ShowDialog() == DialogResult.Cancel)
|
||||
return;
|
||||
Stream st = new FileStream(openFileDialog1.FileName, FileMode.Open);
|
||||
try
|
||||
{
|
||||
if (CurrentUser.CopyToMemoryOnFileSend)
|
||||
{
|
||||
List<byte> buf = new List<byte>();
|
||||
int b;
|
||||
do
|
||||
{
|
||||
b = st.ReadByte();
|
||||
buf.Add((byte)b);
|
||||
}
|
||||
while (b != -1);
|
||||
st = new MemoryStream(buf.ToArray(), false);
|
||||
}
|
||||
}
|
||||
catch(OutOfMemoryException)
|
||||
{ //A MemoryStream-et nem hozza létre, ezzel elméletileg memóriát felszabadítva
|
||||
st.Seek(0, SeekOrigin.Begin);
|
||||
}
|
||||
IPHostEntry host;
|
||||
IPAddress localIP = IPAddress.Parse("127.0.0.1");
|
||||
host = Dns.GetHostEntry(Dns.GetHostName());
|
||||
foreach (IPAddress ip in host.AddressList)
|
||||
{
|
||||
if (ip.AddressFamily == AddressFamily.InterNetwork)
|
||||
{
|
||||
localIP = ip;
|
||||
break;
|
||||
}
|
||||
}
|
||||
string ret = Networking.SendRequest("setip", spform.Partners[0] + 'ͦ' + localIP.ToString() + ":" + Settings.Default.port + ":" + openFileDialog1.FileName, 0, true);
|
||||
var ipAddr = IPAddress.Parse(ret);
|
||||
Socket sListener;
|
||||
SocketPermission permission;
|
||||
permission = new SocketPermission(NetworkAccess.Accept, TransportType.Tcp, "", SocketPermission.AllPorts);
|
||||
sListener = new Socket(ipAddr.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
|
||||
var ipEndPoint = new IPEndPoint(ipAddr, Settings.Default.port);
|
||||
sListener.Listen(1);
|
||||
ST = st; //Átadja az adatfolyamot a nyilvánosabb változónak
|
||||
AsyncCallback aCallback = new AsyncCallback(SendFile_AcceptCallback);
|
||||
sListener.BeginAccept(aCallback, sListener);
|
||||
}
|
||||
private Stream ST;
|
||||
private void SendFile_AcceptCallback(IAsyncResult ar)
|
||||
{
|
||||
Socket listener = (Socket)ar.AsyncState;
|
||||
Socket handler = listener.EndAccept(ar);
|
||||
var ns = new NetworkStream(handler);
|
||||
ns.CopyFrom(ST, new CopyFromArguments(new ProgressChange(SendFile_ProgressChange)));
|
||||
}
|
||||
|
||||
private void SendFile_ProgressChange(long bytesRead, long totalBytesToRead)
|
||||
{
|
||||
Console.WriteLine("SendFile: " + bytesRead + " / " + totalBytesToRead);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,123 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="openFileDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
</root>
|
|
@ -0,0 +1,33 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
public static class CurrentUser
|
||||
{
|
||||
/*
|
||||
* 2014.03.05.
|
||||
* Információátrendezés: Property-k használata; Minden felhasználóhoz egy-egy User class
|
||||
* Ez a class használható lenne az aktuális felhsaználó információinak tárolására
|
||||
*/
|
||||
public static int UserID = 0;
|
||||
//public static int[] PartnerIDs = new int[1024];
|
||||
public static string Name = "";
|
||||
//public static Language Language = Language.English; //2014.04.19.
|
||||
public static Language Language;
|
||||
public static string Message = "";
|
||||
public static string State = "";
|
||||
public static string UserName = "";
|
||||
public static string Email = "";
|
||||
/// <summary>
|
||||
/// Átmásolja-e a memóriába az egész fájlt a küldés előtt.
|
||||
/// Nagy méretű fájloknál nem ajánlott, különben igen a fájl esetleges elérhetetlensége miatt.
|
||||
/// 2014.06.15.
|
||||
/// </summary>
|
||||
public static bool CopyToMemoryOnFileSend = true;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,41 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
class ErrorHandling
|
||||
{
|
||||
public static void FormError(Form fname, Exception e)
|
||||
{
|
||||
MessageBox.Show(e.GetType().ToString());
|
||||
if (fname == Program.MainF)
|
||||
{
|
||||
switch (e.GetType().ToString())
|
||||
{
|
||||
/*case "System.NullReferenceException":
|
||||
MessageBox.Show("lol");
|
||||
break;*/
|
||||
default:
|
||||
MessageBox.Show("Ismeretlen hiba történt (" + e.GetType().ToString() + ")!\n\nForrás: " + e.Source + "\nA hibaüzenet: \n" + e.Message + "\nEnnél a műveletnél: " + e.TargetSite);
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if(fname==MainForm.LoginDialog)
|
||||
{
|
||||
switch (e.GetType().ToString())
|
||||
{
|
||||
/*case "System.NullReferenceException":
|
||||
MessageBox.Show("lol");
|
||||
break;*/
|
||||
default:
|
||||
MessageBox.Show("Ismeretlen hiba történt (" + e.GetType().ToString() + ")!\n\nForrás: " + e.Source + "\nA hibaüzenet: \n" + e.Message + "\nEnnél a műveletnél: " + e.TargetSite);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
176
Versions/Less Closed Beta/v2.0/Post-Cleanup/MSGer.tk (C#)/InvitePartner.Designer.cs
generated
Normal file
|
@ -0,0 +1,176 @@
|
|||
namespace MSGer.tk
|
||||
{
|
||||
partial class InvitePartner
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.textBox1 = new System.Windows.Forms.TextBox();
|
||||
this.listBox1 = new System.Windows.Forms.ListBox();
|
||||
this.addbtn = new System.Windows.Forms.Button();
|
||||
this.removebtn = new System.Windows.Forms.Button();
|
||||
this.copybtn = new System.Windows.Forms.Button();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.hideAccepted = new System.Windows.Forms.CheckBox();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.label1.ForeColor = System.Drawing.Color.Blue;
|
||||
this.label1.Location = new System.Drawing.Point(13, 13);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(189, 24);
|
||||
this.label1.TabIndex = 0;
|
||||
this.label1.Text = "Ismerős meghívása";
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.label2.Location = new System.Drawing.Point(17, 53);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(98, 24);
|
||||
this.label2.TabIndex = 1;
|
||||
this.label2.Text = "Letöltőlink:";
|
||||
//
|
||||
// textBox1
|
||||
//
|
||||
this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.textBox1.BackColor = System.Drawing.Color.White;
|
||||
this.textBox1.Location = new System.Drawing.Point(21, 90);
|
||||
this.textBox1.Name = "textBox1";
|
||||
this.textBox1.ReadOnly = true;
|
||||
this.textBox1.Size = new System.Drawing.Size(382, 20);
|
||||
this.textBox1.TabIndex = 2;
|
||||
this.textBox1.Text = "http://msger.tk/download.php";
|
||||
//
|
||||
// listBox1
|
||||
//
|
||||
this.listBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.listBox1.BackColor = System.Drawing.Color.White;
|
||||
this.listBox1.FormattingEnabled = true;
|
||||
this.listBox1.Location = new System.Drawing.Point(21, 163);
|
||||
this.listBox1.Name = "listBox1";
|
||||
this.listBox1.Size = new System.Drawing.Size(379, 173);
|
||||
this.listBox1.TabIndex = 6;
|
||||
//
|
||||
// addbtn
|
||||
//
|
||||
this.addbtn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||
this.addbtn.Location = new System.Drawing.Point(21, 343);
|
||||
this.addbtn.Name = "addbtn";
|
||||
this.addbtn.Size = new System.Drawing.Size(75, 23);
|
||||
this.addbtn.TabIndex = 7;
|
||||
this.addbtn.Text = "Hozzáadás";
|
||||
this.addbtn.UseVisualStyleBackColor = true;
|
||||
this.addbtn.Click += new System.EventHandler(this.addbtn_Click);
|
||||
//
|
||||
// removebtn
|
||||
//
|
||||
this.removebtn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||
this.removebtn.Location = new System.Drawing.Point(102, 343);
|
||||
this.removebtn.Name = "removebtn";
|
||||
this.removebtn.Size = new System.Drawing.Size(75, 23);
|
||||
this.removebtn.TabIndex = 8;
|
||||
this.removebtn.Text = "Eltávolítás";
|
||||
this.removebtn.UseVisualStyleBackColor = true;
|
||||
this.removebtn.Click += new System.EventHandler(this.removebtn_Click);
|
||||
//
|
||||
// copybtn
|
||||
//
|
||||
this.copybtn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.copybtn.Location = new System.Drawing.Point(292, 343);
|
||||
this.copybtn.Name = "copybtn";
|
||||
this.copybtn.Size = new System.Drawing.Size(108, 23);
|
||||
this.copybtn.TabIndex = 9;
|
||||
this.copybtn.Text = "Kód másolása";
|
||||
this.copybtn.UseVisualStyleBackColor = true;
|
||||
this.copybtn.Click += new System.EventHandler(this.copybtn_Click);
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Font = new System.Drawing.Font("Microsoft Sans Serif", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.label3.Location = new System.Drawing.Point(17, 125);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(64, 24);
|
||||
this.label3.TabIndex = 10;
|
||||
this.label3.Text = "Kódok";
|
||||
//
|
||||
// hideAccepted
|
||||
//
|
||||
this.hideAccepted.AutoSize = true;
|
||||
this.hideAccepted.Location = new System.Drawing.Point(251, 132);
|
||||
this.hideAccepted.Name = "hideAccepted";
|
||||
this.hideAccepted.Size = new System.Drawing.Size(149, 17);
|
||||
this.hideAccepted.TabIndex = 11;
|
||||
this.hideAccepted.Text = "Elfogadott kódok elrejtése";
|
||||
this.hideAccepted.UseVisualStyleBackColor = true;
|
||||
this.hideAccepted.CheckedChanged += new System.EventHandler(this.hideAccepted_CheckedChanged);
|
||||
//
|
||||
// InvitePartner
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(150)))), ((int)(((byte)(200)))));
|
||||
this.ClientSize = new System.Drawing.Size(415, 449);
|
||||
this.Controls.Add(this.hideAccepted);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.copybtn);
|
||||
this.Controls.Add(this.removebtn);
|
||||
this.Controls.Add(this.addbtn);
|
||||
this.Controls.Add(this.listBox1);
|
||||
this.Controls.Add(this.textBox1);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Name = "InvitePartner";
|
||||
this.Text = "Ismerős meghivása";
|
||||
this.Load += new System.EventHandler(this.InvitePartner_Load);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.TextBox textBox1;
|
||||
private System.Windows.Forms.ListBox listBox1;
|
||||
private System.Windows.Forms.Button addbtn;
|
||||
private System.Windows.Forms.Button removebtn;
|
||||
private System.Windows.Forms.Button copybtn;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.CheckBox hideAccepted;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,75 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
public partial class InvitePartner : Form
|
||||
{
|
||||
public InvitePartner()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void InvitePartner_Load(object sender, EventArgs e)
|
||||
{
|
||||
RefreshList();
|
||||
}
|
||||
|
||||
private void addbtn_Click(object sender, EventArgs e)
|
||||
{
|
||||
string res = Networking.SendRequest("addcode", "", 0, true);
|
||||
if (res.Length<"Fail".Length || res.Substring(0, "Fail".Length) == "Fail")
|
||||
MessageBox.Show("A kódgenerálás sikertelen.\n\n" + res, "Hiba");
|
||||
else
|
||||
RefreshList();
|
||||
}
|
||||
|
||||
public void RefreshList()
|
||||
{
|
||||
listBox1.Items.Clear();
|
||||
string[] response = Networking.SendRequest("getcodes", "", 0, true).Split('ͦ');
|
||||
int x = 0;
|
||||
for (int i = 0; i+1 < response.Length; i += 2)
|
||||
{
|
||||
if (Int32.Parse(response[i + 1]) == 1)
|
||||
{
|
||||
if (!hideAccepted.Checked)
|
||||
listBox1.Items.Add("Elfogadott - " + response[i]);
|
||||
}
|
||||
else if (Int32.Parse(response[i + 1]) == 0)
|
||||
listBox1.Items.Add("Visszaigazolásra vár - " + response[i]);
|
||||
else MessageBox.Show("Hiba:\n" + response[i] + "\n" + response[i + 1]);
|
||||
x++;
|
||||
}
|
||||
}
|
||||
|
||||
private void removebtn_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (listBox1.SelectedIndex == -1)
|
||||
return;
|
||||
string res = Networking.SendRequest("remcode", listBox1.SelectedItem.ToString().Remove(0, listBox1.SelectedItem.ToString().IndexOf(" - ") + " - ".Length), 0, true);
|
||||
if (res.Substring(0, "Fail".Length) == "Fail")
|
||||
MessageBox.Show("A kód törlése sikertelen.\n\n" + res, "Hiba");
|
||||
else RefreshList();
|
||||
}
|
||||
|
||||
private void copybtn_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (listBox1.SelectedIndex == -1)
|
||||
return;
|
||||
Clipboard.SetText(listBox1.SelectedItem.ToString().Remove(0, listBox1.SelectedItem.ToString().IndexOf(" - ") + " - ".Length));
|
||||
}
|
||||
|
||||
private void hideAccepted_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
RefreshList();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,120 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
|
@ -0,0 +1,41 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
public class Language
|
||||
{ //2014.04.19.
|
||||
|
||||
public static Dictionary<string, Language> UsedLangs = new Dictionary<string, Language>();
|
||||
|
||||
public Dictionary<string, string> Strings = new Dictionary<string, string>();
|
||||
|
||||
public Language(string lang)
|
||||
{
|
||||
UsedLangs.Add(lang, this);
|
||||
}
|
||||
public override string ToString()
|
||||
{
|
||||
return UsedLangs.FirstOrDefault(x => x.Value == this).Key;
|
||||
}
|
||||
public static Language FromString(string value)
|
||||
{
|
||||
Language tmp = null;
|
||||
try
|
||||
{
|
||||
tmp = UsedLangs[value];
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
return tmp;
|
||||
}
|
||||
public static Language GetCuurentLanguage()
|
||||
{
|
||||
return Language.FromString(Settings.Default.lang);
|
||||
}
|
||||
}
|
||||
}
|
176
Versions/Less Closed Beta/v2.0/Post-Cleanup/MSGer.tk (C#)/LoginForm.Designer.cs
generated
Normal file
|
@ -0,0 +1,176 @@
|
|||
namespace MSGer.tk
|
||||
{
|
||||
partial class LoginForm
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(LoginForm));
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.textBox1 = new System.Windows.Forms.TextBox();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.textBox2 = new System.Windows.Forms.TextBox();
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
this.textBox3 = new System.Windows.Forms.TextBox();
|
||||
this.linkLabel1 = new System.Windows.Forms.LinkLabel();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 21.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.label1.ForeColor = System.Drawing.Color.Blue;
|
||||
this.label1.Location = new System.Drawing.Point(12, 9);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(197, 33);
|
||||
this.label1.TabIndex = 0;
|
||||
this.label1.Text = "Bejelentkezés";
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.label2.Location = new System.Drawing.Point(19, 77);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(63, 24);
|
||||
this.label2.TabIndex = 1;
|
||||
this.label2.Text = "E-mail";
|
||||
//
|
||||
// textBox1
|
||||
//
|
||||
this.textBox1.AcceptsReturn = true;
|
||||
this.textBox1.AcceptsTab = true;
|
||||
this.textBox1.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend;
|
||||
this.textBox1.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.CustomSource;
|
||||
this.textBox1.Location = new System.Drawing.Point(88, 80);
|
||||
this.textBox1.Name = "textBox1";
|
||||
this.textBox1.Size = new System.Drawing.Size(294, 20);
|
||||
this.textBox1.TabIndex = 2;
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Font = new System.Drawing.Font("Microsoft Sans Serif", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.label3.Location = new System.Drawing.Point(19, 106);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(63, 24);
|
||||
this.label3.TabIndex = 3;
|
||||
this.label3.Text = "Jelszó";
|
||||
//
|
||||
// textBox2
|
||||
//
|
||||
this.textBox2.AcceptsReturn = true;
|
||||
this.textBox2.AcceptsTab = true;
|
||||
this.textBox2.Location = new System.Drawing.Point(179, 110);
|
||||
this.textBox2.Name = "textBox2";
|
||||
this.textBox2.PasswordChar = '→';
|
||||
this.textBox2.Size = new System.Drawing.Size(203, 20);
|
||||
this.textBox2.TabIndex = 4;
|
||||
//
|
||||
// button1
|
||||
//
|
||||
this.button1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.button1.Location = new System.Drawing.Point(235, 153);
|
||||
this.button1.Name = "button1";
|
||||
this.button1.Size = new System.Drawing.Size(147, 23);
|
||||
this.button1.TabIndex = 5;
|
||||
this.button1.Text = "Bejelentkezés";
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// textBox3
|
||||
//
|
||||
this.textBox3.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.textBox3.BackColor = System.Drawing.Color.SteelBlue;
|
||||
this.textBox3.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.textBox3.ForeColor = System.Drawing.Color.White;
|
||||
this.textBox3.Location = new System.Drawing.Point(13, 198);
|
||||
this.textBox3.Multiline = true;
|
||||
this.textBox3.Name = "textBox3";
|
||||
this.textBox3.ReadOnly = true;
|
||||
this.textBox3.Size = new System.Drawing.Size(369, 261);
|
||||
this.textBox3.TabIndex = 6;
|
||||
this.textBox3.Text = resources.GetString("textBox3.Text");
|
||||
this.textBox3.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
|
||||
//
|
||||
// linkLabel1
|
||||
//
|
||||
this.linkLabel1.AutoSize = true;
|
||||
this.linkLabel1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.linkLabel1.LinkBehavior = System.Windows.Forms.LinkBehavior.HoverUnderline;
|
||||
this.linkLabel1.LinkColor = System.Drawing.Color.Blue;
|
||||
this.linkLabel1.Location = new System.Drawing.Point(23, 162);
|
||||
this.linkLabel1.Name = "linkLabel1";
|
||||
this.linkLabel1.Size = new System.Drawing.Size(77, 13);
|
||||
this.linkLabel1.TabIndex = 7;
|
||||
this.linkLabel1.TabStop = true;
|
||||
this.linkLabel1.Text = "Regisztráció";
|
||||
this.linkLabel1.VisitedLinkColor = System.Drawing.Color.Blue;
|
||||
this.linkLabel1.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.RegistrateLink);
|
||||
//
|
||||
// LoginForm
|
||||
//
|
||||
this.AcceptButton = this.button1;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(150)))), ((int)(((byte)(200)))));
|
||||
this.ClientSize = new System.Drawing.Size(394, 471);
|
||||
this.Controls.Add(this.linkLabel1);
|
||||
this.Controls.Add(this.textBox3);
|
||||
this.Controls.Add(this.button1);
|
||||
this.Controls.Add(this.textBox2);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.textBox1);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.label1);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.MaximizeBox = false;
|
||||
this.Name = "LoginForm";
|
||||
this.Opacity = 0.9D;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "Bejelentkezés";
|
||||
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.LoginForm_FormClosing);
|
||||
this.Load += new System.EventHandler(this.LoginForm_Load);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.TextBox textBox1;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.TextBox textBox2;
|
||||
private System.Windows.Forms.Button button1;
|
||||
private System.Windows.Forms.TextBox textBox3;
|
||||
private System.Windows.Forms.LinkLabel linkLabel1;
|
||||
}
|
||||
}
|
176
Versions/Less Closed Beta/v2.0/Post-Cleanup/MSGer.tk (C#)/LoginForm.RegistrationForm.Designer.cs
generated
Normal file
|
@ -0,0 +1,176 @@
|
|||
namespace MSGer.tk
|
||||
{
|
||||
partial class LoginForm_RegistrationForm
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.label5 = new System.Windows.Forms.Label();
|
||||
this.codeText = new System.Windows.Forms.TextBox();
|
||||
this.userText = new System.Windows.Forms.TextBox();
|
||||
this.passText = new System.Windows.Forms.TextBox();
|
||||
this.emailText = new System.Windows.Forms.TextBox();
|
||||
this.registerButton = new System.Windows.Forms.Button();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.label1.ForeColor = System.Drawing.Color.Blue;
|
||||
this.label1.Location = new System.Drawing.Point(13, 13);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(124, 24);
|
||||
this.label1.TabIndex = 0;
|
||||
this.label1.Text = "Regisztráció";
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 14.25F);
|
||||
this.label2.Location = new System.Drawing.Point(17, 58);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(44, 24);
|
||||
this.label2.TabIndex = 1;
|
||||
this.label2.Text = "Kód";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Font = new System.Drawing.Font("Microsoft Sans Serif", 14.25F);
|
||||
this.label3.Location = new System.Drawing.Point(17, 92);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(143, 24);
|
||||
this.label3.TabIndex = 2;
|
||||
this.label3.Text = "Felhasználónév";
|
||||
//
|
||||
// label4
|
||||
//
|
||||
this.label4.AutoSize = true;
|
||||
this.label4.Font = new System.Drawing.Font("Microsoft Sans Serif", 14.25F);
|
||||
this.label4.Location = new System.Drawing.Point(17, 125);
|
||||
this.label4.Name = "label4";
|
||||
this.label4.Size = new System.Drawing.Size(63, 24);
|
||||
this.label4.TabIndex = 3;
|
||||
this.label4.Text = "Jelszó";
|
||||
//
|
||||
// label5
|
||||
//
|
||||
this.label5.AutoSize = true;
|
||||
this.label5.Font = new System.Drawing.Font("Microsoft Sans Serif", 14.25F);
|
||||
this.label5.Location = new System.Drawing.Point(17, 160);
|
||||
this.label5.Name = "label5";
|
||||
this.label5.Size = new System.Drawing.Size(63, 24);
|
||||
this.label5.TabIndex = 4;
|
||||
this.label5.Text = "E-mail";
|
||||
//
|
||||
// codeText
|
||||
//
|
||||
this.codeText.Location = new System.Drawing.Point(86, 63);
|
||||
this.codeText.Name = "codeText";
|
||||
this.codeText.Size = new System.Drawing.Size(358, 20);
|
||||
this.codeText.TabIndex = 6;
|
||||
//
|
||||
// userText
|
||||
//
|
||||
this.userText.Location = new System.Drawing.Point(166, 97);
|
||||
this.userText.Name = "userText";
|
||||
this.userText.Size = new System.Drawing.Size(278, 20);
|
||||
this.userText.TabIndex = 7;
|
||||
//
|
||||
// passText
|
||||
//
|
||||
this.passText.Location = new System.Drawing.Point(166, 130);
|
||||
this.passText.Name = "passText";
|
||||
this.passText.PasswordChar = '→';
|
||||
this.passText.Size = new System.Drawing.Size(278, 20);
|
||||
this.passText.TabIndex = 8;
|
||||
//
|
||||
// emailText
|
||||
//
|
||||
this.emailText.Location = new System.Drawing.Point(86, 165);
|
||||
this.emailText.Name = "emailText";
|
||||
this.emailText.Size = new System.Drawing.Size(358, 20);
|
||||
this.emailText.TabIndex = 9;
|
||||
//
|
||||
// registerButton
|
||||
//
|
||||
this.registerButton.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.registerButton.Location = new System.Drawing.Point(17, 220);
|
||||
this.registerButton.Name = "registerButton";
|
||||
this.registerButton.Size = new System.Drawing.Size(427, 23);
|
||||
this.registerButton.TabIndex = 10;
|
||||
this.registerButton.Text = "Regisztráció";
|
||||
this.registerButton.UseVisualStyleBackColor = true;
|
||||
this.registerButton.Click += new System.EventHandler(this.registerButton_Click);
|
||||
//
|
||||
// LoginForm_RegistrationForm
|
||||
//
|
||||
this.AcceptButton = this.registerButton;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(150)))), ((int)(((byte)(200)))));
|
||||
this.ClientSize = new System.Drawing.Size(469, 356);
|
||||
this.Controls.Add(this.registerButton);
|
||||
this.Controls.Add(this.emailText);
|
||||
this.Controls.Add(this.passText);
|
||||
this.Controls.Add(this.userText);
|
||||
this.Controls.Add(this.codeText);
|
||||
this.Controls.Add(this.label5);
|
||||
this.Controls.Add(this.label4);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.label1);
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "LoginForm_RegistrationForm";
|
||||
this.ShowIcon = false;
|
||||
this.ShowInTaskbar = false;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "Regisztráció";
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.Label label4;
|
||||
private System.Windows.Forms.Label label5;
|
||||
private System.Windows.Forms.TextBox codeText;
|
||||
private System.Windows.Forms.TextBox userText;
|
||||
private System.Windows.Forms.TextBox passText;
|
||||
private System.Windows.Forms.TextBox emailText;
|
||||
private System.Windows.Forms.Button registerButton;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,67 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
public partial class LoginForm_RegistrationForm : Form
|
||||
{
|
||||
public LoginForm_RegistrationForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
label1.Text = Language.GetCuurentLanguage().Strings["registration"];
|
||||
label2.Text = Language.GetCuurentLanguage().Strings["reg_code"];
|
||||
label3.Text = Language.GetCuurentLanguage().Strings["reg_username"];
|
||||
label4.Text = Language.GetCuurentLanguage().Strings["login_password"];
|
||||
registerButton.Text = Language.GetCuurentLanguage().Strings["registration"];
|
||||
}
|
||||
|
||||
private void registerButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
registerButton.Enabled = false;
|
||||
if (codeText.TextLength == 0 || userText.TextLength == 0 || passText.TextLength == 0 || emailText.TextLength == 0)
|
||||
{
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["reg_emptyfield"], Language.GetCuurentLanguage().Strings["error"]);
|
||||
registerButton.Enabled = true;
|
||||
return;
|
||||
}
|
||||
string response = Networking.SendRequest("register", codeText.Text + "ͦ" + userText.Text + "ͦ" + LoginForm.CalculateMD5Hash(passText.Text) + "ͦ" + emailText.Text, 2, false);
|
||||
if(response=="code")
|
||||
{
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["reg_codeerr"], Language.GetCuurentLanguage().Strings["error"]);
|
||||
registerButton.Enabled = true;
|
||||
}
|
||||
else if (response == "uname")
|
||||
{
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["reg_nameerr"], Language.GetCuurentLanguage().Strings["error"]);
|
||||
registerButton.Enabled = true;
|
||||
}
|
||||
else if (response == "ulen")
|
||||
{
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["reg_namelen"], Language.GetCuurentLanguage().Strings["error"]);
|
||||
registerButton.Enabled = true;
|
||||
}
|
||||
else if (response == "plen")
|
||||
{
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["reg_passlen"], Language.GetCuurentLanguage().Strings["error"]);
|
||||
registerButton.Enabled = true;
|
||||
}
|
||||
else if (response == "Success!")
|
||||
{
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["reg_success"]);
|
||||
Close();
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["unknown_error"] + ":\n" + response);
|
||||
registerButton.Enabled = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,120 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
|
@ -0,0 +1,271 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using System.Net;
|
||||
using System.IO;
|
||||
using System.Security.Cryptography;
|
||||
using System.Configuration;
|
||||
using System.Threading;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
public partial class LoginForm : Form
|
||||
{
|
||||
public static string UserCode="";
|
||||
public static Thread LThread;
|
||||
private void LoginForm_Load(object sender, EventArgs e)
|
||||
{
|
||||
List<string> tmp; //E-mail - 2014.04.02.
|
||||
if (Settings.Default.email.Length != 0)
|
||||
tmp = Settings.Default.email.Split(',').ToList<string>();
|
||||
else tmp = new List<string>();
|
||||
//textBox1.Text = tmp[0];
|
||||
//textBox1.Text = tmp[tmp.Count - 1]; //2014.07.08.
|
||||
textBox1.Text = tmp[Settings.Default.lastusedemail]; //2014.07.08.
|
||||
textBox1.AutoCompleteCustomSource.AddRange(tmp.ToArray());
|
||||
}
|
||||
public LoginForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
this.Text = Language.GetCuurentLanguage().Strings["login"];
|
||||
label1.Text = Language.GetCuurentLanguage().Strings["login"];
|
||||
label3.Text = Language.GetCuurentLanguage().Strings["login_password"];
|
||||
button1.Text = Language.GetCuurentLanguage().Strings["login"];
|
||||
linkLabel1.Text = Language.GetCuurentLanguage().Strings["registration"];
|
||||
textBox3.Text = "";
|
||||
List<string> lines = new List<string>();
|
||||
lines.Add(Language.GetCuurentLanguage().Strings["login_desc1"]);
|
||||
lines.Add("");
|
||||
lines.Add(Language.GetCuurentLanguage().Strings["login_desc2"]);
|
||||
textBox3.Lines = lines.ToArray();
|
||||
}
|
||||
private void button1_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (button1.Text == Language.GetCuurentLanguage().Strings["button_cancel"])
|
||||
{
|
||||
ResetAfterLogin();
|
||||
}
|
||||
else
|
||||
{
|
||||
try
|
||||
{
|
||||
if (LThread.IsAlive)
|
||||
{
|
||||
//2014.03.27. - Ne csináljon semmit - Elvégre ilyen nem fordulhat elő sokáig most már
|
||||
return;
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
|
||||
//Ellenőrizzen le néhány dolgot helyileg - 2014.04.28.
|
||||
if (textBox2.Text.Length == 0)
|
||||
return;
|
||||
|
||||
// Create the thread object, passing in the Alpha.Beta method
|
||||
// via a ThreadStart delegate. This does not start the thread.
|
||||
LThread = new Thread(new ThreadStart(LoginUser));
|
||||
LThread.Name = "Login Thread";
|
||||
|
||||
// Start the thread
|
||||
LThread.Start();
|
||||
|
||||
// Spin for a while waiting for the started thread to become
|
||||
// alive:
|
||||
while (!LThread.IsAlive) ;
|
||||
|
||||
// Put the Main thread to sleep for 1 millisecond to allow oThread
|
||||
// to do some work:
|
||||
Thread.Sleep(1);
|
||||
}
|
||||
}
|
||||
public delegate int MyDelegate();
|
||||
public int SetLoginValues()
|
||||
{
|
||||
if (UserText.Length == 0)
|
||||
UserText = textBox1.Text;
|
||||
else
|
||||
textBox1.Text = UserText;
|
||||
|
||||
if (PassText.Length == 0)
|
||||
PassText = textBox2.Text;
|
||||
else
|
||||
textBox2.Text = PassText;
|
||||
|
||||
button1.Text = LButtonText;
|
||||
linkLabel1.Enabled = RegistLinkEn; //2014.03.27.
|
||||
if (Closeable)
|
||||
{
|
||||
Closeable = false;
|
||||
Dispose(); //2014.04.04.
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
public int ResetAfterLogin()
|
||||
{
|
||||
Request.Abort();
|
||||
button1.Enabled = false;
|
||||
button1.Text = Language.GetCuurentLanguage().Strings["login"];
|
||||
button1.Enabled = true;
|
||||
linkLabel1.Enabled = true;
|
||||
return 0;
|
||||
}
|
||||
public static string UserText = ""; //2014.02.14.
|
||||
public static string PassText = "";
|
||||
public static string LButtonText = "";
|
||||
public static bool RegistLinkEn = true;
|
||||
public static bool Closeable = false;
|
||||
public static HttpWebRequest Request; //2014.03.27. - A megállitáshoz
|
||||
|
||||
public void LoginUser()
|
||||
{
|
||||
//Állitson vissza minden változót, hogy újra belerakja az értekeket - 2014.02.28.
|
||||
UserText = "";
|
||||
PassText = "";
|
||||
RegistLinkEn = false; //2014.03.27.
|
||||
LButtonText = Language.GetCuurentLanguage().Strings["button_cancel"];
|
||||
this.Invoke(new MyDelegate(SetLoginValues));
|
||||
|
||||
//HttpWebRequest httpWReq =
|
||||
// (HttpWebRequest)WebRequest.Create("http://msger.tk/client.php");
|
||||
HttpWebRequest httpWReq =
|
||||
(HttpWebRequest)WebRequest.Create("http://msger.url.ph/client.php");
|
||||
|
||||
Request = httpWReq; //2014.03.27.
|
||||
|
||||
ASCIIEncoding encoding = new ASCIIEncoding();
|
||||
string postData = "username=" + UserText;
|
||||
postData += "&password=" + CalculateMD5Hash(PassText);
|
||||
postData += "&key=cas1fe4a6feFEFEFE1616CE8099VFE1444cdasf48c1ase5dg";
|
||||
byte[] data = encoding.GetBytes(postData);
|
||||
|
||||
httpWReq.Method = "POST";
|
||||
httpWReq.ContentType = "application/x-www-form-urlencoded";
|
||||
httpWReq.ContentLength = data.Length;
|
||||
|
||||
try
|
||||
{
|
||||
using (Stream stream = httpWReq.GetRequestStream())
|
||||
{
|
||||
stream.Write(data, 0, data.Length);
|
||||
}
|
||||
}
|
||||
catch (WebException e)
|
||||
{
|
||||
if (e.Status != WebExceptionStatus.RequestCanceled)
|
||||
{
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["connecterror"] + "\n" + e.Message, Language.GetCuurentLanguage().Strings["error"]);
|
||||
this.Invoke(new MyDelegate(ResetAfterLogin));
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
//Bejelentkezés folyamatban...
|
||||
HttpWebResponse response;
|
||||
try
|
||||
{
|
||||
response = (HttpWebResponse)httpWReq.GetResponse();
|
||||
}
|
||||
catch (WebException e)
|
||||
{
|
||||
if (e.Status != WebExceptionStatus.RequestCanceled)
|
||||
{
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["connecterror"] + "\n" + e.Message, Language.GetCuurentLanguage().Strings["error"]);
|
||||
this.Invoke(new MyDelegate(ResetAfterLogin));
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
string responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
|
||||
|
||||
try
|
||||
{
|
||||
if (responseString[0] == '<')
|
||||
{
|
||||
this.Invoke(new MyDelegate(ResetAfterLogin));
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["error"] + ":\n" + responseString);
|
||||
return;
|
||||
}
|
||||
else
|
||||
responseString = responseString.Remove(responseString.IndexOf('<'));
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
|
||||
if (String.Compare(responseString, "Fail") == 0)
|
||||
{
|
||||
this.Invoke(new MyDelegate(ResetAfterLogin));
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["error"] + ": " + Language.GetCuurentLanguage().Strings["login_badnamepass"], Language.GetCuurentLanguage().Strings["error"]);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
|
||||
//Elmenti az E-mail-t
|
||||
if (!Settings.Default.email.Contains(UserText))
|
||||
{
|
||||
if (Settings.Default.email.Length != 0) //2014.07.08.
|
||||
Settings.Default.email += ",";
|
||||
Settings.Default.email += UserText;
|
||||
}
|
||||
else
|
||||
Settings.Default.lastusedemail = Settings.Default.email.Split(',').ToList<string>().IndexOf(UserText);
|
||||
Settings.Default.Save();
|
||||
//Bejelentkezés
|
||||
string[] respstr = responseString.Split('ͦ');
|
||||
CurrentUser.UserID = Convert.ToInt32(respstr[0]); //Régebben ezt találtam, most meg az Int32.Parse-t... (2014.04.02.)
|
||||
CurrentUser.Name = respstr[1]; //2014.04.04.
|
||||
LoginForm.UserCode = CalculateMD5Hash(CalculateMD5Hash(PassText) + " Some text because why not " + CurrentUser.UserID).ToLower();
|
||||
Closeable = true;
|
||||
this.Invoke(new MyDelegate(SetLoginValues));
|
||||
}
|
||||
}
|
||||
public static string CalculateMD5Hash(string input)
|
||||
{
|
||||
// step 1, calculate MD5 hash from input
|
||||
MD5 md5 = System.Security.Cryptography.MD5.Create();
|
||||
byte[] inputBytes = System.Text.Encoding.ASCII.GetBytes(input);
|
||||
byte[] hash = md5.ComputeHash(inputBytes);
|
||||
|
||||
// step 2, convert byte array to hex string
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 0; i < hash.Length; i++)
|
||||
{
|
||||
sb.Append(hash[i].ToString("X2"));
|
||||
}
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
private void RegistrateLink(object sender, LinkLabelLinkClickedEventArgs e)
|
||||
{
|
||||
(new LoginForm_RegistrationForm()).ShowDialog();
|
||||
}
|
||||
|
||||
private void LoginForm_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
if (LThread != null && LThread.IsAlive)
|
||||
{
|
||||
LThread.Abort(); //2014.03.27. - Na vajon kell-e más
|
||||
Request.Abort(); //2014.03.27. - Kell... Ez
|
||||
}
|
||||
if (CurrentUser.UserID == 0)
|
||||
Program.Exit();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,125 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="textBox3.Text" xml:space="preserve">
|
||||
<value>Az e-mail helyett használható a felhasználóneved is.
|
||||
|
||||
Ha nem tudsz bejelentkezni, próbáld meg újrainditani a programot. Ha az sem segít, és nem a felhasználóneveddel/jelszavaddal van a probléma, akkor jelentsd a problémát.</value>
|
||||
</data>
|
||||
</root>
|
|
@ -0,0 +1,265 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{F60940C0-05FC-46C0-948E-6DBECBBE38DD}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>MSGer.tk</RootNamespace>
|
||||
<AssemblyName>MSGer.tk</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<PublishUrl>publish\</PublishUrl>
|
||||
<Install>true</Install>
|
||||
<InstallFrom>Disk</InstallFrom>
|
||||
<UpdateEnabled>false</UpdateEnabled>
|
||||
<UpdateMode>Foreground</UpdateMode>
|
||||
<UpdateInterval>7</UpdateInterval>
|
||||
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
|
||||
<UpdatePeriodically>false</UpdatePeriodically>
|
||||
<UpdateRequired>false</UpdateRequired>
|
||||
<MapFileExtensions>true</MapFileExtensions>
|
||||
<ApplicationRevision>0</ApplicationRevision>
|
||||
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
|
||||
<IsWebBootstrapper>false</IsWebBootstrapper>
|
||||
<UseApplicationTrust>false</UseApplicationTrust>
|
||||
<BootstrapperEnabled>true</BootstrapperEnabled>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<NoWin32Manifest>true</NoWin32Manifest>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="GlacialList">
|
||||
<HintPath>D:\Downloads\GlacialListSource13\ListView\bin\Debug\GlacialList.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Khendys.Controls.ExRichTextBox, Version=1.0.5172.33773, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>D:\Downloads\ExRichTextBox_src\ExRichTextBox\bin\Debug\Khendys.Controls.ExRichTextBox.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Design" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Deployment" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="AboutBox1.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="AboutBox1.Designer.cs">
|
||||
<DependentUpon>AboutBox1.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="AddPartner.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="AddPartner.Designer.cs">
|
||||
<DependentUpon>AddPartner.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ChatForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="ChatForm.Designer.cs">
|
||||
<DependentUpon>ChatForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="CurrentUser.cs" />
|
||||
<Compile Include="ErrorHandling.cs" />
|
||||
<Compile Include="InvitePartner.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="InvitePartner.Designer.cs">
|
||||
<DependentUpon>InvitePartner.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Language.cs" />
|
||||
<Compile Include="LoginForm.RegistrationForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="LoginForm.RegistrationForm.Designer.cs">
|
||||
<DependentUpon>LoginForm.RegistrationForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="MainForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="MainForm.Designer.cs">
|
||||
<DependentUpon>MainForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="LoginForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="LoginForm.Designer.cs">
|
||||
<DependentUpon>LoginForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Notifier.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Notifier.Designer.cs">
|
||||
<DependentUpon>Notifier.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ProgressStatistic.cs" />
|
||||
<Compile Include="SettingsForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="SettingsForm.Designer.cs">
|
||||
<DependentUpon>SettingsForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="StreamHelper.cs" />
|
||||
<Compile Include="TextFormat.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="_MyNotifier.cs" />
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="SelectPartnerForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="SelectPartnerForm.Designer.cs">
|
||||
<DependentUpon>SelectPartnerForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Settings.cs" />
|
||||
<Compile Include="Settings.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TaskbarNotifier.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="UserInfo.cs" />
|
||||
<EmbeddedResource Include="AboutBox1.resx">
|
||||
<DependentUpon>AboutBox1.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="AddPartner.resx">
|
||||
<DependentUpon>AddPartner.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="ChatForm.resx">
|
||||
<DependentUpon>ChatForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="InvitePartner.resx">
|
||||
<DependentUpon>InvitePartner.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="LoginForm.RegistrationForm.resx">
|
||||
<DependentUpon>LoginForm.RegistrationForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="MainForm.resx">
|
||||
<DependentUpon>MainForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="LoginForm.resx">
|
||||
<DependentUpon>LoginForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Notifier.resx">
|
||||
<DependentUpon>Notifier.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="SelectPartnerForm.resx">
|
||||
<DependentUpon>SelectPartnerForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="SettingsForm.resx">
|
||||
<DependentUpon>SettingsForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
</None>
|
||||
<Compile Include="Properties\Settings.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
<None Include="Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Blue-Wallpaper-HD 2.jpg" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Menü 2.jpg" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Menü 21.jpg" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Menü 3.jpg" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Blue-Wallpaper-HD 21.jpg" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Menü 22.jpg" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Keresősáv.jpg" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Blue-Wallpaper-HD1.jpg" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<BootstrapperPackage Include=".NETFramework,Version=v4.5">
|
||||
<Visible>False</Visible>
|
||||
<ProductName>Microsoft .NET Framework 4.5 %28x86 and x64%29</ProductName>
|
||||
<Install>true</Install>
|
||||
</BootstrapperPackage>
|
||||
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
|
||||
<Visible>False</Visible>
|
||||
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
|
||||
<Install>false</Install>
|
||||
</BootstrapperPackage>
|
||||
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
|
||||
<Visible>False</Visible>
|
||||
<ProductName>.NET Framework 3.5 SP1</ProductName>
|
||||
<Install>false</Install>
|
||||
</BootstrapperPackage>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\..\RichListView\RichListView\RichListView\RichListView.csproj">
|
||||
<Project>{AE5CA7F1-D19E-479B-B06B-39C1280C5005}</Project>
|
||||
<Name>RichListView</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<PublishUrlHistory>publish\</PublishUrlHistory>
|
||||
<InstallUrlHistory />
|
||||
<SupportUrlHistory />
|
||||
<UpdateUrlHistory />
|
||||
<BootstrapperUrlHistory />
|
||||
<ErrorReportUrlHistory />
|
||||
<FallbackCulture>en-US</FallbackCulture>
|
||||
<VerifyUploadedFiles>false</VerifyUploadedFiles>
|
||||
</PropertyGroup>
|
||||
</Project>
|
|
@ -0,0 +1,28 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Express 2013 for Windows Desktop
|
||||
VisualStudioVersion = 12.0.21005.1
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MSGer.tk", "MSGer.tk.csproj", "{F60940C0-05FC-46C0-948E-6DBECBBE38DD}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RichListView", "..\..\..\RichListView\RichListView\RichListView\RichListView.csproj", "{AE5CA7F1-D19E-479B-B06B-39C1280C5005}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{F60940C0-05FC-46C0-948E-6DBECBBE38DD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{F60940C0-05FC-46C0-948E-6DBECBBE38DD}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{F60940C0-05FC-46C0-948E-6DBECBBE38DD}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F60940C0-05FC-46C0-948E-6DBECBBE38DD}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{AE5CA7F1-D19E-479B-B06B-39C1280C5005}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{AE5CA7F1-D19E-479B-B06B-39C1280C5005}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{AE5CA7F1-D19E-479B-B06B-39C1280C5005}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{AE5CA7F1-D19E-479B-B06B-39C1280C5005}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
908
Versions/Less Closed Beta/v2.0/Post-Cleanup/MSGer.tk (C#)/MainForm.Designer.cs
generated
Normal file
|
@ -0,0 +1,908 @@
|
|||
namespace MSGer.tk
|
||||
{
|
||||
partial class MainForm
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
|
||||
SzNPProjects.RichListViewColumn richListViewColumn1 = new SzNPProjects.RichListViewColumn();
|
||||
SzNPProjects.RichListViewColumn richListViewColumn2 = new SzNPProjects.RichListViewColumn();
|
||||
this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components);
|
||||
this.iconMenu = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.toolStripMenuItem4 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator18 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.toolStripMenuItem8 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripMenuItem9 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
this.panel2 = new System.Windows.Forms.Panel();
|
||||
this.textBox1 = new System.Windows.Forms.TextBox();
|
||||
this.panel1 = new System.Windows.Forms.Panel();
|
||||
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
||||
this.fájlToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.kijelentkezésToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.állapotToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.elérhetőToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.elfoglaltToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.nincsAGépnélToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.rejtveKapcsolódikToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.fájlKüldéseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.beérkezettFájlokMappájánakMegnyitásaToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.üzenetekElőzményeinekMegtekintéseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.bezárásToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator4 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.kilépésToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.ismerősökToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.ismerősFelvételeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.ismerősSzerkesztéseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.ismerősTörléseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator5 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.csoportLétrehozásaToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator6 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.kategóriaLétrehozásaToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.kategóriaSzerkesztéseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.kategóriaTörléseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.műveletekToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.azonnaliÜzenetKüldéseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.egyébKüldéseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.emailKüldéseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.fájlKüldéseToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator7 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.ismerősSzámitógépénekFelhivásaToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.videóhivásInditásaToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.onlineFájlokMegtekintéseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.közösJátékToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.távsegitségKéréseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.eszközökToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.mindigLegfelülToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator8 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.hangulatjelekToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.megjelenitendőKépVáltásaToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.háttérMódositásaToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator9 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.hangokÉsVideóBeállitásaToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator10 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.beállitásokToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.súgóToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.témakörökToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator11 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.aSzolgáltatásÁllapotsaToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.adatvédelmiNyilatkozatToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.használatiFeltételekToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.visszaélésBejelentéseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator12 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.segitsenAProgramTökéletesitésébenToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator13 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.névjegyToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.partnerImages = new System.Windows.Forms.ImageList(this.components);
|
||||
this.partnerMenu = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.üzenetküldésToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.emailKüldéseemailToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.információToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator14 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.ismerősLetiltásaToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.ismerősTörléseToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator15 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.becenévSzerkesztéseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator16 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.eseményértesitésekToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripSeparator17 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.beszélgetésnaplóMegnyitásaToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.contactList = new SzNPProjects.RichListView();
|
||||
this.iconMenu.SuspendLayout();
|
||||
this.panel2.SuspendLayout();
|
||||
this.menuStrip1.SuspendLayout();
|
||||
this.partnerMenu.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// notifyIcon1
|
||||
//
|
||||
this.notifyIcon1.ContextMenuStrip = this.iconMenu;
|
||||
this.notifyIcon1.Icon = ((System.Drawing.Icon)(resources.GetObject("notifyIcon1.Icon")));
|
||||
this.notifyIcon1.Text = "MSGer.tk";
|
||||
this.notifyIcon1.Visible = true;
|
||||
this.notifyIcon1.DoubleClick += new System.EventHandler(this.toolStripMenuItem4_Click);
|
||||
//
|
||||
// iconMenu
|
||||
//
|
||||
this.iconMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.toolStripMenuItem4,
|
||||
this.toolStripSeparator18,
|
||||
this.toolStripMenuItem8,
|
||||
this.toolStripMenuItem9});
|
||||
this.iconMenu.Name = "partnerMenu";
|
||||
this.iconMenu.RenderMode = System.Windows.Forms.ToolStripRenderMode.System;
|
||||
this.iconMenu.Size = new System.Drawing.Size(147, 76);
|
||||
//
|
||||
// toolStripMenuItem4
|
||||
//
|
||||
this.toolStripMenuItem4.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.toolStripMenuItem4.Name = "toolStripMenuItem4";
|
||||
this.toolStripMenuItem4.Size = new System.Drawing.Size(146, 22);
|
||||
this.toolStripMenuItem4.Text = "Megjelenítés";
|
||||
this.toolStripMenuItem4.Click += new System.EventHandler(this.toolStripMenuItem4_Click);
|
||||
//
|
||||
// toolStripSeparator18
|
||||
//
|
||||
this.toolStripSeparator18.Name = "toolStripSeparator18";
|
||||
this.toolStripSeparator18.Size = new System.Drawing.Size(143, 6);
|
||||
//
|
||||
// toolStripMenuItem8
|
||||
//
|
||||
this.toolStripMenuItem8.Name = "toolStripMenuItem8";
|
||||
this.toolStripMenuItem8.Size = new System.Drawing.Size(146, 22);
|
||||
this.toolStripMenuItem8.Text = "Kijelentkezés";
|
||||
this.toolStripMenuItem8.Click += new System.EventHandler(this.LogoutUser);
|
||||
//
|
||||
// toolStripMenuItem9
|
||||
//
|
||||
this.toolStripMenuItem9.Name = "toolStripMenuItem9";
|
||||
this.toolStripMenuItem9.Size = new System.Drawing.Size(146, 22);
|
||||
this.toolStripMenuItem9.Text = "Kilépés";
|
||||
this.toolStripMenuItem9.Click += new System.EventHandler(this.ExitProgram);
|
||||
//
|
||||
// button1
|
||||
//
|
||||
this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
|
||||
this.button1.Location = new System.Drawing.Point(519, 104);
|
||||
this.button1.Name = "button1";
|
||||
this.button1.Size = new System.Drawing.Size(35, 23);
|
||||
this.button1.TabIndex = 4;
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// panel2
|
||||
//
|
||||
this.panel2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.panel2.BackgroundImage = global::MSGer.tk.Properties.Resources.Keresősáv;
|
||||
this.panel2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
|
||||
this.panel2.Controls.Add(this.textBox1);
|
||||
this.panel2.Location = new System.Drawing.Point(0, 96);
|
||||
this.panel2.Name = "panel2";
|
||||
this.panel2.Size = new System.Drawing.Size(513, 31);
|
||||
this.panel2.TabIndex = 5;
|
||||
//
|
||||
// textBox1
|
||||
//
|
||||
this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.textBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(244)))), ((int)(((byte)(249)))), ((int)(((byte)(252)))));
|
||||
this.textBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.textBox1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(137)))), ((int)(((byte)(161)))), ((int)(((byte)(194)))));
|
||||
this.textBox1.Location = new System.Drawing.Point(6, 8);
|
||||
this.textBox1.Name = "textBox1";
|
||||
this.textBox1.Size = new System.Drawing.Size(504, 13);
|
||||
this.textBox1.TabIndex = 3;
|
||||
this.textBox1.Text = "Ismerősök keresése...";
|
||||
this.textBox1.Enter += new System.EventHandler(this.ClearSearchBar);
|
||||
this.textBox1.Leave += new System.EventHandler(this.PutTextInSearchBar);
|
||||
//
|
||||
// panel1
|
||||
//
|
||||
this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.panel1.BackgroundImage = global::MSGer.tk.Properties.Resources.Blue_Wallpaper_HD_2;
|
||||
this.panel1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
|
||||
this.panel1.Location = new System.Drawing.Point(0, 27);
|
||||
this.panel1.Name = "panel1";
|
||||
this.panel1.Size = new System.Drawing.Size(624, 63);
|
||||
this.panel1.TabIndex = 2;
|
||||
//
|
||||
// menuStrip1
|
||||
//
|
||||
this.menuStrip1.BackColor = System.Drawing.Color.Black;
|
||||
this.menuStrip1.BackgroundImage = global::MSGer.tk.Properties.Resources.Menü_2;
|
||||
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.fájlToolStripMenuItem,
|
||||
this.ismerősökToolStripMenuItem,
|
||||
this.műveletekToolStripMenuItem,
|
||||
this.eszközökToolStripMenuItem,
|
||||
this.súgóToolStripMenuItem});
|
||||
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
|
||||
this.menuStrip1.Name = "menuStrip1";
|
||||
this.menuStrip1.RenderMode = System.Windows.Forms.ToolStripRenderMode.System;
|
||||
this.menuStrip1.Size = new System.Drawing.Size(624, 24);
|
||||
this.menuStrip1.TabIndex = 0;
|
||||
this.menuStrip1.Text = "menuStrip1";
|
||||
//
|
||||
// fájlToolStripMenuItem
|
||||
//
|
||||
this.fájlToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.kijelentkezésToolStripMenuItem,
|
||||
this.toolStripMenuItem1,
|
||||
this.toolStripSeparator1,
|
||||
this.állapotToolStripMenuItem,
|
||||
this.toolStripSeparator2,
|
||||
this.fájlKüldéseToolStripMenuItem,
|
||||
this.beérkezettFájlokMappájánakMegnyitásaToolStripMenuItem,
|
||||
this.üzenetekElőzményeinekMegtekintéseToolStripMenuItem,
|
||||
this.toolStripSeparator3,
|
||||
this.bezárásToolStripMenuItem,
|
||||
this.toolStripSeparator4,
|
||||
this.kilépésToolStripMenuItem});
|
||||
this.fájlToolStripMenuItem.Name = "fájlToolStripMenuItem";
|
||||
this.fájlToolStripMenuItem.Size = new System.Drawing.Size(37, 20);
|
||||
this.fájlToolStripMenuItem.Text = "Fájl";
|
||||
//
|
||||
// kijelentkezésToolStripMenuItem
|
||||
//
|
||||
this.kijelentkezésToolStripMenuItem.Name = "kijelentkezésToolStripMenuItem";
|
||||
this.kijelentkezésToolStripMenuItem.Size = new System.Drawing.Size(292, 22);
|
||||
this.kijelentkezésToolStripMenuItem.Text = "Kijelentkezés";
|
||||
this.kijelentkezésToolStripMenuItem.Click += new System.EventHandler(this.LogoutUser);
|
||||
//
|
||||
// toolStripMenuItem1
|
||||
//
|
||||
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
|
||||
this.toolStripMenuItem1.Size = new System.Drawing.Size(292, 22);
|
||||
this.toolStripMenuItem1.Text = "Újabb felhasználó bejelentkeztetése...";
|
||||
this.toolStripMenuItem1.Click += new System.EventHandler(this.LoginNewUser);
|
||||
//
|
||||
// toolStripSeparator1
|
||||
//
|
||||
this.toolStripSeparator1.Name = "toolStripSeparator1";
|
||||
this.toolStripSeparator1.Size = new System.Drawing.Size(289, 6);
|
||||
//
|
||||
// állapotToolStripMenuItem
|
||||
//
|
||||
this.állapotToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.elérhetőToolStripMenuItem,
|
||||
this.elfoglaltToolStripMenuItem,
|
||||
this.nincsAGépnélToolStripMenuItem,
|
||||
this.rejtveKapcsolódikToolStripMenuItem});
|
||||
this.állapotToolStripMenuItem.Name = "állapotToolStripMenuItem";
|
||||
this.állapotToolStripMenuItem.Size = new System.Drawing.Size(292, 22);
|
||||
this.állapotToolStripMenuItem.Text = "Állapot";
|
||||
//
|
||||
// elérhetőToolStripMenuItem
|
||||
//
|
||||
this.elérhetőToolStripMenuItem.Name = "elérhetőToolStripMenuItem";
|
||||
this.elérhetőToolStripMenuItem.Size = new System.Drawing.Size(172, 22);
|
||||
this.elérhetőToolStripMenuItem.Text = "Elérhető";
|
||||
this.elérhetőToolStripMenuItem.Click += new System.EventHandler(this.SetOnlineState);
|
||||
//
|
||||
// elfoglaltToolStripMenuItem
|
||||
//
|
||||
this.elfoglaltToolStripMenuItem.Name = "elfoglaltToolStripMenuItem";
|
||||
this.elfoglaltToolStripMenuItem.Size = new System.Drawing.Size(172, 22);
|
||||
this.elfoglaltToolStripMenuItem.Text = "Elfoglalt";
|
||||
this.elfoglaltToolStripMenuItem.Click += new System.EventHandler(this.SetOnlineState);
|
||||
//
|
||||
// nincsAGépnélToolStripMenuItem
|
||||
//
|
||||
this.nincsAGépnélToolStripMenuItem.Name = "nincsAGépnélToolStripMenuItem";
|
||||
this.nincsAGépnélToolStripMenuItem.Size = new System.Drawing.Size(172, 22);
|
||||
this.nincsAGépnélToolStripMenuItem.Text = "Nincs a gépnél";
|
||||
this.nincsAGépnélToolStripMenuItem.Click += new System.EventHandler(this.SetOnlineState);
|
||||
//
|
||||
// rejtveKapcsolódikToolStripMenuItem
|
||||
//
|
||||
this.rejtveKapcsolódikToolStripMenuItem.Name = "rejtveKapcsolódikToolStripMenuItem";
|
||||
this.rejtveKapcsolódikToolStripMenuItem.Size = new System.Drawing.Size(172, 22);
|
||||
this.rejtveKapcsolódikToolStripMenuItem.Text = "Rejtve kapcsolódik";
|
||||
this.rejtveKapcsolódikToolStripMenuItem.Click += new System.EventHandler(this.SetOnlineState);
|
||||
//
|
||||
// toolStripSeparator2
|
||||
//
|
||||
this.toolStripSeparator2.Name = "toolStripSeparator2";
|
||||
this.toolStripSeparator2.Size = new System.Drawing.Size(289, 6);
|
||||
//
|
||||
// fájlKüldéseToolStripMenuItem
|
||||
//
|
||||
this.fájlKüldéseToolStripMenuItem.Name = "fájlKüldéseToolStripMenuItem";
|
||||
this.fájlKüldéseToolStripMenuItem.Size = new System.Drawing.Size(292, 22);
|
||||
this.fájlKüldéseToolStripMenuItem.Text = "Fájl küldése...";
|
||||
this.fájlKüldéseToolStripMenuItem.Click += new System.EventHandler(this.SelectPartner);
|
||||
//
|
||||
// beérkezettFájlokMappájánakMegnyitásaToolStripMenuItem
|
||||
//
|
||||
this.beérkezettFájlokMappájánakMegnyitásaToolStripMenuItem.Name = "beérkezettFájlokMappájánakMegnyitásaToolStripMenuItem";
|
||||
this.beérkezettFájlokMappájánakMegnyitásaToolStripMenuItem.Size = new System.Drawing.Size(292, 22);
|
||||
this.beérkezettFájlokMappájánakMegnyitásaToolStripMenuItem.Text = "Beérkezett fájlok mappájának megnyitása";
|
||||
//
|
||||
// üzenetekElőzményeinekMegtekintéseToolStripMenuItem
|
||||
//
|
||||
this.üzenetekElőzményeinekMegtekintéseToolStripMenuItem.Name = "üzenetekElőzményeinekMegtekintéseToolStripMenuItem";
|
||||
this.üzenetekElőzményeinekMegtekintéseToolStripMenuItem.Size = new System.Drawing.Size(292, 22);
|
||||
this.üzenetekElőzményeinekMegtekintéseToolStripMenuItem.Text = "Üzenetek előzményeinek megtekintése...";
|
||||
//
|
||||
// toolStripSeparator3
|
||||
//
|
||||
this.toolStripSeparator3.Name = "toolStripSeparator3";
|
||||
this.toolStripSeparator3.Size = new System.Drawing.Size(289, 6);
|
||||
//
|
||||
// bezárásToolStripMenuItem
|
||||
//
|
||||
this.bezárásToolStripMenuItem.Name = "bezárásToolStripMenuItem";
|
||||
this.bezárásToolStripMenuItem.Size = new System.Drawing.Size(292, 22);
|
||||
this.bezárásToolStripMenuItem.Text = "Bezárás";
|
||||
this.bezárásToolStripMenuItem.Click += new System.EventHandler(this.bezárásToolStripMenuItem_Click);
|
||||
//
|
||||
// toolStripSeparator4
|
||||
//
|
||||
this.toolStripSeparator4.Name = "toolStripSeparator4";
|
||||
this.toolStripSeparator4.Size = new System.Drawing.Size(289, 6);
|
||||
//
|
||||
// kilépésToolStripMenuItem
|
||||
//
|
||||
this.kilépésToolStripMenuItem.Name = "kilépésToolStripMenuItem";
|
||||
this.kilépésToolStripMenuItem.Size = new System.Drawing.Size(292, 22);
|
||||
this.kilépésToolStripMenuItem.Text = "Kilépés";
|
||||
this.kilépésToolStripMenuItem.Click += new System.EventHandler(this.ExitProgram);
|
||||
//
|
||||
// ismerősökToolStripMenuItem
|
||||
//
|
||||
this.ismerősökToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.ismerősFelvételeToolStripMenuItem,
|
||||
this.ismerősSzerkesztéseToolStripMenuItem,
|
||||
this.ismerősTörléseToolStripMenuItem,
|
||||
this.toolStripMenuItem3,
|
||||
this.toolStripSeparator5,
|
||||
this.csoportLétrehozásaToolStripMenuItem,
|
||||
this.toolStripSeparator6,
|
||||
this.kategóriaLétrehozásaToolStripMenuItem,
|
||||
this.kategóriaSzerkesztéseToolStripMenuItem,
|
||||
this.kategóriaTörléseToolStripMenuItem});
|
||||
this.ismerősökToolStripMenuItem.Name = "ismerősökToolStripMenuItem";
|
||||
this.ismerősökToolStripMenuItem.Size = new System.Drawing.Size(73, 20);
|
||||
this.ismerősökToolStripMenuItem.Text = "Ismerősök";
|
||||
//
|
||||
// ismerősFelvételeToolStripMenuItem
|
||||
//
|
||||
this.ismerősFelvételeToolStripMenuItem.Name = "ismerősFelvételeToolStripMenuItem";
|
||||
this.ismerősFelvételeToolStripMenuItem.Size = new System.Drawing.Size(199, 22);
|
||||
this.ismerősFelvételeToolStripMenuItem.Text = "Ismerős felvétele...";
|
||||
this.ismerősFelvételeToolStripMenuItem.Click += new System.EventHandler(this.ismerősFelvételeToolStripMenuItem_Click);
|
||||
//
|
||||
// ismerősSzerkesztéseToolStripMenuItem
|
||||
//
|
||||
this.ismerősSzerkesztéseToolStripMenuItem.Name = "ismerősSzerkesztéseToolStripMenuItem";
|
||||
this.ismerősSzerkesztéseToolStripMenuItem.Size = new System.Drawing.Size(199, 22);
|
||||
this.ismerősSzerkesztéseToolStripMenuItem.Text = "Ismerős szerkesztése...";
|
||||
//
|
||||
// ismerősTörléseToolStripMenuItem
|
||||
//
|
||||
this.ismerősTörléseToolStripMenuItem.Name = "ismerősTörléseToolStripMenuItem";
|
||||
this.ismerősTörléseToolStripMenuItem.Size = new System.Drawing.Size(199, 22);
|
||||
this.ismerősTörléseToolStripMenuItem.Text = "Ismerős törlése...";
|
||||
//
|
||||
// toolStripMenuItem3
|
||||
//
|
||||
this.toolStripMenuItem3.Name = "toolStripMenuItem3";
|
||||
this.toolStripMenuItem3.Size = new System.Drawing.Size(199, 22);
|
||||
this.toolStripMenuItem3.Text = "Ismerős meghivása...";
|
||||
this.toolStripMenuItem3.Click += new System.EventHandler(this.InvitePartner);
|
||||
//
|
||||
// toolStripSeparator5
|
||||
//
|
||||
this.toolStripSeparator5.Name = "toolStripSeparator5";
|
||||
this.toolStripSeparator5.Size = new System.Drawing.Size(196, 6);
|
||||
//
|
||||
// csoportLétrehozásaToolStripMenuItem
|
||||
//
|
||||
this.csoportLétrehozásaToolStripMenuItem.Name = "csoportLétrehozásaToolStripMenuItem";
|
||||
this.csoportLétrehozásaToolStripMenuItem.Size = new System.Drawing.Size(199, 22);
|
||||
this.csoportLétrehozásaToolStripMenuItem.Text = "Csoport létrehozása...";
|
||||
//
|
||||
// toolStripSeparator6
|
||||
//
|
||||
this.toolStripSeparator6.Name = "toolStripSeparator6";
|
||||
this.toolStripSeparator6.Size = new System.Drawing.Size(196, 6);
|
||||
//
|
||||
// kategóriaLétrehozásaToolStripMenuItem
|
||||
//
|
||||
this.kategóriaLétrehozásaToolStripMenuItem.Name = "kategóriaLétrehozásaToolStripMenuItem";
|
||||
this.kategóriaLétrehozásaToolStripMenuItem.Size = new System.Drawing.Size(199, 22);
|
||||
this.kategóriaLétrehozásaToolStripMenuItem.Text = "Kategória létrehozása...";
|
||||
//
|
||||
// kategóriaSzerkesztéseToolStripMenuItem
|
||||
//
|
||||
this.kategóriaSzerkesztéseToolStripMenuItem.Name = "kategóriaSzerkesztéseToolStripMenuItem";
|
||||
this.kategóriaSzerkesztéseToolStripMenuItem.Size = new System.Drawing.Size(199, 22);
|
||||
this.kategóriaSzerkesztéseToolStripMenuItem.Text = "Kategória szerkesztése...";
|
||||
//
|
||||
// kategóriaTörléseToolStripMenuItem
|
||||
//
|
||||
this.kategóriaTörléseToolStripMenuItem.Name = "kategóriaTörléseToolStripMenuItem";
|
||||
this.kategóriaTörléseToolStripMenuItem.Size = new System.Drawing.Size(199, 22);
|
||||
this.kategóriaTörléseToolStripMenuItem.Text = "Kategória törlése...";
|
||||
//
|
||||
// műveletekToolStripMenuItem
|
||||
//
|
||||
this.műveletekToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.azonnaliÜzenetKüldéseToolStripMenuItem,
|
||||
this.egyébKüldéseToolStripMenuItem,
|
||||
this.toolStripSeparator7,
|
||||
this.ismerősSzámitógépénekFelhivásaToolStripMenuItem,
|
||||
this.videóhivásInditásaToolStripMenuItem,
|
||||
this.onlineFájlokMegtekintéseToolStripMenuItem,
|
||||
this.közösJátékToolStripMenuItem,
|
||||
this.távsegitségKéréseToolStripMenuItem});
|
||||
this.műveletekToolStripMenuItem.Name = "műveletekToolStripMenuItem";
|
||||
this.műveletekToolStripMenuItem.Size = new System.Drawing.Size(74, 20);
|
||||
this.műveletekToolStripMenuItem.Text = "Műveletek";
|
||||
//
|
||||
// azonnaliÜzenetKüldéseToolStripMenuItem
|
||||
//
|
||||
this.azonnaliÜzenetKüldéseToolStripMenuItem.Name = "azonnaliÜzenetKüldéseToolStripMenuItem";
|
||||
this.azonnaliÜzenetKüldéseToolStripMenuItem.Size = new System.Drawing.Size(253, 22);
|
||||
this.azonnaliÜzenetKüldéseToolStripMenuItem.Text = "Azonnali üzenet küldése...";
|
||||
this.azonnaliÜzenetKüldéseToolStripMenuItem.Click += new System.EventHandler(this.SelectPartner);
|
||||
//
|
||||
// egyébKüldéseToolStripMenuItem
|
||||
//
|
||||
this.egyébKüldéseToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.emailKüldéseToolStripMenuItem,
|
||||
this.fájlKüldéseToolStripMenuItem1});
|
||||
this.egyébKüldéseToolStripMenuItem.Name = "egyébKüldéseToolStripMenuItem";
|
||||
this.egyébKüldéseToolStripMenuItem.Size = new System.Drawing.Size(253, 22);
|
||||
this.egyébKüldéseToolStripMenuItem.Text = "Egyéb küldése";
|
||||
//
|
||||
// emailKüldéseToolStripMenuItem
|
||||
//
|
||||
this.emailKüldéseToolStripMenuItem.Name = "emailKüldéseToolStripMenuItem";
|
||||
this.emailKüldéseToolStripMenuItem.Size = new System.Drawing.Size(160, 22);
|
||||
this.emailKüldéseToolStripMenuItem.Text = "E-mail küldése...";
|
||||
//
|
||||
// fájlKüldéseToolStripMenuItem1
|
||||
//
|
||||
this.fájlKüldéseToolStripMenuItem1.Name = "fájlKüldéseToolStripMenuItem1";
|
||||
this.fájlKüldéseToolStripMenuItem1.Size = new System.Drawing.Size(160, 22);
|
||||
this.fájlKüldéseToolStripMenuItem1.Text = "Fájl küldése...";
|
||||
//
|
||||
// toolStripSeparator7
|
||||
//
|
||||
this.toolStripSeparator7.Name = "toolStripSeparator7";
|
||||
this.toolStripSeparator7.Size = new System.Drawing.Size(250, 6);
|
||||
//
|
||||
// ismerősSzámitógépénekFelhivásaToolStripMenuItem
|
||||
//
|
||||
this.ismerősSzámitógépénekFelhivásaToolStripMenuItem.Name = "ismerősSzámitógépénekFelhivásaToolStripMenuItem";
|
||||
this.ismerősSzámitógépénekFelhivásaToolStripMenuItem.Size = new System.Drawing.Size(253, 22);
|
||||
this.ismerősSzámitógépénekFelhivásaToolStripMenuItem.Text = "Ismerős számitógépének felhivása";
|
||||
//
|
||||
// videóhivásInditásaToolStripMenuItem
|
||||
//
|
||||
this.videóhivásInditásaToolStripMenuItem.Name = "videóhivásInditásaToolStripMenuItem";
|
||||
this.videóhivásInditásaToolStripMenuItem.Size = new System.Drawing.Size(253, 22);
|
||||
this.videóhivásInditásaToolStripMenuItem.Text = "Videóhivás inditása...";
|
||||
//
|
||||
// onlineFájlokMegtekintéseToolStripMenuItem
|
||||
//
|
||||
this.onlineFájlokMegtekintéseToolStripMenuItem.Name = "onlineFájlokMegtekintéseToolStripMenuItem";
|
||||
this.onlineFájlokMegtekintéseToolStripMenuItem.Size = new System.Drawing.Size(253, 22);
|
||||
this.onlineFájlokMegtekintéseToolStripMenuItem.Text = "Online fájlok megtekintése";
|
||||
//
|
||||
// közösJátékToolStripMenuItem
|
||||
//
|
||||
this.közösJátékToolStripMenuItem.Name = "közösJátékToolStripMenuItem";
|
||||
this.közösJátékToolStripMenuItem.Size = new System.Drawing.Size(253, 22);
|
||||
this.közösJátékToolStripMenuItem.Text = "Közös játék...";
|
||||
//
|
||||
// távsegitségKéréseToolStripMenuItem
|
||||
//
|
||||
this.távsegitségKéréseToolStripMenuItem.Name = "távsegitségKéréseToolStripMenuItem";
|
||||
this.távsegitségKéréseToolStripMenuItem.Size = new System.Drawing.Size(253, 22);
|
||||
this.távsegitségKéréseToolStripMenuItem.Text = "Távsegitség kérése...";
|
||||
//
|
||||
// eszközökToolStripMenuItem
|
||||
//
|
||||
this.eszközökToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.mindigLegfelülToolStripMenuItem,
|
||||
this.toolStripSeparator8,
|
||||
this.hangulatjelekToolStripMenuItem,
|
||||
this.megjelenitendőKépVáltásaToolStripMenuItem,
|
||||
this.háttérMódositásaToolStripMenuItem,
|
||||
this.toolStripSeparator9,
|
||||
this.hangokÉsVideóBeállitásaToolStripMenuItem,
|
||||
this.toolStripSeparator10,
|
||||
this.beállitásokToolStripMenuItem});
|
||||
this.eszközökToolStripMenuItem.Name = "eszközökToolStripMenuItem";
|
||||
this.eszközökToolStripMenuItem.Size = new System.Drawing.Size(66, 20);
|
||||
this.eszközökToolStripMenuItem.Text = "Eszközök";
|
||||
//
|
||||
// mindigLegfelülToolStripMenuItem
|
||||
//
|
||||
this.mindigLegfelülToolStripMenuItem.CheckOnClick = true;
|
||||
this.mindigLegfelülToolStripMenuItem.Name = "mindigLegfelülToolStripMenuItem";
|
||||
this.mindigLegfelülToolStripMenuItem.Size = new System.Drawing.Size(227, 22);
|
||||
this.mindigLegfelülToolStripMenuItem.Text = "Mindig legfelül";
|
||||
this.mindigLegfelülToolStripMenuItem.Click += new System.EventHandler(this.mindigLegfelülToolStripMenuItem_Click);
|
||||
//
|
||||
// toolStripSeparator8
|
||||
//
|
||||
this.toolStripSeparator8.Name = "toolStripSeparator8";
|
||||
this.toolStripSeparator8.Size = new System.Drawing.Size(224, 6);
|
||||
//
|
||||
// hangulatjelekToolStripMenuItem
|
||||
//
|
||||
this.hangulatjelekToolStripMenuItem.Name = "hangulatjelekToolStripMenuItem";
|
||||
this.hangulatjelekToolStripMenuItem.Size = new System.Drawing.Size(227, 22);
|
||||
this.hangulatjelekToolStripMenuItem.Text = "Hangulatjelek...";
|
||||
//
|
||||
// megjelenitendőKépVáltásaToolStripMenuItem
|
||||
//
|
||||
this.megjelenitendőKépVáltásaToolStripMenuItem.Name = "megjelenitendőKépVáltásaToolStripMenuItem";
|
||||
this.megjelenitendőKépVáltásaToolStripMenuItem.Size = new System.Drawing.Size(227, 22);
|
||||
this.megjelenitendőKépVáltásaToolStripMenuItem.Text = "Megjelenitendő kép váltása...";
|
||||
//
|
||||
// háttérMódositásaToolStripMenuItem
|
||||
//
|
||||
this.háttérMódositásaToolStripMenuItem.Name = "háttérMódositásaToolStripMenuItem";
|
||||
this.háttérMódositásaToolStripMenuItem.Size = new System.Drawing.Size(227, 22);
|
||||
this.háttérMódositásaToolStripMenuItem.Text = "Háttér módositása...";
|
||||
//
|
||||
// toolStripSeparator9
|
||||
//
|
||||
this.toolStripSeparator9.Name = "toolStripSeparator9";
|
||||
this.toolStripSeparator9.Size = new System.Drawing.Size(224, 6);
|
||||
//
|
||||
// hangokÉsVideóBeállitásaToolStripMenuItem
|
||||
//
|
||||
this.hangokÉsVideóBeállitásaToolStripMenuItem.Name = "hangokÉsVideóBeállitásaToolStripMenuItem";
|
||||
this.hangokÉsVideóBeállitásaToolStripMenuItem.Size = new System.Drawing.Size(227, 22);
|
||||
this.hangokÉsVideóBeállitásaToolStripMenuItem.Text = "Hangok és videó beállitása...";
|
||||
//
|
||||
// toolStripSeparator10
|
||||
//
|
||||
this.toolStripSeparator10.Name = "toolStripSeparator10";
|
||||
this.toolStripSeparator10.Size = new System.Drawing.Size(224, 6);
|
||||
//
|
||||
// beállitásokToolStripMenuItem
|
||||
//
|
||||
this.beállitásokToolStripMenuItem.Name = "beállitásokToolStripMenuItem";
|
||||
this.beállitásokToolStripMenuItem.Size = new System.Drawing.Size(227, 22);
|
||||
this.beállitásokToolStripMenuItem.Text = "Beállitások...";
|
||||
this.beállitásokToolStripMenuItem.Click += new System.EventHandler(this.beállitásokToolStripMenuItem_Click);
|
||||
//
|
||||
// súgóToolStripMenuItem
|
||||
//
|
||||
this.súgóToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.témakörökToolStripMenuItem,
|
||||
this.toolStripSeparator11,
|
||||
this.aSzolgáltatásÁllapotsaToolStripMenuItem,
|
||||
this.adatvédelmiNyilatkozatToolStripMenuItem,
|
||||
this.használatiFeltételekToolStripMenuItem,
|
||||
this.visszaélésBejelentéseToolStripMenuItem,
|
||||
this.toolStripSeparator12,
|
||||
this.segitsenAProgramTökéletesitésébenToolStripMenuItem,
|
||||
this.toolStripSeparator13,
|
||||
this.névjegyToolStripMenuItem});
|
||||
this.súgóToolStripMenuItem.Name = "súgóToolStripMenuItem";
|
||||
this.súgóToolStripMenuItem.Size = new System.Drawing.Size(46, 20);
|
||||
this.súgóToolStripMenuItem.Text = "Súgó";
|
||||
//
|
||||
// témakörökToolStripMenuItem
|
||||
//
|
||||
this.témakörökToolStripMenuItem.Name = "témakörökToolStripMenuItem";
|
||||
this.témakörökToolStripMenuItem.Size = new System.Drawing.Size(270, 22);
|
||||
this.témakörökToolStripMenuItem.Text = "Témakörök";
|
||||
//
|
||||
// toolStripSeparator11
|
||||
//
|
||||
this.toolStripSeparator11.Name = "toolStripSeparator11";
|
||||
this.toolStripSeparator11.Size = new System.Drawing.Size(267, 6);
|
||||
//
|
||||
// aSzolgáltatásÁllapotsaToolStripMenuItem
|
||||
//
|
||||
this.aSzolgáltatásÁllapotsaToolStripMenuItem.Name = "aSzolgáltatásÁllapotsaToolStripMenuItem";
|
||||
this.aSzolgáltatásÁllapotsaToolStripMenuItem.Size = new System.Drawing.Size(270, 22);
|
||||
this.aSzolgáltatásÁllapotsaToolStripMenuItem.Text = "A szolgáltatás állapota";
|
||||
//
|
||||
// adatvédelmiNyilatkozatToolStripMenuItem
|
||||
//
|
||||
this.adatvédelmiNyilatkozatToolStripMenuItem.Name = "adatvédelmiNyilatkozatToolStripMenuItem";
|
||||
this.adatvédelmiNyilatkozatToolStripMenuItem.Size = new System.Drawing.Size(270, 22);
|
||||
this.adatvédelmiNyilatkozatToolStripMenuItem.Text = "Adatvédelmi nyilatkozat";
|
||||
//
|
||||
// használatiFeltételekToolStripMenuItem
|
||||
//
|
||||
this.használatiFeltételekToolStripMenuItem.Name = "használatiFeltételekToolStripMenuItem";
|
||||
this.használatiFeltételekToolStripMenuItem.Size = new System.Drawing.Size(270, 22);
|
||||
this.használatiFeltételekToolStripMenuItem.Text = "Használati feltételek";
|
||||
//
|
||||
// visszaélésBejelentéseToolStripMenuItem
|
||||
//
|
||||
this.visszaélésBejelentéseToolStripMenuItem.Name = "visszaélésBejelentéseToolStripMenuItem";
|
||||
this.visszaélésBejelentéseToolStripMenuItem.Size = new System.Drawing.Size(270, 22);
|
||||
this.visszaélésBejelentéseToolStripMenuItem.Text = "Visszaélés bejelentése";
|
||||
//
|
||||
// toolStripSeparator12
|
||||
//
|
||||
this.toolStripSeparator12.Name = "toolStripSeparator12";
|
||||
this.toolStripSeparator12.Size = new System.Drawing.Size(267, 6);
|
||||
//
|
||||
// segitsenAProgramTökéletesitésébenToolStripMenuItem
|
||||
//
|
||||
this.segitsenAProgramTökéletesitésébenToolStripMenuItem.Name = "segitsenAProgramTökéletesitésébenToolStripMenuItem";
|
||||
this.segitsenAProgramTökéletesitésébenToolStripMenuItem.Size = new System.Drawing.Size(270, 22);
|
||||
this.segitsenAProgramTökéletesitésébenToolStripMenuItem.Text = "Segitsen a program tökéletesitésében";
|
||||
//
|
||||
// toolStripSeparator13
|
||||
//
|
||||
this.toolStripSeparator13.Name = "toolStripSeparator13";
|
||||
this.toolStripSeparator13.Size = new System.Drawing.Size(267, 6);
|
||||
//
|
||||
// névjegyToolStripMenuItem
|
||||
//
|
||||
this.névjegyToolStripMenuItem.Name = "névjegyToolStripMenuItem";
|
||||
this.névjegyToolStripMenuItem.Size = new System.Drawing.Size(270, 22);
|
||||
this.névjegyToolStripMenuItem.Text = "Névjegy";
|
||||
this.névjegyToolStripMenuItem.Click += new System.EventHandler(this.névjegyToolStripMenuItem_Click);
|
||||
//
|
||||
// partnerImages
|
||||
//
|
||||
this.partnerImages.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
|
||||
this.partnerImages.ImageSize = new System.Drawing.Size(16, 16);
|
||||
this.partnerImages.TransparentColor = System.Drawing.Color.Transparent;
|
||||
//
|
||||
// partnerMenu
|
||||
//
|
||||
this.partnerMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.üzenetküldésToolStripMenuItem,
|
||||
this.emailKüldéseemailToolStripMenuItem,
|
||||
this.toolStripMenuItem2,
|
||||
this.információToolStripMenuItem,
|
||||
this.toolStripSeparator14,
|
||||
this.ismerősLetiltásaToolStripMenuItem,
|
||||
this.ismerősTörléseToolStripMenuItem1,
|
||||
this.toolStripSeparator15,
|
||||
this.becenévSzerkesztéseToolStripMenuItem,
|
||||
this.toolStripSeparator16,
|
||||
this.eseményértesitésekToolStripMenuItem,
|
||||
this.toolStripSeparator17,
|
||||
this.beszélgetésnaplóMegnyitásaToolStripMenuItem});
|
||||
this.partnerMenu.Name = "partnerMenu";
|
||||
this.partnerMenu.RenderMode = System.Windows.Forms.ToolStripRenderMode.System;
|
||||
this.partnerMenu.Size = new System.Drawing.Size(238, 226);
|
||||
//
|
||||
// üzenetküldésToolStripMenuItem
|
||||
//
|
||||
this.üzenetküldésToolStripMenuItem.Name = "üzenetküldésToolStripMenuItem";
|
||||
this.üzenetküldésToolStripMenuItem.Size = new System.Drawing.Size(237, 22);
|
||||
this.üzenetküldésToolStripMenuItem.Text = "Üzenetküldés";
|
||||
this.üzenetküldésToolStripMenuItem.Click += new System.EventHandler(this.OpenSendMessage);
|
||||
//
|
||||
// emailKüldéseemailToolStripMenuItem
|
||||
//
|
||||
this.emailKüldéseemailToolStripMenuItem.Name = "emailKüldéseemailToolStripMenuItem";
|
||||
this.emailKüldéseemailToolStripMenuItem.Size = new System.Drawing.Size(237, 22);
|
||||
this.emailKüldéseemailToolStripMenuItem.Text = "E-mail küldése (email)";
|
||||
//
|
||||
// toolStripMenuItem2
|
||||
//
|
||||
this.toolStripMenuItem2.Name = "toolStripMenuItem2";
|
||||
this.toolStripMenuItem2.Size = new System.Drawing.Size(237, 22);
|
||||
this.toolStripMenuItem2.Text = "E-mail másolása";
|
||||
//
|
||||
// információToolStripMenuItem
|
||||
//
|
||||
this.információToolStripMenuItem.Name = "információToolStripMenuItem";
|
||||
this.információToolStripMenuItem.Size = new System.Drawing.Size(237, 22);
|
||||
this.információToolStripMenuItem.Text = "Információ";
|
||||
//
|
||||
// toolStripSeparator14
|
||||
//
|
||||
this.toolStripSeparator14.Name = "toolStripSeparator14";
|
||||
this.toolStripSeparator14.Size = new System.Drawing.Size(234, 6);
|
||||
//
|
||||
// ismerősLetiltásaToolStripMenuItem
|
||||
//
|
||||
this.ismerősLetiltásaToolStripMenuItem.Name = "ismerősLetiltásaToolStripMenuItem";
|
||||
this.ismerősLetiltásaToolStripMenuItem.Size = new System.Drawing.Size(237, 22);
|
||||
this.ismerősLetiltásaToolStripMenuItem.Text = "Ismerős letiltása";
|
||||
//
|
||||
// ismerősTörléseToolStripMenuItem1
|
||||
//
|
||||
this.ismerősTörléseToolStripMenuItem1.Name = "ismerősTörléseToolStripMenuItem1";
|
||||
this.ismerősTörléseToolStripMenuItem1.Size = new System.Drawing.Size(237, 22);
|
||||
this.ismerősTörléseToolStripMenuItem1.Text = "Ismerős törlése";
|
||||
//
|
||||
// toolStripSeparator15
|
||||
//
|
||||
this.toolStripSeparator15.Name = "toolStripSeparator15";
|
||||
this.toolStripSeparator15.Size = new System.Drawing.Size(234, 6);
|
||||
//
|
||||
// becenévSzerkesztéseToolStripMenuItem
|
||||
//
|
||||
this.becenévSzerkesztéseToolStripMenuItem.Name = "becenévSzerkesztéseToolStripMenuItem";
|
||||
this.becenévSzerkesztéseToolStripMenuItem.Size = new System.Drawing.Size(237, 22);
|
||||
this.becenévSzerkesztéseToolStripMenuItem.Text = "Becenév szerkesztése";
|
||||
//
|
||||
// toolStripSeparator16
|
||||
//
|
||||
this.toolStripSeparator16.Name = "toolStripSeparator16";
|
||||
this.toolStripSeparator16.Size = new System.Drawing.Size(234, 6);
|
||||
//
|
||||
// eseményértesitésekToolStripMenuItem
|
||||
//
|
||||
this.eseményértesitésekToolStripMenuItem.Name = "eseményértesitésekToolStripMenuItem";
|
||||
this.eseményértesitésekToolStripMenuItem.Size = new System.Drawing.Size(237, 22);
|
||||
this.eseményértesitésekToolStripMenuItem.Text = "Eseményértesitések";
|
||||
//
|
||||
// toolStripSeparator17
|
||||
//
|
||||
this.toolStripSeparator17.Name = "toolStripSeparator17";
|
||||
this.toolStripSeparator17.Size = new System.Drawing.Size(234, 6);
|
||||
//
|
||||
// beszélgetésnaplóMegnyitásaToolStripMenuItem
|
||||
//
|
||||
this.beszélgetésnaplóMegnyitásaToolStripMenuItem.Name = "beszélgetésnaplóMegnyitásaToolStripMenuItem";
|
||||
this.beszélgetésnaplóMegnyitásaToolStripMenuItem.Size = new System.Drawing.Size(237, 22);
|
||||
this.beszélgetésnaplóMegnyitásaToolStripMenuItem.Text = "Beszélgetésnapló megnyitása...";
|
||||
//
|
||||
// contactList
|
||||
//
|
||||
this.contactList.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.contactList.AutoScroll = true;
|
||||
this.contactList.AutoUpdate = true;
|
||||
this.contactList.AutoValidate = System.Windows.Forms.AutoValidate.EnablePreventFocusChange;
|
||||
this.contactList.ColumnAutoFill = true;
|
||||
richListViewColumn1.Text = null;
|
||||
richListViewColumn1.Width = 50;
|
||||
richListViewColumn2.Text = null;
|
||||
richListViewColumn2.Width = 100;
|
||||
this.contactList.Columns = new SzNPProjects.RichListViewColumn[] {
|
||||
richListViewColumn1,
|
||||
richListViewColumn2};
|
||||
this.contactList.HeaderHeight = 0;
|
||||
this.contactList.ItemHeight = 50;
|
||||
this.contactList.Location = new System.Drawing.Point(0, 134);
|
||||
this.contactList.Name = "contactList";
|
||||
this.contactList.Size = new System.Drawing.Size(624, 311);
|
||||
this.contactList.TabIndex = 8;
|
||||
this.contactList.ItemDoubleClicked += new System.EventHandler<int>(this.contactList_ItemDoubleClicked);
|
||||
//
|
||||
// MainForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BackColor = System.Drawing.Color.LightSkyBlue;
|
||||
this.ClientSize = new System.Drawing.Size(624, 442);
|
||||
this.Controls.Add(this.contactList);
|
||||
this.Controls.Add(this.panel2);
|
||||
this.Controls.Add(this.button1);
|
||||
this.Controls.Add(this.panel1);
|
||||
this.Controls.Add(this.menuStrip1);
|
||||
this.MainMenuStrip = this.menuStrip1;
|
||||
this.Name = "MainForm";
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "Live Messenger - MSGer.tk";
|
||||
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.BeforeExit);
|
||||
this.Load += new System.EventHandler(this.OnMainFormLoad);
|
||||
this.iconMenu.ResumeLayout(false);
|
||||
this.panel2.ResumeLayout(false);
|
||||
this.panel2.PerformLayout();
|
||||
this.menuStrip1.ResumeLayout(false);
|
||||
this.menuStrip1.PerformLayout();
|
||||
this.partnerMenu.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.NotifyIcon notifyIcon1;
|
||||
private System.Windows.Forms.MenuStrip menuStrip1;
|
||||
private System.Windows.Forms.ToolStripMenuItem fájlToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem kijelentkezésToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
|
||||
private System.Windows.Forms.ToolStripMenuItem állapotToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem elérhetőToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem elfoglaltToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem nincsAGépnélToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem rejtveKapcsolódikToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;
|
||||
private System.Windows.Forms.ToolStripMenuItem fájlKüldéseToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem beérkezettFájlokMappájánakMegnyitásaToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem üzenetekElőzményeinekMegtekintéseToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator3;
|
||||
private System.Windows.Forms.ToolStripMenuItem bezárásToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator4;
|
||||
private System.Windows.Forms.ToolStripMenuItem kilépésToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem ismerősökToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem ismerősFelvételeToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem ismerősSzerkesztéseToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem ismerősTörléseToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator5;
|
||||
private System.Windows.Forms.ToolStripMenuItem csoportLétrehozásaToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator6;
|
||||
private System.Windows.Forms.ToolStripMenuItem kategóriaLétrehozásaToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem kategóriaSzerkesztéseToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem kategóriaTörléseToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem műveletekToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem azonnaliÜzenetKüldéseToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem egyébKüldéseToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem emailKüldéseToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem fájlKüldéseToolStripMenuItem1;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator7;
|
||||
private System.Windows.Forms.ToolStripMenuItem ismerősSzámitógépénekFelhivásaToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem videóhivásInditásaToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem onlineFájlokMegtekintéseToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem közösJátékToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem távsegitségKéréseToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem eszközökToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem mindigLegfelülToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator8;
|
||||
private System.Windows.Forms.ToolStripMenuItem hangulatjelekToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem megjelenitendőKépVáltásaToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem háttérMódositásaToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator9;
|
||||
private System.Windows.Forms.ToolStripMenuItem hangokÉsVideóBeállitásaToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator10;
|
||||
private System.Windows.Forms.ToolStripMenuItem beállitásokToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem súgóToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem témakörökToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator11;
|
||||
private System.Windows.Forms.ToolStripMenuItem aSzolgáltatásÁllapotsaToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem adatvédelmiNyilatkozatToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem használatiFeltételekToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem visszaélésBejelentéseToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator12;
|
||||
private System.Windows.Forms.ToolStripMenuItem segitsenAProgramTökéletesitésébenToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator13;
|
||||
private System.Windows.Forms.ToolStripMenuItem névjegyToolStripMenuItem;
|
||||
private System.Windows.Forms.TextBox textBox1;
|
||||
private System.Windows.Forms.Button button1;
|
||||
private System.Windows.Forms.Panel panel2;
|
||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem1;
|
||||
private System.Windows.Forms.Panel panel1;
|
||||
private System.Windows.Forms.ImageList partnerImages;
|
||||
private System.Windows.Forms.ContextMenuStrip partnerMenu;
|
||||
private System.Windows.Forms.ToolStripMenuItem üzenetküldésToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem emailKüldéseemailToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem2;
|
||||
private System.Windows.Forms.ToolStripMenuItem információToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator14;
|
||||
private System.Windows.Forms.ToolStripMenuItem ismerősLetiltásaToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem ismerősTörléseToolStripMenuItem1;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator15;
|
||||
private System.Windows.Forms.ToolStripMenuItem becenévSzerkesztéseToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator16;
|
||||
private System.Windows.Forms.ToolStripMenuItem eseményértesitésekToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator17;
|
||||
private System.Windows.Forms.ToolStripMenuItem beszélgetésnaplóMegnyitásaToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem3;
|
||||
private System.Windows.Forms.ContextMenuStrip iconMenu;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator18;
|
||||
public System.Windows.Forms.ToolStripMenuItem toolStripMenuItem4;
|
||||
public System.Windows.Forms.ToolStripMenuItem toolStripMenuItem8;
|
||||
public System.Windows.Forms.ToolStripMenuItem toolStripMenuItem9;
|
||||
private SzNPProjects.RichListView contactList;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,528 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using System.Net;
|
||||
using System.IO;
|
||||
using GlacialComponents.Controls;
|
||||
using Khendys.Controls;
|
||||
using System.Threading;
|
||||
using CustomUIControls;
|
||||
using System.Reflection;
|
||||
using SzNPProjects;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
public partial class MainForm : Form
|
||||
{
|
||||
public static LoginForm LoginDialog;
|
||||
public static Thread LThread;
|
||||
public static Thread MainThread = null;
|
||||
public static bool PartnerListThreadActive = true;
|
||||
public static ToolStripMenuItem SelectPartnerSender = null;
|
||||
public static Notifier taskbarNotifier;
|
||||
public MainForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
Thread.CurrentThread.Name = "Main Thread";
|
||||
contactList.Items.Add(new RichListViewItem());
|
||||
contactList.Items[0].SubItems[0].Text = "Betöltés...";
|
||||
toolStripMenuItem4.Enabled = false; //2014.04.12.
|
||||
toolStripMenuItem8.Enabled = false; //2014.04.12.
|
||||
|
||||
this.WindowState = FormWindowState.Minimized; //2014.04.19.
|
||||
|
||||
#region Nyelvi beállitások
|
||||
if (!Directory.Exists("languages"))
|
||||
Directory.CreateDirectory("languages");
|
||||
string[] files = Directory.GetFiles("languages");
|
||||
if (files.Length == 0)
|
||||
{
|
||||
MessageBox.Show("Error: No languages found.");
|
||||
return; //Még nem jelentkezett be, ezért ki fog lépni
|
||||
}
|
||||
for (int x = 0; x < files.Length; x++ )
|
||||
{
|
||||
string[] lines = File.ReadAllLines(files[x]);
|
||||
var dict = lines.Select(l => l.Split('=')).ToDictionary(a => a[0], a => a[1]);
|
||||
(new Language(files[x].Split('\\')[files[x].Split('\\').Length-1].Split('.')[0])).Strings = dict; //Eltárol egy új nyelvet, majd a szövegeket hozzátársítja
|
||||
}
|
||||
|
||||
CurrentUser.Language = Language.FromString(Settings.Default.lang);
|
||||
if (CurrentUser.Language == null)
|
||||
{
|
||||
MessageBox.Show("Error: The specified language is not found.\nTo quickly solve this, copy the preffered language file in languages folder to the same place with the name of \"" + Settings.Default.lang + "\"\nYou can then change the language in your preferences later.");
|
||||
return;
|
||||
}
|
||||
//MessageBox.Show("Nyelv: " + CurrentUser.Language.ToString());
|
||||
#endregion
|
||||
|
||||
#region Helyi beállitás
|
||||
try
|
||||
{
|
||||
fájlToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_file"];
|
||||
kijelentkezésToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_file_logout"];
|
||||
toolStripMenuItem1.Text = Language.GetCuurentLanguage().Strings["menu_file_loginnewuser"];
|
||||
állapotToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_file_status"];
|
||||
elérhetőToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_file_status_online"];
|
||||
elfoglaltToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_file_status_busy"];
|
||||
nincsAGépnélToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_file_status_away"];
|
||||
rejtveKapcsolódikToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_file_status_hidden"];
|
||||
fájlKüldéseToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_file_sendfile"];
|
||||
beérkezettFájlokMappájánakMegnyitásaToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_file_openreceivedfiles"];
|
||||
üzenetekElőzményeinekMegtekintéseToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_file_openrecentmsgs"];
|
||||
bezárásToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_file_close"];
|
||||
kilépésToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_file_exit"];
|
||||
|
||||
ismerősökToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_contacts"];
|
||||
ismerősFelvételeToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_contacts_add"];
|
||||
ismerősSzerkesztéseToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_contacts_edit"];
|
||||
ismerősTörléseToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_contacts_remove"];
|
||||
toolStripMenuItem3.Text = Language.GetCuurentLanguage().Strings["menu_contacts_invite"];
|
||||
csoportLétrehozásaToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_contacts_makegroup"];
|
||||
kategóriaLétrehozásaToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_contacts_makecategory"];
|
||||
kategóriaSzerkesztéseToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_contacts_editcategory"];
|
||||
kategóriaTörléseToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_contacts_removecategory"];
|
||||
|
||||
műveletekToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_operations"];
|
||||
azonnaliÜzenetKüldéseToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_operations_sendmsg"];
|
||||
egyébKüldéseToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_operations_sendother"];
|
||||
emailKüldéseToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_operations_sendother_sendmail"];
|
||||
fájlKüldéseToolStripMenuItem1.Text = Language.GetCuurentLanguage().Strings["menu_file_sendfile"]; //Ugyanaz a szöveg
|
||||
ismerősSzámitógépénekFelhivásaToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_operations_callcontact"];
|
||||
videóhivásInditásaToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_operations_videocall"];
|
||||
onlineFájlokMegtekintéseToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_operations_showonlinefiles"];
|
||||
közösJátékToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_operations_playgame"];
|
||||
távsegitségKéréseToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_operations_askforhelp"];
|
||||
|
||||
eszközökToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_tools"];
|
||||
hangulatjelekToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_tools_emoticons"];
|
||||
megjelenitendőKépVáltásaToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_tools_changeimage"];
|
||||
háttérMódositásaToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_tools_changebackground"];
|
||||
hangokÉsVideóBeállitásaToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_tools_voicevideosettings"];
|
||||
beállitásokToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_tools_settings"];
|
||||
|
||||
súgóToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_help"];
|
||||
témakörökToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_help_contents"];
|
||||
aSzolgáltatásÁllapotsaToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_help_status"];
|
||||
adatvédelmiNyilatkozatToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_help_privacypolicy"];
|
||||
használatiFeltételekToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_help_termsofuse"];
|
||||
visszaélésBejelentéseToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_help_report"];
|
||||
segitsenAProgramTökéletesitésébenToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_help_improveprogram"];
|
||||
névjegyToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_help_about"];
|
||||
|
||||
textBox1.Text = Language.GetCuurentLanguage().Strings["searchbar"];
|
||||
contactList.Items[0].SubItems[0].Text = Language.GetCuurentLanguage().Strings["loading"];
|
||||
|
||||
üzenetküldésToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["menu_operations_sendmsg"];
|
||||
emailKüldéseemailToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["contact_sendemail"];
|
||||
toolStripMenuItem2.Text = Language.GetCuurentLanguage().Strings["contact_copyemail"];
|
||||
információToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["contact_info"];
|
||||
ismerősLetiltásaToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["contact_block"];
|
||||
ismerősTörléseToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["contact_remove"];
|
||||
becenévSzerkesztéseToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["contact_editname"];
|
||||
eseményértesitésekToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["contact_eventnotifications"];
|
||||
beszélgetésnaplóMegnyitásaToolStripMenuItem.Text = Language.GetCuurentLanguage().Strings["contact_openchatlog"];
|
||||
|
||||
toolStripMenuItem4.Text = Language.GetCuurentLanguage().Strings["iconmenu_show"];
|
||||
toolStripMenuItem8.Text = Language.GetCuurentLanguage().Strings["menu_file_logout"];
|
||||
toolStripMenuItem9.Text = Language.GetCuurentLanguage().Strings["menu_file_exit"];
|
||||
}
|
||||
catch
|
||||
{
|
||||
MessageBox.Show("Error while loading translations.");
|
||||
}
|
||||
#endregion
|
||||
|
||||
//2014.05.16.
|
||||
new TextFormat();
|
||||
|
||||
//2014.04.25.
|
||||
string response = Networking.SendRequest("checkforupdates",
|
||||
Assembly.GetExecutingAssembly().GetName().Version.ToString().Replace(".", ""),
|
||||
0, false);
|
||||
if (response == "outofdate")
|
||||
{
|
||||
var res = MessageBox.Show(Language.GetCuurentLanguage().Strings["outofdate"], Language.GetCuurentLanguage().Strings["outofdate_caption"], MessageBoxButtons.YesNo);
|
||||
if (res == DialogResult.Yes)
|
||||
System.Diagnostics.Process.Start("http://msger.url.ph/download.php");
|
||||
}
|
||||
else if (response != "fine")
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["error"] + ": " + response);
|
||||
|
||||
try
|
||||
{
|
||||
LoginDialog = new LoginForm();
|
||||
LoginDialog.ShowDialog();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ErrorHandling.FormError(LoginDialog, e);
|
||||
}
|
||||
//Nézzük, sikerült-e
|
||||
if (CurrentUser.UserID != 0)
|
||||
{
|
||||
contactList.Enabled = false; //2014.03.05.
|
||||
MainThread = Thread.CurrentThread;
|
||||
|
||||
// Create the thread object, passing in the Alpha.Beta method
|
||||
// via a ThreadStart delegate. This does not start the thread.
|
||||
LThread = new Thread(new ThreadStart(UpdatePartnerList));
|
||||
LThread.Name = "Update Partner List";
|
||||
|
||||
// Start the thread
|
||||
LThread.Start();
|
||||
|
||||
if (Settings.Default.windowstate == 1) //2014.04.18.
|
||||
this.WindowState = FormWindowState.Maximized;
|
||||
else if (Settings.Default.windowstate == 2)
|
||||
this.WindowState = FormWindowState.Minimized;
|
||||
else if (Settings.Default.windowstate == 3)
|
||||
this.WindowState = FormWindowState.Normal;
|
||||
|
||||
taskbarNotifier = new Notifier("popup-bg.bmp", Color.FromArgb(255, 0, 255), "close.bmp", 5000);
|
||||
taskbarNotifier.Show("Teszt cím", "Teszt tartalom\nMásodik sor");
|
||||
|
||||
toolStripMenuItem4.Enabled = true; //2014.04.12.
|
||||
toolStripMenuItem8.Enabled = true; //2014.04.12.
|
||||
}
|
||||
}
|
||||
|
||||
private void PopupCloseClick(object sender, EventArgs e)
|
||||
{
|
||||
MessageBox.Show("Close");
|
||||
}
|
||||
|
||||
private void PopupClick(object sender, EventArgs e)
|
||||
{
|
||||
MessageBox.Show("Click");
|
||||
}
|
||||
|
||||
private void LogoutUser(object sender, EventArgs e)
|
||||
{
|
||||
this.Hide();
|
||||
toolStripMenuItem4.Enabled = false; //2014.04.12.
|
||||
toolStripMenuItem8.Enabled = false; //2014.04.12.
|
||||
SetOnlineState(null, null); //2014.04.11. - Erre nincs beállitva, ezért automatikusan 0-ra, azaz kijelentkeztetettre állítja az állapotát
|
||||
CurrentUser.UserID = 0;
|
||||
PartnerListThreadActive = false;
|
||||
LoginDialog = new LoginForm(); //2014.04.04.
|
||||
LoginDialog.ShowDialog();
|
||||
//Nézzük, sikerült-e
|
||||
if (CurrentUser.UserID == 0)
|
||||
Close();
|
||||
toolStripMenuItem4.Enabled = true; //2014.04.12.
|
||||
toolStripMenuItem8.Enabled = true; //2014.04.12.
|
||||
contactList.Items.Clear(); //2014.03.05.
|
||||
contactList.Enabled = false; //2014.03.05.
|
||||
contactList.Items.Add(new RichListViewItem());
|
||||
contactList.Items[0].SubItems[0].Text = "Betöltés...";
|
||||
this.Show();
|
||||
PartnerListThreadActive = true; //2014.02.28. - Törli, majd újra létrehozza a listafrissitő thread-et, ha újra bejelentkezett
|
||||
// Create the thread object, passing in the Alpha.Beta method
|
||||
// via a ThreadStart delegate. This does not start the thread.
|
||||
LThread = new Thread(new ThreadStart(UpdatePartnerList));
|
||||
LThread.Name = "Update Partner List";
|
||||
|
||||
// Start the thread
|
||||
LThread.Start();
|
||||
}
|
||||
|
||||
private void LoginNewUser(object sender, EventArgs e)
|
||||
{
|
||||
System.Diagnostics.Process.Start("MSGer.tk.exe");
|
||||
}
|
||||
|
||||
public void SetOnlineState(object sender, EventArgs e)
|
||||
{
|
||||
int state = 0;
|
||||
if (sender == elérhetőToolStripMenuItem)
|
||||
state = 1;
|
||||
if (sender == elfoglaltToolStripMenuItem)
|
||||
state = 2;
|
||||
if (sender == nincsAGépnélToolStripMenuItem)
|
||||
state = 3;
|
||||
if (sender == rejtveKapcsolódikToolStripMenuItem)
|
||||
state = 4;
|
||||
//HTTP
|
||||
if (Networking.SendRequest("setstate", state + "", 0, true) != "Success")
|
||||
MessageBox.Show("Hiba történt az állapot beállitása során.");
|
||||
}
|
||||
|
||||
private void SelectPartner(object sender, EventArgs e)
|
||||
{
|
||||
SelectPartnerSender = (ToolStripMenuItem)sender;
|
||||
DialogResult dr = new DialogResult();
|
||||
var form = new SelectPartnerForm();
|
||||
dr = form.ShowDialog();
|
||||
if (dr == DialogResult.OK)
|
||||
{
|
||||
//2014.04.25.
|
||||
string[] partners = form.Partners;
|
||||
ChatForm tmpchat = new ChatForm();
|
||||
for (int i = 0; i < partners.Length; i++)
|
||||
{
|
||||
if (partners[i] != "") //2014.04.17.
|
||||
{
|
||||
for (int j = 0; j < UserInfo.Partners.Count; j++)
|
||||
{
|
||||
int tmp; //2014.04.17.
|
||||
if (!Int32.TryParse(partners[i], out tmp))
|
||||
tmp = -1;
|
||||
if (UserInfo.Partners[j].UserName == partners[i] || UserInfo.Partners[j].Email == partners[i] || UserInfo.Partners[j].UserID == tmp)
|
||||
{ //Egyezik a név, E-mail vagy ID - UserName: 2014.04.17.
|
||||
tmpchat.ChatPartners.Add(j); //A Partners-beli indexét adja meg
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (tmpchat.ChatPartners.Count != 0)
|
||||
{
|
||||
ChatForm.ChatWindows.Add(tmpchat);
|
||||
if (SelectPartnerSender == fájlKüldéseToolStripMenuItem)
|
||||
{
|
||||
tmpchat.Show();
|
||||
tmpchat.OpenSendFile(form);
|
||||
}
|
||||
if (SelectPartnerSender == azonnaliÜzenetKüldéseToolStripMenuItem)
|
||||
{
|
||||
tmpchat.Show();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
public delegate int MyDelegate();
|
||||
public void UpdatePartnerList()
|
||||
{
|
||||
while (PartnerListThreadActive && MainThread.IsAlive)
|
||||
{
|
||||
string[] row = Networking.SendRequest("getlist", "", 0, true).Split('ͦ'); //Lekéri a listát, és különválogatja egyben - 2014.02.28.
|
||||
CurrentUser.Name = row[0];
|
||||
CurrentUser.Message = row[1];
|
||||
CurrentUser.State = row[2];
|
||||
CurrentUser.UserName = row[3];
|
||||
CurrentUser.Email = row[4];
|
||||
|
||||
if (!this.IsDisposed)
|
||||
{
|
||||
this.Invoke((MethodInvoker)delegate
|
||||
{
|
||||
List<int> tmp;
|
||||
if (Settings.Default.picupdatetime.Length != 0)
|
||||
tmp = Settings.Default.picupdatetime.Split(',').Select(s => Int32.Parse(s)).ToList<int>();
|
||||
else tmp = new List<int>();
|
||||
List<UserInfo> tmpuser = UserInfo.Partners;
|
||||
contactList.AutoUpdate = false;
|
||||
var items = new List<Control[]>();
|
||||
int i = 0;
|
||||
for (int x = 5; x < row.Length - 1; x += 6) //Ezt az egyetlen számot (x+=3) kell módositani, és máris alkalmazkodott a hozzáadott adathoz
|
||||
{ //-1: 2014.04.04. - A végére is odarak egy elválasztó jelet, ami miatt eggyel több elem lesz a tömbben
|
||||
if (row.Length < 5) //2014.03.19. - Ha nincs ismerőse
|
||||
break;
|
||||
for (int y = 0; y < UserInfo.Partners.Count; y++)
|
||||
{
|
||||
if (UserInfo.Partners[y] != null && Int32.Parse(row[x + 3]) == UserInfo.Partners[y].UserID) //Ha null az értéke, már nem is ellenőrzi a másik feltételt
|
||||
{ //Átrendezi a tömböt az új sorrendbe - Ha változott - 2014.03.07.
|
||||
tmpuser[i] = UserInfo.Partners[y];
|
||||
tmpuser[i].ListID = i; //És elmenti az új helyét - 2014.03.13.
|
||||
}
|
||||
}
|
||||
if (i >= tmpuser.Count)
|
||||
{
|
||||
tmpuser.Add(new UserInfo());
|
||||
}
|
||||
tmpuser[i].UserID = Int32.Parse(row[x + 3]); //Beállitja az ID-ket
|
||||
tmpuser[i].ListID = i;
|
||||
tmpuser[i].Name = row[x];
|
||||
tmpuser[i].Message = row[x + 1];
|
||||
tmpuser[i].State = row[x + 2];
|
||||
tmpuser[i].UserName = row[x + 4];
|
||||
tmpuser[i].Email = row[x + 5];
|
||||
string state = "";
|
||||
if (row[x + 2] == "1")
|
||||
state = " (Elérhető)";
|
||||
if (row[x + 2] == "2")
|
||||
state = " (Elfoglalt)";
|
||||
if (row[x + 2] == "3")
|
||||
state = " (Nincs a gépnél)";
|
||||
var oneitem = new Control[2];
|
||||
PictureBox item = new PictureBox();
|
||||
if (tmp.Count <= 1) //2014.04.28.
|
||||
tmp.Add(0);
|
||||
tmpuser[i].PicUpdateTime = tmp[i];
|
||||
string imgpath = tmpuser[i].GetImage();
|
||||
if (imgpath != "noimage.png" || File.Exists("noimage.png")) //2014.03.13.
|
||||
item.ImageLocation = imgpath;
|
||||
else
|
||||
MessageBox.Show("Az alap profilkép nem található.\nMásold be a noimage.png-t, vagy telepitsd újra a programot.\n(Ez az üzenet minden egyes ismerősödnél megjelenik.)", "Hiba");
|
||||
item.SizeMode = PictureBoxSizeMode.StretchImage;
|
||||
|
||||
oneitem[0] = item;
|
||||
ExRichTextBox item2 = new ExRichTextBox();
|
||||
item2.Text = row[x] + " " + state + "\n" + row[x + 1];
|
||||
item2 = TextFormat.Parse(item2);
|
||||
oneitem[1] = item2;
|
||||
items.Add(oneitem);
|
||||
i++;
|
||||
}
|
||||
Settings.Default.picupdatetime = String.Join(",", tmp.Select(ix => ix.ToString()).ToArray());
|
||||
UserInfo.Partners = tmpuser;
|
||||
contactList.Items.Clear();
|
||||
this.contactList.SetItems(items);
|
||||
contactList.AutoUpdate = true;
|
||||
contactList.Enabled = true;
|
||||
contactList.Refresh();
|
||||
});
|
||||
}
|
||||
Thread.Sleep(5000);
|
||||
}
|
||||
}
|
||||
|
||||
private void ClearSearchBar(object sender, EventArgs e)
|
||||
{
|
||||
if(textBox1.Text=="Ismerősök keresése...")
|
||||
textBox1.Clear();
|
||||
}
|
||||
|
||||
private void PutTextInSearchBar(object sender, EventArgs e)
|
||||
{
|
||||
if (textBox1.Text == "")
|
||||
textBox1.Text = "Ismerősök keresése...";
|
||||
}
|
||||
public static int RightClickedPartner = -1;
|
||||
private void ContactItemRightClick(object sender, MouseEventArgs e)
|
||||
{/*
|
||||
if (e.Button != MouseButtons.Right || contactList.HotItemIndex>=contactList.Items.Count)
|
||||
{ //Igy nem reagál arra sem, ha üres területre kattintunk
|
||||
return;
|
||||
}
|
||||
contactList.Items[contactList.HotItemIndex].Selected = true;
|
||||
RightClickedPartner = contactList.HotItemIndex;
|
||||
partnerMenu.Show(Cursor.Position);*/
|
||||
}
|
||||
private void OpenSendMessage(object sender, EventArgs e) //2014.03.02. 0:17
|
||||
{/*
|
||||
int tmp = contactList.HotItemIndex;
|
||||
if (RightClickedPartner == -1)
|
||||
RightClickedPartner = tmp;
|
||||
if (RightClickedPartner == -1 || RightClickedPartner >= contactList.Items.Count)
|
||||
return;
|
||||
//Üzenetküldő form
|
||||
int ChatNum = -1;
|
||||
for (int i = 0; i < ChatForm.ChatWindows.Count; i++)
|
||||
{
|
||||
if (ChatForm.ChatWindows[i].ChatPartners.Count==1 && ChatForm.ChatWindows[i].ChatPartners.Contains(RightClickedPartner))
|
||||
{ //Vele, és csak vele beszél
|
||||
ChatNum = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(ChatNum==-1)
|
||||
{ //Nincs még chatablaka
|
||||
ChatForm.ChatWindows.Add(new ChatForm());
|
||||
ChatForm.ChatWindows[ChatForm.ChatWindows.Count - 1].ChatPartners.Add(RightClickedPartner);
|
||||
ChatForm.ChatWindows[ChatForm.ChatWindows.Count - 1].Show();
|
||||
}
|
||||
else
|
||||
{
|
||||
ChatForm.ChatWindows[ChatNum].Show();
|
||||
ChatForm.ChatWindows[ChatNum].Focus();
|
||||
}
|
||||
|
||||
RightClickedPartner = -1;*/
|
||||
}
|
||||
|
||||
private void OnMainFormLoad(object sender, EventArgs e)
|
||||
{
|
||||
if (CurrentUser.UserID == 0)
|
||||
Program.Exit();
|
||||
}
|
||||
|
||||
private void InvitePartner(object sender, EventArgs e)
|
||||
{
|
||||
(new InvitePartner()).ShowDialog();
|
||||
}
|
||||
|
||||
private void BeforeExit(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
e.Cancel = true;
|
||||
this.Hide();
|
||||
}
|
||||
|
||||
private void toolStripMenuItem4_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (CurrentUser.UserID != 0) //2014.04.18.
|
||||
{
|
||||
this.Show();
|
||||
this.Focus();
|
||||
}
|
||||
}
|
||||
|
||||
private void ExitProgram(object sender, EventArgs e)
|
||||
{
|
||||
Program.Exit();
|
||||
}
|
||||
|
||||
private void ismerősFelvételeToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
(new AddPartner()).ShowDialog();
|
||||
}
|
||||
|
||||
private void névjegyToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
(new AboutBox1()).ShowDialog();
|
||||
}
|
||||
|
||||
private void mindigLegfelülToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.TopMost = mindigLegfelülToolStripMenuItem.Checked;
|
||||
}
|
||||
|
||||
private void beállitásokToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
(new SettingsForm()).Show();
|
||||
}
|
||||
|
||||
private void contactList_ItemDoubleClicked(object sender, int e)
|
||||
{
|
||||
int tmp = e;
|
||||
if (RightClickedPartner == -1)
|
||||
RightClickedPartner = tmp;
|
||||
if (RightClickedPartner == -1 || RightClickedPartner >= contactList.Items.Count)
|
||||
return;
|
||||
//Üzenetküldő form
|
||||
int ChatNum = -1;
|
||||
for (int i = 0; i < ChatForm.ChatWindows.Count; i++)
|
||||
{
|
||||
if (ChatForm.ChatWindows[i].ChatPartners.Count == 1 && ChatForm.ChatWindows[i].ChatPartners.Contains(RightClickedPartner))
|
||||
{ //Vele, és csak vele beszél
|
||||
ChatNum = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (ChatNum == -1)
|
||||
{ //Nincs még chatablaka
|
||||
ChatForm.ChatWindows.Add(new ChatForm());
|
||||
ChatForm.ChatWindows[ChatForm.ChatWindows.Count - 1].ChatPartners.Add(RightClickedPartner);
|
||||
ChatForm.ChatWindows[ChatForm.ChatWindows.Count - 1].Show();
|
||||
}
|
||||
else
|
||||
{
|
||||
ChatForm.ChatWindows[ChatNum].Show();
|
||||
ChatForm.ChatWindows[ChatNum].Focus();
|
||||
}
|
||||
|
||||
RightClickedPartner = -1;
|
||||
}
|
||||
|
||||
private void bezárásToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.Hide();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,136 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>WLM 2009 Logo base64-encoded probably - Spent hours on the correct sed command</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>WLM 2009 Logo base64-encoded probably - Spent hours on the correct sed command</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>WLM 2009 Logo base64-encoded probably - Spent hours on the correct sed command</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>WLM 2009 Logo base64-encoded probably - Spent hours on the correct sed command</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="notifyIcon1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="iconMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>530, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="notifyIcon1.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>WLM 2009 Logo base64-encoded probably - Spent hours on the correct sed command</value>
|
||||
</data>
|
||||
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>130, 17</value>
|
||||
</metadata>
|
||||
<metadata name="partnerImages.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>245, 17</value>
|
||||
</metadata>
|
||||
<metadata name="partnerMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>375, 17</value>
|
||||
</metadata>
|
||||
</root>
|
96
Versions/Less Closed Beta/v2.0/Post-Cleanup/MSGer.tk (C#)/Notifier.Designer.cs
generated
Normal file
|
@ -0,0 +1,96 @@
|
|||
namespace MSGer.tk
|
||||
{
|
||||
partial class Notifier
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.CloseButton = new System.Windows.Forms.PictureBox();
|
||||
this.Title = new System.Windows.Forms.Label();
|
||||
this.Content = new System.Windows.Forms.Label();
|
||||
((System.ComponentModel.ISupportInitialize)(this.CloseButton)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// CloseButton
|
||||
//
|
||||
this.CloseButton.Location = new System.Drawing.Point(241, 12);
|
||||
this.CloseButton.Name = "CloseButton";
|
||||
this.CloseButton.Size = new System.Drawing.Size(31, 28);
|
||||
this.CloseButton.TabIndex = 0;
|
||||
this.CloseButton.TabStop = false;
|
||||
//
|
||||
// Title
|
||||
//
|
||||
this.Title.AutoSize = true;
|
||||
this.Title.Location = new System.Drawing.Point(35, 26);
|
||||
this.Title.Name = "Title";
|
||||
this.Title.Size = new System.Drawing.Size(33, 13);
|
||||
this.Title.TabIndex = 1;
|
||||
this.Title.Text = "Teszt";
|
||||
//
|
||||
// Content
|
||||
//
|
||||
this.Content.AutoSize = true;
|
||||
this.Content.Location = new System.Drawing.Point(12, 58);
|
||||
this.Content.Name = "Content";
|
||||
this.Content.Size = new System.Drawing.Size(33, 26);
|
||||
this.Content.TabIndex = 2;
|
||||
this.Content.Text = "Teszt\r\nAsd";
|
||||
//
|
||||
// Notifier
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BackColor = System.Drawing.Color.White;
|
||||
this.ClientSize = new System.Drawing.Size(284, 262);
|
||||
this.ControlBox = false;
|
||||
this.Controls.Add(this.Content);
|
||||
this.Controls.Add(this.Title);
|
||||
this.Controls.Add(this.CloseButton);
|
||||
this.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.ForeColor = System.Drawing.Color.Black;
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "Notifier";
|
||||
this.ShowIcon = false;
|
||||
this.ShowInTaskbar = false;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
|
||||
this.TopMost = true;
|
||||
this.WindowState = System.Windows.Forms.FormWindowState.Minimized;
|
||||
((System.ComponentModel.ISupportInitialize)(this.CloseButton)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.PictureBox CloseButton;
|
||||
private System.Windows.Forms.Label Title;
|
||||
private System.Windows.Forms.Label Content;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,61 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
public partial class Notifier : Form
|
||||
{ //2014.04.15.
|
||||
private Rectangle WorkAreaRectangle;
|
||||
private Timer NotifierTimer;
|
||||
public Notifier(string background, Color TransparentColor, string closebutton, int waittime) //waittime: 2014.04.17.
|
||||
{
|
||||
if (!File.Exists(background))
|
||||
throw new FileNotFoundException("A megadott háttér nem található.");
|
||||
if (!File.Exists(closebutton))
|
||||
throw new FileNotFoundException("A megadott bezáró ikon nem található.");
|
||||
InitializeComponent();
|
||||
this.BackgroundImage = Image.FromFile(background);
|
||||
this.TransparencyKey = TransparentColor;
|
||||
CloseButton.ImageLocation = closebutton;
|
||||
this.Show();
|
||||
this.Hide();
|
||||
NotifierTimer = new Timer();
|
||||
NotifierTimer.Interval = waittime;
|
||||
NotifierTimer.Tick += NotifierTimer_Tick;
|
||||
}
|
||||
|
||||
void NotifierTimer_Tick(object sender, EventArgs e)
|
||||
{
|
||||
NotifierTimer.Stop();
|
||||
this.Hide();
|
||||
}
|
||||
|
||||
public Notifier(Image background, Color TransparentColor, Image closebutton)
|
||||
{
|
||||
InitializeComponent();
|
||||
this.BackgroundImage = background;
|
||||
this.TransparencyKey = TransparentColor;
|
||||
CloseButton.Image = closebutton;
|
||||
this.Show();
|
||||
this.Hide();
|
||||
}
|
||||
public void Show(string title, string content) //(kép) - 2014.04.15.
|
||||
{
|
||||
WorkAreaRectangle = Screen.GetWorkingArea(WorkAreaRectangle); //2014.04.17.
|
||||
Title.Text = title;
|
||||
Content.Text = content;
|
||||
this.WindowState = FormWindowState.Normal;
|
||||
SetBounds(WorkAreaRectangle.Right - BackgroundImage.Width - 17, WorkAreaRectangle.Bottom - 1, BackgroundImage.Width, 0);
|
||||
this.Show();
|
||||
NotifierTimer.Start();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,120 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
|
@ -0,0 +1,188 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProductVersion>9.0.30729</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{18FEDA0C-D147-4286-B39A-01204808106A}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>BrightIdeasSoftware</RootNamespace>
|
||||
<AssemblyName>ObjectListView</AssemblyName>
|
||||
<FileUpgradeFlags>
|
||||
</FileUpgradeFlags>
|
||||
<UpgradeBackupLocation>
|
||||
</UpgradeBackupLocation>
|
||||
<OldToolsVersion>3.5</OldToolsVersion>
|
||||
<TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<AssemblyOriginatorKeyFile>olv-keyfile.snk</AssemblyOriginatorKeyFile>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>TRACE;DEBUG</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
|
||||
<DocumentationFile>bin\Debug\ObjectListView.XML</DocumentationFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Accessibility" />
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.configuration" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Design" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="DataTreeListView.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DragDrop\OLVDataObject.cs" />
|
||||
<Compile Include="Filtering\DateTimeClusteringStrategy.cs" />
|
||||
<Compile Include="Filtering\FlagClusteringStrategy.cs" />
|
||||
<Compile Include="Filtering\TextMatchFilter.cs" />
|
||||
<Compile Include="Implementation\Delegates.cs" />
|
||||
<Compile Include="Implementation\Enums.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Implementation\GroupingParameters.cs" />
|
||||
<Compile Include="Implementation\NullableDictionary.cs" />
|
||||
<Compile Include="Implementation\OLVListItem.cs" />
|
||||
<Compile Include="Implementation\OLVListSubItem.cs" />
|
||||
<Compile Include="Implementation\OlvListViewHitTestInfo.cs" />
|
||||
<Compile Include="Implementation\TreeDataSourceAdapter.cs" />
|
||||
<Compile Include="OLVColumn.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\Adornments.cs" />
|
||||
<Compile Include="Implementation\Attributes.cs" />
|
||||
<Compile Include="CellEditing\CellEditors.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="CellEditing\EditorRegistry.cs" />
|
||||
<Compile Include="DataListView.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Implementation\DataSourceAdapter.cs" />
|
||||
<Compile Include="Rendering\Decorations.cs" />
|
||||
<Compile Include="DragDrop\DragSource.cs" />
|
||||
<Compile Include="DragDrop\DropSink.cs" />
|
||||
<Compile Include="Implementation\Events.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="FastDataListView.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Filtering\ClusteringStrategy.cs" />
|
||||
<Compile Include="Filtering\Cluster.cs" />
|
||||
<Compile Include="Filtering\ClustersFromGroupsStrategy.cs" />
|
||||
<Compile Include="FastObjectListView.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Filtering\FilterMenuBuilder.cs" />
|
||||
<Compile Include="Filtering\Filters.cs" />
|
||||
<Compile Include="Filtering\ICluster.cs" />
|
||||
<Compile Include="Filtering\IClusteringStrategy.cs" />
|
||||
<Compile Include="Rendering\TreeRenderer.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="SubControls\ToolStripCheckedListBox.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Utilities\ColumnSelectionForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Utilities\ColumnSelectionForm.Designer.cs">
|
||||
<DependentUpon>ColumnSelectionForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Utilities\Generator.cs" />
|
||||
<Compile Include="SubControls\GlassPanelForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Implementation\Groups.cs" />
|
||||
<Compile Include="SubControls\HeaderControl.cs">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="CellEditing\CellEditKeyEngine.cs" />
|
||||
<Compile Include="Implementation\Munger.cs" />
|
||||
<Compile Include="Implementation\NativeMethods.cs" />
|
||||
<Compile Include="Implementation\Comparers.cs">
|
||||
</Compile>
|
||||
<Compile Include="ObjectListView.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="ObjectListView.DesignTime.cs" />
|
||||
<Compile Include="Rendering\Overlays.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Rendering\Renderers.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\Styles.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="SubControls\ToolTipControl.cs" />
|
||||
<Compile Include="TreeListView.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Utilities\OLVExporter.cs" />
|
||||
<Compile Include="Utilities\TypedObjectListView.cs" />
|
||||
<Compile Include="Implementation\VirtualGroups.cs" />
|
||||
<Compile Include="Implementation\VirtualListDataSource.cs" />
|
||||
<Compile Include="VirtualObjectListView.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="CustomDictionary.xml" />
|
||||
<None Include="FullClassDiagram.cd" />
|
||||
<None Include="Resources\sort-descending.png" />
|
||||
<None Include="Resources\sort-ascending.png" />
|
||||
<None Include="Resources\filter.png" />
|
||||
<None Include="Resources\clear-filter.png" />
|
||||
<None Include="Resources\filter-icons3.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="olv-keyfile.snk" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Utilities\ColumnSelectionForm.resx">
|
||||
<DependentUpon>ColumnSelectionForm.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
|
@ -0,0 +1,138 @@
|
|||
//#define LOCAL_SERVER
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using SzNPProjects;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
static class Program
|
||||
{
|
||||
/// <summary>
|
||||
/// The main entry point for the application.
|
||||
/// </summary>
|
||||
public static MainForm MainF;
|
||||
[STAThread]
|
||||
static void Main()
|
||||
{
|
||||
Application.EnableVisualStyles();
|
||||
Application.SetCompatibleTextRenderingDefault(false);
|
||||
Console.WriteLine("Starting MSGer.tk...");
|
||||
try
|
||||
{
|
||||
MainF = new MainForm();
|
||||
Application.Run(MainF);
|
||||
}
|
||||
catch(FileNotFoundException e)
|
||||
{
|
||||
MessageBox.Show("Egy fájl nem található.\nA fájl neve:\n" + e.FileName+"\nEnnél a műveletnél: "+e.TargetSite);
|
||||
|
||||
}
|
||||
catch(Exception e)
|
||||
{
|
||||
ErrorHandling.FormError(MainF, e);
|
||||
}
|
||||
}
|
||||
|
||||
private static readonly DateTime Epoch = new DateTime(1970, 1, 1, 0, 0, 0,
|
||||
DateTimeKind.Utc);
|
||||
|
||||
public static DateTime UnixTimeToDateTime(string text)
|
||||
{
|
||||
double seconds = double.Parse(text, CultureInfo.InvariantCulture);
|
||||
//2014.04.25.
|
||||
DateTime time = Epoch.AddSeconds(seconds);
|
||||
time = DateTime.SpecifyKind(time, DateTimeKind.Utc);
|
||||
return time.ToLocalTime();
|
||||
}
|
||||
|
||||
public static void Exit()
|
||||
{ //2014.04.12.
|
||||
if (MainF != null)
|
||||
{
|
||||
MainF.Hide();
|
||||
MainF.toolStripMenuItem4.Enabled = false; //2014.04.12.
|
||||
MainF.toolStripMenuItem8.Enabled = false; //2014.04.12.
|
||||
if (CurrentUser.UserID != 0) //2014.04.18.
|
||||
{
|
||||
MainF.SetOnlineState(null, null); //2014.04.12.)
|
||||
if (MainF.WindowState == FormWindowState.Maximized) //2014.04.18.
|
||||
Settings.Default.windowstate = 1;
|
||||
else if (MainF.WindowState == FormWindowState.Minimized)
|
||||
Settings.Default.windowstate = 2;
|
||||
else if (MainF.WindowState == FormWindowState.Normal)
|
||||
Settings.Default.windowstate = 3;
|
||||
Settings.Default.Save();
|
||||
}
|
||||
}
|
||||
//CurrentUser.UserID = 0; - Felesleges, néha megáll itt, és úgy hajt végre egy bejelentkezést igénylő lekérést
|
||||
Application.Exit();
|
||||
Application.ExitThread();
|
||||
MessageBox.Show("Hiba: Nem sikerült leállítani a programot.");
|
||||
}
|
||||
}
|
||||
static class Networking
|
||||
{
|
||||
private static int Tries = 0;
|
||||
public static string SendRequest(string action, string data, int remnum, bool loggedin) //2014.02.18.
|
||||
{
|
||||
#if LOCAL_SERVER //2014.07.07. 22:00
|
||||
HttpWebRequest httpWReq =
|
||||
(HttpWebRequest)WebRequest.Create("http://localhost/ChatWithWords/client.php");
|
||||
#else
|
||||
HttpWebRequest httpWReq =
|
||||
(HttpWebRequest)WebRequest.Create("http://msger.url.ph/client.php");
|
||||
#endif
|
||||
|
||||
ASCIIEncoding encoding = new ASCIIEncoding();
|
||||
string postData = "action=" + action;
|
||||
if (loggedin) //2014.03.14.
|
||||
postData += "&uid=" + CurrentUser.UserID;
|
||||
postData += "&key=cas1fe4a6feFEFEFE1616CE8099VFE1444cdasf48c1ase5dg";
|
||||
if (loggedin) //2014.03.14.
|
||||
postData += "&code=" + LoginForm.UserCode; //2014.02.13.
|
||||
postData += "&data=" + Uri.EscapeUriString(data); //2014.02.13.
|
||||
byte[] datax = encoding.GetBytes(postData);
|
||||
|
||||
httpWReq.Method = "POST";
|
||||
httpWReq.ContentType = "application/x-www-form-urlencoded";
|
||||
httpWReq.ContentLength = datax.Length;
|
||||
|
||||
using (Stream stream = httpWReq.GetRequestStream())
|
||||
{
|
||||
stream.Write(datax, 0, datax.Length);
|
||||
}
|
||||
|
||||
//Lista betöltése folyamatban...
|
||||
|
||||
HttpWebResponse response;
|
||||
|
||||
try
|
||||
{
|
||||
response = (HttpWebResponse)httpWReq.GetResponse();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
if (Tries > 10)
|
||||
{
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["error_network"] + ":\n" + e.Message + "\n\n" + Language.GetCuurentLanguage().Strings["error_network2"], Language.GetCuurentLanguage().Strings["error"]); //2014.04.25.
|
||||
Tries = 0;
|
||||
}
|
||||
Tries++;
|
||||
return SendRequest(action, data, remnum, loggedin); //Újrapróbálkozik
|
||||
}
|
||||
string responseString;
|
||||
responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
|
||||
return responseString;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,357 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace HdSystemLibrary.IO
|
||||
{
|
||||
public class ProgressEventArgs : EventArgs
|
||||
{
|
||||
public ProgressEventArgs(ProgressStatistic progressStatistic)
|
||||
{
|
||||
if (progressStatistic == null)
|
||||
throw new ArgumentNullException("progressStatistic");
|
||||
ProgressStatistic = progressStatistic;
|
||||
}
|
||||
|
||||
public ProgressStatistic ProgressStatistic { get; private set; }
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class OperationAlreadyStartedException : Exception
|
||||
{
|
||||
public OperationAlreadyStartedException() { }
|
||||
public OperationAlreadyStartedException(string message) : base(message) { }
|
||||
public OperationAlreadyStartedException(string message, Exception inner) : base(message, inner) { }
|
||||
protected OperationAlreadyStartedException(
|
||||
System.Runtime.Serialization.SerializationInfo info,
|
||||
System.Runtime.Serialization.StreamingContext context)
|
||||
: base(info, context) { }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// A class which calculates progress statistics like average bytes per second or estimated finishing time.
|
||||
/// To use it, call the ProgressChange method in regular intervals with the actual progress.
|
||||
/// </summary>
|
||||
public class ProgressStatistic
|
||||
{
|
||||
public ProgressStatistic()
|
||||
{
|
||||
StartingTime = DateTime.MinValue;
|
||||
FinishingTime = DateTime.MinValue;
|
||||
|
||||
progressChangedArgs = new ProgressEventArgs(this); //Event args can be cached
|
||||
}
|
||||
|
||||
private bool hasStarted = false;
|
||||
/// <summary>
|
||||
/// Gets whether the operation has started
|
||||
/// </summary>
|
||||
public bool HasStarted { get { return hasStarted; } }
|
||||
/// <summary>
|
||||
/// Gets whether the operation has finished
|
||||
/// </summary>
|
||||
public bool HasFinished { get { return FinishingTime != DateTime.MinValue; } }
|
||||
|
||||
/// <summary>
|
||||
/// Gets whether the operation is still running
|
||||
/// </summary>
|
||||
public bool IsRunning { get { return HasStarted && !HasFinished; } }
|
||||
|
||||
#region Time
|
||||
|
||||
/// <summary>
|
||||
/// Gets the date time when the operation has started
|
||||
/// </summary>
|
||||
public DateTime StartingTime { get; private set; }
|
||||
/// <summary>
|
||||
/// Gets the date time when the operation has finished
|
||||
/// </summary>
|
||||
public DateTime FinishingTime { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets the duration of the operation.
|
||||
/// If the operation is still running, the time since starting is returned.
|
||||
/// If the operation has not started, TimeSpan.Zero is returned.
|
||||
/// If the operation has finished, the time between starting and finishing is returned.
|
||||
/// </summary>
|
||||
public TimeSpan Duration
|
||||
{
|
||||
get
|
||||
{
|
||||
if (!HasStarted)
|
||||
return TimeSpan.Zero;
|
||||
else if (!HasFinished)
|
||||
return DateTime.Now - StartingTime;
|
||||
else
|
||||
return FinishingTime - StartingTime;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The method which will be used for estimating duration and finishing time
|
||||
/// </summary>
|
||||
public enum EstimatingMethod
|
||||
{
|
||||
/// <summary>
|
||||
/// Current bytes per second will be used for estimating.
|
||||
/// </summary>
|
||||
CurrentBytesPerSecond,
|
||||
/// <summary>
|
||||
/// Average bytes per second will be used for estimating
|
||||
/// </summary>
|
||||
AverageBytesPerSecond
|
||||
}
|
||||
|
||||
private EstimatingMethod estimatingMethod = EstimatingMethod.CurrentBytesPerSecond;
|
||||
/// <summary>
|
||||
/// Gets or sets which method will be used for estimating.
|
||||
/// Can only be set before the operation has started, otherwise an OperationAlreadyStartedException will be thrown.
|
||||
/// </summary>
|
||||
public EstimatingMethod UsedEstimatingMethod
|
||||
{
|
||||
get { return estimatingMethod; }
|
||||
set
|
||||
{
|
||||
if (HasStarted)
|
||||
throw new OperationAlreadyStartedException();
|
||||
estimatingMethod = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the estimated duration. Use UsedEstimatingMethod to specify which method will be used for estimating.
|
||||
/// If the operation will take more than 200 days, TimeSpan.MaxValue is returned.
|
||||
/// </summary>
|
||||
public TimeSpan EstimatedDuration
|
||||
{
|
||||
get
|
||||
{
|
||||
if (HasFinished)
|
||||
return Duration;
|
||||
if (TotalBytesToRead == -1)
|
||||
return TimeSpan.MaxValue;
|
||||
|
||||
double bytesPerSecond = 1;
|
||||
if (UsedEstimatingMethod == EstimatingMethod.AverageBytesPerSecond)
|
||||
bytesPerSecond = AverageBytesPerSecond;
|
||||
else if (UsedEstimatingMethod == EstimatingMethod.CurrentBytesPerSecond)
|
||||
bytesPerSecond = CurrentBytesPerSecond;
|
||||
|
||||
double seconds = (TotalBytesToRead - BytesRead) / bytesPerSecond;
|
||||
if (seconds > 60 * 60 * 24 * 200) //over 200 Days -> infinite
|
||||
return TimeSpan.MaxValue;
|
||||
else
|
||||
return Duration + TimeSpan.FromSeconds(seconds);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the estimated finishing time based on EstimatedDuration.
|
||||
/// If the operation will take more than 200 days, DateTime.MaxValue is returned.
|
||||
/// If the operation has finished, the actual finishing time is returned.
|
||||
/// </summary>
|
||||
public DateTime EstimatedFinishingTime
|
||||
{
|
||||
get
|
||||
{
|
||||
if (EstimatedDuration == TimeSpan.MaxValue)
|
||||
return DateTime.MaxValue;
|
||||
return StartingTime + EstimatedDuration;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// Gets the amount of bytes already read.
|
||||
/// </summary>
|
||||
public long BytesRead { get; private set; }
|
||||
/// <summary>
|
||||
/// Gets the amount of total bytes to read. Can be -1 if unknown.
|
||||
/// </summary>
|
||||
public long TotalBytesToRead { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets the progress in percent between 0 and 1.
|
||||
/// If the amount of total bytes to read is unknown, -1 is returned.
|
||||
/// </summary>
|
||||
public double Progress
|
||||
{
|
||||
get
|
||||
{
|
||||
if (TotalBytesToRead == -1)
|
||||
return -1;
|
||||
else
|
||||
return (double)BytesRead / (double)TotalBytesToRead;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the average bytes per second.
|
||||
/// </summary>
|
||||
public double AverageBytesPerSecond { get { return (double)BytesRead / Duration.TotalSeconds; } }
|
||||
|
||||
#region CurrentBytesPerSecond
|
||||
|
||||
/// <summary>
|
||||
/// Gets the approximated current count of bytes processed per second
|
||||
/// </summary>
|
||||
public double CurrentBytesPerSecond { get; private set; }
|
||||
|
||||
|
||||
private TimeSpan currentBytesCalculationInterval = TimeSpan.FromSeconds(0.5);
|
||||
/// <summary>
|
||||
/// Gets or sets the interval used for the calculation of the current bytes per second. Default is 500 ms.
|
||||
/// </summary>
|
||||
/// <exception cref="OperationAlreadyStartedException">
|
||||
/// Thrown when trying to set although the operation has already started.</exception>
|
||||
public TimeSpan CurrentBytesCalculationInterval
|
||||
{
|
||||
get { return currentBytesCalculationInterval; }
|
||||
set
|
||||
{
|
||||
if (HasStarted)
|
||||
throw new InvalidOperationException("Task has already started!");
|
||||
currentBytesCalculationInterval = value;
|
||||
}
|
||||
}
|
||||
|
||||
KeyValuePair<DateTime, long>[] currentBytesSamples = new KeyValuePair<DateTime, long>[6];
|
||||
/// <summary>
|
||||
/// Gets or sets the number of samples in CurrentBytesPerSecondInterval used for current bytes per second approximation
|
||||
/// </summary>
|
||||
/// <exception cref="OperationAlreadyStartedException">
|
||||
/// Thrown when trying to set although the operation has already started.</exception>
|
||||
public int CurrentBytesSampleCount
|
||||
{
|
||||
get { return currentBytesSamples.Length; }
|
||||
set
|
||||
{
|
||||
if (HasStarted)
|
||||
throw new InvalidOperationException("Task has already started!");
|
||||
if (value != currentBytesSamples.Length)
|
||||
{
|
||||
currentBytesSamples = new KeyValuePair<DateTime, long>[value];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
int currentSample = 0; //current sample index in currentBytesSamples
|
||||
|
||||
DateTime lastSample;
|
||||
|
||||
private void ProcessSample(long bytes)
|
||||
{
|
||||
if ((DateTime.Now - lastSample).Ticks > CurrentBytesCalculationInterval.Ticks / currentBytesSamples.Length)
|
||||
{
|
||||
lastSample = DateTime.Now;
|
||||
|
||||
KeyValuePair<DateTime, long> current = new KeyValuePair<DateTime, long>(DateTime.Now, bytes);
|
||||
|
||||
var old = currentBytesSamples[currentSample];
|
||||
currentBytesSamples[currentSample] = current;
|
||||
|
||||
if (old.Key == DateTime.MinValue)
|
||||
CurrentBytesPerSecond = AverageBytesPerSecond;
|
||||
else
|
||||
CurrentBytesPerSecond = (double)(current.Value - old.Value) / (current.Key - old.Key).TotalSeconds;
|
||||
|
||||
currentSample++;
|
||||
if (currentSample >= currentBytesSamples.Length)
|
||||
currentSample = 0;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// This method can be called to report progress changes.
|
||||
/// The signature of this method is compliant with the ProgressChange-delegate
|
||||
/// </summary>
|
||||
/// <param name="bytesRead">The amount of bytes already read</param>
|
||||
/// <param name="totalBytesToRead">The amount of total bytes to read. Can be -1 if unknown.</param>
|
||||
/// <exception cref="ArgumentException">Thrown if bytesRead has not changed or even shrunk.</exception>
|
||||
/// <exception cref="InvalidOperationException">Thrown if the operation has finished already.</exception>
|
||||
public virtual void ProgressChange(long bytesRead, long totalBytesToRead)
|
||||
{
|
||||
if (bytesRead <= BytesRead)
|
||||
throw new ArgumentException("Operation cannot go backwards!", "bytesRead");
|
||||
|
||||
if (HasFinished)
|
||||
throw new InvalidOperationException("Operation has finished already!");
|
||||
|
||||
if (!hasStarted)
|
||||
{
|
||||
StartingTime = DateTime.Now;
|
||||
hasStarted = true;
|
||||
OnStarted();
|
||||
}
|
||||
|
||||
BytesRead = bytesRead;
|
||||
TotalBytesToRead = totalBytesToRead;
|
||||
|
||||
ProcessSample(bytesRead);
|
||||
|
||||
OnProgressChanged();
|
||||
|
||||
if (bytesRead == TotalBytesToRead)
|
||||
{
|
||||
FinishingTime = DateTime.Now;
|
||||
OnFinished();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// This method can be called to finish an aborted operation.
|
||||
/// If the operation does not reach 100%, "Finished" will be never raised, so this method should be called.
|
||||
/// </summary>
|
||||
public virtual void Finish()
|
||||
{
|
||||
if (!HasFinished)
|
||||
{
|
||||
FinishingTime = DateTime.Now;
|
||||
OnFinished();
|
||||
}
|
||||
}
|
||||
|
||||
#region Events
|
||||
|
||||
private readonly ProgressEventArgs progressChangedArgs;
|
||||
|
||||
protected virtual void OnStarted()
|
||||
{
|
||||
if (Started != null)
|
||||
Started(this, progressChangedArgs);
|
||||
}
|
||||
|
||||
protected virtual void OnProgressChanged()
|
||||
{
|
||||
if (ProgressChanged != null)
|
||||
ProgressChanged(this, progressChangedArgs);
|
||||
}
|
||||
|
||||
protected virtual void OnFinished()
|
||||
{
|
||||
if (Finished != null)
|
||||
Finished(this, progressChangedArgs);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Will be raised when the operation has started
|
||||
/// </summary>
|
||||
public event EventHandler<ProgressEventArgs> Started;
|
||||
/// <summary>
|
||||
/// Will be raised when the progress has changed
|
||||
/// </summary>
|
||||
public event EventHandler<ProgressEventArgs> ProgressChanged;
|
||||
/// <summary>
|
||||
/// Will be raised when the operation has finished
|
||||
/// </summary>
|
||||
public event EventHandler<ProgressEventArgs> Finished;
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// General Information about an assembly is controlled through the following
|
||||
// set of attributes. Change these attribute values to modify the information
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyTitle("MSGer.tk")]
|
||||
[assembly: AssemblyDescription("MSGer.tk program")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("MSGer.tk")]
|
||||
[assembly: AssemblyCopyright("GNU GPLv3")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Setting ComVisible to false makes the types in this assembly not visible
|
||||
// to COM components. If you need to access a type in this assembly from
|
||||
// COM, set the ComVisible attribute to true on that type.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
||||
[assembly: Guid("d2fdb449-71d7-425e-942b-516005de4cc8")]
|
||||
|
||||
// Version information for an assembly consists of the following four values:
|
||||
//
|
||||
// Major Version
|
||||
// Minor Version
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
103
Versions/Less Closed Beta/v2.0/Post-Cleanup/MSGer.tk (C#)/Properties/Resources.Designer.cs
generated
Normal file
|
@ -0,0 +1,103 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.18444
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace MSGer.tk.Properties {
|
||||
using System;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// A strongly-typed resource class, for looking up localized strings, etc.
|
||||
/// </summary>
|
||||
// This class was auto-generated by the StronglyTypedResourceBuilder
|
||||
// class via a tool like ResGen or Visual Studio.
|
||||
// To add or remove a member, edit your .ResX file then rerun ResGen
|
||||
// with the /str option, or rebuild your VS project.
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources {
|
||||
|
||||
private static global::System.Resources.ResourceManager resourceMan;
|
||||
|
||||
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||
|
||||
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||
internal Resources() {
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Returns the cached ResourceManager instance used by this class.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||
get {
|
||||
if (object.ReferenceEquals(resourceMan, null)) {
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("MSGer.tk.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Overrides the current thread's CurrentUICulture property for all
|
||||
/// resource lookups using this strongly typed resource class.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Globalization.CultureInfo Culture {
|
||||
get {
|
||||
return resourceCulture;
|
||||
}
|
||||
set {
|
||||
resourceCulture = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Blue_Wallpaper_HD {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Blue-Wallpaper-HD", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Blue_Wallpaper_HD_2 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Blue-Wallpaper-HD 2", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Keresősáv {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Keresősáv", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Menü_2 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Menü 2", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,133 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="Keresősáv" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Keresősáv.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Blue-Wallpaper-HD 2" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Blue-Wallpaper-HD 21.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Menü 2" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Menü 22.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Blue-Wallpaper-HD" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Blue-Wallpaper-HD1.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
</root>
|
30
Versions/Less Closed Beta/v2.0/Post-Cleanup/MSGer.tk (C#)/Properties/Settings.Designer.cs
generated
Normal file
|
@ -0,0 +1,30 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.17929
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace MSGer.tk.Properties
|
||||
{
|
||||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
|
||||
{
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
||||
public static Settings Default
|
||||
{
|
||||
get
|
||||
{
|
||||
return defaultInstance;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
|
||||
<Profiles>
|
||||
<Profile Name="(Default)" />
|
||||
</Profiles>
|
||||
<Settings />
|
||||
</SettingsFile>
|
After Width: | Height: | Size: 35 KiB |
After Width: | Height: | Size: 35 KiB |
After Width: | Height: | Size: 123 KiB |
After Width: | Height: | Size: 123 KiB |
After Width: | Height: | Size: 7.2 KiB |
After Width: | Height: | Size: 708 B |
After Width: | Height: | Size: 708 B |
After Width: | Height: | Size: 708 B |
After Width: | Height: | Size: 1.8 KiB |
180
Versions/Less Closed Beta/v2.0/Post-Cleanup/MSGer.tk (C#)/SelectPartnerForm.Designer.cs
generated
Normal file
|
@ -0,0 +1,180 @@
|
|||
namespace MSGer.tk
|
||||
{
|
||||
partial class SelectPartnerForm
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
GlacialComponents.Controls.GLColumn glColumn1 = new GlacialComponents.Controls.GLColumn();
|
||||
GlacialComponents.Controls.GLItem glItem1 = new GlacialComponents.Controls.GLItem();
|
||||
GlacialComponents.Controls.GLSubItem glSubItem1 = new GlacialComponents.Controls.GLSubItem();
|
||||
this.partnerList = new GlacialComponents.Controls.GlacialList();
|
||||
this.selectedPartners = new System.Windows.Forms.TextBox();
|
||||
this.okbtn = new System.Windows.Forms.Button();
|
||||
this.cancelbtn = new System.Windows.Forms.Button();
|
||||
this.titleText = new System.Windows.Forms.Label();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// partnerList
|
||||
//
|
||||
this.partnerList.AllowColumnResize = false;
|
||||
this.partnerList.AllowMultiselect = true;
|
||||
this.partnerList.AlternateBackground = System.Drawing.Color.DarkGreen;
|
||||
this.partnerList.AlternatingColors = false;
|
||||
this.partnerList.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.partnerList.AutoHeight = true;
|
||||
this.partnerList.BackColor = System.Drawing.SystemColors.ControlLightLight;
|
||||
this.partnerList.BackgroundStretchToFit = true;
|
||||
glColumn1.ActivatedEmbeddedType = GlacialComponents.Controls.GLActivatedEmbeddedTypes.None;
|
||||
glColumn1.CheckBoxes = true;
|
||||
glColumn1.ImageIndex = -1;
|
||||
glColumn1.Name = "PartnerName";
|
||||
glColumn1.NumericSort = false;
|
||||
glColumn1.Text = "";
|
||||
glColumn1.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
glColumn1.Width = 100;
|
||||
this.partnerList.Columns.AddRange(new GlacialComponents.Controls.GLColumn[] {
|
||||
glColumn1});
|
||||
this.partnerList.ControlStyle = GlacialComponents.Controls.GLControlStyles.Normal;
|
||||
this.partnerList.ForeColor = System.Drawing.Color.Black;
|
||||
this.partnerList.FullRowSelect = true;
|
||||
this.partnerList.GridColor = System.Drawing.Color.LightGray;
|
||||
this.partnerList.GridLines = GlacialComponents.Controls.GLGridLines.gridBoth;
|
||||
this.partnerList.GridLineStyle = GlacialComponents.Controls.GLGridLineStyles.gridNone;
|
||||
this.partnerList.GridTypes = GlacialComponents.Controls.GLGridTypes.gridOnExists;
|
||||
this.partnerList.HeaderHeight = 0;
|
||||
this.partnerList.HeaderVisible = false;
|
||||
this.partnerList.HeaderWordWrap = false;
|
||||
this.partnerList.HotColumnTracking = false;
|
||||
this.partnerList.HotItemTracking = true;
|
||||
this.partnerList.HotTrackingColor = System.Drawing.Color.LightGray;
|
||||
this.partnerList.HoverEvents = false;
|
||||
this.partnerList.HoverTime = 1;
|
||||
this.partnerList.ImageList = null;
|
||||
this.partnerList.ItemHeight = 17;
|
||||
glItem1.BackColor = System.Drawing.Color.White;
|
||||
glItem1.ForeColor = System.Drawing.Color.Black;
|
||||
glItem1.RowBorderColor = System.Drawing.Color.Black;
|
||||
glItem1.RowBorderSize = 0;
|
||||
glSubItem1.BackColor = System.Drawing.Color.Empty;
|
||||
glSubItem1.Checked = false;
|
||||
glSubItem1.ForceText = false;
|
||||
glSubItem1.ForeColor = System.Drawing.Color.Black;
|
||||
glSubItem1.ImageAlignment = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
glSubItem1.ImageIndex = -1;
|
||||
glSubItem1.Text = "Test";
|
||||
glItem1.SubItems.AddRange(new GlacialComponents.Controls.GLSubItem[] {
|
||||
glSubItem1});
|
||||
glItem1.Text = "Test";
|
||||
this.partnerList.Items.AddRange(new GlacialComponents.Controls.GLItem[] {
|
||||
glItem1});
|
||||
this.partnerList.ItemWordWrap = false;
|
||||
this.partnerList.Location = new System.Drawing.Point(13, 26);
|
||||
this.partnerList.Name = "partnerList";
|
||||
this.partnerList.Selectable = true;
|
||||
this.partnerList.SelectedTextColor = System.Drawing.Color.White;
|
||||
this.partnerList.SelectionColor = System.Drawing.Color.DarkBlue;
|
||||
this.partnerList.ShowBorder = true;
|
||||
this.partnerList.ShowFocusRect = true;
|
||||
this.partnerList.Size = new System.Drawing.Size(359, 286);
|
||||
this.partnerList.SortType = GlacialComponents.Controls.SortTypes.InsertionSort;
|
||||
this.partnerList.SuperFlatHeaderColor = System.Drawing.Color.White;
|
||||
this.partnerList.TabIndex = 0;
|
||||
this.partnerList.Click += new System.EventHandler(this.ItemClicked);
|
||||
this.partnerList.DoubleClick += new System.EventHandler(this.ItemDoubleClick);
|
||||
//
|
||||
// selectedPartners
|
||||
//
|
||||
this.selectedPartners.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.selectedPartners.Location = new System.Drawing.Point(13, 319);
|
||||
this.selectedPartners.Multiline = true;
|
||||
this.selectedPartners.Name = "selectedPartners";
|
||||
this.selectedPartners.Size = new System.Drawing.Size(359, 103);
|
||||
this.selectedPartners.TabIndex = 1;
|
||||
//
|
||||
// okbtn
|
||||
//
|
||||
this.okbtn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.okbtn.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.okbtn.Location = new System.Drawing.Point(215, 428);
|
||||
this.okbtn.Name = "okbtn";
|
||||
this.okbtn.Size = new System.Drawing.Size(75, 23);
|
||||
this.okbtn.TabIndex = 2;
|
||||
this.okbtn.Text = "OK";
|
||||
this.okbtn.UseVisualStyleBackColor = true;
|
||||
this.okbtn.Click += new System.EventHandler(this.okbtn_Click);
|
||||
//
|
||||
// cancelbtn
|
||||
//
|
||||
this.cancelbtn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.cancelbtn.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||
this.cancelbtn.Location = new System.Drawing.Point(297, 429);
|
||||
this.cancelbtn.Name = "cancelbtn";
|
||||
this.cancelbtn.Size = new System.Drawing.Size(75, 23);
|
||||
this.cancelbtn.TabIndex = 3;
|
||||
this.cancelbtn.Text = "Mégse";
|
||||
this.cancelbtn.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// titleText
|
||||
//
|
||||
this.titleText.AutoSize = true;
|
||||
this.titleText.Location = new System.Drawing.Point(13, 7);
|
||||
this.titleText.Name = "titleText";
|
||||
this.titleText.Size = new System.Drawing.Size(53, 13);
|
||||
this.titleText.TabIndex = 4;
|
||||
this.titleText.Text = "Unknown";
|
||||
//
|
||||
// SelectPartnerForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BackColor = System.Drawing.Color.LightSkyBlue;
|
||||
this.ClientSize = new System.Drawing.Size(384, 462);
|
||||
this.Controls.Add(this.titleText);
|
||||
this.Controls.Add(this.cancelbtn);
|
||||
this.Controls.Add(this.okbtn);
|
||||
this.Controls.Add(this.selectedPartners);
|
||||
this.Controls.Add(this.partnerList);
|
||||
this.Name = "SelectPartnerForm";
|
||||
this.Text = "Partnerválasztás";
|
||||
this.ResizeEnd += new System.EventHandler(this.FormResizeFinish);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private GlacialComponents.Controls.GlacialList partnerList;
|
||||
private System.Windows.Forms.TextBox selectedPartners;
|
||||
private System.Windows.Forms.Button okbtn;
|
||||
private System.Windows.Forms.Button cancelbtn;
|
||||
private System.Windows.Forms.Label titleText;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,91 @@
|
|||
using GlacialComponents.Controls;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
public partial class SelectPartnerForm : Form
|
||||
{
|
||||
public SelectPartnerForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
this.Text = MainForm.SelectPartnerSender.Text; //2014.02.28.
|
||||
titleText.Text = MainForm.SelectPartnerSender.Text;
|
||||
|
||||
cancelbtn.Text = Language.GetCuurentLanguage().Strings["button_cancel"];
|
||||
|
||||
partnerList.Items.Clear();
|
||||
for (int x = 0; x < UserInfo.Partners.Count; x++) //Partners
|
||||
{
|
||||
try
|
||||
{
|
||||
partnerList.Items.Add(UserInfo.Partners[x].UserName);
|
||||
}
|
||||
catch (NullReferenceException)
|
||||
{
|
||||
break;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
MessageBox.Show(e.Message);
|
||||
break;
|
||||
}
|
||||
}
|
||||
partnerList.Columns[0].Width = partnerList.ClientSize.Width-5;
|
||||
}
|
||||
|
||||
private void FormResizeFinish(object sender, EventArgs e)
|
||||
{
|
||||
partnerList.Columns[0].Width = partnerList.ClientSize.Width-5;
|
||||
}
|
||||
|
||||
private void ItemClicked(object sender, EventArgs e)
|
||||
{
|
||||
for (int i = 0; i < partnerList.Items.Count; i++)
|
||||
{
|
||||
if(partnerList.Items[i].SubItems[0].Checked)
|
||||
{
|
||||
int p = selectedPartners.Text.IndexOf(partnerList.Items[i].SubItems[0].Text + ";");
|
||||
if (p == -1)
|
||||
{
|
||||
selectedPartners.Text += partnerList.Items[i].SubItems[0].Text + ";";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
int p = selectedPartners.Text.IndexOf(partnerList.Items[i].SubItems[0].Text + ";");
|
||||
if (p != -1) //Eltávolitja a nem kiválasztott partner előfordulását a listából - Megcsinálom visszafelé is
|
||||
selectedPartners.Text = selectedPartners.Text.Remove(p, partnerList.Items[i].SubItems[0].Text.Length+1); //Eltávolitja a ;-t is
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void ItemDoubleClick(object sender, EventArgs e)
|
||||
{
|
||||
int a = partnerList.HotItemIndex;
|
||||
if (partnerList.Items[a].SubItems[0].Checked)
|
||||
partnerList.Items[a].SubItems[0].Checked = false;
|
||||
else
|
||||
partnerList.Items[a].SubItems[0].Checked = true;
|
||||
ItemClicked(sender, e);
|
||||
}
|
||||
|
||||
public string[] Partners;
|
||||
private void okbtn_Click(object sender, EventArgs e)
|
||||
{
|
||||
while(selectedPartners.Text.Contains(' '))
|
||||
{ //Eltávolitja a szóközöket
|
||||
int x=selectedPartners.Text.IndexOf(' ');
|
||||
selectedPartners.Text.Remove(x, 1);
|
||||
}
|
||||
Partners = selectedPartners.Text.Split(';');
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,120 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
98
Versions/Less Closed Beta/v2.0/Post-Cleanup/MSGer.tk (C#)/Settings.Designer.cs
generated
Normal file
|
@ -0,0 +1,98 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.18444
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace MSGer.tk {
|
||||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "12.0.0.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
||||
public static Settings Default {
|
||||
get {
|
||||
return defaultInstance;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string email {
|
||||
get {
|
||||
return ((string)(this["email"]));
|
||||
}
|
||||
set {
|
||||
this["email"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string picupdatetime {
|
||||
get {
|
||||
return ((string)(this["picupdatetime"]));
|
||||
}
|
||||
set {
|
||||
this["picupdatetime"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("0")]
|
||||
public int windowstate {
|
||||
get {
|
||||
return ((int)(this["windowstate"]));
|
||||
}
|
||||
set {
|
||||
this["windowstate"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("hu")]
|
||||
public string lang {
|
||||
get {
|
||||
return ((string)(this["lang"]));
|
||||
}
|
||||
set {
|
||||
this["lang"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("4510")]
|
||||
public int port {
|
||||
get {
|
||||
return ((int)(this["port"]));
|
||||
}
|
||||
set {
|
||||
this["port"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("0")]
|
||||
public int lastusedemail {
|
||||
get {
|
||||
return ((int)(this["lastusedemail"]));
|
||||
}
|
||||
set {
|
||||
this["lastusedemail"] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
namespace MSGer.tk {
|
||||
|
||||
|
||||
// This class allows you to handle specific events on the settings class:
|
||||
// The SettingChanging event is raised before a setting's value is changed.
|
||||
// The PropertyChanged event is raised after a setting's value is changed.
|
||||
// The SettingsLoaded event is raised after the setting values are loaded.
|
||||
// The SettingsSaving event is raised before the setting values are saved.
|
||||
internal sealed partial class Settings {
|
||||
|
||||
public Settings() {
|
||||
// // To add event handlers for saving and changing settings, uncomment the lines below:
|
||||
//
|
||||
// this.SettingChanging += this.SettingChangingEventHandler;
|
||||
//
|
||||
// this.SettingsSaving += this.SettingsSavingEventHandler;
|
||||
//
|
||||
}
|
||||
|
||||
private void SettingChangingEventHandler(object sender, System.Configuration.SettingChangingEventArgs e) {
|
||||
// Add code to handle the SettingChangingEvent event here.
|
||||
}
|
||||
|
||||
private void SettingsSavingEventHandler(object sender, System.ComponentModel.CancelEventArgs e) {
|
||||
// Add code to handle the SettingsSaving event here.
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="MSGer.tk" GeneratedClassName="Settings">
|
||||
<Profiles />
|
||||
<Settings>
|
||||
<Setting Name="email" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="picupdatetime" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="windowstate" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">0</Value>
|
||||
</Setting>
|
||||
<Setting Name="lang" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">hu</Value>
|
||||
</Setting>
|
||||
<Setting Name="port" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">4510</Value>
|
||||
</Setting>
|
||||
<Setting Name="lastusedemail" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">0</Value>
|
||||
</Setting>
|
||||
</Settings>
|
||||
</SettingsFile>
|
230
Versions/Less Closed Beta/v2.0/Post-Cleanup/MSGer.tk (C#)/SettingsForm.Designer.cs
generated
Normal file
|
@ -0,0 +1,230 @@
|
|||
namespace MSGer.tk
|
||||
{
|
||||
partial class SettingsForm
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
GlacialComponents.Controls.GLColumn glColumn2 = new GlacialComponents.Controls.GLColumn();
|
||||
GlacialComponents.Controls.GLItem glItem2 = new GlacialComponents.Controls.GLItem();
|
||||
GlacialComponents.Controls.GLSubItem glSubItem2 = new GlacialComponents.Controls.GLSubItem();
|
||||
this.glacialList1 = new GlacialComponents.Controls.GlacialList();
|
||||
this.panel1 = new System.Windows.Forms.Panel();
|
||||
this.personal = new System.Windows.Forms.Label();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.nameText = new System.Windows.Forms.TextBox();
|
||||
this.messageText = new System.Windows.Forms.TextBox();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.okbtn = new System.Windows.Forms.Button();
|
||||
this.cancelbtn = new System.Windows.Forms.Button();
|
||||
this.panel1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// glacialList1
|
||||
//
|
||||
this.glacialList1.AllowColumnResize = true;
|
||||
this.glacialList1.AllowMultiselect = false;
|
||||
this.glacialList1.AlternateBackground = System.Drawing.Color.DarkGreen;
|
||||
this.glacialList1.AlternatingColors = false;
|
||||
this.glacialList1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)));
|
||||
this.glacialList1.AutoHeight = true;
|
||||
this.glacialList1.BackColor = System.Drawing.Color.White;
|
||||
this.glacialList1.BackgroundStretchToFit = true;
|
||||
glColumn2.ActivatedEmbeddedType = GlacialComponents.Controls.GLActivatedEmbeddedTypes.None;
|
||||
glColumn2.CheckBoxes = false;
|
||||
glColumn2.ImageIndex = -1;
|
||||
glColumn2.Name = "Column1";
|
||||
glColumn2.NumericSort = false;
|
||||
glColumn2.Text = "Column";
|
||||
glColumn2.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
glColumn2.Width = 115;
|
||||
this.glacialList1.Columns.AddRange(new GlacialComponents.Controls.GLColumn[] {
|
||||
glColumn2});
|
||||
this.glacialList1.ControlStyle = GlacialComponents.Controls.GLControlStyles.Normal;
|
||||
this.glacialList1.ForeColor = System.Drawing.Color.Black;
|
||||
this.glacialList1.FullRowSelect = true;
|
||||
this.glacialList1.GridColor = System.Drawing.Color.LightGray;
|
||||
this.glacialList1.GridLines = GlacialComponents.Controls.GLGridLines.gridBoth;
|
||||
this.glacialList1.GridLineStyle = GlacialComponents.Controls.GLGridLineStyles.gridSolid;
|
||||
this.glacialList1.GridTypes = GlacialComponents.Controls.GLGridTypes.gridOnExists;
|
||||
this.glacialList1.HeaderHeight = 0;
|
||||
this.glacialList1.HeaderVisible = false;
|
||||
this.glacialList1.HeaderWordWrap = false;
|
||||
this.glacialList1.HotColumnTracking = false;
|
||||
this.glacialList1.HotItemTracking = true;
|
||||
this.glacialList1.HotTrackingColor = System.Drawing.Color.LightGray;
|
||||
this.glacialList1.HoverEvents = false;
|
||||
this.glacialList1.HoverTime = 1;
|
||||
this.glacialList1.ImageList = null;
|
||||
this.glacialList1.ItemHeight = 17;
|
||||
glItem2.BackColor = System.Drawing.Color.White;
|
||||
glItem2.ForeColor = System.Drawing.Color.Black;
|
||||
glItem2.RowBorderColor = System.Drawing.Color.Black;
|
||||
glItem2.RowBorderSize = 0;
|
||||
glSubItem2.BackColor = System.Drawing.Color.Empty;
|
||||
glSubItem2.Checked = false;
|
||||
glSubItem2.ForceText = false;
|
||||
glSubItem2.ForeColor = System.Drawing.Color.Black;
|
||||
glSubItem2.ImageAlignment = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
glSubItem2.ImageIndex = -1;
|
||||
glSubItem2.Text = "Személyes";
|
||||
glItem2.SubItems.AddRange(new GlacialComponents.Controls.GLSubItem[] {
|
||||
glSubItem2});
|
||||
glItem2.Text = "Személyes";
|
||||
this.glacialList1.Items.AddRange(new GlacialComponents.Controls.GLItem[] {
|
||||
glItem2});
|
||||
this.glacialList1.ItemWordWrap = false;
|
||||
this.glacialList1.Location = new System.Drawing.Point(12, 12);
|
||||
this.glacialList1.Name = "glacialList1";
|
||||
this.glacialList1.Selectable = true;
|
||||
this.glacialList1.SelectedTextColor = System.Drawing.Color.White;
|
||||
this.glacialList1.SelectionColor = System.Drawing.Color.DarkBlue;
|
||||
this.glacialList1.ShowBorder = true;
|
||||
this.glacialList1.ShowFocusRect = false;
|
||||
this.glacialList1.Size = new System.Drawing.Size(120, 418);
|
||||
this.glacialList1.SortType = GlacialComponents.Controls.SortTypes.InsertionSort;
|
||||
this.glacialList1.SuperFlatHeaderColor = System.Drawing.Color.White;
|
||||
this.glacialList1.TabIndex = 0;
|
||||
this.glacialList1.Text = "glacialList1";
|
||||
this.glacialList1.Click += new System.EventHandler(this.glacialList1_Click);
|
||||
//
|
||||
// panel1
|
||||
//
|
||||
this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.panel1.AutoScroll = true;
|
||||
this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.panel1.Controls.Add(this.messageText);
|
||||
this.panel1.Controls.Add(this.label2);
|
||||
this.panel1.Controls.Add(this.nameText);
|
||||
this.panel1.Controls.Add(this.label1);
|
||||
this.panel1.Controls.Add(this.personal);
|
||||
this.panel1.Location = new System.Drawing.Point(139, 13);
|
||||
this.panel1.Name = "panel1";
|
||||
this.panel1.Size = new System.Drawing.Size(385, 391);
|
||||
this.panel1.TabIndex = 1;
|
||||
//
|
||||
// personal
|
||||
//
|
||||
this.personal.AutoSize = true;
|
||||
this.personal.Font = new System.Drawing.Font("Microsoft Sans Serif", 20.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));
|
||||
this.personal.Location = new System.Drawing.Point(3, 0);
|
||||
this.personal.Name = "personal";
|
||||
this.personal.Size = new System.Drawing.Size(147, 31);
|
||||
this.personal.TabIndex = 0;
|
||||
this.personal.Text = "Személyes";
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(9, 35);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(27, 13);
|
||||
this.label1.TabIndex = 1;
|
||||
this.label1.Text = "Név";
|
||||
//
|
||||
// nameText
|
||||
//
|
||||
this.nameText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.nameText.Location = new System.Drawing.Point(12, 52);
|
||||
this.nameText.Name = "nameText";
|
||||
this.nameText.Size = new System.Drawing.Size(354, 20);
|
||||
this.nameText.TabIndex = 2;
|
||||
//
|
||||
// messageText
|
||||
//
|
||||
this.messageText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.messageText.Location = new System.Drawing.Point(12, 99);
|
||||
this.messageText.Name = "messageText";
|
||||
this.messageText.Size = new System.Drawing.Size(354, 20);
|
||||
this.messageText.TabIndex = 4;
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(9, 82);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(41, 13);
|
||||
this.label2.TabIndex = 3;
|
||||
this.label2.Text = "Üzenet";
|
||||
//
|
||||
// okbtn
|
||||
//
|
||||
this.okbtn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.okbtn.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.okbtn.Location = new System.Drawing.Point(368, 410);
|
||||
this.okbtn.Name = "okbtn";
|
||||
this.okbtn.Size = new System.Drawing.Size(75, 23);
|
||||
this.okbtn.TabIndex = 2;
|
||||
this.okbtn.Text = "OK";
|
||||
this.okbtn.UseVisualStyleBackColor = true;
|
||||
this.okbtn.Click += new System.EventHandler(this.okbtn_Click);
|
||||
//
|
||||
// cancelbtn
|
||||
//
|
||||
this.cancelbtn.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||
this.cancelbtn.Location = new System.Drawing.Point(449, 410);
|
||||
this.cancelbtn.Name = "cancelbtn";
|
||||
this.cancelbtn.Size = new System.Drawing.Size(75, 23);
|
||||
this.cancelbtn.TabIndex = 3;
|
||||
this.cancelbtn.Text = "Mégse";
|
||||
this.cancelbtn.UseVisualStyleBackColor = true;
|
||||
this.cancelbtn.Click += new System.EventHandler(this.cancelbtn_Click);
|
||||
//
|
||||
// SettingsForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(536, 442);
|
||||
this.Controls.Add(this.cancelbtn);
|
||||
this.Controls.Add(this.okbtn);
|
||||
this.Controls.Add(this.panel1);
|
||||
this.Controls.Add(this.glacialList1);
|
||||
this.Name = "SettingsForm";
|
||||
this.Text = "SettingsForm";
|
||||
this.panel1.ResumeLayout(false);
|
||||
this.panel1.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private GlacialComponents.Controls.GlacialList glacialList1;
|
||||
private System.Windows.Forms.Panel panel1;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Label personal;
|
||||
private System.Windows.Forms.TextBox nameText;
|
||||
private System.Windows.Forms.TextBox messageText;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.Button okbtn;
|
||||
private System.Windows.Forms.Button cancelbtn;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
public partial class SettingsForm : Form
|
||||
{
|
||||
public SettingsForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
this.Text = Language.GetCuurentLanguage().Strings["settings"];
|
||||
nameText.Text = CurrentUser.Name;
|
||||
messageText.Text = CurrentUser.Message;
|
||||
}
|
||||
|
||||
private void glacialList1_Click(object sender, EventArgs e)
|
||||
{
|
||||
int tmp = glacialList1.HotItemIndex;
|
||||
if (tmp > glacialList1.Items.Count)
|
||||
return;
|
||||
switch(tmp)
|
||||
{
|
||||
case 0:
|
||||
//Személyes
|
||||
panel1.ScrollControlIntoView(personal);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private void okbtn_Click(object sender, EventArgs e)
|
||||
{
|
||||
string result = Networking.SendRequest("updatesettings", nameText.Text + "ͦ" + messageText.Text, 0, true);
|
||||
if (result != "Success")
|
||||
MessageBox.Show(Language.GetCuurentLanguage().Strings["error"] + ": " + result);
|
||||
else
|
||||
this.Close();
|
||||
}
|
||||
|
||||
private void cancelbtn_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.Close();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,120 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
|
@ -0,0 +1,213 @@
|
|||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Threading;
|
||||
using System.ComponentModel;
|
||||
|
||||
namespace HdSystemLibrary.IO
|
||||
{
|
||||
/// <summary>
|
||||
/// A delegate for reporting binary progress
|
||||
/// </summary>
|
||||
/// <param name="bytesRead">The amount of bytes already read</param>
|
||||
/// <param name="totalBytesToRead">The amount of total bytes to read. Can be -1 if unknown.</param>
|
||||
public delegate void ProgressChange(long bytesRead, long totalBytesToRead);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// The arguments for StreamHelper.CopyFrom(Stream, Stream, CopyFromArguments)
|
||||
/// </summary>
|
||||
public sealed class CopyFromArguments
|
||||
{
|
||||
/// <summary>
|
||||
/// Creates the default arguments
|
||||
/// </summary>
|
||||
public CopyFromArguments()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates arguments with a progress change callback.
|
||||
/// </summary>
|
||||
/// <param name="progressChangeCallback">The progress change callback (see <see cref="ProgressChangeCallback"/>)</param>
|
||||
public CopyFromArguments(ProgressChange progressChangeCallback)
|
||||
{
|
||||
ProgressChangeCallback = progressChangeCallback;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates arguments with a progress change callback and an interval between to progress changes.
|
||||
/// </summary>
|
||||
/// <param name="progressChangeCallback">The progress change callback (see <see cref="ProgressChangeCallback"/>)</param>
|
||||
/// <param name="progressChangeCallbackInterval">The interval between to progress change callbacks (see <see cref="ProgressChangeCallbackInterval"/>)</param>
|
||||
public CopyFromArguments(ProgressChange progressChangeCallback,
|
||||
TimeSpan progressChangeCallbackInterval)
|
||||
{
|
||||
ProgressChangeCallback = progressChangeCallback;
|
||||
ProgressChangeCallbackInterval = progressChangeCallbackInterval;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates arguments with a progress change callback, an interval between to progress changes and a total length
|
||||
/// </summary>
|
||||
/// <param name="progressChangeCallback">The progress change callback (see <see cref="ProgressChangeCallback"/>)</param>
|
||||
/// <param name="progressChangeCallbackInterval">The interval between to progress change callbacks (see <see cref="ProgressChangeCallbackInterval"/>)</param>
|
||||
/// <param name="totalLength">The total bytes to read (see <see cref="TotalLength"/>)</param>
|
||||
public CopyFromArguments(ProgressChange progressChangeCallback,
|
||||
TimeSpan progressChangeCallbackInterval, long totalLength)
|
||||
{
|
||||
ProgressChangeCallback = progressChangeCallback;
|
||||
ProgressChangeCallbackInterval = progressChangeCallbackInterval;
|
||||
TotalLength = totalLength;
|
||||
}
|
||||
|
||||
private long totalLength = -1;
|
||||
/// <summary>
|
||||
/// Gets or sets the total length of stream. Set to -1 if the value has to be determined by stream.Length.
|
||||
/// If the stream is not seekable, the total length in the progress report will be stay -1.
|
||||
/// </summary>
|
||||
public long TotalLength { get { return totalLength; } set { totalLength = value; } }
|
||||
|
||||
private int bufferSize = 4096;
|
||||
/// <summary>
|
||||
/// Gets or sets the size of the buffer used for copying bytes. Default is 4096.
|
||||
/// </summary>
|
||||
public int BufferSize { get { return bufferSize; } set { bufferSize = value; } }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the callback for progress-report. Default is null.
|
||||
/// </summary>
|
||||
public ProgressChange ProgressChangeCallback { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the event for aborting the operation. Default is null.
|
||||
/// </summary>
|
||||
public WaitHandle StopEvent { get; set; }
|
||||
|
||||
private TimeSpan progressCallbackInterval = TimeSpan.FromSeconds(0.2);
|
||||
/// <summary>
|
||||
/// Gets or sets the time interval between to progress change callbacks. Default is 200 ms.
|
||||
/// </summary>
|
||||
public TimeSpan ProgressChangeCallbackInterval
|
||||
{
|
||||
get { return progressCallbackInterval; }
|
||||
set { progressCallbackInterval = value; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// A static class for basic stream operations.
|
||||
/// </summary>
|
||||
public static class StreamHelper
|
||||
{
|
||||
/// <summary>
|
||||
/// Copies the source stream into the current while reporting the progress.
|
||||
/// The copying process is done in a separate thread, therefore the stream has to
|
||||
/// support reading from a different thread as the one used for construction.
|
||||
/// Nethertheless, the separate thread is synchronized with the calling thread.
|
||||
/// The callback in arguments is called from the calling thread.
|
||||
/// </summary>
|
||||
/// <param name="target">The current stream</param>
|
||||
/// <param name="source">The source stream</param>
|
||||
/// <param name="arguments">The arguments for copying</param>
|
||||
/// <returns>The number of bytes actually copied.</returns>
|
||||
/// <exception cref="ArgumentNullException">Thrown if either target, source of arguments is null</exception>
|
||||
/// <exception cref="ArgumentOutOfRangeException">Thrown if arguments.BufferSize is less than 128 or arguments.ProgressChangeCallbackInterval is less than 0</exception>
|
||||
public static long CopyFrom(this Stream target, Stream source, CopyFromArguments arguments)
|
||||
{
|
||||
if (target == null)
|
||||
throw new ArgumentNullException("target");
|
||||
if (source == null)
|
||||
throw new ArgumentNullException("source");
|
||||
if (arguments == null)
|
||||
throw new ArgumentNullException("arguments");
|
||||
if (arguments.BufferSize < 128)
|
||||
throw new ArgumentOutOfRangeException("arguments.BufferSize",
|
||||
arguments.BufferSize, "BufferSize has to be greater or equal than 128.");
|
||||
if (arguments.ProgressChangeCallbackInterval.TotalSeconds < 0)
|
||||
throw new ArgumentOutOfRangeException("arguments.ProgressChangeCallbackInterval",
|
||||
arguments.ProgressChangeCallbackInterval,
|
||||
"ProgressChangeCallbackInterval has to be greater or equal than 0.");
|
||||
|
||||
long length = 0;
|
||||
|
||||
bool runningFlag = true;
|
||||
|
||||
Action<Stream, Stream, int> copyMemory = (Stream _target, Stream _source, int bufferSize) =>
|
||||
//Raw copy-operation, "length" and "runningFlag" are enclosed as closure
|
||||
{
|
||||
int count;
|
||||
byte[] buffer = new byte[bufferSize];
|
||||
|
||||
while ((count = _source.Read(buffer, 0, bufferSize)) != 0 && runningFlag)
|
||||
{
|
||||
_target.Write(buffer, 0, count);
|
||||
long newLength = length + count;
|
||||
//"length" can be read as this is the only thread which writes to "length"
|
||||
Interlocked.Exchange(ref length, newLength);
|
||||
}
|
||||
};
|
||||
|
||||
IAsyncResult asyncResult = copyMemory.BeginInvoke(target, source, arguments.BufferSize, null, null);
|
||||
|
||||
long totalLength = arguments.TotalLength;
|
||||
if (totalLength == -1 && source.CanSeek)
|
||||
totalLength = (long)source.Length;
|
||||
|
||||
DateTime lastCallback = DateTime.Now;
|
||||
long lastLength = 0;
|
||||
|
||||
while (!asyncResult.IsCompleted)
|
||||
{
|
||||
if (arguments.StopEvent != null && arguments.StopEvent.WaitOne(0))
|
||||
runningFlag = false; //to indicate that the copy-operation has to abort
|
||||
|
||||
Thread.Sleep((int)(arguments.ProgressChangeCallbackInterval.TotalMilliseconds / 10));
|
||||
|
||||
if (arguments.ProgressChangeCallback != null
|
||||
&& DateTime.Now - lastCallback > arguments.ProgressChangeCallbackInterval)
|
||||
{
|
||||
long currentLength = Interlocked.Read(ref length); //Since length is 64 bit, reading is not an atomic operation.
|
||||
|
||||
if (currentLength != lastLength)
|
||||
{
|
||||
lastLength = currentLength;
|
||||
lastCallback = DateTime.Now;
|
||||
arguments.ProgressChangeCallback(currentLength, totalLength);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (arguments.ProgressChangeCallback != null && lastLength != length)
|
||||
//to ensure that the callback is called once with maximum progress
|
||||
arguments.ProgressChangeCallback(length, totalLength);
|
||||
|
||||
copyMemory.EndInvoke(asyncResult);
|
||||
|
||||
return length;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Copies the source stream into the current
|
||||
/// </summary>
|
||||
/// <param name="stream">The current stream</param>
|
||||
/// <param name="source">The source stream</param>
|
||||
/// <param name="bufferSize">The size of buffer used for copying bytes</param>
|
||||
/// <returns>The number of bytes actually copied.</returns>
|
||||
public static long CopyFrom(this Stream stream, Stream source, int bufferSize = 4096)
|
||||
{
|
||||
int count = 0;
|
||||
byte[] buffer = new byte[bufferSize];
|
||||
long length = 0;
|
||||
|
||||
while ((count = source.Read(buffer, 0, bufferSize)) != 0)
|
||||
{
|
||||
length += count;
|
||||
stream.Write(buffer, 0, count);
|
||||
}
|
||||
|
||||
return length;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,774 @@
|
|||
// C# TaskbarNotifier Class v1.0
|
||||
// by John O'Byrne - 02 december 2002
|
||||
// 01 april 2003 : Small fix in the OnMouseUp handler
|
||||
// 11 january 2003 : Patrick Vanden Driessche <pvdd@devbrains.be> added a few enhancements
|
||||
// Small Enhancements/Bugfix
|
||||
// Small bugfix: When Content text measures larger than the corresponding ContentRectangle
|
||||
// the focus rectangle was not correctly drawn. This has been solved.
|
||||
// Added KeepVisibleOnMouseOver
|
||||
// Added ReShowOnMouseOver
|
||||
// Added If the Title or Content are too long to fit in the corresponding Rectangles,
|
||||
// the text is truncateed and the ellipses are appended (StringTrimming).
|
||||
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using System.Drawing.Imaging;
|
||||
using System.Drawing.Drawing2D;
|
||||
using System.Windows.Forms;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace CustomUIControls
|
||||
{
|
||||
/// <summary>
|
||||
/// TaskbarNotifier allows to display MSN style/Skinned instant messaging popups
|
||||
/// </summary>
|
||||
public class TaskbarNotifier : System.Windows.Forms.Form
|
||||
{
|
||||
#region TaskbarNotifier Protected Members
|
||||
protected Bitmap BackgroundBitmap = null;
|
||||
protected Bitmap CloseBitmap = null;
|
||||
protected Point CloseBitmapLocation;
|
||||
protected Size CloseBitmapSize;
|
||||
protected Rectangle RealTitleRectangle;
|
||||
protected Rectangle RealContentRectangle;
|
||||
protected Rectangle WorkAreaRectangle;
|
||||
protected Timer timer = new Timer();
|
||||
protected TaskbarStates taskbarState = TaskbarStates.hidden;
|
||||
protected string titleText;
|
||||
protected string contentText;
|
||||
protected Color normalTitleColor = Color.FromArgb(255,0,0);
|
||||
protected Color hoverTitleColor = Color.FromArgb(255,0,0);
|
||||
protected Color normalContentColor = Color.FromArgb(0,0,0);
|
||||
protected Color hoverContentColor = Color.FromArgb(0,0,0x66);
|
||||
protected Font normalTitleFont = new Font("Arial",12,FontStyle.Regular,GraphicsUnit.Pixel);
|
||||
protected Font hoverTitleFont = new Font("Arial",12,FontStyle.Bold,GraphicsUnit.Pixel);
|
||||
protected Font normalContentFont = new Font("Arial",11,FontStyle.Regular,GraphicsUnit.Pixel);
|
||||
protected Font hoverContentFont = new Font("Arial",11,FontStyle.Regular,GraphicsUnit.Pixel);
|
||||
protected int nShowEvents;
|
||||
protected int nHideEvents;
|
||||
protected int nVisibleEvents;
|
||||
protected int nIncrementShow;
|
||||
protected int nIncrementHide;
|
||||
protected bool bIsMouseOverPopup = false;
|
||||
protected bool bIsMouseOverClose = false;
|
||||
protected bool bIsMouseOverContent = false;
|
||||
protected bool bIsMouseOverTitle = false;
|
||||
protected bool bIsMouseDown = false;
|
||||
protected bool bKeepVisibleOnMouseOver = true; // Added Rev 002
|
||||
protected bool bReShowOnMouseOver = false; // Added Rev 002
|
||||
#endregion
|
||||
|
||||
#region TaskbarNotifier Public Members
|
||||
public Rectangle TitleRectangle;
|
||||
public Rectangle ContentRectangle;
|
||||
public bool TitleClickable = false;
|
||||
public bool ContentClickable = true;
|
||||
public bool CloseClickable = true;
|
||||
public bool EnableSelectionRectangle = true;
|
||||
public event EventHandler CloseClick = null;
|
||||
public event EventHandler TitleClick = null;
|
||||
public event EventHandler ContentClick = null;
|
||||
#endregion
|
||||
|
||||
#region TaskbarNotifier Enums
|
||||
/// <summary>
|
||||
/// List of the different popup animation status
|
||||
/// </summary>
|
||||
public enum TaskbarStates
|
||||
{
|
||||
hidden = 0,
|
||||
appearing = 1,
|
||||
visible = 2,
|
||||
disappearing = 3
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region TaskbarNotifier Constructor
|
||||
/// <summary>
|
||||
/// The Constructor for TaskbarNotifier
|
||||
/// </summary>
|
||||
public TaskbarNotifier()
|
||||
{
|
||||
// Window Style
|
||||
FormBorderStyle = FormBorderStyle.None;
|
||||
WindowState = FormWindowState.Minimized;
|
||||
base.Show();
|
||||
base.Hide();
|
||||
WindowState = FormWindowState.Normal;
|
||||
ShowInTaskbar = false;
|
||||
TopMost = true;
|
||||
MaximizeBox = false;
|
||||
MinimizeBox = false;
|
||||
ControlBox = false;
|
||||
|
||||
timer.Enabled = true;
|
||||
timer.Tick += new EventHandler(OnTimer);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region TaskbarNotifier Properties
|
||||
/// <summary>
|
||||
/// Get the current TaskbarState (hidden, showing, visible, hiding)
|
||||
/// </summary>
|
||||
public TaskbarStates TaskbarState
|
||||
{
|
||||
get
|
||||
{
|
||||
return taskbarState;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get/Set the popup Title Text
|
||||
/// </summary>
|
||||
public string TitleText
|
||||
{
|
||||
get
|
||||
{
|
||||
return titleText;
|
||||
}
|
||||
set
|
||||
{
|
||||
titleText=value;
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get/Set the popup Content Text
|
||||
/// </summary>
|
||||
public string ContentText
|
||||
{
|
||||
get
|
||||
{
|
||||
return contentText;
|
||||
}
|
||||
set
|
||||
{
|
||||
contentText=value;
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get/Set the Normal Title Color
|
||||
/// </summary>
|
||||
public Color NormalTitleColor
|
||||
{
|
||||
get
|
||||
{
|
||||
return normalTitleColor;
|
||||
}
|
||||
set
|
||||
{
|
||||
normalTitleColor = value;
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get/Set the Hover Title Color
|
||||
/// </summary>
|
||||
public Color HoverTitleColor
|
||||
{
|
||||
get
|
||||
{
|
||||
return hoverTitleColor;
|
||||
}
|
||||
set
|
||||
{
|
||||
hoverTitleColor = value;
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get/Set the Normal Content Color
|
||||
/// </summary>
|
||||
public Color NormalContentColor
|
||||
{
|
||||
get
|
||||
{
|
||||
return normalContentColor;
|
||||
}
|
||||
set
|
||||
{
|
||||
normalContentColor = value;
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get/Set the Hover Content Color
|
||||
/// </summary>
|
||||
public Color HoverContentColor
|
||||
{
|
||||
get
|
||||
{
|
||||
return hoverContentColor;
|
||||
}
|
||||
set
|
||||
{
|
||||
hoverContentColor = value;
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get/Set the Normal Title Font
|
||||
/// </summary>
|
||||
public Font NormalTitleFont
|
||||
{
|
||||
get
|
||||
{
|
||||
return normalTitleFont;
|
||||
}
|
||||
set
|
||||
{
|
||||
normalTitleFont = value;
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get/Set the Hover Title Font
|
||||
/// </summary>
|
||||
public Font HoverTitleFont
|
||||
{
|
||||
get
|
||||
{
|
||||
return hoverTitleFont;
|
||||
}
|
||||
set
|
||||
{
|
||||
hoverTitleFont = value;
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get/Set the Normal Content Font
|
||||
/// </summary>
|
||||
public Font NormalContentFont
|
||||
{
|
||||
get
|
||||
{
|
||||
return normalContentFont;
|
||||
}
|
||||
set
|
||||
{
|
||||
normalContentFont = value;
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get/Set the Hover Content Font
|
||||
/// </summary>
|
||||
public Font HoverContentFont
|
||||
{
|
||||
get
|
||||
{
|
||||
return hoverContentFont;
|
||||
}
|
||||
set
|
||||
{
|
||||
hoverContentFont = value;
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Indicates if the popup should remain visible when the mouse pointer is over it.
|
||||
/// Added Rev 002
|
||||
/// </summary>
|
||||
public bool KeepVisibleOnMousOver
|
||||
{
|
||||
get
|
||||
{
|
||||
return bKeepVisibleOnMouseOver;
|
||||
}
|
||||
set
|
||||
{
|
||||
bKeepVisibleOnMouseOver=value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Indicates if the popup should appear again when mouse moves over it while it's disappearing.
|
||||
/// Added Rev 002
|
||||
/// </summary>
|
||||
public bool ReShowOnMouseOver
|
||||
{
|
||||
get
|
||||
{
|
||||
return bReShowOnMouseOver;
|
||||
}
|
||||
set
|
||||
{
|
||||
bReShowOnMouseOver=value;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region TaskbarNotifier Public Methods
|
||||
//[DllImport("user32.dll")]
|
||||
//private static extern Boolean ShowWindow(IntPtr hWnd,Int32 nCmdShow);
|
||||
/// <summary>
|
||||
/// Displays the popup for a certain amount of time
|
||||
/// </summary>
|
||||
/// <param name="strTitle">The string which will be shown as the title of the popup</param>
|
||||
/// <param name="strContent">The string which will be shown as the content of the popup</param>
|
||||
/// <param name="nTimeToShow">Duration of the showing animation (in milliseconds)</param>
|
||||
/// <param name="nTimeToStay">Duration of the visible state before collapsing (in milliseconds)</param>
|
||||
/// <param name="nTimeToHide">Duration of the hiding animation (in milliseconds)</param>
|
||||
/// <returns>Nothing</returns>
|
||||
public void Show(string strTitle, string strContent, int nTimeToShow, int nTimeToStay, int nTimeToHide)
|
||||
{
|
||||
WorkAreaRectangle = Screen.GetWorkingArea(WorkAreaRectangle);
|
||||
titleText = strTitle;
|
||||
contentText = strContent;
|
||||
nVisibleEvents = nTimeToStay;
|
||||
CalculateMouseRectangles();
|
||||
|
||||
// We calculate the pixel increment and the timer value for the showing animation
|
||||
int nEvents;
|
||||
if (nTimeToShow > 10)
|
||||
{
|
||||
nEvents = Math.Min((nTimeToShow / 10), BackgroundBitmap.Height);
|
||||
nShowEvents = nTimeToShow / nEvents;
|
||||
nIncrementShow = BackgroundBitmap.Height / nEvents;
|
||||
}
|
||||
else
|
||||
{
|
||||
nShowEvents = 10;
|
||||
nIncrementShow = BackgroundBitmap.Height;
|
||||
}
|
||||
|
||||
// We calculate the pixel increment and the timer value for the hiding animation
|
||||
if( nTimeToHide > 10)
|
||||
{
|
||||
nEvents = Math.Min((nTimeToHide / 10), BackgroundBitmap.Height);
|
||||
nHideEvents = nTimeToHide / nEvents;
|
||||
nIncrementHide = BackgroundBitmap.Height / nEvents;
|
||||
}
|
||||
else
|
||||
{
|
||||
nHideEvents = 10;
|
||||
nIncrementHide = BackgroundBitmap.Height;
|
||||
}
|
||||
|
||||
switch (taskbarState)
|
||||
{
|
||||
case TaskbarStates.hidden:
|
||||
taskbarState = TaskbarStates.appearing;
|
||||
SetBounds(WorkAreaRectangle.Right-BackgroundBitmap.Width-17, WorkAreaRectangle.Bottom-1, BackgroundBitmap.Width, 0);
|
||||
timer.Interval = nShowEvents;
|
||||
timer.Start();
|
||||
// We Show the popup without stealing focus
|
||||
//ShowWindow(this.Handle, 4);
|
||||
Show(); //2014.04.13.
|
||||
break;
|
||||
|
||||
case TaskbarStates.appearing:
|
||||
Refresh();
|
||||
break;
|
||||
|
||||
case TaskbarStates.visible:
|
||||
timer.Stop();
|
||||
timer.Interval = nVisibleEvents;
|
||||
timer.Start();
|
||||
Refresh();
|
||||
break;
|
||||
|
||||
case TaskbarStates.disappearing:
|
||||
timer.Stop();
|
||||
taskbarState = TaskbarStates.visible;
|
||||
SetBounds(WorkAreaRectangle.Right-BackgroundBitmap.Width-17, WorkAreaRectangle.Bottom-BackgroundBitmap.Height-1, BackgroundBitmap.Width, BackgroundBitmap.Height);
|
||||
timer.Interval = nVisibleEvents;
|
||||
timer.Start();
|
||||
Refresh();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Hides the popup
|
||||
/// </summary>
|
||||
/// <returns>Nothing</returns>
|
||||
public new void Hide()
|
||||
{
|
||||
if (taskbarState != TaskbarStates.hidden)
|
||||
{
|
||||
timer.Stop();
|
||||
taskbarState = TaskbarStates.hidden;
|
||||
base.Hide();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the background bitmap and its transparency color
|
||||
/// </summary>
|
||||
/// <param name="strFilename">Path of the Background Bitmap on the disk</param>
|
||||
/// <param name="transparencyColor">Color of the Bitmap which won't be visible</param>
|
||||
/// <returns>Nothing</returns>
|
||||
public void SetBackgroundBitmap(string strFilename, Color transparencyColor)
|
||||
{
|
||||
BackgroundBitmap = new Bitmap(strFilename);
|
||||
Width = BackgroundBitmap.Width;
|
||||
Height = BackgroundBitmap.Height;
|
||||
Region = BitmapToRegion(BackgroundBitmap, transparencyColor);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the background bitmap and its transparency color
|
||||
/// </summary>
|
||||
/// <param name="image">Image/Bitmap object which represents the Background Bitmap</param>
|
||||
/// <param name="transparencyColor">Color of the Bitmap which won't be visible</param>
|
||||
/// <returns>Nothing</returns>
|
||||
public void SetBackgroundBitmap(Image image, Color transparencyColor)
|
||||
{
|
||||
BackgroundBitmap = new Bitmap(image);
|
||||
Width = BackgroundBitmap.Width;
|
||||
Height = BackgroundBitmap.Height;
|
||||
Region = BitmapToRegion(BackgroundBitmap, transparencyColor);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the 3-State Close Button bitmap, its transparency color and its coordinates
|
||||
/// </summary>
|
||||
/// <param name="strFilename">Path of the 3-state Close button Bitmap on the disk (width must a multiple of 3)</param>
|
||||
/// <param name="transparencyColor">Color of the Bitmap which won't be visible</param>
|
||||
/// <param name="position">Location of the close button on the popup</param>
|
||||
/// <returns>Nothing</returns>
|
||||
public void SetCloseBitmap(string strFilename, Color transparencyColor, Point position)
|
||||
{
|
||||
CloseBitmap = new Bitmap(strFilename);
|
||||
CloseBitmap.MakeTransparent(transparencyColor);
|
||||
CloseBitmapSize = new Size(CloseBitmap.Width/3, CloseBitmap.Height);
|
||||
CloseBitmapLocation = position;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the 3-State Close Button bitmap, its transparency color and its coordinates
|
||||
/// </summary>
|
||||
/// <param name="image">Image/Bitmap object which represents the 3-state Close button Bitmap (width must be a multiple of 3)</param>
|
||||
/// <param name="transparencyColor">Color of the Bitmap which won't be visible</param>
|
||||
/// /// <param name="position">Location of the close button on the popup</param>
|
||||
/// <returns>Nothing</returns>
|
||||
public void SetCloseBitmap(Image image, Color transparencyColor, Point position)
|
||||
{
|
||||
CloseBitmap = new Bitmap(image);
|
||||
CloseBitmap.MakeTransparent(transparencyColor);
|
||||
CloseBitmapSize = new Size(CloseBitmap.Width/3, CloseBitmap.Height);
|
||||
CloseBitmapLocation = position;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region TaskbarNotifier Protected Methods
|
||||
protected void DrawCloseButton(Graphics grfx)
|
||||
{
|
||||
if (CloseBitmap != null)
|
||||
{
|
||||
Rectangle rectDest = new Rectangle(CloseBitmapLocation, CloseBitmapSize);
|
||||
Rectangle rectSrc;
|
||||
|
||||
if (bIsMouseOverClose)
|
||||
{
|
||||
if (bIsMouseDown)
|
||||
rectSrc = new Rectangle(new Point(CloseBitmapSize.Width*2, 0), CloseBitmapSize);
|
||||
else
|
||||
rectSrc = new Rectangle(new Point(CloseBitmapSize.Width, 0), CloseBitmapSize);
|
||||
}
|
||||
else
|
||||
rectSrc = new Rectangle(new Point(0, 0), CloseBitmapSize);
|
||||
|
||||
|
||||
grfx.DrawImage(CloseBitmap, rectDest, rectSrc, GraphicsUnit.Pixel);
|
||||
}
|
||||
}
|
||||
|
||||
protected void DrawText(Graphics grfx)
|
||||
{
|
||||
if (titleText != null && titleText.Length != 0)
|
||||
{
|
||||
StringFormat sf = new StringFormat();
|
||||
sf.Alignment = StringAlignment.Near;
|
||||
sf.LineAlignment = StringAlignment.Center;
|
||||
sf.FormatFlags = StringFormatFlags.NoWrap;
|
||||
sf.Trimming = StringTrimming.EllipsisCharacter; // Added Rev 002
|
||||
if (bIsMouseOverTitle)
|
||||
grfx.DrawString(titleText, hoverTitleFont, new SolidBrush(hoverTitleColor), TitleRectangle, sf);
|
||||
else
|
||||
grfx.DrawString(titleText, normalTitleFont, new SolidBrush(normalTitleColor), TitleRectangle, sf);
|
||||
}
|
||||
|
||||
if (contentText != null && contentText.Length != 0)
|
||||
{
|
||||
StringFormat sf = new StringFormat();
|
||||
sf.Alignment = StringAlignment.Center;
|
||||
sf.LineAlignment = StringAlignment.Center;
|
||||
sf.FormatFlags = StringFormatFlags.MeasureTrailingSpaces;
|
||||
sf.Trimming = StringTrimming.Word; // Added Rev 002
|
||||
|
||||
if (bIsMouseOverContent)
|
||||
{
|
||||
grfx.DrawString(contentText, hoverContentFont, new SolidBrush(hoverContentColor), ContentRectangle, sf);
|
||||
if (EnableSelectionRectangle)
|
||||
ControlPaint.DrawBorder3D(grfx, RealContentRectangle, Border3DStyle.Etched, Border3DSide.Top | Border3DSide.Bottom | Border3DSide.Left | Border3DSide.Right);
|
||||
|
||||
}
|
||||
else
|
||||
grfx.DrawString(contentText, normalContentFont, new SolidBrush(normalContentColor), ContentRectangle, sf);
|
||||
}
|
||||
}
|
||||
|
||||
protected void CalculateMouseRectangles()
|
||||
{
|
||||
Graphics grfx = CreateGraphics();
|
||||
StringFormat sf = new StringFormat();
|
||||
sf.Alignment = StringAlignment.Center;
|
||||
sf.LineAlignment = StringAlignment.Center;
|
||||
sf.FormatFlags = StringFormatFlags.MeasureTrailingSpaces;
|
||||
SizeF sizefTitle = grfx.MeasureString(titleText, hoverTitleFont, TitleRectangle.Width, sf);
|
||||
SizeF sizefContent = grfx.MeasureString(contentText, hoverContentFont, ContentRectangle.Width, sf);
|
||||
grfx.Dispose();
|
||||
|
||||
// Added Rev 002
|
||||
//We should check if the title size really fits inside the pre-defined title rectangle
|
||||
if (sizefTitle.Height > TitleRectangle.Height)
|
||||
{
|
||||
RealTitleRectangle = new Rectangle(TitleRectangle.Left, TitleRectangle.Top, TitleRectangle.Width , TitleRectangle.Height );
|
||||
}
|
||||
else
|
||||
{
|
||||
RealTitleRectangle = new Rectangle(TitleRectangle.Left, TitleRectangle.Top, (int)sizefTitle.Width, (int)sizefTitle.Height);
|
||||
}
|
||||
RealTitleRectangle.Inflate(0,2);
|
||||
|
||||
// Added Rev 002
|
||||
//We should check if the Content size really fits inside the pre-defined Content rectangle
|
||||
if (sizefContent.Height > ContentRectangle.Height)
|
||||
{
|
||||
RealContentRectangle = new Rectangle((ContentRectangle.Width-(int)sizefContent.Width)/2+ContentRectangle.Left, ContentRectangle.Top, (int)sizefContent.Width, ContentRectangle.Height );
|
||||
}
|
||||
else
|
||||
{
|
||||
RealContentRectangle = new Rectangle((ContentRectangle.Width-(int)sizefContent.Width)/2+ContentRectangle.Left, (ContentRectangle.Height-(int)sizefContent.Height)/2+ContentRectangle.Top, (int)sizefContent.Width, (int)sizefContent.Height);
|
||||
}
|
||||
RealContentRectangle.Inflate(0,2);
|
||||
}
|
||||
|
||||
protected Region BitmapToRegion(Bitmap bitmap, Color transparencyColor)
|
||||
{
|
||||
if (bitmap == null)
|
||||
throw new ArgumentNullException("Bitmap", "Bitmap cannot be null!");
|
||||
|
||||
int height = bitmap.Height;
|
||||
int width = bitmap.Width;
|
||||
|
||||
GraphicsPath path = new GraphicsPath();
|
||||
|
||||
for (int j=0; j<height; j++ )
|
||||
for (int i=0; i<width; i++)
|
||||
{
|
||||
if (bitmap.GetPixel(i, j) == transparencyColor)
|
||||
continue;
|
||||
|
||||
int x0 = i;
|
||||
|
||||
while ((i < width) && (bitmap.GetPixel(i, j) != transparencyColor))
|
||||
i++;
|
||||
|
||||
path.AddRectangle(new Rectangle(x0, j, i-x0, 1));
|
||||
}
|
||||
|
||||
Region region = new Region(path);
|
||||
path.Dispose();
|
||||
return region;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region TaskbarNotifier Events Overrides
|
||||
protected void OnTimer(Object obj, EventArgs ea)
|
||||
{
|
||||
switch (taskbarState)
|
||||
{
|
||||
case TaskbarStates.appearing:
|
||||
if (Height < BackgroundBitmap.Height)
|
||||
SetBounds(Left, Top-nIncrementShow ,Width, Height + nIncrementShow);
|
||||
else
|
||||
{
|
||||
timer.Stop();
|
||||
Height = BackgroundBitmap.Height;
|
||||
timer.Interval = nVisibleEvents;
|
||||
taskbarState = TaskbarStates.visible;
|
||||
timer.Start();
|
||||
}
|
||||
break;
|
||||
|
||||
case TaskbarStates.visible:
|
||||
timer.Stop();
|
||||
timer.Interval = nHideEvents;
|
||||
// Added Rev 002
|
||||
if ((bKeepVisibleOnMouseOver && !bIsMouseOverPopup ) || (!bKeepVisibleOnMouseOver))
|
||||
{
|
||||
taskbarState = TaskbarStates.disappearing;
|
||||
}
|
||||
//taskbarState = TaskbarStates.disappearing; // Rev 002
|
||||
timer.Start();
|
||||
break;
|
||||
|
||||
case TaskbarStates.disappearing:
|
||||
// Added Rev 002
|
||||
if (bReShowOnMouseOver && bIsMouseOverPopup)
|
||||
{
|
||||
taskbarState = TaskbarStates.appearing;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (Top < WorkAreaRectangle.Bottom)
|
||||
SetBounds(Left, Top + nIncrementHide, Width, Height - nIncrementHide);
|
||||
else
|
||||
Hide();
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
protected override void OnMouseEnter(EventArgs ea)
|
||||
{
|
||||
base.OnMouseEnter(ea);
|
||||
bIsMouseOverPopup = true;
|
||||
Refresh();
|
||||
}
|
||||
|
||||
protected override void OnMouseLeave(EventArgs ea)
|
||||
{
|
||||
base.OnMouseLeave(ea);
|
||||
bIsMouseOverPopup = false;
|
||||
bIsMouseOverClose = false;
|
||||
bIsMouseOverTitle = false;
|
||||
bIsMouseOverContent = false;
|
||||
Refresh();
|
||||
}
|
||||
|
||||
protected override void OnMouseMove(MouseEventArgs mea)
|
||||
{
|
||||
base.OnMouseMove(mea);
|
||||
|
||||
bool bContentModified = false;
|
||||
|
||||
if ( (mea.X > CloseBitmapLocation.X) && (mea.X < CloseBitmapLocation.X + CloseBitmapSize.Width) && (mea.Y > CloseBitmapLocation.Y) && (mea.Y < CloseBitmapLocation.Y + CloseBitmapSize.Height) && CloseClickable )
|
||||
{
|
||||
if (!bIsMouseOverClose)
|
||||
{
|
||||
bIsMouseOverClose = true;
|
||||
bIsMouseOverTitle = false;
|
||||
bIsMouseOverContent = false;
|
||||
Cursor = Cursors.Hand;
|
||||
bContentModified = true;
|
||||
}
|
||||
}
|
||||
else if (RealContentRectangle.Contains(new Point(mea.X, mea.Y)) && ContentClickable)
|
||||
{
|
||||
if (!bIsMouseOverContent)
|
||||
{
|
||||
bIsMouseOverClose = false;
|
||||
bIsMouseOverTitle = false;
|
||||
bIsMouseOverContent = true;
|
||||
Cursor = Cursors.Hand;
|
||||
bContentModified = true;
|
||||
}
|
||||
}
|
||||
else if (RealTitleRectangle.Contains(new Point(mea.X, mea.Y)) && TitleClickable)
|
||||
{
|
||||
if (!bIsMouseOverTitle)
|
||||
{
|
||||
bIsMouseOverClose = false;
|
||||
bIsMouseOverTitle = true;
|
||||
bIsMouseOverContent = false;
|
||||
Cursor = Cursors.Hand;
|
||||
bContentModified = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (bIsMouseOverClose || bIsMouseOverTitle || bIsMouseOverContent)
|
||||
bContentModified = true;
|
||||
|
||||
bIsMouseOverClose = false;
|
||||
bIsMouseOverTitle = false;
|
||||
bIsMouseOverContent = false;
|
||||
Cursor = Cursors.Default;
|
||||
}
|
||||
|
||||
if (bContentModified)
|
||||
Refresh();
|
||||
}
|
||||
|
||||
protected override void OnMouseDown(MouseEventArgs mea)
|
||||
{
|
||||
base.OnMouseDown(mea);
|
||||
bIsMouseDown = true;
|
||||
|
||||
if (bIsMouseOverClose)
|
||||
Refresh();
|
||||
}
|
||||
|
||||
protected override void OnMouseUp(MouseEventArgs mea)
|
||||
{
|
||||
base.OnMouseUp(mea);
|
||||
bIsMouseDown = false;
|
||||
|
||||
if (bIsMouseOverClose)
|
||||
{
|
||||
Hide();
|
||||
|
||||
if (CloseClick != null)
|
||||
CloseClick(this, new EventArgs());
|
||||
}
|
||||
else if (bIsMouseOverTitle)
|
||||
{
|
||||
if (TitleClick != null)
|
||||
TitleClick(this, new EventArgs());
|
||||
}
|
||||
else if (bIsMouseOverContent)
|
||||
{
|
||||
if (ContentClick != null)
|
||||
ContentClick(this, new EventArgs());
|
||||
}
|
||||
}
|
||||
|
||||
protected override void OnPaintBackground(PaintEventArgs pea)
|
||||
{
|
||||
Graphics grfx = pea.Graphics;
|
||||
grfx.PageUnit = GraphicsUnit.Pixel;
|
||||
|
||||
Graphics offScreenGraphics;
|
||||
Bitmap offscreenBitmap;
|
||||
|
||||
offscreenBitmap = new Bitmap(BackgroundBitmap.Width, BackgroundBitmap.Height);
|
||||
offScreenGraphics = Graphics.FromImage(offscreenBitmap);
|
||||
|
||||
if (BackgroundBitmap != null)
|
||||
{
|
||||
offScreenGraphics.DrawImage(BackgroundBitmap, 0, 0, BackgroundBitmap.Width, BackgroundBitmap.Height);
|
||||
}
|
||||
|
||||
DrawCloseButton(offScreenGraphics);
|
||||
DrawText(offScreenGraphics);
|
||||
|
||||
grfx.DrawImage(offscreenBitmap, 0, 0);
|
||||
}
|
||||
#endregion
|
||||
|
||||
//Talált javítások
|
||||
protected override bool ShowWithoutActivation
|
||||
{
|
||||
get { return true; }
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,197 @@
|
|||
using Khendys.Controls;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Drawing.Imaging;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
class TextFormat
|
||||
{
|
||||
public TextFormat()
|
||||
{
|
||||
var img = Image.FromFile("emoticons\\iconbase.png");
|
||||
var bitmap = new Bitmap(img);
|
||||
int x = 0;
|
||||
Bitmap bitmap1 = bitmap.Clone(new Rectangle(x, 0, 19, 19), bitmap.PixelFormat);
|
||||
x += 19;
|
||||
new TextFormat(":)", bitmap1);
|
||||
new TextFormat(":-)", bitmap1);
|
||||
bitmap1 = bitmap.Clone(new Rectangle(x, 0, 19, 19), bitmap.PixelFormat);
|
||||
x += 19;
|
||||
new TextFormat(":D", bitmap1);
|
||||
new TextFormat(":-D", bitmap1);
|
||||
new TextFormat(":d", bitmap1);
|
||||
new TextFormat(":-d", bitmap1);
|
||||
bitmap1 = bitmap.Clone(new Rectangle(x, 0, 19, 19), bitmap.PixelFormat);
|
||||
x += 19;
|
||||
new TextFormat(";)", bitmap1);
|
||||
new TextFormat(";-)", bitmap1);
|
||||
bitmap1 = bitmap.Clone(new Rectangle(x, 0, 19, 19), bitmap.PixelFormat);
|
||||
x += 19;
|
||||
new TextFormat(":O", bitmap1);
|
||||
new TextFormat(":o", bitmap1);
|
||||
new TextFormat(":-O", bitmap1);
|
||||
new TextFormat(":-o", bitmap1);
|
||||
bitmap1 = bitmap.Clone(new Rectangle(x, 0, 19, 19), bitmap.PixelFormat);
|
||||
x += 19;
|
||||
new TextFormat(":P", bitmap1);
|
||||
new TextFormat(":-P", bitmap1);
|
||||
new TextFormat(":p", bitmap1);
|
||||
new TextFormat(":-p", bitmap1);
|
||||
|
||||
bitmap.Dispose();
|
||||
}
|
||||
public TextFormat(string text, Image image)
|
||||
{
|
||||
var tmp = new ImgReplaceStrs();
|
||||
tmp.Text = text;
|
||||
tmp.Image = image;
|
||||
ImgReplaceStrings.Add(tmp);
|
||||
}
|
||||
public static List<ImgReplaceStrs> ImgReplaceStrings = new List<ImgReplaceStrs>();
|
||||
public static ExRichTextBox Parse(ExRichTextBox textbox)
|
||||
{
|
||||
int j;
|
||||
do
|
||||
{
|
||||
j = 0;
|
||||
for (int i = 0; i < ImgReplaceStrings.Count; i++)
|
||||
{
|
||||
int index = textbox.Text.IndexOf(ImgReplaceStrings[i].Text);
|
||||
if (index >= 0)
|
||||
{ //Feldolgozza a hangualtjeleket
|
||||
textbox.Select(index, ImgReplaceStrings[i].Text.Length);
|
||||
textbox.InsertImage(ImgReplaceStrings[i].Image);
|
||||
//set = true;
|
||||
}
|
||||
else j++;
|
||||
}
|
||||
}
|
||||
while (j != ImgReplaceStrings.Count);
|
||||
return textbox;
|
||||
}
|
||||
public static ExExRichTextBox Parse(ExExRichTextBox textbox)
|
||||
{
|
||||
int pos = textbox.SelectionStart;
|
||||
int len = textbox.SelectionLength;
|
||||
((ChatForm)textbox.Parent).InternalMessageChange = true;
|
||||
textbox.Rtf = TextFormat.removeRtfObjects(textbox.Rtf);
|
||||
((ChatForm)textbox.Parent).InternalMessageChange = false;
|
||||
for (int i = 0; i < ImgReplaceStrings.Count; i++)
|
||||
{
|
||||
for (int j = 0; textbox.Text.IndexOf(ImgReplaceStrings[i].Text, j + 1) != -1; j = textbox.Text.IndexOf(ImgReplaceStrings[i].Text, j + 1) + 1)
|
||||
{
|
||||
int index = textbox.Text.IndexOf(ImgReplaceStrings[i].Text, j) - 1;
|
||||
if (index >= 0)
|
||||
{ //Feldolgozza a hangualtjeleket
|
||||
((ChatForm)textbox.Parent).InternalMessageChange = true;
|
||||
textbox.Text = textbox.Text.Remove(index, ImgReplaceStrings[i].Text.Length);
|
||||
textbox.Select(index, 0);
|
||||
TextFormat.InsertHiddenText(textbox, ImgReplaceStrings[i].Text);
|
||||
textbox.Select(index + ImgReplaceStrings[i].Text.Length, 0);
|
||||
textbox.InsertImage(ImgReplaceStrings[i].Image);
|
||||
((ChatForm)textbox.Parent).InternalMessageChange = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
textbox.Select(pos, len);
|
||||
return textbox;
|
||||
}
|
||||
public static ExExRichTextBox InsertHiddenText(ExExRichTextBox textbox, string text)
|
||||
{
|
||||
textbox.SelectedRtf = @"{\rtf1\ansi{\v " + text + "}}";
|
||||
return textbox;
|
||||
}
|
||||
//http://stackoverflow.com/questions/14321385/how-to-make-richtextbox-text-only
|
||||
public static string removeRtfObjects(string rtf)
|
||||
{
|
||||
//removing {\pict or {\object groups
|
||||
string pattern = "\\{\\\\pict|\\{\\\\object";
|
||||
Match m = Regex.Match(rtf, pattern);
|
||||
while (m.Success)
|
||||
{
|
||||
int count = 1;
|
||||
for (int i = m.Index + 2; i <= rtf.Length; i++)
|
||||
{
|
||||
//start group
|
||||
if (rtf[i] == '{')
|
||||
{
|
||||
count += 1;
|
||||
//end group
|
||||
}
|
||||
else if (rtf[i] == '}')
|
||||
{
|
||||
count -= 1;
|
||||
}
|
||||
//found end of pict/object group
|
||||
if (count == 0)
|
||||
{
|
||||
rtf = rtf.Remove(m.Index, i - m.Index + 1);
|
||||
break; // TODO: might not be correct. Was : Exit For
|
||||
}
|
||||
}
|
||||
m = Regex.Match(rtf, pattern);
|
||||
//go again
|
||||
}
|
||||
return rtf;
|
||||
}
|
||||
|
||||
public static byte[] GetBytes(string str)
|
||||
{
|
||||
byte[] bytes = new byte[str.Length * sizeof(char)];
|
||||
System.Buffer.BlockCopy(str.ToCharArray(), 0, bytes, 0, bytes.Length);
|
||||
return bytes;
|
||||
}
|
||||
|
||||
public static string GetString(byte[] bytes)
|
||||
{
|
||||
char[] chars = new char[bytes.Length / sizeof(char)];
|
||||
System.Buffer.BlockCopy(bytes, 0, chars, 0, bytes.Length);
|
||||
return new string(chars);
|
||||
}
|
||||
}
|
||||
class ImgReplaceStrs
|
||||
{
|
||||
public string Text;
|
||||
public Image Image;
|
||||
}
|
||||
class ExExRichTextBox : ExRichTextBox
|
||||
{
|
||||
/*private string originaltext = "";
|
||||
public string OriginalText
|
||||
{
|
||||
get
|
||||
{
|
||||
//http://www.pcreview.co.uk/forums/re-adding-hidden-text-rich-text-box-control-t1348949.html
|
||||
for(int i=0; i<TextFormat.ImgReplaceStrings.Count; i++)
|
||||
TextFormat.ImgReplaceStrings[i].Text
|
||||
return originaltext;
|
||||
}
|
||||
set
|
||||
{
|
||||
originaltext = value;
|
||||
}
|
||||
}*/
|
||||
//public Dictionary<int, string> UsedIcons = new Dictionary<int,string>();
|
||||
/*public new void InsertImage(Image _image)
|
||||
{
|
||||
int sel = SelectionStart;
|
||||
int len = SelectionLength;
|
||||
string tmp=Text.Substring(sel, len);
|
||||
//UsedIcons.Add(sel, tmp);
|
||||
base.InsertImage(_image);
|
||||
//OriginalText = Text;
|
||||
//OriginalText.Remove(sel, len); - Magától eltávolítja
|
||||
*foreach(var entry in UsedIcons)
|
||||
{
|
||||
OriginalText = OriginalText.Insert(entry.Key, entry.Value);
|
||||
}*
|
||||
OriginalText = OriginalText.Insert(sel, tmp);
|
||||
}*/
|
||||
}
|
||||
}
|
|
@ -0,0 +1,142 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.IO;
|
||||
|
||||
namespace MSGer.tk
|
||||
{
|
||||
public partial class UserInfo
|
||||
{
|
||||
/*
|
||||
* 2014.03.07.
|
||||
* Az összes szükséges felhasználó szükséges adatai
|
||||
*/
|
||||
public int UserID { get; set; } //Az egész rendszerben egyedi azonosítója
|
||||
public int ListID { get; set; } //A listabeli azonosítója
|
||||
public static List<UserInfo> Partners = new List<UserInfo>();
|
||||
private string name;
|
||||
public string Name
|
||||
{
|
||||
get
|
||||
{
|
||||
return name;
|
||||
}
|
||||
set
|
||||
{
|
||||
name = value;
|
||||
List<int> list=GetChatWindows();
|
||||
for (int i = 0; i < list.Count; i++)
|
||||
{
|
||||
if (ChatForm.ChatWindows != null && ChatForm.ChatWindows[list[i]] != null && !ChatForm.ChatWindows[list[i]].IsDisposed)
|
||||
{ //ChatForm
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
private string message;
|
||||
public string Message
|
||||
{
|
||||
get
|
||||
{
|
||||
return message;
|
||||
}
|
||||
set
|
||||
{
|
||||
message = value;
|
||||
List<int> list = GetChatWindows();
|
||||
for (int i = 0; i < list.Count; i++)
|
||||
{
|
||||
if (ChatForm.ChatWindows != null && ChatForm.ChatWindows[list[i]] != null && !ChatForm.ChatWindows[list[i]].IsDisposed)
|
||||
{ //ChatForm
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
private string state;
|
||||
public string State
|
||||
{
|
||||
get
|
||||
{
|
||||
return state;
|
||||
}
|
||||
set
|
||||
{
|
||||
state = value;
|
||||
List<int> list = GetChatWindows();
|
||||
for (int i = 0; i < list.Count; i++)
|
||||
{
|
||||
if (ChatForm.ChatWindows != null && ChatForm.ChatWindows[list[i]] != null && !ChatForm.ChatWindows[list[i]].IsDisposed)
|
||||
{ //ChatForm
|
||||
string tmp = "Hiba";
|
||||
switch (value)
|
||||
{
|
||||
case "0":
|
||||
tmp = Language.GetCuurentLanguage().Strings["offline"];
|
||||
break;
|
||||
case "1":
|
||||
tmp = Language.GetCuurentLanguage().Strings["menu_file_status_online"];
|
||||
break;
|
||||
case "2":
|
||||
tmp = Language.GetCuurentLanguage().Strings["menu_file_status_busy"];
|
||||
break;
|
||||
case "3":
|
||||
tmp = Language.GetCuurentLanguage().Strings["menu_file_status_away"];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
public string UserName { get; set; }
|
||||
public string Email { get; set; }
|
||||
|
||||
public UserInfo()
|
||||
{
|
||||
|
||||
}
|
||||
public int PicUpdateTime = 0;
|
||||
public string GetImage()
|
||||
{
|
||||
/*
|
||||
* Szükséges információk az adatbázisban:
|
||||
* - Felhasználó képe a users táblában
|
||||
* - A legutóbbi képváltás dátuma
|
||||
* Ebből megállapitja a program, hogy le kell-e tölteni.
|
||||
* Eltárol helyileg is egy dátumot, és ha már frissitette egyszer a képet (újabb a helyi dátum, mint az adatbázisban),
|
||||
* akkor nem csinál semmit. Ha régebbi, akkor a partner azóta frissitette, tehát szükséges a letöltés.
|
||||
*/
|
||||
string str = Networking.SendRequest("getimage", UserID + "ͦ" + PicUpdateTime, 2, true); //SetVars
|
||||
/*
|
||||
* Ez a funkció automatikusan elküldi a bejelentkezett felhasználó azonositóját,
|
||||
* a PHP szkript pedig leellenőrzi, hogy egymásnak partnerei-e, ezáltal nem nézheti meg akárki akárkinek a profilképét
|
||||
* (pedig a legtöbb helyen igy van, de szerintem jobb igy; lehet, hogy beállithatóvá teszem)
|
||||
*/
|
||||
if (str == "Fail")
|
||||
{
|
||||
return "noimage.png";
|
||||
}
|
||||
else
|
||||
{ //Mentse el a képet
|
||||
string tmp = Path.GetTempPath();
|
||||
if (!Directory.Exists(tmp + "\\MSGer.tk\\pictures"))
|
||||
Directory.CreateDirectory(tmp + "\\MSGer.tk\\pictures");
|
||||
File.WriteAllText(tmp + "\\MSGer.tk\\pictures\\" + ListID + ".png", str);
|
||||
}
|
||||
return "noimage.png";
|
||||
}
|
||||
public List<int> GetChatWindows()
|
||||
{
|
||||
List<int> retlist = new List<int>();
|
||||
for(int x=0; x<ChatForm.ChatWindows.Count; x++)
|
||||
{
|
||||
if(ChatForm.ChatWindows[x].ChatPartners.Contains(ListID))
|
||||
{
|
||||
retlist.Add(x);
|
||||
}
|
||||
}
|
||||
return retlist;
|
||||
}
|
||||
}
|
||||
}
|