<!--
* 
*
*  ProLinga-Doc
*
*  Copyright (C) 2002-2008 Xobas Software.
*  All rights reserved.
*  
*  This file is part of ProLinga-Doc.
*
*  ProLinga-Doc is free software: you can redistribute it and/or modify
*  it under the terms of the GNU General Public License as published by
*  the Free Software Foundation, either version 3 of the License, or
*  (at your option) any later version.
*
*  ProLinga-Doc is distributed in the hope that it will be useful,
*  but WITHOUT ANY WARRANTY; without even the implied warranty of
*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
*  GNU General Public License for more details.
*
*  You should have received a copy of the GNU General Public License
*  along with ProLinga-Doc.  If not, see <http://www.gnu.org/licenses/>.
*
*  More information is available at the following addresses:
*
*  Website     : http://www.prolinga.org
*
*  Email       : prolinga-list@prolinga.org
*
*
-->
<refentry id="obj_liststore">
  <refmeta>
    <refentrytitle>ListStore Object</refentrytitle>
    <manvolnum>1</manvolnum>
  </refmeta>

  <refnamediv>
    <refname>ListStore</refname>
    <refpurpose>Definitions for multi column list boxes.</refpurpose>
  </refnamediv>

  <refsect1 id="obj_liststore_introduction">
    <title>Introduction</title>
    <para>
      ListStore holds the data which can be used to display in a multi column 
      listbox. The logic command <link linkend="cmd_list">LIST</link> can be 
      used to change data dynamically 
      in code and/or to dynamically link list stores to list view widgets.
    </para>
  </refsect1>

  <refsect1 id="obj_liststore_properties">
    <title>Properties</title>

    <table frame='all' pgwide='1'>
      <title>ListStore Object Properties</title>
      <tgroup cols='4' align='left' colsep='1' rowsep='1'>
        <thead>
          <row>
            <entry>Name</entry>
            <entry>Details</entry>
            <entry>Possible Values</entry>
            <entry>Default Value</entry>
          </row>
        </thead>
        <tbody>
          <row>
            <entry>NumColumns</entry>
            <entry>Number of Columns.</entry>
            <entry>1-999</entry>
            <entry>2</entry>
          </row>
          <row>
            <entry>MaxNumberRows</entry>
            <entry>Maximum number of rows.</entry>
            <entry>1-99999</entry>
            <entry>99999</entry>
          </row>
          <row>
            <entry>Description</entry>
            <entry>Description to be used in lists.</entry>
            <entry>*</entry>
            <entry>-</entry>
          </row>
          <row>
            <entry>DetailDescription</entry>
            <entry>Detailed description.</entry>
            <entry>*</entry>
            <entry>-</entry>
          </row>
          <row>
            <entry>Modified</entry>
            <entry>Modification date-time stamp in ISO 8601 format.</entry>
            <entry><replaceable>ccyy-mm-dd</replaceable>T<replaceable>hh:mm:ss</replaceable></entry>
            <entry><replaceable>date stamp</replaceable></entry>
          </row>
          <row>
            <entry>OccurrencesListColumnHeader</entry>
            <entry>

              <table frame='all' pgwide='1'>
                <title>Occurrences ListColumnHeader</title>
                <tgroup cols='4' align='left' colsep='1' rowsep='1'>
                  <thead>
                    <row>
                      <entry>Name</entry>
                      <entry>Details</entry>
                      <entry>Possible Values</entry>
                      <entry>Default Value</entry>
                    </row>
                  </thead>
                  <tbody>
                    <row>
                      <entry>ColumnId</entry>
                      <entry>Column number.</entry>
                      <entry>1-999</entry>
                      <entry>-</entry>
                    </row>
                    <row>
                      <entry>ColumnLabel</entry>
                      <entry>Name of the column.</entry>
                      <entry>*</entry>
                      <entry>-</entry>
                    </row>
                    <row>
                      <entry>ColumnType</entry>
                      <entry>Type of the contents.</entry>
                      <entry>Number, Text</entry>
                      <entry>Text</entry>
                    </row>
                    <row>
                      <entry>DefaultSort</entry>
                      <entry>Standard sort column.</entry>
                      <entry>True, False</entry>
                      <entry>False</entry>
                    </row>
                    <row>
                      <entry>SortDirection</entry>
                      <entry>Type of sorting.</entry>
                      <entry>None, Ascending, Descending</entry>
                      <entry>None</entry>
                    </row>
                  </tbody>
                </tgroup>
              </table>

            </entry>
            <entry></entry>
            <entry></entry>
          </row>
          <row>
            <entry>OccurrencesListData</entry>
            <entry>

              <table frame='all' pgwide='1'>
                <title>Occurrences ListData</title>
                <tgroup cols='4' align='left' colsep='1' rowsep='1'>
                  <thead>
                    <row>
                      <entry>Name</entry>
                      <entry>Details</entry>
                      <entry>Possible Values</entry>
                      <entry>Default Value</entry>
                    </row>
                  </thead>
                  <tbody>
                    <row>
                      <entry>ColumnId</entry>
                      <entry>Column number.</entry>
                      <entry>1-999</entry>
                      <entry>-</entry>
                    </row>
                    <row>
                      <entry>RowId</entry>
                      <entry>Number of the row.</entry>
                      <entry>1-99999</entry>
                      <entry>-</entry>
                    </row>
                    <row>
                      <entry>Value</entry>
                      <entry>Value of the field.</entry>
                      <entry>*</entry>
                      <entry>-</entry>
                    </row>
                  </tbody>
                </tgroup>
              </table>

            </entry>
            <entry></entry>
            <entry></entry>
          </row>
        </tbody>
      </tgroup>
    </table>

  </refsect1>

  <refsect1 id="obj_liststore_example">
    <title>Example</title>
<programlisting><![CDATA[
<Object Application="MyOrder" Type="ListStore" Name="ProductSizes">
  <ListStore>
    <NumColumns>2</NumColumns>
    <MaxNumRows>3</MaxNumRows>
    <Description>ProductSize</Description>
    <DetailDescription>List of Product Sizes</DetailDescription>
    <Modified>2007-11-12T09:58:00</Modified>
    <OccurencesListColumnHeader>
      <ListColumnHeader SequenceNo="1">
        <ColumnId>1</ColumnId>
        <ColumnLabel>Size</ColumnLabel>
        <ColumnType>Text</ColumnType>
        <DefaultSort>False</DefaultSort>
      </ListColumnHeader>
      <ListColumnHeader SequenceNo="2">
        <ColumnId>2</ColumnId>
        <ColumnLabel>Description</ColumnLabel>
        <ColumnType>Text</ColumnType>
        <DefaultSort>False</DefaultSort>
      </ListColumnHeader>
    </OccurencesListColumnHeader>
    <OccurencesListData>
      <ListData SequenceNo="1">
        <ColumnId>1</ColumnId>
        <RowId>1</RowId>
        <Value>Small</Value>
      </ListData>
      <ListData SequenceNo="2">
        <ColumnId>2</ColumnId>
        <RowId>1</RowId>
        <Value>Small Size</Value>
      </ListData>
      <ListData SequenceNo="3">
        <ColumnId>1</ColumnId>
        <RowId>2</RowId>
        <Value>Medium</Value>
      </ListData>
      <ListData  SequenceNo="4">
        <ColumnId>2</ColumnId>
        <RowId>2</RowId>
        <Value>Medium Size</Value>
      </ListData>
      <ListData SequenceNo="5">
        <ColumnId>1</ColumnId>
        <RowId>3</RowId>
        <Value>Large</Value>
       </ListData>
       <ListData SequenceNo="6">
        <ColumnId>2</ColumnId>
        <RowId>3</RowId>
        <Value>Large Size</Value>
      </ListData>
    </OccurencesListRowData>
  </ListStore>
</Object>
]]></programlisting>
  </refsect1>

</refentry>

