WebObjects/Web Applications/Development/Examples/Alphabetic List

< WebObjects < Web Applications < Development < Examples

An alphabetic list is simply a list that display its elements in, er, alphabetic order... There is also some pagination (not shown) when there is too many elements in one batch. The pagination is done alphabetically at runtime if necessary: eg A-D E-Z.

Here is the html:

  <webobject name = "HasData">
    <webobject name = "Table">
      <tr>
        <td align = "left" valign = "top" colspan = "3">
          <div class = "Line"></div>
          <webobject name = "ItemDescription"></webobject>
          <webobject name = "HasBatches">
            <span class = "Label"><small> | </small></span>
            <webobject name = "Batches">
              <webobject name = "IsCurrentBatch">
               <webobject name = "Batch"></webobject>
              </webobject>
              <webobject name = "IsNotCurrentBatch">
               <webobject name = "BatchLink"><webobject name = "Batch"></webobject></webobject>
              </webobject>
            </webobject>
          </webobject>
          <div class = "Line"></div><br>
        </td>
      </tr>
      <tr>
        <webobject name = "Columns">
          <td align = "left" valign = "top">
            <webobject name = "Rows">
              <webobject name = "HasHref">
                <webobject name = "HrefLink"><webobject name = "Prefix"></webobject><webobject name = "Suffix"></webobject></webobject>   
              </webobject>
              <webobject name = "HasNoHref">
                <webobject name = "Link"><webobject name = "Prefix"></webobject><webobject name = "Suffix"></webobject></webobject>   
              </webobject>
              <div class = "Space"></div>
            </webobject>
          </td>
        </webobject>
      </tr>
      <webobject name = "HasBatches">
        <tr>
          <td align = "left" valign ="top">
            <webobject name = "PreviousLink"><webobject name = "Previous"></webobject></webobject>
          </td>
          <td align = "left" valign = "top">
             
          </td>
          <td align = "right" valign ="top">
            <webobject name = "NextLink"><webobject name = "Next"></webobject></webobject>
          </td>
        </tr>
      </webobject>
    </webobject>
  </webobject>

And the wod:

 HasData: WOConditional{
   condition = hasData;
 };
 
 Table: WOGenericContainer{
   elementName = "table";
   border = "0";
   cellSpacing = "3";
   cellPadding = "0";
 };
 
 ItemDescription: SpanString{
   value = itemDescription;
   isSmall = true;
   class = "Label";
 };
 
 HasBatches: WOConditional{
   condition = hasBatches;
 };
 
 Batches: WORepetition{
   count = batchCount;
   index = batchIndex;
 };
 
 Batch: SpanString{
   value = batchLabel;
   isItalic = isCurrentBatch;
   isSmall = true;
   class = "Label";
 };
 
 IsCurrentBatch: WOConditional{
   condition = isCurrentBatch;
 };
 
 IsNotCurrentBatch: WOConditional{
   condition = isCurrentBatch;
   negate = true;
 };
 
 BatchLink: WOHyperlink{
   action = displayBatch;
 };
 
 Rows: WORepetition{
   count = rowCount;
   index = rowIndex;
 };
 
 Columns: WORepetition{
   count = columnCount;
   index = columnIndex;
 };
 
 Prefix: SpanString{
   value = prefix;
   isBold = shouldBreak;
   class = "Text";
 };
 
 Suffix: SpanString{
   value = suffix;
   class = "Text";
 };
 
 ShouldBreak: WOConditional{
   condition = shouldBreak;
 };
 
 Link: WOHyperlink{
   action = displayItem;
   title = altDescription;
 };
 
 HasHref: WOConditional{
   condition = hasHref;
 };
 
 HasNoHref: WOConditional{
   condition = hasHref;
   negate = true;
 };
 
 HrefLink: WOHyperlink{
   href = href;
   title = altDescription;
   target = "SZLink";
 };
 
 PreviousLink: WOHyperlink{
   action = displayPrevious;
 };
 
 Previous: SpanString{
   value = "<PREVIOUS";
   isSmall = true;
   class = "Label";
 };
 
 NextLink: WOHyperlink{
   action = displayNext;
 };
 
 Next: SpanString{
   value = "NEXT>";
   isSmall = true;
   class = "Label";
 };

As usual, the component implementation is left to the imagination of the reader.

This article is issued from Wikibooks. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.