| // RAP [rh] Disabled MultiPageEditor as it is deprecated |
| ///******************************************************************************* |
| // * Copyright (c) 2000, 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 API and implementation |
| // *******************************************************************************/ |
| //package org.eclipse.ui.part; |
| // |
| //import java.util.ArrayList; |
| //import java.util.Iterator; |
| //import java.util.List; |
| // |
| //import org.eclipse.swt.SWT; |
| //import org.eclipse.swt.events.SelectionAdapter; |
| //import org.eclipse.swt.events.SelectionEvent; |
| //import org.eclipse.swt.widgets.Composite; |
| //import org.eclipse.swt.widgets.Control; |
| //import org.eclipse.swt.widgets.TabFolder; |
| // |
| ///** |
| // * Abstract superclass of all multi-page workbench editors. |
| // * <p> |
| // * This class should be subclassed by clients wishing to define new |
| // * multi-page editor. |
| // * </p> |
| // * <p> |
| // * Subclasses must implement the following methods: |
| // * <ul> |
| // * <li><code>createPartControl</code> - to create the view's controls </li> |
| // * <li><code>setFocus</code> - to accept focus</li> |
| // * <li><code>isDirty</code> - to decide whether a significant change has |
| // * occurred</li> |
| // * <li><code>doSave</code> - to save contents of editor</li> |
| // * <li><code>doSaveAs</code> - to save contents of editor</li> |
| // * </ul> |
| // * </p> |
| // * <p> |
| // * Subclasses may extend or reimplement the following methods as required: |
| // * <ul> |
| // * <li><code>setInitializationData</code> - extend to provide additional |
| // * initialization when editor extension is instantiated</li> |
| // * <li><code>init(IEditorSite,IEditorInput)</code> - extend to provide |
| // * additional initialization when editor is assigned its site</li> |
| // * <li><code>isSaveOnCloseNeeded</code> - override to control saving</li> |
| // * <li><code>isSaveAsAllowed</code> - override to control saving</li> |
| // * <li><code>gotoMarker</code> - reimplement to make selections based on |
| // * markers</li> |
| // * <li><code>dispose</code> - extend to provide additional cleanup</li> |
| // * <li><code>getAdapter</code> - reimplement to make their editor |
| // * adaptable</li> |
| // * </ul> |
| // * </p> |
| // * |
| // * @deprecated Use the class <code>MultiPageEditorPart</code> instead |
| // */ |
| //public abstract class MultiPageEditor extends EditorPart { |
| // private List syncVector; |
| // |
| // private TabFolder tabFolder; |
| // |
| // /** |
| // * Creates a new multi-page editor. |
| // * |
| // * @deprecated Use the class <code>MultiPageEditorPart</code> instead |
| // */ |
| // public MultiPageEditor() { |
| // super(); |
| // } |
| // |
| // /** |
| // * Adds a synchronized pagebook to this editor. Once added, the |
| // * visible page of the pagebook and the visible page of the editor |
| // * will be synchronized. |
| // * |
| // * @param pageBook the pagebook to add |
| // */ |
| // protected void addSyncroPageBook(PageBook pageBook) { |
| // // Add the page. |
| // if (syncVector == null) { |
| // syncVector = new ArrayList(1); |
| // } |
| // syncVector.add(pageBook); |
| // |
| // // Set the visible page. |
| // syncPageBook(pageBook); |
| // } |
| // |
| // /** |
| // * The <code>MultiPageEditor</code> implementation of this <code>IWorkbenchPart</code> |
| // * method creates a <code>TabFolder</code> control. |
| // */ |
| // public void createPartControl(Composite parent) { |
| // tabFolder = new TabFolder(parent, SWT.NONE); |
| // tabFolder.addSelectionListener(new SelectionAdapter() { |
| // public void widgetSelected(SelectionEvent e) { |
| // sync(); |
| // } |
| // }); |
| // } |
| // |
| // /** |
| // * Returns this editor's workbook. |
| // * |
| // * @return the editor workbook |
| // */ |
| // protected TabFolder getFolder() { |
| // return tabFolder; |
| // } |
| // |
| // /** |
| // * Indicates that a page change has occurred. Updates the sync vector. |
| // */ |
| // protected void onPageChange() { |
| // if (syncVector != null) { |
| // Iterator itr = syncVector.iterator(); |
| // while (itr.hasNext()) { |
| // PageBook pageBook = (PageBook) itr.next(); |
| // syncPageBook(pageBook); |
| // } |
| // } |
| // } |
| // |
| // /** |
| // * Removes a synchronized pagebook from this editor. |
| // * |
| // * @param pageBook the pagebook to remove |
| // * @see #addSyncroPageBook(PageBook) |
| // */ |
| // protected void removeSyncroPageBook(PageBook pageBook) { |
| // if (syncVector != null) { |
| // syncVector.remove(pageBook); |
| // } |
| // pageBook.dispose(); |
| // } |
| // |
| // /** |
| // * Synchronizes each registered pagebook with the editor page. |
| // */ |
| // protected void sync() { |
| // if (syncVector != null) { |
| // Iterator itr = syncVector.iterator(); |
| // while (itr.hasNext()) { |
| // PageBook pageBook = (PageBook) itr.next(); |
| // syncPageBook(pageBook); |
| // } |
| // } |
| // } |
| // |
| // /** |
| // * Sets the visible page of the given pagebook to be the same as |
| // * the visible page of this editor. |
| // * |
| // * @param pageBook a pagebook to synchronize |
| // */ |
| // protected void syncPageBook(PageBook pageBook) { |
| // int pos = tabFolder.getSelectionIndex(); |
| // Control children[] = pageBook.getChildren(); |
| // int size = children.length; |
| // if (pos < size) { |
| // pageBook.showPage(children[pos]); |
| // } |
| // } |
| //} |