annotate index.js @ 1:e3851f39ad5c default tip

add EditMenu
author ryokka
date Wed, 29 May 2019 20:13:51 +0900
parents 12d9c981a5f4
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
12d9c981a5f4 add source
ryokka
parents:
diff changeset
1 "use strict";
12d9c981a5f4 add source
ryokka
parents:
diff changeset
2
12d9c981a5f4 add source
ryokka
parents:
diff changeset
3 const electron = require("electron");
12d9c981a5f4 add source
ryokka
parents:
diff changeset
4 const app = electron.app;
12d9c981a5f4 add source
ryokka
parents:
diff changeset
5 const Menu = electron.Menu;
12d9c981a5f4 add source
ryokka
parents:
diff changeset
6 const BrowserWindow = electron.BrowserWindow;
12d9c981a5f4 add source
ryokka
parents:
diff changeset
7 let mainWindow;
12d9c981a5f4 add source
ryokka
parents:
diff changeset
8 let locate;
12d9c981a5f4 add source
ryokka
parents:
diff changeset
9
12d9c981a5f4 add source
ryokka
parents:
diff changeset
10 // 全てのウィンドウが閉じたら終了
12d9c981a5f4 add source
ryokka
parents:
diff changeset
11 app.on('window-all-closed', function() {
12d9c981a5f4 add source
ryokka
parents:
diff changeset
12 if (process.platform != 'darwin') {
12d9c981a5f4 add source
ryokka
parents:
diff changeset
13 app.quit();
12d9c981a5f4 add source
ryokka
parents:
diff changeset
14 }
12d9c981a5f4 add source
ryokka
parents:
diff changeset
15 });
12d9c981a5f4 add source
ryokka
parents:
diff changeset
16
12d9c981a5f4 add source
ryokka
parents:
diff changeset
17 // app.on('open-file', function() {
12d9c981a5f4 add source
ryokka
parents:
diff changeset
18
12d9c981a5f4 add source
ryokka
parents:
diff changeset
19 // });
12d9c981a5f4 add source
ryokka
parents:
diff changeset
20
12d9c981a5f4 add source
ryokka
parents:
diff changeset
21 // Electronの初期化完了後に実行
12d9c981a5f4 add source
ryokka
parents:
diff changeset
22 app.on('ready', function() {
12d9c981a5f4 add source
ryokka
parents:
diff changeset
23 // メイン画面の表示。ウィンドウの幅、高さを指定できる
12d9c981a5f4 add source
ryokka
parents:
diff changeset
24 mainWindow = new BrowserWindow({
12d9c981a5f4 add source
ryokka
parents:
diff changeset
25 width: 800,
12d9c981a5f4 add source
ryokka
parents:
diff changeset
26 height: 600,
12d9c981a5f4 add source
ryokka
parents:
diff changeset
27 maxWidth: 800,
12d9c981a5f4 add source
ryokka
parents:
diff changeset
28 maxHeight: 600,
12d9c981a5f4 add source
ryokka
parents:
diff changeset
29 disableAutoHideCursor: true,
12d9c981a5f4 add source
ryokka
parents:
diff changeset
30 resizable: true,
12d9c981a5f4 add source
ryokka
parents:
diff changeset
31 autoHideMenuBar: true,
12d9c981a5f4 add source
ryokka
parents:
diff changeset
32 frame: false,
12d9c981a5f4 add source
ryokka
parents:
diff changeset
33 webPreferences: {},
12d9c981a5f4 add source
ryokka
parents:
diff changeset
34 });
12d9c981a5f4 add source
ryokka
parents:
diff changeset
35
12d9c981a5f4 add source
ryokka
parents:
diff changeset
36 var inmenu = [
12d9c981a5f4 add source
ryokka
parents:
diff changeset
37 {submenu: [
12d9c981a5f4 add source
ryokka
parents:
diff changeset
38 { role: 'quit',},
12d9c981a5f4 add source
ryokka
parents:
diff changeset
39 ]},
1
e3851f39ad5c add EditMenu
ryokka
parents: 0
diff changeset
40 {label: 'Edit',
e3851f39ad5c add EditMenu
ryokka
parents: 0
diff changeset
41 submenu: [
e3851f39ad5c add EditMenu
ryokka
parents: 0
diff changeset
42 {role: 'cut',},
e3851f39ad5c add EditMenu
ryokka
parents: 0
diff changeset
43 {role: 'copy',},
e3851f39ad5c add EditMenu
ryokka
parents: 0
diff changeset
44 {role: 'paste',},
e3851f39ad5c add EditMenu
ryokka
parents: 0
diff changeset
45 {role: 'selectAll',},
e3851f39ad5c add EditMenu
ryokka
parents: 0
diff changeset
46 {role: 'delete',},
0
12d9c981a5f4 add source
ryokka
parents:
diff changeset
47
1
e3851f39ad5c add EditMenu
ryokka
parents: 0
diff changeset
48 ]},
0
12d9c981a5f4 add source
ryokka
parents:
diff changeset
49 {label: 'View',
12d9c981a5f4 add source
ryokka
parents:
diff changeset
50 submenu: [
1
e3851f39ad5c add EditMenu
ryokka
parents: 0
diff changeset
51 {role: 'reload',},
0
12d9c981a5f4 add source
ryokka
parents:
diff changeset
52 { role: 'minimize',},
12d9c981a5f4 add source
ryokka
parents:
diff changeset
53 { role: 'zoomin',},
12d9c981a5f4 add source
ryokka
parents:
diff changeset
54 { role: 'zoomout',},
12d9c981a5f4 add source
ryokka
parents:
diff changeset
55 { role: 'togglefullscreen'},
1
e3851f39ad5c add EditMenu
ryokka
parents: 0
diff changeset
56 {role: 'hide',},
e3851f39ad5c add EditMenu
ryokka
parents: 0
diff changeset
57
0
12d9c981a5f4 add source
ryokka
parents:
diff changeset
58 ]}
12d9c981a5f4 add source
ryokka
parents:
diff changeset
59 ];
12d9c981a5f4 add source
ryokka
parents:
diff changeset
60
12d9c981a5f4 add source
ryokka
parents:
diff changeset
61 const menu = Menu.buildFromTemplate(inmenu);
12d9c981a5f4 add source
ryokka
parents:
diff changeset
62 Menu.setApplicationMenu(menu);
12d9c981a5f4 add source
ryokka
parents:
diff changeset
63
12d9c981a5f4 add source
ryokka
parents:
diff changeset
64
12d9c981a5f4 add source
ryokka
parents:
diff changeset
65 locate = 'file://' + __dirname + '/index.html';
12d9c981a5f4 add source
ryokka
parents:
diff changeset
66 // if (process.argv[2] !== undefined) {
12d9c981a5f4 add source
ryokka
parents:
diff changeset
67 // locate = process.argv[2];
12d9c981a5f4 add source
ryokka
parents:
diff changeset
68 // }
12d9c981a5f4 add source
ryokka
parents:
diff changeset
69
12d9c981a5f4 add source
ryokka
parents:
diff changeset
70 mainWindow.loadURL(locate);
12d9c981a5f4 add source
ryokka
parents:
diff changeset
71 // ウィンドウが閉じられたらアプリも終了
12d9c981a5f4 add source
ryokka
parents:
diff changeset
72 mainWindow.on('closed', function() {
12d9c981a5f4 add source
ryokka
parents:
diff changeset
73 mainWindow = null;
12d9c981a5f4 add source
ryokka
parents:
diff changeset
74 });
12d9c981a5f4 add source
ryokka
parents:
diff changeset
75 });