demo-application-menu.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. const {ipcMain} = require('electron');
  2. const path = require('path');
  3. const tray = require('./tray');
  4. const notif = require('./notif');
  5. const dialog = require('./dialog');
  6. const window = require('../../../helper/window');
  7. const demoMenu = {};
  8. let hiddenWindow = null;
  9. demoMenu.primeNumberPopup = function () {
  10. };
  11. demoMenu.primeNumber = function () {
  12. // Only one calc at the same time
  13. if (hiddenWindow) {
  14. return;
  15. }
  16. //const number = 409291;
  17. const number = 12000000003;
  18. // Wait prime number is calculated
  19. ipcMain.once('prime-number-result', (event, result) => {
  20. let message = `Le nombre ${number} ` + (result ? 'est premier' : 'n\'est pas premier');
  21. dialog.message('Résultat du test de primalité', message);
  22. hiddenWindow.close();
  23. });
  24. //Create hidden window to calc prime number
  25. hiddenWindow = window.hidden(path.join(__dirname, '../../renderer/page/prime-number/prime-number.html'));
  26. // Send number to test when window is ready
  27. hiddenWindow.on('ready-to-show', () => {
  28. hiddenWindow.webContents.send('calc-prime-number', number);
  29. });
  30. };
  31. demoMenu.primeNumberResult = function () {
  32. };
  33. demoMenu.tray = function () {
  34. // Show notif
  35. notif.create('Application minimisé', 'Cliquer sur l\'icone dans la barre des notifications pour réouvrir l\'application');
  36. // Add tray
  37. tray.active();
  38. }
  39. module.exports = demoMenu;