Sorry for being redundant.  I had stared at that for an hour.  20 years of 
using a language not requiring empty argument lists is making the c++ 
programming hard.

Thanks for the help.



--- In [email protected], "Pedro" <izecks...@...> wrote:
>
> 
> 
> diff widget.h~ widget.h
> 8c8
> < myColor backColor();
> ---
> > myColor backColor;
> 
> --- In [email protected], "Jimmy Johnson" <boxer41a@> wrote:
> >
> > I am getting the following errors and I am pulling my hair out.  If someone 
> > could help I would greatly appreciate it.  As I don't know where this is 
> > coming from, I included the files I think are relavant but who knows?  Each 
> > class has a header and a cpp file.
> > 
> > window.cpp(14) : error C2228: left of '.red' must have class/struct/union
> > window.cpp(14) : error C2228: left of '.green' must have class/struct/union
> > window.cpp(14) : error C2228: left of '.blue' must have class/struct/union
> > 
> > 
> > ***************** widget.h ************
> > 
> > #ifndef WIDGET_H
> >     #define WIDGET_H
> > #include "myColor.h"
> > 
> > class widget {
> > public:
> >     widget();
> >     myColor backColor();
> >     void setBackColor (const myColor a_color);
> >     bool wasBackColorSet;
> >     widget *parent;
> >             // The widet in which Current resides (emmediate parent).
> >     widget *rootWidget();
> >             // The window that is closest to Current up the tree.
> >             // This is the widget which has the callbacks, and to which
> >             // positioning and sizing is relative.
> >     myColor backColorImp;
> >             // Implementation so `backColor' can be calculated.
> >             // Really want to use references, not value, here.
> > };
> > 
> > #endif
> > 
> > ***************  widget.cpp  ***********
> > // widget.cpp
> > 
> > myColor widget::backColor() {
> >     if (wasBackColorSet) {
> >             return backColorImp;
> >     } else {
> >             if (parent == NULL) {
> >                     return defaultBackColor;
> >             } else {
> >                     return parent.backColor();
> >             };
> >     };
> > };
> > 
> > 
> > **********************  window.h  ************
> > #ifndef WINDOW_H
> >     #define WINDOW_H
> > #include "widget.h"
> > 
> > class window : public widget {
> > public:
> >     window();
> > };
> > 
> > #endif
> > 
> > 
> > ********************  window.cpp************
> > #include <iostream>
> > #include <typeInfo>
> > #include <GL\glut.h>
> > #include "window.h"
> > #include "myColor.h"
> > 
> > using namespace std;
> > 
> > window::window() : widget () {
> >             // Initialize Current by calling precursor and then set
> >             // up some openGL states.
> >     cout << "Call constructor for " << typeid (this).name() << endl;
> >             // Performs certain window initalizations
> >     glClearColor (backColor.red, backColor.green, backColor.blue, 0.0);
> >     glColor3f (foreColor.red, foreColor.green, foreColor.blue);
> >     glMatrixMode (GL_PROJECTION);       // set "camera shape"
> >     glLoadIdentity ();                  // clearing the viewing matrix
> > };
> > 
> > 
> > 
> > ****************************  myColor.h  ****************
> > #ifndef MY_COLOR_H
> >     #define MY_COLOR_H
> > 
> > class myColor {
> > public:
> >     myColor();
> >     myColor (float aRed, float aGreen, float aBlue);
> >     float red;
> >     float green;
> >     float blue;
> >     void set (float aRed, float aGreen, float aBlue);
> > };
> > 
> > static myColor White (1.0, 1.0, 1.0);
> > static myColor Black (0.0, 0.0, 0.0);
> > static myColor Red (1.0, 0.0, 0.0);
> > static myColor Green (0.0, 1.0, 0.0);
> > static myColor Blue (0.0, 0.0, 1.0);
> > 
> > #endif
> > 
> > 
> > ***********************  myColor.cpp  ***************
> > #include "myColor.h"
> > 
> > myColor::myColor () {
> >             // Default color is white
> >     set (0.0, 0.0, 0.0);
> > };
> >
>


Reply via email to