Changeset 3 for trunk/UFormMain.pas
- Timestamp:
- Jan 14, 2018, 10:48:21 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/UFormMain.pas
r2 r3 41 41 TFormMain = class(TForm) 42 42 AAlwaysOnTop: TAction; 43 AServiceStart: TAction; 44 AServiceRestart: TAction; 45 AServiceStop: TAction; 43 46 ARestore: TAction; 44 47 ARun: TAction; … … 86 89 MenuItem4: TMenuItem; 87 90 MenuItem40: TMenuItem; 91 MenuItem41: TMenuItem; 92 MenuItem42: TMenuItem; 93 MenuItem43: TMenuItem; 94 MenuItem44: TMenuItem; 95 MenuItem45: TMenuItem; 96 MenuItem46: TMenuItem; 97 MenuItem47: TMenuItem; 88 98 MenuItem5: TMenuItem; 89 99 MenuItem6: TMenuItem; … … 95 105 PageControl1: TPageControl; 96 106 Panel1: TPanel; 107 PopupMenuServices: TPopupMenu; 97 108 PopupMenuProcesses: TPopupMenu; 98 109 PopupMenuDetails: TPopupMenu; … … 110 121 procedure ARestoreExecute(Sender: TObject); 111 122 procedure ARunExecute(Sender: TObject); 123 procedure AServiceRestartExecute(Sender: TObject); 124 procedure AServiceStartExecute(Sender: TObject); 125 procedure AServiceStopExecute(Sender: TObject); 112 126 procedure FormCreate(Sender: TObject); 113 127 procedure FormDestroy(Sender: TObject); … … 118 132 procedure ListViewServicesData(Sender: TObject; Item: TListItem); 119 133 procedure PageControl1Change(Sender: TObject); 134 procedure PopupMenuServicesPopup(Sender: TObject); 120 135 procedure TimerRefreshTimer(Sender: TObject); 121 136 procedure TrayIcon1Click(Sender: TObject); … … 144 159 145 160 var 146 SystemServiceStatusText: array [TSystemServiceState] of string = (' Running', 'Stopped');161 SystemServiceStatusText: array [TSystemServiceState] of string = ('Stopped', 'Running'); 147 162 { TFormMain } 148 163 … … 176 191 end; 177 192 193 procedure TFormMain.AServiceRestartExecute(Sender: TObject); 194 begin 195 if Assigned(ListViewServices.Selected) then begin 196 ExecuteAnWaitForOutput('/bin/systemctl', ['restart', 197 TSystemService(ListViewServices.Selected.Data).Name]) 198 end; 199 end; 200 201 procedure TFormMain.AServiceStartExecute(Sender: TObject); 202 begin 203 ExecuteAnWaitForOutput('/bin/systemctl', ['start', 204 TSystemService(ListViewServices.Selected.Data).Name]) 205 end; 206 207 procedure TFormMain.AServiceStopExecute(Sender: TObject); 208 begin 209 ExecuteAnWaitForOutput('/bin/systemctl', ['stop', 210 TSystemService(ListViewServices.Selected.Data).Name]) 211 end; 212 178 213 procedure TFormMain.FormCreate(Sender: TObject); 179 214 begin … … 204 239 if Item.Index < Processes.Count then 205 240 with TSystemProcess(Processes[Item.Index]) do begin 241 Item.Data := Processes[Item.Index]; 206 242 Item.Caption := Name; 207 243 Item.SubItems.Add(IntToStr(PID)); … … 218 254 if Item.Index < Processes.Count then 219 255 with TSystemProcess(Processes[Item.Index]) do begin 256 Item.Data := Processes[Item.Index]; 220 257 Item.Caption := Name; 221 258 Item.SubItems.Add(FloatToStr(Cpu)); … … 230 267 if Item.Index < Services.Count then 231 268 with TSystemService(Services[Item.Index]) do begin 269 Item.Data := Services[Item.Index]; 232 270 Item.Caption := Name; 233 271 Item.SubItems.Add(''); … … 241 279 begin 242 280 ReloadTab; 281 end; 282 283 procedure TFormMain.PopupMenuServicesPopup(Sender: TObject); 284 begin 285 AServiceRestart.Enabled := Assigned(ListViewServices.Selected) and 286 (TSystemService(ListViewServices.Selected.Data).State = ssRunning); 287 AServiceStop.Enabled := Assigned(ListViewServices.Selected) and 288 (TSystemService(ListViewServices.Selected.Data).State = ssRunning); 289 AServiceStart.Enabled := Assigned(ListViewServices.Selected) and 290 (TSystemService(ListViewServices.Selected.Data).State = ssStopped); 243 291 end; 244 292
Note:
See TracChangeset
for help on using the changeset viewer.