/
ThemeAgentDLLWrapper.cs
38 lines (29 loc) · 1.23 KB
/
ThemeAgentDLLWrapper.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
using System.Runtime.InteropServices;
using System;
using System.Text;
namespace ThemeAgentModel
{
class ThemeAgentDLLWrapper
{
public delegate void ThemeListCallback(String name, int index);
public delegate void ActiveThemeCallback(int index);
public delegate void ThemeInstallerCallback(int progress, String currentFile, bool installationDone);
[DllImport("themeagent.dll")]
public static extern void setThemeListCallback(ThemeListCallback tlc);
[DllImport("themeagent.dll")]
public static extern void forceThemeListUpdate();
[DllImport("themeagent.dll")]
public static extern void setActiveTheme(int index);
[DllImport("themeagent.dll")]
public static extern void setActiveThemeCallback(ActiveThemeCallback atc);
[DllImport("themeagent.dll")]
public static extern void getActiveThemeDetails(StringBuilder name,
StringBuilder author, StringBuilder version, StringBuilder preview);
[DllImport("themeagent.dll")]
public static extern void switchTheme();
[DllImport("themeagent.dll")]
public static extern void installTheme(String pathToArchive);
[DllImport("themeagent.dll")]
public static extern void setThemeInstallerCallback(ThemeInstallerCallback tic);
}
}