Newsgroup: it.comp.giochi.avventure.testuali
Titolo: [GLULX] redirect testo su altra finestra?

ciao a tutti,
e' possibile (e se si' come!?):
1) creare una finestra glulx di tipo TextBuffer nella quare re-indirizzare 
il normale output di testo che compare nella gg_mainwin?
2) ovvero: chiudere la gg_mainwin con glk_window_close() in modo indolore?
3) in altre parole: sostituire la gg_mainwin con una finestra 
*personalizzata*?
Francesco
http://www.sottosuolo.info
-------------------------------
Messaggio inviato da Forumer.it
http://www.Forumer.it
Crea il tuo forum gratis!

qualcosa l'ho trovata... ma funziona in parte:
glk_set_window(gg_nomefinestra);
in pratica mi consente di "dirottare" l'output in una mia finestra di tipo 
TextBuffer, ma non so come farglielo fare in modo permanente (e compreso 
il prompt, che invece viene lasciato nella gg_mainwin).
:?


Non collaudato nonche' assolutamente teorico:
Replace della MainWindow in parserm.h, che viene chiamata quando la
libreria vuole essere sicura di sputare sulla main e non sulla
status...
Per quando riguardo il prompt/input dovresti mettere mano sulla
KeyboardPrimitive, invece (routine assolutamente non banale)
Se semplicemente vuoi 'dirottare' tutto, secondo me il modo piu'
semplice e' cambiare sotto ai piedi della libreria gg_mainwin. Attento
a quando viene fatto il restore pero', devi fare la danza delle roccie
per ripristinarla!
Altrimenti ti conviene specificare meglio quello che vuoi fare :)
Buon divertimento

 Altrimenti ti conviene specificare meglio quello che vuoi fare :)
in pratica ho un fine recondito :)
spiego:
il problema vero e' la compatibilita' tra interpreti.
gli interpreti sotto Linux che ho provato (glulxe e Zag), si comportano in 
modo differente da quelli Windows. esempio, in "Little Falls":
- sotto win-glulxe: sfondo nero e colori personalizzati
- sotto glulxe per Linux (o Zag): sfondo bianco e soliti colori
trafficando un po', ho scoperto che se apro una finestra personalizzata, 
posso assegnare correttamente i colori anche sotto Linux, diversamente da 
quanto avviene con la gg_mainwin e gg_statuswin (anche se intervengo in 
"InitGlkWindow", come suggerito da qualche guida).
di conseguenza ho pensato: sostituisco gg_mainwin e gg_statuswin con 
finestre personalizzate, e ottengo maggiore compatibilita'.


Mah... della MainWindow ci sono DUE versioni (cosi' come di tante
funzioni) su #ifdef/#ifnot:
[ MainWindow;
         glk($002F, gg_mainwin); ! set_window
         statuswin_current=0;
];
... questa mi sembra DECISAMENTE glulx :)
Per quanto riguarda la storia di aprire delle finestre solo per settare
colori... beh, secondo me e' una PORCATA unica, degna dell'impiccagione
:P Gli stili sotto glk sono completamente astratti e il colore lo puoi
specificare solo sotto forma di "Hint" (fra l'altro, a livello di
stile)...
Mi sembra poco ragionevole un ambaradan del genere solo per girare
intorno ad una implementazione assolutamente lecita che non ti
aggrada...
D'altra parte effettivamente e' un filino anomalo che le prime finestre
siano 'fisse' e le altre customizzabili.. BOOOOoh

 da qualche guida).
Sei sicuro? A quanto sapevo le glk standard sotto linux ignoravano
bellamente tutti gli hints, quindi potevi settare solo i colori delle
graphics windows. Potrei sbagliarmi (e ora non ho modo di verificare),
ma mi pare proprio sia cosi'.
L'alternativa potrebbe essere quella di usare (e consigliare) delle glk 
diverse, come le gtk-glk (che dovrebbero leggere gli stylehints, ma 
credo siano a sviluppo fermo) o, ancora meglio, le garglk (mi rendo 
conto di essere monotono, ma mi son piaciute parecchio).
Oppure usare winglulxe con wine (funziona bene, lo usavo fino all'uscita 
di gargoyle).
bye
-- 
Paolo Lucchesi
email: plucchesi(at)tin(dot)it
home page: 
http://www.paololucchesi.it

 ancora meglio, le garglk
sono quelle utilizzate di default da gargoyle?? (io sto usando glulxe ecc. 
compilati sotto gargoyle)
grazie, ciao.


 ecc. compilati sotto gargoyle)
Proprio quelle. Dovrebbero leggere gli style hints.
Sia LF che il mio wip appaiono perfettamente.


 Sia LF che il mio wip appaiono perfettamente.
ooops, problema: da me no; LF ha lo sfondo bianco sulla TextBuffer; in 
effetti, durante l'esecuzione da console restituisce:
<< Glk library error: window_set_background_color: not a graphics window >>
ho compilato Gargoyle come da un precedente post.
:?


 << Glk library error: window_set_background_color: not a graphics window >>
Si, quello lo da anche a me, ma non dovrebbe essere quello il problema.
Hai copiato il file garglk.ini in una posizione adatta? Queste sono (in 
ordine inverso di priorita'):
/etc/garglk.ini
~/.garglkrc
~/garglk.ini
./garglk.ini
gamename.ini
Nel file usato, c'e'   stylehint     1   ?
Altrimenti non saprei...


 << Glk library error: window_set_background_color: not a graphics window >>
Altola'... window_set_background_color e' per le graphics windows! E 
infatti fa parte del modulo (opzionale) IMAGE.
Lo sfondo delle finestre di testo e' definito dall'hint 
stylehint_BackColor! Come sempre, sempre e solo un hint... (garglk lo 
dovrebbe gestire, pero', secondo i sorgenti)
Cosi' dicono le Sacre Tavole di Zarf :P ... siamo in una fase simile 
alle lamentele per Java AWT ...

 Hai copiato il file garglk.ini in una posizione adatta?
........nooo! l'ho messo in /etc e ora funzionano tutti gli stili!
GRAZIE!!
Francesco
http://www.sottosuolo.info
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it