actually,one map to store document to editor relation is enough.

Michael ,i want some advices from you .thank you!

2009/4/13 赵忠伟 <zhaozhong...@eclipseworld.org>

> thank you for your patient!
>
> best regards!
>
>   2009/4/13 Michael Spector <spek...@gmail.com>
>
>> Sorry, I've forgot to compare documents. Here's the complete "solution":
>>
>>
>> IStructuredDocumentRegion sdRegion;
>>                IStructuredDocument parentDocument =
>> sdRegion.getParentDocument();
>>                IWorkbenchPage page = PHPUiPlugin.getActivePage();
>>                if (page != null) {
>>                        IEditorPart editor = page.getActiveEditor();
>>                        if (editor instanceof PHPStructuredEditor) {
>>                                StructuredTextViewer textViewer =
>> ((PHPStructuredEditor)
>> editor).getTextViewer();
>>                                if (textViewer != null &&
>> textViewer.getDocument() == parentDocument) {
>>                                        ISourceModule sourceModule =
>> (ISourceModule)
>> ((PHPStructuredEditor) editor).getModelElement();
>>                                }
>>                        }
>>                }
>>
>>
>>
>>
>> 2009/4/13 Michael Spector <spek...@gmail.com>:
>>  > In this case you can do the following hack :)
>> >
>> > IStructuredDocumentRegion sdRegion;
>> > IStructuredDocument parentDocument = sdRegion.getParentDocument();
>> > IWorkbenchPage page = PHPUiPlugin.getActivePage();
>> > if (page != null) {
>> >        IEditorPart editor = page.getActiveEditor();
>> >        if (editor instanceof PHPStructuredEditor) {
>> >                ISourceModule sourceModule = (ISourceModule)
>> ((PHPStructuredEditor)
>> > editor).getModelElement();
>> >        }
>> > }
>> >
>> > On Mon, Apr 13, 2009 at 12:22 PM, 赵忠伟 <zhaozhong...@eclipseworld.org>
>> wrote:
>> >> hi, Michael
>> >>
>> >> i extended the extension "org.eclipse.wst.sse.ui.semanticHighlighting"
>> >> as following:
>> >>  <extension point="org.eclipse.wst.sse.ui.semanticHighlighting">
>> >>   <highlighting
>> >>
>> >>
>> class="org.eclipse.php.internal.ui.editor.highlighting.PHPStaticSemanticHighlighting"
>> >>         target="org.eclipse.php.core.phpsource">
>> >>   </highlighting>
>> >>  </extension>
>> >>
>> >> here PHPStaticSemanticHighlighting need to implement
>> ISemanticHighlighting
>> >> interface
>> >> and there is a method public Position[]
>> consumes(IStructuredDocumentRegion
>> >> region); in ISemanticHighlighting interface ,so the context is i can
>> get
>> >> nothing except IStructuredDocumentRegion (actually
>> >> XMLStructuredDocumentRegion).the method ISemanticHighlighting#consumes
>> is
>> >> called by SemanticHighlightingReconciler#reconcile (more or less 133rd
>> >> line) .there is StructuredTextEditor in
>> SemanticHighlightingReconciler,but i
>> >> could not get it.if i the editor,i can get editorinput and the file,so
>> i can
>> >> use DLTKCore#create to get a ISourceModule ,but now i can only get
>> >> IStructuredDocumentRegion ,nothing else!i search a lot in the pdt
>> source but
>> >> i did not find a way to get ISourceModule from
>> IStructuredDocumentRegion.and
>> >> in my oponion,ISourceModule must be relative to IScriptProject and
>> >> IScriptFolder,so from IStructuredDocumentRegion ,it is hardly to find
>> the
>> >> corresponding ISourceModule (IScriptProject and IScriptFolder) it
>> belongs
>> >> to.i am sorry for my poor english:)
>> >>
>> >>
>> >>
>> >> thank you very much!
>> >> best regards!
>> >> _______________________________________________
>> >> pdt-dev mailing list
>> >> pdt-dev@eclipse.org
>> >> https://dev.eclipse.org/mailman/listinfo/pdt-dev
>> >>
>> >>
>> >
>> >
>> >
>> > --
>> > Best regards,
>> > Michael
>> >
>>
>>
>>
>> --
>> Best regards,
>> Michael
>> _______________________________________________
>> pdt-dev mailing list
>> pdt-dev@eclipse.org
>> https://dev.eclipse.org/mailman/listinfo/pdt-dev
>>
>
>
_______________________________________________
pdt-dev mailing list
pdt-dev@eclipse.org
https://dev.eclipse.org/mailman/listinfo/pdt-dev

Reply via email to