log.error("Error al carregar look and feel {}: {}", new Object[]{laf, e.getMessage(), e});
}
}
// S'especifica el títol.
ProductDefinition productDefinition = ApplicationContext.getInstance().getPluginRegistry().getProductDefinition();
String fullVersionName = productDefinition.getFullVersionName();
mainWindow.setTitle(fullVersionName);
// Creació del menú de l'aplicació
JMenuBar menuBar = (JMenuBar)ApplicationContext.getInstance().getRegisteredComponent(JMenuBar.class);
mainWindow.setJMenuBar(menuBar);
// Creació de la UI principal
createInitialUI();
switchToPerspective(EmptyPerspective.ID);
mainWindow.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
// Mida de la finestra per defecte per quan està desmaximitzada
mainWindow.setPreferredSize(new Dimension(800, 600));
mainWindow.setMinimumSize(new Dimension(640, 480));
mainWindow.pack();
// Icona a la safata del sistema
if(SystemTray.isSupported()){
SystemTray tray = SystemTray.getSystemTray();
String icon = productDefinition.getIcon();
Image image = Toolkit.getDefaultToolkit().getImage(getClass().getResource(icon));
trayIcon = new TrayIcon(image, fullVersionName);
// Es redimensiona la imatge per tal que s'adapti a l'espai disponible
trayIcon.setImageAutoSize(true);
try{