From f444e9dc7422e0121463aa46af95aa30643bd8c9 Mon Sep 17 00:00:00 2001 From: Cheng Zhao Date: Mon, 23 Sep 2013 16:51:00 +0800 Subject: [PATCH] :lipstick: CoffeeScript is cute. --- browser/api/lib/dialog.coffee | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/browser/api/lib/dialog.coffee b/browser/api/lib/dialog.coffee index 760d633..69713ab 100644 --- a/browser/api/lib/dialog.coffee +++ b/browser/api/lib/dialog.coffee @@ -8,54 +8,56 @@ messageBoxTypes = ['none', 'info', 'warning'] module.exports = showOpenDialog: (window, options, callback) -> - if window? and window.constructor isnt BrowserWindow + unless window?.constructor is BrowserWindow # Shift. callback = options options = window window = null - options = title: 'Open', properties: ['openFile'] unless options? - options.properties = options.properties ? ['openFile'] + options ?= title: 'Open', properties: ['openFile'] + options.properties ?= ['openFile'] throw new TypeError('Properties need to be array') unless Array.isArray options.properties properties = 0 for prop, value of fileDialogProperties properties |= value if prop in options.properties - options.title = options.title ? '' - options.defaultPath = options.defaultPath ? '' + options.title ?= '' + options.defaultPath ?= '' - binding.showOpenDialog options.title, - options.defaultPath, + binding.showOpenDialog String(options.title), + String(options.defaultPath), properties, window showSaveDialog: (window, options) -> throw new TypeError('Invalid window') unless window?.constructor is BrowserWindow - options = title: 'Save' unless options? - options.title = options.title ? '' - options.defaultPath = options.defaultPath ? '' + options ?= title: 'Save' + options.title ?= '' + options.defaultPath ?= '' - binding.showSaveDialog window, options.title, options.defaultPath + binding.showSaveDialog window, + String(options.title), + String(options.defaultPath) showMessageBox: (window, options, callback) -> - if window? and window.constructor isnt BrowserWindow + unless window?.constructor is BrowserWindow # Shift. callback = options options = window window = null - options = type: 'none' unless options? - options.type = options.type ? 'none' + options ?= type: 'none' + options.type ?= 'none' options.type = messageBoxTypes.indexOf options.type throw new TypeError('Invalid message box type') unless options.type > -1 throw new TypeError('Buttons need to be array') unless Array.isArray options.buttons - options.title = options.title ? '' - options.message = options.message ? '' - options.detail = options.detail ? '' + options.title ?= '' + options.message ?= '' + options.detail ?= '' binding.showMessageBox options.type, options.buttons, -- 2.7.4