changeset 133:7d818bd32d63

Fix ctors to this with gvim regexp
author Frank Benoit <benoit@tionex.de>
date Sun, 24 Aug 2008 01:29:22 +0200
parents 77bd3bb3d7b8
children 51e6e63f930e
files dwtx/jface/internal/text/DelayedInputChangeListener.d dwtx/jface/internal/text/InformationControlReplacer.d dwtx/jface/internal/text/NonDeletingPositionUpdater.d dwtx/jface/internal/text/StickyHoverManager.d dwtx/jface/internal/text/TableOwnerDrawSupport.d dwtx/jface/internal/text/html/BrowserInformationControl.d dwtx/jface/internal/text/html/BrowserInformationControlInput.d dwtx/jface/internal/text/html/BrowserInput.d dwtx/jface/internal/text/html/HTML2TextReader.d dwtx/jface/internal/text/html/HTMLMessages.d dwtx/jface/internal/text/html/HTMLPrinter.d dwtx/jface/internal/text/html/HTMLTextPresenter.d dwtx/jface/internal/text/html/SubstitutionTextReader.d dwtx/jface/internal/text/link/contentassist/AdditionalInfoController2.d dwtx/jface/internal/text/link/contentassist/CompletionProposalPopup2.d dwtx/jface/internal/text/link/contentassist/ContentAssistMessages.d dwtx/jface/internal/text/link/contentassist/ContentAssistant2.d dwtx/jface/internal/text/link/contentassist/ContextInformationPopup2.d dwtx/jface/internal/text/link/contentassist/LineBreakingReader.d dwtx/jface/internal/text/revisions/ChangeRegion.d dwtx/jface/internal/text/revisions/Colors.d dwtx/jface/internal/text/revisions/Hunk.d dwtx/jface/internal/text/revisions/HunkComputer.d dwtx/jface/internal/text/revisions/LineIndexOutOfBoundsException.d dwtx/jface/internal/text/revisions/Range.d dwtx/jface/internal/text/revisions/RevisionPainter.d dwtx/jface/internal/text/revisions/RevisionSelectionProvider.d dwtx/jface/internal/text/source/DiffPainter.d dwtx/jface/text/AbstractDocument.d dwtx/jface/text/AbstractHoverInformationControlManager.d dwtx/jface/text/AbstractInformationControl.d dwtx/jface/text/AbstractInformationControlManager.d dwtx/jface/text/AbstractLineTracker.d dwtx/jface/text/Assert.d dwtx/jface/text/BadLocationException.d dwtx/jface/text/BadPartitioningException.d dwtx/jface/text/BadPositionCategoryException.d dwtx/jface/text/ConfigurableLineTracker.d dwtx/jface/text/CopyOnWriteTextStore.d dwtx/jface/text/CursorLinePainter.d dwtx/jface/text/DefaultAutoIndentStrategy.d dwtx/jface/text/DefaultDocumentAdapter.d dwtx/jface/text/DefaultIndentLineAutoEditStrategy.d dwtx/jface/text/DefaultInformationControl.d dwtx/jface/text/DefaultLineTracker.d dwtx/jface/text/DefaultPositionUpdater.d dwtx/jface/text/DefaultTextDoubleClickStrategy.d dwtx/jface/text/DefaultTextHover.d dwtx/jface/text/DefaultUndoManager.d dwtx/jface/text/Document.d dwtx/jface/text/DocumentClone.d dwtx/jface/text/DocumentCommand.d dwtx/jface/text/DocumentEvent.d dwtx/jface/text/DocumentPartitioningChangedEvent.d dwtx/jface/text/DocumentRewriteSession.d dwtx/jface/text/DocumentRewriteSessionEvent.d dwtx/jface/text/DocumentRewriteSessionType.d dwtx/jface/text/FindReplaceDocumentAdapter.d dwtx/jface/text/FindReplaceDocumentAdapterContentProposalProvider.d dwtx/jface/text/GapTextStore.d dwtx/jface/text/ITextViewerExtension8.d dwtx/jface/text/JFaceTextMessages.d dwtx/jface/text/JFaceTextUtil.d dwtx/jface/text/Line.d dwtx/jface/text/ListLineTracker.d dwtx/jface/text/MarginPainter.d dwtx/jface/text/MarkSelection.d dwtx/jface/text/PaintManager.d dwtx/jface/text/Position.d dwtx/jface/text/PropagatingFontFieldEditor.d dwtx/jface/text/RegExMessages.d dwtx/jface/text/Region.d dwtx/jface/text/RewriteSessionEditProcessor.d dwtx/jface/text/SequentialRewriteTextStore.d dwtx/jface/text/SlaveDocumentEvent.d dwtx/jface/text/TextAttribute.d dwtx/jface/text/TextEvent.d dwtx/jface/text/TextMessages.d dwtx/jface/text/TextPresentation.d dwtx/jface/text/TextSelection.d dwtx/jface/text/TextViewer.d dwtx/jface/text/TextViewerHoverManager.d dwtx/jface/text/TextViewerUndoManager.d dwtx/jface/text/TreeLineTracker.d dwtx/jface/text/TypedPosition.d dwtx/jface/text/TypedRegion.d dwtx/jface/text/WhitespaceCharacterPainter.d dwtx/jface/text/contentassist/AdditionalInfoController.d dwtx/jface/text/contentassist/CompletionProposal.d dwtx/jface/text/contentassist/CompletionProposalPopup.d dwtx/jface/text/contentassist/ContentAssistEvent.d dwtx/jface/text/contentassist/ContentAssistSubjectControlAdapter.d dwtx/jface/text/contentassist/ContentAssistant.d dwtx/jface/text/contentassist/ContextInformation.d dwtx/jface/text/contentassist/ContextInformationPopup.d dwtx/jface/text/contentassist/ContextInformationValidator.d dwtx/jface/text/contentassist/JFaceTextMessages.d dwtx/jface/text/formatter/ContentFormatter.d dwtx/jface/text/formatter/FormattingContextProperties.d dwtx/jface/text/formatter/MultiPassContentFormatter.d dwtx/jface/text/hyperlink/DefaultHyperlinkPresenter.d dwtx/jface/text/hyperlink/HyperlinkManager.d dwtx/jface/text/hyperlink/HyperlinkMessages.d dwtx/jface/text/hyperlink/MultipleHyperlinkPresenter.d dwtx/jface/text/hyperlink/URLHyperlink.d dwtx/jface/text/hyperlink/URLHyperlinkDetector.d dwtx/jface/text/information/InformationPresenter.d dwtx/jface/text/link/InclusivePositionUpdater.d dwtx/jface/text/link/LinkedModeModel.d dwtx/jface/text/link/LinkedModeUI.d dwtx/jface/text/link/LinkedPosition.d dwtx/jface/text/link/ProposalPosition.d dwtx/jface/text/link/TabStopIterator.d dwtx/jface/text/presentation/PresentationReconciler.d dwtx/jface/text/projection/ChildDocument.d dwtx/jface/text/projection/Fragment.d dwtx/jface/text/projection/FragmentUpdater.d dwtx/jface/text/projection/ProjectionDocument.d dwtx/jface/text/projection/ProjectionDocumentEvent.d dwtx/jface/text/projection/ProjectionMapping.d dwtx/jface/text/projection/ProjectionTextStore.d dwtx/jface/text/projection/Segment.d dwtx/jface/text/projection/SegmentUpdater.d dwtx/jface/text/quickassist/QuickAssistAssistant.d dwtx/jface/text/reconciler/AbstractReconcileStep.d dwtx/jface/text/reconciler/AbstractReconciler.d dwtx/jface/text/reconciler/DirtyRegion.d dwtx/jface/text/reconciler/DirtyRegionQueue.d dwtx/jface/text/reconciler/MonoReconciler.d dwtx/jface/text/reconciler/Reconciler.d dwtx/jface/text/revisions/IRevisionRulerColumnExtension.d dwtx/jface/text/revisions/Revision.d dwtx/jface/text/revisions/RevisionEvent.d dwtx/jface/text/revisions/RevisionInformation.d dwtx/jface/text/revisions/RevisionRange.d dwtx/jface/text/rules/BufferedRuleBasedScanner.d dwtx/jface/text/rules/DefaultDamagerRepairer.d dwtx/jface/text/rules/DefaultPartitioner.d dwtx/jface/text/rules/EndOfLineRule.d dwtx/jface/text/rules/FastPartitioner.d dwtx/jface/text/rules/MultiLineRule.d dwtx/jface/text/rules/NumberRule.d dwtx/jface/text/rules/PatternRule.d dwtx/jface/text/rules/RuleBasedDamagerRepairer.d dwtx/jface/text/rules/RuleBasedPartitioner.d dwtx/jface/text/rules/RuleBasedScanner.d dwtx/jface/text/rules/SingleLineRule.d dwtx/jface/text/rules/Token.d dwtx/jface/text/rules/WhitespaceRule.d dwtx/jface/text/rules/WordPatternRule.d dwtx/jface/text/rules/WordRule.d dwtx/jface/text/source/AbstractRulerColumn.d dwtx/jface/text/source/Annotation.d dwtx/jface/text/source/AnnotationBarHoverManager.d dwtx/jface/text/source/AnnotationColumn.d dwtx/jface/text/source/AnnotationMap.d dwtx/jface/text/source/AnnotationModel.d dwtx/jface/text/source/AnnotationModelEvent.d dwtx/jface/text/source/AnnotationPainter.d dwtx/jface/text/source/AnnotationRulerColumn.d dwtx/jface/text/source/ChangeRulerColumn.d dwtx/jface/text/source/CompositeRuler.d dwtx/jface/text/source/ContentAssistantFacade.d dwtx/jface/text/source/DefaultAnnotationHover.d dwtx/jface/text/source/DefaultCharacterPairMatcher.d dwtx/jface/text/source/JFaceTextMessages.d dwtx/jface/text/source/LineNumberChangeRulerColumn.d dwtx/jface/text/source/LineNumberRulerColumn.d dwtx/jface/text/source/LineRange.d dwtx/jface/text/source/MatchingCharacterPainter.d dwtx/jface/text/source/OverviewRuler.d dwtx/jface/text/source/OverviewRulerHoverManager.d dwtx/jface/text/source/SourceViewer.d dwtx/jface/text/source/SourceViewerConfiguration.d dwtx/jface/text/source/TextInvocationContext.d dwtx/jface/text/source/VerticalRuler.d dwtx/jface/text/source/VerticalRulerEvent.d dwtx/jface/text/source/VisualAnnotationModel.d dwtx/jface/text/source/projection/AnnotationBag.d dwtx/jface/text/source/projection/ProjectionAnnotation.d dwtx/jface/text/source/projection/ProjectionAnnotationModel.d dwtx/jface/text/source/projection/ProjectionRulerColumn.d dwtx/jface/text/source/projection/ProjectionSummary.d dwtx/jface/text/source/projection/ProjectionSupport.d dwtx/jface/text/source/projection/ProjectionViewer.d dwtx/jface/text/source/projection/SourceViewerInformationControl.d dwtx/jface/text/templates/DocumentTemplateContext.d dwtx/jface/text/templates/GlobalTemplateVariables.d dwtx/jface/text/templates/InclusivePositionUpdater.d dwtx/jface/text/templates/JFaceTextTemplateMessages.d dwtx/jface/text/templates/PositionBasedCompletionProposal.d dwtx/jface/text/templates/SimpleTemplateVariableResolver.d dwtx/jface/text/templates/Template.d dwtx/jface/text/templates/TemplateBuffer.d dwtx/jface/text/templates/TemplateContext.d dwtx/jface/text/templates/TemplateContextType.d dwtx/jface/text/templates/TemplateException.d dwtx/jface/text/templates/TemplateProposal.d dwtx/jface/text/templates/TemplateTranslator.d dwtx/jface/text/templates/TemplateVariable.d dwtx/jface/text/templates/TemplateVariableResolver.d dwtx/jface/text/templates/TemplateVariableType.d dwtx/jface/text/templates/TextTemplateMessages.d dwtx/jface/text/templates/persistence/TemplatePersistenceData.d dwtx/jface/text/templates/persistence/TemplatePersistenceMessages.d dwtx/jface/text/templates/persistence/TemplateReaderWriter.d dwtx/jface/text/templates/persistence/TemplateStore.d dwtx/text/edits/CopyTargetEdit.d dwtx/text/edits/TextEditGroup.d dwtx/text/undo/DocumentUndoManagerRegistry.d
diffstat 210 files changed, 395 insertions(+), 395 deletions(-) [+]
line wrap: on
line diff
--- a/dwtx/jface/internal/text/DelayedInputChangeListener.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/DelayedInputChangeListener.d	Sun Aug 24 01:29:22 2008 +0200
@@ -41,7 +41,7 @@
      * @param changeProvider the information control with delayed input changes
      * @param informationControlReplacer the information control replacer, whose information control should get the new input
      */
-    public DelayedInputChangeListener(IDelayedInputChangeProvider changeProvider, InformationControlReplacer informationControlReplacer) {
+    public this(IDelayedInputChangeProvider changeProvider, InformationControlReplacer informationControlReplacer) {
         fChangeProvider= changeProvider;
         fInformationControlReplacer= informationControlReplacer;
     }
--- a/dwtx/jface/internal/text/InformationControlReplacer.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/InformationControlReplacer.d	Sun Aug 24 01:29:22 2008 +0200
@@ -75,7 +75,7 @@
      * 
      * @param creator the default information control creator
      */
-    public InformationControlReplacer(IInformationControlCreator creator) {
+    public this(IInformationControlCreator creator) {
         super(creator);
         takesFocusWhenVisible(false);
     }
--- a/dwtx/jface/internal/text/NonDeletingPositionUpdater.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/NonDeletingPositionUpdater.d	Sun Aug 24 01:29:22 2008 +0200
@@ -45,7 +45,7 @@
      *
      * @param category the new category.
      */
-    public NonDeletingPositionUpdater(String category) {
+    public this(String category) {
         fCategory= category;
     }
 
--- a/dwtx/jface/internal/text/StickyHoverManager.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/StickyHoverManager.d	Sun Aug 24 01:29:22 2008 +0200
@@ -289,7 +289,7 @@
      * 
      * @param textViewer the text viewer
      */
-    public StickyHoverManager(TextViewer textViewer) {
+    public this(TextViewer textViewer) {
         super(new DefaultInformationControlCreator());
         
         fTextViewer= textViewer;
--- a/dwtx/jface/internal/text/TableOwnerDrawSupport.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/TableOwnerDrawSupport.d	Sun Aug 24 01:29:22 2008 +0200
@@ -75,7 +75,7 @@
         return (StyleRange[])item.getData(STYLED_RANGES_KEY + column);
     }
 
-    private TableOwnerDrawSupport(Table table) {
+    private this(Table table) {
         int orientation= table.getStyle() & (DWT.LEFT_TO_RIGHT | DWT.RIGHT_TO_LEFT);
         fLayout= new TextLayout(table.getDisplay());
         fLayout.setOrientation(orientation);
--- a/dwtx/jface/internal/text/html/BrowserInformationControl.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/html/BrowserInformationControl.d	Sun Aug 24 01:29:22 2008 +0200
@@ -181,7 +181,7 @@
      * @param resizable <code>true</code> if the control should be resizable
      * @since 3.4
      */
-    public BrowserInformationControl(Shell parent, String symbolicFontName, bool resizable) {
+    public this(Shell parent, String symbolicFontName, bool resizable) {
         super(parent, resizable);
         fSymbolicFontName= symbolicFontName;
         create();
@@ -196,7 +196,7 @@
      *            or <code>null</code> if the status field should be hidden
      * @since 3.4
      */
-    public BrowserInformationControl(Shell parent, String symbolicFontName, String statusFieldText) {
+    public this(Shell parent, String symbolicFontName, String statusFieldText) {
         super(parent, statusFieldText);
         fSymbolicFontName= symbolicFontName;
         create();
@@ -210,7 +210,7 @@
      * @param toolBarManager the manager or <code>null</code> if toolbar is not desired
      * @since 3.4
      */
-    public BrowserInformationControl(Shell parent, String symbolicFontName, ToolBarManager toolBarManager) {
+    public this(Shell parent, String symbolicFontName, ToolBarManager toolBarManager) {
         super(parent, toolBarManager);
         fSymbolicFontName= symbolicFontName;
         create();
--- a/dwtx/jface/internal/text/html/BrowserInformationControlInput.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/html/BrowserInformationControlInput.d	Sun Aug 24 01:29:22 2008 +0200
@@ -49,7 +49,7 @@
      * 
      * @param previous the previous input or <code>null</code> if none
      */
-    public BrowserInformationControlInput(BrowserInformationControlInput previous) {
+    public this(BrowserInformationControlInput previous) {
         super(previous);
     }
 
--- a/dwtx/jface/internal/text/html/BrowserInput.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/html/BrowserInput.d	Sun Aug 24 01:29:22 2008 +0200
@@ -44,7 +44,7 @@
      * 
      * @param previous the input previous to this or <code>null</code> if this is the first
      */
-    public BrowserInput(BrowserInput previous) {
+    public this(BrowserInput previous) {
         fPrevious= previous;
         if (previous !is null)
             previous.fNext= this;
--- a/dwtx/jface/internal/text/html/HTML2TextReader.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/html/HTML2TextReader.d	Sun Aug 24 01:29:22 2008 +0200
@@ -96,7 +96,7 @@
      * @param presentation If not <code>null</code>, formattings will be applied to
      * the presentation.
     */
-    public HTML2TextReader(Reader reader, TextPresentation presentation) {
+    public this(Reader reader, TextPresentation presentation) {
         super(new PushbackReader(reader));
         fTextPresentation= presentation;
     }
--- a/dwtx/jface/internal/text/html/HTMLMessages.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/html/HTMLMessages.d	Sun Aug 24 01:29:22 2008 +0200
@@ -41,7 +41,7 @@
 
     private static ResourceBundle fgResourceBundle= ResourceBundle.getBundle(RESOURCE_BUNDLE);
 
-    private HTMLMessages() {
+    private this() {
     }
 
     /**
--- a/dwtx/jface/internal/text/html/HTMLPrinter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/html/HTMLPrinter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -67,7 +67,7 @@
         }
     }
 
-    private HTMLPrinter() {
+    private this() {
     }
 
     private static String replace(String text, char c, String s) {
--- a/dwtx/jface/internal/text/html/HTMLTextPresenter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/html/HTMLTextPresenter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -50,12 +50,12 @@
     private int fCounter;
     private bool fEnforceUpperLineLimit;
 
-    public HTMLTextPresenter(bool enforceUpperLineLimit) {
+    public this(bool enforceUpperLineLimit) {
         super();
         fEnforceUpperLineLimit= enforceUpperLineLimit;
     }
 
-    public HTMLTextPresenter() {
+    public this() {
         this(true);
     }
 
--- a/dwtx/jface/internal/text/html/SubstitutionTextReader.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/html/SubstitutionTextReader.d	Sun Aug 24 01:29:22 2008 +0200
@@ -53,7 +53,7 @@
     private int fIndex;
 
 
-    protected SubstitutionTextReader(Reader reader) {
+    protected this(Reader reader) {
         fReader= reader;
         fBuffer= new StringBuffer();
         fIndex= 0;
--- a/dwtx/jface/internal/text/link/contentassist/AdditionalInfoController2.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/link/contentassist/AdditionalInfoController2.d	Sun Aug 24 01:29:22 2008 +0200
@@ -97,7 +97,7 @@
      * @param creator the information control creator to be used by this controller
      * @param delay time in milliseconds after which additional info should be displayed
      */
-    AdditionalInfoController2(IInformationControlCreator creator, int delay) {
+    this(IInformationControlCreator creator, int delay) {
         super(creator);
         fDelay= delay;
         setAnchor(ANCHOR_RIGHT);
--- a/dwtx/jface/internal/text/link/contentassist/CompletionProposalPopup2.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/link/contentassist/CompletionProposalPopup2.d	Sun Aug 24 01:29:22 2008 +0200
@@ -162,7 +162,7 @@
      * @param infoController the info control collaborating with this popup
      * @since 2.0
      */
-    public CompletionProposalPopup2(ContentAssistant2 contentAssistant, ITextViewer viewer, AdditionalInfoController2 infoController) {
+    public this(ContentAssistant2 contentAssistant, ITextViewer viewer, AdditionalInfoController2 infoController) {
         fContentAssistant= contentAssistant;
         fViewer= viewer;
         fAdditionalInfoController= infoController;
--- a/dwtx/jface/internal/text/link/contentassist/ContentAssistMessages.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/link/contentassist/ContentAssistMessages.d	Sun Aug 24 01:29:22 2008 +0200
@@ -43,7 +43,7 @@
 
     private static ResourceBundle fgResourceBundle= ResourceBundle.getBundle(RESOURCE_BUNDLE);
 
-    private ContentAssistMessages() {
+    private this() {
     }
 
     /**
--- a/dwtx/jface/internal/text/link/contentassist/ContentAssistant2.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/link/contentassist/ContentAssistant2.d	Sun Aug 24 01:29:22 2008 +0200
@@ -243,7 +243,7 @@
         private final static int SHOW_PROPOSALS= 1;
         private final static int SHOW_CONTEXT_INFO= 2;
 
-        protected AutoAssistListener() {
+        protected this() {
         }
 
         protected void start(int showStyle) {
@@ -725,7 +725,7 @@
      * activation will be enabled, without further configuration steps, this content assistant
      * is activated after a 500 ms delay. It uses the default partitioning.
      */
-    public ContentAssistant2() {
+    public this() {
         setContextInformationPopupOrientation(CONTEXT_INFO_ABOVE);
         setInformationControlCreator(getInformationControlCreator());
 
--- a/dwtx/jface/internal/text/link/contentassist/ContextInformationPopup2.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/link/contentassist/ContextInformationPopup2.d	Sun Aug 24 01:29:22 2008 +0200
@@ -107,7 +107,7 @@
      * @param contentAssistant the content assist for computing the context information
      * @param viewer the viewer on top of which the context information is shown
      */
-    public ContextInformationPopup2(ContentAssistant2 contentAssistant, ITextViewer viewer) {
+    public this(ContentAssistant2 contentAssistant, ITextViewer viewer) {
         fContentAssistant= contentAssistant;
         fViewer= viewer;
     }
--- a/dwtx/jface/internal/text/link/contentassist/LineBreakingReader.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/link/contentassist/LineBreakingReader.d	Sun Aug 24 01:29:22 2008 +0200
@@ -56,7 +56,7 @@
      * @param gc The graphic context that defines the currently used font sizes
      * @param maxLineWidth The max width (pixels) where the text has to fit in
      */
-    public LineBreakingReader(Reader reader, GC gc, int maxLineWidth) {
+    public this(Reader reader, GC gc, int maxLineWidth) {
         fReader= new BufferedReader(reader);
         fGC= gc;
         fMaxWidth= maxLineWidth;
--- a/dwtx/jface/internal/text/revisions/ChangeRegion.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/revisions/ChangeRegion.d	Sun Aug 24 01:29:22 2008 +0200
@@ -51,7 +51,7 @@
      * @param lines the line range of the new region
      * @throws IndexOutOfBoundsException if the line range is not well-formed
      */
-    public ChangeRegion(Revision revision, ILineRange lines) throws IndexOutOfBoundsException {
+    public this(Revision revision, ILineRange lines) throws IndexOutOfBoundsException {
         Assert.isLegal(revision !is null);
         Assert.isLegal(lines !is null);
         fLines= Range.copy(lines);
--- a/dwtx/jface/internal/text/revisions/Colors.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/revisions/Colors.d	Sun Aug 24 01:29:22 2008 +0200
@@ -273,7 +273,7 @@
         return hue;
     }
 
-    private Colors() {
+    private this() {
         // not instantiatable
     }
 
--- a/dwtx/jface/internal/text/revisions/Hunk.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/revisions/Hunk.d	Sun Aug 24 01:29:22 2008 +0200
@@ -53,7 +53,7 @@
      * @param delta the difference in lines compared to the original
      * @param changed the number of changed lines in this hunk, must be &gt;= 0
      */
-    public Hunk(int line, int delta, int changed) {
+    public this(int line, int delta, int changed) {
         Assert.isLegal(line >= 0);
         Assert.isLegal(changed >= 0);
         this.line= line;
--- a/dwtx/jface/internal/text/revisions/HunkComputer.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/revisions/HunkComputer.d	Sun Aug 24 01:29:22 2008 +0200
@@ -85,6 +85,6 @@
         
         return (Hunk[]) hunks.toArray(new Hunk[hunks.size()]);
     }
-    private HunkComputer() {
+    private this() {
     }
 }
--- a/dwtx/jface/internal/text/revisions/LineIndexOutOfBoundsException.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/revisions/LineIndexOutOfBoundsException.d	Sun Aug 24 01:29:22 2008 +0200
@@ -36,7 +36,7 @@
     /**
      * Constructs an <code>LineIndexOutOfBoundsException</code> with no detail message.
      */
-    public LineIndexOutOfBoundsException() {
+    public this() {
         super();
     }
 
@@ -45,7 +45,7 @@
      * 
      * @param s the detail message.
      */
-    public LineIndexOutOfBoundsException(String s) {
+    public this(String s) {
         super(s);
     }
     
@@ -55,7 +55,7 @@
      *
      * @param index the illegal index.
      */
-    public LineIndexOutOfBoundsException(int index) {
+    public this(int index) {
         super("Line index out of range: " + index); //$NON-NLS-1$
     }
 }
--- a/dwtx/jface/internal/text/revisions/Range.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/revisions/Range.d	Sun Aug 24 01:29:22 2008 +0200
@@ -94,7 +94,7 @@
     /*
      * Private constructor.
      */
-    private Range(int start, int length) {
+    private this(int start, int length) {
         moveTo(start);
         setLength(length);
     }
--- a/dwtx/jface/internal/text/revisions/RevisionPainter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/revisions/RevisionPainter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -114,7 +114,7 @@
      * The annotations created to show a revision in the overview ruler.
      */
     private static final class RevisionAnnotation : Annotation {
-        public RevisionAnnotation(String text) {
+        public this(String text) {
             super("dwtx.ui.workbench.texteditor.revisionAnnotation", false, text); //$NON-NLS-1$
         }
     }
@@ -367,7 +367,7 @@
     private static final class HoverInformationControlCreator : AbstractReusableInformationControlCreator {
         private bool fIsFocusable;
         
-        public HoverInformationControlCreator(bool isFocusable) {
+        public this(bool isFocusable) {
             fIsFocusable= isFocusable;
         }
 
@@ -638,7 +638,7 @@
      *        newly created painter.
      * @param sharedColors a shared colors object to store shaded colors in
      */
-    public RevisionPainter(IVerticalRulerColumn column, ISharedTextColors sharedColors) {
+    public this(IVerticalRulerColumn column, ISharedTextColors sharedColors) {
         Assert.isLegal(column !is null);
         Assert.isLegal(sharedColors !is null);
         fColumn= column;
--- a/dwtx/jface/internal/text/revisions/RevisionSelectionProvider.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/revisions/RevisionSelectionProvider.d	Sun Aug 24 01:29:22 2008 +0200
@@ -59,7 +59,7 @@
     private final class PostSelectionListener : ISelectionChangedListener {
         private final IPostSelectionProvider fPostProvider;
 
-        public PostSelectionListener(IPostSelectionProvider postProvider) {
+        public this(IPostSelectionProvider postProvider) {
             postProvider.addPostSelectionChangedListener(this);
             fPostProvider= postProvider;
         }
@@ -106,7 +106,7 @@
      * 
      * @param painter the painter that the created provider interacts with
      */
-    RevisionSelectionProvider(RevisionPainter painter) {
+    this(RevisionPainter painter) {
         fPainter= painter;
     }
 
--- a/dwtx/jface/internal/text/source/DiffPainter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/internal/text/source/DiffPainter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -100,7 +100,7 @@
      * @param sharedColors a shared colors object to store shaded colors in, may be
      *        <code>null</code>
      */
-    public DiffPainter(IVerticalRulerColumn column, ISharedTextColors sharedColors) {
+    public this(IVerticalRulerColumn column, ISharedTextColors sharedColors) {
         Assert.isLegal(column !is null);
         fColumn= column;
         fSharedColors= sharedColors;
--- a/dwtx/jface/text/AbstractDocument.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/AbstractDocument.d	Sun Aug 24 01:29:22 2008 +0200
@@ -224,7 +224,7 @@
          * @param owner the document listener owning the replace operation
          * @param replace the replace operation
          */
-        RegisteredReplace(IDocumentListener owner, IDocumentExtension.IReplace replace) {
+        this(IDocumentListener owner, IDocumentExtension.IReplace replace) {
             fOwner= owner;
             fReplace= replace;
         }
@@ -328,7 +328,7 @@
      * implementation plug-ins and then call <code>completeInitialization</code>.
      * Results in the construction of an empty document.
      */
-    protected AbstractDocument() {
+    protected this() {
         fModificationStamp= getNextModificationStamp();
     }
 
--- a/dwtx/jface/text/AbstractHoverInformationControlManager.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/AbstractHoverInformationControlManager.d	Sun Aug 24 01:29:22 2008 +0200
@@ -234,7 +234,7 @@
         /**
          * Creates a new information control closer.
          */
-        public Closer() {
+        public this() {
         }
 
         /*
@@ -585,7 +585,7 @@
         /**
          * Creates a new mouse tracker.
          */
-        public MouseTracker() {
+        public this() {
         }
 
         /**
@@ -803,7 +803,7 @@
      *
      * @param creator the information control creator
      */
-    protected AbstractHoverInformationControlManager(IInformationControlCreator creator) {
+    protected this(IInformationControlCreator creator) {
         super(creator);
         setCloser(new Closer());
         setHoverEnrichMode(ITextViewerExtension8.EnrichMode.AFTER_DELAY);
--- a/dwtx/jface/text/AbstractInformationControl.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/AbstractInformationControl.d	Sun Aug 24 01:29:22 2008 +0200
@@ -254,7 +254,7 @@
      * @param parentShell the parent of this control's shell
      * @param statusFieldText the text to be used in the status field or <code>null</code> to hide the status field
      */
-    public AbstractInformationControl(Shell parentShell, String statusFieldText) {
+    public this(Shell parentShell, String statusFieldText) {
         this(parentShell, DWT.TOOL | DWT.ON_TOP, statusFieldText, null);
     }
 
@@ -269,7 +269,7 @@
      * @param parentShell the parent of this control's shell
      * @param toolBarManager the manager or <code>null</code> if toolbar is not desired
      */
-    public AbstractInformationControl(Shell parentShell, ToolBarManager toolBarManager) {
+    public this(Shell parentShell, ToolBarManager toolBarManager) {
         this(parentShell, DWT.TOOL | DWT.ON_TOP | DWT.RESIZE, null, toolBarManager);
     }
 
@@ -282,7 +282,7 @@
      * @param parentShell the parent of this control's shell
      * @param isResizable <code>true</code> if the control should be resizable
      */
-    public AbstractInformationControl(Shell parentShell, bool isResizable) {
+    public this(Shell parentShell, bool isResizable) {
         this(parentShell, DWT.TOOL | DWT.ON_TOP | (isResizable ? DWT.RESIZE : 0), null, null);
     }
 
@@ -304,7 +304,7 @@
      * 
      * @deprecated clients should use one of the public constructors
      */
-    AbstractInformationControl(Shell parentShell, int shellStyle, final String statusFieldText, final ToolBarManager toolBarManager) {
+    this(Shell parentShell, int shellStyle, final String statusFieldText, final ToolBarManager toolBarManager) {
         Assert.isTrue(statusFieldText is null || toolBarManager is null);
         fResizeHandleSize= -1;
         fToolBarManager= toolBarManager;
--- a/dwtx/jface/text/AbstractInformationControlManager.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/AbstractInformationControlManager.d	Sun Aug 24 01:29:22 2008 +0200
@@ -293,7 +293,7 @@
      */
     public static final class Anchor {
         private final int fFlag;
-        private Anchor(int flag) {
+        private this(int flag) {
             fFlag= flag;
         }
         /**
@@ -523,7 +523,7 @@
      *
      * @param creator the information control creator
      */
-    protected AbstractInformationControlManager(IInformationControlCreator creator) {
+    protected this(IInformationControlCreator creator) {
         Assert.isNotNull(creator);
         fInformationControlCreator= creator;
     }
--- a/dwtx/jface/text/AbstractLineTracker.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/AbstractLineTracker.d	Sun Aug 24 01:29:22 2008 +0200
@@ -206,13 +206,13 @@
         public final int length;
         public final String text;
 
-        public Request(int offset, int length, String text) {
+        public this(int offset, int length, String text) {
             this.offset= offset;
             this.length= length;
             this.text= text;
         }
 
-        public Request(String text) {
+        public this(String text) {
             this.offset= -1;
             this.length= -1;
             this.text= text;
@@ -257,7 +257,7 @@
     /**
      * Creates a new line tracker.
      */
-    protected AbstractLineTracker() {
+    protected this() {
     }
 
     /*
--- a/dwtx/jface/text/Assert.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/Assert.d	Sun Aug 24 01:29:22 2008 +0200
@@ -205,7 +205,7 @@
             /**
              * Constructs a new exception.
              */
-            public AssertionFailedException() {
+            public this() {
             }
 
             /**
@@ -213,13 +213,13 @@
              *
              * @param detail the detailed message
              */
-            public AssertionFailedException(String detail) {
+            public this(String detail) {
                 super(detail);
             }
         }
 
     /* This class is not intended to be instantiated. */
-    private Assert() {
+    private this() {
     }
 
     /**
--- a/dwtx/jface/text/BadLocationException.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/BadLocationException.d	Sun Aug 24 01:29:22 2008 +0200
@@ -179,7 +179,7 @@
     /**
      * Creates a new bad location exception.
      */
-    public BadLocationException() {
+    public this() {
         super();
     }
 
@@ -188,7 +188,7 @@
      *
      * @param message the exception message
      */
-    public BadLocationException(String message) {
+    public this(String message) {
         super(message);
     }
 }
--- a/dwtx/jface/text/BadPartitioningException.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/BadPartitioningException.d	Sun Aug 24 01:29:22 2008 +0200
@@ -180,7 +180,7 @@
     /**
      * Creates a new bad partitioning exception.
      */
-    public BadPartitioningException() {
+    public this() {
     }
 
     /**
@@ -188,7 +188,7 @@
      *
      * @param message message describing the exception
      */
-    public BadPartitioningException(String message) {
+    public this(String message) {
         super(message);
     }
 }
--- a/dwtx/jface/text/BadPositionCategoryException.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/BadPositionCategoryException.d	Sun Aug 24 01:29:22 2008 +0200
@@ -181,7 +181,7 @@
     /**
      * Creates a new bad position category exception.
      */
-    public BadPositionCategoryException() {
+    public this() {
         super();
     }
 
@@ -190,7 +190,7 @@
      *
      * @param message the exception's message
      */
-    public BadPositionCategoryException(String message) {
+    public this(String message) {
         super(message);
     }
 }
--- a/dwtx/jface/text/ConfigurableLineTracker.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/ConfigurableLineTracker.d	Sun Aug 24 01:29:22 2008 +0200
@@ -187,7 +187,7 @@
      * @param legalLineDelimiters the tracker's legal line delimiters,
      *      may not be <code>null</code> and must be longer than 0
      */
-    public ConfigurableLineTracker(String[] legalLineDelimiters) {
+    public this(String[] legalLineDelimiters) {
         Assert.isTrue(legalLineDelimiters !is null && legalLineDelimiters.length > 0);
         fDelimiters= TextUtilities.copy(legalLineDelimiters);
     }
--- a/dwtx/jface/text/CopyOnWriteTextStore.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/CopyOnWriteTextStore.d	Sun Aug 24 01:29:22 2008 +0200
@@ -187,7 +187,7 @@
         /**
          * Create an empty text store.
          */
-        private StringTextStore() {
+        private this() {
             super();
         }
 
@@ -195,7 +195,7 @@
          * Create a text store with initial content.
          * @param text  the initial content
          */
-        private StringTextStore(String text) {
+        private this(String text) {
             super();
             set(text);
         }
@@ -252,7 +252,7 @@
      *            a modifiable <code>ITextStore</code> instance, may not be
      *            <code>null</code>
      */
-    public CopyOnWriteTextStore(ITextStore modifiableTextStore) {
+    public this(ITextStore modifiableTextStore) {
         Assert.isNotNull(modifiableTextStore);
         fTextStore= new StringTextStore();
         fModifiableTextStore= modifiableTextStore;
--- a/dwtx/jface/text/CursorLinePainter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/CursorLinePainter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -200,7 +200,7 @@
      *
      * @param textViewer the source viewer for which to create a painter
      */
-    public CursorLinePainter(ITextViewer textViewer) {
+    public this(ITextViewer textViewer) {
         fViewer= textViewer;
     }
 
--- a/dwtx/jface/text/DefaultAutoIndentStrategy.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DefaultAutoIndentStrategy.d	Sun Aug 24 01:29:22 2008 +0200
@@ -171,6 +171,6 @@
     /**
      * Creates a new default auto indent strategy.
      */
-    public DefaultAutoIndentStrategy() {
+    public this() {
     }
 }
--- a/dwtx/jface/text/DefaultDocumentAdapter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DefaultDocumentAdapter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -219,7 +219,7 @@
      * Creates a new document adapter which is initially not connected to
      * any document.
      */
-    public DefaultDocumentAdapter() {
+    public this() {
     }
 
     /**
--- a/dwtx/jface/text/DefaultIndentLineAutoEditStrategy.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DefaultIndentLineAutoEditStrategy.d	Sun Aug 24 01:29:22 2008 +0200
@@ -170,7 +170,7 @@
      * Creates a new indent line auto edit strategy which can be installed on
      * text viewers.
      */
-    public DefaultIndentLineAutoEditStrategy() {
+    public this() {
     }
 
     /**
--- a/dwtx/jface/text/DefaultInformationControl.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DefaultInformationControl.d	Sun Aug 24 01:29:22 2008 +0200
@@ -274,7 +274,7 @@
      * @param isResizeable <code>true</code> if the control should be resizable
      * @since 3.4
      */
-    public DefaultInformationControl(Shell parent, bool isResizeable) {
+    public this(Shell parent, bool isResizeable) {
         super(parent, isResizeable);
         fAdditionalTextStyles= isResizeable ? DWT.V_SCROLL | DWT.H_SCROLL : DWT.NONE;
         fPresenter= new HTMLTextPresenter(!isResizeable);
@@ -289,7 +289,7 @@
      * @param statusFieldText the text to be used in the status field or <code>null</code> to hide the status field
      * @since 3.4
      */
-    public DefaultInformationControl(Shell parent, String statusFieldText) {
+    public this(Shell parent, String statusFieldText) {
         this(parent, statusFieldText, new HTMLTextPresenter(true));
     }
 
@@ -303,7 +303,7 @@
      * @param presenter the presenter to be used, or <code>null</code> if no presenter should be used
      * @since 3.4
      */
-    public DefaultInformationControl(Shell parent, String statusFieldText, IInformationPresenter presenter) {
+    public this(Shell parent, String statusFieldText, IInformationPresenter presenter) {
         super(parent, statusFieldText);
         fAdditionalTextStyles= DWT.NONE;
         fPresenter= presenter;
@@ -319,7 +319,7 @@
      * @param toolBarManager the manager or <code>null</code> if toolbar is not desired
      * @since 3.4
      */
-    public DefaultInformationControl(Shell parent, ToolBarManager toolBarManager) {
+    public this(Shell parent, ToolBarManager toolBarManager) {
         this(parent, toolBarManager, new HTMLTextPresenter(false));
     }
 
@@ -333,7 +333,7 @@
      * @param presenter the presenter to be used, or <code>null</code> if no presenter should be used
      * @since 3.4
      */
-    public DefaultInformationControl(Shell parent, ToolBarManager toolBarManager, IInformationPresenter presenter) {
+    public this(Shell parent, ToolBarManager toolBarManager, IInformationPresenter presenter) {
         super(parent, toolBarManager);
         fAdditionalTextStyles= DWT.V_SCROLL | DWT.H_SCROLL;
         fPresenter= presenter;
@@ -347,7 +347,7 @@
      *
      * @param parent the parent shell
      */
-    public DefaultInformationControl(Shell parent) {
+    public this(Shell parent) {
         this(parent, (String)null, null);
     }
 
@@ -358,7 +358,7 @@
      * @param parent the parent shell
      * @param presenter the presenter to be used
      */
-    public DefaultInformationControl(Shell parent, IInformationPresenter presenter) {
+    public this(Shell parent, IInformationPresenter presenter) {
         this(parent, (String)null, presenter);
     }
 
@@ -374,7 +374,7 @@
      * @param presenter the presenter to be used
      * @deprecated As of 3.4, replaced by simpler constructors
      */
-    public DefaultInformationControl(Shell parent, int shellStyle, int style, IInformationPresenter presenter) {
+    public this(Shell parent, int shellStyle, int style, IInformationPresenter presenter) {
         this(parent, shellStyle, style, presenter, null);
     }
 
@@ -392,7 +392,7 @@
      * @since 3.0
      * @deprecated As of 3.4, replaced by simpler constructors
      */
-    public DefaultInformationControl(Shell parentShell, int shellStyle, final int style, IInformationPresenter presenter, String statusFieldText) {
+    public this(Shell parentShell, int shellStyle, final int style, IInformationPresenter presenter, String statusFieldText) {
         super(parentShell, DWT.NO_FOCUS | DWT.ON_TOP | shellStyle, statusFieldText, null);
         fAdditionalTextStyles= style;
         fPresenter= presenter;
@@ -409,7 +409,7 @@
      * @param presenter the presenter to be used
      * @deprecated As of 3.4, replaced by {@link #DefaultInformationControl(Shell, DefaultInformationControl.IInformationPresenter)}
      */
-    public DefaultInformationControl(Shell parent, int textStyles, IInformationPresenter presenter) {
+    public this(Shell parent, int textStyles, IInformationPresenter presenter) {
         this(parent, textStyles, presenter, null);
     }
 
@@ -425,7 +425,7 @@
      * @since 3.0
      * @deprecated As of 3.4, replaced by {@link #DefaultInformationControl(Shell, String, DefaultInformationControl.IInformationPresenter)}
      */
-    public DefaultInformationControl(Shell parent, int textStyles, IInformationPresenter presenter, String statusFieldText) {
+    public this(Shell parent, int textStyles, IInformationPresenter presenter, String statusFieldText) {
         super(parent, statusFieldText);
         fAdditionalTextStyles= textStyles;
         fPresenter= presenter;
--- a/dwtx/jface/text/DefaultLineTracker.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DefaultLineTracker.d	Sun Aug 24 01:29:22 2008 +0200
@@ -178,7 +178,7 @@
     /**
      * Creates a standard line tracker.
      */
-    public DefaultLineTracker() {
+    public this() {
     }
 
     /*
--- a/dwtx/jface/text/DefaultPositionUpdater.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DefaultPositionUpdater.d	Sun Aug 24 01:29:22 2008 +0200
@@ -210,7 +210,7 @@
      *
      * @param category the category the updater is responsible for
      */
-    public DefaultPositionUpdater(String category) {
+    public this(String category) {
         fCategory= category;
     }
 
--- a/dwtx/jface/text/DefaultTextDoubleClickStrategy.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DefaultTextDoubleClickStrategy.d	Sun Aug 24 01:29:22 2008 +0200
@@ -197,7 +197,7 @@
         private int fIndex= -1;
 
         /** Creates a new document iterator. */
-        public DocumentCharacterIterator() {
+        public this() {
         }
 
         /**
@@ -320,7 +320,7 @@
     /**
      * Creates a new default text double click strategy.
      */
-    public DefaultTextDoubleClickStrategy() {
+    public this() {
         super();
     }
 
--- a/dwtx/jface/text/DefaultTextHover.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DefaultTextHover.d	Sun Aug 24 01:29:22 2008 +0200
@@ -179,7 +179,7 @@
      * 
      * @param sourceViewer this hover's annotation model
      */
-    public DefaultTextHover(ISourceViewer sourceViewer)  {
+    public this(ISourceViewer sourceViewer)  {
         Assert.isNotNull(sourceViewer);
         fSourceViewer= sourceViewer;
     }
--- a/dwtx/jface/text/DefaultUndoManager.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DefaultUndoManager.d	Sun Aug 24 01:29:22 2008 +0200
@@ -244,7 +244,7 @@
          * @param context the undo context for this command
          * @since 3.1
          */
-        TextCommand(IUndoContext context) {
+        this(IUndoContext context) {
             super(JFaceTextMessages.getString("DefaultUndoManager.operationLabel")); //$NON-NLS-1$
             addContext(context);
         }
@@ -592,7 +592,7 @@
          * @param context the undo context for this command
          * @since 3.1
          */
-        CompoundTextCommand(IUndoContext context) {
+        this(IUndoContext context) {
             super(context);
         }
 
@@ -990,7 +990,7 @@
      *
      * @param undoLevel the length of this manager's history
      */
-    public DefaultUndoManager(int undoLevel) {
+    public this(int undoLevel) {
         fHistory= OperationHistoryFactory.getOperationHistory();
         setMaximalUndoLevel(undoLevel);
     }
--- a/dwtx/jface/text/Document.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/Document.d	Sun Aug 24 01:29:22 2008 +0200
@@ -186,7 +186,7 @@
     /**
      * Creates a new empty document.
      */
-    public Document() {
+    public this() {
         super();
         setTextStore(new CopyOnWriteTextStore(new GapTextStore()));
         setLineTracker(new DefaultLineTracker());
@@ -198,7 +198,7 @@
      *
      * @param initialContent the document's initial content
      */
-    public Document(String initialContent) {
+    public this(String initialContent) {
         super();
         setTextStore(new CopyOnWriteTextStore(new GapTextStore()));
         setLineTracker(new DefaultLineTracker());
--- a/dwtx/jface/text/DocumentClone.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DocumentClone.d	Sun Aug 24 01:29:22 2008 +0200
@@ -175,7 +175,7 @@
          *
          * @param content the content
          */
-        public StringTextStore(String content) {
+        public this(String content) {
             Assert.isNotNull(content);
             fContent= content;
         }
@@ -221,7 +221,7 @@
      * @param content the content
      * @param lineDelimiters the line delimiters
      */
-    public DocumentClone(String content, String[] lineDelimiters) {
+    public this(String content, String[] lineDelimiters) {
         super();
         setTextStore(new StringTextStore(content));
         ConfigurableLineTracker tracker= new ConfigurableLineTracker(lineDelimiters);
--- a/dwtx/jface/text/DocumentCommand.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DocumentCommand.d	Sun Aug 24 01:29:22 2008 +0200
@@ -203,7 +203,7 @@
          * @param owner the document command owner, may be <code>null</code>
          * @since 3.0
          */
-        public Command(int offset, int length, String text, IDocumentListener owner) {
+        public this(int offset, int length, String text, IDocumentListener owner) {
             if (offset < 0 || length < 0)
                 throw new IllegalArgumentException();
             fOffset= offset;
@@ -282,7 +282,7 @@
          * Creates a reverse list iterator.
          * @param listIterator the iterator that this reverse iterator is based upon
          */
-        public ReverseListIterator(ListIterator listIterator) {
+        public this(ListIterator listIterator) {
             if (listIterator is null)
                 throw new IllegalArgumentException();
             fListIterator= listIterator;
@@ -331,7 +331,7 @@
          * @param command the original command
          * @param forward the direction
          */
-        public CommandIterator(final List commands, final Command command, final bool forward) {
+        public this(final List commands, final Command command, final bool forward) {
             if (commands is null || command is null)
                 throw new IllegalArgumentException();
             fIterator= forward ? commands.iterator() : new ReverseListIterator(commands.listIterator(commands.size()));
@@ -420,7 +420,7 @@
     /**
      * Creates a new document command.
      */
-    protected DocumentCommand() {
+    protected this() {
     }
 
     /**
--- a/dwtx/jface/text/DocumentEvent.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DocumentEvent.d	Sun Aug 24 01:29:22 2008 +0200
@@ -201,7 +201,7 @@
      * @param length the length of the replaced text
      * @param text the substitution text
      */
-    public DocumentEvent(IDocument doc, int offset, int length, String text) {
+    public this(IDocument doc, int offset, int length, String text) {
 
         Assert.isNotNull(doc);
         Assert.isTrue(offset >= 0);
@@ -224,7 +224,7 @@
     /**
      * Creates a new, not initialized document event.
      */
-    public DocumentEvent() {
+    public this() {
     }
 
     /**
--- a/dwtx/jface/text/DocumentPartitioningChangedEvent.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DocumentPartitioningChangedEvent.d	Sun Aug 24 01:29:22 2008 +0200
@@ -182,7 +182,7 @@
      *
      * @param document the changed document
      */
-    public DocumentPartitioningChangedEvent(IDocument document) {
+    public this(IDocument document) {
         fDocument= document;
     }
 
--- a/dwtx/jface/text/DocumentRewriteSession.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DocumentRewriteSession.d	Sun Aug 24 01:29:22 2008 +0200
@@ -174,7 +174,7 @@
      *
      * @param sessionType the type of this session
      */
-    protected DocumentRewriteSession(DocumentRewriteSessionType sessionType) {
+    protected this(DocumentRewriteSessionType sessionType) {
         fSessionType= sessionType;
     }
 
--- a/dwtx/jface/text/DocumentRewriteSessionEvent.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DocumentRewriteSessionEvent.d	Sun Aug 24 01:29:22 2008 +0200
@@ -188,7 +188,7 @@
      *            {@link DocumentRewriteSessionEvent#SESSION_START} or
      *            {@link DocumentRewriteSessionEvent#SESSION_STOP}.
      */
-    public DocumentRewriteSessionEvent(IDocument doc, DocumentRewriteSession session, Object changeType) {
+    public this(IDocument doc, DocumentRewriteSession session, Object changeType) {
         Assert.isNotNull(doc);
         Assert.isNotNull(session);
 
--- a/dwtx/jface/text/DocumentRewriteSessionType.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/DocumentRewriteSessionType.d	Sun Aug 24 01:29:22 2008 +0200
@@ -204,6 +204,6 @@
     /**
      * Prohibit external object creation.
      */
-    private DocumentRewriteSessionType() {
+    private this() {
     }
 }
--- a/dwtx/jface/text/FindReplaceDocumentAdapter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/FindReplaceDocumentAdapter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -228,7 +228,7 @@
      *
      * @param document the adapted document
      */
-    public FindReplaceDocumentAdapter(IDocument document) {
+    public this(IDocument document) {
         Assert.isNotNull(document);
         fDocument= document;
     }
--- a/dwtx/jface/text/FindReplaceDocumentAdapterContentProposalProvider.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/FindReplaceDocumentAdapterContentProposalProvider.d	Sun Aug 24 01:29:22 2008 +0200
@@ -192,7 +192,7 @@
             private String fDescription;
             private int fCursorPosition;
             
-            Proposal(String content, String label, String description, int cursorPosition) {
+            this(String content, String label, String description, int cursorPosition) {
                 fContent= content;
                 fLabel= label;
                 fDescription= description;
@@ -243,7 +243,7 @@
          * @param contents the contents of the subject control
          * @param position the cursor position
          */
-        public ProposalComputer(String contents, int position) {
+        public this(String contents, int position) {
             fExpression= contents;
             fDocumentOffset= position;
             fPriorityProposals= new ArrayList();
@@ -508,7 +508,7 @@
      * @param isFind <code>true</code> if the provider is used for the 'find' field
      *                  <code>false</code> if the provider is used for the 'replace' field
      */
-    public FindReplaceDocumentAdapterContentProposalProvider(bool isFind) {
+    public this(bool isFind) {
         fIsFind= isFind;
     }
 
--- a/dwtx/jface/text/GapTextStore.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/GapTextStore.d	Sun Aug 24 01:29:22 2008 +0200
@@ -223,7 +223,7 @@
      *        (&gt;=&nbsp;0)
      * @deprecated use {@link GapTextStore#GapTextStore(int, int, float)} instead
      */
-    public GapTextStore(int lowWatermark, int highWatermark) {
+    public this(int lowWatermark, int highWatermark) {
         /*
          * Legacy constructor. The API contract states that highWatermark is the upper bound for the
          * gap size. Albeit this contract was not previously adhered to, it is now: The allocated
@@ -246,7 +246,7 @@
      * 
      * @since 3.3
      */
-    public GapTextStore() {
+    public this() {
         this(256, 4096, 0.1f);
     }
 
@@ -275,7 +275,7 @@
      * @param maxGapFactor is the maximum fraction of the array that is occupied by the gap (<code>0&nbsp;&lt;=&nbsp;maxGapFactor&nbsp;&lt;=&nbsp;1</code>)
      * @since 3.3
      */
-    public GapTextStore(int minSize, int maxSize, float maxGapFactor) {
+    public this(int minSize, int maxSize, float maxGapFactor) {
         Assert.isLegal(0f <= maxGapFactor && maxGapFactor <= 1f);
         Assert.isLegal(0 <= minSize && minSize <= maxSize);
         fMinGapSize= minSize;
--- a/dwtx/jface/text/ITextViewerExtension8.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/ITextViewerExtension8.d	Sun Aug 24 01:29:22 2008 +0200
@@ -220,7 +220,7 @@
         
         private String fName;
 
-        private EnrichMode(String name) {
+        private this(String name) {
             fName= name;
         }
 
--- a/dwtx/jface/text/JFaceTextMessages.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/JFaceTextMessages.d	Sun Aug 24 01:29:22 2008 +0200
@@ -165,7 +165,7 @@
 
     private static ResourceBundle fgResourceBundle= ResourceBundle.getBundle(RESOURCE_BUNDLE);
 
-    private JFaceTextMessages() {
+    private this() {
     }
 
     public static String getString(String key) {
--- a/dwtx/jface/text/JFaceTextUtil.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/JFaceTextUtil.d	Sun Aug 24 01:29:22 2008 +0200
@@ -177,7 +177,7 @@
  */
 public final class JFaceTextUtil {
     
-    private JFaceTextUtil() {
+    private this() {
         // Do not instantiate
     }
 
--- a/dwtx/jface/text/Line.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/Line.d	Sun Aug 24 01:29:22 2008 +0200
@@ -178,7 +178,7 @@
      * @param end the last including character offset of the line
      * @param delimiter the line's delimiter
      */
-    public Line(int offset, int end, String delimiter) {
+    public this(int offset, int end, String delimiter) {
         this.offset= offset;
         this.length= (end - offset) +1;
         this.delimiter= delimiter;
@@ -190,7 +190,7 @@
      * @param offset the offset of the line
      * @param length the length of the line
      */
-    public Line(int offset, int length) {
+    public this(int offset, int length) {
         this.offset= offset;
         this.length= length;
         this.delimiter= null;
--- a/dwtx/jface/text/ListLineTracker.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/ListLineTracker.d	Sun Aug 24 01:29:22 2008 +0200
@@ -187,7 +187,7 @@
     /**
      * Creates a new line tracker.
      */
-    protected ListLineTracker() {
+    protected this() {
     }
 
     /**
--- a/dwtx/jface/text/MarginPainter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/MarginPainter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -200,7 +200,7 @@
      *
      * @param textViewer the text viewer
      */
-    public MarginPainter(ITextViewer textViewer) {
+    public this(ITextViewer textViewer) {
         fTextWidget= textViewer.getTextWidget();
     }
 
--- a/dwtx/jface/text/MarkSelection.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/MarkSelection.d	Sun Aug 24 01:29:22 2008 +0200
@@ -179,7 +179,7 @@
      * @param offset the offset of the mark
      * @param length the length of the mark, may be negative if caret before offset
      */
-    public MarkSelection(IDocument document, int offset, int length) {
+    public this(IDocument document, int offset, int length) {
         fDocument= document;
         fOffset= offset;
         fLength= length;
--- a/dwtx/jface/text/PaintManager.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/PaintManager.d	Sun Aug 24 01:29:22 2008 +0200
@@ -194,7 +194,7 @@
          *
          * @param category the position category
          */
-        protected PaintPositionUpdater(String category) {
+        protected this(String category) {
             super(category);
         }
 
@@ -242,7 +242,7 @@
          * Creates a new position manager. Initializes the managing
          * position category using its class name and its hash value.
          */
-        public PositionManager() {
+        public this() {
             fCategory= getClass().getName() + hashCode();
             fPositionUpdater= new PaintPositionUpdater(fCategory);
         }
@@ -325,7 +325,7 @@
      *
      * @param textViewer the text viewer associated to this newly created paint manager
      */
-    public PaintManager(ITextViewer textViewer) {
+    public this(ITextViewer textViewer) {
         fTextViewer= textViewer;
     }
 
--- a/dwtx/jface/text/Position.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/Position.d	Sun Aug 24 01:29:22 2008 +0200
@@ -194,7 +194,7 @@
      *
      * @param offset the position offset, must be >= 0
      */
-    public Position(int offset) {
+    public this(int offset) {
         this(offset, 0);
     }
 
@@ -204,7 +204,7 @@
      * @param offset the position offset, must be >= 0
      * @param length the position length, must be >= 0
      */
-    public Position(int offset, int length) {
+    public this(int offset, int length) {
         Assert.isTrue(offset >= 0);
         Assert.isTrue(length >= 0);
         this.offset= offset;
@@ -214,7 +214,7 @@
     /**
      * Creates a new, not initialized position.
      */
-    protected Position() {
+    protected this() {
     }
 
      /*
--- a/dwtx/jface/text/PropagatingFontFieldEditor.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/PropagatingFontFieldEditor.d	Sun Aug 24 01:29:22 2008 +0200
@@ -199,7 +199,7 @@
      * @param parent the editor's parent widget
      * @param defaultFontLabel the label shown in the editor value field when the default value should be taken
      */
-    public PropagatingFontFieldEditor(String name, String labelText, Composite parent, String defaultFontLabel) {
+    public this(String name, String labelText, Composite parent, String defaultFontLabel) {
         super(name, labelText, parent);
         fParent= parent;
         fDefaultFontLabel= defaultFontLabel is null ? "" : defaultFontLabel; //$NON-NLS-1$
--- a/dwtx/jface/text/RegExMessages.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/RegExMessages.d	Sun Aug 24 01:29:22 2008 +0200
@@ -172,7 +172,7 @@
     private static ResourceBundle fgResourceBundle= ResourceBundle.getBundle(RESOURCE_BUNDLE);
 
 
-    private RegExMessages() {
+    private this() {
         // Do not instantiate
     }
 
--- a/dwtx/jface/text/Region.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/Region.d	Sun Aug 24 01:29:22 2008 +0200
@@ -173,7 +173,7 @@
      * @param offset the offset of the region
      * @param length the length of the region
      */
-    public Region(int offset, int length) {
+    public this(int offset, int length) {
         fOffset= offset;
         fLength= length;
     }
--- a/dwtx/jface/text/RewriteSessionEditProcessor.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/RewriteSessionEditProcessor.d	Sun Aug 24 01:29:22 2008 +0200
@@ -218,7 +218,7 @@
      * @param style {@link TextEdit#NONE}, {@link TextEdit#CREATE_UNDO} or
      *        {@link TextEdit#UPDATE_REGIONS})
      */
-    public RewriteSessionEditProcessor(IDocument document, TextEdit root, int style) {
+    public this(IDocument document, TextEdit root, int style) {
         super(document, root, style);
     }
     
--- a/dwtx/jface/text/SequentialRewriteTextStore.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/SequentialRewriteTextStore.d	Sun Aug 24 01:29:22 2008 +0200
@@ -181,7 +181,7 @@
         public final int length;
         public final String text;
 
-        public Replace(int offset, int newOffset, int length, String text) {
+        public this(int offset, int newOffset, int length, String text) {
             this.newOffset= newOffset;
             this.offset= offset;
             this.length= length;
@@ -202,7 +202,7 @@
      *
      * @param source the source text store
      */
-    public SequentialRewriteTextStore(ITextStore source) {
+    public this(ITextStore source) {
         fReplaceList= new LinkedList();
         fSource= source;
     }
--- a/dwtx/jface/text/SlaveDocumentEvent.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/SlaveDocumentEvent.d	Sun Aug 24 01:29:22 2008 +0200
@@ -175,7 +175,7 @@
      * @param text the substitution text
      * @param masterEvent the master document event
      */
-    public SlaveDocumentEvent(IDocument doc, int offset, int length, String text, DocumentEvent masterEvent) {
+    public this(IDocument doc, int offset, int length, String text, DocumentEvent masterEvent) {
         super(doc, offset, length, text);
         fMasterEvent= masterEvent;
     }
--- a/dwtx/jface/text/TextAttribute.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/TextAttribute.d	Sun Aug 24 01:29:22 2008 +0200
@@ -213,7 +213,7 @@
      * @param background the background color, <code>null</code> if none
      * @param style the style
      */
-    public TextAttribute(Color foreground, Color background, int style) {
+    public this(Color foreground, Color background, int style) {
         this.foreground= foreground;
         this.background= background;
         this.style= style;
@@ -228,7 +228,7 @@
      * @param font the font, <code>null</code> if none
      * @since 3.3
      */
-    public TextAttribute(Color foreground, Color background, int style, Font font) {
+    public this(Color foreground, Color background, int style, Font font) {
         this.foreground= foreground;
         this.background= background;
         this.style= style;
@@ -241,7 +241,7 @@
      *
      * @param foreground the foreground color, <code>null</code> if none
      */
-    public TextAttribute(Color foreground) {
+    public this(Color foreground) {
         this(foreground, null, DWT.NORMAL);
     }
 
--- a/dwtx/jface/text/TextEvent.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/TextEvent.d	Sun Aug 24 01:29:22 2008 +0200
@@ -204,7 +204,7 @@
      * @param event the associated document event or <code>null</code> if none
      * @param viewerRedrawState the redraw state of the viewer
      */
-    protected TextEvent(int offset, int length, String text, String replacedText, DocumentEvent event, bool viewerRedrawState) {
+    protected this(int offset, int length, String text, String replacedText, DocumentEvent event, bool viewerRedrawState) {
         fOffset= offset;
         fLength= length;
         fText= text;
--- a/dwtx/jface/text/TextMessages.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/TextMessages.d	Sun Aug 24 01:29:22 2008 +0200
@@ -172,7 +172,7 @@
 
     private static final ResourceBundle RESOURCE_BUNDLE= ResourceBundle.getBundle(BUNDLE_NAME);
 
-    private TextMessages() {
+    private this() {
     }
 
     public static String getString(String key) {
--- a/dwtx/jface/text/TextPresentation.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/TextPresentation.d	Sun Aug 24 01:29:22 2008 +0200
@@ -223,7 +223,7 @@
          *
          * @param skipDefaults <code>false</code> if ranges similar to the default range should be enumerated
          */
-        protected FilterIterator(bool skipDefaults) {
+        protected this(bool skipDefaults) {
 
             fSkipDefaults= skipDefaults;
 
@@ -300,7 +300,7 @@
     /**
      * Creates a new empty text presentation.
      */
-    public TextPresentation() {
+    public this() {
         fRanges= new ArrayList(50);
     }
 
@@ -310,7 +310,7 @@
      *
      * @param sizeHint the expected size of this presentation
      */
-    public TextPresentation(int sizeHint) {
+    public this(int sizeHint) {
         Assert.isTrue(sizeHint > 0);
         fRanges= new ArrayList(sizeHint);
     }
@@ -323,7 +323,7 @@
      * @param sizeHint the expected size of this presentation
      * @since 3.0
      */
-    public TextPresentation(IRegion extent, int sizeHint) {
+    public this(IRegion extent, int sizeHint) {
         this(sizeHint);
         Assert.isNotNull(extent);
         fExtent= extent;
--- a/dwtx/jface/text/TextSelection.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/TextSelection.d	Sun Aug 24 01:29:22 2008 +0200
@@ -189,7 +189,7 @@
     /**
      * Creates an empty text selection.
      */
-    private TextSelection() {
+    private this() {
         this(null, -1, -1);
     }
 
@@ -202,7 +202,7 @@
      * @param offset the offset of the range
      * @param length the length of the range
      */
-    public TextSelection(int offset, int length) {
+    public this(int offset, int length) {
         this(null, offset, length);
     }
 
@@ -215,7 +215,7 @@
      * @param offset the offset of the selected range
      * @param length the length of the selected range
      */
-    public TextSelection(IDocument document, int offset, int length) {
+    public this(IDocument document, int offset, int length) {
         fDocument= document;
         fOffset= offset;
         fLength= length;
--- a/dwtx/jface/text/TextViewer.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/TextViewer.d	Sun Aug 24 01:29:22 2008 +0200
@@ -477,7 +477,7 @@
          *
          * @param category the category this updater takes care of
          */
-        protected ShiftPositionUpdater(String category) {
+        protected this(String category) {
             super(category);
         }
 
@@ -590,7 +590,7 @@
              * @param l the listener to be added
              * @param i the index at which to insert the listener
              */
-            public Batch(VerifyKeyListener l, int i) {
+            public this(VerifyKeyListener l, int i) {
                 listener= l;
                 index= i;
             }
@@ -762,7 +762,7 @@
          *
          * @param range the extent of this range
          */
-        public FindReplaceRange(IRegion range) {
+        public this(IRegion range) {
             setRange(range);
         }
 
@@ -1215,7 +1215,7 @@
          * @param contentType the content type
          * @param stateMask the state mask
          */
-        protected TextHoverKey(String contentType, int stateMask) {
+        protected this(String contentType, int stateMask) {
             Assert.isNotNull(contentType);
             fContentType= contentType;
             fStateMask= stateMask;
@@ -1281,7 +1281,7 @@
         /**
          * Creates a new viewer state instance and connects it to the current document.
          */
-        public ViewerState() {
+        public this() {
             IDocument document= getDocument();
             if (document !is null)
                 connect(document);
@@ -1798,7 +1798,7 @@
     /**
      * Internal use only
      */
-    protected TextViewer() {
+    protected this() {
     }
 
     /**
@@ -1809,7 +1809,7 @@
      * @param styles the DWT style bits for the viewer's control,
      *          <em>if <code>DWT.WRAP</code> is set then a custom document adapter needs to be provided, see {@link #createDocumentAdapter()}
      */
-    public TextViewer(Composite parent, int styles) {
+    public this(Composite parent, int styles) {
         createControl(parent, styles);
     }
 
--- a/dwtx/jface/text/TextViewerHoverManager.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/TextViewerHoverManager.d	Sun Aug 24 01:29:22 2008 +0200
@@ -227,7 +227,7 @@
      * @param textViewer the viewer for which the controller is created
      * @param creator the information control creator
      */
-    public TextViewerHoverManager(TextViewer textViewer, IInformationControlCreator creator) {
+    public this(TextViewer textViewer, IInformationControlCreator creator) {
         super(creator);
         fTextViewer= textViewer;
         fStopper= new ITextListener() {
--- a/dwtx/jface/text/TextViewerUndoManager.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/TextViewerUndoManager.d	Sun Aug 24 01:29:22 2008 +0200
@@ -358,7 +358,7 @@
      *
      * @param undoLevel the length of this manager's history
      */
-    public TextViewerUndoManager(int undoLevel) {
+    public this(int undoLevel) {
         fUndoLevel= undoLevel;
     }
 
--- a/dwtx/jface/text/TreeLineTracker.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/TreeLineTracker.d	Sun Aug 24 01:29:22 2008 +0200
@@ -236,7 +236,7 @@
      * nodes under the right subtree lines after the current node.
      */
     private static final class Node {
-        Node(int length, String delimiter) {
+        this(int length, String delimiter) {
             this.length= length;
             this.delimiter= delimiter;
         }
@@ -308,7 +308,7 @@
     /**
      * Creates a new line tracker.
      */
-    protected TreeLineTracker() {
+    protected this() {
     }
     
     /**
@@ -316,7 +316,7 @@
      * 
      * @param tracker
      */
-    TreeLineTracker(ListLineTracker tracker) {
+    this(ListLineTracker tracker) {
         final List lines= tracker.getLines();
         final int n= lines.size();
         if (n is 0)
--- a/dwtx/jface/text/TypedPosition.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/TypedPosition.d	Sun Aug 24 01:29:22 2008 +0200
@@ -177,7 +177,7 @@
      * @param length the length of this position
      * @param type the content type of this position
      */
-    public TypedPosition(int offset, int length, String type) {
+    public this(int offset, int length, String type) {
         super(offset, length);
         fType= type;
     }
@@ -187,7 +187,7 @@
      *
      * @param region the typed region
      */
-    public TypedPosition(ITypedRegion region) {
+    public this(ITypedRegion region) {
         super(region.getOffset(), region.getLength());
         fType= region.getType();
     }
--- a/dwtx/jface/text/TypedRegion.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/TypedRegion.d	Sun Aug 24 01:29:22 2008 +0200
@@ -173,7 +173,7 @@
      * @param length the region's length
      * @param type the region's type
      */
-    public TypedRegion(int offset, int length, String type) {
+    public this(int offset, int length, String type) {
         super(offset, length);
         fType= type;
     }
--- a/dwtx/jface/text/WhitespaceCharacterPainter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/WhitespaceCharacterPainter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -197,7 +197,7 @@
      * 
      * @param textViewer  the text viewer the painter should be attached to
      */
-    public WhitespaceCharacterPainter(ITextViewer textViewer) {
+    public this(ITextViewer textViewer) {
         super();
         fTextViewer= textViewer;
         fTextWidget= textViewer.getTextWidget();
--- a/dwtx/jface/text/contentassist/AdditionalInfoController.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/contentassist/AdditionalInfoController.d	Sun Aug 24 01:29:22 2008 +0200
@@ -264,7 +264,7 @@
          * @param display the display to use for display thread posting.
          * @param delay the delay until to show additional info
          */
-        public Timer(Display display, int delay) {
+        public this(Display display, int delay) {
             fDisplay= display;
             fDelay= delay;
             long current= System.currentTimeMillis();
@@ -456,7 +456,7 @@
      * @param creator the information control creator to be used by this controller
      * @param delay time in milliseconds after which additional info should be displayed
      */
-    AdditionalInfoController(IInformationControlCreator creator, int delay) {
+    this(IInformationControlCreator creator, int delay) {
         super(creator);
         fDelay= delay;
         setAnchor(ANCHOR_RIGHT);
--- a/dwtx/jface/text/contentassist/CompletionProposal.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/contentassist/CompletionProposal.d	Sun Aug 24 01:29:22 2008 +0200
@@ -88,7 +88,7 @@
      * @param replacementLength the length of the text to be replaced
      * @param cursorPosition the position of the cursor following the insert relative to replacementOffset
      */
-    public CompletionProposal(String replacementString, int replacementOffset, int replacementLength, int cursorPosition) {
+    public this(String replacementString, int replacementOffset, int replacementLength, int cursorPosition) {
         this(replacementString, replacementOffset, replacementLength, cursorPosition, null, null, null, null);
     }
 
@@ -104,7 +104,7 @@
      * @param contextInformation the context information associated with this proposal
      * @param additionalProposalInfo the additional information associated with this proposal
      */
-    public CompletionProposal(String replacementString, int replacementOffset, int replacementLength, int cursorPosition, Image image, String displayString, IContextInformation contextInformation, String additionalProposalInfo) {
+    public this(String replacementString, int replacementOffset, int replacementLength, int cursorPosition, Image image, String displayString, IContextInformation contextInformation, String additionalProposalInfo) {
         Assert.isNotNull(replacementString);
         Assert.isTrue(replacementOffset >= 0);
         Assert.isTrue(replacementLength >= 0);
--- a/dwtx/jface/text/contentassist/CompletionProposalPopup.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/contentassist/CompletionProposalPopup.d	Sun Aug 24 01:29:22 2008 +0200
@@ -157,7 +157,7 @@
          * @param operationCode the operation code
          * @since 3.4
          */
-        public ProposalSelectionHandler(int operationCode) {
+        public this(int operationCode) {
             Assert.isLegal(operationCode is SELECT_NEXT || operationCode is SELECT_PREVIOUS);
             fOperationCode= operationCode;
         }
@@ -295,7 +295,7 @@
     private final class CommandKeyListener : KeyAdapter {
         private KeySequence fCommandSequence;
         
-        private CommandKeyListener(KeySequence keySequence) {
+        private this(KeySequence keySequence) {
             fCommandSequence= keySequence;
         }
         
@@ -469,7 +469,7 @@
      * @param infoController the information control collaborating with this popup
      * @since 2.0
      */
-    public CompletionProposalPopup(ContentAssistant contentAssistant, ITextViewer viewer, AdditionalInfoController infoController) {
+    public this(ContentAssistant contentAssistant, ITextViewer viewer, AdditionalInfoController infoController) {
         fContentAssistant= contentAssistant;
         fViewer= viewer;
         fAdditionalInfoController= infoController;
@@ -484,7 +484,7 @@
      * @param infoController the information control collaborating with this popup
      * @since 3.0
      */
-    public CompletionProposalPopup(ContentAssistant contentAssistant, IContentAssistSubjectControl contentAssistSubjectControl, AdditionalInfoController infoController) {
+    public this(ContentAssistant contentAssistant, IContentAssistSubjectControl contentAssistSubjectControl, AdditionalInfoController infoController) {
         fContentAssistant= contentAssistant;
         fContentAssistSubjectControl= contentAssistSubjectControl;
         fAdditionalInfoController= infoController;
--- a/dwtx/jface/text/contentassist/ContentAssistEvent.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/contentassist/ContentAssistEvent.d	Sun Aug 24 01:29:22 2008 +0200
@@ -68,7 +68,7 @@
      * @param isAutoActivated whether content assist was triggered by auto activation
      * @since 3.4
      */
-    ContentAssistEvent(IContentAssistant ca, IContentAssistProcessor proc, bool isAutoActivated) {
+    this(IContentAssistant ca, IContentAssistProcessor proc, bool isAutoActivated) {
         assistant= ca;
         processor= proc;
         this.isAutoActivated= isAutoActivated;
@@ -80,7 +80,7 @@
      * @param ca the assistant
      * @param proc the processor
      */
-    ContentAssistEvent(ContentAssistant ca, IContentAssistProcessor proc) {
+    this(ContentAssistant ca, IContentAssistProcessor proc) {
         this(ca, proc, false);
     }
 
--- a/dwtx/jface/text/contentassist/ContentAssistSubjectControlAdapter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/contentassist/ContentAssistSubjectControlAdapter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -92,7 +92,7 @@
      *
      * @param contentAssistSubjectControl the content assist subject control
      */
-    ContentAssistSubjectControlAdapter(IContentAssistSubjectControl contentAssistSubjectControl) {
+    this(IContentAssistSubjectControl contentAssistSubjectControl) {
         Assert.isNotNull(contentAssistSubjectControl);
         fContentAssistSubjectControl= contentAssistSubjectControl;
     }
@@ -102,7 +102,7 @@
      *
      * @param viewer the text viewer
      */
-    public ContentAssistSubjectControlAdapter(ITextViewer viewer) {
+    public this(ITextViewer viewer) {
         Assert.isNotNull(viewer);
         fViewer= viewer;
     }
--- a/dwtx/jface/text/contentassist/ContentAssistant.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/contentassist/ContentAssistant.d	Sun Aug 24 01:29:22 2008 +0200
@@ -288,7 +288,7 @@
         private final static int SHOW_PROPOSALS= 1;
         private final static int SHOW_CONTEXT_INFO= 2;
 
-        protected AutoAssistListener() {
+        protected this() {
         }
 
         protected void start(int showStyle) {
@@ -1029,7 +1029,7 @@
      * enabled, without further configuration steps, this content assistant is activated after a 500
      * milliseconds delay. It uses the default partitioning.
      */
-    public ContentAssistant() {
+    public this() {
         fPartitioning= IDocumentExtension3.DEFAULT_PARTITIONING;
     }
 
--- a/dwtx/jface/text/contentassist/ContextInformation.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/contentassist/ContextInformation.d	Sun Aug 24 01:29:22 2008 +0200
@@ -72,7 +72,7 @@
      * @param contextDisplayString the string to be used when presenting the context
      * @param informationDisplayString the string to be displayed when presenting the context information
      */
-    public ContextInformation(String contextDisplayString, String informationDisplayString) {
+    public this(String contextDisplayString, String informationDisplayString) {
         this(null, contextDisplayString, informationDisplayString);
     }
 
@@ -84,7 +84,7 @@
      * @param informationDisplayString the string to be displayed when presenting the context information,
      *      may not be <code>null</code>
      */
-    public ContextInformation(Image image, String contextDisplayString, String informationDisplayString) {
+    public this(Image image, String contextDisplayString, String informationDisplayString) {
 
         Assert.isNotNull(informationDisplayString);
 
--- a/dwtx/jface/text/contentassist/ContextInformationPopup.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/contentassist/ContextInformationPopup.d	Sun Aug 24 01:29:22 2008 +0200
@@ -108,7 +108,7 @@
         /*
          * @since 3.1
          */
-        public ContextFrame(IContextInformation information, int beginOffset, int offset, int visibleOffset, IContextInformationValidator validator, IContextInformationPresenter presenter) {
+        public this(IContextInformation information, int beginOffset, int offset, int visibleOffset, IContextInformationValidator validator, IContextInformationPresenter presenter) {
             fInformation = information;
             fBeginOffset = beginOffset;
             fOffset = offset;
@@ -187,7 +187,7 @@
      * @param contentAssistant the content assist for computing the context information
      * @param viewer the viewer on top of which the context information is shown
      */
-    public ContextInformationPopup(ContentAssistant contentAssistant, ITextViewer viewer) {
+    public this(ContentAssistant contentAssistant, ITextViewer viewer) {
         fContentAssistant= contentAssistant;
         fViewer= viewer;
         fContentAssistSubjectControlAdapter= new ContentAssistSubjectControlAdapter(fViewer);
@@ -200,7 +200,7 @@
      * @param contentAssistSubjectControl the content assist subject control on top of which the context information is shown
      * @since 3.0
      */
-    public ContextInformationPopup(ContentAssistant contentAssistant, IContentAssistSubjectControl contentAssistSubjectControl) {
+    public this(ContentAssistant contentAssistant, IContentAssistSubjectControl contentAssistSubjectControl) {
         fContentAssistant= contentAssistant;
         fContentAssistSubjectControl= contentAssistSubjectControl;
         fContentAssistSubjectControlAdapter= new ContentAssistSubjectControlAdapter(fContentAssistSubjectControl);
--- a/dwtx/jface/text/contentassist/ContextInformationValidator.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/contentassist/ContextInformationValidator.d	Sun Aug 24 01:29:22 2008 +0200
@@ -72,7 +72,7 @@
      *
      * @param processor the processor to be used for validation
      */
-    public ContextInformationValidator(IContentAssistProcessor processor) {
+    public this(IContentAssistProcessor processor) {
         fProcessor= processor;
     }
 
--- a/dwtx/jface/text/contentassist/JFaceTextMessages.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/contentassist/JFaceTextMessages.d	Sun Aug 24 01:29:22 2008 +0200
@@ -59,7 +59,7 @@
 
     private static ResourceBundle fgResourceBundle= ResourceBundle.getBundle(RESOURCE_BUNDLE);
 
-    private JFaceTextMessages() {
+    private this() {
     }
 
     /**
--- a/dwtx/jface/text/formatter/ContentFormatter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/formatter/ContentFormatter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -99,7 +99,7 @@
          * @param refersToOffset <code>true</code> if position offset should be referenced
          * @param category the category the given position belongs to
          */
-        protected PositionReference(Position position, bool refersToOffset, String category) {
+        protected this(Position position, bool refersToOffset, String category) {
             fPosition= position;
             fRefersToOffset= refersToOffset;
             fCategory= category;
@@ -207,7 +207,7 @@
          *
          * @param category the category
          */
-        protected NonDeletingPositionUpdater(String category) {
+        protected this(String category) {
             super(category);
         }
 
@@ -255,7 +255,7 @@
          * @param positions the affected positions
          * @param offset the offset
          */
-        public UpdateAffectedPositions(int[] positions, int offset) {
+        public this(int[] positions, int offset) {
             fPositions= positions;
             fOffset= offset;
         }
@@ -310,7 +310,7 @@
      * in the partition-aware mode. There are no preconfigured formatting strategies.
      * Will use the default document partitioning if not further configured.
      */
-    public ContentFormatter() {
+    public this() {
         fPartitioning= IDocumentExtension3.DEFAULT_PARTITIONING;
     }
 
--- a/dwtx/jface/text/formatter/FormattingContextProperties.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/formatter/FormattingContextProperties.d	Sun Aug 24 01:29:22 2008 +0200
@@ -85,6 +85,6 @@
     /**
      * Ensure that this class cannot be instantiated.
      */
-    private FormattingContextProperties() {
+    private this() {
     }
 }
--- a/dwtx/jface/text/formatter/MultiPassContentFormatter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/formatter/MultiPassContentFormatter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -73,7 +73,7 @@
          *
          * @param category The position category to update its positions
          */
-        public NonDeletingPositionUpdater(final String category) {
+        public this(final String category) {
             super(category);
         }
 
@@ -128,7 +128,7 @@
      * @param partitioning the document partitioning for this formatter
      * @param type the default content type
      */
-    public MultiPassContentFormatter(final String partitioning, final String type) {
+    public this(final String partitioning, final String type) {
         fPartitioning= partitioning;
         fType= type;
     }
--- a/dwtx/jface/text/hyperlink/DefaultHyperlinkPresenter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/hyperlink/DefaultHyperlinkPresenter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -109,7 +109,7 @@
      *
      * @param store the preference store
      */
-    public DefaultHyperlinkPresenter(IPreferenceStore store) {
+    public this(IPreferenceStore store) {
         fPreferenceStore= store;
         fDisposeColor= true;
     }
@@ -119,7 +119,7 @@
      *
      * @param color the hyperlink color, to be disposed by the caller
      */
-    public DefaultHyperlinkPresenter(Color color) {
+    public this(Color color) {
         fDisposeColor= false;
         fColor= color;
     }
@@ -129,7 +129,7 @@
      *
      * @param color the hyperlink color
      */
-    public DefaultHyperlinkPresenter(RGB color) {
+    public this(RGB color) {
         fRGB= color;
         fDisposeColor= true;
     }
--- a/dwtx/jface/text/hyperlink/HyperlinkManager.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/hyperlink/HyperlinkManager.d	Sun Aug 24 01:29:22 2008 +0200
@@ -71,7 +71,7 @@
 
         String fName;
 
-        private DETECTION_STRATEGY(String name) {
+        private this(String name) {
             fName= name;
         }
 
@@ -146,7 +146,7 @@
      *
      * @param detectionStrategy the detection strategy one of {{@link #ALL}, {@link #FIRST}, {@link #LONGEST_REGION_ALL}, {@link #LONGEST_REGION_FIRST}}
      */
-    public HyperlinkManager(DETECTION_STRATEGY detectionStrategy) {
+    public this(DETECTION_STRATEGY detectionStrategy) {
         Assert.isNotNull(detectionStrategy);
         fDetectionStrategy= detectionStrategy;
     }
--- a/dwtx/jface/text/hyperlink/HyperlinkMessages.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/hyperlink/HyperlinkMessages.d	Sun Aug 24 01:29:22 2008 +0200
@@ -42,7 +42,7 @@
     
     private static final ResourceBundle RESOURCE_BUNDLE= ResourceBundle.getBundle(BUNDLE_NAME);
     
-    private HyperlinkMessages() {
+    private this() {
     }
 
     /**
--- a/dwtx/jface/text/hyperlink/MultipleHyperlinkPresenter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/hyperlink/MultipleHyperlinkPresenter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -142,7 +142,7 @@
          * @param foregroundColor the foreground color, must not be disposed
          * @param backgroundColor the background color, must not be disposed
          */
-        public LinkListInformationControl(Shell parentShell, MultipleHyperlinkHoverManager manager, Color foregroundColor, Color backgroundColor) {
+        public this(Shell parentShell, MultipleHyperlinkHoverManager manager, Color foregroundColor, Color backgroundColor) {
             super(parentShell, false);
             fManager= manager;
             fForegroundColor= foregroundColor;
@@ -524,7 +524,7 @@
          * @param viewer the viewer to show the hover in
          * @param hyperlinkPresenter the hyperlink presenter using this manager to present hyperlinks
          */
-        public MultipleHyperlinkHoverManager(MultipleHyperlinkHover hover, ITextViewer viewer, MultipleHyperlinkPresenter hyperlinkPresenter) {
+        public this(MultipleHyperlinkHover hover, ITextViewer viewer, MultipleHyperlinkPresenter hyperlinkPresenter) {
             super(hover.getHoverControlCreator());
             
             fHover= hover;
@@ -665,7 +665,7 @@
      *
      * @param store the preference store
      */
-    public MultipleHyperlinkPresenter(IPreferenceStore store) {
+    public this(IPreferenceStore store) {
         super(store);
     }
     
@@ -674,7 +674,7 @@
      *
      * @param color the hyperlink color, to be disposed by the caller
      */
-    public MultipleHyperlinkPresenter(RGB color) {
+    public this(RGB color) {
         super(color);
     }
     
--- a/dwtx/jface/text/hyperlink/URLHyperlink.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/hyperlink/URLHyperlink.d	Sun Aug 24 01:29:22 2008 +0200
@@ -54,7 +54,7 @@
      * @param region
      * @param urlString
      */
-    public URLHyperlink(IRegion region, String urlString) {
+    public this(IRegion region, String urlString) {
         Assert.isNotNull(urlString);
         Assert.isNotNull(region);
 
--- a/dwtx/jface/text/hyperlink/URLHyperlinkDetector.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/hyperlink/URLHyperlinkDetector.d	Sun Aug 24 01:29:22 2008 +0200
@@ -53,7 +53,7 @@
      *
      * @since 3.2
      */
-    public URLHyperlinkDetector() {
+    public this() {
     }
     
     /**
@@ -62,7 +62,7 @@
      * @param textViewer the text viewer in which to detect the hyperlink
      * @deprecated As of 3.2, replaced by {@link URLHyperlinkDetector}
      */
-    public URLHyperlinkDetector(ITextViewer textViewer) {
+    public this(ITextViewer textViewer) {
     }
 
     /*
--- a/dwtx/jface/text/information/InformationPresenter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/information/InformationPresenter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -254,7 +254,7 @@
      *
      * @param creator the information control creator to be used
      */
-    public InformationPresenter(IInformationControlCreator creator) {
+    public this(IInformationControlCreator creator) {
         super(creator);
         setCloser(new Closer());
         takesFocusWhenVisible(true);
--- a/dwtx/jface/text/link/InclusivePositionUpdater.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/link/InclusivePositionUpdater.d	Sun Aug 24 01:29:22 2008 +0200
@@ -53,7 +53,7 @@
      *
      * @param category the new category.
      */
-    public InclusivePositionUpdater(String category) {
+    public this(String category) {
         fCategory= category;
     }
 
--- a/dwtx/jface/text/link/LinkedModeModel.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/link/LinkedModeModel.d	Sun Aug 24 01:29:22 2008 +0200
@@ -152,7 +152,7 @@
          *
          * @param edit the edition to apply to a document.
          */
-        public Replace(TextEdit edit) {
+        public this(TextEdit edit) {
             fEdit= edit;
         }
 
@@ -437,7 +437,7 @@
      * Creates a new model.
      * @since 3.1
      */
-    public LinkedModeModel() {
+    public this() {
     }
 
     /**
--- a/dwtx/jface/text/link/LinkedModeUI.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/link/LinkedModeUI.d	Sun Aug 24 01:29:22 2008 +0200
@@ -191,7 +191,7 @@
         /**
          * @param viewer the viewer
          */
-        public EmptyTarget(ITextViewer viewer) {
+        public this(ITextViewer viewer) {
             Assert.isNotNull(viewer);
             fTextViewer= viewer;
         }
@@ -260,7 +260,7 @@
          * @param flags the exit flags
          * @param doit the doit flag for the verify event
          */
-        public ExitFlags(int flags, bool doit) {
+        public this(int flags, bool doit) {
             this.flags= flags;
             this.doit= doit;
         }
@@ -655,7 +655,7 @@
      * @param targets the non-empty list of targets upon which the linked mode
      *        UI should act
      */
-    public LinkedModeUI(LinkedModeModel model, LinkedModeUITarget[] targets) {
+    public this(LinkedModeModel model, LinkedModeUITarget[] targets) {
         constructor(model, targets);
     }
 
@@ -665,7 +665,7 @@
      * @param model the linked mode model
      * @param viewer the viewer upon which the linked mode UI should act
      */
-    public LinkedModeUI(LinkedModeModel model, ITextViewer viewer) {
+    public this(LinkedModeModel model, ITextViewer viewer) {
         constructor(model, new LinkedModeUITarget[]{new EmptyTarget(viewer)});
     }
 
@@ -676,7 +676,7 @@
      * @param viewers the non-empty list of viewers upon which the linked mode
      *        UI should act
      */
-    public LinkedModeUI(LinkedModeModel model, ITextViewer[] viewers) {
+    public this(LinkedModeModel model, ITextViewer[] viewers) {
         LinkedModeUITarget[] array= new LinkedModeUITarget[viewers.length];
         for (int i= 0; i < array.length; i++) {
             array[i]= new EmptyTarget(viewers[i]);
@@ -690,7 +690,7 @@
      * @param model the linked mode model
      * @param target the target upon which the linked mode UI should act
      */
-    public LinkedModeUI(LinkedModeModel model, LinkedModeUITarget target) {
+    public this(LinkedModeModel model, LinkedModeUITarget target) {
         constructor(model, new LinkedModeUITarget[]{target});
     }
 
--- a/dwtx/jface/text/link/LinkedPosition.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/link/LinkedPosition.d	Sun Aug 24 01:29:22 2008 +0200
@@ -54,7 +54,7 @@
      * @param length the length of the position
      * @param sequence the iteration sequence rank
      */
-    public LinkedPosition(IDocument document, int offset, int length, int sequence) {
+    public this(IDocument document, int offset, int length, int sequence) {
         super(offset, length);
         Assert.isNotNull(document);
         fDocument= document;
@@ -69,7 +69,7 @@
      * @param offset the offset of the position
      * @param length the length of the position
      */
-    public LinkedPosition(IDocument document, int offset, int length) {
+    public this(IDocument document, int offset, int length) {
         this(document, offset, length, LinkedPositionGroup.NO_STOP);
     }
 
--- a/dwtx/jface/text/link/ProposalPosition.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/link/ProposalPosition.d	Sun Aug 24 01:29:22 2008 +0200
@@ -54,7 +54,7 @@
      * @param sequence the iteration sequence rank
      * @param proposals the proposals to be shown when entering this position
      */
-    public ProposalPosition(IDocument document, int offset, int length, int sequence, ICompletionProposal[] proposals) {
+    public this(IDocument document, int offset, int length, int sequence, ICompletionProposal[] proposals) {
         super(document, offset, length, sequence);
         fProposals= copy(proposals);
     }
@@ -67,7 +67,7 @@
      * @param length the length of the position
      * @param proposals the proposals to be shown when entering this position
      */
-    public ProposalPosition(IDocument document, int offset, int length, ICompletionProposal[] proposals) {
+    public this(IDocument document, int offset, int length, ICompletionProposal[] proposals) {
         super(document, offset, length, LinkedPositionGroup.NO_STOP);
         fProposals= copy(proposals);
     }
--- a/dwtx/jface/text/link/TabStopIterator.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/link/TabStopIterator.d	Sun Aug 24 01:29:22 2008 +0200
@@ -81,7 +81,7 @@
     /** Cycling property. */
     private bool fIsCycling= false;
 
-    TabStopIterator(List positionSequence) {
+    this(List positionSequence) {
         Assert.isNotNull(positionSequence);
         fList= new ArrayList(positionSequence);
         Collections.sort(fList, fComparator);
--- a/dwtx/jface/text/presentation/PresentationReconciler.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/presentation/PresentationReconciler.d	Sun Aug 24 01:29:22 2008 +0200
@@ -288,7 +288,7 @@
      * registered with this reconciler by default. The default partitioning
      * <code>IDocumentExtension3.DEFAULT_PARTITIONING</code> is used.
      */
-    public PresentationReconciler() {
+    public this() {
         super();
         fPartitioning= IDocumentExtension3.DEFAULT_PARTITIONING;
         fPositionCategory= TRACKED_PARTITION + hashCode();
--- a/dwtx/jface/text/projection/ChildDocument.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/projection/ChildDocument.d	Sun Aug 24 01:29:22 2008 +0200
@@ -57,7 +57,7 @@
          * @param regionOffset the offset of the region
          * @param regionLength the length of the region
          */
-        public VisibleRegion(int regionOffset, int regionLength) {
+        public this(int regionOffset, int regionLength) {
             super(regionOffset, regionLength);
         }
 
@@ -78,7 +78,7 @@
      *
      * @param masterDocument @inheritDoc
      */
-    public ChildDocument(IDocument masterDocument) {
+    public this(IDocument masterDocument) {
         super(masterDocument);
     }
 
--- a/dwtx/jface/text/projection/Fragment.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/projection/Fragment.d	Sun Aug 24 01:29:22 2008 +0200
@@ -53,7 +53,7 @@
      * @param offset the offset of the fragment
      * @param length the length of the fragment
      */
-    public Fragment(int offset, int length) {
+    public this(int offset, int length) {
         super(offset, length);
     }
 }
--- a/dwtx/jface/text/projection/FragmentUpdater.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/projection/FragmentUpdater.d	Sun Aug 24 01:29:22 2008 +0200
@@ -54,7 +54,7 @@
      *
      * @param fragmentCategory the position category used for managing the fragments of a document
      */
-    protected FragmentUpdater(String fragmentCategory) {
+    protected this(String fragmentCategory) {
         super(fragmentCategory);
     }
 
--- a/dwtx/jface/text/projection/ProjectionDocument.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/projection/ProjectionDocument.d	Sun Aug 24 01:29:22 2008 +0200
@@ -124,7 +124,7 @@
      *
      * @param masterDocument the master document
      */
-    public ProjectionDocument(IDocument masterDocument) {
+    public this(IDocument masterDocument) {
         super();
 
         fMasterDocument= masterDocument;
--- a/dwtx/jface/text/projection/ProjectionDocumentEvent.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/projection/ProjectionDocumentEvent.d	Sun Aug 24 01:29:22 2008 +0200
@@ -76,7 +76,7 @@
      * @param text the replacement text
      * @param masterEvent the original master event
      */
-    public ProjectionDocumentEvent(IDocument doc, int offset, int length, String text, DocumentEvent masterEvent) {
+    public this(IDocument doc, int offset, int length, String text, DocumentEvent masterEvent) {
         super(doc, offset, length, text, masterEvent);
         fChangeType= CONTENT_CHANGE;
     }
@@ -93,7 +93,7 @@
      * @param masterOffset the offset in the master document
      * @param masterLength the length in the master document
      */
-    public ProjectionDocumentEvent(IDocument doc, int offset, int length, String text, int masterOffset, int masterLength) {
+    public this(IDocument doc, int offset, int length, String text, int masterOffset, int masterLength) {
         super(doc, offset, length, text, null);
         fChangeType= PROJECTION_CHANGE;
         fMasterOffset= masterOffset;
@@ -116,7 +116,7 @@
      * @param masterLength the length in the master document
      * @param masterEvent the master document event
      */
-    public ProjectionDocumentEvent(IDocument doc, int offset, int length, String text, int masterOffset, int masterLength, DocumentEvent masterEvent) {
+    public this(IDocument doc, int offset, int length, String text, int masterOffset, int masterLength, DocumentEvent masterEvent) {
         super(doc, offset, length, text, masterEvent);
         fChangeType= PROJECTION_CHANGE;
         fMasterOffset= masterOffset;
--- a/dwtx/jface/text/projection/ProjectionMapping.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/projection/ProjectionMapping.d	Sun Aug 24 01:29:22 2008 +0200
@@ -77,7 +77,7 @@
      * @param slaveDocument the slave document
      * @param segmentsCategory the position category of the projection document used to manage the fragments
      */
-    public ProjectionMapping(IDocument masterDocument, String fragmentsCategory, IDocument slaveDocument, String segmentsCategory) {
+    public this(IDocument masterDocument, String fragmentsCategory, IDocument slaveDocument, String segmentsCategory) {
         fMasterDocument= masterDocument;
         fFragmentsCategory= fragmentsCategory;
         fSlaveDocument= slaveDocument;
--- a/dwtx/jface/text/projection/ProjectionTextStore.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/projection/ProjectionTextStore.d	Sun Aug 24 01:29:22 2008 +0200
@@ -93,7 +93,7 @@
      * @param masterDocument the master document
      * @param mapping the document information mapping
      */
-    public ProjectionTextStore(IDocument masterDocument, IMinimalMapping mapping) {
+    public this(IDocument masterDocument, IMinimalMapping mapping) {
         fMasterDocument= masterDocument;
         fMapping= mapping;
     }
--- a/dwtx/jface/text/projection/Segment.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/projection/Segment.d	Sun Aug 24 01:29:22 2008 +0200
@@ -55,7 +55,7 @@
      * @param offset the offset of the segment
      * @param length the length of the segment
      */
-    public Segment(int offset, int length) {
+    public this(int offset, int length) {
         super(offset, length);
     }
 
--- a/dwtx/jface/text/projection/SegmentUpdater.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/projection/SegmentUpdater.d	Sun Aug 24 01:29:22 2008 +0200
@@ -55,7 +55,7 @@
      *
      * @param segmentCategory the position category used for managing the segments of a projection document
      */
-    protected SegmentUpdater(String segmentCategory) {
+    protected this(String segmentCategory) {
         super(segmentCategory);
     }
 
--- a/dwtx/jface/text/quickassist/QuickAssistAssistant.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/quickassist/QuickAssistAssistant.d	Sun Aug 24 01:29:22 2008 +0200
@@ -70,7 +70,7 @@
 
         private IQuickAssistProcessor fQuickAssistProcessor;
 
-        ContentAssistProcessor(IQuickAssistProcessor processor) {
+        this(IQuickAssistProcessor processor) {
             fQuickAssistProcessor= processor;
         }
         
@@ -125,7 +125,7 @@
     private QuickAssistAssistantImpl fQuickAssistAssistantImpl;
     private IQuickAssistProcessor fQuickAssistProcessor;
     
-    public QuickAssistAssistant() {
+    public this() {
         fQuickAssistAssistantImpl= new QuickAssistAssistantImpl();
         fQuickAssistAssistantImpl.enableAutoActivation(false);
         fQuickAssistAssistantImpl.enableAutoInsert(false);
--- a/dwtx/jface/text/reconciler/AbstractReconcileStep.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/reconciler/AbstractReconcileStep.d	Sun Aug 24 01:29:22 2008 +0200
@@ -55,7 +55,7 @@
      *
      * @param step the reconcile step
      */
-    public AbstractReconcileStep(IReconcileStep step) {
+    public this(IReconcileStep step) {
         Assert.isNotNull(step);
         fNextStep= step;
         fNextStep.setPreviousStep(this);
@@ -64,7 +64,7 @@
     /**
      * Creates the last reconcile step of the pipe.
      */
-    public AbstractReconcileStep() {
+    public this() {
     }
 
     public bool isLastStep() {
--- a/dwtx/jface/text/reconciler/AbstractReconciler.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/reconciler/AbstractReconciler.d	Sun Aug 24 01:29:22 2008 +0200
@@ -85,7 +85,7 @@
          *
          * @param name the thread's name
          */
-        public BackgroundThread(String name) {
+        public this(String name) {
             super(name);
             setPriority(Thread.MIN_PRIORITY);
             setDaemon(true);
@@ -369,7 +369,7 @@
     /**
      * Creates a new reconciler without configuring it.
      */
-    protected AbstractReconciler() {
+    protected this() {
         fProgressMonitor= new NullProgressMonitor();
     }
 
--- a/dwtx/jface/text/reconciler/DirtyRegion.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/reconciler/DirtyRegion.d	Sun Aug 24 01:29:22 2008 +0200
@@ -62,7 +62,7 @@
      * @param type the type of change that this region represents: {@link #INSERT} {@link #REMOVE}
      * @param text the substitution text
      */
-    public DirtyRegion(int offset, int length, String type, String text) {
+    public this(int offset, int length, String type, String text) {
         fOffset= offset;
         fLength= length;
         fType= normalizeTypeValue(type);
--- a/dwtx/jface/text/reconciler/DirtyRegionQueue.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/reconciler/DirtyRegionQueue.d	Sun Aug 24 01:29:22 2008 +0200
@@ -48,7 +48,7 @@
     /**
      * Creates a new empty dirty region.
      */
-    public DirtyRegionQueue() {
+    public this() {
         super();
     }
 
--- a/dwtx/jface/text/reconciler/MonoReconciler.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/reconciler/MonoReconciler.d	Sun Aug 24 01:29:22 2008 +0200
@@ -63,7 +63,7 @@
      * @param strategy the reconciling strategy to be used
      * @param isIncremental the indication whether strategy is incremental or not
      */
-    public MonoReconciler(IReconcilingStrategy strategy, bool isIncremental) {
+    public this(IReconcilingStrategy strategy, bool isIncremental) {
         Assert.isNotNull(strategy);
         fStrategy= strategy;
         if (fStrategy instanceof IReconcilingStrategyExtension) {
--- a/dwtx/jface/text/reconciler/Reconciler.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/reconciler/Reconciler.d	Sun Aug 24 01:29:22 2008 +0200
@@ -75,7 +75,7 @@
      * are no predefined reconciling strategies. The partitioning it uses
      * is the default partitioning {@link IDocumentExtension3#DEFAULT_PARTITIONING}.
      */
-    public Reconciler() {
+    public this() {
         super();
         fPartitioning= IDocumentExtension3.DEFAULT_PARTITIONING;
     }
--- a/dwtx/jface/text/revisions/IRevisionRulerColumnExtension.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/revisions/IRevisionRulerColumnExtension.d	Sun Aug 24 01:29:22 2008 +0200
@@ -44,7 +44,7 @@
      */
     final class RenderingMode {
         private final String fName;
-        private RenderingMode(String name) {
+        private this(String name) {
             Assert.isLegal(name !is null);
             fName= name;
         }
--- a/dwtx/jface/text/revisions/Revision.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/revisions/Revision.d	Sun Aug 24 01:29:22 2008 +0200
@@ -56,7 +56,7 @@
     /**
      * Creates a new revision.
      */
-    protected Revision() {
+    protected this() {
     }
 
     /**
--- a/dwtx/jface/text/revisions/RevisionEvent.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/revisions/RevisionEvent.d	Sun Aug 24 01:29:22 2008 +0200
@@ -43,7 +43,7 @@
      * 
      * @param information the revision info
      */
-    public RevisionEvent(RevisionInformation information) {
+    public this(RevisionInformation information) {
         Assert.isLegal(information !is null);
         fInformation= information;
     }
--- a/dwtx/jface/text/revisions/RevisionInformation.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/revisions/RevisionInformation.d	Sun Aug 24 01:29:22 2008 +0200
@@ -73,7 +73,7 @@
     /**
      * Creates a new revision information model.
      */
-    public RevisionInformation() {
+    public this() {
     }
 
     /**
--- a/dwtx/jface/text/revisions/RevisionRange.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/revisions/RevisionRange.d	Sun Aug 24 01:29:22 2008 +0200
@@ -38,7 +38,7 @@
     private final int fStartLine;
     private final int fNumberOfLines;
 
-    RevisionRange(Revision revision, ILineRange range) {
+    this(Revision revision, ILineRange range) {
         Assert.isLegal(revision !is null);
         fRevision= revision;
         fStartLine= range.getStartLine();
--- a/dwtx/jface/text/rules/BufferedRuleBasedScanner.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/BufferedRuleBasedScanner.d	Sun Aug 24 01:29:22 2008 +0200
@@ -71,7 +71,7 @@
      * Creates a new buffered rule based scanner which does
      * not have any rule and a default buffer size of 500 characters.
      */
-    protected BufferedRuleBasedScanner() {
+    protected this() {
         super();
     }
 
@@ -82,7 +82,7 @@
      *
      * @param size the buffer size
      */
-    public BufferedRuleBasedScanner(int size) {
+    public this(int size) {
         super();
         setBufferSize(size);
     }
--- a/dwtx/jface/text/rules/DefaultDamagerRepairer.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/DefaultDamagerRepairer.d	Sun Aug 24 01:29:22 2008 +0200
@@ -90,7 +90,7 @@
      *
      * @deprecated use DefaultDamagerRepairer(ITokenScanner) instead
      */
-    public DefaultDamagerRepairer(ITokenScanner scanner, TextAttribute defaultTextAttribute) {
+    public this(ITokenScanner scanner, TextAttribute defaultTextAttribute) {
 
         Assert.isNotNull(defaultTextAttribute);
 
@@ -104,7 +104,7 @@
      *
      * @param scanner the token scanner to be used, may not be <code>null</code>
      */
-    public DefaultDamagerRepairer(ITokenScanner scanner) {
+    public this(ITokenScanner scanner) {
 
         Assert.isNotNull(scanner);
 
--- a/dwtx/jface/text/rules/DefaultPartitioner.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/DefaultPartitioner.d	Sun Aug 24 01:29:22 2008 +0200
@@ -125,7 +125,7 @@
      * @param scanner the scanner this partitioner is supposed to use
      * @param legalContentTypes the legal content types of this partitioner
      */
-    public DefaultPartitioner(IPartitionTokenScanner scanner, String[] legalContentTypes) {
+    public this(IPartitionTokenScanner scanner, String[] legalContentTypes) {
         fScanner= scanner;
         fLegalContentTypes= TextUtilities.copy(legalContentTypes);
         fPositionCategory= CONTENT_TYPES_CATEGORY + hashCode();
--- a/dwtx/jface/text/rules/EndOfLineRule.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/EndOfLineRule.d	Sun Aug 24 01:29:22 2008 +0200
@@ -56,7 +56,7 @@
      * @param startSequence the pattern's start sequence
      * @param token the token to be returned on success
      */
-    public EndOfLineRule(String startSequence, IToken token) {
+    public this(String startSequence, IToken token) {
         this(startSequence, token, (char) 0);
     }
 
@@ -70,7 +70,7 @@
      * @param token the token to be returned on success
      * @param escapeCharacter the escape character
      */
-    public EndOfLineRule(String startSequence, IToken token, char escapeCharacter) {
+    public this(String startSequence, IToken token, char escapeCharacter) {
         super(startSequence, null, token, escapeCharacter, true);
     }
 
@@ -91,7 +91,7 @@
      *        terminate the line, even if <code>breakOnEOL</code> is true
      * @since 3.0
      */
-    public EndOfLineRule(String startSequence, IToken token, char escapeCharacter, bool escapeContinuesLine) {
+    public this(String startSequence, IToken token, char escapeCharacter, bool escapeContinuesLine) {
         super(startSequence, null, token, escapeCharacter, true, escapeContinuesLine);
     }
 }
--- a/dwtx/jface/text/rules/FastPartitioner.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/FastPartitioner.d	Sun Aug 24 01:29:22 2008 +0200
@@ -133,7 +133,7 @@
      * @param scanner the scanner this partitioner is supposed to use
      * @param legalContentTypes the legal content types of this partitioner
      */
-    public FastPartitioner(IPartitionTokenScanner scanner, String[] legalContentTypes) {
+    public this(IPartitionTokenScanner scanner, String[] legalContentTypes) {
         fScanner= scanner;
         fLegalContentTypes= TextUtilities.copy(legalContentTypes);
         fPositionCategory= CONTENT_TYPES_CATEGORY + hashCode();
--- a/dwtx/jface/text/rules/MultiLineRule.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/MultiLineRule.d	Sun Aug 24 01:29:22 2008 +0200
@@ -56,7 +56,7 @@
      * @param endSequence the pattern's end sequence
      * @param token the token to be returned on success
      */
-    public MultiLineRule(String startSequence, String endSequence, IToken token) {
+    public this(String startSequence, String endSequence, IToken token) {
         this(startSequence, endSequence, token, (char) 0);
     }
 
@@ -70,7 +70,7 @@
      * @param token the token to be returned on success
      * @param escapeCharacter the escape character
      */
-    public MultiLineRule(String startSequence, String endSequence, IToken token, char escapeCharacter) {
+    public this(String startSequence, String endSequence, IToken token, char escapeCharacter) {
         this(startSequence, endSequence, token, escapeCharacter, false);
     }
 
@@ -87,7 +87,7 @@
      * @param breaksOnEOF indicates whether the end of the file terminates this rule successfully
      * @since 2.1
      */
-    public MultiLineRule(String startSequence, String endSequence, IToken token, char escapeCharacter, bool breaksOnEOF) {
+    public this(String startSequence, String endSequence, IToken token, char escapeCharacter, bool breaksOnEOF) {
         super(startSequence, endSequence, token, escapeCharacter, false, breaksOnEOF);
     }
 }
--- a/dwtx/jface/text/rules/NumberRule.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/NumberRule.d	Sun Aug 24 01:29:22 2008 +0200
@@ -62,7 +62,7 @@
      *
      * @param token the token to be returned
      */
-    public NumberRule(IToken token) {
+    public this(IToken token) {
         Assert.isNotNull(token);
         fToken= token;
     }
--- a/dwtx/jface/text/rules/PatternRule.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/PatternRule.d	Sun Aug 24 01:29:22 2008 +0200
@@ -124,7 +124,7 @@
      * @param escapeCharacter any character following this one will be ignored
      * @param breaksOnEOL indicates whether the end of the line also terminates the pattern
      */
-    public PatternRule(String startSequence, String endSequence, IToken token, char escapeCharacter, bool breaksOnEOL) {
+    public this(String startSequence, String endSequence, IToken token, char escapeCharacter, bool breaksOnEOL) {
         Assert.isTrue(startSequence !is null && startSequence.length() > 0);
         Assert.isTrue(endSequence !is null || breaksOnEOL);
         Assert.isNotNull(token);
@@ -150,7 +150,7 @@
      * @param breaksOnEOF indicates whether the end of the file also terminates the pattern
      * @since 2.1
      */
-    public PatternRule(String startSequence, String endSequence, IToken token, char escapeCharacter, bool breaksOnEOL, bool breaksOnEOF) {
+    public this(String startSequence, String endSequence, IToken token, char escapeCharacter, bool breaksOnEOL, bool breaksOnEOF) {
         this(startSequence, endSequence, token, escapeCharacter, breaksOnEOL);
         fBreaksOnEOF= breaksOnEOF;
     }
@@ -174,7 +174,7 @@
      *        terminate the pattern, even if <code>breakOnEOL</code> is set
      * @since 3.0
      */
-    public PatternRule(String startSequence, String endSequence, IToken token, char escapeCharacter, bool breaksOnEOL, bool breaksOnEOF, bool escapeContinuesLine) {
+    public this(String startSequence, String endSequence, IToken token, char escapeCharacter, bool breaksOnEOL, bool breaksOnEOF, bool escapeContinuesLine) {
         this(startSequence, endSequence, token, escapeCharacter, breaksOnEOL, breaksOnEOF);
         fEscapeContinuesLine= escapeContinuesLine;
     }
--- a/dwtx/jface/text/rules/RuleBasedDamagerRepairer.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/RuleBasedDamagerRepairer.d	Sun Aug 24 01:29:22 2008 +0200
@@ -60,7 +60,7 @@
      *
      * @deprecated use RuleBasedDamagerRepairer(RuleBasedScanner) instead
      */
-    public RuleBasedDamagerRepairer(RuleBasedScanner scanner, TextAttribute defaultTextAttribute) {
+    public this(RuleBasedScanner scanner, TextAttribute defaultTextAttribute) {
         super(scanner, defaultTextAttribute);
     }
 
@@ -71,7 +71,7 @@
      * @param scanner the rule based scanner to be used, may not be <code>null</code>
      * @since 2.0
      */
-    public RuleBasedDamagerRepairer(RuleBasedScanner scanner) {
+    public this(RuleBasedScanner scanner) {
         super(scanner);
     }
 }
--- a/dwtx/jface/text/rules/RuleBasedPartitioner.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/RuleBasedPartitioner.d	Sun Aug 24 01:29:22 2008 +0200
@@ -116,7 +116,7 @@
      * @param scanner the scanner this partitioner is supposed to use
      * @param legalContentTypes the legal content types of this partitioner
      */
-    public RuleBasedPartitioner(RuleBasedScanner scanner, String[] legalContentTypes) {
+    public this(RuleBasedScanner scanner, String[] legalContentTypes) {
         fScanner= scanner;
         fLegalContentTypes= TextUtilities.copy(legalContentTypes);
         fPositionCategory= CONTENT_TYPES_CATEGORY + hashCode();
--- a/dwtx/jface/text/rules/RuleBasedScanner.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/RuleBasedScanner.d	Sun Aug 24 01:29:22 2008 +0200
@@ -84,7 +84,7 @@
     /**
      * Creates a new rule based scanner which does not have any rule.
      */
-    public RuleBasedScanner() {
+    public this() {
     }
 
     /**
--- a/dwtx/jface/text/rules/SingleLineRule.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/SingleLineRule.d	Sun Aug 24 01:29:22 2008 +0200
@@ -58,7 +58,7 @@
      * @param endSequence the pattern's end sequence
      * @param token the token to be returned on success
      */
-    public SingleLineRule(String startSequence, String endSequence, IToken token) {
+    public this(String startSequence, String endSequence, IToken token) {
         this(startSequence, endSequence, token, (char) 0);
     }
 
@@ -73,7 +73,7 @@
      * @param token the token to be returned on success
      * @param escapeCharacter the escape character
      */
-    public SingleLineRule(String startSequence, String endSequence, IToken token, char escapeCharacter) {
+    public this(String startSequence, String endSequence, IToken token, char escapeCharacter) {
         this(startSequence, endSequence, token, escapeCharacter, false);
     }
 
@@ -91,7 +91,7 @@
      * @param breaksOnEOF indicates whether the end of the file successfully terminates this rule
      * @since 2.1
      */
-    public SingleLineRule(String startSequence, String endSequence, IToken token, char escapeCharacter, bool breaksOnEOF) {
+    public this(String startSequence, String endSequence, IToken token, char escapeCharacter, bool breaksOnEOF) {
         super(startSequence, endSequence, token, escapeCharacter, true, breaksOnEOF);
     }
 
@@ -113,7 +113,7 @@
      *        terminate the line, even if <code>breakOnEOL</code> is true
      * @since 3.0
      */
-    public SingleLineRule(String startSequence, String endSequence, IToken token, char escapeCharacter, bool breaksOnEOF, bool escapeContinuesLine) {
+    public this(String startSequence, String endSequence, IToken token, char escapeCharacter, bool breaksOnEOF, bool escapeContinuesLine) {
         super(startSequence, endSequence, token, escapeCharacter, true, breaksOnEOF, escapeContinuesLine);
     }
 }
--- a/dwtx/jface/text/rules/Token.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/Token.d	Sun Aug 24 01:29:22 2008 +0200
@@ -90,7 +90,7 @@
      * @param type the type of the token
      * @since 2.0
      */
-    private Token(int type) {
+    private this(int type) {
         fType= type;
         fData= null;
     }
@@ -101,7 +101,7 @@
      *
      * @param data the data attached to the newly created token
      */
-    public Token(Object data) {
+    public this(Object data) {
         fType= T_OTHER;
         fData= data;
     }
--- a/dwtx/jface/text/rules/WhitespaceRule.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/WhitespaceRule.d	Sun Aug 24 01:29:22 2008 +0200
@@ -64,7 +64,7 @@
      *
      * @param detector the rule's whitespace detector, may not be <code>null</code>
      */
-    public WhitespaceRule(IWhitespaceDetector detector) {
+    public this(IWhitespaceDetector detector) {
         Assert.isNotNull(detector);
         fDetector= detector;
     }
--- a/dwtx/jface/text/rules/WordPatternRule.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/WordPatternRule.d	Sun Aug 24 01:29:22 2008 +0200
@@ -68,7 +68,7 @@
      * @param endSequence the end sequence of the word pattern
      * @param token the token to be returned on success
      */
-    public WordPatternRule(IWordDetector detector, String startSequence, String endSequence, IToken token) {
+    public this(IWordDetector detector, String startSequence, String endSequence, IToken token) {
         this(detector, startSequence, endSequence, token, (char)0);
     }
 
@@ -85,7 +85,7 @@
      * @param token the token to be returned on success
      * @param escapeCharacter the escape character
      */
-    public WordPatternRule(IWordDetector detector, String startSequence, String endSequence, IToken token, char escapeCharacter) {
+    public this(IWordDetector detector, String startSequence, String endSequence, IToken token, char escapeCharacter) {
         super(startSequence, endSequence, token, escapeCharacter);
         Assert.isNotNull(detector);
         fDetector= detector;
--- a/dwtx/jface/text/rules/WordRule.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/rules/WordRule.d	Sun Aug 24 01:29:22 2008 +0200
@@ -88,7 +88,7 @@
      * @param detector the word detector to be used by this rule, may not be <code>null</code>
      * @see #addWord(String, IToken)
      */
-    public WordRule(IWordDetector detector) {
+    public this(IWordDetector detector) {
         this(detector, Token.UNDEFINED, false);
     }
 
@@ -102,7 +102,7 @@
      *          if nothing else is specified, may not be <code>null</code>
      * @see #addWord(String, IToken)
      */
-    public WordRule(IWordDetector detector, IToken defaultToken) {
+    public this(IWordDetector detector, IToken defaultToken) {
         this(detector, defaultToken, false);
     }
 
@@ -118,7 +118,7 @@
      * @see #addWord(String, IToken)
      * @since 3.3
      */
-    public WordRule(IWordDetector detector, IToken defaultToken, bool ignoreCase) {
+    public this(IWordDetector detector, IToken defaultToken, bool ignoreCase) {
         Assert.isNotNull(detector);
         Assert.isNotNull(defaultToken);
 
--- a/dwtx/jface/text/source/AbstractRulerColumn.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/AbstractRulerColumn.d	Sun Aug 24 01:29:22 2008 +0200
@@ -252,7 +252,7 @@
     /**
      * Creates a new ruler.
      */
-    protected AbstractRulerColumn() {
+    protected this() {
     }
 
     /*
--- a/dwtx/jface/text/source/Annotation.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/Annotation.d	Sun Aug 24 01:29:22 2008 +0200
@@ -121,7 +121,7 @@
     /**
      * Creates a new annotation that is not persistent and type less.
      */
-    protected Annotation() {
+    protected this() {
         this(null, false, null);
     }
 
@@ -134,7 +134,7 @@
      * @param text the text associated with this annotation
      * @since 3.0
      */
-    public Annotation(String type, bool isPersistent, String text) {
+    public this(String type, bool isPersistent, String text) {
         fType= type;
         fIsPersistent= isPersistent;
         fText= text;
@@ -146,7 +146,7 @@
      * @param isPersistent <code>true</code> if persistent, <code>false</code> otherwise
      * @since 3.0
      */
-    public Annotation(bool isPersistent) {
+    public this(bool isPersistent) {
         this(null, isPersistent, null);
     }
 
--- a/dwtx/jface/text/source/AnnotationBarHoverManager.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/AnnotationBarHoverManager.d	Sun Aug 24 01:29:22 2008 +0200
@@ -155,7 +155,7 @@
         /**
          * Creates a new information control closer.
          */
-        public Closer() {
+        public this() {
         }
 
         /*
@@ -385,7 +385,7 @@
      * @param creator the information control creator
      * @deprecated As of 2.1, replaced by {@link AnnotationBarHoverManager#AnnotationBarHoverManager(IVerticalRulerInfo, ISourceViewer, IAnnotationHover, IInformationControlCreator)}
      */
-    public AnnotationBarHoverManager(ISourceViewer sourceViewer, IVerticalRuler ruler, IAnnotationHover annotationHover, IInformationControlCreator creator) {
+    public this(ISourceViewer sourceViewer, IVerticalRuler ruler, IAnnotationHover annotationHover, IInformationControlCreator creator) {
         this(ruler, sourceViewer, annotationHover, creator);
     }
 
@@ -399,7 +399,7 @@
      * @param creator the information control creator
      * @since 2.1
      */
-    public AnnotationBarHoverManager(IVerticalRulerInfo rulerInfo, ISourceViewer sourceViewer, IAnnotationHover annotationHover, IInformationControlCreator creator) {
+    public this(IVerticalRulerInfo rulerInfo, ISourceViewer sourceViewer, IAnnotationHover annotationHover, IInformationControlCreator creator) {
         super(creator);
 
         Assert.isNotNull(sourceViewer);
--- a/dwtx/jface/text/source/AnnotationColumn.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/AnnotationColumn.d	Sun Aug 24 01:29:22 2008 +0200
@@ -91,7 +91,7 @@
      * @param width the width of this column
      * @deprecated
      */
-    public AnnotationColumn(int width) {
+    public this(int width) {
         super(width);
     }
 }
--- a/dwtx/jface/text/source/AnnotationMap.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/AnnotationMap.d	Sun Aug 24 01:29:22 2008 +0200
@@ -112,7 +112,7 @@
      *
      * @param capacity the capacity
      */
-    public AnnotationMap(int capacity) {
+    public this(int capacity) {
         fInternalMap= new HashMap(capacity);
     }
 
--- a/dwtx/jface/text/source/AnnotationModel.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/AnnotationModel.d	Sun Aug 24 01:29:22 2008 +0200
@@ -138,7 +138,7 @@
          * @param canEndAfter include annotations ending after region
          * @see IAnnotationModelExtension2
          */
-        public RegionIterator(Iterator parentIterator, IAnnotationModel model, int offset, int length, bool canStartBefore, bool canEndAfter) {
+        public this(Iterator parentIterator, IAnnotationModel model, int offset, int length, bool canStartBefore, bool canEndAfter) {
             fParentIterator= parentIterator;
             fModel= model;
             fRegion= new Position(offset, length);
@@ -215,7 +215,7 @@
          * @param positions positions to iterate over
          * @param map a map to map positions to annotations
          */
-        public AnnotationsInterator(Position[] positions, Map map) {
+        public this(Position[] positions, Map map) {
             fPositions= positions;
             fIndex= 0;
             fMap= map;
@@ -272,7 +272,7 @@
         private Object fCurrentElement;
 
 
-        public MetaIterator(Iterator iterator) {
+        public this(Iterator iterator) {
             fSuperIterator= iterator;
             fCurrent= (Iterator) fSuperIterator.next(); // there is at least one.
         }
@@ -373,7 +373,7 @@
      * Creates a new annotation model. The annotation is empty, i.e. does not
      * manage any annotations and is not connected to any document.
      */
-    public AnnotationModel() {
+    public this() {
         fAnnotations= new AnnotationMap(10);
         fPositions= new IdentityHashMap(10);
         fAnnotationModelListeners= new ArrayList(2);
--- a/dwtx/jface/text/source/AnnotationModelEvent.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/AnnotationModelEvent.d	Sun Aug 24 01:29:22 2008 +0200
@@ -133,7 +133,7 @@
      *
      * @param model the model
      */
-    public AnnotationModelEvent(IAnnotationModel model) {
+    public this(IAnnotationModel model) {
         this(model, true);
     }
 
@@ -144,7 +144,7 @@
      * @param isWorldChange <code>true</code> if world change
      * @since 3.0
      */
-    public AnnotationModelEvent(IAnnotationModel model, bool isWorldChange) {
+    public this(IAnnotationModel model, bool isWorldChange) {
         fAnnotationModel= model;
         fIsWorldChange= isWorldChange;
     }
--- a/dwtx/jface/text/source/AnnotationPainter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/AnnotationPainter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -303,7 +303,7 @@
         
         int fUnderlineStyle;
 
-        public UnderlineStrategy(int style) {
+        public this(int style) {
             Assert.isLegal(style is DWT.UNDERLINE_SINGLE || style is DWT.UNDERLINE_DOUBLE || style is DWT.UNDERLINE_ERROR || style is DWT.UNDERLINE_SQUIGGLE);
             fUnderlineStyle= style;
         }
@@ -325,7 +325,7 @@
         
         int fBorderStyle;
 
-        public BoxStrategy(int style) {
+        public this(int style) {
             Assert.isLegal(style is DWT.BORDER_DASH || style is DWT.BORDER_DASH || style is DWT.BORDER_SOLID);
             fBorderStyle= style;
         }
@@ -515,7 +515,7 @@
      * @param sourceViewer the source viewer for this painter
      * @param access the annotation access for this painter
      */
-    public AnnotationPainter(ISourceViewer sourceViewer, IAnnotationAccess access) {
+    public this(ISourceViewer sourceViewer, IAnnotationAccess access) {
         fSourceViewer= sourceViewer;
         fAnnotationAccess= access;
         fTextWidget= sourceViewer.getTextWidget();
--- a/dwtx/jface/text/source/AnnotationRulerColumn.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/AnnotationRulerColumn.d	Sun Aug 24 01:29:22 2008 +0200
@@ -174,7 +174,7 @@
         Annotation annotation;
         Position position;
 
-        Tuple(Annotation annotation, Position position) {
+        this(Annotation annotation, Position position) {
             this.annotation= annotation;
             this.position= position;
         }
@@ -271,7 +271,7 @@
      * @param annotationAccess the annotation access
      * @since 3.0
      */
-    public AnnotationRulerColumn(IAnnotationModel model, int width, IAnnotationAccess annotationAccess) {
+    public this(IAnnotationModel model, int width, IAnnotationAccess annotationAccess) {
         this(width, annotationAccess);
         fAllowSetModel= false;
         fModel= model;
@@ -285,7 +285,7 @@
      * @param annotationAccess the annotation access
      * @since 3.0
      */
-    public AnnotationRulerColumn(int width, IAnnotationAccess annotationAccess) {
+    public this(int width, IAnnotationAccess annotationAccess) {
         fWidth= width;
         if (annotationAccess instanceof IAnnotationAccessExtension)
             fAnnotationAccessExtension= (IAnnotationAccessExtension) annotationAccess;
@@ -297,7 +297,7 @@
      * @param model the annotation model to get the annotations from
      * @param width the width of the vertical ruler
      */
-    public AnnotationRulerColumn(IAnnotationModel model, int width) {
+    public this(IAnnotationModel model, int width) {
         fWidth= width;
         fAllowSetModel= false;
         fModel= model;
@@ -309,7 +309,7 @@
      *
      * @param width the width of the vertical ruler
      */
-    public AnnotationRulerColumn(int width) {
+    public this(int width) {
         fWidth= width;
     }
 
--- a/dwtx/jface/text/source/ChangeRulerColumn.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/ChangeRulerColumn.d	Sun Aug 24 01:29:22 2008 +0200
@@ -230,7 +230,7 @@
      * 
      * @deprecated since 3.2 use {@link #ChangeRulerColumn(ISharedTextColors)} instead
      */
-    public ChangeRulerColumn() {
+    public this() {
         fRevisionPainter= null;
         fDiffPainter= new DiffPainter(this, null);
     }
@@ -241,7 +241,7 @@
      * @param sharedColors the colors to look up RGBs
      * @since 3.2
      */
-    public ChangeRulerColumn(ISharedTextColors sharedColors) {
+    public this(ISharedTextColors sharedColors) {
         Assert.isNotNull(sharedColors);
         fRevisionPainter= new RevisionPainter(this, sharedColors);
         fDiffPainter= new DiffPainter(this, null); // no shading
--- a/dwtx/jface/text/source/CompositeRuler.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/CompositeRuler.d	Sun Aug 24 01:29:22 2008 +0200
@@ -144,7 +144,7 @@
         /**
          * Creates the new ruler layout.
          */
-        protected RulerLayout() {
+        protected this() {
         }
 
         /*
@@ -208,7 +208,7 @@
          * @param parent the parent composite
          * @param style the DWT styles
          */
-        public CompositeRulerCanvas(Composite parent, int style) {
+        public this(Composite parent, int style) {
             super(parent, style);
             fMenuDetectListener= new Listener() {
                 public void handleEvent(Event event) {
@@ -594,7 +594,7 @@
     /**
      * Constructs a new composite vertical ruler.
      */
-    public CompositeRuler() {
+    public this() {
         this(0);
     }
 
@@ -603,7 +603,7 @@
      *
      * @param gap
      */
-    public CompositeRuler(int gap) {
+    public this(int gap) {
         fGap= gap;
     }
 
--- a/dwtx/jface/text/source/ContentAssistantFacade.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/ContentAssistantFacade.d	Sun Aug 24 01:29:22 2008 +0200
@@ -104,7 +104,7 @@
      * 
      * @param contentAssistant the content assistant which implements {@link IContentAssistantExtension2} and {@link IContentAssistantExtension4}
      */
-    public ContentAssistantFacade(IContentAssistant contentAssistant) {
+    public this(IContentAssistant contentAssistant) {
         Assert.isLegal(contentAssistant instanceof IContentAssistantExtension4 && contentAssistant instanceof IContentAssistantExtension4);
         fContentAssistant= contentAssistant;
     }
--- a/dwtx/jface/text/source/DefaultAnnotationHover.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/DefaultAnnotationHover.d	Sun Aug 24 01:29:22 2008 +0200
@@ -109,7 +109,7 @@
      * 
      * @since 3.4
      */
-    public DefaultAnnotationHover() {
+    public this() {
         this(false);
     }
 
@@ -119,7 +119,7 @@
      * @param showLineNumber <code>true</code> if the line number should be shown when no annotation is found
      * @since 3.4
      */
-    public DefaultAnnotationHover(bool showLineNumber) {
+    public this(bool showLineNumber) {
         fShowLineNumber= showLineNumber;
     }
     
--- a/dwtx/jface/text/source/DefaultCharacterPairMatcher.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/DefaultCharacterPairMatcher.d	Sun Aug 24 01:29:22 2008 +0200
@@ -115,7 +115,7 @@
      * @param chars a list of characters
      * @param partitioning the partitioning to match within
      */
-    public DefaultCharacterPairMatcher(char[] chars, String partitioning) {
+    public this(char[] chars, String partitioning) {
         Assert.isLegal(chars.length % 2 is 0);
         Assert.isNotNull(partitioning);
         fPairs= new CharPairs(chars);
@@ -135,7 +135,7 @@
      * 
      * @param chars a list of characters
      */
-    public DefaultCharacterPairMatcher(char[] chars) {
+    public this(char[] chars) {
         this(chars, IDocumentExtension3.DEFAULT_PARTITIONING);
     }
     
@@ -232,7 +232,7 @@
          * @param partitioning the partitioning used
          * @param partition the partition managed by this document
          */
-        public DocumentPartitionAccessor(IDocument doc, String partitioning,
+        public this(IDocument doc, String partitioning,
                 String partition) {
             fDocument= doc;
             fPartitioning= partitioning;
@@ -340,7 +340,7 @@
 
         private final char[] fPairs;
 
-        public CharPairs(char[] pairs) {
+        public this(char[] pairs) {
             fPairs= pairs;
         }
 
--- a/dwtx/jface/text/source/JFaceTextMessages.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/JFaceTextMessages.d	Sun Aug 24 01:29:22 2008 +0200
@@ -99,7 +99,7 @@
     /**
      * Prohibits the creation of accessor objects.
      */
-    private JFaceTextMessages() {
+    private this() {
     }
 
     /**
--- a/dwtx/jface/text/source/LineNumberChangeRulerColumn.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/LineNumberChangeRulerColumn.d	Sun Aug 24 01:29:22 2008 +0200
@@ -128,7 +128,7 @@
      *
      * @param sharedColors the shared colors provider to use
      */
-    public LineNumberChangeRulerColumn(ISharedTextColors sharedColors) {
+    public this(ISharedTextColors sharedColors) {
         Assert.isNotNull(sharedColors);
         fRevisionPainter= new RevisionPainter(this, sharedColors);
         fDiffPainter= new DiffPainter(this, sharedColors);
--- a/dwtx/jface/text/source/LineNumberRulerColumn.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/LineNumberRulerColumn.d	Sun Aug 24 01:29:22 2008 +0200
@@ -484,7 +484,7 @@
     /**
      * Constructs a new vertical ruler column.
      */
-    public LineNumberRulerColumn() {
+    public this() {
     }
 
     /**
--- a/dwtx/jface/text/source/LineRange.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/LineRange.d	Sun Aug 24 01:29:22 2008 +0200
@@ -93,7 +93,7 @@
      * @param startLine the start line
      * @param numberOfLines the number of lines
      */
-    public LineRange(int startLine, int numberOfLines) {
+    public this(int startLine, int numberOfLines) {
         fStartLine= startLine;
         fNumberOfLines= numberOfLines;
     }
--- a/dwtx/jface/text/source/MatchingCharacterPainter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/MatchingCharacterPainter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -134,7 +134,7 @@
      * @param sourceViewer
      * @param matcher
      */
-    public MatchingCharacterPainter(ISourceViewer sourceViewer, ICharacterPairMatcher matcher) {
+    public this(ISourceViewer sourceViewer, ICharacterPairMatcher matcher) {
         fSourceViewer= sourceViewer;
         fMatcher= matcher;
         fTextWidget= sourceViewer.getTextWidget();
--- a/dwtx/jface/text/source/OverviewRuler.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/OverviewRuler.d	Sun Aug 24 01:29:22 2008 +0200
@@ -216,7 +216,7 @@
          * @param annotationType the annotation type
          * @param style the style
          */
-        public FilterIterator(Object annotationType, int style) {
+        public this(Object annotationType, int style) {
             fType= annotationType;
             fStyle= style;
             if (fModel !is null) {
@@ -232,7 +232,7 @@
          * @param style the style
          * @param iterator the iterator
          */
-        public FilterIterator(Object annotationType, int style, Iterator iterator) {
+        public this(Object annotationType, int style, Iterator iterator) {
             fType= annotationType;
             fStyle= style;
             fIterator= iterator;
@@ -309,7 +309,7 @@
         /**
          * Creates a new header painter.
          */
-        public HeaderPainter() {
+        public this() {
             fSeparatorColor= fHeader.getDisplay().getSystemColor(DWT.COLOR_WIDGET_NORMAL_SHADOW);
         }
 
@@ -473,7 +473,7 @@
      * @param width the width of the vertical ruler
      * @param sharedColors the color manager
      */
-    public OverviewRuler(IAnnotationAccess annotationAccess, int width, ISharedTextColors sharedColors) {
+    public this(IAnnotationAccess annotationAccess, int width, ISharedTextColors sharedColors) {
         this(annotationAccess, width, sharedColors, false);
     }
 
@@ -487,7 +487,7 @@
      * @param discolorTemporaryAnnotation <code>true</code> if temporary annotations should be discolored
      * @since 3.4
      */
-    public OverviewRuler(IAnnotationAccess annotationAccess, int width, ISharedTextColors sharedColors, bool discolorTemporaryAnnotation) {
+    public this(IAnnotationAccess annotationAccess, int width, ISharedTextColors sharedColors, bool discolorTemporaryAnnotation) {
         fAnnotationAccess= annotationAccess;
         fWidth= width;
         fSharedTextColors= sharedColors;
--- a/dwtx/jface/text/source/OverviewRulerHoverManager.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/OverviewRulerHoverManager.d	Sun Aug 24 01:29:22 2008 +0200
@@ -103,7 +103,7 @@
      * @param annotationHover the annotation hover providing the information to be displayed
      * @param creator the information control creator
      */
-    public OverviewRulerHoverManager(IOverviewRuler ruler, ISourceViewer sourceViewer, IAnnotationHover annotationHover, IInformationControlCreator creator) {
+    public this(IOverviewRuler ruler, ISourceViewer sourceViewer, IAnnotationHover annotationHover, IInformationControlCreator creator) {
         super(ruler, sourceViewer, annotationHover, creator);
         setAnchor(ANCHOR_LEFT);
         StyledText textWidget= sourceViewer.getTextWidget();
--- a/dwtx/jface/text/source/SourceViewer.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/SourceViewer.d	Sun Aug 24 01:29:22 2008 +0200
@@ -153,7 +153,7 @@
          *
          * @param gap the gap between text viewer and vertical ruler
          */
-        public RulerLayout(int gap) {
+        public this(int gap) {
             fGap= gap;
         }
 
@@ -325,7 +325,7 @@
      * @param styles the DWT style bits for the viewer's control,
      *          <em>if <code>DWT.WRAP</code> is set then a custom document adapter needs to be provided, see {@link #createDocumentAdapter()}
      */
-    public SourceViewer(Composite parent, IVerticalRuler ruler, int styles) {
+    public this(Composite parent, IVerticalRuler ruler, int styles) {
         this(parent, ruler, null, false, styles);
     }
 
@@ -342,7 +342,7 @@
      *          <em>if <code>DWT.WRAP</code> is set then a custom document adapter needs to be provided, see {@link #createDocumentAdapter()}
      * @since 2.1
      */
-    public SourceViewer(Composite parent, IVerticalRuler verticalRuler, IOverviewRuler overviewRuler, bool showAnnotationsOverview, int styles) {
+    public this(Composite parent, IVerticalRuler verticalRuler, IOverviewRuler overviewRuler, bool showAnnotationsOverview, int styles) {
         super();
 
         fVerticalRuler= verticalRuler;
--- a/dwtx/jface/text/source/SourceViewerConfiguration.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/SourceViewerConfiguration.d	Sun Aug 24 01:29:22 2008 +0200
@@ -133,7 +133,7 @@
      * Creates a new source viewer configuration that behaves according to
      * specification of this class' methods.
      */
-    public SourceViewerConfiguration() {
+    public this() {
         super();
     }
 
--- a/dwtx/jface/text/source/TextInvocationContext.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/TextInvocationContext.d	Sun Aug 24 01:29:22 2008 +0200
@@ -94,7 +94,7 @@
     private int fOffset;
     private int fLength;
     
-    public TextInvocationContext(ISourceViewer sourceViewer, int offset, int length) {
+    public this(ISourceViewer sourceViewer, int offset, int length) {
         fSourceViewer= sourceViewer;
         fOffset= offset;
         fLength= length;
--- a/dwtx/jface/text/source/VerticalRuler.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/VerticalRuler.d	Sun Aug 24 01:29:22 2008 +0200
@@ -178,7 +178,7 @@
      *
      * @param width the width of the vertical ruler
      */
-    public VerticalRuler(int width) {
+    public this(int width) {
         this(width, null);
     }
 
@@ -190,7 +190,7 @@
      * @param annotationAcccess the annotation access
      * @since 3.0
      */
-    public VerticalRuler(int width, IAnnotationAccess annotationAcccess) {
+    public this(int width, IAnnotationAccess annotationAcccess) {
         fWidth= width;
         fAnnotationAccess= annotationAcccess;
     }
--- a/dwtx/jface/text/source/VerticalRulerEvent.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/VerticalRulerEvent.d	Sun Aug 24 01:29:22 2008 +0200
@@ -93,7 +93,7 @@
      *
      * @param annotation the annotation concerned, or <code>null</code>
      */
-    public VerticalRulerEvent(Annotation annotation) {
+    public this(Annotation annotation) {
         fAnnotation= annotation;
     }
 
--- a/dwtx/jface/text/source/VisualAnnotationModel.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/VisualAnnotationModel.d	Sun Aug 24 01:29:22 2008 +0200
@@ -108,7 +108,7 @@
      *
      * @param modelAnnotationModel the model based annotation model
      */
-    public VisualAnnotationModel(IAnnotationModel modelAnnotationModel) {
+    public this(IAnnotationModel modelAnnotationModel) {
         fModel= modelAnnotationModel;
     }
 
--- a/dwtx/jface/text/source/projection/AnnotationBag.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/projection/AnnotationBag.d	Sun Aug 24 01:29:22 2008 +0200
@@ -50,7 +50,7 @@
      *
      * @param type the annotation type
      */
-    public AnnotationBag(String type) {
+    public this(String type) {
         super(type, false, null);
     }
 
--- a/dwtx/jface/text/source/projection/ProjectionAnnotation.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/projection/ProjectionAnnotation.d	Sun Aug 24 01:29:22 2008 +0200
@@ -89,7 +89,7 @@
     /**
      * Creates a new expanded projection annotation.
      */
-    public ProjectionAnnotation() {
+    public this() {
         this(false);
     }
 
@@ -99,7 +99,7 @@
      *
      * @param isCollapsed <code>true</code> if the annotation should initially be collapsed, <code>false</code> otherwise
      */
-    public ProjectionAnnotation(bool isCollapsed) {
+    public this(bool isCollapsed) {
         super(TYPE, false, null);
         fIsCollapsed= isCollapsed;
     }
--- a/dwtx/jface/text/source/projection/ProjectionAnnotationModel.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/projection/ProjectionAnnotationModel.d	Sun Aug 24 01:29:22 2008 +0200
@@ -51,7 +51,7 @@
     /**
      * Creates a new, empty projection annotation model.
      */
-    public ProjectionAnnotationModel() {
+    public this() {
     }
 
     /**
--- a/dwtx/jface/text/source/projection/ProjectionRulerColumn.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/projection/ProjectionRulerColumn.d	Sun Aug 24 01:29:22 2008 +0200
@@ -64,7 +64,7 @@
      * @param width the width in pixels
      * @param annotationAccess the annotation access
      */
-    public ProjectionRulerColumn(IAnnotationModel model, int width, IAnnotationAccess annotationAccess) {
+    public this(IAnnotationModel model, int width, IAnnotationAccess annotationAccess) {
         super(model, width, annotationAccess);
     }
 
@@ -74,7 +74,7 @@
      * @param width the width in pixels
      * @param annotationAccess the annotation access
      */
-    public ProjectionRulerColumn(int width, IAnnotationAccess annotationAccess) {
+    public this(int width, IAnnotationAccess annotationAccess) {
         super(width, annotationAccess);
     }
 
--- a/dwtx/jface/text/source/projection/ProjectionSummary.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/projection/ProjectionSummary.d	Sun Aug 24 01:29:22 2008 +0200
@@ -60,7 +60,7 @@
         /**
          * Creates a new thread.
          */
-        public Summarizer() {
+        public this() {
             fProgressMonitor= new NullProgressMonitor(); // might be given by client in the future
             setDaemon(true);
             start();
@@ -112,7 +112,7 @@
      * @param projectionViewer the projection viewer
      * @param annotationAccess the annotation access
      */
-    public ProjectionSummary(ProjectionViewer projectionViewer, IAnnotationAccess annotationAccess) {
+    public this(ProjectionViewer projectionViewer, IAnnotationAccess annotationAccess) {
         super();
         fProjectionViewer= projectionViewer;
         fAnnotationAccess= annotationAccess;
--- a/dwtx/jface/text/source/projection/ProjectionSupport.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/projection/ProjectionSupport.d	Sun Aug 24 01:29:22 2008 +0200
@@ -71,7 +71,7 @@
          * @param sourceViewer the source viewer for the painter
          * @param access the annotation access
          */
-        public ProjectionAnnotationsPainter(ISourceViewer sourceViewer, IAnnotationAccess access) {
+        public this(ISourceViewer sourceViewer, IAnnotationAccess access) {
             super(sourceViewer, access);
         }
 
@@ -189,7 +189,7 @@
      * @param annotationAccess the annotation access
      * @param sharedTextColors the shared text colors to use
      */
-    public ProjectionSupport(ProjectionViewer viewer, IAnnotationAccess annotationAccess, ISharedTextColors sharedTextColors) {
+    public this(ProjectionViewer viewer, IAnnotationAccess annotationAccess, ISharedTextColors sharedTextColors) {
         fViewer= viewer;
         fAnnotationAccess= annotationAccess;
         fSharedTextColors= sharedTextColors;
--- a/dwtx/jface/text/source/projection/ProjectionViewer.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/projection/ProjectionViewer.d	Sun Aug 24 01:29:22 2008 +0200
@@ -148,7 +148,7 @@
          *
          * @param slaveDocument the slave document to free
          */
-        public ReplaceVisibleDocumentExecutor(IDocument slaveDocument) {
+        public this(IDocument slaveDocument) {
             fSlaveDocument= slaveDocument;
         }
 
@@ -195,14 +195,14 @@
         int fOffset;
         int fLength;
 
-        ProjectionCommand(ProjectionDocument projection, int type, int offset, int length) {
+        this(ProjectionDocument projection, int type, int offset, int length) {
             fProjection= projection;
             fType= type;
             fOffset= offset;
             fLength= length;
         }
 
-        ProjectionCommand(int offset, int length) {
+        this(int offset, int length) {
             fType= INVALIDATE_PRESENTATION;
             fOffset= offset;
             fLength= length;
@@ -324,7 +324,7 @@
      * @param showsAnnotationOverview <code>true</code> if the overview ruler should be shown
      * @param styles the DWT style bits
      */
-    public ProjectionViewer(Composite parent, IVerticalRuler ruler, IOverviewRuler overviewRuler, bool showsAnnotationOverview, int styles) {
+    public this(Composite parent, IVerticalRuler ruler, IOverviewRuler overviewRuler, bool showsAnnotationOverview, int styles) {
         super(parent, ruler, overviewRuler, showsAnnotationOverview, styles);
     }
 
--- a/dwtx/jface/text/source/projection/SourceViewerInformationControl.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/source/projection/SourceViewerInformationControl.d	Sun Aug 24 01:29:22 2008 +0200
@@ -102,7 +102,7 @@
      * @param statusFieldText the text to be used in the optional status field or <code>null</code>
      *            if the status field should be hidden
      */
-    public SourceViewerInformationControl(Shell parent, bool isResizable, String symbolicFontName, String statusFieldText) {
+    public this(Shell parent, bool isResizable, String symbolicFontName, String statusFieldText) {
         GridLayout layout;
         GridData gd;
 
--- a/dwtx/jface/text/templates/DocumentTemplateContext.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/DocumentTemplateContext.d	Sun Aug 24 01:29:22 2008 +0200
@@ -80,7 +80,7 @@
      * @param offset the offset of the document region
      * @param length the length of the document region
      */
-    public DocumentTemplateContext(TemplateContextType type, IDocument document, int offset, int length) {
+    public this(TemplateContextType type, IDocument document, int offset, int length) {
         this(type, document, new Position(offset, length));
     }
 
@@ -96,7 +96,7 @@
      *        forms the template context
      * @since 3.1
      */
-    public DocumentTemplateContext(TemplateContextType type, IDocument document, Position position) {
+    public this(TemplateContextType type, IDocument document, Position position) {
         super(type);
 
         Assert.isNotNull(document);
--- a/dwtx/jface/text/templates/GlobalTemplateVariables.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/GlobalTemplateVariables.d	Sun Aug 24 01:29:22 2008 +0200
@@ -62,7 +62,7 @@
         /**
          * Creates a new cursor variable
          */
-        public Cursor() {
+        public this() {
             super(NAME, TextTemplateMessages.getString("GlobalVariables.variable.description.cursor")); //$NON-NLS-1$
             setEvaluationString(""); //$NON-NLS-1$
         }
@@ -80,7 +80,7 @@
         /**
          * Creates a new word selection variable
          */
-        public WordSelection() {
+        public this() {
             super(NAME, TextTemplateMessages.getString("GlobalVariables.variable.description.selectedWord")); //$NON-NLS-1$
         }
         protected String resolve(TemplateContext context) {
@@ -103,7 +103,7 @@
         /**
          * Creates a new line selection variable
          */
-        public LineSelection() {
+        public this() {
             super(NAME, TextTemplateMessages.getString("GlobalVariables.variable.description.selectedLines")); //$NON-NLS-1$
         }
         protected String resolve(TemplateContext context) {
@@ -121,7 +121,7 @@
         /**
          * Creates a new dollar variable
          */
-        public Dollar() {
+        public this() {
             super("dollar", TextTemplateMessages.getString("GlobalVariables.variable.description.dollar")); //$NON-NLS-1$ //$NON-NLS-2$
             setEvaluationString("$"); //$NON-NLS-1$
         }
@@ -134,7 +134,7 @@
         /**
          * Creates a new date variable
          */
-        public Date() {
+        public this() {
             super("date", TextTemplateMessages.getString("GlobalVariables.variable.description.date")); //$NON-NLS-1$ //$NON-NLS-2$
         }
         protected String resolve(TemplateContext context) {
@@ -149,7 +149,7 @@
         /**
          * Creates a new year variable
          */
-        public Year() {
+        public this() {
             super("year", TextTemplateMessages.getString("GlobalVariables.variable.description.year")); //$NON-NLS-1$ //$NON-NLS-2$
         }
         protected String resolve(TemplateContext context) {
@@ -164,7 +164,7 @@
         /**
          * Creates a new time variable
          */
-        public Time() {
+        public this() {
             super("time", TextTemplateMessages.getString("GlobalVariables.variable.description.time")); //$NON-NLS-1$ //$NON-NLS-2$
         }
 
@@ -183,7 +183,7 @@
         /**
          * Creates a new user name variable
          */
-        public User() {
+        public this() {
             super("user", TextTemplateMessages.getString("GlobalVariables.variable.description.user")); //$NON-NLS-1$ //$NON-NLS-2$
         }
 
--- a/dwtx/jface/text/templates/InclusivePositionUpdater.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/InclusivePositionUpdater.d	Sun Aug 24 01:29:22 2008 +0200
@@ -55,7 +55,7 @@
      *
      * @param category the new category.
      */
-    public InclusivePositionUpdater(String category) {
+    public this(String category) {
         fCategory= category;
     }
 
--- a/dwtx/jface/text/templates/JFaceTextTemplateMessages.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/JFaceTextTemplateMessages.d	Sun Aug 24 01:29:22 2008 +0200
@@ -47,7 +47,7 @@
     private static final String RESOURCE_BUNDLE= JFaceTextTemplateMessages.class.getName();
     private static ResourceBundle fgResourceBundle= ResourceBundle.getBundle(RESOURCE_BUNDLE);
 
-    private JFaceTextTemplateMessages() {
+    private this() {
     }
 
     public static String getString(String key) {
--- a/dwtx/jface/text/templates/PositionBasedCompletionProposal.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/PositionBasedCompletionProposal.d	Sun Aug 24 01:29:22 2008 +0200
@@ -82,7 +82,7 @@
      * @param replacementPosition the position of the text to be replaced
      * @param cursorPosition the position of the cursor following the insert relative to replacementOffset
      */
-    public PositionBasedCompletionProposal(String replacementString, Position replacementPosition, int cursorPosition) {
+    public this(String replacementString, Position replacementPosition, int cursorPosition) {
         this(replacementString, replacementPosition, cursorPosition, null, null, null, null);
     }
 
@@ -97,7 +97,7 @@
      * @param contextInformation the context information associated with this proposal
      * @param additionalProposalInfo the additional information associated with this proposal
      */
-    public PositionBasedCompletionProposal(String replacementString, Position replacementPosition, int cursorPosition, Image image, String displayString, IContextInformation contextInformation, String additionalProposalInfo) {
+    public this(String replacementString, Position replacementPosition, int cursorPosition, Image image, String displayString, IContextInformation contextInformation, String additionalProposalInfo) {
         Assert.isNotNull(replacementString);
         Assert.isTrue(replacementPosition !is null);
 
--- a/dwtx/jface/text/templates/SimpleTemplateVariableResolver.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/SimpleTemplateVariableResolver.d	Sun Aug 24 01:29:22 2008 +0200
@@ -51,7 +51,7 @@
     /*
      * @see TemplateVariableResolver#TemplateVariableResolver(String, String)
      */
-    protected SimpleTemplateVariableResolver(String type, String description) {
+    protected this(String type, String description) {
         super(type, description);
     }
 
--- a/dwtx/jface/text/templates/Template.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/Template.d	Sun Aug 24 01:29:22 2008 +0200
@@ -64,7 +64,7 @@
     /**
      * Creates an empty template.
      */
-    public Template() {
+    public this() {
         this("", "", "", "", true); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
     }
 
@@ -73,7 +73,7 @@
      *
      * @param template the template to copy
      */
-    public Template(Template template) {
+    public this(Template template) {
         this(template.getName(), template.getDescription(), template.getContextTypeId(), template.getPattern(), template.isAutoInsertable());
     }
 
@@ -86,7 +86,7 @@
      * @param pattern the template pattern
      * @deprecated as of 3.1 replaced by {@link #Template(String, String, String, String, bool)}
      */
-    public Template(String name, String description, String contextTypeId, String pattern) {
+    public this(String name, String description, String contextTypeId, String pattern) {
         this(name, description, contextTypeId, pattern, true); // templates are auto insertable per default
     }
 
@@ -100,7 +100,7 @@
      * @param isAutoInsertable the auto insertable property of the template
      * @since 3.1
      */
-    public Template(String name, String description, String contextTypeId, String pattern, bool isAutoInsertable) {
+    public this(String name, String description, String contextTypeId, String pattern, bool isAutoInsertable) {
         Assert.isNotNull(description);
         fDescription= description;
         fName= name;
--- a/dwtx/jface/text/templates/TemplateBuffer.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/TemplateBuffer.d	Sun Aug 24 01:29:22 2008 +0200
@@ -57,7 +57,7 @@
      * @param string the string
      * @param variables the variable positions
      */
-    public TemplateBuffer(String string, TemplateVariable[] variables) {
+    public this(String string, TemplateVariable[] variables) {
         setContent(string, variables);
     }
 
--- a/dwtx/jface/text/templates/TemplateContext.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/TemplateContext.d	Sun Aug 24 01:29:22 2008 +0200
@@ -62,7 +62,7 @@
      *
      * @param contextType the context type of this context
      */
-    protected TemplateContext(TemplateContextType contextType) {
+    protected this(TemplateContextType contextType) {
         fContextType= contextType;
         fReadOnly= true;
     }
--- a/dwtx/jface/text/templates/TemplateContextType.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/TemplateContextType.d	Sun Aug 24 01:29:22 2008 +0200
@@ -81,7 +81,7 @@
      *
      * @param id the unique identifier of the context type
      */
-    public TemplateContextType(String id) {
+    public this(String id) {
         this(id, id);
     }
 
@@ -91,7 +91,7 @@
      * @param id the unique identifier of the context type
      * @param name the name of the context type
      */
-    public TemplateContextType(String id, String name) {
+    public this(String id, String name) {
         Assert.isNotNull(id);
         Assert.isNotNull(name);
         fId= id;
@@ -126,7 +126,7 @@
      * {@link #TemplateContextType(String)} instead.
      * </p>
      */
-    public TemplateContextType() {
+    public this() {
     }
 
     /**
--- a/dwtx/jface/text/templates/TemplateException.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/TemplateException.d	Sun Aug 24 01:29:22 2008 +0200
@@ -61,7 +61,7 @@
     /**
      * Creates a new template exception.
      */
-    public TemplateException() {
+    public this() {
         super();
     }
 
@@ -70,7 +70,7 @@
      *
      * @param message the message describing the problem that arose
      */
-    public TemplateException(String message) {
+    public this(String message) {
         super(message);
     }
 
@@ -80,7 +80,7 @@
      * @param message the message describing the problem that arose
      * @param cause the original exception
      */
-    public TemplateException(String message, Throwable cause) {
+    public this(String message, Throwable cause) {
         super(message, cause);
     }
 
@@ -89,7 +89,7 @@
      *
      * @param cause the original exception
      */
-    public TemplateException(Throwable cause) {
+    public this(Throwable cause) {
         super(cause);
     }
 }
--- a/dwtx/jface/text/templates/TemplateProposal.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/TemplateProposal.d	Sun Aug 24 01:29:22 2008 +0200
@@ -90,7 +90,7 @@
      * @param region    the region this proposal is applied to
      * @param image     the icon of the proposal.
      */
-    public TemplateProposal(Template template, TemplateContext context, IRegion region, Image image) {
+    public this(Template template, TemplateContext context, IRegion region, Image image) {
         this(template, context, region, image, 0);
     }
 
@@ -103,7 +103,7 @@
      * @param region    the region this proposal is applied to
      * @param relevance the relevance of the proposal
      */
-    public TemplateProposal(Template template, TemplateContext context, IRegion region, Image image, int relevance) {
+    public this(Template template, TemplateContext context, IRegion region, Image image, int relevance) {
         Assert.isNotNull(template);
         Assert.isNotNull(context);
         Assert.isNotNull(region);
--- a/dwtx/jface/text/templates/TemplateTranslator.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/TemplateTranslator.d	Sun Aug 24 01:29:22 2008 +0200
@@ -111,7 +111,7 @@
         final String fName;
         TemplateVariableType fType;
 
-        VariableDescription(String name, TemplateVariableType type) {
+        this(String name, TemplateVariableType type) {
             fName= name;
             fType= type;
         }
--- a/dwtx/jface/text/templates/TemplateVariable.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/TemplateVariable.d	Sun Aug 24 01:29:22 2008 +0200
@@ -82,7 +82,7 @@
      * @param defaultValue the default value of the variable
      * @param offsets the array of offsets of the variable
      */
-    public TemplateVariable(String type, String defaultValue, int[] offsets) {
+    public this(String type, String defaultValue, int[] offsets) {
         this(type, new String[] { defaultValue }, offsets);
     }
 
@@ -94,7 +94,7 @@
      * @param defaultValue the default value of the variable
      * @param offsets the array of offsets of the variable
      */
-    public TemplateVariable(String type, String name, String defaultValue, int[] offsets) {
+    public this(String type, String name, String defaultValue, int[] offsets) {
         this(type, name, new String[] { defaultValue }, offsets);
     }
 
@@ -107,7 +107,7 @@
      * @param offsets the array of offsets of the variable
      * @since 3.3
      */
-    public TemplateVariable(TemplateVariableType type, String name, String defaultValue, int[] offsets) {
+    public this(TemplateVariableType type, String name, String defaultValue, int[] offsets) {
         this(type, name, new String[] { defaultValue }, offsets);
     }
     
@@ -119,7 +119,7 @@
      * @param values the values available at this variable, non-empty
      * @param offsets the array of offsets of the variable
      */
-    public TemplateVariable(String type, String[] values, int[] offsets) {
+    public this(String type, String[] values, int[] offsets) {
         this(type, type, values, offsets);
     }
 
@@ -131,7 +131,7 @@
      * @param values the values available at this variable, non-empty
      * @param offsets the array of offsets of the variable
      */
-    public TemplateVariable(String type, String name, String[] values, int[] offsets) {
+    public this(String type, String name, String[] values, int[] offsets) {
         this(new TemplateVariableType(type), name, values, offsets);
     }
     
@@ -144,7 +144,7 @@
      * @param offsets the array of offsets of the variable
      * @since 3.3
      */
-    TemplateVariable(TemplateVariableType type, String name, String[] values, int[] offsets) {
+    this(TemplateVariableType type, String name, String[] values, int[] offsets) {
         Assert.isNotNull(type);
         Assert.isNotNull(name);
         fType= type;
--- a/dwtx/jface/text/templates/TemplateVariableResolver.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/TemplateVariableResolver.d	Sun Aug 24 01:29:22 2008 +0200
@@ -60,7 +60,7 @@
      * @param type the name of the type
      * @param description the description for the type
      */
-    protected TemplateVariableResolver(String type, String description) {
+    protected this(String type, String description) {
         setType(type);
         setDescription(description);
     }
@@ -74,7 +74,7 @@
      * {@link #TemplateVariableResolver(String, String)} instead.
      * </p>
      */
-    public TemplateVariableResolver() {
+    public this() {
     }
 
     /**
--- a/dwtx/jface/text/templates/TemplateVariableType.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/TemplateVariableType.d	Sun Aug 24 01:29:22 2008 +0200
@@ -56,11 +56,11 @@
     /** The parameter list. */
     private final List fParams;
 
-    TemplateVariableType(String name) {
+    this(String name) {
         this(name, new String[0]);
     }
 
-    TemplateVariableType(String name, String[] params) {
+    this(String name, String[] params) {
         Assert.isLegal(name !is null);
         Assert.isLegal(params !is null);
         fName= name;
--- a/dwtx/jface/text/templates/TextTemplateMessages.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/TextTemplateMessages.d	Sun Aug 24 01:29:22 2008 +0200
@@ -47,7 +47,7 @@
     private static final String RESOURCE_BUNDLE= TextTemplateMessages.class.getName();
     private static ResourceBundle fgResourceBundle= ResourceBundle.getBundle(RESOURCE_BUNDLE);
 
-    private TextTemplateMessages() {
+    private this() {
     }
 
     public static String getString(String key) {
--- a/dwtx/jface/text/templates/persistence/TemplatePersistenceData.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/persistence/TemplatePersistenceData.d	Sun Aug 24 01:29:22 2008 +0200
@@ -53,7 +53,7 @@
      * @param template the template which is stored by the new instance
      * @param enabled whether the template is enabled
      */
-    public TemplatePersistenceData(Template template, bool enabled) {
+    public this(Template template, bool enabled) {
         this(template, enabled, null);
     }
 
@@ -67,7 +67,7 @@
      * @param id the id of the template, or <code>null</code> if a user-added
      *        instance should be created
      */
-    public TemplatePersistenceData(Template template, bool enabled, String id) {
+    public this(Template template, bool enabled, String id) {
         Assert.isNotNull(template);
         fOriginalTemplate= template;
         fCustomTemplate= template;
--- a/dwtx/jface/text/templates/persistence/TemplatePersistenceMessages.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/persistence/TemplatePersistenceMessages.d	Sun Aug 24 01:29:22 2008 +0200
@@ -32,7 +32,7 @@
     private static final String RESOURCE_BUNDLE= TemplatePersistenceMessages.class.getName();
     private static ResourceBundle fgResourceBundle= ResourceBundle.getBundle(RESOURCE_BUNDLE);
 
-    private TemplatePersistenceMessages() {
+    private this() {
     }
 
     public static String getString(String key) {
--- a/dwtx/jface/text/templates/persistence/TemplateReaderWriter.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/persistence/TemplateReaderWriter.d	Sun Aug 24 01:29:22 2008 +0200
@@ -81,7 +81,7 @@
     /**
      * Create a new instance.
      */
-    public TemplateReaderWriter() {
+    public this() {
     }
 
     /**
--- a/dwtx/jface/text/templates/persistence/TemplateStore.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/jface/text/templates/persistence/TemplateStore.d	Sun Aug 24 01:29:22 2008 +0200
@@ -81,7 +81,7 @@
      * @param key the key into <code>store</code> where to store custom
      *        templates
      */
-    public TemplateStore(IPreferenceStore store, String key) {
+    public this(IPreferenceStore store, String key) {
         Assert.isNotNull(store);
         Assert.isNotNull(key);
         fPreferenceStore= store;
@@ -100,7 +100,7 @@
      * @param key the key into <code>store</code> where to store custom
      *        templates
      */
-    public TemplateStore(ContextTypeRegistry registry, IPreferenceStore store, String key) {
+    public this(ContextTypeRegistry registry, IPreferenceStore store, String key) {
         this(store, key);
         fRegistry= registry;
     }
--- a/dwtx/text/edits/CopyTargetEdit.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/text/edits/CopyTargetEdit.d	Sun Aug 24 01:29:22 2008 +0200
@@ -68,7 +68,7 @@
      *
      * @param offset the edit's offset
      */
-    public CopyTargetEdit(int offset) {
+    public this(int offset) {
         super(offset, 0);
     }
 
--- a/dwtx/text/edits/TextEditGroup.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/text/edits/TextEditGroup.d	Sun Aug 24 01:29:22 2008 +0200
@@ -68,7 +68,7 @@
      * @param name the name of the text edit group. Must be
      *  a human readable string
      */
-    public TextEditGroup(String name) {
+    public this(String name) {
         super();
         Assert.isNotNull(name);
         fDescription= name;
--- a/dwtx/text/undo/DocumentUndoManagerRegistry.d	Sun Aug 24 01:13:39 2008 +0200
+++ b/dwtx/text/undo/DocumentUndoManagerRegistry.d	Sun Aug 24 01:29:22 2008 +0200
@@ -46,7 +46,7 @@
 public final class DocumentUndoManagerRegistry {
 
     private static final class Record {
-        public Record(IDocument document) {
+        public this(IDocument document) {
             count= 0;
             undoManager= new DocumentUndoManager(document);
         }