207 lines
6 KiB
C#
207 lines
6 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.IO;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
using System.Collections;
|
|
|
|
namespace JellyfinRPC
|
|
{
|
|
public partial class Form1 : Form
|
|
{
|
|
public Form1()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
|
|
private void aboutToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
AboutBox1 form = new AboutBox1();
|
|
form.Show();
|
|
}
|
|
|
|
private void quitToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
Application.Exit();
|
|
}
|
|
|
|
private void serverConfigToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
ConfigForm form = new ConfigForm();
|
|
form.Show();
|
|
}
|
|
|
|
private static System.Timers.Timer consoleTimer;
|
|
|
|
private async void Form1_Load(object sender, EventArgs e)
|
|
{
|
|
minimiseToTrayToolStripMenuItem.Checked = bool.Parse(ConfigManager.GetEntry("MinimiseToTray", "False"));
|
|
closeToTrayToolStripMenuItem.Checked = bool.Parse(ConfigManager.GetEntry("CloseToTray", "False"));
|
|
ConfigManager.GetEntry("ApiKey", "");
|
|
ConfigManager.GetEntry("ServerURL", "");
|
|
ConfigManager.GetEntry("UserID", "");
|
|
ConfigManager.GetEntry("JellyfinToken", "");
|
|
openToTrayToolStripMenuItem.Checked = bool.Parse(ConfigManager.GetEntry("OpenToTray", "False"));
|
|
ConfigManager.GetEntry("JellyfinToken", "");
|
|
ConfigManager.GetEntry("DeviceID", $"{JellyfinAPI.DeviceID()}");
|
|
SetTimer();
|
|
await JellyfinAPI.Jellyfin();
|
|
|
|
|
|
|
|
|
|
//if (ConfigManager.GetEntry("JellyfinToken") == "" && ConfigManager.GetEntry("ApiKey") == "")
|
|
//{
|
|
// ConfigForm form = new ConfigForm();
|
|
// form.Show();
|
|
//}
|
|
|
|
}
|
|
|
|
private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
|
|
{
|
|
Form1 form = new Form1();
|
|
form.Show();
|
|
}
|
|
|
|
public void SetTimer()
|
|
{
|
|
consoleTimer = new System.Timers.Timer(5);
|
|
consoleTimer.Elapsed += ConsoleTimer_Elapsed;
|
|
consoleTimer.AutoReset = true;
|
|
consoleTimer.Enabled = true;
|
|
|
|
}
|
|
|
|
private void ConsoleTimer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
|
|
{
|
|
try
|
|
{
|
|
|
|
|
|
|
|
string last = listBox1.Items[listBox1.Items.Count - 1].ToString();
|
|
|
|
if (last == ConsoleManager.lineToWrite)
|
|
{
|
|
return;
|
|
}
|
|
else
|
|
{
|
|
listBox1.BeginInvoke((MethodInvoker)delegate
|
|
{
|
|
if (ConsoleManager.lineToWrite != null)
|
|
{
|
|
listBox1.Items.Add(ConsoleManager.lineToWrite);
|
|
}
|
|
|
|
|
|
});
|
|
}
|
|
|
|
|
|
|
|
}
|
|
catch (NullReferenceException)
|
|
{
|
|
return;
|
|
}
|
|
|
|
}
|
|
|
|
private void Form1_Resize(object sender, EventArgs e)
|
|
{
|
|
if (ConfigManager.GetEntry("MinimiseToTray") == "True")
|
|
{
|
|
if (this.WindowState == FormWindowState.Minimized)
|
|
{
|
|
Hide();
|
|
notifyIcon1.Visible = true;
|
|
notifyIcon1.ShowBalloonTip(5000);
|
|
}
|
|
}
|
|
}
|
|
|
|
private void minimiseToTrayToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
ConfigManager.SetEntry("MinimiseToTray", minimiseToTrayToolStripMenuItem.Checked.ToString());
|
|
}
|
|
|
|
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
|
|
{
|
|
|
|
}
|
|
|
|
private void showToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
Show();
|
|
notifyIcon1.Visible = false;
|
|
}
|
|
|
|
private void notifyIcon1_Click(object sender, EventArgs e)
|
|
{
|
|
Show();
|
|
}
|
|
|
|
private void quitToolStripMenuItem1_Click(object sender, EventArgs e)
|
|
{
|
|
Application.Exit();
|
|
}
|
|
|
|
private void openToTrayToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
ConfigManager.SetEntry("OpenToTray", openToTrayToolStripMenuItem.Checked.ToString());
|
|
}
|
|
|
|
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
|
|
{
|
|
if (ConfigManager.GetEntry("CloseToTray") == "True")
|
|
{
|
|
if (e.CloseReason == CloseReason.UserClosing)
|
|
{
|
|
e.Cancel = true;
|
|
Hide();
|
|
notifyIcon1.Visible = true;
|
|
notifyIcon1.ShowBalloonTip(5000);
|
|
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Application.Exit();
|
|
}
|
|
}
|
|
|
|
private void closeToTrayToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
ConfigManager.SetEntry("CloseToTray", closeToTrayToolStripMenuItem.Checked.ToString());
|
|
}
|
|
|
|
private void rPCSettingsToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
Form3 form = new Form3();
|
|
form.Show();
|
|
}
|
|
|
|
private void testConsoleToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
ConsoleManager.WriteToConsole("Testing Console...");
|
|
}
|
|
|
|
private void writeLabelToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
StatusManager.WriteStatusLine("Testing Status...");
|
|
}
|
|
|
|
|
|
private void toolStripStatusLabel1_Click(object sender, EventArgs e)
|
|
{
|
|
|
|
}
|
|
}
|
|
}
|