Hi,

Yes, that is correct. But you could compare for example:


    if (item.width == 5cm) {

        ...

    }


The idea is that this it build this into the numeric literals.


Simon


________________________________
From: Development 
<development-bounces+simon.hausmann=theqtcompany....@qt-project.org> on behalf 
of Konstantin Ritt <[email protected]>
Sent: Thursday, February 18, 2016 13:20
To: Sorvig Morten
Cc: Qt Project Development Mailing-List
Subject: Re: [Development] Scalable UIs in QtQuick (take 2)

Yet another question: when we write Item { id: item; width: 5cm }, what would 
item.width return? value expressed in logical pixels?


Konstantin

2016-02-18 15:05 GMT+03:00 Sorvig Morten 
<[email protected]<mailto:[email protected]>>:

> On 18 Feb 2016, at 12:35, Nikita Krupenko 
> <[email protected]<mailto:[email protected]>> wrote:
>
> 2016-02-18 12:50 GMT+02:00 Hausmann Simon 
> <[email protected]<mailto:[email protected]>>:
>> (1) In order to make it really easy to scale "logical" pixels without having 
>> to introduce your own context property or factor in a .qml file that you 
>> multiply everywhere, we could turn the regular "pixels" in QtQuick into 
>> truly logical pixels that scale with an application wide (or window wide) 
>> factor. So Image { width: 100 ... } will scale automatically from 100 
>> logical pixels to maybe 200 physical pixels on a x2 display. This assumes 
>> the availability of API to change this mapping.
>>
>> (2) In the events where you still _want_ to use physical pixels, you could 
>> use "px" units.
>>
>> So at first nothing would change for app developers at all because we map 
>> logical pixels to physical pixels. But
>> if you'd like to, you could opt into changing this mapping and having a 
>> relatively easy fallback to physical pixels using for example the "px" unit. 
>> We might as well offer the other physical units anyway, that probably causes 
>> little to no harm.
>
> Isn't (1) already done with Qt::AA_EnableHighDpiScaling? Though
> disabling this feature for some items would be useful, like for
> Canvas, which is broken now with this scaling.

This is indeed what is done for that flag and on OS X and iOS. In that
sense logical pixels are already supported.

"px" could be added, but what are the use cases? You almost never want to
have small content on high-DPI display. I see doing custom scaling in the
application as a possible one.

As a minor platform note, "px" would not be guaranteed to be physical pixels
on Apple operating systems. There can be further resolution virtualization,
for example when setting a scaled resolution for the display.

Morten



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

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

Reply via email to