File: container_8hh-source.html

package info (click to toggle)
gfcui 2.3.1-2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 43,420 kB
  • ctags: 18,023
  • sloc: cpp: 53,967; sh: 31,555; makefile: 1,322; perl: 108
file content (193 lines) | stat: -rw-r--r-- 16,224 bytes parent folder | download | duplicates (3)
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
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=ISO-8859-1"
 http-equiv="content-type">
  <title>GTK+ Foundation Classes</title>
  <link href="gfc.css" rel="stylesheet" type="text/css">
  <meta content="The GFC Development Team" name="author">
  <meta content="Core Library Reference Manual" name="description">
</head>
<body style="color: rgb(0, 0, 0); background-color: rgb(243, 244, 248);"
 alink="#000099" link="#000099" vlink="#990099">
<table style="text-align: left; width: 1227px; height: 117px;"
 border="0" cellpadding="0" cellspacing="0">
  <tbody>
    <tr>
      <td
 style="text-align: center; background-color: rgb(255, 255, 255); width: 220px; vertical-align: top;"><img
 alt="GFC Logo" src="../images/gfc.png"
 style="width: 207px; height: 92px;"></td>
      <td
 style="text-align: center; background-color: rgb(87, 107, 152); vertical-align: middle;"><img
 alt="GFC Title Logo" src="../images/gfc-title.png"
 style="width: 418px; height: 76px;"><br>
      </td>
    </tr>
    <tr>
      <td
 style="text-align: center; background-color: rgb(65, 77, 104); vertical-align: middle;"><big><span
 style="color: rgb(255, 255, 153); font-weight: bold;">Reference Manual</span></big><br>
      </td>
      <td
 style="text-align: center; background-color: rgb(148, 164, 200); vertical-align: middle;"><small
 style="font-family: helvetica,arial,sans-serif;"><a
 href="../html/index.html">Main Page</a>&nbsp; |&nbsp; <a
 href="../html/namespaces.html">Namespace List</a>&nbsp; |&nbsp; <a
 href="classes.html">Alphabetical List</a>&nbsp; |&nbsp; <a
 href="../html/annotated.html">Class List</a>&nbsp; |&nbsp; <a
 href="../html/files.html">File List</a></small><br>
      </td>
    </tr>
  </tbody>
</table>
<small> </small>
</body>
</html>
<!-- Generated by Doxygen 1.3.8 -->
<h1>container.hh</h1><a href="container_8hh.html">Go to the documentation of this file.</a><pre class="fragment"><div>00001 <span class="comment">/*  GFC-UI: GTK+ Foundation Classes (User Interface Library)</span>
00002 <span class="comment"> *  Copyright (C) 2002-2004 The GFC Development Team.</span>
00003 <span class="comment"> *</span>
00004 <span class="comment"> *  This program is free software; you can redistribute it and/or modify</span>
00005 <span class="comment"> *  it under the terms of the GNU General Public License as published by</span>
00006 <span class="comment"> *  the Free Software Foundation; either version 2 of the License, or</span>
00007 <span class="comment"> *  (at your option) any later version.</span>
00008 <span class="comment"> *</span>
00009 <span class="comment"> *  This program is distributed in the hope that it will be useful,</span>
00010 <span class="comment"> *  but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
00011 <span class="comment"> *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the</span>
00012 <span class="comment"> *  GNU Library General Public License for more details.</span>
00013 <span class="comment"> *</span>
00014 <span class="comment"> *  You should have received a copy of the GNU Library General Public License</span>
00015 <span class="comment"> *  along with this program; if not, write to the Free Software</span>
00016 <span class="comment"> *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.</span>
00017 <span class="comment"> */</span>
00018 
00024 
00025 <span class="preprocessor">#ifndef GFC_GTK_CONTAINER_HH</span>
00026 <span class="preprocessor"></span><span class="preprocessor">#define GFC_GTK_CONTAINER_HH</span>
00027 <span class="preprocessor"></span>
00028 <span class="preprocessor">#ifndef GFC_GTK_WIDGET_HH</span>
00029 <span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="widget_8hh.html">gfc/gtk/widget.hh</a>&gt;</span>
00030 <span class="preprocessor">#endif</span>
00031 <span class="preprocessor"></span>
00032 <span class="preprocessor">#ifndef __GTK_CONTAINER_H__</span>
00033 <span class="preprocessor"></span><span class="preprocessor">#include &lt;gtk/gtkcontainer.h&gt;</span>
00034 <span class="preprocessor">#endif</span>
00035 <span class="preprocessor"></span>
00036 <span class="keyword">namespace </span>GFC {
00037 
00038 <span class="keyword">namespace </span>Gtk {
00039 
00050 
<a name="l00051"></a><a class="code" href="classGFC_1_1Gtk_1_1Container.html">00051</a> <span class="keyword">class </span><a class="code" href="classGFC_1_1Gtk_1_1Container.html">Container</a> : <span class="keyword">public</span> <a class="code" href="classGFC_1_1Gtk_1_1Widget.html">Widget</a>
00052 {
00053         <span class="keyword">friend</span> <span class="keyword">class </span><a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Object.html">G::Object</a>;
00054 
00055         <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z457_0">Container</a>(<span class="keyword">const</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html">Container</a>&amp;);
00056         <a class="code" href="classGFC_1_1Gtk_1_1Container.html">Container</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html">Container</a>&amp;);
00057 
00058 <span class="keyword">protected</span>:
00061 
00062         <span class="keyword">explicit</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z457_0">Container</a>(GtkContainer *container, <span class="keywordtype">bool</span> owns_reference = <span class="keyword">false</span>);
00069 
00073 
00074         <span class="keyword">typedef</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">G::Signal&lt;void, Widget&amp;&gt;</a> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">AddSignalType</a>;
00075         <span class="keyword">typedef</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1SignalProxy.html">G::SignalProxy&lt;TypeInstance, AddSignalType&gt;</a> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1SignalProxy.html">AddSignalProxy</a>;
00076         <span class="keyword">static</span> <span class="keyword">const</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">AddSignalType</a> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z458_8">add_signal</a>;
00082 
00083         <span class="keyword">typedef</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">G::Signal&lt;void, Widget&amp;&gt;</a> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">RemoveSignalType</a>;
00084         <span class="keyword">typedef</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1SignalProxy.html">G::SignalProxy&lt;TypeInstance, RemoveSignalType&gt;</a> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1SignalProxy.html">RemoveSignalProxy</a>;
00085         <span class="keyword">static</span> <span class="keyword">const</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">RemoveSignalType</a> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z458_9">remove_signal</a>;
00091 
00092         <span class="keyword">typedef</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">G::Signal&lt;void&gt;</a> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">CheckResizeSignalType</a>;
00093         <span class="keyword">typedef</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1SignalProxy.html">G::SignalProxy&lt;TypeInstance, CheckResizeSignalType&gt;</a> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1SignalProxy.html">CheckResizeSignalProxy</a>;
00094         <span class="keyword">static</span> <span class="keyword">const</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">CheckResizeSignalType</a> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z458_10">check_resize_signal</a>;
00099 
00100         <span class="keyword">typedef</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">G::Signal&lt;void, Widget*&gt;</a> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">SetFocusChildSignalType</a>;
00101         <span class="keyword">typedef</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1SignalProxy.html">G::SignalProxy&lt;TypeInstance, SetFocusChildSignalType&gt;</a> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1SignalProxy.html">SetFocusChildSignalProxy</a>;
00102         <span class="keyword">static</span> <span class="keyword">const</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1Signal.html">SetFocusChildSignalType</a> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z458_11">set_focus_child_signal</a>;
00108 
00110 
00111 <span class="keyword">public</span>:
00112         <span class="keyword">typedef</span> sigc::slot&lt;void, Widget&amp;&gt; <a class="code" href="classGFC_1_1Gtk_1_1Container.html#w0">ForeachSlot</a>;
00121 
00124         
00125         <span class="keyword">virtual</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z459_0">~Container</a>();
00127 
00131         
00132         GtkContainer* <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z460_0">gtk_container</a>() <span class="keyword">const</span>;
00134 
00135         <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z460_1">operator GtkContainer* </a>() <span class="keyword">const</span>;
00137 
00138         <span class="keywordtype">bool</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z460_2">is_resize_container</a>() <span class="keyword">const</span>;
00141 
00142         GType <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z460_3">child_type</a>() <span class="keyword">const</span>;
00148 
00149         <a class="code" href="classGFC_1_1Gtk_1_1Widget.html">Widget</a>* <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z460_4">focus_child</a>() <span class="keyword">const</span>;
00151         
00152         <span class="keywordtype">bool</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z460_5">get_children</a>(std::vector&lt;Widget*&gt;&amp; child_list) <span class="keyword">const</span>;
00157 
00158         <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z460_6">get_border_width</a>() <span class="keyword">const</span>;
00160         
00161         <a class="code" href="namespaceGFC_1_1Gtk.html#a334">ResizeMode</a> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z460_7">get_resize_mode</a>() <span class="keyword">const</span>;
00163 
00164         <span class="keywordtype">bool</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z460_8">get_focus_chain</a>(std::vector&lt;Widget*&gt;&amp; focusable_widgets) <span class="keyword">const</span>;
00173 
00174         <a class="code" href="classGFC_1_1Gtk_1_1Adjustment.html">Adjustment</a>* <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z460_9">get_focus_vadjustment</a>() <span class="keyword">const</span>;
00177 
00178         <a class="code" href="classGFC_1_1Gtk_1_1Adjustment.html">Adjustment</a>* <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z460_10">get_focus_hadjustment</a>() <span class="keyword">const</span>;
00181 
00185 
00186         <span class="keywordtype">void</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z461_0">add</a>(<a class="code" href="classGFC_1_1Gtk_1_1Widget.html">Widget</a>&amp; widget);
00197 
00198         <span class="keywordtype">void</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z461_1">remove</a>(<a class="code" href="classGFC_1_1Gtk_1_1Widget.html">Widget</a>&amp; widget);
00206 
00207         <span class="keywordtype">void</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z461_2">check_resize</a>();
00210 
00211         <span class="keywordtype">void</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z461_3">set_focus_child</a>(<a class="code" href="classGFC_1_1Gtk_1_1Widget.html">Widget</a>&amp; widget);
00215 
00216         <span class="keywordtype">void</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z461_4">set_border_width</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> border_width);
00227 
00228         <span class="keywordtype">void</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z461_5">set_resize_mode</a>(<a class="code" href="namespaceGFC_1_1Gtk.html#a334">ResizeMode</a> resize_mode);
00234 
00235         <span class="keywordtype">void</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z461_6">foreach</a>(<span class="keyword">const</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#w0">ForeachSlot</a>&amp; each);
00241 
00242         <span class="keywordtype">void</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z461_7">set_reallocate_redraws</a>(<span class="keywordtype">bool</span> needs_redraws);
00246 
00247         <span class="keywordtype">void</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z461_8">set_focus_vadjustment</a>(<a class="code" href="classGFC_1_1Gtk_1_1Adjustment.html">Adjustment</a> *adjustment);
00253 
00254         <span class="keywordtype">void</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z461_9">set_focus_hadjustment</a>(<a class="code" href="classGFC_1_1Gtk_1_1Adjustment.html">Adjustment</a> *adjustment);
00260 
00261         <span class="keywordtype">void</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z461_10">resize_children</a>();
00266 
00267         <span class="keywordtype">void</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z461_11">propagate_expose</a>(<a class="code" href="classGFC_1_1Gtk_1_1Widget.html">Widget</a>&amp; child, <span class="keyword">const</span> <a class="code" href="classGFC_1_1Gdk_1_1EventExpose.html">Gdk::EventExpose</a>&amp; event);
00279 
00280         <span class="keywordtype">void</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z461_12">set_focus_chain</a>(<span class="keyword">const</span> std::vector&lt;Widget*&gt;&amp; focusable_widgets);
00288 
00289         <span class="keywordtype">void</span> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z461_13">unset_focus_chain</a>();
00291 
00295 
00296         <span class="keyword">const</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1SignalProxy.html">AddSignalProxy</a> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z462_0">sig_add</a>();
00298 
00299         <span class="keyword">const</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1SignalProxy.html">RemoveSignalProxy</a> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z462_1">sig_remove</a>();
00301 
00302         <span class="keyword">const</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1SignalProxy.html">CheckResizeSignalProxy</a> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z462_2">sig_check_resize</a>();
00305 
00306         <span class="keyword">const</span> <a class="codeRef" doxygen="gfccore.tag:" href="classGFC_1_1G_1_1SignalProxy.html">SetFocusChildSignalProxy</a> <a class="code" href="classGFC_1_1Gtk_1_1Container.html#z462_3">sig_set_focus_child</a>();
00308 
00310 };
00311 
00312 } <span class="comment">// namespace Gtk</span>
00313 
00314 } <span class="comment">// namespace GFC</span>
00315 
00316 <span class="preprocessor">#include &lt;gfc/gtk/inline/container.inl&gt;</span>
00317 
00318 <span class="preprocessor">#endif // GFC_GTK_CONTAINER_HH</span>
00319 <span class="preprocessor"></span>
</div></pre><hr size="1"><address style="align: right;"><small>Generated on Tue Aug 24 00:34:30 2004 for GFC-UI by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 ></a> 1.3.8 </small></address>
</body>
</html>