Skip to content
This repository was archived by the owner on Sep 11, 2023. It is now read-only.

Commit 9016b0a

Browse files
committed
Add support for Discord RPC
1 parent 1ea9c90 commit 9016b0a

File tree

9 files changed

+78
-2
lines changed

9 files changed

+78
-2
lines changed

.idea/.gitignore

Whitespace-only changes.

Deploy/SpeditUpdater/SpeditUpdater.csproj

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,14 @@
6868
</Compile>
6969
</ItemGroup>
7070
<ItemGroup>
71+
<Reference Include="DiscordRPC, Version=1.0.150.0, Culture=neutral, PublicKeyToken=null">
72+
<HintPath>..\..\packages\DiscordRichPresence.1.0.150\lib\net35\DiscordRPC.dll</HintPath>
73+
<Private>True</Private>
74+
</Reference>
75+
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed">
76+
<HintPath>..\..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
77+
<Private>True</Private>
78+
</Reference>
7179
<Reference Include="System" />
7280
<Reference Include="System.Data" />
7381
<Reference Include="System.Drawing" />

Lysis/LysisForSpedit.csproj

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,14 @@
3030
<WarningLevel>4</WarningLevel>
3131
</PropertyGroup>
3232
<ItemGroup>
33+
<Reference Include="DiscordRPC, Version=1.0.150.0, Culture=neutral, PublicKeyToken=null">
34+
<HintPath>..\packages\DiscordRichPresence.1.0.150\lib\net35\DiscordRPC.dll</HintPath>
35+
<Private>True</Private>
36+
</Reference>
37+
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed">
38+
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
39+
<Private>True</Private>
40+
</Reference>
3341
<Reference Include="System" />
3442
</ItemGroup>
3543
<ItemGroup>

Program.cs

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
using System.Windows;
1010
using System.Windows.Media;
1111
using System.Runtime;
12+
using DiscordRPC;
1213

1314
namespace Spedit
1415
{
@@ -25,11 +26,23 @@ public static class Program
2526
public static UpdateInfo UpdateStatus;
2627

2728
public static bool RCCKMade = false;
28-
29+
public static DiscordRpcClient discordClient = new DiscordRpcClient("692110664948514836");
2930
[STAThread]
3031
public static void Main(string[] args)
3132
{
32-
bool mutexReserved;
33+
// Init Discord RPC
34+
discordClient.Initialize();
35+
36+
// Set default presence
37+
discordClient.SetPresence(new RichPresence()
38+
{
39+
State = "Test of SourcePawn",
40+
Assets = new Assets()
41+
{
42+
LargeImageKey = "immagine",
43+
}
44+
});
45+
bool mutexReserved;
3346
using (Mutex appMutex = new Mutex(true, "SpeditGlobalMutex", out mutexReserved))
3447
{
3548
if (mutexReserved)

SourcepawnCondenser/CondenserTest/CondenserTest.csproj

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,14 @@
3535
<WarningLevel>4</WarningLevel>
3636
</PropertyGroup>
3737
<ItemGroup>
38+
<Reference Include="DiscordRPC, Version=1.0.150.0, Culture=neutral, PublicKeyToken=null">
39+
<HintPath>..\..\packages\DiscordRichPresence.1.0.150\lib\net35\DiscordRPC.dll</HintPath>
40+
<Private>True</Private>
41+
</Reference>
42+
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed">
43+
<HintPath>..\..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
44+
<Private>True</Private>
45+
</Reference>
3846
<Reference Include="System" />
3947
<Reference Include="System.Data" />
4048
<Reference Include="System.Xml" />

SourcepawnCondenser/SourcepawnCondenser/SourcepawnCondenser.csproj

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,14 @@
6161
<Compile Include="Tokenizer\TokenKind.cs" />
6262
</ItemGroup>
6363
<ItemGroup>
64+
<Reference Include="DiscordRPC, Version=1.0.150.0, Culture=neutral, PublicKeyToken=null">
65+
<HintPath>..\..\packages\DiscordRichPresence.1.0.150\lib\net35\DiscordRPC.dll</HintPath>
66+
<Private>True</Private>
67+
</Reference>
68+
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed">
69+
<HintPath>..\..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
70+
<Private>True</Private>
71+
</Reference>
6472
</ItemGroup>
6573
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
6674
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.

Spedit.csproj

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,12 +78,20 @@
7878
<Reference Include="ControlzEx, Version=3.0.2.4, Culture=neutral, processorArchitecture=MSIL">
7979
<HintPath>packages\ControlzEx.3.0.2.4\lib\net45\ControlzEx.dll</HintPath>
8080
</Reference>
81+
<Reference Include="DiscordRPC, Version=1.0.150.0, Culture=neutral, PublicKeyToken=null">
82+
<HintPath>packages\DiscordRichPresence.1.0.150\lib\net35\DiscordRPC.dll</HintPath>
83+
<Private>True</Private>
84+
</Reference>
8185
<Reference Include="ICSharpCode.AvalonEdit, Version=5.0.3.0, Culture=neutral, PublicKeyToken=9cc39be672370310, processorArchitecture=MSIL">
8286
<HintPath>packages\AvalonEdit.5.0.4\lib\Net40\ICSharpCode.AvalonEdit.dll</HintPath>
8387
</Reference>
8488
<Reference Include="MahApps.Metro, Version=1.6.5.1, Culture=neutral, processorArchitecture=MSIL">
8589
<HintPath>packages\MahApps.Metro.1.6.5\lib\net45\MahApps.Metro.dll</HintPath>
8690
</Reference>
91+
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed">
92+
<HintPath>packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
93+
<Private>True</Private>
94+
</Reference>
8795
<Reference Include="PresentationCore" />
8896
<Reference Include="PresentationFramework" />
8997
<Reference Include="QueryMaster">

UI/MainWindow.xaml.cs

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
using System.ComponentModel;
1212
using System.Windows.Media.Animation;
1313
using System.Windows.Threading;
14+
using DiscordRPC;
1415
using Xceed.Wpf.AvalonDock.Layout;
1516
using Spedit.Interop.Updater; //not delete!
1617

@@ -174,6 +175,16 @@ public void AddEditorElement(string filePath, string name, bool SelectMe)
174175
if (SelectMe)
175176
{
176177
layoutDocument.IsSelected = true;
178+
Program.discordClient.SetPresence(new RichPresence()
179+
{
180+
Details = "Doing SPEdit",
181+
State = $"Editing {name}",
182+
Assets = new Assets()
183+
{
184+
LargeImageKey = "immagine",
185+
LargeImageText = "Just a Prank",
186+
}
187+
});
177188
}
178189
}
179190

@@ -184,6 +195,16 @@ private void DockingManager_ActiveContentChanged(object sender, EventArgs e)
184195
if (ee != null)
185196
{
186197
ee.editor.Focus();
198+
Program.discordClient.SetPresence(new RichPresence()
199+
{
200+
Details = "Doing SPEdit",
201+
State = $"Editing {Path.GetFileName(ee.FullFilePath)}",
202+
Assets = new Assets()
203+
{
204+
LargeImageKey = "immagine",
205+
LargeImageText = "Just a Prank",
206+
}
207+
});
187208
}
188209
}
189210

packages.config

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
<packages>
33
<package id="AvalonEdit" version="5.0.4" targetFramework="net45" />
44
<package id="ControlzEx" version="3.0.2.4" targetFramework="net45" />
5+
<package id="DiscordRichPresence" version="1.0.150" targetFramework="net45" />
56
<package id="Extended.Wpf.Toolkit" version="3.5.0" targetFramework="net45" />
67
<package id="MahApps.Metro" version="1.6.5" targetFramework="net45" />
8+
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net45" />
79
</packages>

0 commit comments

Comments
 (0)