Ho letto questo thread in quanto ho un problema (se cosi' si può definire) simile. Fino ad alcune versioni fa utilizzavo uno script userChrome per sostituire la scritta relativa alla priorità (nonché l'intestazione della relativa colonna) con delle icone che tra l'altro avevo io stesso creato in un piccolo file .png. Mi sono accorto da un po' di tempo di due cose:
- Lo script non funziona piu' (ho installato userChromeJS-1.5.xpi che credo sia la versione piu' recente)
L'intestazione testuale della colonna "Priorità" è correttamente sostituita con la relativa iconcina che ho creato io, ma le icone della priorità dei vari messaggi non vengono mostrate.
- Ho notato che esistono due voci "Priorità" nel menù contestuale ottenuto cliccando col destro: Priorità e Priorità (Icona). Le due voci fanno ovviamente comparire due distinte colonne nel pannello messaggi. La prima è quella testuale (che prima era interessata dallo script), la seconda in effetti consente di vedere sottoforma di icone i livelli di priorità dei messaggi. Il problema è che le icone utilizzate non sono sufficientemente (a mio avviso) chiare a distinguere i livelli, ed inoltre l'icona che contraddistingue la colonna (un punto esclamativo "!") è orribile. Mi domando se ci sia un modo per modificarle.
Ho provato l'estensione Enhanced Priority di cui si parla poco sopra e fa il suo dovere tranne per il fatto che anche qui le icone utilizzate non mi piacciono, solo che non ho trovato il relativo file (ammesso che ci sia) per eventualmente modificarle. Nelle impostazioni c'è una sezione che sembra puntare a dei file grafici ma non capisco dove siano visto che fanno capo a indirizzi del tipo chrome://....
Di seguito provo ad incollare il codice presente nei file dello script caso mai qualcuno avesse idea del perché non funziona più
userChrome.css
#priorityCol, treechildren::-moz-tree-image(priorityCol)
{list-style-image: url("Priority-icons-tb.png");}
treechildren::-moz-tree-image(priorityCol)
{-moz-image-region: rect(0px 16px 16px 0px);}
treechildren::-moz-tree-image(priorityCol, priorityNone)
{-moz-image-region: rect(0px 32px 16px 16px);}
treechildren::-moz-tree-image(priorityCol, priorityLowest)
{-moz-image-region: rect(0px 48px 16px 32px);}
treechildren::-moz-tree-image(priorityCol, priorityLow)
{-moz-image-region: rect(0px 64px 16px 48px);}
treechildren::-moz-tree-image(priorityCol, priorityNormal)
{-moz-image-region: rect(0px 80px 16px 64px);}
treechildren::-moz-tree-image(priorityCol, priorityHigh)
{-moz-image-region: rect(0px 96px 16px 80px);}
treechildren::-moz-tree-image(priorityCol, priorityHighest)
{-moz-image-region: rect(0px 112px 16px 96px);}
#priorityCol
{-moz-image-region: rect(0px 128px 16px 112px);
-moz-binding: url("chrome://global/content/bindings/tree.xml#treecol-image");
padding-left: 0 !important;
width: 23px;
max-width: 23px;}
userChrome.js
PriorityIcon = {
init: function () {
const p = ["priorityNotSet", "priorityNone", "priorityLowest",
"priorityLow", "priorityNormal", "priorityHigh", "priorityHighest"]
this._atom = []
with (Components
.classes["@mozilla.org/atom-service;1"]
.getService(Components.interfaces.nsIAtomService))
for (var i = 0; i <= 6; ++i) this._atom[i] = getAtom(p[i])
Components
.classes["@mozilla.org/observer-service;1"]
.getService(Components.interfaces.nsIObserverService)
.addObserver(this, "MsgCreateDBView", false)
},
observe: function (subject, topic, data) {
gDBView.addColumnHandler("priorityCol", this)
},
set: function (row, props) {
with (gDBView) var p = db
.GetMsgHdrForKey(getKeyAt(row))
.getUint32Property("priority")
props.AppendElement(this._atom[p])
},
// nsIMsgCustomColumnHandler...
getCellProperties: function (row, col, props) {this.set(row, props)},
getRowProperties: function (row, props) {},
getImageSrc: function (row, col) {},
getCellText: function (row, col) {},
getSortStringForRow: function (hdr) {},
getSortLongForRow: function (hdr) {return hdr.getUint32Property("priority")},
isString: function () {return false}
}
PriorityIcon.init()