116 lines
2.8 KiB
C++
116 lines
2.8 KiB
C++
//## begin module.cm preserve=no
|
|
|
|
// %X% %Q% %Z% %W%
|
|
|
|
//## end module.cm
|
|
|
|
|
|
|
|
//## begin module.cp preserve=no
|
|
|
|
//## end module.cp
|
|
|
|
|
|
|
|
//## Module: Desktop; Pseudo Package specification
|
|
|
|
//## Subsystem: lab7
|
|
|
|
//## Source file: H:\kurs\avC++\lab7\Desktop.h
|
|
|
|
|
|
|
|
#ifndef Desktop_h
|
|
|
|
#define Desktop_h 1
|
|
|
|
|
|
|
|
//## begin module.additionalIncludes preserve=no
|
|
|
|
//## end module.additionalIncludes
|
|
|
|
|
|
|
|
//## begin module.includes preserve=yes
|
|
|
|
//## end module.includes
|
|
|
|
|
|
|
|
// Window
|
|
|
|
#include "Window.h"
|
|
|
|
// EventReader
|
|
|
|
#include "EvntRder.h"
|
|
|
|
// Graphics
|
|
|
|
#include "Graphics.h"
|
|
|
|
// WindowList
|
|
|
|
#include "WndwList.h"
|
|
|
|
//## begin module.additionalDeclarations preserve=yes
|
|
|
|
//## end module.additionalDeclarations
|
|
|
|
|
|
|
|
|
|
|
|
//## Class: Desktop
|
|
|
|
//## Category: lab7
|
|
|
|
//## Subsystem: lab7
|
|
|
|
//## Persistence: Transient
|
|
|
|
//## Cardinality/Multiplicity: n
|
|
|
|
|
|
|
|
//## Uses: <unnamed>; Graphics { -> }
|
|
|
|
//## Uses: <unnamed>; EventReader { -> }
|
|
|
|
|
|
|
|
class Desktop
|
|
|
|
{
|
|
|
|
//## begin Desktop.initialDeclarations preserve=yes
|
|
|
|
//## end Desktop.initialDeclarations
|
|
|
|
|
|
|
|
public:
|
|
|
|
//## Constructors (generated)
|
|
|
|
Desktop();
|
|
|
|
|
|
|
|
//## Destructor (generated)
|
|
|
|
~Desktop();
|
|
|
|
|
|
|
|
|
|
|
|
//## Other Operations (specified)
|
|
|
|
//## Operation: handleMouseEvent%940854123
|
|
|
|
void handleMouseEvent (Event e);
|
|
|
|
|
|
|
|
//## Operation: draw%940929795
|
|
|
|
void draw (Graphics& gd);
|
|
|
|
|
|
|
|
//## Operation: add%940945814
|
|
|
|
void add (Window* w);
|
|
|
|
|
|
|
|
//## Operation: run%940945815
|
|
|
|
void run (EventReader& er, Graphics& gd);
|
|
|
|
|
|
|
|
//## Operation: handleKeyEvent%941013987
|
|
|
|
void handleKeyEvent (Event e);
|
|
|
|
|
|
|
|
// Additional Public Declarations
|
|
|
|
//## begin Desktop.public preserve=yes
|
|
|
|
//## end Desktop.public
|
|
|
|
|
|
|
|
protected:
|
|
|
|
// Additional Protected Declarations
|
|
|
|
//## begin Desktop.protected preserve=yes
|
|
|
|
//## end Desktop.protected
|
|
|
|
|
|
|
|
private:
|
|
|
|
// Additional Private Declarations
|
|
|
|
//## begin Desktop.private preserve=yes
|
|
|
|
//## end Desktop.private
|
|
|
|
|
|
|
|
private: //## implementation
|
|
|
|
// Data Members for Has Relationships
|
|
|
|
|
|
|
|
//## Documentation Desktop::active.has
|
|
|
|
//## begin Desktop::active.has preserve=no private: Window {1 -> 1RO}
|
|
|
|
Window *active;
|
|
|
|
//## end Desktop::active.has
|
|
|
|
|
|
|
|
//## Documentation Desktop::wList.has
|
|
|
|
//## begin Desktop::wList.has preserve=no private: WindowList {1 -> 1VO}
|
|
|
|
WindowList wList;
|
|
|
|
//## end Desktop::wList.has
|
|
|
|
|
|
|
|
// Additional Implementation Declarations
|
|
|
|
//## begin Desktop.implementation preserve=yes
|
|
|
|
//## end Desktop.implementation
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
//## begin Desktop.postscript preserve=yes
|
|
|
|
//## end Desktop.postscript
|
|
|
|
|
|
|
|
// Class Desktop
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//## begin module.epilog preserve=yes
|
|
|
|
//## end module.epilog
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|