This file is indexed.

/usr/share/doc/libcwidget-doc/html/documentation/api/classcwidget_1_1fragment__cache.html is in libcwidget-doc 0.5.16-3.1ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>cwidget: cwidget::fragment_cache Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.4 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">cwidget&#160;<span id="projectnumber">0.5.16</span></div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespacecwidget.html">cwidget</a>      </li>
      <li class="navelem"><a class="el" href="classcwidget_1_1fragment__cache.html">fragment_cache</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">cwidget::fragment_cache Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="cwidget::fragment_cache" --><!-- doxytag: inherits="cwidget::fragment" -->
<p>A fragment that caches its contents; a cached result is used if the same width is passed to the layout routine twice in a row.  
 <a href="classcwidget_1_1fragment__cache.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="fragment__cache_8h_source.html">fragment_cache.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for cwidget::fragment_cache:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classcwidget_1_1fragment__cache.png" usemap="#cwidget::fragment_cache_map" alt=""/>
  <map id="cwidget::fragment_cache_map" name="cwidget::fragment_cache_map">
<area href="classcwidget_1_1fragment.html" title="A fragment represents a logical unit of text." alt="cwidget::fragment" shape="rect" coords="0,0,152,24"/>
</map>
 </div></div>

<p><a href="classcwidget_1_1fragment__cache-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac9bf4b5a92039afac32bf806f723f3f8"></a><!-- doxytag: member="cwidget::fragment_cache::fragment_cache" ref="ac9bf4b5a92039afac32bf806f723f3f8" args="(fragment *_contents)" -->
&#160;</td><td class="memItemRight" valign="bottom"><b>fragment_cache</b> (<a class="el" href="classcwidget_1_1fragment.html">fragment</a> *_contents)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6e401567b169e731b83527a78068ccfc"></a><!-- doxytag: member="cwidget::fragment_cache::invalidate" ref="a6e401567b169e731b83527a78068ccfc" args="()" -->
void&#160;</td><td class="memItemRight" valign="bottom"><b>invalidate</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classcwidget_1_1fragment__contents.html">fragment_contents</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcwidget_1_1fragment__cache.html#a439b2228002c84a2ad0a88cd213cce98">layout</a> (size_t firstw, size_t restw, const <a class="el" href="classcwidget_1_1style.html">style</a> &amp;st)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return all the lines of this fragment, given the "shape" of the fragment.  <a href="#a439b2228002c84a2ad0a88cd213cce98"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af214d9f50861ed6112e7043f7bb59755"></a><!-- doxytag: member="cwidget::fragment_cache::set_attr" ref="af214d9f50861ed6112e7043f7bb59755" args="(int attr)" -->
void&#160;</td><td class="memItemRight" valign="bottom"><b>set_attr</b> (int attr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcwidget_1_1fragment__cache.html#a43eb873bb4a73ad1df2861eb3bce3f11">max_width</a> (size_t first_indent, size_t rest_indent) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcwidget_1_1fragment__cache.html#a4d308cb6e94d1df64bb7f018bdce119a">trailing_width</a> (size_t first_indent, size_t rest_indent) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbool.html">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcwidget_1_1fragment__cache.html#a93c1ed786ebc12d762c7dd610cd6c5a3">final_newline</a> () const </td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>A fragment that caches its contents; a cached result is used if the same width is passed to the layout routine twice in a row. </p>
<p>Obviously this should only be done if you know that the contents are static. </p>
</div><hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a93c1ed786ebc12d762c7dd610cd6c5a3"></a><!-- doxytag: member="cwidget::fragment_cache::final_newline" ref="a93c1ed786ebc12d762c7dd610cd6c5a3" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classbool.html">bool</a> cwidget::fragment_cache::final_newline </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd><b>true</b> if this fragment ends in a newline. </dd></dl>

<p>Implements <a class="el" href="classcwidget_1_1fragment.html#a96a061594c74ae328768d2409b269372">cwidget::fragment</a>.</p>

<p>References <a class="el" href="classcwidget_1_1fragment.html#a96a061594c74ae328768d2409b269372">cwidget::fragment::final_newline()</a>.</p>

</div>
</div>
<a class="anchor" id="a439b2228002c84a2ad0a88cd213cce98"></a><!-- doxytag: member="cwidget::fragment_cache::layout" ref="a439b2228002c84a2ad0a88cd213cce98" args="(size_t firstw, size_t restw, const style &amp;st)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcwidget_1_1fragment__contents.html">fragment_contents</a> cwidget::fragment_cache::layout </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>firstw</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>w</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcwidget_1_1style.html">style</a> &amp;&#160;</td>
          <td class="paramname"><em>st</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return all the lines of this fragment, given the "shape" of the fragment. </p>
<p>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.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">firstw</td><td>the width to which the first line of the fragment should be formatted.</td></tr>
    <tr><td class="paramname">w</td><td>the width to which subsequent lines of the fragment should be formatted.</td></tr>
    <tr><td class="paramname">s</td><td>the enclosing style of this fragment. The fragment's size is guaranteed to be independent of s.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the lines of this fragment; the caller is responsible for deleting it. </dd></dl>

<p>Implements <a class="el" href="classcwidget_1_1fragment.html#a6bf3bdc84d2ff1d61bb1a5d47dd68298">cwidget::fragment</a>.</p>

<p>References <a class="el" href="classcwidget_1_1fragment.html#a6bf3bdc84d2ff1d61bb1a5d47dd68298">cwidget::fragment::layout()</a>.</p>

<p>Referenced by <a class="el" href="classcwidget_1_1widgets_1_1togglebutton.html#a142bac3dd77f91ec3d46b2322978627d">cwidget::widgets::togglebutton::paint()</a>.</p>

</div>
</div>
<a class="anchor" id="a43eb873bb4a73ad1df2861eb3bce3f11"></a><!-- doxytag: member="cwidget::fragment_cache::max_width" ref="a43eb873bb4a73ad1df2861eb3bce3f11" args="(size_t first_indent, size_t rest_indent) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t cwidget::fragment_cache::max_width </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>first_indent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>rest_indent</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">first_indent</td><td>the indentation of the first line, relative to a baseline (which may be outside this fragment).</td></tr>
    <tr><td class="paramname">rest_indent</td><td>the indentation of any other lines.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the maximum length of any line in this fragment. Any call to <a class="el" href="classcwidget_1_1fragment__cache.html#a439b2228002c84a2ad0a88cd213cce98" title="Return all the lines of this fragment, given the &quot;shape&quot; of the fragment.">layout()</a> with a width greater than this maximum length will produce the same result. </dd></dl>

<p>Implements <a class="el" href="classcwidget_1_1fragment.html#a26fb23c772ff73b9c0c5f33f529dde49">cwidget::fragment</a>.</p>

<p>References <a class="el" href="classcwidget_1_1fragment.html#a26fb23c772ff73b9c0c5f33f529dde49">cwidget::fragment::max_width()</a>.</p>

</div>
</div>
<a class="anchor" id="a4d308cb6e94d1df64bb7f018bdce119a"></a><!-- doxytag: member="cwidget::fragment_cache::trailing_width" ref="a4d308cb6e94d1df64bb7f018bdce119a" args="(size_t first_indent, size_t rest_indent) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t cwidget::fragment_cache::trailing_width </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>first_indent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>rest_indent</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">first_indent</td><td>the indentation of the first line.</td></tr>
    <tr><td class="paramname">rest_indent</td><td>the indentation of any other lines.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the length of any "trailing" line in the fragment, including indentation. </dd></dl>

<p>Implements <a class="el" href="classcwidget_1_1fragment.html#a5301d5867ecf8e36ab93c8a1a69bf440">cwidget::fragment</a>.</p>

<p>References <a class="el" href="classcwidget_1_1fragment.html#a5301d5867ecf8e36ab93c8a1a69bf440">cwidget::fragment::trailing_width()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/cwidget/<a class="el" href="fragment__cache_8h_source.html">fragment_cache.h</a></li>
<li>src/cwidget/fragment_cache.cc</li>
</ul>
</div>
<hr class="footer"/><address class="footer"><small>Generated on Fri Jun 17 2011 07:49:39 for cwidget by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address>
</body>
</html>