thank you for your patient! best regards!
2009/4/13 Michael Spector <[email protected]> > 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 <[email protected]>: > > 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, 赵忠伟 <[email protected]> > 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 > >> [email protected] > >> https://dev.eclipse.org/mailman/listinfo/pdt-dev > >> > >> > > > > > > > > -- > > Best regards, > > Michael > > > > > > -- > Best regards, > Michael > _______________________________________________ > pdt-dev mailing list > [email protected] > https://dev.eclipse.org/mailman/listinfo/pdt-dev >
_______________________________________________ pdt-dev mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/pdt-dev
