/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package org.geoforge.plghelloworldifrser.lang.thread;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Font;
import java.awt.event.ActionListener;
import java.util.logging.Logger;
import javax.swing.JLabel;
import javax.swing.SwingConstants;
import javax.swing.event.InternalFrameListener;
import org.geoforge.appogcecl.lang.thread.GfrThrNewViewerFrmIntSerPlgAbs;
import org.geoforge.java.awt.font.GfrUtilFont;
import org.geoforge.guillc.internalframe.GfrIfrWinViewRunIdRegSerAbs;
import org.geoforge.guillc.internalframe.GfrIfrWinViewRunIdRegSerSimplePlg;
import org.geoforge.guillc.optionpane.GfrOptionPaneAbs;
import org.geoforge.guillc.panel.PnlAbs;
import org.geoforge.java.util.logging.filehandler.FileHandlerLogger;
import org.geoforge.wrpbasprsdsp.viewer.GfrWrpDspSynViewer;
import org.geoforge.wrpbasprsdsp.viewer.GfrWrpBasPrsDspPrjViewersExisting;
/**
*
* @author bantchao
*/
public class GfrThrNewViewerFrmIntSerPlgHelloWorld extends GfrThrNewViewerFrmIntSerPlgAbs
{
// ----
// begin: instantiate logger for this class
final private static Logger _LOGGER_ = Logger.getLogger(GfrThrNewViewerFrmIntSerPlgHelloWorld.class.getName());
static
{
GfrThrNewViewerFrmIntSerPlgHelloWorld._LOGGER_.addHandler(FileHandlerLogger.s_getInstance());
}
// end: instantiate logger for this class
// ----
public GfrThrNewViewerFrmIntSerPlgHelloWorld(
InternalFrameListener ifl,
ActionListener alr,
ActionListener alrActPlg,
Container cntDesktopPane
)
{
super(ifl, alr,
alrActPlg,
cntDesktopPane);
}
@Override
public void run()
{
String strIdViewer =null;
try
{
strIdViewer = GfrWrpBasPrsDspPrjViewersExisting.s_getInstance().save(
"Persistent \"Hello world!\" window #",
"persistent_hello_world_frame_plugin_");
GfrIfrWinViewRunIdRegSerAbs ifr = new GfrIfrWinViewRunIdRegSerSimplePlg(
super._iflPlgRun,
super._alrPlgRun,
strIdViewer);
PnlAbs pnl = ((GfrIfrWinViewRunIdRegSerSimplePlg) ifr).getPanelContents();
JLabel lbl = new JLabel("Hello World!");
Font fnt = GfrUtilFont.s_get(48);
lbl.setHorizontalAlignment(SwingConstants.CENTER);
lbl.setFont(fnt);
pnl.add(lbl, BorderLayout.CENTER);
super._run(ifr);
}
catch(Exception exc)
{
exc.printStackTrace();
String strError = exc.getMessage();
GfrThrNewViewerFrmIntSerPlgHelloWorld._LOGGER_.warning(strError);
GfrOptionPaneAbs.s_showDialogWarning(null, strError);
// cleaning-up DB related to strId
try
{
if (strIdViewer != null)
GfrWrpDspSynViewer.s_getInstance().delete(strIdViewer);
}
catch(Exception exc2)
{
exc2.printStackTrace();
String str2 = exc2.getMessage() + ", don't care";
GfrThrNewViewerFrmIntSerPlgHelloWorld._LOGGER_.warning(str2);
}
}
}
}