better messageboxes

This commit is contained in:
Eugene Pankov
2019-01-03 17:20:02 +03:00
parent d5b6a686f8
commit 9faa346699
8 changed files with 84 additions and 15 deletions

View File

@@ -1,6 +1,11 @@
import { Injectable } from '@angular/core'
import { TouchBar, BrowserWindow, Menu, MenuItem } from 'electron'
export interface MessageBoxResponse {
response: number
checkboxChecked?: boolean
}
@Injectable({ providedIn: 'root' })
export class ElectronService {
app: any
@@ -54,4 +59,15 @@ export class ElectronService {
this.remote.Menu.sendActionToFirstResponder('hide:')
}
}
showMessageBox (
browserWindow: Electron.BrowserWindow,
options: Electron.MessageBoxOptions
): Promise<MessageBoxResponse> {
return new Promise(resolve => {
this.dialog.showMessageBox(browserWindow, options, (response, checkboxChecked) => {
resolve({ response, checkboxChecked })
})
})
}
}