Package lcmc

Source Code of lcmc.LCMCApplet

/*
* This file is part of DRBD Management Console by LINBIT HA-Solutions GmbH
* written by Rasto Levrinc.
*
* Copyright (C) 2009, LINBIT HA-Solutions GmbH.
* Copyright (C) 2011-2012, Rastislav Levrinc.
*
* DRBD Management Console is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as published
* by the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* DRBD Management Console is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with drbd; see the file COPYING.  If not, write to
* the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
*/

/*
* LCMCApplet
* (c) Rasto Levrinc, Linbit
*/
package lcmc;

import javax.swing.JApplet;
import javax.swing.JFrame;

import lcmc.common.ui.GUIData;
import lcmc.common.domain.Application;
import lcmc.logger.Logger;
import lcmc.logger.LoggerFactory;
import lcmc.common.domain.util.Tools;


/**
* This is the central class with main function. It starts the DRBD GUI.
*/
public final class LCMCApplet extends JApplet {
    private static final long serialVersionUID = 1L;
    private static final Logger LOG = LoggerFactory.getLogger(LCMCApplet.class);
    public static final String[] NO_PARAMS = {};

    /** Start the applet. */
    @Override
    public void init() {
        Tools.init();
        LOG.debug1("init: start");
        final String[] params;
        final String paramsLine = getParameter("params");
        if (paramsLine == null) {
            params = NO_PARAMS;
        } else {
            params = paramsLine.split("\\s+");
        }
        final LCMC lcmc = AppContext.getBean(LCMC.class);
        final GUIData guiData = AppContext.getBean(GUIData.class);

        lcmc.initApp(params);

        final Application application = AppContext.getBean(Application.class);
        final LCMCApplet thisObject = this;
        application.invokeLater(new Runnable() {
            @Override
            public void run() {
                if (!application.isEmbedApplet()) {
                    guiData.setMainFrame(thisObject);
                    setJMenuBar(lcmc.getMenuBar());
                    setContentPane(lcmc.getMainPanel());
                    setGlassPane(lcmc.getMainGlassPane());
                    lcmc.createAndShowGUI(thisObject);
                } else {
                    final JFrame mainFrame = new JFrame();
                    guiData.setMainFrame(mainFrame);
                    lcmc.createMainFrame(mainFrame);
                    lcmc.createAndShowGUI(mainFrame);
                }
            }
        });
        //TODO: save on quit
        //setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        //addWindowListener(new ExitListener());
    }
}
TOP

Related Classes of lcmc.LCMCApplet

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.