Using Harmony Function Action Command.
2 // Copyright (C) 2014-2016 Stéphane Lenclud.
4 // This file is part of SharpDisplayManager.
6 // SharpDisplayManager is free software: you can redistribute it and/or modify
7 // it under the terms of the GNU General Public License as published by
8 // the Free Software Foundation, either version 3 of the License, or
9 // (at your option) any later version.
11 // SharpDisplayManager is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
16 // You should have received a copy of the GNU General Public License
17 // along with SharpDisplayManager. If not, see <http://www.gnu.org/licenses/>.
21 using System.Collections.Generic;
23 using System.Threading.Tasks;
24 using System.Windows.Forms;
27 namespace SharpDisplayClientMessage
29 static public class Program
32 /// The main entry point for the application.
35 public static void Main()
37 //Set high priority to our process to avoid lags when rendering to our screen
38 //System.Diagnostics.Process.GetCurrentProcess().PriorityClass = System.Diagnostics.ProcessPriorityClass.AboveNormal;
40 Application.EnableVisualStyles();
41 Application.SetCompatibleTextRenderingDefault(false);
42 Application.Run(new FormClientMessage());
46 public static void MainWithParams(object aParams)
48 //Set high priority to our process to avoid lags when rendering to our screen
49 //System.Diagnostics.Process.GetCurrentProcess().PriorityClass = System.Diagnostics.ProcessPriorityClass.AboveNormal;
51 Application.EnableVisualStyles();
52 Application.SetCompatibleTextRenderingDefault(false);
53 FormClientMessage form = new FormClientMessage();
54 form.Params = (StartParams)aParams;
55 form.WindowState = FormWindowState.Minimized;
56 form.ShowInTaskbar = false;
57 Application.Run(form);
62 public class StartParams
64 public StartParams(string aPrimaryText, string aSecondaryText ="", int aDurationInMs = 5000, uint aClientPriority = SharpLib.Display.Priorities.Foreground)
66 PrimaryText = aPrimaryText;
67 SecondaryText = aSecondaryText;
68 Priority = aClientPriority;
69 DurationInMs = aDurationInMs;
72 public string PrimaryText { get; set; }
73 public string SecondaryText { get; set; }
74 public uint Priority { get; set; }
75 public int DurationInMs { get; set; }