[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-core-devel
Subject: Re: KDE 3.0 - the last steps
From: Rolf Magnus <ramagnus () t-online ! de>
Date: 2002-03-21 15:22:57
[Download RAW message or body]
Argh! I wrote that mail once, and then kmail crashed and for some unknonwn
reason didn't give me my mail back... Showstopper ;)
On Thursday 21 March 2002 09:33, Simon Hausmann wrote:
> Just to make this clear: I believe your contribution to kdelibs was
> not an error!
>
> Just in contrary, I find the feature a pretty cool one.
Thanks, and thank you also for your comments. I just went a bit mad about all
this yesterday.
> - How about making GroupInfo::addItemInfo not take the whole lot of
> parameters but just a const ItemInfo & argument? (ItemInfo is
> meant to be used value based, right?)
Actually, it's not. But it might be a good idea to make it value based so that
it's consistent with the KFileMetaInfo hierachy, which actually is value
based. I wanted to make it impossible for the plugin to create objects of the
MimeTypeInfo stuff themselves by making the constructor private and making
them frinds, so I get control over it and can ensure that they are properly
created and added to the dict. And I also thought that this method makes it
more convenient because you need to write:
group->addItemInfo(lots, of, arguments)
instead of:
group->addItemInfo(KFileMimeTypeInfo::ItemInfo(lots, of, arguments)
> - KFileMetaInfoItem::string( bool mangled ) . I think the name is
> not very descriptive. I'd rather do something like
>
> enum ValueStringConversionFlags { Mangle, Unmangle };
>
> QString valueString( ValueStringConversionFlags flags = Mangle ) const;
>
> (ok, that's the other extreme, maybe too verbose :) -- although
> for the caller it's easy)
Hehe, yes. KFileMetaInfoItem::ValueStringConversionFlags is a bit long for a
name. And I think Unmangle is misleading. Better NoMangle or DontMangle or
so, but definitely more intuitive than true or false.
> - KFileMetaInfo: I think the groups(), supportedGroups(),
> preferredGroups(), preferredKeys() and editableGroups() methods could
> return a const QStringList & instead of just a const QStringList.
some of them are dynamically created, which would mean returning a reference
to a temporary. And QStringList is shared anyway, right? So it doesn't do any
harm.
> - I'm not sure, but maybe it would make sense to add private d
> pointers to containers like GroupInfo, etc.
Yes. I'll do this.
> Still the question whether to switch to the new API or whether to
> disable the feature for 3.0 can probably only be answered by you and
> Carsten, as you know the API and the intentions behind it best.
> (that at least I think explains the lack of comments :) .
Hmm. It's hard for me to decide this, because it can influence the KDE release
schedule and the stability of konqueror, which I don't want to decide alone.
If I had wanted this, I just would have added the new API to HEAD. That's why
I asked for help in the decision. And I wasn't sure about all the
consequences about the different solutions I suggested, so I was hoping that
more people comment on this, since a lot of people commented about the
general issues of introducing BIC changes between 3.0 and 3.1
> If you feel unsure then I'd rather delay the feature than pushing in
> things in a hurry. I think it's not a shame to delay something for
> the sake of an improved API. Not at all IMHO.
Yes, I also see it this way. Well, the interface is quite like I wanted it to
be now, but it's far from being as stable and tested as I'd like, and some
parts are not working fully yet. It'd be ok with me to remove it all in kde
3.0 and add a stable version to 3.1 then, but that would mean that every
kde3.1 package that has to do with KFileMetaInfo relies on kdelibs 3.1
(Nobody told me if this would be ok or not), and it would leave noatun
without id3 tags and ogg/vorbis comments, which would be bad.
The best thing that could happen now is some other showstopper that justifies
another delay for the release, so I'd have a week or so time to finalize
KFileMetaInfo. ;) And I found out that there are people who care and want to
help converting plugins, revising, bugfixing and testing.
--
And through Windows NT, you can see it throughout the design.
In a weak sense, it is a form of Unix.
(Bill Gates on UnixExpo '96)
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic