extragear/sdk/kdevplatform
David Nolden
zwabel at googlemail.com
Sun Feb 14 13:48:29 UTC 2010
Am Sonntag 14 Februar 2010 09:58:21 schrieb Andreas Pakulat:
> On 14.02.10 01:30:47, David Nolden wrote:
> > SVN commit 1089793 by zwabel:
> > --- trunk/extragear/sdk/kdevplatform/interfaces/icore.h #1089792:1089793
> > @@ -121,6 +121,10 @@
> > /** @return true if the application is currently being shut down */
> > virtual bool shuttingDown() const = 0;
> >
> > + Q_SIGNALS:
> > + /** Emitted when the initialization of the core components has
> > been completed */ + void initializationCompleted();
> > +
> > protected:
> > ICore(QObject *parent = 0);
> > static ICore *m_self;
>
> This is not needed, you can access the real core with Core::self()
> inside of shell. So this signal could be put into shell/core.h instead.
> Or do you have further plans for this?
You mean that because I only need it in shell, it shouldn't be public? Well it
definitely is a useful signal. Before this signal is emitted, the whole app is
not in a well-defined state, and for example you cannot open documents without
a crash. If an arbitrary component wants to open documents right after
startup, then it will need this signal to notice when it can do that. Right
now there is no plugin that needs it, but there certainly is a lot of
potential usecases, don't you think?
> > --- trunk/extragear/sdk/kdevplatform/interfaces/isession.h
> > #1089792:1089793 @@ -26,6 +26,7 @@
> > #include <ksharedconfig.h>
> > #include <kurl.h>
> >
> > +struct QUuid;
> > class QString;
> > class KUrl;
> >
> > @@ -54,6 +55,7 @@
> > virtual KUrl::List containedProjects() const = 0;
> > virtual KUrl pluginDataArea( const IPlugin* ) = 0;
> > virtual KSharedConfig::Ptr config() = 0;
> > + virtual QUuid id() const = 0;
> > };
> >
> > }
>
> Is this necessary? I wanted to leave the id an implementation detail and
> not expose it in the public interface. I don't think it makes sense to
> expose this to plugins.
Not really, I just thought the id belongs there as well, because we've already
made it a part of the public interface by showing it on the command-line, so
it should also be accessible in ISession for completeness.
Greetings, David
More information about the KDevelop-devel
mailing list