This forum has been archived. All content is frozen. Please use KDE Discuss instead.

KIcon in KAction non si disabilitano

Tags: None
(comma "," separated)
MpMp
Registered Member
Posts
13
Karma
0
OS
Buongiorno a tutti.
Vi faccio vedere il codice:

Code: Select all
KAction * addAct=new KAction( KIcon(":/Images/Images/add_128x128.png"), tr("Add"), this );
addAct->setEnabled( false );


L'immagine della KAction non viene visualizzata in scale di grigio (disabilitata).

Così invece funziona (cioè così la QAction se disabilitata è visualizzata in scale di grigi):
Code: Select all
QAction * addAct=new QAction( QIcon(":/Images/Images/add_128x128.png"), tr("Add"), this );
addAct->setEnabled( false );


Sbaglio qualcosa o è normale un comportamento simile?

Grazie
MpMp
pinotree
KDE Developer
Posts
222
Karma
7
OS
Ciao,

MpMp wrote:Sbaglio qualcosa o è normale un comportamento simile?


KIcon carica le icone usando KIconLoader, quindi dal tema di icone standard. Se vuoi caricare icone da risorse nella tua applicazione, allora usa QIcon direttamente.
Se la tua icona è il classico "+", puoi usare direttamente KIcon("list-add") per caricarla dal tema corrente di icone.

PS: in codice KDE è preferibile usare i18n() invece di tr().


Pino Toscano
MpMp
Registered Member
Posts
13
Karma
0
OS
Capito.

Ma da quel che ho visto in KAction non posso usare QIcon, quindi deduco che dovrò usare l'accoppiata QAction-QIcon, sbaglio?

Come faccio a sapere quali icone ho a disposizione nel tema standard? Devo scaricarmi il pacchetto delle icone oxygen?
pinotree
KDE Developer
Posts
222
Karma
7
OS
MpMp wrote:Ma da quel che ho visto in KAction non posso usare QIcon, quindi deduco che dovrò usare l'accoppiata QAction-QIcon, sbaglio?

KIcon isA QIcon (dal punto di vista dell'ereditarietà), quindi puoi usare KIcon ovunque una QIcon è richiesta.

MpMp wrote:Come faccio a sapere quali icone ho a disposizione nel tema standard? Devo scaricarmi il pacchetto delle icone oxygen?


... che hai già installate. `kdialog --geticon Desktop Actions` può essere un modo, oltre a quello di consultare le specifiche "Icon Naming" fi freedesktop.org: http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html


Pino Toscano
MpMp
Registered Member
Posts
13
Karma
0
OS
Grazie pinotree.


Bookmarks



Who is online

Registered users: bartoloni, Bing [Bot], Google [Bot], Sogou [Bot], Yahoo [Bot]