Sophie

Sophie

distrib > * > cooker > x86_64 > by-pkgid > 5674b83e4098065ec8ee4138eac12e58 > files > 628

lib64gigi-devel-0.8.0-8.1074.1.x86_64.rpm

<!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"/>
<title>GG: Design</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="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">GG
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1 -->
  <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">Design </div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><h1><a class="anchor" id="design_purpose"></a>
Purpose</h1>
<p><a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> is designed to achieve several goals:</p>
<ul>
<li>Platform-independence: <a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> should be buildable on any platform that supports OpenGL</li>
<li>Driver-independence: <a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> should be a standalone GUI framework that does not require any particular application framework; though SDL and Ogre drivers are supplied, <a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> should be usable with any driver code the user wishes to supply</li>
<li>Easy extensibility: new controls and GUI behavior should be easy to incorporate</li>
<li>Complete graphical control for the user/designer: the user should not be limited by the author's lack of artistic skill!</li>
<li>Independence of UI elements from the source code: <a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> UI elements should be configurable as text files, so that UI design and alteration should not require a recompilation</li>
<li>Overall time efficiency: an application with a reasonable number of <a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> UI elements should not slow down significantly because of the rendering or handling of those elements</li>
<li>Overall space efficiency: each <a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> UI element should have a reasonably small data size</li>
<li>Efficient mixture of 2D and 3D graphical elements: it should be appropriate to use <a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> in any frame-based 3D application, even a realtime 3D video game</li>
<li>Simplicity of use: <a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> UI elements should be able to send arbitrary messages when manipulated by the user; there should be no message passing hierarchy imposed on the user</li>
</ul>
<h1><a class="anchor" id="design_features"></a>
Features</h1>
<p><a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> has the following features and services:</p>
<ul>
<li>Communication of UI controls via signals and slots</li>
<li>Support for 2D-, 3D-, and mixed-mode rendering</li>
<li>Managment of textures and fonts</li>
<li>Serialization of UI elements</li>
</ul>
<h1><a class="anchor" id="nonfeatures"></a>
Non-Features</h1>
<ul>
<li><a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> is not fully threadsafe, due to its use of signals and slots</li>
<li>No sound support is provided </li>
</ul>
</div></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Jun 15 2012 15:13:31 for GG by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1
</small></address>
</body>
</html>