blob: 9e5c9e8a68f4432df2d2fa8a9347c1c1b326aec8 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2003, 2015 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.ui.commands;
import java.util.Set;
import org.eclipse.ui.internal.util.Util;
/**
* An instance of this class describes changes to an instance of
* <code>ICommandManager</code>.
* <p>
* This class is not intended to be extended by clients.
* </p>
*
* @since 3.0
* @see ICommandManagerListener#commandManagerChanged(CommandManagerEvent)
* @see org.eclipse.core.commands.CommandManagerEvent
* @deprecated Please use the "org.eclipse.core.commands" plug-in instead. This
* API is scheduled for deletion, see Bug 431177 for details
* @noreference This class is scheduled for deletion.
*/
@Deprecated
@SuppressWarnings("all")
public final class CommandManagerEvent {
/**
* Whether the set of active contexts has changed.
*/
private final boolean activeContextIdsChanged;
/**
* Whether the active key configuration has changed.
*/
private final boolean activeKeyConfigurationIdChanged;
/**
* Whether the locale has changed.
*/
private final boolean activeLocaleChanged;
/**
* Whether the platform has changed.
*/
private final boolean activePlatformChanged;
/**
* Whether the command manager has changed.
*/
private final ICommandManager commandManager;
/**
* Whether the list of defined categories has changed.
*/
private final boolean definedCategoryIdsChanged;
/**
* Whether the list of defined commands has changed.
*/
private final boolean definedCommandIdsChanged;
/**
* Whether the list of defined key configurations has changed.
*/
private final boolean definedKeyConfigurationIdsChanged;
/**
* The set of the defined categories before the change occurred. This is a set
* of strings (category identifiers).
*/
private final Set previouslyDefinedCategoryIds;
/**
* The set of the defined commands before the change occurred. This is a set of
* strings (command identifiers).
*/
private final Set previouslyDefinedCommandIds;
/**
* The set of the defined key configurations before the change occurred. This is
* a set of strings (key configuration identifiers).
*/
private final Set previouslyDefinedKeyConfigurationIds;
/**
* Creates a new instance of this class.
*
* @param commandManager the instance of the interface
* that changed.
* @param activeContextIdsChanged true, iff the
* activeContextIdsChanged property
* changed.
* @param activeKeyConfigurationIdChanged true, iff the
* activeKeyConfigurationIdChanged
* property changed.
* @param activeLocaleChanged true, iff the activeLocaleChanged
* property changed.
* @param activePlatformChanged true, iff the
* activePlatformChanged property
* changed.
* @param definedCategoryIdsChanged true, iff the
* definedCategoryIdsChanged
* property changed.
* @param definedCommandIdsChanged true, iff the
* definedCommandIdsChanged property
* changed.
* @param definedKeyConfigurationIdsChanged true, iff the
* definedKeyConfigurationIdsChanged
* property changed.
* @param previouslyDefinedCategoryIds the set of identifiers to
* previously defined categories.
* This set may be empty. If this
* set is not empty, it must only
* contain instances of
* <code>String</code>. This set
* must be <code>null</code> if
* definedCategoryIdsChanged is
* <code>false</code> and must not
* be null if
* definedCategoryIdsChanged is
* <code>true</code>.
* @param previouslyDefinedCommandIds the set of identifiers to
* previously defined commands. This
* set may be empty. If this set is
* not empty, it must only contain
* instances of <code>String</code>.
* This set must be
* <code>null</code> if
* definedCommandIdsChanged is
* <code>false</code> and must not
* be null if
* definedContextIdsChanged is
* <code>true</code>.
* @param previouslyDefinedKeyConfigurationIds the set of identifiers to
* previously defined key
* configurations. This set may be
* empty. If this set is not empty,
* it must only contain instances of
* <code>String</code>. This set
* must be <code>null</code> if
* definedKeyConfigurationIdsChanged
* is <code>false</code> and must
* not be null if
* definedKeyConfigurationIdsChanged
* is <code>true</code>.
*/
public CommandManagerEvent(ICommandManager commandManager, boolean activeContextIdsChanged,
boolean activeKeyConfigurationIdChanged, boolean activeLocaleChanged, boolean activePlatformChanged,
boolean definedCategoryIdsChanged, boolean definedCommandIdsChanged,
boolean definedKeyConfigurationIdsChanged, Set previouslyDefinedCategoryIds,
Set previouslyDefinedCommandIds, Set previouslyDefinedKeyConfigurationIds) {
if (commandManager == null) {
throw new NullPointerException();
}
if (!definedCategoryIdsChanged && previouslyDefinedCategoryIds != null) {
throw new IllegalArgumentException();
}
if (!definedCommandIdsChanged && previouslyDefinedCommandIds != null) {
throw new IllegalArgumentException();
}
if (!definedKeyConfigurationIdsChanged && previouslyDefinedKeyConfigurationIds != null) {
throw new IllegalArgumentException();
}
if (definedCategoryIdsChanged) {
this.previouslyDefinedCategoryIds = Util.safeCopy(previouslyDefinedCategoryIds, String.class);
} else {
this.previouslyDefinedCategoryIds = null;
}
if (definedCommandIdsChanged) {
this.previouslyDefinedCommandIds = Util.safeCopy(previouslyDefinedCommandIds, String.class);
} else {
this.previouslyDefinedCommandIds = null;
}
if (definedKeyConfigurationIdsChanged) {
this.previouslyDefinedKeyConfigurationIds = Util.safeCopy(previouslyDefinedKeyConfigurationIds,
String.class);
} else {
this.previouslyDefinedKeyConfigurationIds = null;
}
this.commandManager = commandManager;
this.activeContextIdsChanged = activeContextIdsChanged;
this.activeKeyConfigurationIdChanged = activeKeyConfigurationIdChanged;
this.activeLocaleChanged = activeLocaleChanged;
this.activePlatformChanged = activePlatformChanged;
this.definedCategoryIdsChanged = definedCategoryIdsChanged;
this.definedCommandIdsChanged = definedCommandIdsChanged;
this.definedKeyConfigurationIdsChanged = definedKeyConfigurationIdsChanged;
}
/**
* Returns the instance of the interface that changed.
*
* @return the instance of the interface that changed. Guaranteed not to be
* <code>null</code>.
*/
@Deprecated
public ICommandManager getCommandManager() {
return commandManager;
}
/**
* Returns the set of identifiers to previously defined categories.
*
* @return the set of identifiers to previously defined categories. This set may
* be empty. If this set is not empty, it is guaranteed to only contain
* instances of <code>String</code>. This set is guaranteed to be
* <code>null</code> if haveDefinedCategoryIdsChanged() is
* <code>false</code> and is guaranteed to not be null if
* haveDefinedCategoryIdsChanged() is <code>true</code>.
*/
@Deprecated
public Set getPreviouslyDefinedCategoryIds() {
return previouslyDefinedCategoryIds;
}
/**
* Returns the set of identifiers to previously defined commands.
*
* @return the set of identifiers to previously defined commands. This set may
* be empty. If this set is not empty, it is guaranteed to only contain
* instances of <code>String</code>. This set is guaranteed to be
* <code>null</code> if haveDefinedCommandIdsChanged() is
* <code>false</code> and is guaranteed to not be null if
* haveDefinedCommandIdsChanged() is <code>true</code>.
*/
@Deprecated
public Set getPreviouslyDefinedCommandIds() {
return previouslyDefinedCommandIds;
}
/**
* Returns the set of identifiers to previously defined key conigurations.
*
* @return the set of identifiers to previously defined key configurations. This
* set may be empty. If this set is not empty, it is guaranteed to only
* contain instances of <code>String</code>. This set is guaranteed to
* be <code>null</code> if haveDefinedKeyConfigurationIdsChanged() is
* <code>false</code> and is guaranteed to not be null if
* haveDefinedKeyConfigurationIdsChanged() is <code>true</code>.
*/
@Deprecated
public Set getPreviouslyDefinedKeyConfigurationIds() {
return previouslyDefinedKeyConfigurationIds;
}
/**
* Returns whether or not the activeKeyConfigurationId property changed.
*
* @return true, iff the activeKeyConfigurationId property changed.
*/
@Deprecated
public boolean hasActiveKeyConfigurationIdChanged() {
return activeKeyConfigurationIdChanged;
}
/**
* Returns whether or not the activeLocale property changed.
*
* @return true, iff the activeLocale property changed.
*/
@Deprecated
public boolean hasActiveLocaleChanged() {
return activeLocaleChanged;
}
/**
* Returns whether or not the activePlatform property changed.
*
* @return true, iff the activePlatform property changed.
*/
@Deprecated
public boolean hasActivePlatformChanged() {
return activePlatformChanged;
}
/**
* Returns whether or not the activeContextIds property changed.
*
* @return true, iff the activeContextIds property changed.
*/
@Deprecated
public boolean haveActiveContextIdsChanged() {
return activeContextIdsChanged;
}
/**
* Returns whether or not the definedCategoryIds property changed.
*
* @return true, iff the definedCategoryIds property changed.
*/
@Deprecated
public boolean haveDefinedCategoryIdsChanged() {
return definedCategoryIdsChanged;
}
/**
* Returns whether or not the definedCommandIds property changed.
*
* @return true, iff the definedCommandIds property changed.
*/
@Deprecated
public boolean haveDefinedCommandIdsChanged() {
return definedCommandIdsChanged;
}
/**
* Returns whether or not the definedKeyConfigurationIds property changed.
*
* @return true, iff the definedKeyConfigurationIds property changed.
*/
@Deprecated
public boolean haveDefinedKeyConfigurationIdsChanged() {
return definedKeyConfigurationIdsChanged;
}
}