01: /*******************************************************************************
02: * Copyright (c) 2006, 2007 IBM Corporation and others.
03: * All rights reserved. This program and the accompanying materials
04: * are made available under the terms of the Eclipse Public License v1.0
05: * which accompanies this distribution, and is available at
06: * http://www.eclipse.org/legal/epl-v10.html
07: *
08: * Contributors:
09: * Chris Gross (schtoo@schtoo.com) - initial API and implementation for bug 16179
10: * IBM Corporation - revisions to initial contribution
11: *******************************************************************************/package org.eclipse.jface.dialogs;
12:
13: import java.util.EventObject;
14:
15: import org.eclipse.core.runtime.Assert;
16:
17: /**
18: * Event object describing an <code>IDialogPage</code> in the midst of changing.
19: *
20: * @see IPageChangingListener
21: * @since 3.3
22: */
23: public class PageChangingEvent extends EventObject {
24:
25: private static final long serialVersionUID = 1L;
26:
27: private Object currentPage;
28:
29: private Object targetPage;
30:
31: /**
32: * Public field that dictates if the page change will successfully change.
33: *
34: * Set this field to <code>false</code> to prevent the page from changing.
35: *
36: * Default value is <code>true</code>.
37: */
38: public boolean doit = true;
39:
40: /**
41: * Creates a new event for the given source, selected (current) page and
42: * direction.
43: *
44: * @param source
45: * the page changing provider (the source of this event)
46: * @param currentPage
47: * the current page. In the JFace provided dialogs this will be
48: * an <code>IDialogPage</code>.
49: * @param targetPage
50: * the target page. In the JFace provided dialogs this will be an
51: * <code>IDialogPage</code>.
52: */
53: public PageChangingEvent(Object source, Object currentPage,
54: Object targetPage) {
55: super (source);
56: Assert.isNotNull(currentPage);
57: Assert.isNotNull(targetPage);
58: this .currentPage = currentPage;
59: this .targetPage = targetPage;
60: }
61:
62: /**
63: * Returns the current page from which the page change originates.
64: *
65: * @return the current page. In dialogs implemented by JFace,
66: * this will be an <code>IDialogPage</code>.
67: */
68: public Object getCurrentPage() {
69: return currentPage;
70: }
71:
72: /**
73: * Returns the target page to change to.
74: *
75: * @return the target page. In dialogs implemented by JFace,
76: * this will be an <code>IDialogPage</code>.
77: */
78: public Object getTargetPage() {
79: return targetPage;
80: }
81:
82: }
|