I have seen we can use: <classname>_iid, it is actually defined by KDEV_DECLARE_EXTENSION_INTERFACE_NS, so we don't need another one...<br><br><div class="gmail_quote">On Sat, Jan 31, 2009 at 11:37 PM, Andreas Pakulat <span dir="ltr"><<a href="mailto:apaku@gmx.de">apaku@gmx.de</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d">On 31.01.09 17:31:00, David nolden wrote:<br>
> Am Samstag 31 Januar 2009 17:13:56 schrieb Aleix Pol:<br>
</div><div><div></div><div class="Wj3C7c">> > hi list!<br>
> ><br>
> > I was thinking on kdevelop 4's documentation support. I've been checking<br>
> > some of the code we have in playground. It is quite disappointing to see<br>
> > that much of the code there is just oriented to support many many<br>
> > documentation formats but real actual integration.<br>
> ><br>
> > I think it would be nice to have proper integration support. For now<br>
> > doxygen and qt assistant would be nice, or maybe just assistant (since most<br>
> > of it could be used by getting it from Qt's assistant, QHelpEngine).<br>
> ><br>
> > What I think it would be important would be that this documentation support<br>
> > could be (easily) integrated with the DUChain. That would mean to be able<br>
> > to identify classes and method names and relate them to the proper<br>
> > documentation pages and show c++ reference if using c++ and Qt, and pyqt's<br>
> > doc if using python.<br>
> ><br>
> > What do you think about it? Is there any work to do so already done?<br>
> ><br>
> > Thanks,<br>
> > Aleix<br>
><br>
</div></div><div class="Ih2E3d">> I think the first most important thing is, as you say, integration with the<br>
> duchain.<br>
><br>
> For the start, we could just have something like this:<br>
> class IDocumentation : public KShared, public QObject {<br>
> //Should return a short version of the documentation<br>
> virtual QString html() = 0;<br>
> virtual KSharedPtr<IDocumentation> executeLink(QString link);<br>
> //Should open this documentation within an own part within KDevelop<br>
> virtual void showSeparateDocumentation();<br>
> Q_SIGNALS:<br>
> //Can be usd to signalize that new documentation is available(maybe downloaded<br>
> from the internet)<br>
> void documentationFetched();<br>
> };<br>
><br>
> class IDocumentationPlugin {<br>
> //Should return 0 if no documentation for the declaration is available from<br>
> this plugin<br>
> virtual KSharedPtr<IDocumentation><br>
> documentationForDeclaration(KDevelop::Declaration* declaration) = 0;<br>
> };<br>
<br>
</div>I'd rather have s/Plugin/Support/ here and IMHO a static getter isn't<br>
really needed.<br>
<br>
On a related note: What we might want to do however is start putting the<br>
interface id's (i.e. org.kdevelop.IFoo) into static const strings<br>
accessible in the interface class. I know that IProjectFileManager is<br>
used in at least two different places in kdevplatform.<br>
<br>
Andreas<br>
<font color="#888888"><br>
--<br>
Don't you wish you had more energy... or less ambition?<br>
</font><div><div></div><div class="Wj3C7c"><br>
_______________________________________________<br>
KDevelop-devel mailing list<br>
<a href="mailto:KDevelop-devel@kdevelop.org">KDevelop-devel@kdevelop.org</a><br>
<a href="https://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel" target="_blank">https://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel</a><br>
</div></div></blockquote></div><br>