Ik heb een klasse met onderandere deze functies...
Implementatie van bool create()
Je ziet OnCreate wordt aan geroepen...
Nu heb ik deze klasse overgeerft en heb een implementatie gegeven aan bool OnCreate(). (de virtual functie met lege implementatie)
Echter de inhoud van de functie wordt niet uitgevoerd.
Ondanks dat ik de nieuwe klasse zo instantieer:
engine is dus de nieuwe klasse die ik gemaakt heb op basis van COGLWindow. In mijn bescheiden mening zou dit goed moeten gaan. Maar dat doet het dus niet.
Iemand ideeën wat er fout is in mijn denkwijze of code? Ik kom er zelf namelijk niet meer uit. En ik wil het graag netjes oplossen, want ik wil graag 1 basis klasse die ik kan hergebruiken voor al mijn GL progjes. Als die oncreate werkt kan ik specifieke dingen netjes in de overgeerfde klasse houden.
Bovendien hoef ik dan niet meer om te kijken naar al die GL en Windows initialiseer shit. Dat is dan netjes weggewerkt in die hoofdklasse.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| class COGLWindow
{
...
...
private:
bool Create(); // WM_CREATE
protected:
virtual bool OnCreate() { return true; }
...
...
}; |
Implementatie van bool create()
code:
1
2
3
4
5
6
7
8
9
10
11
12
| // Create()
// desc: create the window
bool COGLWindow::Create()
{
hDC = GetDC(hWnd);
SetupPixelFormat();
SetupPalette();
hGLRC = wglCreateContext(hDC);
wglMakeCurrent(hDC, hGLRC);
return OnCreate();
} |
Je ziet OnCreate wordt aan geroepen...
Nu heb ik deze klasse overgeerft en heb een implementatie gegeven aan bool OnCreate(). (de virtual functie met lege implementatie)
Echter de inhoud van de functie wordt niet uitgevoerd.
Ondanks dat ik de nieuwe klasse zo instantieer:
code:
1
| engine = new CEngine("GL Window", FALSE, 800, 600, 16); |
engine is dus de nieuwe klasse die ik gemaakt heb op basis van COGLWindow. In mijn bescheiden mening zou dit goed moeten gaan. Maar dat doet het dus niet.
Iemand ideeën wat er fout is in mijn denkwijze of code? Ik kom er zelf namelijk niet meer uit. En ik wil het graag netjes oplossen, want ik wil graag 1 basis klasse die ik kan hergebruiken voor al mijn GL progjes. Als die oncreate werkt kan ik specifieke dingen netjes in de overgeerfde klasse houden.
Bovendien hoef ik dan niet meer om te kijken naar al die GL en Windows initialiseer shit. Dat is dan netjes weggewerkt in die hoofdklasse.