extragear/sdk/kdevplatform

Andreas Pakulat apaku at gmx.de
Sun Feb 14 18:27:42 UTC 2010


On 14.02.10 14:48:29, David Nolden wrote:
> 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?

Hmm, I can't think of a specific case where a plugin would do something
once the shell is completely initialized (as we didn't need this so far
in any plugin). But I don't strong objections either, maybe I'm just not
creative enough :)

> > > --- 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.

True. Lets keep it there then. (Until it bites us back)

Andreas

-- 
You will gain money by an immoral action.




More information about the KDevelop-devel mailing list