Newsgroup: it.comp.software.newsreader
Titolo: [Dialog] Primo messaggio marcato come letto

Altra piccola scocciatura che mi tormenta.
Ho impostato Dialog in modo che segni i messaggi immediatamente come
letti, appena li visualizzo.
Però, se apro un gruppo (cliccando sul suo nome nella lista) che contiene
messaggi non letti con il corpo già scaricato, e uno di questi messaggi è
proprio il primo della lista, viene automaticamente selezionato e marcato
come letto.
Io invece vorrei che non fosse marcato come letto, almeno finché il focus
rimane sulla lista dei newsgroup.
Qualche idea?
Grazie.
-- 
Ciao,
  Marco.
..."Stupid Dream", Porcupine Tree 1999

 come letto.
una soluzione "spuria" può essere quella di attivare, sotto Impostazioni
--> Impostazioni Generali --> Navigazione le opzioni
"Ritorna all'ultimo aricolo attivo quando si torna in un gruppo" e
"Ritorna all'ultimo aricolo attivo all'avvio"
in tal modo, quando apri un gruppo ritorni sempre all'ultimo post che
hai letto in quel gruppo, evitando perciò di selezionare e marcare come
letto un articolo nuovo. 

 "Ritorna all'ultimo aricolo attivo quando si torna in un gruppo" e
Ci avevo pensato, ma il problema si presenta in gruppi per i quali la
vista corrente mostra solo i pochi messaggi nuovi appena scaricati;
quindi, dato che "l'ultimo articolo attivo" non č piů visibile in elenco,
credo che Dialog selezioni comunque il primo messaggio dell'elenco, che č
un messaggio nuovo, ed ecco lě che lo marca come letto. O no? Adesso lo
provo per un po'...
-- 
Ciao,
  Marco.
..."The Juliet Letters", Elvis Costello & The Brodsky Quartet 1993

 vista corrente mostra solo i pochi messaggi nuovi appena scaricati;
nel senso che i post vecchi sono stati già "purgati" (bleah, che brutto
termine :D ) ? Beh, puoi sempre aumentare il periodo dopo il quale fare
il purge per i ng in questione...

 nel senso che i post vecchi sono stati già "purgati" (bleah, che brutto
No, nel senso che la mia vista predefinita mostra solo i thread contenenti
messaggi non letti (o con watch o keep). Quindi se l'ultimo articolo letto
in un newsgroup era l'ultimo non letto di un thread (il che accade quasi
sempre), al ritorno in quel gruppo non vedo più il thread, e quindi
neanche il messaggio.
-- 
Ciao,
  Marco.
..."This Land", Bill Frisell 1994

 rimane sulla lista dei newsgroup.
Se ho capito bene (non sono sicuro): Impostazioni generali -> Navigazione
-> Segna come letto -> Quando il pannello degli articoli è attivo
-- 
Fare Well! | 40tude Dialog 2.0.7.1 (in italiano) 
http://snurl.com/dialog
G          | Advice: TweakUI and Powertoys XP 
http://snurl.com/powertoys
                                                     25/10/2003 16.22.57
The principal's toupee is not a Frisbee (Bart's chalkboard #9F12)

 thread.
Certo che sì :)
Al momento i body è possibile cancellarli, volendo, «a ogni pulizia».
Però proprio stasera ho richiesto una nuova opzione di purging, per
cancellarli «dopo X giorni» (come già ora si può fare con l'intero post).
-- 
Fare Well! | 40tude Dialog 2.0.7.1 (in italiano) 
http://snurl.com/dialog
G          | Advice:     Clean your Windows XP 
http://www.xp-antispy.org
                                                     25/10/2003 21.23.46
The world will end in 5 minutes. Please log out.

 -> Segna come letto -> Quando il pannello degli articoli è attivo
Credevo anche io che bastasse questo, e invece no. Forse questa opzione
serve solo per chi non marca i messaggi come letti in base al tempo di
visualizzazione...
Il problema è che io li voglio marcare come letti appena ci clicco sopra,
quindi ho impostato Dialog in modo che li marchi come letti
automaticamente dopo 0 secondi. E a quanto pare questa impostazione è
indipendente dal pannello attivo.
Mi viene ora in mente che potrei togliere la marcatura automatica, e
aggiungere uno script che marca un messaggio come letto ogni volta che ci
clicco sopra, ottenendo lo stesso risultato ma senza l'inconveniente che
ha dato origine al thread... forse un po' macchinoso, ma potrebbe
funzionare.
-- 
Ciao,
  Marco.
..."You Had It Coming", Jeff Beck 2001

 clicco sopra, ottenendo lo stesso risultato ma senza l'inconveniente che
Provato adesso, funziona, ma ha un effetto collaterale. :-/
Nei newsgroup di cui scarico solo gli header, con un click scarico il
corpo dei messaggi. In sostanza quindi ora ho uno script
ARTICLELV_WM_LBUTTONUP con questi due comandi:
  ADo('GetSelectedMessageBodies');
  ADo('MarkRead');
L'effetto collaterale è che, per un messaggio senza corpo, la seconda
azione viene eseguita senza attendere la fine della prima: il messaggio
viene segnato come letto, poi arriva il corpo e quindi ridiventa non
letto.
Qualche idea su come attendere la fine della prima funzione prima di
eseguire la seconda? Ho anche provato con una if, ma niente da fare:
if (ADo('GetSelectedMessageBodies')) then ADo('MarkRead');
-- 
Ciao,
  Marco.
..."Close To The Edge", Yes 1972

 fare: if (ADo('GetSelectedMessageBodies')) then ADo('MarkRead');
In qualche mio vecchio esperimento, uno:
    sleep(500)
aveva risolto...
(il numero sono i millisecondi).
Ciao.
-- 
 /   _ _ | Xnews e la documentazione in italiano
( (/( (/ | 
http://web.lacasadialice.it/alanford/

     sleep(500)
Ci avevo pensato ma credevo che un numero troppo basso non bastasse, e uno
troppo altro rallentasse la lettura in caso di messaggi con il corpo già
scaricato. Invece anche con 500ms, che non sono molti, sembra
funzionare... faccio un po' di prove con valori più bassi. Grazie.


 funzionare... faccio un po' di prove con valori più bassi. Grazie.
Non va bene. :(
Ho notato che rallentava la visualizzazione dei messaggi con il corpo in
locale, come se la stessa sleep() fosse applicata prima di visualizzare il
corpo del messaggio, e non capisco perché.
-- 
Ciao,
  Marco.
..."Red", King Crimson 1974

 corpo del messaggio, e non capisco perché.
Allora puoi provare con questa:
|   If AChecked('PrintPreview')=false then Sleep(500);
Ovvero ritarda solo se il pulsante "Anteprima di stampa..." è grigio
(non disponibile - quindi non hai il corpo del messaggio).
Io cmq ho questo script e mi trovo bene:
| program ARTICLELV_WM_LBUTTONUP;
| 
| procedure OnWMessage (var Msg : TMessage; var handled : boolean);
| begin
|   lockdisplay;
|   ADo('ExpandThread');
|   unlockdisplay;
|   If AChecked('PrintPreview')=false then ADo('GetSelectedMessageBodies');
| end;
| 
| begin
| end.
non so se ti può essere utile..


 (non disponibile - quindi non hai il corpo del messaggio).
Grazie, ma niente da fare: il ritardo c'è comunque, anche quando clicco su
un messaggio di cui ho già il corpo. Boh?
Lo script che ho provato è questo:
| program ARTICLELV_WM_LBUTTONUP;
| 
| procedure OnWMessage(var Msg:TMessage;var handled:boolean);
| 
| begin
| If AChecked('PrintPreview')=false then
| begin
|    ADo('GetSelectedMessageBodies');
|    Sleep(500);
| end;
| ADo('MarkRead');
| end;
| 
| begin
| end.
In effetti, a dire il vero, il pulsante per l'anteprima di stampa non
sembra diventare mai inattivo, neanche nel momento in cui seleziono un
messaggio senza il corpo.
Se però tolgo la sleep(), allora il pulsante è inattivo finché non viene
scaricato il corpo (ma in questo modo poi ridiventa non letto, come già
detto).
Tra parentesi: come mai si usa mettere "|" davanti alle righe degli
script? Non è scomodo per il copia e incolla?
-- 
Ciao,
  Marco.
..."1978 gli dèi se ne vanno, gli arrabbiati restano!", Area 1978

 script? Non è scomodo per il copia e incolla?
Il  pipe,  secondo  prassi, cita righe copia/incollate da qualche fonte
esterna (ma non le righe del messaggio a cui si risponde).
Inoltre,  ha  il vantaggio, quando si copiano script, di evitare che le
righe vengano riformattate quando si incolla, o in ricezione.
-- 
                                          29/10/2003 14:15:59, daRkSidE
Un nuovo newsreader in Italiano: 40tude Dialog: 
http://snurl.com/dialog
Tradotto da Antonio 'Gandalf' Favata con l'aiuto di Enrico C e daRkSidE

 Lo script che ho provato è questo:
[8<]
Un'ultima idea... ^__^;;
Hai provato a mettere un:
    Ado('RefreshView');
da qualche parte?
(a volte sembra che s'incanti ed abbia bisogno di riprendersi...)


 un messaggio di cui ho già il corpo. Boh?
Prova anche con:
    If AEnabled('PrintPreview')=false then ...


     If AEnabled('PrintPreview')=false then ...
Ecco, questo andrebbe, ma continuano a venire fuori effetti collaterali.
8)
Riassumendo, il succo dello script è questo:
| If AEnabled('PrintPreview')=false then
| begin
| 	ADo('GetSelectedMessageBodies');
| 	Sleep(500);
| end;
| ADo('MarkRead');
Il problema è che se io mi trovo su un messaggio con il corpo, e clicco su
uno senza il corpo, la parte If non viene eseguita perché la condizione
viene valutata nel momento in cui il pulsante PrintPreview era ancora
attivo, dal messaggio precedente.
Chiaramente c'è il problema opposto se vado da uno senza corpo a uno con
il corpo (mi becco una Sleep inutile).
Mettere un'altra Sleep all'inizio è escluso, perché poi si rallenta la
visualizzazione dei messaggi con il corpo.
Possibile che non ci sia una funzione per controllare se il corpo è stato
scaricato o no? Usandola nella If dovrei (forse) risolvere.
-- 
Ciao,
  Marco.
..."The Glimpse", Trilok Gurtu 1997

 il corpo (mi becco una Sleep inutile).
Provare a mettere un Enter all'inizio?
|   PostKey( 13, False, False, False, False, False, False, False, False );
Cmq ho capito, ma io non so fare (il giorno che riuscirň a fare un
pulsante bistabile in Dialog sarň ricco...).
Oppure...
Facendo un passo indietro, grazie alle dritte di Maria Luisa (Malů mi
ricorda un dessert ;o), potresti riprendere il tuo originale:
|   ADo('GetSelectedMessageBodies');
|   ADo('MarkRead');
Al 'Markread' č giŕ associato il tasto "X", mentre al
'GetSelectedMessageBodies' (che altro non č che Online -> Ricevi i corpi
dei messaggi selezionati) potresti associare per esempio la "J".
Tutto ciň per vedere (ho fatto delle prove, a me funzia, ma Dialog
dipende troppo dalla marea degli altri settaggi - quindi prova tu) se
con la pressione dei tasti si comporta meglio, aspettando il turno di
ciascuna azione.
A me (tastiera IT), diventa:
|   PostKey( 74, False, False, False, False, False, False, False, False );  // key 'j'
|   PostKey( 88, False, False, False, False, False, False, False, False );  // key 'x'
Ciao.
_____________
ą 
http://www.bloodyfingermail.com/message.php?id=339151


 ą 
http://www.bloodyfingermail.com/message.php?id=339151
Ma... cos... LOL!! :D
Bucmarcato.
Grazie mille per la pazienza. ;)


 Ma... cos... LOL!! :D
Fiuw, anche se eravamo in clima di Halloween temevo una gaffe (visto
che non č il massimo del buongusto), ma č andata ^___^;;;
Ciao.


 Ma... cos... LOL!! :D
Fiuw, anche se eravamo in clima di Halloween temevo una gaffe (visto che
non č il massimo del buongusto), ma č andata ^___^;;;
Ciao.
-- 
