/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package org.geoforge.appogcecl.actionperformer;
import java.awt.event.ActionEvent;
import java.util.logging.Logger;
import javax.swing.JFrame;
import org.geoforge.guillc.dialog.GfrDlgOkTextSaveRename;
import org.geoforge.guillc.frame.GfrFrmAbs;
import org.geoforge.guillc.menuitem.GfrMimTrsAlrIdAbs;
import org.geoforge.guillc.menuitem.GfrMimTrsAlrIdRenLlo;
import org.geoforge.guillc.menuitem.GfrMimTrsAlrIdRenTlo;
import org.geoforge.guillcogcecl.enumeration.GfrEnuValuesKindObjectLloVarSpcPrjOgcEcl;
import org.geoforge.guillcogcecl.enumeration.GfrEnuValuesKindObjectTloSpcPrjOgcEcl;
import org.geoforge.lang.enumeration.GfrEnuApplicationPropertiesImmutableKeys;
import org.geoforge.java.util.logging.filehandler.FileHandlerLogger;
import org.geoforge.mdldat.GfrMdlDatIdObjTloAbs;
import org.geoforge.mdldatecl.*;
import org.geoforge.wrpbasprsdat.GfrWrpBasDatObjNameAbs;
import org.geoforge.wrpbasprsdat.GfrWrpBasTopDatNameAbs;
import org.geoforge.wrpbasprsdatecl.GfrWrpBasDatObjNameTloEclAbs;
import org.geoforge.wrpbasprssynecl.*;
/**
*
* @author robert
*/
abstract public class ActPrfPrjRenameOgcEclAbs extends ActPrfPrjRenameOgcAbs
{
// ----
// begin: instantiate logger for this class
final private static Logger _LOGGER_ = Logger.getLogger(ActPrfPrjRenameOgcEclAbs.class.getName());
static
{
ActPrfPrjRenameOgcEclAbs._LOGGER_.addHandler(FileHandlerLogger.s_getInstance());
}
// end: instantiate logger for this class
// ----
@Override
public boolean doneJob(ActionEvent evt) throws Exception
{
if (super.doneJob(evt))
return true;
// beg rename llo
if (evt.getSource() instanceof GfrMimTrsAlrIdRenLlo)
{
GfrMimTrsAlrIdAbs mim = (GfrMimTrsAlrIdAbs) evt.getSource();
String strIdChild = mim.getId();
String strIdParent = ((GfrMimTrsAlrIdRenLlo) mim).getIdParent();
JFrame frmOwner = GfrFrmAbs.s_getFrameOwnerTrickForActionController(mim);
String strValueKindObject = mim.getPropertyImmutable(
GfrEnuApplicationPropertiesImmutableKeys.KEY_KIND_OBJECT.name());
//--
if (strValueKindObject == null || strValueKindObject.length() < 1)
return false;
//--
if (strValueKindObject.compareTo(
GfrEnuValuesKindObjectLloVarSpcPrjOgcEcl.VALUE_LLO_IMAGE_ECL_SEG_WISE_YES.name()) == 0)
{
_renameLloImage_(
strIdChild,
strIdParent,
frmOwner,
GfrWrpBasSynObjNameTloEclSegWiseYes.getInstance(),
GfrMdlDatIdObjTloEclSegWiseYes.getInstance());
return true;
}
if (strValueKindObject.compareTo(GfrEnuValuesKindObjectLloVarSpcPrjOgcEcl.VALUE_LLO_IMAGE_ECL_PLC.name()) == 0)
{
_renameLloImage_(
strIdChild,
strIdParent,
frmOwner,
GfrWrpBasSynObjNameTloEclPlc.getInstance(),
GfrMdlDatIdObjTloEclPlc.getInstance());
return true;
}
if (strValueKindObject.compareTo(GfrEnuValuesKindObjectLloVarSpcPrjOgcEcl.VALUE_LLO_IMAGE_ECL_PNT.name()) == 0)
{
_renameLloImage_(
strIdChild,
strIdParent,
frmOwner,
GfrWrpBasSynObjNameTloEclPnt.getInstance(),
GfrMdlDatIdObjTloEclPnt.getInstance());
return true;
}
if (strValueKindObject.compareTo(GfrEnuValuesKindObjectLloVarSpcPrjOgcEcl.VALUE_LLO_IMAGE_ECL_ARE.name()) == 0)
{
_renameLloImage_(
strIdChild,
strIdParent,
frmOwner,
GfrWrpBasSynObjNameTloEclAre.getInstance(),
GfrMdlDatIdObjTloEclAre.getInstance());
return true;
}
if (strValueKindObject.compareTo(GfrEnuValuesKindObjectLloVarSpcPrjOgcEcl.VALUE_LLO_IMAGE_ECL_SCT.name()) == 0)
{
_renameLloImage_(
strIdChild,
strIdParent,
frmOwner,
GfrWrpBasSynObjNameTloEclSct.getInstance(),
GfrMdlDatIdObjTloEclSct.getInstance());
return true;
}
if (strValueKindObject.compareTo(GfrEnuValuesKindObjectLloVarSpcPrjOgcEcl.VALUE_LLO_IMAGE_ECL_SPN.name()) == 0)
{
_renameLloImage_(
strIdChild,
strIdParent,
frmOwner,
GfrWrpBasSynObjNameTloEclSpn.getInstance(),
GfrMdlDatIdObjTloEclSpn.getInstance());
return true;
}
if (strValueKindObject.compareTo(GfrEnuValuesKindObjectLloVarSpcPrjOgcEcl.VALUE_LLO_IMAGE_ECL_PTH.name()) == 0)
{
_renameLloImage_(
strIdChild,
strIdParent,
frmOwner,
GfrWrpBasSynObjNameTloEclPth.getInstance(),
GfrMdlDatIdObjTloEclPth.getInstance());
return true;
}
}
// end rename llo
// beg rename tlo
if (evt.getSource() instanceof GfrMimTrsAlrIdRenTlo)
{
GfrMimTrsAlrIdAbs mim = (GfrMimTrsAlrIdAbs) evt.getSource();
String strId = mim.getId();
JFrame frmOwner = GfrFrmAbs.s_getFrameOwnerTrickForActionController(mim);
String strValueKindObject = mim.getPropertyImmutable(
GfrEnuApplicationPropertiesImmutableKeys.KEY_KIND_OBJECT.name());
//--
if (strValueKindObject == null || strValueKindObject.length() < 1)
return false;
//--
if (strValueKindObject.compareTo(GfrEnuValuesKindObjectTloSpcPrjOgcEcl.VALUE_TLO_ECL_SCT.name()) == 0)
{
_renameTloSct_(strId, frmOwner);
return true;
}
if (strValueKindObject.compareTo(GfrEnuValuesKindObjectTloSpcPrjOgcEcl.VALUE_TLO_ECL_ARE.name()) == 0)
{
_renameTloAre_(strId, frmOwner);
return true;
}
if (strValueKindObject.compareTo(GfrEnuValuesKindObjectTloSpcPrjOgcEcl.VALUE_TLO_ECL_SPN.name()) == 0)
{
_renameTloSpn_(strId, frmOwner);
return true;
}
if (strValueKindObject.compareTo(GfrEnuValuesKindObjectTloSpcPrjOgcEcl.VALUE_TLO_ECL_PTH.name()) == 0)
{
_renameTloPth_(strId, frmOwner);
return true;
}
if (strValueKindObject.compareTo(GfrEnuValuesKindObjectTloSpcPrjOgcEcl.VALUE_TLO_ECL_PLC.name()) == 0)
{
_renameTloPlc_(strId, frmOwner);
return true;
}
if (strValueKindObject.compareTo(GfrEnuValuesKindObjectTloSpcPrjOgcEcl.VALUE_TLO_ECL_PNT.name()) == 0)
{
_renameTloPnt_(strId, frmOwner);
return true;
}
if (strValueKindObject.compareTo(GfrEnuValuesKindObjectTloSpcPrjOgcEcl.VALUE_TLO_ECL_SEG_WISE_YES.name()) == 0)
{
_renameTloSegWiseYes_(strId, frmOwner);
return true;
}
}
// end rename tlo
// ending
return false;
}
// ---
protected ActPrfPrjRenameOgcEclAbs()
{
super();
}
// ---
private void _renameTloSct_(String strId, JFrame frmOwner) throws Exception
{
this._renameTlo_(
strId,
frmOwner,
GfrWrpBasTopSynEclScts.getInstance(),
GfrWrpBasSynObjNameTloEclSct.getInstance(),
GfrMdlDatIdObjTloEclSct.getInstance());
}
private void _renameTloAre_(String strId, JFrame frmOwner) throws Exception
{
this._renameTlo_(
strId,
frmOwner,
GfrWrpBasTopSynEclAres.getInstance(),
GfrWrpBasSynObjNameTloEclAre.getInstance(),
GfrMdlDatIdObjTloEclAre.getInstance());
}
private void _renameTloPlc_(
String strId,
JFrame frmOwner) throws Exception
{
this._renameTlo_(
strId,
frmOwner,
GfrWrpBasTopSynEclPlcs.getInstance(),
GfrWrpBasSynObjNameTloEclPlc.getInstance(),
GfrMdlDatIdObjTloEclPlc.getInstance());
}
private void _renameTloSegWiseYes_(
String strId,
JFrame frmOwner) throws Exception
{
this._renameTlo_(
strId,
frmOwner,
GfrWrpBasTopSynEclSegsWiseYes.getInstance(),
GfrWrpBasSynObjNameTloEclSegWiseYes.getInstance(),
GfrMdlDatIdObjTloEclSegWiseYes.getInstance());
}
private void _renameTloPnt_(
String strId,
JFrame frmOwner) throws Exception
{
this._renameTlo_(
strId,
frmOwner,
GfrWrpBasTopSynEclPnts.getInstance(),
GfrWrpBasSynObjNameTloEclPnt.getInstance(),
GfrMdlDatIdObjTloEclPnt.getInstance());
}
private void _renameTloSpn_(String strId, JFrame frmOwner) throws Exception
{
this._renameTlo_(
strId,
frmOwner,
GfrWrpBasTopSynEclSpns.getInstance(),
GfrWrpBasSynObjNameTloEclSpn.getInstance(),
GfrMdlDatIdObjTloEclSpn.getInstance());
}
private void _renameTloPth_(String strId, JFrame frmOwner) throws Exception
{
this._renameTlo_(
strId,
frmOwner,
GfrWrpBasTopSynEclPths.getInstance(),
GfrWrpBasSynObjNameTloEclPth.getInstance(),
GfrMdlDatIdObjTloEclPth.getInstance());
}
protected void _renameTlo_(
String strId,
JFrame frmOwner,
GfrWrpBasTopDatNameAbs wrpTop,
GfrWrpBasDatObjNameAbs wrpTlo,
GfrMdlDatIdObjTloAbs mdlTlo) throws Exception
{
String[] strsChildrenExisting = wrpTop.getSortedNamesTlo();
String strNameCur = wrpTlo.getName(strId);
GfrDlgOkTextSaveRename dlg = new GfrDlgOkTextSaveRename(
frmOwner,
strsChildrenExisting,
strNameCur);
if (!dlg.init())
{
String str = "! dlg.init()";
ActPrfPrjRenameOgcEclAbs._LOGGER_.severe(str);
throw new Exception(str);
}
dlg.setVisible(true);
boolean blnCancelled = dlg.isCancelled();
String strNameNew = null;
if (!blnCancelled)
{
strNameNew = dlg.getValue();
}
dlg.destroy();
dlg = null;
if (blnCancelled)
return;
mdlTlo.rename(strId, strNameNew);
}
private void _renameLloImage_(
String strIdChild,
String strIdParent,
JFrame frmOwner,
GfrWrpBasDatObjNameTloEclAbs wrpSynTloEcl,
GfrMdlDatIdObjTloEclAbs mdlDatTloEcl)
throws Exception
{
String[] strsChildrenExisting = wrpSynTloEcl.getSortedNamesImage(strIdParent);
String strNameCur = wrpSynTloEcl.getNameImage(strIdChild);
GfrDlgOkTextSaveRename dlg = new GfrDlgOkTextSaveRename(
frmOwner,
strsChildrenExisting,
strNameCur);
if (!dlg.init())
{
String str = "! dlg.init()";
ActPrfPrjRenameOgcEclAbs._LOGGER_.severe(str);
throw new Exception(str);
}
dlg.setVisible(true);
boolean blnCancelled = dlg.isCancelled();
String strNameNew = null;
if (!blnCancelled)
{
strNameNew = dlg.getValue();
}
dlg.destroy();
dlg = null;
if (blnCancelled)
return;
mdlDatTloEcl.renameImage(strIdChild, strNameNew, strIdParent);
}
}