/** * Dessine le JPanel en listant les proglets * * @see ProgletEngine * @return Le JPanel dessiné */ private static JPanel shortcutPanel() { JPanel shortcuts = new JPanel(); int i = 0; for (Proglet proglet : ProgletEngine.getInstance().getProglets()) i++; shortcuts.setLayout(new GridLayout(0, (i / 3) == 0 ? 1 : (i / 3))); for (Proglet proglet : ProgletEngine.getInstance().getProglets()) shortcuts.add( JVSStartPanel.createShortcut( Macros.getIcon(proglet.getIcon()), proglet.getName(), proglet.getTitle(), new ProgletLoader(proglet.getName()))); return shortcuts; }
/** * Renvoie la proglet demandé. * * @return la proglet ou null sinon. */ public Proglet getProglet(String proglet) { for (Proglet p : getProglets()) if (p.getName().equals(proglet)) { return p; } return null; }
/** * Mécanisme de chargement d'une proglet. * * @param proglet Le nom de la proglet. * @return La proglet en fonctionnement ou null si la proglet n'existe pas. * @throws IllegalArgumentException Si il y a tentative d'utilisation d'une proglet indéfinie */ public Proglet setProglet(String proglet) { if (currentProglet != null) { currentProglet.stop(); } currentProglet = null; for (Proglet p : getProglets()) if (p.getName().equals(proglet)) { currentProglet = p; } if (currentProglet == null) { throw new IllegalArgumentException( "Tentative d'utilisation d'une proglet indéfinie : " + proglet); } currentProglet.start(); return currentProglet; }