On 01/03/13 20:50, Иван Комиссаров wrote:
>
> 01.03.2013, в 13:54, André Somers <[email protected]> написал(а):
>
> 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.
>
> The argument is that you can't use QStorageInfo class from QtCore itself or 
> an application that uses only QtCore. You're forced to use external 
> dependencies right now, while QDriveInfo class is must-have class for IO 
> operations (you can check if there's enough space on a hard drive before 
> copying file to if). Linking to DBus for that... hm...
see my answer below.

>
>>>
>>> That's why i separated my solution into 2 different classes; so QtDriveInfo 
>>> doesn't require external dependencies, like DBus.

storageinfo does not _require_ dbus. It uses udisks by dbus if _available_.

>> 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.
>
> What about QFile/QFileInfo separation?:)
>
>>>
>>> Next, QStorageInfo notification doesn't work for MingGW and Windows CE.

Do any substantial number of people actually use Qt on Windows CE?
There is a version of mingw that WMI should work on: MinGW64
I haven't tried it.


>>>
>>> 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?
>
> So far, i didn't find any solution for that...
>
>>
>> Thanks for your efforts so far!
>>
>> André
> _______________________________________________
> Development mailing list
> [email protected]
> http://lists.qt-project.org/mailman/listinfo/development
>
> _______________________________________________
> Development mailing list
> [email protected]
> http://lists.qt-project.org/mailman/listinfo/development
>


-- 
Lorn Potter
Senior Software Engineer, QtSensors/QtSensorGestures/QtSystemInfo


_______________________________________________
Development mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to