68 m_InnerRectX(0), m_InnerRectY(0),
69 m_InnerRectW(0), m_InnerRectH(0),
70 m_ScaleColor(0.0
f, 0.6
f, 0.0
f, 0.3
f),
71 m_TickColor(0.0
f, 0.6
f, 0.0
f, 1.0
f),
72 m_RectColor(0.7
f, 0.8
f, 0.7
f, 0.85
f)
111 CGlAttrGuard AttrGuard(GL_ENABLE_BIT | GL_POLYGON_BIT | GL_HINT_BIT);
136 gl.
BlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
161 float w_h = ((float)vw)/((float)vh);
177 int yb = dim_y - (base_y + ext_h/2);
178 int yt = dim_y - (base_y - ext_h/2);
179 int xl = base_x - ext_w / 2;
180 int xr = base_x + ext_w / 2;
222 gl.
Begin(GL_LINE_LOOP);
229 gl.
Begin(GL_LINE_LOOP);
246 return wxGetKeyState(wxKeyCode(
'M'));
258 if(ready_st !=
eIdle) {
259 wxPoint ms_pos =
event.GetPosition();
273 if(event.Dragging()) {
276 wxPoint ms_pos =
event.GetPosition();
295 wxPoint ms_pos =
event.GetPosition();
328 wxPoint ms_pos =
event.GetPosition();
348 wxPoint ms_pos =
event.GetPosition();
379 if(ready_st !=
eIdle) {
CGlAttrGuard - guard class for restoring OpenGL attributes.
CMinimapHandler provides support for mouse-driven zoom and pan operations.
IMinimapHandlerHost * m_Host
void OnKeyUp(wxKeyEvent &event)
void x_OnChangeZoomRectPan(int x, int y)
void x_SwithToActiveState(EState state, const wxPoint &ms_pos)
void x_OnChangePan(const wxPoint &ms_pos)
void x_OnSelectCursor(const wxPoint &ms_pos)
void SetHost(IMinimapHandlerHost *pHost)
TModelUnit x_NormToScale(TModelUnit norm) const
void OnLeftUp(wxMouseEvent &event)
void OnLeftDown(wxMouseEvent &event)
IGlEventHandler implementation.
void OnKeyDown(wxKeyEvent &event)
void OnMouseWheel(wxMouseEvent &event)
void OnMouseCaptureLost(wxMouseCaptureLostEvent &evt)
TSubstate x_GetSubstate(const wxPoint &ms_pos)
virtual void SetPane(CGlPane *pane)
void OnMotion(wxMouseEvent &event)
void x_RenderMinimap(CGlPane &pane)
virtual ~CMinimapHandler()
void x_OnEndMinimap(EState new_state)
void Render(CGlPane &Pane)
IGenericHandlerHost * GetGenericHost()
TModelUnit x_ScaleToNorm(TModelUnit scale) const
virtual wxEvtHandler * GetEvtHandler()
void x_SwitchToReadyState(EState new_state, const wxPoint &ms_pos)
signal handlers - functions doing the real job
virtual void GHH_ReleaseMouse()=0
releases captured mouse
virtual void GHH_Redraw()=0
redraws the Host and the handler
virtual void GHH_CaptureMouse()=0
captures mouse events in the hosting window for D&D
Interface IMinimapHandlerHost represents a context in which CMinimapHandler functions.
virtual I3DTexture * MMHH_GetTexture(float &, float &)
gets a texture and its coordinate limits for the minmap
virtual TModelUnit MMHH_GetScale(EMMScaleType type)=0
virtual TVPUnit MMHH_GetVPPosByY(int y) const =0
converts window coord to Viewport coord
virtual void MMHH_Scroll(TModelUnit d_x, TModelUnit d_y)=0
virtual void MMHH_EndOp()=0
virtual void TexCoord2f(GLfloat s, GLfloat t)=0
Colors (also defined in IGlState since they can be set either before or inside of Begin()/End().
virtual void Enable(GLenum glstate)=0
virtual void Begin(GLenum mode)=0
Start rendering.
virtual void BlendFunc(GLenum sfactor, GLenum dfactor)=0
Options to be used when GL_BLEND is enabled.
TModelPoint UnProject(TVPUnit m_x, TVPUnit m_y) const
IRender & GetGl()
convenience function for getting current render manager
void Vertex2d(GLdouble x, GLdouble y)
TVPRect & GetViewport(void)
TModelUnit UnProjectX(TVPUnit m_x) const
TModelRect & GetModelLimitsRect(void)
virtual void End()=0
Finish rendering (create buffer and send to renderer)
static bool CheckGlError()
Check if there are any OpenGL errors.
TModelUnit UnProjectY(TVPUnit m_y) const
virtual void MakeCurrent()=0
TModelRect & GetVisibleRect(void)
virtual void Disable(GLenum glstate)=0
glDisable()
virtual void LineWidth(GLfloat w)=0
Set line width for drawing: glLineWidth()
virtual void ColorC(const CRgbaColor &c)=0
Set current color (glColor{3,4}{f,d}{v,})
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
unsigned int
A callback function used to compare two keys in a database.
bool sIsMiniMapMode()
event handlers
static float kMinInnerRectDim
double f(double x_, const double &y_)