Bug 299152 [Forms] FormEditor isDirty() should consider FormEditor pages
Build Identifier: M20090917-0800 FormEditor's isDirty() method checks all of the IFormPage children and returns dirty if any of them are dirty. Since a FormEditor can contain other FormEditors as pages the isDirty method should return dirty if a child FormEditor is dirty. Reproducible: Always
bundles/org.eclipse.ui.forms/src/org/eclipse/ui/forms/editor/FormEditor.java
* @see #getActivePage
	 * @return the currently selected page or -1 if no page is currently
	 *         selected
	 */
	protected int getCurrentPage() {
		return currentPage;
	}
	/**
	 * @see MultiPageEditorPart#pageChange(int)
	 */
	protected void pageChange(int newPageIndex) {
		
		int oldPageIndex = getCurrentPage();
		if (oldPageIndex != -1 && pages.size() > oldPageIndex
				&& pages.get(oldPageIndex) instanceof IFormPage
				&& oldPageIndex != newPageIndex) {
			
			IFormPage oldFormPage = (IFormPage) pages.get(oldPageIndex);
			if (oldFormPage.canLeaveThePage() == false) {
				setActivePage(oldPageIndex);
				return;
			}
		}
		
		Object page = pages.get(newPageIndex);
		if (page instanceof IFormPage) {
			IFormPage fpage = (IFormPage) page;
			if (fpage.getPartControl() == null) {
				fpage.createPartControl(getContainer());
				setControl(newPageIndex, fpage.getPartControl());