A fragment represents a logical unit of text.
More...
#include <fragment.h>
A fragment represents a logical unit of text.
◆ final_newline()
virtual bool cwidget::fragment::final_newline |
( |
| ) |
const |
|
pure virtual |
◆ layout()
Return all the lines of this fragment, given the "shape" of the fragment.
Note that some fragments ignore the given widths, so the caller is expected to either put everything in a formatting box (one that forces its contents to stay "in bounds") or manually clip the return value.
- Parameters
-
firstw | the width to which the first line of the fragment should be formatted. |
w | the width to which subsequent lines of the fragment should be formatted. |
s | the enclosing style of this fragment. The fragment's size is guaranteed to be independent of s. |
- Returns
- the lines of this fragment; the caller is responsible for deleting it.
Implemented in cwidget::fragment_cache.
Referenced by cwidget::dropbox().
◆ max_width()
virtual size_t cwidget::fragment::max_width |
( |
size_t |
first_indent, |
|
|
size_t |
rest_indent |
|
) |
| const |
|
pure virtual |
- Parameters
-
first_indent | the indentation of the first line, relative to a baseline (which may be outside this fragment). |
rest_indent | the indentation of any other lines. |
- Returns
- the maximum length of any line in this fragment. Any call to layout() with a width greater than this maximum length will produce the same result.
Implemented in cwidget::fragment_cache.
Referenced by cwidget::dropbox().
◆ trailing_width()
virtual size_t cwidget::fragment::trailing_width |
( |
size_t |
first_indent, |
|
|
size_t |
rest_indent |
|
) |
| const |
|
pure virtual |
- Parameters
-
first_indent | the indentation of the first line. |
rest_indent | the indentation of any other lines. |
- Returns
- the length of any "trailing" line in the fragment, including indentation.
Implemented in cwidget::fragment_cache.
The documentation for this class was generated from the following files: