<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook V3.1-Based Variant V1.0//EN" [ <!ENTITY kstocks "<application>kstocks</application>"> <!ENTITY % addindex "IGNORE"> <![ %addindex; [ <!ENTITY kdedocindex SYSTEM "docindex.docbook"> ]]> ]> <!-- kdoctemplate v0.8 October 1 1999 --> <!-- This template was designed by: David Rugge davidrugge@mindspring.com with lots of help from: Eric Bischoff ebisch@cybercable.tm.fr and Frederik Fouvry fouvry@sfs.nphil.uni-tuebingen.de of the KDE DocBook team. You may freely use this template for writing any sort of KDE documentation. If you have any changes or improvements, please let us know. In the future, we may want to change from SGML-based DocBook to XML-based DocBook. To make this change easier, please be careful : - in XML, the case of the <tags> and attributes is relevant ; - also, quote all attributes. Please don't forget to remove all these comments in your final documentation, thanks ;-). --> <!-- ---------------------------------------------------------------- --> <!-- The language must be changed in the <book> tag for translations. --> <book id="kstocks" lang="en"> <!-- This header contains all of the meta-information for the document such as Authors, publish date, the abstract, and Keywords --> <bookinfo> <title>The KStocks Handbook</title> <authorgroup> <author> <firstname></firstname> <othername></othername> <surname>Andreas Wuest</surname> </author> </authorgroup> <!-- This is a set of Keywords for indexing by search engines. Please at least include KDE, the KDE package it is in, the name of your application, and a few relevant keywords. --> <keywordset> <keyword>KDE</keyword> <keyword>KStocks</keyword> </keywordset> <!-- Date and version information of the documentation Don't forget to include this last date and this last revision number, we need them for translation coordination ! Please respect the format of the date (DD/MM/YYYY) and of the version (Major.minor.lesser), it could be used by automation scripts --> <date>Thu Jan 4 13:34:32 CET 2001</date> <releaseinfo>2.0.1</releaseinfo> <!-- Brief revision history. Unlike the preceeding information, this is not mandatory. Try to keep this section brief. This is the history of the *documentation* (the history of the *application* goes to the introduction), but nothing prevents you from using the same release numbers for both the application the documentation. --> <revhistory> <revision> <revnumber></revnumber> <date></date> <authorinitials></authorinitials> <revremark>Cleaned up a few typos. </revremark> </revision> <revision> <revnumber>2.0.1 </revnumber> <date>Thu Jan 4 13:34:32 CET 2001</date> <authorinitials></authorinitials> <revremark>Initial release. </revremark> </revision> </revhistory> <!-- Abstract about this handbook --> <abstract> <para> This Handbook describes <application>KStocks</application> Version 2.0.1 <application>KStocks</application> </para> </abstract> </bookinfo> <!-- The contents of the documentation beginS here. Label each chapter so with the id attribute. This is necessary for two reasons: it allows you to easily reference the chapter from other chapters of your document, and if there is no ID, the name of the generated HTML files will vary from time to time making it hard to manage for maintainers and for the CVS system. Any chapter labelled (OPTIONAL) may be left out at the author's discretion. Other chapters should not be left out in order to maintain a consistent documentation style across all KDE apps. --> <chapter id="introduction"> <title>Introduction</title> <!-- The introduction chapter contains a brief introduction for the application that explains what it does, where to get new versions of the app, where to report problems, and a brief revision history of the app. Basically a long version of the abstract. --> <para> The complete user manual to <application>KStocks</application>, version 2.0.1 </para> <!-- Note that the revhistory tags apply to the documentation version and not to the app version. That is why we use an ItemizedList here. --> <sect1 id="kstocks-revhistory"> <title>KStocks Revision History</title> <para> <itemizedlist> <listitem><para> 2.0.1 - first public release </para></listitem> </itemizedlist> </para> </sect1> </chapter> <chapter id="installation"> <title>Installation</title> <sect1 id="getting-kstocks"> <title>How to obtain KStocks</title> <para> <application>KStocks</application> is part of the KDE project <ulink url="http://www.kde.org">http://www.kde.org</ulink>. <application>KStocks</application> can be found on <ulink url="ftp://ftp.kde.org/pub/kde/">ftp://ftp.kde.org/pub/kde/</ulink>, the main ftp site of the KDE project. </para> </sect1> <sect1 id="requirements"> <title>Requirements</title> <!-- List any special requirements for your application here. This should include: .Libraries or other software that is not included in kdesupport, kdelibs, or kdebase. .Hardware requirements like amount of RAM, disk space, graphics card capabilities, screen resolution, special expansion cards, etc. .Operating systems the app will run on. If your app is designed only for a specific OS, (you wrote a graphical LILO configurator for example) put this information here. --> <para> In order to successfully use <application>KStocks</application>, you need KDE 1.1. Foobar.lib is required in order to support the advanced <application>KStocks</application> features. <application>KStocks</application> uses about 5 megs of memory to run, but this may vary depending on your platform and configuration. </para> <para> All required libraries as well as <application>KStocks</application> itself can be found on <ulink url="ftp://ftp.kapp.org"> The <application>KStocks</application> home page</ulink>. </para> </sect1> <sect1 id="compilation"> <title>Compilation and installation</title> <para> In order to compile and install KStocks on your system, type the following in the base directory of the KStocks distribution: <screen width="40"> <prompt>%</prompt> <userinput>./configure</userinput> <prompt>%</prompt> <userinput>make</userinput> <prompt>%</prompt> <userinput>make install</userinput> </screen> </para> <para>Since KStocks uses autoconf and automake you should have not trouble compiling it. Should you run into problems please report them to the author at <ulink url="mailto:AndreasWuest@gmx.de"> Andreas Wuest</ulink>.</para> </sect1> <sect1 id="configuration"> <title>Configuration</title> <para>Don't forget to tell your system to start the <filename>dtd</filename> dicer-toaster daemon first, or KStocks won't work !</para> </sect1> </chapter> <chapter id="using-kapp"> <title>Using KStocks</title> <!-- This chapter should tell the user how to use your app. You should use as many sections (Chapter, Sect1, Sect3, etc...) as is necessary to fully document your application. --> <para> <!-- Note that all graphics should be in .png format. Use no gifs because of patent issues. --> <screenshot> <screeninfo>Here's a screenshot of <application>KStocks</application></screeninfo> <graphic fileref="screenshot.png" format="png"></graphic> </screenshot> </para> <sect1 id="kapp-features"> <title>More KStocks features</title> <para>It slices! It dices! and it comes with a free toaster!</para> <para> The Squiggle Tool <guiicon><inlinegraphic fileref="squiggle.png" format="png"></inlinegraphic></guiicon> is used to draw squiggly lines all over the <application>KStocks</application> main window. It's not a bug, it's a feature! </para> </sect1> </chapter> <chapter id="commands"> <title>Command Reference</title> <!-- (OPTIONAL, BUT RECOMMENDED) This chapter should list all of the application windows and their menubar and toolbar commands for easy reference. Also include any keys that have a special function but have no equivalent in the menus or toolbars. This may not be necessary for small apps or apps with no tool or menu bars. --> <para></para> <sect1 id="kapp-mainwindow"> <title>The main KStocks window</title> <para></para> <sect2> <title>The File Menu</title> <para> <variablelist> <varlistentry> <term><menuchoice> <shortcut> <keycombo><keycap>Ctrl</keycap><keycap>n</keycap></keycombo> </shortcut> <guimenu>File</guimenu> <guimenuitem>New</guimenuitem> </menuchoice></term> <listitem><para><action>Creates a new document</action></para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <shortcut> <keycombo><keycap>Ctrl</keycap><keycap>s</keycap></keycombo> </shortcut> <guimenu>File</guimenu> <guimenuitem>Save</guimenuitem> </menuchoice></term> <listitem><para><action>Saves the document</action></para></listitem> </varlistentry> <varlistentry> <term><menuchoice> <shortcut> <keycombo><keycap>Ctrl</keycap><keycap>q</keycap></keycombo> </shortcut> <guimenu>File</guimenu> <guimenuitem>Quit</guimenuitem> </menuchoice></term> <listitem><para><action>Quits <application>KStocks</application></action></para></listitem> </varlistentry> </variablelist> </para> </sect2> </sect1> </chapter> <chapter id="developers"> <title>Developer's Guide to KStocks</title> <!-- (OPTIONAL) A Programming/Scripting reference chapter should be used for apps that use plugins or that provide their own scripting hooks and/or development libraries. --> <para> Programming <application>KStocks</application> plugins is a joy to behold. Just read through the next 66 pages of API's to learn how! </para> <!-- Use refentries to describe APIs. Refentries are fairly complicated and you should consult the docbook reference for further details. The example below was taken from that reference and shortened a bit for readability. --> <refentry id="re-1007-unmanagechildren-1"> <refmeta> <refentrytitle>XtUnmanageChildren</refentrytitle> <refmiscinfo>Xt - Geometry Management</refmiscinfo> </refmeta> <refnamediv> <refname>XtUnmanageChildren </refname> <refpurpose>remove a list of children from a parent widget's managed list. </refpurpose> <indexterm id="ix-1007-unmanagechildren-1"><primary>widgets</primary><secondary>removing</secondary></indexterm> <indexterm id="ix-1007-unmanagechildren-2"><primary>XtUnmanageChildren</primary></indexterm> </refnamediv> <refsynopsisdiv> <refsynopsisdivinfo> <date>4 March 1996</date> </refsynopsisdivinfo> <synopsis> void XtUnmanageChildren(<replaceable parameter>children</replaceable>, <replaceable parameter>num_children</replaceable>) WidgetList <replaceable parameter>children</replaceable>; Cardinal <replaceable parameter>num_children</replaceable>; </synopsis> <refsect2 id="r2-1007-unmanagechildren-1"> <title>Inputs</title> <variablelist> <varlistentry> <term><replaceable parameter>children</replaceable> </term> <listitem> <para>Specifies an array of child widgets. Each child must be of class RectObj or any subclass thereof. </para> </listitem> </varlistentry> <varlistentry> <term><replaceable parameter>num_children</replaceable> </term> <listitem> <para>Specifies the number of elements in <replaceable parameter>children</replaceable>. </para> </listitem> </varlistentry> </variablelist> </refsect2></refsynopsisdiv> <refsect1 id="r1-1007-unmanagechildren-1"> <title>Description </title> <para><function>XtUnmanageChildren()</function> unmaps the specified widgets and removes them from their parent's geometry management. The widgets will disappear from the screen, and (depending on its parent) may no longer have screen space allocated for them. </para> <para>Each of the widgets in the <replaceable parameter>children</replaceable> array must have the same parent. </para> <para>See the “Algorithm” section below for full details of the widget unmanagement procedure. </para> </refsect1> <refsect1 id="r1-1007-unmanagechildren-2"> <title>Usage</title> <para>Unmanaging widgets is the usual method for temporarily making them invisible. They can be re-managed with <function>XtManageChildren()</function>. </para> <para>You can unmap a widget, but leave it under geometry management by calling <function>XtUnmapWidget()</function>. You can destroy a widget's window without destroying the widget by calling <function>XtUnrealizeWidget()</function>. You can destroy a widget completely with <function>XtDestroyWidget()</function>. </para> <para>If you are only going to unmanage a single widget, it is more convenient to call <function>XtUnmanageChild()</function>. It is often more convenient to call <function>XtUnmanageChild()</function> several times than it is to declare and initialize an array of widgets to pass to <function>XtUnmanageChildren()</function>. Calling <function>XtUnmanageChildren()</function> is more efficient, however, because it only calls the parent's <function>change_managed()</function> method once. </para> </refsect1> <refsect1 id="r1-1007-unmanagechildren-3"> <title>Algorithm </title> <para><function>XtUnmanageChildren()</function> performs the following: </para> <variablelist> <varlistentry> <term>- </term> <listitem> <para>Ignores the child if it already is unmanaged or is being destroyed. </para> </listitem> </varlistentry> <varlistentry> <term>- </term> <listitem> <para>Otherwise, if the child is realized, it makes it nonvisible by unmapping it. </para> </listitem> </varlistentry> </variablelist> <para> </para> </refsect1> <refsect1 id="r1-1007-unmanagechildren-4"> <title>Structures</title> <para>The <type>WidgetList</type> type is simply an array of widgets: </para> <screen id="sc-1007-unmanagechildren-1">typedef Widget *WidgetList; </screen> </refsect1> </refentry> </chapter> <chapter id="faq"> <title>Questions and Answers</title> <!-- (OPTIONAL but recommended) This chapter should include all of the silly (and not-so-silly) newbie questions that fill up your mailbox. This chapter should be reserved for BRIEF questions and answers! If one question uses more than a page or so then it should probably be part of the "Using this Application" chapter instead. You should use links to cross-reference questions to the parts of your documentation that answer them. This is also a great place to provide pointers to other FAQ's if your users must do some complicated configuration on other programs in order for your application work. --> <para></para> <qandaset> <qandaentry> <question> <para>My Mouse doesn't work. How do I quit <application>KStocks</application>?</para> </question> <answer> <para>You silly goose! Check out the <link linkend="commands">Commands Section</link> for the answer.</para> </answer> </qandaentry> <qandaentry> <question> <para>Why can't I twiddle my documents?</para> </question> <answer> <para>You can only twiddle your documents if you have the foobar.lib installed.</para> </answer> </qandaentry> </qandaset> </chapter> <chapter id="credits"> <!-- Include credits for the programmers, documentation writers, and contributors here. The license for your software should then be included below the credits with a reference to the appropriate license file included in the KDE distribution. --> <title>Credits and License</title> <para> <application>KStocks</application> </para> <para> Program copyright 1997 John Q. Hacker <email>jqh@kde.org</email> </para> <para> Contributors: <itemizedlist> <listitem><para>Konqui the KDE Dragon <email>konqui@kde.org</email></para> </listitem> <listitem><para>Tux the Linux Penguin <email>tux@linux.org</email></para> </listitem> </itemizedlist> </para> <para> Documentation copyright 1999 George N. Ugnacious <email>gnu@kde.org</email> </para> <para> Translations done by: <itemizedlist> <listitem> <para>Babel D. Fish <email>babelfish@kde.org</email> (Sanskrit)</para> </listitem> </itemizedlist> </para> <!-- For URL links to common stuff like the one below, always use paths like "common/gpl-licence". In this path, "common" will be a symbolic link built at "make install" time. This link will normally point to $KDEDIR/share/doc/HTML/en/common, where "en" should be replaced with the current language. --> <para> This program is licensed under the terms of the <ulink url="common/gpl-license.html">GNU GPL</ulink>. </para> </chapter> <![ %addindex; [ &kdedocindex; ]]> </book>