[Development] QtDriveInfo module in Playground
André Somers
andre at familiesomers.nl
Fri Mar 1 10:54:43 CET 2013
Op 1-3-2013 10:22, ???? ?????????? schreef:
> I don't think it's a good idea to try to fix QStorageInfo.
>
> The main argument is that QStorageInfo is a monitor+info provider, but
> monitor should depend on a DBus in Linux; however info provider
> doesn't require that. Also, monitor requires internal thread on Mac.
> My point is that in many cases, when you doesn't need monitor itself,
> it's too heavy to create such a huge object just to receive volume info.
I don't find that a convincing argument. The implementation could be
such, that the heavy machinery is only instantiated when somebody
actually connects to the monitoring signals. We have connectNotify and
disconnectNotify available for that in QObject.
>
> That's why i separated my solution into 2 different classes; so
> QtDriveInfo doesn't require external dependencies, like DBus.
I think I would prefer to have the controls and notification signals
directly on the QDriveInfo class itself. That seems to be more
consistent with the rest of the Qt API, where I can't think of other
examples of a separate controller class.
>
> Next, QStorageInfo notification doesn't work for MingGW and Windows CE.
>
> Also QStorageInfo doesn't have internal caching.
>
I am not saying that I think your classes look bad in any way. In fact,
I think they look pretty neat!
I do have my doubts about the refresh() method. Isn't there any way to
automatically refresh without getting it too expensive?
Thanks for your efforts so far!
André
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20130301/64026b5a/attachment.html>
More information about the Development
mailing list