Project A2 20141 - OOP344

From CDOT Wiki
Revision as of 16:30, 7 March 2014 by Hasan Kamal-Al-Deen (talk | contribs) (Began big picture section)
Jump to: navigation, search


OOP344 | Weekly Schedule | Student List | Teams | Project | A1 | A2 | A3 | Student Resources

Introduction

The basic information of A2 is on the BTP300 site linked here. A number of issues have been found within the assignment spec and so a series of changes is required in order for the spec to produce a correct assignment. The changes are listed here.

Spec Code Changes

cfg.h

  • Instead of #defining NULL in cfg.h, instead #include <cstdlib> at the top of cfg.h. eg:
#ifndef __CFG_H__
#define __CFG_H__
#include <cstdlib>

...

#endif

CFrame

Functions to be removed

The following two functions should be removed from the specification completely. Let me be extra clear: DO NOT PUT THEM IN YOUR CFrame HEADER, DO NOT CODE THEM, DO NOT USE THEM!

  • CFrame::display
  • CFrame::edit

CField

Updated Functions

  • The function CField::edit currently accepts 4 parameters and is not virtual.
    It should be updated as follows to be consistent with its child classes:
    • pure virtual
    • should not accept any parameters
    • should return int (it already does)

CLine

Constructors

Both constructors should accept a bool* and NOT a bool for insert mode. Updated descriptions follow:

Constructor 1

Receives 8 values.
...

  • bool* - the insert mode for the line field

...

Constructor 2

Receives 7 values.
...

  • bool* - the insert mode for the line field

...

The Big Picture

This assignment is about creating a basic commandline GUI system. It is meant to show the student how OOP can be used effectively to create a system. The basic setup for this system are the 6 classes iFrame, CFrame, CField, CLabel, CLine, CButton and the supplemental class CDialog provided already implemented as a part of the spec.