ICF 3.1.1.10
Technical documentation of ICF Libraries
IShape.h
Go to the documentation of this file.
1/********************************************************************************
2** This file is part of the ICF Framework. Copyright (C) Witold Gantzke & Kirill Lepskiy
3** ICF Framework may be used under the terms of the LGPL License v. 2.1 by the Free Software Foundation.
4********************************************************************************/
5
6#ifndef iview_IShape_included
7#define iview_IShape_included
8
9
10// Qt includes
11#include <QtCore/QString>
12
13// ICF includes
14#include <imod/IModel.h>
15#include <imod/IObserver.h>
16#include <i2d/CRect.h>
17#include <iview/IVisualizable.h>
18#include <iview/ITouchable.h>
19
20
21namespace iview
22{
23
24
25class IColorSchema;
26
27
33class IShape:
34 virtual public imod::IObserver,
35 virtual public IVisualizable,
36 virtual public ITouchable
37{
38public:
43 {
44 CF_CALIB = 0x3663adf
45 };
46
51 virtual int GetLayerType() const = 0;
52
59 virtual i2d::CRect GetBoundingBox() const = 0;
60
64 virtual void SetVisible(bool state = true) = 0;
65
69 virtual const iview::IColorSchema* GetUserColorSchema() const = 0;
73 virtual void SetUserColorSchema(const IColorSchema* schemaPtr) = 0;
74
78 virtual void SetDefaultDescription(const QString& description) = 0;
79};
80
81
82} // namespace iview
83
84
85#endif // !iview_IShape_included
86
87
Simple rectangle with integer bounds.
Definition CRect.h:26
Common interface for all classes implementing the Observer functionality in the Model/Observer design...
Definition IObserver.h:30
Defines set of standard pens, brushes and simple management of unions.
Common interface for all display console shapes.
Definition IShape.h:37
virtual const iview::IColorSchema * GetUserColorSchema() const =0
Get color schema from view or user defined.
ChangeFlags
Data model change notification flags.
Definition IShape.h:43
virtual i2d::CRect GetBoundingBox() const =0
Return bounding box in client window coordinates.
virtual void SetDefaultDescription(const QString &description)=0
Set default description will be used to display on console.
virtual void SetVisible(bool state=true)=0
Make shape to be visible or not.
virtual void SetUserColorSchema(const IColorSchema *schemaPtr)=0
Set color schema to draw shape.
virtual int GetLayerType() const =0
Get layer type of this shape object.
This interface describes all untransparent GUI objects, which can be touched.
Definition ITouchable.h:23
In this library is defined 2D view concept and standard visualisation objects.

© Witold Gantzke and Kirill Lepskiy