Mercurial > projects > dwt2
comparison org.eclipse.jface.text/src/org/eclipse/jface/internal/text/InternalAccessor.d @ 12:bc29606a740c
Added dwt-addons in original directory structure of eclipse.org
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Sat, 14 Mar 2009 18:23:29 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
11:43904fec5dca | 12:bc29606a740c |
---|---|
1 /******************************************************************************* | |
2 * Copyright (c) 2008 IBM Corporation and others. | |
3 * All rights reserved. This program and the accompanying materials | |
4 * are made available under the terms of the Eclipse Public License v1.0 | |
5 * which accompanies this distribution, and is available at | |
6 * http://www.eclipse.org/legal/epl-v10.html | |
7 * | |
8 * Contributors: | |
9 * IBM Corporation - initial API and implementation | |
10 * Port to the D programming language: | |
11 * Frank Benoit <benoit@tionex.de> | |
12 *******************************************************************************/ | |
13 module org.eclipse.jface.internal.text.InternalAccessor; | |
14 | |
15 import org.eclipse.jface.internal.text.NonDeletingPositionUpdater; // packageimport | |
16 import org.eclipse.jface.internal.text.StickyHoverManager; // packageimport | |
17 import org.eclipse.jface.internal.text.InformationControlReplacer; // packageimport | |
18 import org.eclipse.jface.internal.text.TableOwnerDrawSupport; // packageimport | |
19 import org.eclipse.jface.internal.text.DelayedInputChangeListener; // packageimport | |
20 | |
21 | |
22 import java.lang.all; | |
23 import java.util.Set; | |
24 | |
25 | |
26 | |
27 import org.eclipse.swt.graphics.Rectangle; | |
28 import org.eclipse.jface.text.AbstractInformationControlManager; | |
29 import org.eclipse.jface.text.IInformationControl; | |
30 import org.eclipse.jface.text.IInformationControlExtension3; | |
31 import org.eclipse.jface.text.ITextViewerExtension8; | |
32 import org.eclipse.jface.text.ITextViewerExtension8; | |
33 | |
34 | |
35 /** | |
36 * An internal class that gives access to internal methods of {@link | |
37 * AbstractInformationControlManager} and subclasses. | |
38 * | |
39 * @since 3.4 | |
40 */ | |
41 public abstract class InternalAccessor { | |
42 | |
43 /** | |
44 * Returns the current information control, or <code>null</code> if none. | |
45 * | |
46 * @return the current information control, or <code>null</code> if none | |
47 */ | |
48 public abstract IInformationControl getCurrentInformationControl(); | |
49 | |
50 /** | |
51 * Sets the information control replacer for this manager and disposes the | |
52 * old one if set. | |
53 * | |
54 * @param replacer the information control replacer for this manager, or | |
55 * <code>null</code> if no information control replacing should | |
56 * take place | |
57 */ | |
58 public abstract void setInformationControlReplacer(InformationControlReplacer replacer); | |
59 | |
60 /** | |
61 * Returns the current information control replacer or <code>null</code> if none has been installed. | |
62 * | |
63 * @return the current information control replacer or <code>null</code> if none has been installed | |
64 */ | |
65 public abstract InformationControlReplacer getInformationControlReplacer(); | |
66 | |
67 /** | |
68 * Tests whether the given information control is replaceable. | |
69 * | |
70 * @param iControl information control or <code>null</code> if none | |
71 * @return <code>true</code> if information control is replaceable, <code>false</code> otherwise | |
72 */ | |
73 public abstract bool canReplace(IInformationControl iControl); | |
74 | |
75 /** | |
76 * Tells whether this manager's information control is currently being replaced. | |
77 * | |
78 * @return <code>true</code> if a replace is in progress | |
79 */ | |
80 public abstract bool isReplaceInProgress(); | |
81 | |
82 /** | |
83 * Crops the given bounds such that they lie completely on the closest monitor. | |
84 * | |
85 * @param bounds shell bounds to crop | |
86 */ | |
87 public abstract void cropToClosestMonitor(Rectangle bounds); | |
88 | |
89 /** | |
90 * Sets the hover enrich mode. Only applicable when an information | |
91 * control replacer has been set with | |
92 * {@link #setInformationControlReplacer(InformationControlReplacer)} . | |
93 * | |
94 * @param mode the enrich mode | |
95 * @see ITextViewerExtension8#setHoverEnrichMode(org.eclipse.jface.text.ITextViewerExtension8.EnrichMode) | |
96 */ | |
97 public abstract void setHoverEnrichMode(ITextViewerExtension8_EnrichMode mode); | |
98 | |
99 /** | |
100 * Indicates whether the mouse cursor is allowed to leave the subject area without closing the hover. | |
101 * | |
102 * @return whether the mouse cursor is allowed to leave the subject area without closing the hover | |
103 */ | |
104 public abstract bool getAllowMouseExit(); | |
105 | |
106 /** | |
107 * Replaces this manager's information control as defined by | |
108 * the information control replacer. | |
109 * <strong>Must only be called when the information control is instanceof {@link IInformationControlExtension3}!</strong> | |
110 * | |
111 * @param takeFocus <code>true</code> iff the replacing information control should take focus | |
112 */ | |
113 public abstract void replaceInformationControl(bool takeFocus); | |
114 | |
115 } |