This file is indexed.

/usr/share/GNUstep/Documentation/Developer/Gui/ProgrammingManual/AppKit/outlineviews.html is in gnustep-gui-doc 0.25.0-4.

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
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (C) 2005-2006 Christopher Armstrong.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2, as published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".

This documentation is provided on an "AS IS" BASIS, WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND USEFULNESS
OF THE DOCUMENTATION IS WITH YOU (THE LICENSEE). IN NO EVENT WILL THE COPYRIGHT
HOLDERS BE LIABLE FOR DAMAGES, INCLUDING ANY DIRECT, INDIRECT,
SPECIAL, GENERAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF
THE USE OR INABILITY TO USE THIS DOCUMENTATION (INCLUDING BUT NOT
LIMITED TO LOSS OF DATA, USE, OR PROFITS; PROCUREMENT OF SUBSTITUTE
GOODS AND SERVICES; OR BUSINESS INTERUPTION) HOWEVER CAUSED, EVEN
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>Using the GNUstep AppKit 0.1: outlineviews</title>

<meta name="description" content="Using the GNUstep AppKit 0.1: outlineviews">
<meta name="keywords" content="Using the GNUstep AppKit 0.1: outlineviews">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="conceptindex.html#conceptindex" rel="index" title="conceptindex">
<link href="index.html#Top" rel="up" title="Top">
<link href="matrix.html#matrix" rel="next" title="matrix">
<link href="tableview.html#tableview" rel="prev" title="tableview">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>


</head>

<body lang="en">
<a name="outlineviews"></a>
<div class="header">
<p>
Next: <a href="matrix.html#matrix" accesskey="n" rel="next">matrix</a>, Previous: <a href="tableview.html#tableview" accesskey="p" rel="prev">tableview</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> &nbsp; [<a href="conceptindex.html#conceptindex" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Outline-Views"></a>
<h2 class="chapter">10 Outline Views</h2>

<p>An <em>outline view</em> is a specialised form of table view designed for displaying hierachical data in a tree like format. It looks alot like a Windows&rsquo; TreeView Control, but operates differently, provides much more powerful functionality and it is less tedious to programme.
</p>
<p>The node&rsquo;s in the outline view can be collapsed and expanded and display a list of sub-nodes. This makes the outline view hierachical.
</p>
<p>It uses the <code>NSOutlineView</code> class, which inherits from <code>NSTableView</code>. This means that most of the behaviour that applies to tableviews also applies to outline views, such as changing columns/rows and their display, etc. It extends the tableview with a hierachial layout for data, in which nodes can be expanded and contracted.
</p>
<p>Like the table view, the outline view control uses a data source object to get it&rsquo;s data, as well as a delegate to modify it&rsquo;s behaviour. These are objects implementing the informal protocols <code>NSOutlineViewDataSource</code> and <code>NSOutlineViewDelegate</code>. Although a delegate object is optional, outline views require a data source object.
</p>
<p>See the <cite>GNUstep GUI Reference</cite> for more information about outline views (including class documentation).
</p>
<a name="Using-a-Data-Source"></a>
<h3 class="section">10.1 Using a Data Source</h3>

<p>The data source for an outline view implements the <code>NSOutlineViewDataSource</code> informal protocol. Some of it&rsquo;s methods are compulsory; some are not.
</p>
<p>Note that a parameter in many of the delegate&rsquo;s methods is an untyped object <var>item</var>. This object is supplied by you, and the outline view passes it back to your delegate as a representation of a node or leaf row.
</p>
<p>The outline view requires you implement the following methods:
</p><dl compact="compact">
<dt><code>-(id) outlineView:(NSOutlineView*)outlineView child:(int)index ofItem:(id)item</code></dt>
<dd><p>Returns the item that is the child of <var>item</var> at <var>index</var>. A <code>nil</code> item means that you should return the children of the root item.
</p>
</dd>
<dt><code>-(BOOL) outlineView:(NSOutlineView*)outlineView isItemExpandable:(id)item</code></dt>
<dd><p>Returns whether <var>item</var> is expandable.
</p>
</dd>
<dt><code>-(int) outlineView:(NSOutlineView*)outlineView numberOfChildrenOfItem:(id)item</code></dt>
<dd><p>Returns the number of child items of <var>item</var>.
</p>
</dd>
<dt><code>-(id) outlineView:(NSOutlineView*)outlineView objectValueForTableColumn: (NSTableColumn*)tableColumn byItem:(id)item</code></dt>
<dd><p>Returns the data object for <var>item</var> in <var>tableColumn</var> of the table view.
</p></dd>
</dl>

<p>Full defintions of these (and optional methods) can be found in the <cite>GNUstep GUI Manual</cite>.
</p>
<hr>
<div class="header">
<p>
Next: <a href="matrix.html#matrix" accesskey="n" rel="next">matrix</a>, Previous: <a href="tableview.html#tableview" accesskey="p" rel="prev">tableview</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> &nbsp; [<a href="conceptindex.html#conceptindex" title="Index" rel="index">Index</a>]</p>
</div>



</body>
</html>