/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package org.geoforge.guillc.menu;
import java.awt.event.ActionListener;
import java.util.Observable;
import java.util.logging.Logger;
import org.geoforge.guillc.menuitem.GfrMimTrsAlrIdExpObjsLlo;
import org.geoforge.guillc.menuitem.GfrMimTrsAlrAbs;
import org.geoforge.io.enumeration.GfrEnuValuesKindFileFormat;
import org.geoforge.java.util.logging.filehandler.FileHandlerLogger;
import org.geoforge.mdl.event.GfrEvtMdlIdAbs;
import org.geoforge.mdldat.event.*;
/**
*
* @author bill
*/
abstract public class GfrMenIcnExpObjsLlosPdfAbs extends GfrMenIcnExpObjsLlosAbs
{
// ----
// begin: instantiate logger for this class
final private static Logger _LOGGER_ = Logger.getLogger(GfrMenIcnExpObjsLlosPdfAbs.class.getName());
static
{
GfrMenIcnExpObjsLlosPdfAbs._LOGGER_.addHandler(FileHandlerLogger.s_getInstance());
}
// end: instantiate logger for this class
// ----
private GfrMimTrsAlrAbs _mimExpToNewFolder_ = null;
public GfrMenIcnExpObjsLlosPdfAbs(
ActionListener alrController,
String strIdThis,
String strValueKindObject) throws Exception
{
super(strIdThis);
this._mimExpToNewFolder_ = new GfrMimTrsAlrIdExpObjsLlo(
alrController, strIdThis,
GfrEnuValuesKindFileFormat.VALUE_FOLDER,
strValueKindObject);
super.setEnabled(false);
_load();
}
@Override
public boolean init()
{
if (!super.init())
return false;
if (!this._mimExpToNewFolder_.init())
return false;
super.add(this._mimExpToNewFolder_);
return true;
}
@Override
public void destroy()
{
super.destroy();
if (this._mimExpToNewFolder_ != null)
{
this._mimExpToNewFolder_.destroy();
this._mimExpToNewFolder_ = null;
}
}
@Override
public void loadTransient() throws Exception
{
super.loadTransient();
this._mimExpToNewFolder_.loadTransient();
}
@Override
public void releaseTransient() throws Exception
{
super.releaseTransient();
this._mimExpToNewFolder_.releaseTransient();
}
@Override
public void update(Observable obs, Object objEvt)
{
if (objEvt instanceof GfrEvtMdlIdDatRemovedAllLloAbs)
{
if (!super.isEnabled())
return;
if (objEvt instanceof GfrEvtMdlIdDatRemovedAllLloPdfDocs)
{
GfrEvtMdlIdAbs mdlId = (GfrEvtMdlIdAbs) objEvt;
String strIdSource = mdlId.getId();
if (strIdSource.compareTo(super.getIdSource()) != 0)
return;
super.setEnabled(false);
return;
}
return;
}
if (objEvt instanceof GfrEvtMdlIdDatAddedLloVarAbs)
{
if (super.isEnabled())
return;
if (objEvt instanceof GfrEvtMdlIdDatAddedLloVarPdfDoc)
{
GfrEvtMdlIdDatAddedLloVarAbs mdlId = (GfrEvtMdlIdDatAddedLloVarAbs) objEvt;
String strIdParent = mdlId.getIdParent();
if (strIdParent.compareTo(super.getIdSource()) != 0)
return;
super.setEnabled(true);
return;
}
return;
}
if (objEvt instanceof GfrEvtMdlIdDatRemovedLloVarAbs)
{
if (!super.isEnabled())
return;
if (objEvt instanceof GfrEvtMdlIdDatRemovedLloVarPdfDoc)
{
GfrEvtMdlIdDatRemovedLloVarAbs mdlId = (GfrEvtMdlIdDatRemovedLloVarAbs) objEvt;
String strIdParent = mdlId.getIdParent();
if (strIdParent.compareTo(super.getIdSource()) != 0)
return;
try
{
_updateRemovedObject();
return;
}
catch (Exception exc)
{
exc.printStackTrace();
String str = exc.getMessage();
GfrMenIcnExpObjsLlosPdfAbs._LOGGER_.severe(str);
return;
}
}
return;
}
}
}