NCBI C++ ToolKit
renderable.cpp
Go to the documentation of this file.

Go to the SVN repository for this file.

1 /* $Id: renderable.cpp 14565 2007-05-18 12:32:01Z dicuccio $
2  * ===========================================================================
3  *
4  * PUBLIC DOMAIN NOTICE
5  * National Center for Biotechnology Information
6  *
7  * This software/database is a "United States Government Work" under the
8  * terms of the United States Copyright Act. It was written as part of
9  * the author's official duties as a United States Government employee and
10  * thus cannot be copyrighted. This software/database is freely available
11  * to the public for use. The National Library of Medicine and the U.S.
12  * Government have not placed any restriction on its use or reproduction.
13  *
14  * Although all reasonable efforts have been taken to ensure the accuracy
15  * and reliability of the software and data, the NLM and the U.S.
16  * Government do not and cannot warrant the performance or results that
17  * may be obtained by using this software or data. The NLM and the U.S.
18  * Government disclaim all warranties, express or implied, including
19  * warranties of performance, merchantability or fitness for any particular
20  * purpose.
21  *
22  * Please cite the author in any work or product based on this material.
23  *
24  * ===========================================================================
25  *
26  * Authors: Andrey Yazhuk
27  *
28  * File Description:
29  *
30  */
31 
32 #include <ncbi_pch.hpp>
33 #include <algorithm>
34 
36 
38 
39 ///////////////////////////////////////////////////////////////////////////////
40 /// CRenderableImpl
42 : m_Visible(true)
43 {
44 }
45 
46 
48 {
49 }
50 
51 
53 {
54  return m_VPRect;
55 }
56 
57 
59 {
60  m_VPRect = rc;
61 }
62 
63 
65 {
66  return m_ModelRect;
67 }
68 
69 
71 {
72  m_ModelRect = rc;
73 }
74 
75 
77 {
78  return TVPPoint(m_VPRect.Width(), m_VPRect.Height()); // trivial default implementation
79 }
80 
81 
83 {
84  return m_Visible;
85 }
86 
87 
89 {
90  m_Visible = set;
91 }
92 
93 
95 {
96  _VERIFY(m_VPRect.PtInRect(vp_x, vp_y));
97  return false;
98 }
99 
100 
102 {
103  return "Error";
104 }
105 
106 
class CGlPane
Definition: glpane.hpp:62
virtual ~CRenderableImpl()
Definition: renderable.cpp:47
virtual void SetVisible(bool set)
Definition: renderable.cpp:88
virtual string GetTooltip()
Definition: renderable.cpp:101
CRenderableImpl()
CRenderableImpl.
Definition: renderable.cpp:41
virtual void SetVPRect(const TVPRect &rc)
Definition: renderable.cpp:58
virtual void SetModelRect(const TModelRect &rc)
Definition: renderable.cpp:70
virtual TModelRect GetModelRect() const
Definition: renderable.cpp:64
TModelRect m_ModelRect
virtual bool NeedTooltip(CGlPane &pane, TVPUnit vp_x, TVPUnit vp_y)
Definition: renderable.cpp:94
virtual TVPRect GetVPRect() const
Definition: renderable.cpp:52
virtual TVPPoint PreferredSize()
Definition: renderable.cpp:76
virtual bool IsVisible()
Definition: renderable.cpp:82
Definition: set.hpp:45
#define true
Definition: bool.h:35
#define _VERIFY(expr)
Definition: ncbidbg.hpp:161
T Height() const
Definition: glrect.hpp:90
CGlPoint< TVPUnit > TVPPoint
Definition: gltypes.hpp:50
T Width() const
Definition: glrect.hpp:86
bool PtInRect(T x, T y) const
Definition: glrect.hpp:154
int TVPUnit
Definition: gltypes.hpp:47
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
Modified on Fri Sep 20 14:57:40 2024 by modify_doxy.py rev. 669887