| //------------------------------------------------------------------------------ |
| // Copyright (c) 2005, 2006 IBM Corporation and others. |
| // All rights reserved. This program and the accompanying materials |
| // are made available under the terms of the Eclipse Public License v1.0 |
| // which accompanies this distribution, and is available at |
| // http://www.eclipse.org/legal/epl-v10.html |
| // |
| // Contributors: |
| // IBM Corporation - initial implementation |
| //------------------------------------------------------------------------------ |
| package org.eclipse.epf.library.edit.process; |
| |
| import java.util.Collection; |
| import java.util.List; |
| |
| import org.eclipse.epf.library.edit.IStatefulItemProvider; |
| import org.eclipse.epf.library.edit.command.IActionManager; |
| import org.eclipse.epf.library.edit.command.IResourceAwareCommand; |
| import org.eclipse.epf.library.edit.util.PredecessorList; |
| |
| |
| /** |
| * This is the base interface of all item providers for breakdown element used |
| * by the Process Editor. It defines the constants for column names and methods |
| * to support row index, roll-up view, getting/setting breakdown element's |
| * attributes, predecessor list... |
| * |
| * @author Phong Nguyen Le |
| * @since 1.0 |
| */ |
| public interface IBSItemProvider extends //ILibraryItemProvider, |
| IStatefulItemProvider { |
| |
| /** Column ID constants */ |
| public static final String COL_NAME = "name"; //$NON-NLS-1$ |
| |
| public static final String COL_PREFIX = "prefix"; //$NON-NLS-1$ |
| |
| public static final String COL_ID = "id"; //$NON-NLS-1$ |
| |
| public static final String COL_PREDECESSORS = "predecessors"; //$NON-NLS-1$ |
| |
| public static final String COL_IS_REPEATABLE = "is_repeatable"; //$NON-NLS-1$ |
| |
| public static final String COL_IS_ONGOING = "is_ongoing"; //$NON-NLS-1$ |
| |
| public static final String COL_IS_EVENT_DRIVEN = "is_event_driven"; //$NON-NLS-1$ |
| |
| public static final String COL_ENTRY_STATE = "entry_state"; //$NON-NLS-1$ |
| |
| public static final String COL_EXIT_STATE = "exit_state"; //$NON-NLS-1$ |
| |
| public static final String COL_TEAMS = "teams"; //$NON-NLS-1$ |
| |
| public static final String COL_TYPE = "type"; //$NON-NLS-1$ |
| |
| public static final String COL_MODEL_INFO = "model_info"; //$NON-NLS-1$ |
| |
| public static final String COL_PRESENTATION_NAME = "presentation_name"; //$NON-NLS-1$ |
| |
| public static final String COL_DELIVERABLE = "deliverable"; //$NON-NLS-1$ |
| |
| public static final String COL_IS_OPTIONAL = "is_optional"; //$NON-NLS-1$ |
| |
| public static final String COL_IS_PLANNED = "is_planned"; //$NON-NLS-1$ |
| |
| public static final String COL_HAS_MULTIPLE_OCCURRENCES = "has_multiple_occurrences"; //$NON-NLS-1$ |
| |
| public static final String[] COLUMNS = { COL_NAME, COL_PREFIX, COL_ID, |
| COL_PREDECESSORS, COL_IS_REPEATABLE, COL_IS_ONGOING, |
| COL_IS_EVENT_DRIVEN, COL_ENTRY_STATE, COL_EXIT_STATE, COL_TEAMS, |
| COL_TYPE, COL_MODEL_INFO, COL_PRESENTATION_NAME, COL_DELIVERABLE }; |
| |
| int getId(); |
| |
| void setId(int id); |
| |
| // IBSItemProvider getItemProvider(EObject eObj); |
| |
| void setParent(Object obj); |
| |
| Object getTopItem(); |
| |
| void setTopItem(Object top); |
| |
| boolean isRolledUp(); |
| |
| void setRolledUp(boolean b); |
| |
| boolean isFirstElement(Object obj); |
| |
| boolean isLastElement(Object obj); |
| |
| // List getFilteredBreakdownElements(Object activityObj, Object obj); |
| |
| void moveUp(Object obj, IActionManager actionMgr); |
| |
| void moveDown(Object obj, IActionManager actionMgr); |
| |
| Collection getEClasses(); |
| |
| // GraphicalData getGraphicalData(); |
| |
| // void setGraphicalData(GraphicalData data); |
| |
| /** |
| * Gets the attribute of the given object as a string. |
| * |
| * @param object |
| * @param property |
| * one of the column ID constants COL_XXX |
| * @return String value of the attribute |
| */ |
| String getAttribute(Object object, String property); |
| |
| /** |
| * Sets the attribute of the given object |
| * |
| * @param object |
| * @param property |
| * one of the column ID constants COL_XXX |
| * @param textValue |
| */ |
| void setAttribute(Object object, String property, String textValue); |
| |
| List getListeners(); |
| |
| PredecessorList getPredecessors(); |
| |
| Boolean isExpanded(); |
| |
| void setExpanded(Boolean b); |
| |
| IResourceAwareCommand createDropCommand(Object owner, List dropElements); |
| |
| } |