//----------------------------------------------------------------------
//  SPECIFICATION FILE (fountpen.h)
//  This module exports a FountPen class (derived from the Pen class).
//  Pen is a public base class of FountPen, so all public
//  operations of Pen (except constructors and destructors) are
//  also public operations of FountPen.
//----------------------------------------------------------------------
#ifndef FOUNTPEN_H
#define FOUNTPEN_H
#include "pen.h"

enum FillType {cartridge, directFill};

class FountPen : public Pen {
public:
    void Display() const;
        // POST: Item description, stock no., quantity, price, pen color,
        //       ink color, and fill type have been written to
        //       standard output

    FountPen( /* in */ const char* description,
              /* in */ int         stockNumber,
              /* in */ int         initQuantity,
              /* in */ float       initPrice,
              /* in */ Color       penColor,
              /* in */ Color       inkColor,
              /* in */ FillType    fillType     );
        // PRE:  All parameters assigned
        // POST: New object created, with private data initialized
        //       by the input parameters

    FountPen( const FountPen& otherPen );
        // POST: New object created, with private data initialized
        //       by otherPen's private data

    ~FountPen();
        // POST: Object destroyed
private:
    FillType fType;
};

#endif

