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