You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2010/08/24 15:34:39 UTC
svn commit: r988538 [2/4] - in /cayenne/main/trunk:
framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/
framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/
framework/cayenne-modeler/src/main/java/org/apache/cayenn...
Copied: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/DefaultActionManager.java (from r988535, cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ActionManager.java)
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/DefaultActionManager.java?p2=cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/DefaultActionManager.java&p1=cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ActionManager.java&r1=988535&r2=988538&rev=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ActionManager.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/DefaultActionManager.java Tue Aug 24 13:34:35 2010
@@ -16,8 +16,7 @@
* specific language governing permissions and limitations
* under the License.
****************************************************************/
-
-package org.apache.cayenne.modeler;
+package org.apache.cayenne.modeler.action;
import java.util.Arrays;
import java.util.Collection;
@@ -32,157 +31,104 @@ import javax.swing.JComponent;
import javax.swing.TransferHandler;
import org.apache.cayenne.configuration.ConfigurationNode;
-import org.apache.cayenne.modeler.action.AboutAction;
-import org.apache.cayenne.modeler.action.ConfigurePreferencesAction;
-import org.apache.cayenne.modeler.action.CopyAction;
-import org.apache.cayenne.modeler.action.CopyAttributeAction;
-import org.apache.cayenne.modeler.action.CopyProcedureParameterAction;
-import org.apache.cayenne.modeler.action.CopyRelationshipAction;
-import org.apache.cayenne.modeler.action.CreateAttributeAction;
-import org.apache.cayenne.modeler.action.CreateCallbackMethodAction;
-import org.apache.cayenne.modeler.action.CreateCallbackMethodForDataMapListenerAction;
-import org.apache.cayenne.modeler.action.CreateCallbackMethodForListenerAction;
-import org.apache.cayenne.modeler.action.CreateDataMapAction;
-import org.apache.cayenne.modeler.action.CreateDataMapEntityListenerAction;
-import org.apache.cayenne.modeler.action.CreateDbEntityAction;
-import org.apache.cayenne.modeler.action.CreateEmbeddableAction;
-import org.apache.cayenne.modeler.action.CreateNodeAction;
-import org.apache.cayenne.modeler.action.CreateObjEntityAction;
-import org.apache.cayenne.modeler.action.CreateObjEntityListenerAction;
-import org.apache.cayenne.modeler.action.CreateProcedureAction;
-import org.apache.cayenne.modeler.action.CreateProcedureParameterAction;
-import org.apache.cayenne.modeler.action.CreateQueryAction;
-import org.apache.cayenne.modeler.action.CreateRelationshipAction;
-import org.apache.cayenne.modeler.action.CutAction;
-import org.apache.cayenne.modeler.action.CutAttributeAction;
-import org.apache.cayenne.modeler.action.CutProcedureParameterAction;
-import org.apache.cayenne.modeler.action.CutRelationshipAction;
-import org.apache.cayenne.modeler.action.DbEntitySyncAction;
-import org.apache.cayenne.modeler.action.DocumentationAction;
-import org.apache.cayenne.modeler.action.ExitAction;
-import org.apache.cayenne.modeler.action.FindAction;
-import org.apache.cayenne.modeler.action.GenerateCodeAction;
-import org.apache.cayenne.modeler.action.GenerateDBAction;
-import org.apache.cayenne.modeler.action.ImportDBAction;
-import org.apache.cayenne.modeler.action.ImportDataMapAction;
-import org.apache.cayenne.modeler.action.ImportEOModelAction;
-import org.apache.cayenne.modeler.action.InferRelationshipsAction;
-import org.apache.cayenne.modeler.action.MigrateAction;
-import org.apache.cayenne.modeler.action.NavigateBackwardAction;
-import org.apache.cayenne.modeler.action.NavigateForwardAction;
-import org.apache.cayenne.modeler.action.NewProjectAction;
-import org.apache.cayenne.modeler.action.ObjEntitySyncAction;
-import org.apache.cayenne.modeler.action.OpenProjectAction;
-import org.apache.cayenne.modeler.action.PasteAction;
-import org.apache.cayenne.modeler.action.ProjectAction;
-import org.apache.cayenne.modeler.action.RedoAction;
-import org.apache.cayenne.modeler.action.RemoveAction;
-import org.apache.cayenne.modeler.action.RemoveAttributeAction;
-import org.apache.cayenne.modeler.action.RemoveCallbackMethodAction;
-import org.apache.cayenne.modeler.action.RemoveCallbackMethodForDataMapListenerAction;
-import org.apache.cayenne.modeler.action.RemoveCallbackMethodForListenerAction;
-import org.apache.cayenne.modeler.action.RemoveEntityListenerAction;
-import org.apache.cayenne.modeler.action.RemoveEntityListenerForDataMapAction;
-import org.apache.cayenne.modeler.action.RemoveProcedureParameterAction;
-import org.apache.cayenne.modeler.action.RemoveRelationshipAction;
-import org.apache.cayenne.modeler.action.RevertAction;
-import org.apache.cayenne.modeler.action.SaveAction;
-import org.apache.cayenne.modeler.action.SaveAsAction;
-import org.apache.cayenne.modeler.action.ShowLogConsoleAction;
-import org.apache.cayenne.modeler.action.UndoAction;
-import org.apache.cayenne.modeler.action.ValidateAction;
+import org.apache.cayenne.di.Inject;
+import org.apache.cayenne.modeler.Application;
import org.apache.cayenne.modeler.graph.action.ShowGraphEntityAction;
import org.apache.cayenne.modeler.util.CayenneAction;
import org.apache.cayenne.project.ConfigurationNodeParentGetter;
/**
- * An object that manages CayenneModeler actions.
- *
+ * Stores a map of modeler actions, and deals with activating/deactivating those actions
+ * on state changes.
*/
-public class ActionManager {
+public class DefaultActionManager implements ActionManager {
- static final Collection<String> SPECIAL_ACTIONS = Arrays.asList(SaveAction
- .getActionName(), UndoAction.getActionName(), RedoAction.getActionName());
+ static final Collection<String> SPECIAL_ACTIONS = Arrays.asList(SaveAction.class
+ .getName(), UndoAction.class.getName(), RedoAction.class.getName());
// search action added to project actions
- static final Collection<String> PROJECT_ACTIONS = Arrays.asList(RevertAction
- .getActionName(), ProjectAction.getActionName(), ValidateAction
- .getActionName(), SaveAsAction.getActionName(), FindAction.getActionName());
+ static final Collection<String> PROJECT_ACTIONS = Arrays.asList(
+ RevertAction.class.getName(),
+ ProjectAction.class.getName(),
+ ValidateAction.class.getName(),
+ SaveAsAction.class.getName(),
+ FindAction.class.getName());
static final Collection<String> DOMAIN_ACTIONS = new HashSet<String>(PROJECT_ACTIONS);
static {
DOMAIN_ACTIONS.addAll(Arrays.asList(
- ImportDataMapAction.getActionName(),
- CreateDataMapAction.getActionName(),
- RemoveAction.getActionName(),
- CreateNodeAction.getActionName(),
- ImportDBAction.getActionName(),
- ImportEOModelAction.getActionName(),
- PasteAction.getActionName()));
+ ImportDataMapAction.class.getName(),
+ CreateDataMapAction.class.getName(),
+ RemoveAction.class.getName(),
+ CreateNodeAction.class.getName(),
+ ImportDBAction.class.getName(),
+ ImportEOModelAction.class.getName(),
+ PasteAction.class.getName()));
}
static final Collection<String> DATA_MAP_ACTIONS = new HashSet<String>(DOMAIN_ACTIONS);
static {
DATA_MAP_ACTIONS.addAll(Arrays.asList(
- GenerateCodeAction.getActionName(),
- CreateEmbeddableAction.getActionName(),
- CreateObjEntityAction.getActionName(),
- CreateDbEntityAction.getActionName(),
- CreateQueryAction.getActionName(),
- CreateProcedureAction.getActionName(),
- GenerateDBAction.getActionName(),
- MigrateAction.getActionName(),
- InferRelationshipsAction.getActionName(),
- CutAction.getActionName(),
- CopyAction.getActionName()));
+ GenerateCodeAction.class.getName(),
+ CreateEmbeddableAction.class.getName(),
+ CreateObjEntityAction.class.getName(),
+ CreateDbEntityAction.class.getName(),
+ CreateQueryAction.class.getName(),
+ CreateProcedureAction.class.getName(),
+ GenerateDBAction.class.getName(),
+ MigrateAction.class.getName(),
+ InferRelationshipsAction.class.getName(),
+ CutAction.class.getName(),
+ CopyAction.class.getName()));
}
static final Collection<String> OBJ_ENTITY_ACTIONS = new HashSet<String>(
DATA_MAP_ACTIONS);
static {
OBJ_ENTITY_ACTIONS.addAll(Arrays.asList(
- ObjEntitySyncAction.getActionName(),
- CreateAttributeAction.getActionName(),
- CreateRelationshipAction.getActionName(),
- ShowGraphEntityAction.getActionName()));
+ ObjEntitySyncAction.class.getName(),
+ CreateAttributeAction.class.getName(),
+ CreateRelationshipAction.class.getName(),
+ ShowGraphEntityAction.class.getName()));
}
static final Collection<String> DB_ENTITY_ACTIONS = new HashSet<String>(
DATA_MAP_ACTIONS);
static {
DB_ENTITY_ACTIONS.addAll(Arrays.asList(
- CreateAttributeAction.getActionName(),
- CreateRelationshipAction.getActionName(),
- DbEntitySyncAction.getActionName(),
- ShowGraphEntityAction.getActionName()));
+ CreateAttributeAction.class.getName(),
+ CreateRelationshipAction.class.getName(),
+ DbEntitySyncAction.class.getName(),
+ ShowGraphEntityAction.class.getName()));
}
static final Collection<String> EMBEDDABLE_ACTIONS = new HashSet<String>(
DATA_MAP_ACTIONS);
static {
- EMBEDDABLE_ACTIONS.addAll(Arrays.asList(CreateAttributeAction.getActionName()));
+ EMBEDDABLE_ACTIONS.addAll(Arrays.asList(CreateAttributeAction.class.getName()));
}
static final Collection<String> PROCEDURE_ACTIONS = new HashSet<String>(
DATA_MAP_ACTIONS);
static {
- PROCEDURE_ACTIONS.addAll(Arrays.asList(CreateProcedureParameterAction
- .getActionName()));
+ PROCEDURE_ACTIONS.addAll(Arrays.asList(CreateProcedureParameterAction.class
+ .getName()));
}
static final Collection<String> MULTIPLE_OBJECTS_ACTIONS = new HashSet<String>(
PROJECT_ACTIONS);
static {
MULTIPLE_OBJECTS_ACTIONS.addAll(Arrays.asList(
- RemoveAction.getActionName(),
- CutAction.getActionName(),
- CopyAction.getActionName(),
- PasteAction.getActionName()));
+ RemoveAction.class.getName(),
+ CutAction.class.getName(),
+ CopyAction.class.getName(),
+ PasteAction.class.getName()));
}
protected Map<String, Action> actionMap;
- public ActionManager(Application application) {
+ public DefaultActionManager(@Inject Application application) {
+
this.actionMap = new HashMap<String, Action>(40);
registerAction(new ProjectAction(application));
@@ -261,18 +207,20 @@ public class ActionManager {
}
private CayenneAction registerAction(CayenneAction action) {
- actionMap.put(action.getKey(), action);
+ Action oldAction = actionMap.put(action.getClass().getName(), action);
+ if (oldAction != null && oldAction != action) {
+
+ actionMap.put(action.getClass().getName(), oldAction);
+ throw new IllegalArgumentException("There is already an action of type "
+ + action.getClass().getName()
+ + ", attempt to register a second instance.");
+ }
+
return action;
}
- /**
- * Returns an action for key.
- *
- * @param key action name
- * @return action
- */
- public CayenneAction getAction(String key) {
- return (CayenneAction) actionMap.get(key);
+ public <T extends Action> T getAction(Class<T> actionClass) {
+ return (T) actionMap.get(actionClass.getName());
}
/**
@@ -284,7 +232,7 @@ public class ActionManager {
}
public void projectClosed() {
- processActionsState(Collections.EMPTY_SET);
+ processActionsState(Collections.<String> emptySet());
updateActions("");
}
@@ -316,11 +264,6 @@ public class ActionManager {
updateActions("DbEntity");
}
- public void derivedDbEntitySelected() {
- processActionsState(DB_ENTITY_ACTIONS);
- updateActions("Derived DbEntity");
- }
-
public void procedureSelected() {
processActionsState(PROCEDURE_ACTIONS);
updateActions("Procedure");
@@ -346,7 +289,7 @@ public class ActionManager {
updateActions("Selected Objects");
- CayenneAction cutAction = getAction(CutAction.getActionName());
+ CayenneAction cutAction = getAction(CutAction.class);
boolean canCopy = true; // cut/copy can be performed if selected objects are on
// the same level
@@ -354,8 +297,9 @@ public class ActionManager {
canCopy = false;
}
else {
- ConfigurationNodeParentGetter parentGetter = application.getInjector().getInstance(
- ConfigurationNodeParentGetter.class);
+ ConfigurationNodeParentGetter parentGetter = application
+ .getInjector()
+ .getInstance(ConfigurationNodeParentGetter.class);
Object parent = parentGetter.getParent(objects[0]);
for (int i = 1; i < objects.length; i++) {
@@ -368,7 +312,7 @@ public class ActionManager {
}
cutAction.setEnabled(canCopy);
- getAction(CopyAction.getActionName()).setEnabled(canCopy);
+ getAction(CopyAction.class).setEnabled(canCopy);
}
/**
@@ -379,18 +323,16 @@ public class ActionManager {
postfix = " " + postfix;
}
- getAction(RemoveAction.getActionName()).setName("Remove" + postfix);
- getAction(CutAction.getActionName()).setName("Cut" + postfix);
- getAction(CopyAction.getActionName()).setName("Copy" + postfix);
+ getAction(RemoveAction.class).setName("Remove" + postfix);
+ getAction(CutAction.class).setName("Cut" + postfix);
+ getAction(CopyAction.class).setName("Copy" + postfix);
- ((PasteAction) getAction(PasteAction.getActionName())).updateState();
+ getAction(PasteAction.class).updateState();
}
/**
* Sets the state of all controlled actions, flipping it to "enabled" for all actions
* in provided collection and to "disabled" for the rest.
- *
- * @param namesOfEnabled action names
*/
protected void processActionsState(Collection<String> namesOfEnabled) {
for (Map.Entry<String, Action> entry : actionMap.entrySet()) {
@@ -401,19 +343,22 @@ public class ActionManager {
}
}
- /**
- * Replaces standard Cut, Copy and Paste action maps, so that accelerators like
- * Ctrl+X, Ctrl+C, Ctrl+V would work
- */
- public void setupCCP(JComponent comp, String cutName, String copyName) {
+ public void setupCutCopyPaste(
+ JComponent comp,
+ Class<? extends Action> cutActionType,
+ Class<? extends Action> copyActionType) {
+
ActionMap map = comp.getActionMap();
- map.put(TransferHandler.getCutAction().getValue(Action.NAME), getAction(cutName));
+ map.put(
+ TransferHandler.getCutAction().getValue(Action.NAME),
+ getAction(cutActionType));
map.put(
TransferHandler.getCopyAction().getValue(Action.NAME),
- getAction(copyName));
+ getAction(copyActionType));
map.put(
TransferHandler.getPasteAction().getValue(Action.NAME),
- getAction(PasteAction.getActionName()));
+ getAction(PasteAction.class));
}
+
}
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ExitAction.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ExitAction.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ExitAction.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ExitAction.java Tue Aug 24 13:34:35 2010
@@ -26,12 +26,10 @@ import org.apache.cayenne.pref.RenamedPr
import java.awt.event.ActionEvent;
-/**
- */
public class ExitAction extends ProjectAction {
public static String getActionName() {
- return "Exit";
+ return "Exit";
}
/**
@@ -49,19 +47,19 @@ public class ExitAction extends ProjectA
if (!checkSaveOnClose()) {
return;
}
-
- //stop logging before JVM shutdown to prevent hanging
- LogConsole.getInstance().stopLogging();
-
- RenamedPreferences.removeNewPreferences();
-
- // goodbye
+
+ // stop logging before JVM shutdown to prevent hanging
+ LogConsole.getInstance().stopLogging();
+
+ RenamedPreferences.removeNewPreferences();
+
+ // goodbye
System.exit(0);
}
/**
- * Always returns true.
- */
+ * Always returns true.
+ */
public boolean enableForPath(ConfigurationNode object) {
return true;
}
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ImportEOModelAction.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ImportEOModelAction.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ImportEOModelAction.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ImportEOModelAction.java Tue Aug 24 13:34:35 2010
@@ -140,8 +140,8 @@ public class ImportEOModelAction extends
Map connection = (Map) eomodelIndex.get("connectionDictionary");
if (adapter != null && connection != null) {
- CreateNodeAction nodeBuilder = (CreateNodeAction) getApplication().getAction(
- CreateNodeAction.getActionName());
+ CreateNodeAction nodeBuilder = (CreateNodeAction) getApplication().getActionManager().getAction(
+ CreateNodeAction.class);
// this should make created node current, resulting in the new map being added
// to the node automatically once it is loaded
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/OpenProjectAction.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/OpenProjectAction.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/OpenProjectAction.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/OpenProjectAction.java Tue Aug 24 13:34:35 2010
@@ -43,8 +43,6 @@ import org.apache.cayenne.swing.control.
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-/**
- */
public class OpenProjectAction extends ProjectAction {
private static Log logObj = LogFactory.getLog(OpenProjectAction.class);
@@ -55,9 +53,6 @@ public class OpenProjectAction extends P
return "Open Project";
}
- /**
- * Constructor for OpenProjectAction.
- */
public OpenProjectAction(Application application) {
super(getActionName(), application);
this.fileChooser = new ProjectOpener();
@@ -151,8 +146,9 @@ public class OpenProjectAction extends P
JOptionPane
.showMessageDialog(Application.getFrame(),
// TODO: andrus 05/02/2010 - this message shows intermediate
- // version of the project XML, not the Modeler code version that
- // can be used for upgrade
+ // version of the project XML, not the Modeler code
+ // version that
+ // can be used for upgrade
"Can't upgrade project. Open the project in the Modeler v."
+ md.getIntermediateUpgradeVersion()
+ " to do an intermediate upgrade before you can upgrade to v."
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ProjectAction.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ProjectAction.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ProjectAction.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ProjectAction.java Tue Aug 24 13:34:35 2010
@@ -69,9 +69,9 @@ public class ProjectAction extends Cayen
CayenneModelerController controller = Application
.getInstance()
.getFrameController();
-
+
application.getUndoManager().discardAllEdits();
-
+
controller.projectClosedAction();
return true;
@@ -88,7 +88,6 @@ public class ProjectAction extends Cayen
if (dialog.shouldCancel()) {
// discard changes and DO NOT close
- Application.getInstance().setQuittingApplication(false);
return false;
}
else if (dialog.shouldSave()) {
@@ -99,7 +98,8 @@ public class ProjectAction extends Cayen
"SaveAll");
Application
.getInstance()
- .getAction(SaveAction.getActionName())
+ .getActionManager()
+ .getAction(SaveAction.class)
.actionPerformed(e);
if (projectController.isDirty()) {
// save was canceled... do not close
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/RevertAction.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/RevertAction.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/RevertAction.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/RevertAction.java Tue Aug 24 13:34:35 2010
@@ -32,9 +32,7 @@ import org.apache.cayenne.project.Projec
*/
public class RevertAction extends CayenneAction {
-
-
- public static String getActionName() {
+ public static String getActionName() {
return "Revert";
}
@@ -49,20 +47,24 @@ public class RevertAction extends Cayenn
return;
}
- boolean isNew = project.getConfigurationResource() == null;
-
+ boolean isNew = project.getConfigurationResource() == null;
+
CayenneModelerController controller = getApplication().getFrameController();
// close ... don't use OpenProjectAction close method as it will ask for save, we
// don't want that here
controller.projectClosedAction();
- File fileDirectory = new File(project.getConfigurationResource().getURL().getPath());
+ File fileDirectory = new File(project
+ .getConfigurationResource()
+ .getURL()
+ .getPath());
// reopen existing
if (!isNew && fileDirectory.isFile()) {
- OpenProjectAction openAction = (OpenProjectAction) controller
+ OpenProjectAction openAction = controller
.getApplication()
- .getAction(OpenProjectAction.getActionName());
+ .getActionManager()
+ .getAction(OpenProjectAction.class);
openAction.openProject(fileDirectory);
}
// create new
@@ -70,12 +72,10 @@ public class RevertAction extends Cayenn
throw new CayenneRuntimeException("Only ApplicationProjects are supported.");
}
else {
- controller
- .getApplication()
- .getAction(NewProjectAction.getActionName())
- .performAction(e);
+ controller.getApplication().getActionManager().getAction(
+ NewProjectAction.class).performAction(e);
}
-
+
application.getUndoManager().discardAllEdits();
}
}
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/ConfirmRemoveDialog.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/ConfirmRemoveDialog.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/ConfirmRemoveDialog.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/ConfirmRemoveDialog.java Tue Aug 24 13:34:35 2010
@@ -24,33 +24,39 @@ import javax.swing.JCheckBox;
import javax.swing.JDialog;
import javax.swing.JOptionPane;
-import org.apache.cayenne.gen.ClassGenerationAction;
import org.apache.cayenne.modeler.Application;
import org.apache.cayenne.modeler.dialog.pref.GeneralPreferences;
/**
* Used to confirm deleting items in the model.
- *
+ *
*/
public class ConfirmRemoveDialog {
+
private boolean shouldDelete = true;
-
+
/**
* If false, no question will be asked no matter what settings are
*/
private boolean allowAsking;
-
+
public ConfirmRemoveDialog(boolean allowAsking) {
this.allowAsking = allowAsking;
}
-
+
private void showDialog(String name) {
JCheckBox neverPromptAgainBox = new JCheckBox("Always delete without prompt.");
- Object message[] = {String.format("Are you sure you would like to delete the %s?", name), neverPromptAgainBox};
-
- JOptionPane pane = new JOptionPane(message, JOptionPane.QUESTION_MESSAGE, JOptionPane.YES_NO_OPTION);
+ Object message[] = {
+ String.format("Are you sure you would like to delete the %s?", name),
+ neverPromptAgainBox
+ };
+
+ JOptionPane pane = new JOptionPane(
+ message,
+ JOptionPane.QUESTION_MESSAGE,
+ JOptionPane.YES_NO_OPTION);
JDialog dialog = pane.createDialog(Application.getFrame(), "Confirm Remove");
dialog.setVisible(true);
@@ -58,24 +64,34 @@ public class ConfirmRemoveDialog {
Object selectedValue = pane.getValue();
shouldDelete = selectedValue.equals(JOptionPane.YES_OPTION);
- // If the user clicks "no", we'll just ignore whatever's in the checkbox because it's non-sensical.
+ // If the user clicks "no", we'll just ignore whatever's in the checkbox because
+ // it's non-sensical.
if (shouldDelete) {
- Preferences pref = Application.getInstance().getPreferencesNode(ClassGenerationAction.class, "");
- pref.putBoolean(GeneralPreferences.DELETE_PROMPT_PREFERENCE, neverPromptAgainBox.isSelected());
+ Preferences pref = Application.getInstance().getPreferencesNode(
+ GeneralPreferences.class,
+ "");
+ pref.putBoolean(
+ GeneralPreferences.DELETE_PROMPT_PREFERENCE,
+ neverPromptAgainBox.isSelected());
}
}
-
+
public boolean shouldDelete(String type, String name) {
return shouldDelete(String.format("%s named '%s'?", type, name));
}
public boolean shouldDelete(String name) {
if (allowAsking) {
-
- Preferences pref = Application.getInstance().getPreferencesNode(ClassGenerationAction.class, "");
+
+ Preferences pref = Application.getInstance().getPreferencesNode(
+ GeneralPreferences.class,
+ "");
// See if the user has opted not to showDialog the delete dialog.
- if ((pref == null) || (false == pref.getBoolean(GeneralPreferences.DELETE_PROMPT_PREFERENCE, false))) {
+ if ((pref == null)
+ || !pref.getBoolean(
+ GeneralPreferences.DELETE_PROMPT_PREFERENCE,
+ false)) {
showDialog(name);
}
}
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/LogConsole.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/LogConsole.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/LogConsole.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/LogConsole.java Tue Aug 24 13:34:35 2010
@@ -298,7 +298,7 @@ public class LogConsole extends CayenneC
clear();
}
- StringBuffer newText = new StringBuffer(FORMAT.format(new Date()))
+ StringBuilder newText = new StringBuilder(FORMAT.format(new Date()))
.append(System.getProperty("line.separator"))
.append(level.toUpperCase() + ": ");
@@ -325,8 +325,6 @@ public class LogConsole extends CayenneC
try {
doc.insertString(doc.getLength(), newText.toString(), style);
- //view.getLogView().setText(view.getLogView().getText() + newText);
-
if (autoScroll) {
view.getLogView().setCaretPosition(
doc.getLength() - 1);
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/GeneratorController.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/GeneratorController.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/GeneratorController.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/codegen/GeneratorController.java Tue Aug 24 13:34:35 2010
@@ -153,12 +153,15 @@ public abstract class GeneratorControlle
generator.addEntities(entities);
generator.addEmbeddables(getParentController().getSelectedEmbeddables());
generator.addQueries(getParentController().getDataMap().getQueries());
-
- Preferences preferences = application.getPreferencesNode(ClassGenerationAction.class, "");
+
+ Preferences preferences = application.getPreferencesNode(
+ GeneralPreferences.class,
+ "");
if (preferences != null) {
- generator.setEncoding(preferences
- .get(GeneralPreferences.ENCODING_PREFERENCE, null));
+ generator.setEncoding(preferences.get(
+ GeneralPreferences.ENCODING_PREFERENCE,
+ null));
}
generator.setDestDir(outputDir);
@@ -542,7 +545,7 @@ public abstract class GeneratorControlle
return getParentController().getProblem(
((ObjEntity) object).getName()) == null;
}
-
+
if (object instanceof Embeddable) {
return getParentController().getProblem(
((Embeddable) object).getClassName()) == null;
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/GeneralPreferences.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/GeneralPreferences.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/GeneralPreferences.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/GeneralPreferences.java Tue Aug 24 13:34:35 2010
@@ -24,15 +24,12 @@ import java.util.HashMap;
import java.util.Map;
import java.util.prefs.Preferences;
-import org.apache.cayenne.gen.ClassGenerationAction;
import org.apache.cayenne.modeler.util.CayenneController;
import org.apache.cayenne.pref.CayennePreferenceEditor;
import org.apache.cayenne.pref.PreferenceEditor;
import org.apache.cayenne.swing.BindingBuilder;
import org.apache.cayenne.swing.ObjectBinding;
-/**
- */
public class GeneralPreferences extends CayenneController {
public static final String AUTO_LOAD_PROJECT_PREFERENCE = "autoLoadProject";
@@ -77,7 +74,7 @@ public class GeneralPreferences extends
protected void initBindings() {
// init model objects
- preferences = application.getPreferencesNode(ClassGenerationAction.class, "");
+ preferences = application.getPreferencesNode(GeneralPreferences.class, "");
this.encoding = preferences.get(ENCODING_PREFERENCE, null);
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/ValidatorDialog.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/ValidatorDialog.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/ValidatorDialog.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/ValidatorDialog.java Tue Aug 24 13:34:35 2010
@@ -109,7 +109,9 @@ public class ValidatorDialog extends Cay
problemsTable.setRowMargin(3);
problemsTable.setCellSelectionEnabled(false);
problemsTable.setRowSelectionAllowed(true);
- problemsTable.setDefaultRenderer(ValidationFailure.class, new ValidationRenderer());
+ problemsTable.setDefaultRenderer(
+ ValidationFailure.class,
+ new ValidationRenderer());
// assemble
CellConstraints cc = new CellConstraints();
@@ -159,10 +161,8 @@ public class ValidatorDialog extends Cay
refreshButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
- Application
- .getInstance()
- .getAction(ValidateAction.getActionName())
- .actionPerformed(e);
+ Application.getInstance().getActionManager().getAction(
+ ValidateAction.class).actionPerformed(e);
}
});
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/AbstractCallbackMethodsTab.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/AbstractCallbackMethodsTab.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/AbstractCallbackMethodsTab.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/AbstractCallbackMethodsTab.java Tue Aug 24 13:34:35 2010
@@ -141,7 +141,7 @@ public abstract class AbstractCallbackMe
*/
protected CayenneAction getCreateCallbackMethodAction() {
Application app = Application.getInstance();
- return app.getAction(CreateCallbackMethodAction.ACTION_NAME);
+ return app.getActionManager().getAction(CreateCallbackMethodAction.class);
}
/**
@@ -149,8 +149,7 @@ public abstract class AbstractCallbackMe
*/
protected AbstractRemoveCallbackMethodAction getRemoveCallbackMethodAction() {
Application app = Application.getInstance();
- return (AbstractRemoveCallbackMethodAction) app
- .getAction(RemoveCallbackMethodAction.ACTION_NAME);
+ return app.getActionManager().getAction(RemoveCallbackMethodAction.class);
}
/**
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/DataMapCallbackListenersTab.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/DataMapCallbackListenersTab.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/DataMapCallbackListenersTab.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/DataMapCallbackListenersTab.java Tue Aug 24 13:34:35 2010
@@ -34,17 +34,16 @@ import org.apache.cayenne.modeler.event.
import org.apache.cayenne.modeler.pref.TableColumnPreferences;
import org.apache.cayenne.modeler.util.CayenneAction;
-
/**
* Tab for editing default entity listeners of a DataMap
- *
+ *
* @version 1.0 Oct 28, 2007
*/
public class DataMapCallbackListenersTab extends AbstractCallbackListenersTab {
-
/**
* Constructor
+ *
* @param mediator mediator instance
*/
public DataMapCallbackListenersTab(ProjectController mediator) {
@@ -56,8 +55,10 @@ public class DataMapCallbackListenersTab
*/
protected CallbackMap getCallbackMap() {
String listenerClass = (String) listenerClassCombo.getSelectedItem();
- return listenerClass == null ?
- null : mediator.getCurrentDataMap().getDefaultEntityListener(listenerClass).getCallbackMap();
+ return listenerClass == null ? null : mediator
+ .getCurrentDataMap()
+ .getDefaultEntityListener(listenerClass)
+ .getCallbackMap();
}
/**
@@ -67,28 +68,28 @@ public class DataMapCallbackListenersTab
return mediator.getCurrentDataMap().getDefaultEntityListeners();
}
-
/**
* init listeners
*/
protected void initController() {
super.initController();
- mediator.addDataMapDisplayListener(
- new DataMapDisplayListener() {
- /**
- * process DapaMap selection
- * @param e event
- */
- public void currentDataMapChanged(DataMapDisplayEvent e) {
- if (isVisible()) {
- rebuildListenerClassCombo(null);
- updateCallbackTypeCounters();
- mediator.setCurrentCallbackType((CallbackType)callbackTypeCombo.getSelectedItem());
- rebuildTable();
- }
- }
+ mediator.addDataMapDisplayListener(new DataMapDisplayListener() {
+
+ /**
+ * process DapaMap selection
+ *
+ * @param e event
+ */
+ public void currentDataMapChanged(DataMapDisplayEvent e) {
+ if (isVisible()) {
+ rebuildListenerClassCombo(null);
+ updateCallbackTypeCounters();
+ mediator.setCurrentCallbackType((CallbackType) callbackTypeCombo
+ .getSelectedItem());
+ rebuildTable();
}
- );
+ }
+ });
}
/**
@@ -96,7 +97,8 @@ public class DataMapCallbackListenersTab
*/
protected CayenneAction getCreateCallbackMethodAction() {
Application app = Application.getInstance();
- return app.getAction(CreateCallbackMethodForDataMapListenerAction.ACTION_NAME);
+ return app.getActionManager().getAction(
+ CreateCallbackMethodForDataMapListenerAction.class);
}
/**
@@ -104,22 +106,24 @@ public class DataMapCallbackListenersTab
*/
protected AbstractRemoveCallbackMethodAction getRemoveCallbackMethodAction() {
Application app = Application.getInstance();
- return (AbstractRemoveCallbackMethodAction) app.getAction(RemoveCallbackMethodForDataMapListenerAction.ACTION_NAME);
+ return app.getActionManager().getAction(
+ RemoveCallbackMethodForDataMapListenerAction.class);
}
/**
* @return action for removing entity listeners
*/
protected CayenneAction getRemoveEntityListenerAction() {
- return Application.getInstance().getAction(RemoveEntityListenerForDataMapAction.getActionName());
+ return Application.getInstance().getActionManager().getAction(
+ RemoveEntityListenerForDataMapAction.class);
}
-
/**
* @return action for creating entity listeners
*/
public CayenneAction getCreateEntityListenerAction() {
- return Application.getInstance().getAction(CreateDataMapEntityListenerAction.getActionName());
+ return Application.getInstance().getActionManager().getAction(
+ CreateDataMapEntityListenerAction.class);
}
protected EntityListener getEntityListener(String listenerClass) {
@@ -128,7 +132,8 @@ public class DataMapCallbackListenersTab
@Override
protected void initTablePreferences() {
- tablePreferences = new TableColumnPreferences(this.getClass(),"datamap/callbackTable");
+ tablePreferences = new TableColumnPreferences(
+ this.getClass(),
+ "datamap/callbackTable");
}
}
-
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/EmbeddableAttributeTab.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/EmbeddableAttributeTab.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/EmbeddableAttributeTab.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/EmbeddableAttributeTab.java Tue Aug 24 13:34:35 2010
@@ -42,6 +42,7 @@ import org.apache.cayenne.map.event.Embe
import org.apache.cayenne.map.event.EmbeddableListener;
import org.apache.cayenne.modeler.Application;
import org.apache.cayenne.modeler.ProjectController;
+import org.apache.cayenne.modeler.action.ActionManager;
import org.apache.cayenne.modeler.action.CopyAttributeAction;
import org.apache.cayenne.modeler.action.CreateAttributeAction;
import org.apache.cayenne.modeler.action.CutAttributeAction;
@@ -59,7 +60,7 @@ import org.apache.cayenne.modeler.util.P
import org.apache.cayenne.modeler.util.UIUtil;
import org.apache.cayenne.modeler.util.combo.AutoCompletion;
-public class EmbeddableAttributeTab extends JPanel implements
+public class EmbeddableAttributeTab extends JPanel implements
EmbeddableAttributeListener, EmbeddableDisplayListener, EmbeddableListener,
ExistingSelectionProcessor {
@@ -79,17 +80,17 @@ public class EmbeddableAttributeTab exte
this.setLayout(new BorderLayout());
JToolBar toolBar = new JToolBar();
- Application app = Application.getInstance();
+ ActionManager actionManager = Application.getInstance().getActionManager();
- toolBar.add(app.getAction(CreateAttributeAction.getActionName()).buildButton());
+ toolBar.add(actionManager.getAction(CreateAttributeAction.class).buildButton());
toolBar.addSeparator();
- toolBar.add(app.getAction(RemoveAttributeAction.getActionName()).buildButton());
+ toolBar.add(actionManager.getAction(RemoveAttributeAction.class).buildButton());
toolBar.addSeparator();
- toolBar.add(app.getAction(CutAttributeAction.getActionName()).buildButton());
- toolBar.add(app.getAction(CopyAttributeAction.getActionName()).buildButton());
- toolBar.add(app.getAction(PasteAction.getActionName()).buildButton());
+ toolBar.add(actionManager.getAction(CutAttributeAction.class).buildButton());
+ toolBar.add(actionManager.getAction(CopyAttributeAction.class).buildButton());
+ toolBar.add(actionManager.getAction(PasteAction.class).buildButton());
add(toolBar, BorderLayout.NORTH);
@@ -99,17 +100,15 @@ public class EmbeddableAttributeTab exte
this.getClass(),
"embeddable/attributeTable");
- /**
- * Create and install a popup
- */
+ // Create and install a popup
JPopupMenu popup = new JPopupMenu();
- popup.add(app.getAction(RemoveAttributeAction.getActionName()).buildMenu());
+ popup.add(actionManager.getAction(RemoveAttributeAction.class).buildMenu());
popup.addSeparator();
- popup.add(app.getAction(CutAttributeAction.getActionName()).buildMenu());
- popup.add(app.getAction(CopyAttributeAction.getActionName()).buildMenu());
- popup.add(app.getAction(PasteAction.getActionName()).buildMenu());
+ popup.add(actionManager.getAction(CutAttributeAction.class).buildMenu());
+ popup.add(actionManager.getAction(CopyAttributeAction.class).buildMenu());
+ popup.add(actionManager.getAction(PasteAction.class).buildMenu());
TablePopupHandler.install(table, popup);
add(PanelFactory.createTablePanel(table, null), BorderLayout.CENTER);
@@ -127,10 +126,10 @@ public class EmbeddableAttributeTab exte
}
});
- mediator.getApplication().getActionManager().setupCCP(
+ mediator.getApplication().getActionManager().setupCutCopyPaste(
table,
- CutAttributeAction.getActionName(),
- CopyAttributeAction.getActionName());
+ CutAttributeAction.class,
+ CopyAttributeAction.class);
}
public void processExistingSelection(EventObject e) {
@@ -161,7 +160,7 @@ public class EmbeddableAttributeTab exte
mediator.getCurrentEmbeddable(),
attrs,
mediator.getCurrentDataMap(),
- (DataChannelDescriptor)mediator.getProject().getRootNode());
+ (DataChannelDescriptor) mediator.getProject().getRootNode());
mediator.fireEmbeddableAttributeDisplayEvent(ev);
}
@@ -202,9 +201,9 @@ public class EmbeddableAttributeTab exte
public void selectAttributes(EmbeddableAttribute[] embAttrs) {
ModelerUtil.updateActions(
embAttrs.length,
- RemoveAttributeAction.getActionName(),
- CopyAttributeAction.getActionName(),
- CutAttributeAction.getActionName());
+ RemoveAttributeAction.class,
+ CopyAttributeAction.class,
+ CutAttributeAction.class);
EmbeddableAttributeTableModel model = (EmbeddableAttributeTableModel) table
.getModel();
@@ -247,17 +246,19 @@ public class EmbeddableAttributeTab exte
rebuildTable(embeddable);
}
}
-
+
public void embeddableAdded(EmbeddableEvent e, DataMap map) {
}
-
+
public void embeddableRemoved(EmbeddableEvent e, DataMap map) {
}
public void embeddableChanged(EmbeddableEvent e, DataMap map) {
if (e.getOldName() != null) {
- ((Embeddable)map.getEmbeddable(e.getOldName())).setClassName(e.getEmbeddable().getClassName());
- if(map.getEmbeddableMap().containsKey(e.getOldName())){
+ ((Embeddable) map.getEmbeddable(e.getOldName())).setClassName(e
+ .getEmbeddable()
+ .getClassName());
+ if (map.getEmbeddableMap().containsKey(e.getOldName())) {
map.removeEmbeddable(e.getOldName());
map.addEmbeddable(e.getEmbeddable());
}
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/EmbeddableTab.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/EmbeddableTab.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/EmbeddableTab.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/EmbeddableTab.java Tue Aug 24 13:34:35 2010
@@ -36,6 +36,7 @@ import org.apache.cayenne.map.event.Attr
import org.apache.cayenne.map.event.EmbeddableEvent;
import org.apache.cayenne.modeler.Application;
import org.apache.cayenne.modeler.ProjectController;
+import org.apache.cayenne.modeler.action.ActionManager;
import org.apache.cayenne.modeler.action.CreateAttributeAction;
import org.apache.cayenne.modeler.event.EmbeddableDisplayEvent;
import org.apache.cayenne.modeler.event.EmbeddableDisplayListener;
@@ -65,8 +66,8 @@ public class EmbeddableTab extends JPane
this.setLayout(new BorderLayout());
JToolBar toolBar = new JToolBar();
- Application app = Application.getInstance();
- toolBar.add(app.getAction(CreateAttributeAction.getActionName()).buildButton());
+ ActionManager actionManager = Application.getInstance().getActionManager();
+ toolBar.add(actionManager.getAction(CreateAttributeAction.class).buildButton());
add(toolBar, BorderLayout.NORTH);
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/EmbeddableTabbedView.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/EmbeddableTabbedView.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/EmbeddableTabbedView.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/EmbeddableTabbedView.java Tue Aug 24 13:34:35 2010
@@ -30,6 +30,7 @@ import org.apache.cayenne.map.Embeddable
import org.apache.cayenne.map.EmbeddableAttribute;
import org.apache.cayenne.modeler.Application;
import org.apache.cayenne.modeler.ProjectController;
+import org.apache.cayenne.modeler.action.ActionManager;
import org.apache.cayenne.modeler.action.RemoveAttributeAction;
import org.apache.cayenne.modeler.action.RemoveCallbackMethodAction;
import org.apache.cayenne.modeler.event.EmbeddableAttributeDisplayEvent;
@@ -87,9 +88,10 @@ public class EmbeddableTabbedView extend
/** Reset the remove buttons */
private void resetRemoveButtons() {
- Application app = Application.getInstance();
- app.getAction(RemoveAttributeAction.getActionName()).setEnabled(false);
- app.getAction(RemoveCallbackMethodAction.getActionName()).setEnabled(false);
+ ActionManager actionManager = Application.getInstance().getActionManager();
+
+ actionManager.getAction(RemoveAttributeAction.class).setEnabled(false);
+ actionManager.getAction(RemoveCallbackMethodAction.class).setEnabled(false);
}
public void currentEmbeddableChanged(EmbeddableDisplayEvent e) {
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityAttributeTab.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityAttributeTab.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityAttributeTab.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityAttributeTab.java Tue Aug 24 13:34:35 2010
@@ -58,6 +58,7 @@ import org.apache.cayenne.map.event.ObjA
import org.apache.cayenne.map.event.ObjEntityListener;
import org.apache.cayenne.modeler.Application;
import org.apache.cayenne.modeler.ProjectController;
+import org.apache.cayenne.modeler.action.ActionManager;
import org.apache.cayenne.modeler.action.CopyAttributeAction;
import org.apache.cayenne.modeler.action.CreateAttributeAction;
import org.apache.cayenne.modeler.action.CutAttributeAction;
@@ -100,9 +101,10 @@ public class ObjEntityAttributeTab exten
this.setLayout(new BorderLayout());
JToolBar toolBar = new JToolBar();
- Application app = Application.getInstance();
- toolBar.add(app.getAction(CreateAttributeAction.getActionName()).buildButton());
- toolBar.add(app.getAction(ObjEntitySyncAction.getActionName()).buildButton());
+ ActionManager actionManager = Application.getInstance().getActionManager();
+
+ toolBar.add(actionManager.getAction(CreateAttributeAction.class).buildButton());
+ toolBar.add(actionManager.getAction(ObjEntitySyncAction.class).buildButton());
toolBar.addSeparator();
Icon ico = ModelerUtil.buildIcon("icon-info.gif");
@@ -113,12 +115,12 @@ public class ObjEntityAttributeTab exten
toolBar.add(resolve);
toolBar.addSeparator();
- toolBar.add(app.getAction(RemoveAttributeAction.getActionName()).buildButton());
+ toolBar.add(actionManager.getAction(RemoveAttributeAction.class).buildButton());
toolBar.addSeparator();
- toolBar.add(app.getAction(CutAttributeAction.getActionName()).buildButton());
- toolBar.add(app.getAction(CopyAttributeAction.getActionName()).buildButton());
- toolBar.add(app.getAction(PasteAction.getActionName()).buildButton());
+ toolBar.add(actionManager.getAction(CutAttributeAction.class).buildButton());
+ toolBar.add(actionManager.getAction(CopyAttributeAction.class).buildButton());
+ toolBar.add(actionManager.getAction(PasteAction.class).buildButton());
add(toolBar, BorderLayout.NORTH);
@@ -129,16 +131,14 @@ public class ObjEntityAttributeTab exten
ObjAttributeTableModel.class,
"objEntity/attributeTable");
- /**
- * Create and install a popup
- */
+ // Create and install a popup
JPopupMenu popup = new JPopupMenu();
- popup.add(app.getAction(RemoveAttributeAction.getActionName()).buildMenu());
+ popup.add(actionManager.getAction(RemoveAttributeAction.class).buildMenu());
popup.addSeparator();
- popup.add(app.getAction(CutAttributeAction.getActionName()).buildMenu());
- popup.add(app.getAction(CopyAttributeAction.getActionName()).buildMenu());
- popup.add(app.getAction(PasteAction.getActionName()).buildMenu());
+ popup.add(actionManager.getAction(CutAttributeAction.class).buildMenu());
+ popup.add(actionManager.getAction(CopyAttributeAction.class).buildMenu());
+ popup.add(actionManager.getAction(PasteAction.class).buildMenu());
TablePopupHandler.install(table, popup);
@@ -184,10 +184,11 @@ public class ObjEntityAttributeTab exten
resolve.addActionListener(resolver);
- mediator.getApplication().getActionManager().setupCCP(
+ ActionManager actionManager = Application.getInstance().getActionManager();
+ actionManager.setupCutCopyPaste(
table,
- CutAttributeAction.getActionName(),
- CopyAttributeAction.getActionName());
+ CutAttributeAction.class,
+ CopyAttributeAction.class);
}
public void initComboBoxes(ObjAttributeTableModel model) {
@@ -238,9 +239,9 @@ public class ObjEntityAttributeTab exten
public void selectAttributes(ObjAttribute[] attrs) {
ModelerUtil.updateActions(
attrs.length,
- RemoveAttributeAction.getActionName(),
- CutAttributeAction.getActionName(),
- CopyAttributeAction.getActionName());
+ RemoveAttributeAction.class,
+ CutAttributeAction.class,
+ CopyAttributeAction.class);
ObjAttributeTableModel model = (ObjAttributeTableModel) table.getModel();
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityCallbackListenersTab.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityCallbackListenersTab.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityCallbackListenersTab.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityCallbackListenersTab.java Tue Aug 24 13:34:35 2010
@@ -25,6 +25,7 @@ import org.apache.cayenne.map.EntityList
import org.apache.cayenne.modeler.Application;
import org.apache.cayenne.modeler.ProjectController;
import org.apache.cayenne.modeler.action.AbstractRemoveCallbackMethodAction;
+import org.apache.cayenne.modeler.action.ActionManager;
import org.apache.cayenne.modeler.action.CreateCallbackMethodForListenerAction;
import org.apache.cayenne.modeler.action.CreateObjEntityListenerAction;
import org.apache.cayenne.modeler.action.RemoveCallbackMethodForListenerAction;
@@ -36,13 +37,14 @@ import org.apache.cayenne.modeler.util.C
/**
* Tab for editing entity listeners of an ObjEntity
- *
+ *
* @version 1.0 Oct 28, 2007
*/
public class ObjEntityCallbackListenersTab extends AbstractCallbackListenersTab {
/**
* constructor
+ *
* @param mediator mediator instance
*/
public ObjEntityCallbackListenersTab(ProjectController mediator) {
@@ -54,9 +56,12 @@ public class ObjEntityCallbackListenersT
*/
protected CallbackMap getCallbackMap() {
String listenerClass = (String) listenerClassCombo.getSelectedItem();
- if (mediator.getCurrentObjEntity() != null &&
- mediator.getCurrentObjEntity().getEntityListener(listenerClass) != null) {
- return mediator.getCurrentObjEntity().getEntityListener(listenerClass).getCallbackMap();
+ if (mediator.getCurrentObjEntity() != null
+ && mediator.getCurrentObjEntity().getEntityListener(listenerClass) != null) {
+ return mediator
+ .getCurrentObjEntity()
+ .getEntityListener(listenerClass)
+ .getCallbackMap();
}
return null;
}
@@ -67,57 +72,59 @@ public class ObjEntityCallbackListenersT
protected void initController() {
super.initController();
- mediator.addObjEntityDisplayListener(
- new ObjEntityDisplayListener() {
- public void currentObjEntityChanged(EntityDisplayEvent e) {
- if (ObjEntityCallbackListenersTab.this.isVisible()) {
- rebuildListenerClassCombo(null);
- updateCallbackTypeCounters();
- mediator.setCurrentCallbackType((CallbackType)callbackTypeCombo.getSelectedItem());
- rebuildTable();
- }
- }
+ mediator.addObjEntityDisplayListener(new ObjEntityDisplayListener() {
+
+ public void currentObjEntityChanged(EntityDisplayEvent e) {
+ if (ObjEntityCallbackListenersTab.this.isVisible()) {
+ rebuildListenerClassCombo(null);
+ updateCallbackTypeCounters();
+ mediator.setCurrentCallbackType((CallbackType) callbackTypeCombo
+ .getSelectedItem());
+ rebuildTable();
}
- );
+ }
+ });
}
/**
* @return returns entity listeners list
*/
protected List getEntityListeners() {
- return mediator.getCurrentObjEntity() == null ? null :
- mediator.getCurrentObjEntity().getEntityListeners();
+ return mediator.getCurrentObjEntity() == null ? null : mediator
+ .getCurrentObjEntity()
+ .getEntityListeners();
}
/**
* @return create callback method action
*/
protected CayenneAction getCreateCallbackMethodAction() {
- Application app = Application.getInstance();
- return app.getAction(CreateCallbackMethodForListenerAction.ACTION_NAME);
+ ActionManager actionManager = Application.getInstance().getActionManager();
+ return actionManager.getAction(CreateCallbackMethodForListenerAction.class);
}
-
/**
* @return remove callback method action
*/
protected AbstractRemoveCallbackMethodAction getRemoveCallbackMethodAction() {
- Application app = Application.getInstance();
- return (AbstractRemoveCallbackMethodAction)app.getAction(RemoveCallbackMethodForListenerAction.ACTION_NAME);
+ ActionManager actionManager = Application.getInstance().getActionManager();
+ return actionManager.getAction(RemoveCallbackMethodForListenerAction.class);
}
/**
* @return action for removing entity listeners
*/
protected CayenneAction getRemoveEntityListenerAction() {
- return Application.getInstance().getAction(RemoveEntityListenerAction.getActionName());
+ ActionManager actionManager = Application.getInstance().getActionManager();
+ return actionManager.getAction(RemoveEntityListenerAction.class);
}
/**
* @return action for creating entity listeners
*/
public CayenneAction getCreateEntityListenerAction() {
- return Application.getInstance().getAction(CreateObjEntityListenerAction.getActionName());
+ ActionManager actionManager = Application.getInstance().getActionManager();
+ return actionManager.getAction(CreateObjEntityListenerAction.class);
}
protected EntityListener getEntityListener(String listenerClass) {
@@ -126,7 +133,8 @@ public class ObjEntityCallbackListenersT
@Override
protected void initTablePreferences() {
- tablePreferences = new TableColumnPreferences(this.getClass(),"objEntity/callbackTable");
+ tablePreferences = new TableColumnPreferences(
+ this.getClass(),
+ "objEntity/callbackTable");
}
}
-
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityRelationshipTab.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityRelationshipTab.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityRelationshipTab.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityRelationshipTab.java Tue Aug 24 13:34:35 2010
@@ -58,6 +58,7 @@ import org.apache.cayenne.map.event.ObjR
import org.apache.cayenne.map.event.RelationshipEvent;
import org.apache.cayenne.modeler.Application;
import org.apache.cayenne.modeler.ProjectController;
+import org.apache.cayenne.modeler.action.ActionManager;
import org.apache.cayenne.modeler.action.CopyRelationshipAction;
import org.apache.cayenne.modeler.action.CreateRelationshipAction;
import org.apache.cayenne.modeler.action.CutRelationshipAction;
@@ -82,7 +83,6 @@ import org.apache.commons.logging.LogFac
/**
* Displays ObjRelationships for the edited ObjEntity.
- *
*/
public class ObjEntityRelationshipTab extends JPanel implements ObjEntityDisplayListener,
ObjEntityListener, ObjRelationshipListener, ExistingSelectionProcessor {
@@ -100,13 +100,12 @@ public class ObjEntityRelationshipTab ex
CayenneTable table;
private TableColumnPreferences tablePreferences;
-
+
JButton resolve;
-
+
/**
- * By now popup menu item is made similiar to toolbar button.
- * (i.e. all functionality is here)
- * This should be probably refactored as Action.
+ * By now popup menu item is made similiar to toolbar button. (i.e. all functionality
+ * is here) This should be probably refactored as Action.
*/
protected JMenuItem resolveMenu;
@@ -121,15 +120,15 @@ public class ObjEntityRelationshipTab ex
this.setLayout(new BorderLayout());
JToolBar toolBar = new JToolBar();
- Application app = Application.getInstance();
+ ActionManager actionManager = Application.getInstance().getActionManager();
toolBar
- .add(app
- .getAction(CreateRelationshipAction.getActionName())
+ .add(actionManager
+ .getAction(CreateRelationshipAction.class)
.buildButton());
- toolBar.add(app.getAction(ObjEntitySyncAction.getActionName()).buildButton());
+ toolBar.add(actionManager.getAction(ObjEntitySyncAction.class).buildButton());
toolBar.addSeparator();
-
+
Icon ico = ModelerUtil.buildIcon("icon-info.gif");
resolve = new JButton();
@@ -139,35 +138,40 @@ public class ObjEntityRelationshipTab ex
toolBar.addSeparator();
- toolBar.add(app.getAction(RemoveRelationshipAction.getActionName()).buildButton());
-
+ toolBar
+ .add(actionManager
+ .getAction(RemoveRelationshipAction.class)
+ .buildButton());
+
toolBar.addSeparator();
- toolBar.add(app.getAction(CutRelationshipAction.getActionName()).buildButton());
- toolBar.add(app.getAction(CopyRelationshipAction.getActionName()).buildButton());
- toolBar.add(app.getAction(PasteAction.getActionName()).buildButton());
-
+ toolBar.add(actionManager.getAction(CutRelationshipAction.class).buildButton());
+ toolBar.add(actionManager.getAction(CopyRelationshipAction.class).buildButton());
+ toolBar.add(actionManager.getAction(PasteAction.class).buildButton());
+
add(toolBar, BorderLayout.NORTH);
table = new CayenneTable();
table.setDefaultRenderer(String.class, new StringRenderer());
table.setDefaultRenderer(ObjEntity.class, new EntityRenderer());
-
- tablePreferences = new TableColumnPreferences(ObjRelationshipTableModel.class, "objEntity/relationshipTable");
-
+
+ tablePreferences = new TableColumnPreferences(
+ ObjRelationshipTableModel.class,
+ "objEntity/relationshipTable");
+
/**
* Create and install a popup
*/
resolveMenu = new JMenuItem("Database Mapping", ico);
-
+
JPopupMenu popup = new JPopupMenu();
popup.add(resolveMenu);
- popup.add(app.getAction(RemoveRelationshipAction.getActionName()).buildMenu());
-
+ popup.add(actionManager.getAction(RemoveRelationshipAction.class).buildMenu());
+
popup.addSeparator();
- popup.add(app.getAction(CutRelationshipAction.getActionName()).buildMenu());
- popup.add(app.getAction(CopyRelationshipAction.getActionName()).buildMenu());
- popup.add(app.getAction(PasteAction.getActionName()).buildMenu());
-
+ popup.add(actionManager.getAction(CutRelationshipAction.class).buildMenu());
+ popup.add(actionManager.getAction(CopyRelationshipAction.class).buildMenu());
+ popup.add(actionManager.getAction(PasteAction.class).buildMenu());
+
TablePopupHandler.install(table, popup);
add(PanelFactory.createTablePanel(table, null), BorderLayout.CENTER);
@@ -190,7 +194,7 @@ public class ObjEntityRelationshipTab ex
.getModel();
new ObjRelationshipInfoController(mediator, model.getRelationship(row))
.startup();
-
+
/**
* This is required for a table to be updated properly
*/
@@ -202,7 +206,7 @@ public class ObjEntityRelationshipTab ex
table.select(row);
}
};
-
+
resolve.addActionListener(resolver);
resolveMenu.addActionListener(resolver);
@@ -212,29 +216,32 @@ public class ObjEntityRelationshipTab ex
processExistingSelection(e);
}
});
-
- mediator.getApplication().getActionManager().setupCCP(table,
- CutRelationshipAction.getActionName(), CopyRelationshipAction.getActionName());
+
+ mediator.getApplication().getActionManager().setupCutCopyPaste(
+ table,
+ CutRelationshipAction.class,
+ CopyRelationshipAction.class);
}
/**
* Selects a specified relationship in the relationships table.
*/
public void selectRelationships(ObjRelationship[] rels) {
- ModelerUtil.updateActions(rels.length,
- RemoveRelationshipAction.getActionName(),
- CutRelationshipAction.getActionName(),
- CopyRelationshipAction.getActionName());
+ ModelerUtil.updateActions(
+ rels.length,
+ RemoveRelationshipAction.class,
+ CutRelationshipAction.class,
+ CopyRelationshipAction.class);
ObjRelationshipTableModel model = (ObjRelationshipTableModel) table.getModel();
List listAttrs = model.getObjectList();
int[] newSel = new int[rels.length];
-
+
for (int i = 0; i < rels.length; i++) {
newSel[i] = listAttrs.indexOf(rels[i]);
}
-
+
table.select(newSel);
}
@@ -246,14 +253,14 @@ public class ObjEntityRelationshipTab ex
if (table.getSelectedRow() >= 0) {
ObjRelationshipTableModel model = (ObjRelationshipTableModel) table
.getModel();
-
+
int[] sel = table.getSelectedRows();
rels = new ObjRelationship[sel.length];
-
+
for (int i = 0; i < sel.length; i++) {
rels[i] = model.getRelationship(sel[i]);
}
-
+
resolve.setEnabled(true);
// scroll table
@@ -262,11 +269,15 @@ public class ObjEntityRelationshipTab ex
else {
resolve.setEnabled(false);
}
-
+
resolveMenu.setEnabled(resolve.isEnabled());
- RelationshipDisplayEvent ev = new RelationshipDisplayEvent(this, rels, mediator
- .getCurrentObjEntity(), mediator.getCurrentDataMap(), (DataChannelDescriptor)mediator.getProject().getRootNode());
+ RelationshipDisplayEvent ev = new RelationshipDisplayEvent(
+ this,
+ rels,
+ mediator.getCurrentObjEntity(),
+ mediator.getCurrentDataMap(),
+ (DataChannelDescriptor) mediator.getProject().getRootNode());
mediator.fireObjRelationshipDisplayEvent(ev);
}
@@ -382,7 +393,7 @@ public class ObjEntityRelationshipTab ex
}
else
resolve.setEnabled(false);
-
+
resolveMenu.setEnabled(resolve.isEnabled());
}
}
@@ -392,17 +403,18 @@ public class ObjEntityRelationshipTab ex
table.setRowHeight(25);
table.setRowMargin(3);
- TableColumn col = table.getColumnModel().getColumn(ObjRelationshipTableModel.REL_TARGET);
+ TableColumn col = table.getColumnModel().getColumn(
+ ObjRelationshipTableModel.REL_TARGET);
JComboBox targetCombo = CayenneWidgetFactory.createComboBox(
createObjEntityComboModel(),
false);
- AutoCompletion.enable(targetCombo);
-
+ AutoCompletion.enable(targetCombo);
+
targetCombo.setRenderer(CellRenderers.entityListRendererWithIcons(entity
.getDataMap()));
targetCombo.setSelectedIndex(-1);
col.setCellEditor(CayenneWidgetFactory.createCellEditor(targetCombo));
-
+
col = table.getColumnModel().getColumn(ObjRelationshipTableModel.REL_DELETERULE);
JComboBox deleteRulesCombo = CayenneWidgetFactory.createComboBox(
deleteRules,
@@ -410,8 +422,14 @@ public class ObjEntityRelationshipTab ex
deleteRulesCombo.setEditable(false);
deleteRulesCombo.setSelectedIndex(0); // Default to the first value
col.setCellEditor(CayenneWidgetFactory.createCellEditor(deleteRulesCombo));
-
- tablePreferences.bind(table, null, null, null, ObjRelationshipTableModel.REL_NAME, true);
+
+ tablePreferences.bind(
+ table,
+ null,
+ null,
+ null,
+ ObjRelationshipTableModel.REL_NAME,
+ true);
}
class EntityRenderer extends StringRenderer {
@@ -435,7 +453,7 @@ public class ObjEntityRelationshipTab ex
hasFocus,
row,
column);
-
+
setIcon(CellRenderers.iconForObject(oldValue));
return this;
}
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityTab.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityTab.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityTab.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityTab.java Tue Aug 24 13:34:35 2010
@@ -47,6 +47,7 @@ import org.apache.cayenne.map.ObjEntity;
import org.apache.cayenne.map.event.EntityEvent;
import org.apache.cayenne.modeler.Application;
import org.apache.cayenne.modeler.ProjectController;
+import org.apache.cayenne.modeler.action.ActionManager;
import org.apache.cayenne.modeler.action.CreateAttributeAction;
import org.apache.cayenne.modeler.action.CreateRelationshipAction;
import org.apache.cayenne.modeler.action.ObjEntitySyncAction;
@@ -128,15 +129,16 @@ public class ObjEntityTab extends JPanel
this.setLayout(new BorderLayout());
JToolBar toolBar = new JToolBar();
- Application app = Application.getInstance();
- toolBar.add(app.getAction(ObjEntitySyncAction.getActionName()).buildButton());
- toolBar.add(app.getAction(CreateAttributeAction.getActionName()).buildButton());
+ ActionManager actionManager = Application.getInstance().getActionManager();
+
+ toolBar.add(actionManager.getAction(ObjEntitySyncAction.class).buildButton());
+ toolBar.add(actionManager.getAction(CreateAttributeAction.class).buildButton());
toolBar
- .add(app
- .getAction(CreateRelationshipAction.getActionName())
+ .add(actionManager
+ .getAction(CreateRelationshipAction.class)
.buildButton());
toolBar.addSeparator();
- toolBar.add(app.getAction(ShowGraphEntityAction.getActionName()).buildButton());
+ toolBar.add(actionManager.getAction(ShowGraphEntityAction.class).buildButton());
add(toolBar, BorderLayout.NORTH);
// create widgets
@@ -171,7 +173,7 @@ public class ObjEntityTab extends JPanel
dbEntityCombo = CayenneWidgetFactory.createComboBox();
superEntityCombo = CayenneWidgetFactory.createComboBox();
-
+
AutoCompletion.enable(dbEntityCombo);
AutoCompletion.enable(superEntityCombo);
@@ -264,25 +266,31 @@ public class ObjEntityTab extends JPanel
// Change super-entity
CayenneMapEntry superEntity = (CayenneMapEntry) superEntityCombo
.getSelectedItem();
- String name = (superEntity==null || superEntity == noInheritance) ? null : superEntity
- .getName();
+ String name = (superEntity == null || superEntity == noInheritance)
+ ? null
+ : superEntity.getName();
ObjEntity entity = mediator.getCurrentObjEntity();
if (!Util.nullSafeEquals(name, entity.getSuperEntityName())) {
List<ObjAttribute> duplicateAttributes = null;
- if(name!=null){
+ if (name != null) {
duplicateAttributes = getDuplicatedAttributes((ObjEntity) superEntity);
}
- if (duplicateAttributes!=null && duplicateAttributes.size() > 0) {
- DuplicatedAttributesDialog.showDialog(Application.getFrame(), duplicateAttributes, (ObjEntity) superEntity, entity);
- if (DuplicatedAttributesDialog.getResult().equals(DuplicatedAttributesDialog.CANCEL_RESULT)) {
+ if (duplicateAttributes != null && duplicateAttributes.size() > 0) {
+ DuplicatedAttributesDialog.showDialog(
+ Application.getFrame(),
+ duplicateAttributes,
+ (ObjEntity) superEntity,
+ entity);
+ if (DuplicatedAttributesDialog.getResult().equals(
+ DuplicatedAttributesDialog.CANCEL_RESULT)) {
superEntityCombo.setSelectedItem(entity.getSuperEntity());
superClassName.setText(entity.getSuperClassName());
return;
}
-
+
}
entity.setSuperEntityName(name);
@@ -295,7 +303,9 @@ public class ObjEntityTab extends JPanel
// fire both EntityEvent and EntityDisplayEvent;
// the later is to update attribute and relationship display
- DataChannelDescriptor domain = (DataChannelDescriptor)mediator.getProject().getRootNode();
+ DataChannelDescriptor domain = (DataChannelDescriptor) mediator
+ .getProject()
+ .getRootNode();
DataMap map = mediator.getCurrentDataMap();
mediator.fireObjEntityEvent(new EntityEvent(this, entity));
@@ -314,7 +324,9 @@ public class ObjEntityTab extends JPanel
// Jump to DbEntity of the current ObjEntity
DbEntity entity = mediator.getCurrentObjEntity().getDbEntity();
if (entity != null) {
- DataChannelDescriptor dom = (DataChannelDescriptor)mediator.getProject().getRootNode();
+ DataChannelDescriptor dom = (DataChannelDescriptor) mediator
+ .getProject()
+ .getRootNode();
mediator.fireDbEntityDisplayEvent(new EntityDisplayEvent(
this,
entity,
@@ -386,7 +398,7 @@ public class ObjEntityTab extends JPanel
}
}
});
-
+
isAbstract.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
@@ -413,7 +425,7 @@ public class ObjEntityTab extends JPanel
superClassName.setText(entity.getSuperClassName());
className.setText(entity.getClassName());
readOnly.setSelected(entity.isReadOnly());
-
+
isAbstract.setSelected(entity.isAbstract());
serverOnly.setSelected(entity.isServerOnly());
clientClassName.setText(entity.getClientClassName());
@@ -628,8 +640,11 @@ public class ObjEntityTab extends JPanel
public void processExistingSelection(EventObject e) {
- EntityDisplayEvent ede = new EntityDisplayEvent(this, mediator
- .getCurrentObjEntity(), mediator.getCurrentDataMap(), (DataChannelDescriptor)mediator.getProject().getRootNode());
+ EntityDisplayEvent ede = new EntityDisplayEvent(
+ this,
+ mediator.getCurrentObjEntity(),
+ mediator.getCurrentDataMap(),
+ (DataChannelDescriptor) mediator.getProject().getRootNode());
mediator.fireObjEntityDisplayEvent(ede);
}
@@ -641,18 +656,18 @@ public class ObjEntityTab extends JPanel
initFromModel(entity);
}
-
+
private List<ObjAttribute> getDuplicatedAttributes(ObjEntity superEntity) {
List<ObjAttribute> result = new LinkedList<ObjAttribute>();
ObjEntity entity = mediator.getCurrentObjEntity();
for (ObjAttribute attribute : entity.getAttributes()) {
- if(superEntity.getAttribute(attribute.getName()) != null) {
+ if (superEntity.getAttribute(attribute.getName()) != null) {
result.add(attribute);
}
}
-
+
return result;
}
Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityTabbedView.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityTabbedView.java?rev=988538&r1=988537&r2=988538&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityTabbedView.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ObjEntityTabbedView.java Tue Aug 24 13:34:35 2010
@@ -35,6 +35,7 @@ import org.apache.cayenne.map.ObjRelatio
import org.apache.cayenne.map.Relationship;
import org.apache.cayenne.modeler.Application;
import org.apache.cayenne.modeler.ProjectController;
+import org.apache.cayenne.modeler.action.ActionManager;
import org.apache.cayenne.modeler.action.RemoveAttributeAction;
import org.apache.cayenne.modeler.action.RemoveCallbackMethodAction;
import org.apache.cayenne.modeler.action.RemoveRelationshipAction;
@@ -119,10 +120,11 @@ public class ObjEntityTabbedView extends
/** Reset the remove buttons */
private void resetRemoveButtons() {
- Application app = Application.getInstance();
- app.getAction(RemoveAttributeAction.getActionName()).setEnabled(false);
- app.getAction(RemoveRelationshipAction.getActionName()).setEnabled(false);
- app.getAction(RemoveCallbackMethodAction.getActionName()).setEnabled(false);
+ ActionManager actionManager = Application.getInstance().getActionManager();
+
+ actionManager.getAction(RemoveAttributeAction.class).setEnabled(false);
+ actionManager.getAction(RemoveRelationshipAction.class).setEnabled(false);
+ actionManager.getAction(RemoveCallbackMethodAction.class).setEnabled(false);
}
public void currentObjEntityChanged(EntityDisplayEvent e) {