<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
  <head>
    <meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
    <title>Knowledge</title>
    <style>
    <!--
    tr.inner_header { background-color:#99CCFF !important; color:#00315A !important; font-weight:bold !important; }
    tr.outer_header { background-color:#00315a !important; }
    -->
    </style>
  </head>
  <body lang="en-US">
  <div align="right">
   <p><i>Last modified <csobj w="108" h="16" t="DateTime" locale="00000809" format="LongDate" region="0">28 November 2006</csobj></i></p>
  </div>
  <h2>Knowledge Base</h2>
  <table border="0" cellpadding="2" cellspacing="1" bgcolor="#dddddd">
   <tbody>
    <tr>
     <th align="left" bgcolor="#dddddd"><b>Date</b></th>
     <th align="left" bgcolor="#dddddd"><b>Title</b></th>
     <th align="left" bgcolor="#dddddd">Abstract</th>
    </tr>
    <tr>
     <td bgcolor="white">Sep 20. 2002</td>
     <td bgcolor="white"><a href="not_again.html">Do not show this again"-dialogs</a></td>
     <td bgcolor="white">
            In some situations, OpenOffice.org warns or informs the user about something using a modal dialog, with the option to permanently
            switch off this special warning or info ....</td>
    </tr>
    <tr>
     <td bgcolor="white">Sep 1, 2004</td>
     <td bgcolor="white"><a href="help_ids.html">The HelpID system</a></td>
     <td bgcolor="white">In OpenOffice.org, ever user interface element (a dialog control, a menu item, whatever), needs to have a unique help id.
          To some extent, you as the developer are responsible for ensuring this ...
</td>
    </tr>
    <tr>
     <td bgcolor="white">Jan 9, 2004</td>
     <td bgcolor="white"><a href="http://framework.openoffice.org/files/documents/25/1335/CommonUI.sxw">loading common UI on demand</a> (sxw)</td>
     <td bgcolor="white">This document describes an architecture for loading common user interface (dialogs, tab pages) on demand,
            instead of placing them in shared libraries to link against.
</td>
    </tr>
    <tr>
     <td bgcolor="white"><nobr>Jul 7, 2004</nobr></td>
     <td bgcolor="white"><a href="http://specs.openoffice.org/ui_in_general/api/ProgrammaticControlOfMenuAndToolbarItems.sxw">Programmatic Control of Menu and Toolbar Items</a> (sxw)</td>
     <td bgcolor="white">This feature should enable 3rd party developers to adapt menu bar and toolbar layouts to their needs.
          It will make menus and toolbars accessible to UNO developers and provide access to interfaces to insert/remove
          and modify menu items, popup menus and toolbar items during Office runtime.
</td>
    </tr>
    <tr>
     <td bgcolor="white"><nobr>Nov. 28, 2006</nobr></td>
     <td bgcolor="white"><a href="DialogSpecificationandGuidelines.odt">Dialog Specification and Guidelines</a> (odt)</td>
     <td bgcolor="white">This documents describes the visual guidelines of dialog design in OpenOffice.org
</td>
    </tr>
    <tr>
     <td bgcolor="white"></td>
     <td bgcolor="white"></td>
     <td bgcolor="white"></td>
    </tr>
   </tbody>
  </table>
  <h3>FAQ</h3>
  <p>Please have a look into this <a href="../howto/index.html">faq list</a>. It is a slackly collection of frequently asked questions, plus their answers of course ...</p>
 </body>
</html>
