[SailfishDevel] QML IconButton in SFOS 3.1
Slava Monich
slava.monich at jolla.com
Wed Aug 14 11:57:43 UTC 2019
Apparently properties of type color don't want to be undefined (now I
don't understand why I'm not getting the warning) - have you tried
something like "#00000000" instead of undefined?
-S.
> Hi Slava,
>
> my code, corresponding snippet:
>
> IconButton {
> id: image
> anchors.centerIn: parent
> down: pressed || parent.pressed
> icon.opacity: iconOpacity
> icon.source: iconName || iconSource
> icon.sourceSize.height: iconHeight
> icon.sourceSize.width: iconWidth
> onClicked: item.clicked()
>
> Component.onCompleted: {
> if ("color" in icon) {
> icon.color = undefined
> }
> }
> }
>
> On SFOS 3.0.3.9 (ported to OnePlus X), I get errors for a line with
> icon.color = undefined :
>
> file:///... Error: Cannot assign [undefined] to QColor
>
> So, it seems that this property was introduced before 3.1.x, but not
> used in 3.0.3.
>
> Rinigus
>
>
>
> On Wed, Aug 14, 2019 at 1:07 PM Slava Monich <slava.monich at jolla.com
> <mailto:slava.monich at jolla.com>> wrote:
>
> Hi Rinigus,
>
> AFAICT icon.color appeared in 3.1 and it wasn't there before.
>
> This piece of QML seems to work for me without any warnings on
> both 2.0.1.7 (no icon.color) and 3.1.1.xxx (latest devel, has
> icon.color):
>
> IconButton {
> icon.source: "image://theme/icon-m-refresh"
> Component.onCompleted: {
> if ("color" in icon) {
> icon.color = undefined
> }
> }
> }
>
> I'm not sure if it does what you want it to do, but it doesn't
> produce any warnings!
>
> And no, I'm not in a position to formulate the official position :)
>
> Cheers,
>
> -Slava
>
>
>> Hi,
>>
>> it would be good to get some kind of official position on QML
>> IconButton issue. Is it considered for fixing or it will stay as
>> it is? Slava's suggestion didn't work since color member is
>> available on older versions of SFOS as well.
>>
>> Rinigus
>>
>> On Wed, Aug 7, 2019 at 2:29 PM rinigus <rinigus.git at gmail.com
>> <mailto:rinigus.git at gmail.com>> wrote:
>>
>> Hi,
>>
>> any ideas on how to fix this IconButton issue? Is there a way
>> to query SFOS version and make an ugly fix on the basis of
>> that...
>>
>> Cheers,
>>
>> Rinigus
>>
>> On Sat, Aug 3, 2019 at 6:06 PM rinigus <rinigus.git at gmail.com
>> <mailto:rinigus.git at gmail.com>> wrote:
>>
>> Slava,
>>
>> unfortunately, it doesn't work. IconButton property icon
>> has color subpropery defined in earlier SFOS versions as
>> well. So,
>>
>> IconButton{
>>
>> id:image
>>
>> [...]
>>
>> Component.onCompleted:{
>>
>> if("color"inimage.icon)
>>
>> image.icon.color=undefined;
>>
>> }
>>
>> }
>>
>> results in lots of warnings (Cannot assigned [undefined]
>> to QColor).
>>
>> Maybe there is some var I can check in QML to state that
>> SFOS version is >= 3.1.0.0?
>>
>> Rinigus
>>
>> On Sat, Aug 3, 2019 at 5:33 PM Slava Monich
>> <slava.monich at jolla.com <mailto:slava.monich at jolla.com>>
>> wrote:
>>
>> I don't think there's an "official" way of
>> maintaining backward compatibility but I'd humbly
>> suggest something like if ("color" in icon) ...
>>
>> e.g. I do this kind of thing to notifications:
>>
>> Notification {
>> id: clipboardNotification
>> previewBody: "Copied to clipboard"
>> Component.onCompleted: {
>> if ("icon" in clipboardNotification) {
>> clipboardNotification.icon =
>> "icon-s-clipboard"
>> }
>> }
>> }
>>
>> Cheers,
>>
>> -Slava
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.sailfishos.org/pipermail/devel/attachments/20190814/d5f8a57e/attachment-0001.html>
More information about the Devel
mailing list