![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /usr/share/doc/renaissance-doc/html/manual/ |
Upload File : |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <!--Converted with LaTeX2HTML 2002-2-1 (1.71) original version by: Nikos Drakos, CBLU, University of Leeds * revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan * with significant contributions from: Jens Lippmann, Marek Rouchal, Martin Wilck and others --> <HTML> <HEAD> <TITLE>1.4 Introduction to basic Renaissance autolayout objects</TITLE> <META NAME="description" CONTENT="1.4 Introduction to basic Renaissance autolayout objects"> <META NAME="keywords" CONTENT="manual"> <META NAME="resource-type" CONTENT="document"> <META NAME="distribution" CONTENT="global"> <META NAME="Generator" CONTENT="LaTeX2HTML v2002-2-1"> <META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css"> <LINK REL="STYLESHEET" HREF="manual.css"> <LINK REL="next" HREF="node7.html"> <LINK REL="previous" HREF="node5.html"> <LINK REL="up" HREF="node2.html"> <LINK REL="next" HREF="node7.html"> </HEAD> <BODY BGCOLOR="#FFFFFF" text="#000000" link="#0000FF" vlink="#4444FF" alink="#3388FF"> <B> Next: <A NAME="tex2html356" HREF="node7.html">1.5 The minimum size</A> </B> <B>Up: <A NAME="tex2html352" HREF="node2.html">1. Renaissance AutoLayout</A> </B> <B> Previous: <A NAME="tex2html346" HREF="node5.html">1.3 The basics of</A> </B> <BR> <P> <!--End of Navigation Panel--> <!--Table of Child-Links--> <A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A> <UL> <LI><A NAME="tex2html357" HREF="node6.html#SECTION00241000000000000000">1.4.1 Boxes</A> <LI><A NAME="tex2html358" HREF="node6.html#SECTION00242000000000000000">1.4.2 Grids</A> <LI><A NAME="tex2html359" HREF="node6.html#SECTION00243000000000000000">1.4.3 Spaces</A> </UL> <!--End of Table of Child-Links--> <HR> <H1><A NAME="SECTION00240000000000000000"> 1.4 Introduction to basic Renaissance autolayout objects</A> </H1> As in most other autolayout toolkits, most of the basic autolayout objects in Renaissance are logical views which group different objects and display them in rows, or columns, or tables. These autolayout views as often called ``containers'' in the literature. They are invisibile, logical objects, which contain other objects, and organize the contained objects in rows, or columns, or tables, depending on the type of container. <P> In the next few sections we will provide a short description of the basic Renaissance autolayout objects. <P> <H2><A NAME="SECTION00241000000000000000"> 1.4.1 Boxes</A> </H2> By far the most common containers are boxes. Boxes are used to layout objects in columns, or rows. A horizontal box can layout objects in a row; a vertical box can layout objects in a column. A box object is invisible; it is only a logical container which lays out the objects it contains, and can be placed in a window wherever you can place a normal object. You add objects in a box, and the box automatically gets bigger to accomodate the objects, and arranges the objects inside itself to be on a row/column. <P> Naturally, boxes are themselves objects, so you can put boxes inside other boxes. A window usually contains a complete hierarchy of boxes, organizing the objects into lines and columns, one into the other one. <P> Depending on the logic which the box uses to lay out the objects, it can be of a different type. In Renaissance, there are two basic types of boxes: a ``standard'' box, and a ``proportional'' box. The standard box is the one used most often; the proportional box is normally used only for special effects, when the views contained in the box must be kept with sizes in specified proportions; a typical example is that of the ``Cancel'' and ``OK'' buttons in panels, which should be of the same size (the minimum size of the bigger of the two). This can be easily done by using a proportional box rather than a standard box to layout the buttons (as will be explained in full details later). <P> In summary, in Renaissance there are four basic types of boxes: horizontal standard boxes, horizontal proportional boxes, vertical standard boxes, and vertical proportional boxes. <P> <H2><A NAME="SECTION00242000000000000000"> 1.4.2 Grids</A> </H2> A grid is a container, which can layout its objects as if they were in an invisible table. Grids are much more complex and much rarer than boxes; still, there are cases where the layout can be done using a grid, but can't be done with boxes, no matter how many. <P> A grid organizes the boxes it contains into rows and columns. <P> TODO: talk more about grids <P> <H2><A NAME="SECTION00243000000000000000"> 1.4.3 Spaces</A> </H2> Spaces are not containers - they are invisible views, with a minimum initial size of zero. When more space is available, the spaces expand, thus consuming space and creating areas of empty space in the window, normally for alignment purposes. They can be needed in some cases, to control where the alignment or borders or spacing of other objects. You can put a space wherever you can put any other view. <P> <HR><B> Next: <A NAME="tex2html356" HREF="node7.html">1.5 The minimum size</A> </B> <B>Up: <A NAME="tex2html352" HREF="node2.html">1. Renaissance AutoLayout</A> </B> <B> Previous: <A NAME="tex2html346" HREF="node5.html">1.3 The basics of</A> </B> <!--End of Navigation Panel--> <ADDRESS> 2008-03-19 </ADDRESS> </BODY> </HTML>