NCBI C++ ToolKit
include
gui
widgets
seq_text
seq_tick_graph.hpp
Go to the documentation of this file.
Go to the SVN repository for this file.
1
#ifndef __GUI_WIDGETS_SEQ_TEXT___SEQ_TICK_GRAPH__HPP
2
#define __GUI_WIDGETS_SEQ_TEXT___SEQ_TICK_GRAPH__HPP
3
4
/* $Id: seq_tick_graph.hpp 31714 2014-11-07 18:44:50Z falkrb $
5
* ===========================================================================
6
*
7
* PUBLIC DOMAIN NOTICE
8
* National Center for Biotechnology Information
9
*
10
* This software/database is a "United States Government Work" under the
11
* terms of the United States Copyright Act. It was written as part of
12
* the author's official duties as a United States Government employee and
13
* thus cannot be copyrighted. This software/database is freely available
14
* to the public for use. The National Library of Medicine and the U.S.
15
* Government have not placed any restriction on its use or reproduction.
16
*
17
* Although all reasonable efforts have been taken to ensure the accuracy
18
* and reliability of the software and data, the NLM and the U.S.
19
* Government do not and cannot warrant the performance or results that
20
* may be obtained by using this software or data. The NLM and the U.S.
21
* Government disclaim all warranties, express or implied, including
22
* warranties of performance, merchantability or fitness for any particular
23
* purpose.
24
*
25
* Please cite the author in any work or product based on this material.
26
*
27
* ===========================================================================
28
*
29
* Authors: Colleen Bollin (adapted from a file by Andrey Yazhuk)
30
*
31
* File Description:
32
*
33
*/
34
35
#include <
corelib/ncbistl.hpp
>
36
#include <
corelib/ncbistd.hpp
>
37
38
#include <
util/range_coll.hpp
>
39
#include <
gui/utils/rgba_color.hpp
>
40
#include <
gui/opengl/glpane.hpp
>
41
#include <
gui/opengl/gltexturefont.hpp
>
42
#include <
gui/widgets/gl/irenderable.hpp
>
43
#include <
gui/widgets/seq_text/seq_text_ds.hpp
>
44
45
#include <
objmgr/bioseq_handle.hpp
>
46
#include <
objmgr/seq_vector.hpp
>
47
48
#include <
gui/widgets/seq_text/seq_text_geometry.hpp
>
49
50
BEGIN_NCBI_SCOPE
51
52
///////////////////////////////////////////////////////////////////////////////
53
/// CSequenceTickGraph
54
class
CSequenceTickGraph
:
public
CRenderableImpl
55
{
56
public
:
57
58
CSequenceTickGraph
();
59
void
SetFont
(
CGlTextureFont
* seq_font);
60
61
virtual
void
SetDataSource
(
CSeqTextDataSource
* p_ds);
62
63
void
ShowAbsolutePosition
(
bool
show_abs);
64
bool
GetShowAbsolutePosition
() {
return
m_ShowAbsolutePosition
; };
65
66
/// @name IRenderable implemenation
67
/// @{
68
virtual
void
Render
(
CGlPane
& pane);
69
70
virtual
TModelRect
GetModelRect
()
const
;
71
virtual
void
SetModelRect
(
const
TModelRect
& rc);
72
73
virtual
TVPPoint
PreferredSize
();
74
75
virtual
bool
NeedTooltip
(
CGlPane
& pane,
int
vp_x,
int
vp_y);
76
virtual
string
GetTooltip
();
77
/// @}
78
79
void
SetGeometry
(
ISeqTextGeometry
*pGeometry) {
m_pGeometry
= pGeometry; };
80
81
protected
:
82
83
CRef<CGlTextureFont>
m_pSeqFont
;
84
85
CRgbaColor
m_BackColor
;
86
CRgbaColor
m_TextColor
;
87
88
CRef<CSeqTextDataSource>
m_DataSource
;
89
90
bool
m_ShowAbsolutePosition
;
91
ISeqTextGeometry
*
m_pGeometry
;
92
};
93
94
END_NCBI_SCOPE
95
96
#endif
// __GUI_WIDGETS_SEQ_TEXT___SEQ_GRAPH__HPP
bioseq_handle.hpp
CGlPane
class CGlPane
Definition:
glpane.hpp:62
CGlPoint< TVPUnit >
CGlRect< TModelUnit >
CGlTextureFont
Definition:
gltexturefont.hpp:53
CRef< CGlTextureFont >
CRenderableImpl
CRenderableImpl.
Definition:
irenderable.hpp:82
CRgbaColor
class CRgbaColor provides a simple abstraction for managing colors.
Definition:
rgba_color.hpp:58
CSeqTextDataSource
CSeqTextDataSource implements Adapter design pattern.
Definition:
seq_text_ds.hpp:118
CSequenceTickGraph
CSequenceTickGraph.
Definition:
seq_tick_graph.hpp:55
CSequenceTickGraph::CSequenceTickGraph
CSequenceTickGraph()
Definition:
seq_tick_graph.cpp:49
CSequenceTickGraph::GetTooltip
virtual string GetTooltip()
Definition:
seq_tick_graph.cpp:174
CSequenceTickGraph::m_TextColor
CRgbaColor m_TextColor
Definition:
seq_tick_graph.hpp:86
CSequenceTickGraph::m_pSeqFont
CRef< CGlTextureFont > m_pSeqFont
Definition:
seq_tick_graph.hpp:79
CSequenceTickGraph::SetFont
void SetFont(CGlTextureFont *seq_font)
Definition:
seq_tick_graph.cpp:58
CSequenceTickGraph::Render
virtual void Render(CGlPane &pane)
Definition:
seq_tick_graph.cpp:93
CSequenceTickGraph::SetDataSource
virtual void SetDataSource(CSeqTextDataSource *p_ds)
Definition:
seq_tick_graph.cpp:63
CSequenceTickGraph::SetModelRect
virtual void SetModelRect(const TModelRect &rc)
Definition:
seq_tick_graph.cpp:197
CSequenceTickGraph::m_pGeometry
ISeqTextGeometry * m_pGeometry
Definition:
seq_tick_graph.hpp:91
CSequenceTickGraph::m_DataSource
CRef< CSeqTextDataSource > m_DataSource
Definition:
seq_tick_graph.hpp:88
CSequenceTickGraph::ShowAbsolutePosition
void ShowAbsolutePosition(bool show_abs)
Definition:
seq_tick_graph.cpp:203
CSequenceTickGraph::PreferredSize
virtual TVPPoint PreferredSize()
Definition:
seq_tick_graph.cpp:70
CSequenceTickGraph::GetModelRect
virtual TModelRect GetModelRect() const
Definition:
seq_tick_graph.cpp:184
CSequenceTickGraph::SetGeometry
void SetGeometry(ISeqTextGeometry *pGeometry)
Definition:
seq_tick_graph.hpp:79
CSequenceTickGraph::NeedTooltip
virtual bool NeedTooltip(CGlPane &pane, int vp_x, int vp_y)
Definition:
seq_tick_graph.cpp:168
CSequenceTickGraph::GetShowAbsolutePosition
bool GetShowAbsolutePosition()
Definition:
seq_tick_graph.hpp:64
CSequenceTickGraph::m_BackColor
CRgbaColor m_BackColor
Definition:
seq_tick_graph.hpp:85
CSequenceTickGraph::m_ShowAbsolutePosition
bool m_ShowAbsolutePosition
Definition:
seq_tick_graph.hpp:90
ISeqTextGeometry
class ISeqTextGeometry
Definition:
seq_text_geometry.hpp:56
ncbistd.hpp
Include a standard set of the NCBI C++ Toolkit most basic headers.
glpane.hpp
gltexturefont.hpp
END_NCBI_SCOPE
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition:
ncbistl.hpp:103
BEGIN_NCBI_SCOPE
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition:
ncbistl.hpp:100
irenderable.hpp
ncbistl.hpp
The NCBI C++/STL use hints.
range_coll.hpp
rgba_color.hpp
seq_text_ds.hpp
seq_text_geometry.hpp
seq_vector.hpp
Generated by
1.9.0
Modified on Fri Sep 20 14:57:12 2024 by modify_doxy.py rev. 669887