application-menu.js 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. const {Menu, shell} = require('electron')
  2. const demo = require('./function/demo-application-menu');
  3. let template = [
  4. {
  5. label: 'Fichier',
  6. submenu: [
  7. {
  8. label: 'Nouveau',
  9. click: () => {
  10. console.log('Reset');
  11. }
  12. },
  13. {
  14. label: 'Importer',
  15. click: () => {
  16. console.log('Reset');
  17. }
  18. },
  19. {
  20. type: 'separator'
  21. },
  22. {
  23. label: 'Reset',
  24. click: () => {
  25. console.log('Reset');
  26. }
  27. }
  28. ]
  29. },
  30. {
  31. label: 'Demo',
  32. submenu: [
  33. {
  34. label: 'Test',
  35. click: () => {
  36. console.log('Reset');
  37. }
  38. }
  39. ]
  40. },
  41. {
  42. label: 'Fenêtre',
  43. submenu: [
  44. {
  45. label: 'Pleine écran',
  46. accelerator: (() => {
  47. if (process.platform === 'darwin') {
  48. return 'Ctrl+Command+F'
  49. } else {
  50. return 'F11'
  51. }
  52. })(),
  53. click: (item, focusedWindow) => {
  54. if (focusedWindow) {
  55. focusedWindow.setFullScreen(!focusedWindow.isFullScreen())
  56. }
  57. }
  58. },
  59. {
  60. label: 'Minimiser',
  61. accelerator: 'CmdOrCtrl+M',
  62. role: 'minimize'
  63. },
  64. {
  65. label: 'Fermer',
  66. accelerator: 'CmdOrCtrl+W',
  67. role: 'close'
  68. },
  69. {
  70. type: 'separator'
  71. },
  72. {
  73. label: 'Outils Developpeur',
  74. accelerator: (() => {
  75. if (process.platform === 'darwin') {
  76. return 'Alt+Command+I'
  77. } else {
  78. return 'Ctrl+Shift+I'
  79. }
  80. })(),
  81. click: (item, focusedWindow) => {
  82. if (focusedWindow) {
  83. focusedWindow.toggleDevTools()
  84. }
  85. }
  86. }
  87. ]
  88. },
  89. {
  90. label: 'À propos',
  91. submenu: [
  92. {
  93. label: 'Electron',
  94. click: () => {
  95. shell.openExternal('https://www.electronjs.org');
  96. }
  97. },
  98. {
  99. label: 'Electronotes',
  100. click: () => {
  101. shell.openExternal('https://gitlab.univ-artois.fr/arthur_brandao/conf-electron');
  102. }
  103. }
  104. ]
  105. }
  106. ];
  107. const menu = Menu.buildFromTemplate(template);
  108. Menu.setApplicationMenu(menu);