001 import data.*;
002 import data.swing.*;
003
004 import sale.*;
005
006
007 /**
008 * Ein TableEntryDescriptor zur Darstellung des Videoangebotes.
009 */
010 public class OfferTED extends DefaultMoneyBagItemTED
011 {
012
013 //// attributes ///////////////////////////////////////////////////////////
014
015 private boolean withCount; // Spalte fuer Anzahl mit anzeigen?
016
017
018 //// constructor ///////////////////////////////////////////////////////////
019
020 /**
021 * Konstruktor. Erzeugt einen neues Objekt vom Typ OfferTED.
022 */
023 public OfferTED(boolean withCount)
024 {
025 super((Currency)Shop.getTheShop().getCatalog("DM"));
026 this.withCount = withCount;
027 }
028
029
030 //// public methods ///////////////////////////////////////////////////////
031
032 /**
033 * Gibt die Spaltenanzahl der Tabelle zurück.
034 */
035 public int getColumnCount()
036 {
037 return withCount?3:2;
038 }
039
040 /**
041 * Gibt die Überschrift einer Spalte zurück.
042 */
043 public String getColumnName(int nIndex)
044 {
045 return (new String[] {"Name", "Price", "Available"}) [nIndex];
046 }
047
048 /**
049 * Gibt den Wert einer Tabellenzelle zurück.
050 */
051 public Object getValueAt(Object oRecord, int nIndex)
052 {
053 // wenn Preis angefordert...
054 if (nIndex == 1)
055 {
056 // die videokassette ermitteln
057 VideoCassette vidCassette = (VideoCassette)(
058 (CountingStockTableModel.Record)oRecord).getDescriptor();
059
060 // den Verkaufspreis ermitteln und zurueckgeben
061 return ((QuoteValue)vidCassette.getValue()).getBid();
062 }
063 else
064 return super.getValueAt(oRecord, nIndex);
065 }
066 }