#ifndef __PRINTWIN_H #define __PRINTWIN_H #ifndef __WINDOW_H #include #endif #ifndef __ARRAY_H #include #endif #ifndef __TEXT_H #include #endif // @doc INTERNAL // @class TPrintwin | Classe per la implementazione di una finestra XVT per la stampa: // scrivendoci su tutto l'output va sulla stampante corrente. // Usata direttamente da . // // @base public | TWindow class TPrintwin : public TWindow // @author:(INTERNAL)Villa // @access Private Member { // @cmember:(INTERNAL) Indica se la stampa e' stata interrotta bool _aborted; // @cmember:(INTERNAL) Descrizione completa dello stato della stampante PRINT_RCD* _printrcd; // @cmember:(INTERNAL) Lunghezza del modulo di stampa restituito dal driver int _formlen; // @cmember:(INTERNAL) Lunghezza del modulo di stampa settato sulla stampante int _pagelen; // @cmember:(INTERNAL) Larghezza del modulo di stampa int _formwidth; // @cmember:(INTERNAL) L'intero background della pagina (vedi ) TArray* _bg; // @cmember:(INTERNAL) TText da stampare TTextfile& _txt; // @cmember:(INTERNAL) Array di immagini di stampare nel modulo sotto al testo TArray _images; // @cmember:(INTERNAL) Distanza in pixel tra una riga e la successiva int _lead; // @cmember:(INTERNAL) Numero di pixel dalla linea base al limite superiore del font int _ascent; // @cmember:(INTERNAL) Numero di pixel dalla linea base al limite inferiore del font int _descent; // @cmember:(INTERNAL) Dimensione dell'offset orizzontale int _hofs; // @cmember:(INTERNAL) Dimensione dell'offset verticale int _vofs; // @cmember:(INTERNAL) Altre caratteristihce del font (vedi XVT) int _chary; // @cmember:(INTERNAL) Dimensione del font di stampa int _char_size; // @cmember:(INTERNAL) Altre caratteristihce del font (vedi XVT) bool _inited; // @cmember:(INTERNAL) linee voute da stampare (per offset) bool _blank_lines_to_print; // @cmember:(INTERNAL) Permette di disegnare lo sfondo della riga

-esima void paint_background(long j); // @cmember:(INTERNAL) Permette di disegnare la riga

-esima void paint_row(long j); // @cmember:(INTERNAL) Permette di disegnare un'immagine alla riga y void paint_image(int y, const char* cp); // @access Public Member public: // @cmember:(INTERNAL) Permette di disegnare la parte di finestra per la pagina

bool print_band(int page, const RCT& rct); // @cmember Ritorna se la stampa e' stata interrotta (viene ritornata anche della // ) bool aborted() const { return _aborted; } // @cmember Inizia la stampa (Ritorna FALSE se viene interrotta) bool do_print(word page_from, word page_to, word copies); // @cmember Costruttore TPrintwin(TTextfile& txt, const char* title = NULL); // @cmember Distruttore virtual ~TPrintwin(); }; #endif