summaryrefslogtreecommitdiff
path: root/old/dw/html/dw-changes.html
blob: fdd56396943cb2c8bfdb75879c5e1265e319c8cb (plain)
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
<!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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.8"/>
<title>Dillo: Changes to the GTK+-based Release Version</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="https://www.dillo.org/dw/html/jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Dillo
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">Changes to the GTK+-based Release Version </div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><h2>Changes in Dw</h2>
<p>Related to the FLTK port, there have been many changes, this is a (hopefully complete) list:</p>
<ul>
<li>
<p class="startli">Rendering abstraction, read <a class="el" href="dw-overview.html">Dillo Widget Overview</a> and <a class="el" href="dw-layout-views.html">Layout and Views</a> for details. Some important changes:</p>
<ul>
<li>
<p class="startli">The underlying platform (e.g. the UI toolkit) is fully abstract, there are several platform independent structures replacing GTK+ structures, e.g. <a class="el" href="classdw_1_1core_1_1Event.html" title="Base class for all events. ">dw::core::Event</a>.</p>
<p class="endli"></p>
</li>
<li>
<p class="startli">The central class managing the widget tree is not anymore GtkDwViewport, but <a class="el" href="classdw_1_1core_1_1Layout.html" title="The central class for managing and drawing a widget tree. ">dw::core::Layout</a>.</p>
<p class="endli"></p>
</li>
<li>
<p class="startli">Drawing is done via <a class="el" href="classdw_1_1core_1_1View.html" title="An interface to encapsulate platform dependent drawing. ">dw::core::View</a>, a pointer is passed to <a class="el" href="classdw_1_1core_1_1Widget.html#a2e7d05212aabad32824fd577fb7e3dd7">dw::core::Widget::draw</a>.</p>
<p class="endli"></p>
</li>
<li>
The distinction between viewport coordinates and canvas coordinates (formerly world coordinates) has been mostly removed. (Only for views, it sometimes plays a role, see <a class="el" href="dw-layout-views.html">Layout and Views</a>). </li>
</ul>
<p class="endli"></p>
</li>
<li>
<p class="startli">Cursors have been moved to <a class="el" href="namespacedw_1_1core_1_1style.html" title="Anything related to Dillo Widget styles is defined here. ">dw::core::style</a>, see <a class="el" href="classdw_1_1core_1_1style_1_1StyleAttrs.html#aef2c1921311d44fd060aedf781e2a6b8">dw::core::style::Style::cursor</a>. <a class="el" href="classdw_1_1core_1_1Widget.html#a761535b4f71744668c78a81914002bd1">dw::core::Widget::setCursor</a> is now protected (and so only called by widget implementations).</p>
<p class="endli"></p>
</li>
<li>
<p class="startli">World coordinates are now called canvas coordinates.</p>
<p class="endli"></p>
</li>
<li>
<p class="startli">There is now a distinction between <a class="el" href="classdw_1_1core_1_1style_1_1StyleAttrs.html">dw::core::style::StyleAttrs</a> and <a class="el" href="classdw_1_1core_1_1style_1_1Style.html">dw::core::style::Style</a>.</p>
<p class="endli"></p>
</li>
<li>
<p class="startli">There is no base class for container widgets anymore. The former DwContainer::for_all has been removed, instead this functionality is now done via iterators (<a class="el" href="classdw_1_1core_1_1Widget.html#ab66387121a56322ea6e4168db857e013" title="Return an iterator for this widget. ">dw::core::Widget::iterator</a>, <a class="el" href="classdw_1_1core_1_1Iterator.html" title="Iterators are used to iterate through the contents of a widget. ">dw::core::Iterator</a>).</p>
<p class="endli"></p>
</li>
<li>
<p class="startli">DwPage is now called <a class="el" href="classdw_1_1Textblock.html" title="A Widget for rendering text blocks, i.e. paragraphs or sequences of paragraphs. ">dw::Textblock</a>, and DwAlignedPage <a class="el" href="classdw_1_1AlignedTextblock.html" title="Base widget for all textblocks (sub classes of dw::Textblock), which are positioned vertically and al...">dw::AlignedTextblock</a>.</p>
<p class="endli"></p>
</li>
<li>
<p class="startli"><a class="el" href="classdw_1_1Textblock.html" title="A Widget for rendering text blocks, i.e. paragraphs or sequences of paragraphs. ">dw::Textblock</a>, all sub classes of it, and <a class="el" href="classdw_1_1Table.html" title="A Widget for rendering tables. ">dw::Table</a> do not read "limit_text_width" from the preferences, but get it as an argument. (May change again.)</p>
<p class="endli"></p>
</li>
<li>
<p class="startli"><a class="el" href="classdw_1_1Table.html" title="A Widget for rendering tables. ">dw::Table</a> has been rewritten.</p>
<p class="endli"></p>
</li>
<li>
<p class="startli">Instead of border_spacing in the old DwStyle, there are two attributes, <a class="el" href="classdw_1_1core_1_1style_1_1StyleAttrs.html#a5865194add47d79910d2e2b5191ab0b9">dw::core::style::Style::hBorderSpacing</a> and <a class="el" href="classdw_1_1core_1_1style_1_1StyleAttrs.html#a0b1c442c655fec5e644c83120afa1798">dw::core::style::Style::vBorderSpacing</a>, since CSS allowes to specify two values. Without CSS, both attributes should have the same value.</p>
<p class="endli"></p>
</li>
<li>
<p class="startli">Images are handled differently, see <a class="el" href="dw-images-and-backgrounds.html">Images and Backgrounds in Dw</a>.</p>
<p class="endli"></p>
</li>
<li>
<p class="startli">Embedded UI widgets (formerly GtkWidget's) are handled differently, see <a class="el" href="namespacedw_1_1core_1_1ui.html" title="Anything related to embedded UI widgets is defined here. ">dw::core::ui</a>.</p>
<p class="endli"></p>
</li>
<li>
DwButton has been removed, instead, embedded UI widgets are used. See <a class="el" href="namespacedw_1_1core_1_1ui.html" title="Anything related to embedded UI widgets is defined here. ">dw::core::ui</a> and <a class="el" href="classdw_1_1core_1_1ui_1_1ComplexButtonResource.html">dw::core::ui::ComplexButtonResource</a>. </li>
</ul>
<p>Dw is now written C++, the transition should be obvious. All "Dw" prefixes have been removed, instead, namespaces are used now:</p>
<ul>
<li>
<a class="el" href="namespacedw_1_1core.html" title="The core of Dw is defined in this namespace. ">dw::core</a> contains the core, </li>
<li>
<a class="el" href="namespacedw_1_1core_1_1style.html" title="Anything related to Dillo Widget styles is defined here. ">dw::core::style</a> styles, </li>
<li>
<a class="el" href="namespacedw_1_1core_1_1ui.html" title="Anything related to embedded UI widgets is defined here. ">dw::core::ui</a> embedded UI resources, </li>
<li>
<a class="el" href="namespacedw_1_1fltk.html" title="This namespace contains FLTK implementations of Dw interfaces. ">dw::fltk</a> classes related to FLTK, and </li>
<li>
<a class="el" href="namespacedw.html" title="Dw is in this namespace, or sub namespaces of this one. ">dw</a> the widgets. </li>
</ul>
<h2>Documentation</h2>
<p>The old documentation has been moved to:</p>
<table class="doxtable">
<tr>
<th colspan="2">Old </th><th>New </th></tr>
<tr>
<td rowspan="2">Dw.txt </td><td>general part </td><td><a class="el" href="dw-overview.html">Dillo Widget Overview</a>, <a class="el" href="dw-usage.html">Dillo Widget Usage</a>, <a class="el" href="dw-layout-widgets.html">Layout and Widgets</a>, <a class="el" href="dw-widget-sizes.html">Sizes of Dillo Widgets</a> </td></tr>
<tr>
<td>remarks on specific widgets </td><td>respective source files: <a class="el" href="classdw_1_1Bullet.html" title="Displays different kind of bullets. ">dw::Bullet</a>, <a class="el" href="classdw_1_1core_1_1ui_1_1Embed.html" title="A widget for embedding UI widgets. ">dw::core::ui::Embed</a> </td></tr>
<tr>
<td rowspan="2">DwImage.txt </td><td>signals </td><td><a class="el" href="classdw_1_1core_1_1Layout_1_1LinkReceiver.html">dw::core::Layout::LinkReceiver</a> </td></tr>
<tr>
<td>rest </td><td><a class="el" href="classdw_1_1Image.html" title="Displays an instance of dw::core::Imgbuf. ">dw::Image</a>, <a class="el" href="dw-images-and-backgrounds.html">Images and Backgrounds in Dw</a> </td></tr>
<tr>
<td colspan="2">Imgbuf.txt </td><td><a class="el" href="classdw_1_1core_1_1Imgbuf.html" title="The platform independent interface for image buffers. ">dw::core::Imgbuf</a>, <a class="el" href="dw-images-and-backgrounds.html">Images and Backgrounds in Dw</a> </td></tr>
<tr>
<td colspan="2">DwPage.txt </td><td><a class="el" href="classdw_1_1Textblock.html" title="A Widget for rendering text blocks, i.e. paragraphs or sequences of paragraphs. ">dw::Textblock</a> </td></tr>
<tr>
<td colspan="2">DwRender.txt </td><td><a class="el" href="dw-overview.html">Dillo Widget Overview</a>, <a class="el" href="dw-layout-views.html">Layout and Views</a>, <a class="el" href="namespacedw_1_1core_1_1ui.html" title="Anything related to embedded UI widgets is defined here. ">dw::core::ui</a> </td></tr>
<tr>
<td colspan="2">DwStyle.txt </td><td><a class="el" href="namespacedw_1_1core_1_1style.html" title="Anything related to Dillo Widget styles is defined here. ">dw::core::style</a> </td></tr>
<tr>
<td colspan="2">DwTable.txt </td><td><a class="el" href="classdw_1_1Table.html" title="A Widget for rendering tables. ">dw::Table</a> </td></tr>
<tr>
<td colspan="2">DwWidget.txt </td><td><a class="el" href="classdw_1_1core_1_1Widget.html" title="The base class of all dillo widgets. ">dw::core::Widget</a>, <a class="el" href="dw-layout-widgets.html">Layout and Widgets</a>, <a class="el" href="dw-widget-sizes.html">Sizes of Dillo Widgets</a> </td></tr>
<tr>
<td colspan="2">Selection.txt </td><td><a class="el" href="classdw_1_1core_1_1SelectionState.html" title="This class handles selections, as well as activation of links, which is closely related. ">dw::core::SelectionState</a> </td></tr>
</table>
</div></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sat May 28 2016 11:47:43 for Dillo by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>