/[groff]/groff/src/roff/troff/env.h
ViewVC logotype

Diff of /groff/src/roff/troff/env.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.31 by wlemb, Tue Jun 29 07:11:03 2004 UTC revision 1.32 by wl, Sun Oct 10 19:08:03 2004 UTC
# Line 19  You should have received a copy of the G Line 19  You should have received a copy of the G
19  with groff; see the file COPYING.  If not, write to the Free Software  with groff; see the file COPYING.  If not, write to the Free Software
20  Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */  Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
21    
22    class statem;
23    
24  struct size_range {  struct size_range {
25    int min;    int min;
26    int max;    int max;
# Line 149  class environment { Line 151  class environment {
151    hunits width_total;    hunits width_total;
152    int space_total;    int space_total;
153    hunits input_line_start;    hunits input_line_start;
   tab_stops tabs;  
154    node *tab_contents;    node *tab_contents;
155    hunits tab_width;    hunits tab_width;
156    hunits tab_distance;    hunits tab_distance;
# Line 185  class environment { Line 186  class environment {
186  #ifdef WIDOW_CONTROL  #ifdef WIDOW_CONTROL
187    int widow_control;    int widow_control;
188  #endif /* WIDOW_CONTROL */  #endif /* WIDOW_CONTROL */
   int ignore_next_eol;  
   int emitted_node;    // have we emitted a node since the last html eol tag?  
189    color *glyph_color;    color *glyph_color;
190    color *prev_glyph_color;    color *prev_glyph_color;
191    color *fill_color;    color *fill_color;
# Line 195  class environment { Line 194  class environment {
194    tab_type distance_to_next_tab(hunits *);    tab_type distance_to_next_tab(hunits *);
195    tab_type distance_to_next_tab(hunits *distance, hunits *leftpos);    tab_type distance_to_next_tab(hunits *distance, hunits *leftpos);
196    void start_line();    void start_line();
197    void output_line(node *, hunits);    void output_line(node *, hunits, int);
198    void output(node *nd, int retain_size, vunits vs, vunits post_vs,    void output(node *nd, int retain_size, vunits vs, vunits post_vs,
199                hunits width);                hunits width, int was_centered);
200    void output_title(node *nd, int retain_size, vunits vs, vunits post_vs,    void output_title(node *nd, int retain_size, vunits vs, vunits post_vs,
201                      hunits width);                      hunits width);
202  #ifdef WIDOW_CONTROL  #ifdef WIDOW_CONTROL
# Line 211  class environment { Line 210  class environment {
210    node *make_tab_node(hunits d, node *next = 0);    node *make_tab_node(hunits d, node *next = 0);
211    node *get_prev_char();    node *get_prev_char();
212  public:  public:
213      int seen_space;
214      int seen_eol;
215      int suppress_next_eol;
216      int seen_break;
217      tab_stops tabs;
218    const symbol name;    const symbol name;
219    unsigned char control_char;    unsigned char control_char;
220    unsigned char no_break_control_char;    unsigned char no_break_control_char;
# Line 219  public: Line 223  public:
223    environment(symbol);    environment(symbol);
224    environment(const environment *);     // for temporary environment    environment(const environment *);     // for temporary environment
225    ~environment();    ~environment();
226      statem *construct_state(int only_eol);
227    void copy(const environment *);    void copy(const environment *);
228    int is_dummy() { return dummy; }    int is_dummy() { return dummy; }
229    int is_empty();    int is_empty();
# Line 291  public: Line 296  public:
296    void possibly_break_line(int start_here = 0, int forced = 0);    void possibly_break_line(int start_here = 0, int forced = 0);
297    void do_break(int spread = 0);        // .br    void do_break(int spread = 0);        // .br
298    void final_break();    void final_break();
299    void add_html_tag(int, const char *);    node *make_tag(const char *name, int i);
   void add_html_tag(int, const char *, int);  
   void add_html_tag_tabs(int);  
   node *make_html_tag(const char *name, int i);  
   node *make_html_tag(const char *);  
300    void newline();    void newline();
301    void handle_tab(int is_leader = 0); // do a tab or leader    void handle_tab(int is_leader = 0); // do a tab or leader
302    void add_node(node *);    void add_node(node *);
# Line 314  public: Line 315  public:
315    const char *get_point_size_string();    const char *get_point_size_string();
316    const char *get_requested_point_size_string();    const char *get_requested_point_size_string();
317    void output_pending_lines();    void output_pending_lines();
318      void construct_format_state(node *n, int was_centered, int fill);
319      void construct_new_line_state(node *n);
320      void dump_troff_state();
321        
322    friend void title_length();    friend void title_length();
323    friend void space_size();    friend void space_size();

Legend:
Removed from v.1.31  
changed lines
  Added in v.1.32

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26