NCBI C++ ToolKit
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
CTrackContainer Class Reference

Search Toolkit Book for CTrackContainer

CTrackContainer - a track container in the form of layout track. More...

#include <gui/widgets/seq_graphic/track_container_track.hpp>

+ Inheritance diagram for CTrackContainer:
+ Collaboration diagram for CTrackContainer:

Public Types

typedef CTempTrackProxy::TTrackProxies TTrackProxies
 
typedef ILayoutTrackFactory::TTrackMap TTrackMap
 
typedef ILayoutTrackFactory::TAnnotMetaDataList TAnnotMetaDataList
 
typedef list< stringTUsedAnnots
 explicitly named annots used by a track. More...
 
typedef map< string, CIRef< ILayoutTrackFactory > > TFactoryMap
 
typedef vector< stringTNAAs
 
- Public Types inherited from CGlyphContainer
typedef vector< CRef< CCommentGlyph > > TComments
 
typedef set< stringTHighlights
 
typedef map< string, THighlightsTKeyHighlights
 
- Public Types inherited from CLayoutTrack
enum  FTrackAttr {
  fMovable = 1 << 0 , fCollapsible = 1 << 1 , fFrameVisible = 1 << 2 , fShowTitle = 1 << 3 ,
  fShowAlways = 1 << 4 , fFullTrack = 1 << 5 , fNavigable = 1 << 6 , fShowIcons = 1 << 7 ,
  fDefaultAttr
}
 
typedef vector< CConstRef< CSeqGlyph > > TLayObjVector
 
typedef unsigned TTrackAttrFlags
 
typedef list< CRef< CLayoutTrack > > TLayoutTracks
 
typedef map< string, stringTKeyValuePairs
 
- Public Types inherited from CSeqGlyph
enum  ENeighbours { eNghbrs_None = 0x0 , eNghbrs_Left = 0x1 , eNghbrs_Right = 0x2 , eNghbrs_Both = 0x3 }
 
typedef vector< CHTMLActiveAreaTAreaVector
 
typedef list< CRef< CSeqGlyph > > TObjects
 
typedef list< CConstRef< CSeqGlyph > > TConstObjects
 
- Public Types inherited from CObject
enum  EAllocFillMode { eAllocFillNone = 1 , eAllocFillZero , eAllocFillPattern }
 Control filling of newly allocated memory. More...
 
typedef CObjectCounterLocker TLockerType
 Default locker type for CRef. More...
 
typedef atomic< Uint8TCounter
 Counter type is CAtomiCounter. More...
 
typedef Uint8 TCount
 Alias for value type of counter. More...
 
- Public Types inherited from CEventHandler
enum  EDispatch { eDispatch_SelfOnly , eDispatch_AllHandlers , eDispatch_FirstHandler , eDispatch_Default = eDispatch_AllHandlers }
 enum controlling dispatching strategies More...
 
enum  EPoolName {
  ePool_Default = 0 , ePool_Parent , ePool_Child , ePool_Sibling ,
  ePool_NextAvailable
}
 Identifiers for standard pools. More...
 
typedef vector< CEventHandler * > TListeners
 
typedef map< int, TListenersTPools
 
typedef list< AutoPtr< SPostRequest > > TPostRequests
 
typedef std::map< CEventHandler *, intTHandlerToCount
 
typedef void(* FOnPostCallback) ()
 

Public Member Functions

 CTrackContainer (CRenderingContext *r_cntx, CFeaturePanelDS *ds=NULL)
 
virtual ~CTrackContainer ()
 
virtual void GetHTMLActiveAreas (TAreaVector *p_areas) const
 Get html active areas. More...
 
virtual void DeleteAllJobs ()
 
virtual bool AllJobsFinished () const
 
bool AllTracksCreated () const
 
void AddTrackProxy (CTempTrackProxy *proxy, bool upgateMsg=true)
 Add a track proxy. More...
 
CTrackProxyAddNewTrack (const string &track_key, const CTrackProxy::TAnnots &annots, const string &disp_name, const string &name="", const string &filter="", const string &sub_key="")
 Add a new empty track proxy. More...
 
void AddNewTrack (CTrackProxy *proxy)
 
void AddTracks (CTempTrackProxy *t_proxy, TTrackMap &tracks)
 add sub tracks after tracks get created. More...
 
void SaveTrackStates (int order)
 Save track states to it proxy. More...
 
void ClearTracks ()
 Remove all tracks. More...
 
string GetUniqueTrackName (const string &name) const
 
CTrackContainerGetChildContainerTrack (const string &name)
 Get a child track container track. More...
 
CFeaturePanelDSGetDS ()
 
void ExpandAll (bool expand)
 expand or collapse this track and its subtracks recursively. More...
 
void ShowAll (bool shown, bool recursive=true)
 turn on/off all children tracks (recursively). More...
 
void SortChildTracksByOrder ()
 
void RemoveEmptyTracks ()
 remove the empty tracks recursively from bottom to top. More...
 
const TTrackProxiesGetSubtrackProxies () const
 CTrackContainer inline methods. More...
 
TTrackProxiesGetSubtrackProxies ()
 
void SetSubtrackProxies (const TTrackProxies &proxies)
 
void SetConfigMgr (CTrackConfigManager *cfg_mgr)
 
CTrackConfigManagerGetConfigMgr ()
 
const CTrackConfigManagerGetConfigMgr () const
 
void SetTrackInitDone (bool f)
 
bool IsTrackInitDone () const
 
void SetAnnotLevel (int level)
 
int GetAnnotLevel () const
 
void SetAdaptive (bool flag)
 
bool GetAdaptive () const
 
void SetSkipGenuineCheck (bool flag)
 
bool GetSkipGenuineCheck () const
 
virtual bool IsOverlay () const
 
void ToggleTracks (vector< string > &naAccessions)
 
void LoadNATracks (CTempTrackProxy *t_proxy, const vector< string > &accessions)
 
void LoadNATracks (CDataTrack *child, const vector< string > &naAccessions)
 
void OnMenuToggleTrack (int index)
 
void OnMenuTrackSettings (int index)
 
virtual void ReinitNASubtracks (TAnnotMetaDataList &, bool)
 
void InitNATracks (const TAnnotMetaDataList &annots, bool makeContainersVisible)
 
template<typename Tr >
void Traverse (Tr &&tr, bool visible)
 
void SyncSettings (TTrackProxies &dst_proxies, int level) const
 synchronize and merge track settings. More...
 
virtual void ResetSearch ()
 
ITrackContainer interface implementation.

Replace the track by the given track order.

Assumming there is an existing track proxy with the same order. It is also ok to have no corresponding track proxy if a track is unmovable, noncollapsible, and nonclosible.

virtual void SetTrack (CLayoutTrack *track, int order, bool shown=true)
 Replace the track by the given track order. More...
 
virtual void CloneTrack (int order, const string &track_tile)
 Duplicate an existing track. More...
 
virtual void RenameChildTrack (int order, const string &new_name)
 Rename a child track. More...
 
virtual void RemoveTrack (int order, bool immediately=true)
 completely remove a track from the hierachical tree. More...
 
virtual void CloseTrack (int order)
 Close a track. More...
 
virtual void MoveUp (int order)
 move a track up by 1. More...
 
virtual void MoveDown (int order)
 move a track down by 1. More...
 
virtual void MoveTrackToTop (int order)
 move a track up by 1. More...
 
virtual void MoveTrackToBottom (int order)
 move a track down by 1. More...
 
void MoveTrack (int from, int to)
 
virtual bool HasSubtracks () const
 Has any real subtracks. More...
 
virtual bool NoSubtrackEver () const
 Will have no subtrack for ever. More...
 
CLayoutTrack public methods.
virtual const CTrackTypeInfoGetTypeInfo () const
 
content menu event handlers.
void OnSelectAll ()
 
void OnDeselectAll ()
 
void OnRevertSelection ()
 
void OnMore ()
 
virtual void OnToggleTrack (int order)
 
virtual void OnTrackSettings (int order)
 
- Public Member Functions inherited from CDataTrack
 CDataTrack (CRenderingContext *r_cntx)
 
virtual ~CDataTrack ()
 
void OnAJNotification (CEvent *evt)
 event handlers for job notification event. More...
 
void OnAJProgress (CEvent *evt)
 
void SetVisRange (const TSeqRange &range)
 
virtual void Update (bool layout_only)
 Update content and layout including the bounding box. More...
 
- Public Member Functions inherited from CGlyphContainer
 CGlyphContainer (CRenderingContext *r_cntx)
 
virtual ~CGlyphContainer ()
 
void Add (CSeqGlyph *obj)
 Append a layout object to the end. More...
 
void SetObjects (const CLayoutGroup::TObjectList &objs)
 
virtual void SetComments (const string &comment_str)
 set comments. More...
 
virtual void SetHighlights (const string &hl_str)
 set a list of 'object' need to be highlighted. More...
 
void SetCommentGlyphs (const CSeqGlyph::TObjects &objs, CRef< CCommentConfig > config)
 
void ResetCommentGlyph ()
 
void SetLabelGlyphs (const CSeqGlyph::TObjects &objs, CRef< CCommentConfig > config)
 
void ResetLabelGlyph ()
 
const THighlightsGetHighlights () const
 
const TKeyHighlightsGetHighlightsByKey () const
 
CLayoutGroupSetGroup ()
 
const CLayoutGroupGetGroup () const
 
CLayoutGroup::TObjectListSetChildren ()
 
const CLayoutGroup::TObjectListGetChildren () const
 
bool Empty () const
 
void SetLayoutPolicy (ILayoutPolicy *policy)
 Set policy on how to deploy the layout of its children. More...
 
virtual CRef< CSeqGlyphHitTest (const TModelPoint &p)
 Hit testing. More...
 
virtual bool HitTestHor (TSeqPos x, const CObject *obj)
 
virtual bool Intersects (const TModelRect &rect, TConstObjects &objs) const
 Intersect testing. More...
 
virtual bool Accept (IGlyphVisitor *visitor)
 Interface for accepting an IGlyphVisitor. More...
 
- Public Member Functions inherited from CLayoutTrack
 CLayoutTrack (CRenderingContext *r_cntx)
 
virtual ~CLayoutTrack ()
 
void LoadProfile (const string &profile_str)
 set track profile and load settings. More...
 
void SaveProfile ()
 
void SetProfile (const string &preset_style)
 CLayoutTrack inline method implmentation. More...
 
const stringGetProfile () const
 
virtual string GetFullTitle () const
 get a more meaningful title. More...
 
string GetTitle () const
 get the track title. More...
 
const TTrackErrorStatusGetErrorStatus () const
 
void SetErrorStatus (const TTrackErrorStatus &ErrorStatus)
 
bool isInErrorStatus () const
 
bool isRmtBased () const
 
bool isRemotePath () const
 
virtual CHTMLActiveAreaInitHTMLActiveArea (TAreaVector *p_areas) const
 Initialize the HTML active area for a track. More...
 
void MouseOut ()
 
bool OnMotion (const TModelPoint &pt)
 
bool GetShowTitle () const
 
void SetShowTitle (bool flag)
 
void SetConfig (CRef< CSeqGraphicConfig > conf)
 
int GetIndent () const
 
void SetIndent (int indent)
 
void SetMsg (const string &msg)
 
void SetParentTrack (CLayoutTrack *parent)
 
CLayoutTrackGetParentTrack ()
 
const CLayoutTrackGetParentTrack () const
 
bool IsOn () const
 
bool IsExpanded () const
 
bool IsMovable () const
 
bool IsCollapsible () const
 
void SetShow (bool shown)
 set the flag only. More...
 
void SetExpanded (bool f)
 
void SetShowFrame (bool show)
 
void MoveTo (TModelUnit y)
 
void SetTrackAttr (TTrackAttrFlags flags)
 
void SetTitle (const string &label, const string &default_title=NcbiEmptyString)
 
void SetIsBlast (bool isBlast)
 
void SetHost (ILayoutTrackHost *host)
 
void SetOrder (int order)
 
int GetOrder () const
 
void SetId (const string &id)
 
const stringGetId () const
 
void CloseMe ()
 close this track. More...
 
void ShowMe ()
 
void Expand (bool expand)
 Collapse or expand the track. More...
 
virtual bool OnLeftDown (const TModelPoint &p)
 
virtual bool OnLeftDblClick (const TModelPoint &p)
 
virtual bool NeedTooltip (const TModelPoint &p, ITooltipFormatter &tt, string &t_title) const
 Check if need to show tooltip. More...
 
virtual void GetTooltip (const TModelPoint &p, ITooltipFormatter &tt, string &t_title) const
 Get the tooltip if available. More...
 
- Public Member Functions inherited from CSeqGlyph
 CSeqGlyph ()
 
virtual ~CSeqGlyph ()
 
virtual TSeqRange GetRange (void) const
 get the total range of this object. More...
 
virtual bool SetSelected (bool flag)
 Select or deselect this glyph. More...
 
virtual void SetHideLabel (bool)
 Force to hide label. More...
 
virtual bool HasSideLabel () const
 Query if there is label and label is on the side. More...
 
virtual bool IsClickable () const
 Query if this glyph is clickable. More...
 
virtual bool LessBySeqPos (const CSeqGlyph &obj) const
 compare this object to another based on glyph sequence position. More...
 
bool LessByPos (const CSeqGlyph &obj) const
 compare this object to another, based on glyph geometry position. More...
 
bool LessBySeqSize (const CSeqGlyph &obj) const
 compare this object to another, based on sequence size. More...
 
bool LessBySize (const CSeqGlyph &obj) const
 compare this object to another, based on geometry size. More...
 
void Draw () const
 render the layout. More...
 
TModelRect GetModelRect () const
 get the bounding box. More...
 
bool IsIn (const TModelPoint &p) const
 Hit test for points in PARENT COORD. More...
 
bool IsIn (TModelUnit x, TModelUnit y) const
 
bool IsInHor (TModelUnit x) const
 
void SetRender (IGlyphRenderer *renderer)
 set customized renderer for this layout objects. More...
 
void SetRenderingContext (CRenderingContext *context)
 Set the rendering context. More...
 
const CRenderingContextGetRenderingContext () const
 Get the rendering context. More...
 
void SetTearline (size_t Tearline)
 tearline factor – used to limit a list of glyphs More...
 
size_t GetTearline () const
 
void SetTearlineText (const string &sTearlineText)
 tearline text – if set, is appended to the glyph name (does not naffect processing otherwise) More...
 
string GetTearlineText () const
 
void SetRowNum (size_t cur_row)
 
size_t GetRowNum () const
 
void SetVisible (size_t v)
 
size_t GetVisible () const
 
int GetLevel () const
 
void SetLevel (int Level)
 
virtual string GetPName () const
 persistent name of the glyph should not depend on the instance of the glyph, but should uniquely reflect its contents so two glyphs having the same contents will have the same name currently used to track isDrawn() status for expandable glyphs default implementation returns an empty string implementations exist for CFeatGlyph (name of the contained feature) and CLayoutGroup (concatenation of all sorted children names) More...
 
float GetFadeFactor () const
 
virtual bool OnLeftUp (const TModelPoint &)
 
virtual bool OnContextMenu (wxContextMenuEvent &event)
 
bool IsSelected () const
 
bool IsHighlighted () const
 
CRgbaColorGetHighlightsColor () const
 
virtual TModelUnit GetHeight () const
 
virtual TModelUnit GetWidth () const
 
virtual TModelUnit GetLeft () const
 
virtual TModelUnit GetTop () const
 
virtual TModelUnit GetRight () const
 
virtual TModelUnit GetBottom () const
 
const TModelPointGetPos () const
 
void GetPosInWorld (TModelPoint &pos) const
 Get top left position in world coordinate. More...
 
const CSeqGlyphGetParent (void) const
 
CSeqGlyphGetParent (void)
 
ENeighbours GetNeighbours () const
 
void SetHighlighted (bool flag)
 
void SetHighlightsColor (const CRgbaColor &hl_color)
 
void SetHighlightsColor (const string &hl_color_str)
 
virtual void SetWidth (TModelUnit w)
 
virtual void SetHeight (TModelUnit h)
 
virtual void SetLeft (TModelUnit l)
 
virtual void SetTop (TModelUnit b)
 
virtual void SetPos (const TModelPoint &upper_left)
 
void SetParent (CSeqGlyph *p)
 
CSeqGlyphSetParent (void)
 
void SetNeighbours (ENeighbours neighbours)
 
- Public Member Functions inherited from CObjectEx
 CObjectEx (void)
 
virtual ~CObjectEx (void)
 
- Public Member Functions inherited from CObject
 CObject (void)
 Constructor. More...
 
 CObject (const CObject &src)
 Copy constructor. More...
 
virtual ~CObject (void)
 Destructor. More...
 
CObjectoperator= (const CObject &src) THROWS_NONE
 Assignment operator. More...
 
bool CanBeDeleted (void) const THROWS_NONE
 Check if object can be deleted. More...
 
bool IsAllocatedInPool (void) const THROWS_NONE
 Check if object is allocated in memory pool (not system heap) More...
 
bool Referenced (void) const THROWS_NONE
 Check if object is referenced. More...
 
bool ReferencedOnlyOnce (void) const THROWS_NONE
 Check if object is referenced only once. More...
 
void AddReference (void) const
 Add reference to object. More...
 
void RemoveReference (void) const
 Remove reference to object. More...
 
void ReleaseReference (void) const
 Remove reference without deleting object. More...
 
virtual void DoNotDeleteThisObject (void)
 Mark this object as not allocated in heap – do not delete this object. More...
 
virtual void DoDeleteThisObject (void)
 Mark this object as allocated in heap – object can be deleted. More...
 
void * operator new (size_t size)
 Define new operator for memory allocation. More...
 
void * operator new[] (size_t size)
 Define new[] operator for 'array' memory allocation. More...
 
void operator delete (void *ptr)
 Define delete operator for memory deallocation. More...
 
void operator delete[] (void *ptr)
 Define delete[] operator for memory deallocation. More...
 
void * operator new (size_t size, void *place)
 Define new operator. More...
 
void operator delete (void *ptr, void *place)
 Define delete operator. More...
 
void * operator new (size_t size, CObjectMemoryPool *place)
 Define new operator using memory pool. More...
 
void operator delete (void *ptr, CObjectMemoryPool *place)
 Define delete operator. More...
 
virtual void DebugDump (CDebugDumpContext ddc, unsigned int depth) const
 Define method for dumping debug information. More...
 
- Public Member Functions inherited from CDebugDumpable
 CDebugDumpable (void)
 
virtual ~CDebugDumpable (void)
 
void DebugDumpText (ostream &out, const string &bundle, unsigned int depth) const
 
void DebugDumpFormat (CDebugDumpFormatter &ddf, const string &bundle, unsigned int depth) const
 
void DumpToConsole (void) const
 
- Public Member Functions inherited from CWeakObject
 CWeakObject (void)
 
virtual ~CWeakObject (void)
 
CPtrToObjectProxyGetPtrProxy (void) const
 Get pointer to proxy object containing pointer to this object. More...
 
- Public Member Functions inherited from CEventHandler
 CEventHandler ()
 CEventHandler. More...
 
virtual ~CEventHandler ()
 
virtual void AddListener (CEventHandler *listener, int pool_name=ePool_Default)
 Add a listener. More...
 
virtual void RemoveListener (CEventHandler *listener)
 Remove a listener. More...
 
virtual void RemoveAllListeners (void)
 
virtual bool HasListener (CEventHandler *listener, int pool_name=ePool_Default) const
 returns "true" if the given listener belongs to the specified pool More...
 
virtual const TListenersGetListeners (int pool_name=ePool_Default) const
 returns a set of listeners fro the specified pool More...
 
virtual bool OnEvent (CEvent *evt)
 Processes en event. Returns "true" if event has been processed. More...
 
virtual bool Dispatch (CEvent *evt, EDispatch disp_how=eDispatch_Default, int pool_name=ePool_Default)
 Dispatches an event to the listeners (but does not handle it). More...
 
virtual bool Send (CEvent *evt, EDispatch disp_how=eDispatch_Default, int pool_name=ePool_Default)
 Sends an event synchronously. More...
 
virtual bool Send (CEvent *evt, int pool_name)
 
void Post (CRef< CEvent > evt, EDispatch disp_how=eDispatch_Default, int pool_name=ePool_Default)
 Handles an event asynchronously (process and/or dispatch). More...
 
- Public Member Functions inherited from ITrackContainer
virtual ~ITrackContainer ()
 

Protected Member Functions

template<typename Tr >
void x_Traverse (Tr &&tr, bool visible)
 
virtual bool x_Empty () const
 
CRef< CTempTrackProxyx_GetMenuTrack (int index)
 
virtual void x_OnIconClicked (TIconID id)
 override method in CLayoutTrack to handle speical cases. More...
 
void x_CreateTracksMenu (wxMenu &menu, TIconID id)
 
virtual void x_OnAllJobsFinished ()
 actions to take on all job finished. More...
 
virtual void x_ReinitSubtracks ()
 reinitialize all subtracks if necessary. More...
 
void x_ReinitTrack (CTrackProxy *t_proxy)
 reinitialize a given subtrack More...
 
void x_UpdateMsg ()
 udpate message in track title bar. More...
 
CTrackContainerx_ConvertToContainer (CTempTrackProxy *proxy)
 
virtual bool x_ShowTitle () const
 Need to preserve title space and show the title. More...
 
void x_ReinitNATrack (CTempTrackProxy *t_proxy, TAnnotMetaDataList &annots, bool makeContainersVisible)
 
void x_MakeTopLevelTracks (CGlyphContainer *featurePanel, TTrackProxies &dst_proxies, int &order, const string &base_name, int indent)
 Make all the tracks at different levels as top-level tracks. More...
 
- Protected Member Functions inherited from CDataTrack
 DECLARE_EVENT_MAP ()
 
virtual void x_Expand (bool expand)
 Collapse or expand the track. More...
 
void x_UpdateLayout ()
 
const TSeqRangex_GetVisRange () const
 
virtual bool x_IsJobNeeded (CAppJobDispatcher::TJobID id) const
 
virtual void x_OnJobFailed (CAppJobNotification &notify)
 
- Protected Member Functions inherited from CGlyphContainer
virtual void x_UpdateBoundingBox ()
 Update the bounding box assuming children's sizes are fixed if any. More...
 
virtual string x_GetHistMsg () const
 Histogram configuration (linear, log, etc) is also on the title bar but multiple track types can have histograms, so we use virtual functinons. More...
 
virtual void x_RenderContent () const
 The content rendering must be implemented in the derived layout tracks. More...
 
virtual void x_ClearContent ()
 
- Protected Member Functions inherited from CLayoutTrack
virtual void x_Draw () const
 The default renderer for this layout object. More...
 
TModelUnit x_GetTBHeight () const
 Get title bar height including margin. More...
 
CConstRef< CSeqGraphicConfigx_GetGlobalConfig () const
 Method for getting global configuration from rendering context. More...
 
void x_OnLayoutChanged ()
 update the layout. More...
 
virtual void x_LoadSettings (const string &preset_style, const TKeyValuePairs &settings)
 load the track settings. More...
 
virtual void x_SaveSettings (const string &preset_style)
 save the track settings to a profile string. More...
 
virtual void x_GetTBRect (TModelRect &rc) const
 Get title bar rectange exclude top margin. More...
 
virtual void x_RenderProgressBar () const
 Method for rendering the job loading or layout generating progress. More...
 
virtual void x_RenderTitleBar () const
 Method for rendering the track title bar. More...
 
virtual void x_RenderIcon (TIconID id, bool highlighted, bool lite_version=false) const
 Render track icons. More...
 
virtual int x_GetIconState (TIconID id) const
 Get current status for a given button. More...
 
void x_RegisterIcon (const SIconInfo &icon)
 register track icons. More...
 
void x_DeregisterIcon (TIconID id)
 deregister an icon if already registered. More...
 
void x_EnableIcon (TIconID id, bool enabled)
 Enable/disable an existing icon. More...
 
void x_ShowIcon (TIconID id, bool shown)
 Show/hide an existing icon. More...
 
int x_HitIconTest (const TModelPoint &p) const
 hit any icon?. More...
 
bool x_HitTitleBar (const TModelPoint &p) const
 hit the title bar?. More...
 
void x_SetStatus (const string &msg, int progress)
 
void x_SetStartStatus ()
 
void x_SetFinishStatus ()
 
bool x_IsNCBITrack () const
 Indicates whether the track is NCBI track. More...
 
- Protected Member Functions inherited from CSeqGlyph
virtual void x_DrawHighlight () const
 
void x_DrawInnerLabelColumns (TModelUnit base, const string &label, const CRgbaColor &color, const CGlTextureFont &font, bool side_label_visible) const
 
void x_DrawInnerLabels (TModelUnit base, const string &label, const CRgbaColor &color, const CGlTextureFont &font, bool side_label_visible, bool inside_only, vector< TModelRange > *labels_ranges=nullptr, TSeqRange *interval=nullptr, bool XOR_mode=false) const
 
void x_DrawTruncatedLabel (const string &label, const CGlTextureFont &font, TModelUnit width, TModelUnit x, TModelUnit y, vector< TModelRange > *labels_ranges=nullptr) const
 
void x_DrawException () const
 Draw a shading background to indicate exception. More...
 
void x_Parent2Local (TModelPoint &pnt) const
 Transform the coordiante from parent coord. to local coord. More...
 
void x_Parent2Local (TModelUnit &, TModelUnit &y) const
 Transform the coordiante from parent coord. to local coord. More...
 
void x_Parent2Local (TModelRect &rect) const
 Transform the coordiante from parent coord. to local coord. More...
 
void x_World2Local (TModelPoint &p) const
 Transform the coordiante from world coord. to local coord. More...
 
void x_World2Local (TModelUnit &x, TModelUnit &y) const
 
void x_Local2World (TModelPoint &p) const
 Transform the coordiantes from local coord. to world coord. More...
 
void x_Local2World (TModelUnit &x, TModelUnit &y) const
 
void x_InitHTMLActiveArea (CHTMLActiveArea &area) const
 initialize the basic information for a given active area. More...
 
bool x_Visible_V () const
 is this glyph visible in vertical direction? More...
 
template<class T >
bool x_IntersectVisible (const CRange< T > &SeqRange, T &from, T &to) const
 
- Protected Member Functions inherited from CObject
virtual void DeleteThis (void)
 Virtual method "deleting" this object. More...
 
- Protected Member Functions inherited from CWeakObject
void CleanWeakRefs (void) const
 Method cleaning all CWeakRefs referencing at this moment to the object After calling to this method all existing CWeakRefs referencing to the object will return NULL, so it effectively will be equal to deleting the object. More...
 
- Protected Member Functions inherited from CEventHandler
virtual const SEvtMapGetEventMap () const
 
void x_DeclareDead ()
 Removes itself unavailable for async event delivery. More...
 
void x_AddListenerToPool (CEventHandler *listener, int pool_name)
 

Protected Attributes

CRef< CFeaturePanelDSm_DS
 
TTrackProxies m_TrackProxies
 all the tracks including on and off. More...
 
- Protected Attributes inherited from CGlyphContainer
CLayoutGroup m_Group
 
CRef< CSimpleLayoutm_Simple
 
CRef< CInlineLayoutm_Inline
 
CRef< CLayeredLayoutm_Layered
 
- Protected Attributes inherited from CLayoutTrack
int m_Order
 track order number More...
 
string m_Id
 track identifier More...
 
bool m_On
 is this track shown More...
 
bool m_ShowFrame
 need to draw frame, not title More...
 
bool m_Expanded
 is this track in expanded state More...
 
TIcons m_Icons
 registered icon info More...
 
int m_HighlightedIcon
 the highlighted icon index More...
 
TTrackAttrFlags m_Attrs
 various track attributes More...
 
ILayoutTrackHostm_LTHost
 Top level host owning the tracks. More...
 
string m_Title
 track title More...
 
bool m_isBlast {false}
 true if the track is known to be generated and uploaded by BLAST More...
 
string m_DefaultTitle
 Default track title. More...
 
string m_Msg
 special message need to show on title bar More...
 
int m_Progress
 any job progress index (0 - 100) More...
 
int m_IndentLevel
 track hierachy indentation level. More...
 
TTrackErrorStatus m_ErrorStatus
 
CRef< CSeqGraphicConfigm_gConfig
 global configuration. More...
 
string m_Profile = "Default"
 track setting profile More...
 
- Protected Attributes inherited from CSeqGlyph
CSeqGlyphm_Parent
 parent/child relationships for this feature More...
 
CRenderingContextm_Context
 the rendering context More...
 
unique_ptr< CRgbaColorm_HighlightsColor
 Highlight color. More...
 
ENeighbours m_Neighbours
 Indicates whether the glyph has neighbours. More...
 
- Protected Attributes inherited from CEventHandler
TPools m_Pools
 

Private Member Functions

 CTrackContainer (const CTrackContainer &)
 prohibited copy constructor and assignment operator. More...
 
CTrackContaineroperator= (const CTrackContainer &)
 
void x_AddSubtrack (CTrackContainer *parent, CLayoutTrack *track, CTempTrackProxy *proxy)
 
void x_ShowTrack (CLayoutTrack *track, bool on)
 
bool x_HasToggleTracks () const
 
bool x_HasToBeShown () const
 

Private Attributes

wxEvtHandler * m_Handler
 wx-related event handler. More...
 
CRef< CTrackConfigManagerm_ConfigMgr
 
int m_AnnotLevel
 Annotation selector depth. More...
 
bool m_Adaptive
 Adpative/Exact selector. More...
 
bool m_TrackInitFinished
 flag indicating whether tracks initialization is finished. More...
 
bool m_SkipGenuineCheck
 flag indicating if track verification is required. More...
 

Static Private Attributes

static CTrackTypeInfo m_TypeInfo
 CLayoutTrack required track type info. More...
 

Friends

class CTrackContainerFactory
 

data track pure virtual methods.

virtual CRef< CSGGenBankDSGetDataSource ()
 Method for accessing the data source. More...
 
virtual CConstRef< CSGGenBankDSGetDataSource () const
 
virtual void x_UpdateData ()
 update track content. More...
 
virtual void x_OnJobCompleted (CAppJobNotification &notify)
 

Additional Inherited Members

- Static Public Member Functions inherited from CLayoutTrack
static void RegisterIconImage (const TIconAlias &key, const string &img_file)
 register the image for an icon. More...
 
- Static Public Member Functions inherited from CSeqGlyph
static bool PointInRect (const TModelPoint &p, const TModelRect &rc)
 
static bool PointInRect (TModelUnit x, TModelUnit y, const TModelRect &rc)
 
- Static Public Member Functions inherited from CObject
static NCBI_XNCBI_EXPORT void ThrowNullPointerException (void)
 Define method to throw null pointer exception. More...
 
static NCBI_XNCBI_EXPORT void ThrowNullPointerException (const type_info &type)
 
static EAllocFillMode GetAllocFillMode (void)
 
static void SetAllocFillMode (EAllocFillMode mode)
 
static void SetAllocFillMode (const string &value)
 Set mode from configuration parameter value. More...
 
- Static Public Member Functions inherited from CDebugDumpable
static void EnableDebugDump (bool on)
 
- Static Public Member Functions inherited from CEventHandler
static bool HandlePostRequest ()
 
static void ClearPostQueue ()
 erases all events from the queue More...
 
static void DestroyPostQueue ()
 
- Static Public Attributes inherited from CObject
static const TCount eCounterBitsCanBeDeleted = 1 << 0
 Define possible object states. More...
 
static const TCount eCounterBitsInPlainHeap = 1 << 1
 Heap signature was found. More...
 
static const TCount eCounterBitsPlaceMask
 Mask for 'in heap' state flags. More...
 
static const int eCounterStep = 1 << 2
 Skip over the "in heap" bits. More...
 
static const TCount eCounterValid = TCount(1) << (sizeof(TCount) * 8 - 2)
 Minimal value for valid objects (reference counter is zero) Must be a single bit value. More...
 
static const TCount eCounterStateMask
 Valid object, and object in heap. More...
 
- Protected Types inherited from CLayoutTrack
enum  EIconID {
  eIcon_Close = 0 , eIcon_Expand , eIcon_Content , eIcon_Layout ,
  eIcon_Settings , eIcon_Help , eIcon_MaxTrackIconID = 100
}
 Icon id used in layout track. More...
 
typedef int TIconID
 use int as TIconID instead of EIconID. More...
 
typedef string TIconAlias
 the icon alias used as a key More...
 
typedef vector< SIconInfoTIcons
 
- Static Protected Member Functions inherited from CLayoutTrack
static void RegisterCommonIconImages ()
 register images for the common icons. More...
 
static bool InitIconTextures ()
 initialize OpenGL ttexture objects for icons. More...
 
- Static Protected Attributes inherited from CEventHandler
static const SEvtMap sm_EvtMap
 

Detailed Description

CTrackContainer - a track container in the form of layout track.

Compared to CGlyphContainer, this class assume its children must be one type of CLayoutTracks. So it has knowledge about the child tracks to turn them on or off. The purpose of CTrackContainer is that it forms a group of tracks to make them behave like a single track: movable, collapsible, and closible. The track container may be resposible of creating/initializing the contained tracks. The reason of inhereting from CDataTrack is because a container track may need to initialize its child tracks asynchronously. Potentially, a container track may delegate its child tracks to load data for performance purpose.

Definition at line 58 of file track_container_track.hpp.

Member Typedef Documentation

◆ TAnnotMetaDataList

Definition at line 70 of file track_container_track.hpp.

◆ TFactoryMap

Definition at line 74 of file track_container_track.hpp.

◆ TNAAs

typedef vector<string> CTrackContainer::TNAAs

Definition at line 75 of file track_container_track.hpp.

◆ TTrackMap

Definition at line 68 of file track_container_track.hpp.

◆ TTrackProxies

Definition at line 66 of file track_container_track.hpp.

◆ TUsedAnnots

explicitly named annots used by a track.

Definition at line 73 of file track_container_track.hpp.

Constructor & Destructor Documentation

◆ CTrackContainer() [1/2]

CTrackContainer::CTrackContainer ( CRenderingContext r_cntx,
CFeaturePanelDS ds = NULL 
)

Definition at line 100 of file track_container_track.cpp.

Referenced by x_ConvertToContainer().

◆ ~CTrackContainer()

CTrackContainer::~CTrackContainer ( )
virtual

◆ CTrackContainer() [2/2]

CTrackContainer::CTrackContainer ( const CTrackContainer )
private

prohibited copy constructor and assignment operator.

Member Function Documentation

◆ AddNewTrack() [1/2]

CTrackProxy * CTrackContainer::AddNewTrack ( const string track_key,
const CTrackProxy::TAnnots annots,
const string disp_name,
const string name = "",
const string filter = "",
const string sub_key = "" 
)

◆ AddNewTrack() [2/2]

void CTrackContainer::AddNewTrack ( CTrackProxy proxy)

Definition at line 365 of file track_container_track.cpp.

References m_TrackProxies, and x_ReinitTrack().

◆ AddTrackProxy()

void CTrackContainer::AddTrackProxy ( CTempTrackProxy proxy,
bool  upgateMsg = true 
)

◆ AddTracks()

void CTrackContainer::AddTracks ( CTempTrackProxy t_proxy,
TTrackMap tracks 
)

add sub tracks after tracks get created.

The track proxy may already have tracks associated with it. If the proxy have more than one subtracks or tracks contains more than one tracks, those tracks will be put under a track container.

Definition at line 454 of file track_container_track.cpp.

References _ASSERT, CTrackConfigManager::AdjustTrackOrder(), map_checker< Container >::begin(), map_checker< Container >::clear(), map_checker< Container >::empty(), map_checker< Container >::end(), map_checker< Container >::erase(), eUnknown, ILayoutTrackFactory::ExtractAnnotName(), ILayoutTrackFactory::ExtractFilterName(), map_checker< Container >::find(), GetAnnotLevel(), CTempTrackProxy::GetAnnots(), CTempTrackProxy::GetCategory(), CTempTrackProxy::GetChildTempTrack(), CTempTrackProxy::GetDisplayName(), CTempTrackProxy::GetFilter(), CTempTrackProxy::GetKey(), CTempTrackProxy::GetName(), CRef< C, Locker >::GetPointer(), CTempTrackProxy::GetShown(), CTempTrackProxy::GetSource(), CLayoutTrack::GetTitle(), CTempTrackProxy::GetTrack(), CTempTrackProxy::GetTrackProfile(), IsOverlay(), CLayoutTrack::m_gConfig, ILayoutTrackFactory::MergeAnnotAndFilter(), NCBI_THROW, NON_CONST_ITERATE, NULL, CRef< C, Locker >::Reset(), s_GetBestTrackTitle(), s_UpdateTitle(), SetAnnotLevel(), CLayoutTrack::SetConfig(), CTrackProxy::SetContShown(), CTempTrackProxy::SetFilter(), CLayoutTrack::SetIsBlast(), CTempTrackProxy::SetShown(), CLayoutTrack::SetShowTitle(), CTempTrackProxy::SetSource(), CLayoutTrack::SetTitle(), CTempTrackProxy::SetTrackProfile(), map_checker< Container >::size(), CSeqGlyph::Update(), CTempTrackProxy::UpdateNA_ChildVisibility(), CGraphOverlay::UpdateSource(), CGraphOverlay::UpdateTrackParams(), x_AddSubtrack(), and x_ConvertToContainer().

Referenced by CFeaturePanel::x_ConfigureSubtracks(), CFeaturePanel::x_CreateLevelTrack(), and x_OnJobCompleted().

◆ AllJobsFinished()

bool CTrackContainer::AllJobsFinished ( ) const
virtual

◆ AllTracksCreated()

bool CTrackContainer::AllTracksCreated ( ) const

Definition at line 285 of file track_container_track.cpp.

References IsTrackInitDone().

Referenced by CSeqGraphicRenderer::AllTracksCreated().

◆ ClearTracks()

void CTrackContainer::ClearTracks ( )

◆ CloneTrack()

void CTrackContainer::CloneTrack ( int  order,
const string track_tile 
)
virtual

◆ CloseTrack()

void CTrackContainer::CloseTrack ( int  order)
virtual

Close a track.

Hide the given track, but track is not removed.

Implements ITrackContainer.

Definition at line 807 of file track_container_track.cpp.

References CDataTrack::DeleteAllJobs(), m_TrackProxies, CLayoutGroup::Remove(), CGlyphContainer::SetGroup(), CLayoutGroup::UpdateLayout(), and x_UpdateMsg().

◆ DeleteAllJobs()

void CTrackContainer::DeleteAllJobs ( )
virtual

◆ ExpandAll()

void CTrackContainer::ExpandAll ( bool  expand)

expand or collapse this track and its subtracks recursively.

Parameters
expandtrue if expand, false if collapse

Definition at line 1113 of file track_container_track.cpp.

References CLayoutTrack::Expand(), ExpandAll(), m_TrackProxies, and NON_CONST_ITERATE.

Referenced by ExpandAll(), CSeqGraphicRenderer::ExpandAllTracks(), CSeqGraphicWidget::OnCollapseAllSubtracks(), and CSeqGraphicWidget::OnExpandAllSubtracks().

◆ GetAdaptive()

bool CTrackContainer::GetAdaptive ( ) const
inline

◆ GetAnnotLevel()

int CTrackContainer::GetAnnotLevel ( ) const
inline

◆ GetChildContainerTrack()

CTrackContainer * CTrackContainer::GetChildContainerTrack ( const string name)

Get a child track container track.

The reutrned child track is also a track container track with the given track name.

Definition at line 1082 of file track_container_track.cpp.

References CLayoutTrack::GetTitle(), m_TrackProxies, NON_CONST_ITERATE, and NULL.

◆ GetConfigMgr() [1/2]

CTrackConfigManager * CTrackContainer::GetConfigMgr ( )
inline

◆ GetConfigMgr() [2/2]

const CTrackConfigManager * CTrackContainer::GetConfigMgr ( ) const
inline

Definition at line 435 of file track_container_track.hpp.

References m_ConfigMgr.

◆ GetDataSource() [1/2]

CRef< CSGGenBankDS > CTrackContainer::GetDataSource ( )
virtual

Method for accessing the data source.

Implements CDataTrack.

Definition at line 1101 of file track_container_track.cpp.

References CRef< C, Locker >::GetPointer(), and m_DS.

◆ GetDataSource() [2/2]

CConstRef< CSGGenBankDS > CTrackContainer::GetDataSource ( void  ) const
virtual

Implements CDataTrack.

Definition at line 1107 of file track_container_track.cpp.

References CRef< C, Locker >::GetPointer(), and m_DS.

◆ GetDS()

CFeaturePanelDS* CTrackContainer::GetDS ( void  )
inline

Definition at line 178 of file track_container_track.hpp.

References m_DS.

◆ GetHTMLActiveAreas()

void CTrackContainer::GetHTMLActiveAreas ( TAreaVector ) const
virtual

Get html active areas.

This function is for CGI mode only. By default, it does nothing.

Reimplemented from CGlyphContainer.

Reimplemented in CGraphOverlay.

Definition at line 214 of file track_container_track.cpp.

References CGlyphContainer::GetGroup(), CLayoutGroup::GetHTMLActiveAreas(), CLayoutTrack::InitHTMLActiveArea(), CLayoutTrack::IsOn(), NStr::JsonEncode(), CHTMLActiveArea::m_Signature, and m_TrackProxies.

Referenced by CSeqGraphicRenderer::x_Draw(), and CSeqGraphicRenderer::x_DrawVectorGraphics().

◆ GetSkipGenuineCheck()

bool CTrackContainer::GetSkipGenuineCheck ( ) const
inline

◆ GetSubtrackProxies() [1/2]

CTrackContainer::TTrackProxies & CTrackContainer::GetSubtrackProxies ( )
inline

Definition at line 422 of file track_container_track.hpp.

References m_TrackProxies.

◆ GetSubtrackProxies() [2/2]

const CTrackContainer::TTrackProxies & CTrackContainer::GetSubtrackProxies ( ) const
inline

◆ GetTypeInfo()

const CTrackTypeInfo & CTrackContainer::GetTypeInfo ( void  ) const
virtual

Reimplemented from CGlyphContainer.

Reimplemented in CGraphOverlay, CFeaturePanel, and CAllOtherFeaturesTrack.

Definition at line 1095 of file track_container_track.cpp.

References m_TypeInfo.

◆ GetUniqueTrackName()

string CTrackContainer::GetUniqueTrackName ( const string name) const

Definition at line 1065 of file track_container_track.cpp.

References NStr::fConvErr_NoThrow, m_TrackProxies, n, NStr::NumericToString(), and tmp.

Referenced by AddNewTrack(), and CloneTrack().

◆ HasSubtracks()

bool CTrackContainer::HasSubtracks ( ) const
virtual

Has any real subtracks.

This differs from x_Empty() method. x_Empty() method only considers the visible tracks, but HasSubtracks() will consider the ones that are off.

Implements ITrackContainer.

Definition at line 1007 of file track_container_track.cpp.

References CGlyphContainer::GetChildren(), m_TrackProxies, and NULL.

Referenced by x_CreateTracksMenu().

◆ InitNATracks()

void CTrackContainer::InitNATracks ( const TAnnotMetaDataList annots,
bool  makeContainersVisible 
)

Definition at line 1691 of file track_container_track.cpp.

References i, m_TrackProxies, and x_ReinitNATrack().

Referenced by CFeaturePanel::x_InitNATracks().

◆ IsOverlay()

bool CTrackContainer::IsOverlay ( ) const
inlinevirtual

Reimplemented in CGraphOverlay.

Definition at line 471 of file track_container_track.hpp.

Referenced by AddTracks(), x_MakeTopLevelTracks(), and x_ShowTitle().

◆ IsTrackInitDone()

bool CTrackContainer::IsTrackInitDone ( ) const
inline

◆ LoadNATracks() [1/2]

void CTrackContainer::LoadNATracks ( CDataTrack child,
const vector< string > &  naAccessions 
)

Definition at line 1781 of file track_container_track.cpp.

References LoadNATracks(), and m_TrackProxies.

◆ LoadNATracks() [2/2]

void CTrackContainer::LoadNATracks ( CTempTrackProxy t_proxy,
const vector< string > &  accessions 
)

◆ MoveDown()

void CTrackContainer::MoveDown ( int  order)
virtual

◆ MoveTrack()

void CTrackContainer::MoveTrack ( int  from,
int  to 
)

◆ MoveTrackToBottom()

void CTrackContainer::MoveTrackToBottom ( int  order)
virtual

◆ MoveTrackToTop()

void CTrackContainer::MoveTrackToTop ( int  order)
virtual

◆ MoveUp()

void CTrackContainer::MoveUp ( int  order)
virtual

◆ NoSubtrackEver()

bool CTrackContainer::NoSubtrackEver ( ) const
virtual

◆ OnDeselectAll()

void CTrackContainer::OnDeselectAll ( )

◆ OnMenuToggleTrack()

void CTrackContainer::OnMenuToggleTrack ( int  index)

◆ OnMenuTrackSettings()

void CTrackContainer::OnMenuTrackSettings ( int  index)

◆ OnMore()

void CTrackContainer::OnMore ( )

◆ OnRevertSelection()

void CTrackContainer::OnRevertSelection ( )

◆ OnSelectAll()

void CTrackContainer::OnSelectAll ( )

◆ OnToggleTrack()

void CTrackContainer::OnToggleTrack ( int  order)
virtual

◆ OnTrackSettings()

void CTrackContainer::OnTrackSettings ( int  order)
virtual

Reimplemented in CGraphOverlay.

Definition at line 1400 of file track_container_track.cpp.

Referenced by OnMenuTrackSettings().

◆ operator=()

CTrackContainer& CTrackContainer::operator= ( const CTrackContainer )
private

◆ ReinitNASubtracks()

virtual void CTrackContainer::ReinitNASubtracks ( TAnnotMetaDataList ,
bool   
)
inlinevirtual

Reimplemented in CAllOtherFeaturesTrack.

Definition at line 238 of file track_container_track.hpp.

Referenced by x_ReinitNATrack().

◆ RemoveEmptyTracks()

void CTrackContainer::RemoveEmptyTracks ( )

◆ RemoveTrack()

void CTrackContainer::RemoveTrack ( int  order,
bool  immediately = true 
)
virtual

◆ RenameChildTrack()

void CTrackContainer::RenameChildTrack ( int  order,
const string new_name 
)
virtual

Rename a child track.

Parameters
orderthe source track order
new_namethe track

Implements ITrackContainer.

Definition at line 770 of file track_container_track.cpp.

References m_TrackProxies.

Referenced by CSeqGraphicWidget::OnRenameTrack().

◆ ResetSearch()

virtual void CTrackContainer::ResetSearch ( )
inlinevirtual

◆ SaveTrackStates()

void CTrackContainer::SaveTrackStates ( int  order)

◆ SetAdaptive()

void CTrackContainer::SetAdaptive ( bool  flag)
inline

◆ SetAnnotLevel()

void CTrackContainer::SetAnnotLevel ( int  level)
inline

◆ SetConfigMgr()

void CTrackContainer::SetConfigMgr ( CTrackConfigManager cfg_mgr)
inline

◆ SetSkipGenuineCheck()

void CTrackContainer::SetSkipGenuineCheck ( bool  flag)
inline

◆ SetSubtrackProxies()

void CTrackContainer::SetSubtrackProxies ( const TTrackProxies proxies)

◆ SetTrack()

void CTrackContainer::SetTrack ( CLayoutTrack track,
int  order,
bool  shown = true 
)
virtual

◆ SetTrackInitDone()

void CTrackContainer::SetTrackInitDone ( bool  f)
inline

◆ ShowAll()

void CTrackContainer::ShowAll ( bool  shown,
bool  recursive = true 
)

◆ SortChildTracksByOrder()

void CTrackContainer::SortChildTracksByOrder ( )

◆ SyncSettings()

void CTrackContainer::SyncSettings ( TTrackProxies dst_proxies,
int  level 
) const

synchronize and merge track settings.

For many cases that the actually track proxies used for a viewed sewquence may be different from the original track proxied stored. We need to synchronize those two before we save the settings. For multiple level layout, it is also necessary to sync multiple copies of the similar sets of track proxies, one for each level, and merge into one unique set of track profile for saving.

Definition at line 1864 of file track_container_track.cpp.

References GetAnnotLevel(), CTempTrackProxy::GetChildTempTrack(), CTrackProxy::GetContShown(), CTempTrackProxy::GetFilter(), CTempTrackProxy::GetName(), CTempTrackProxy::GetOrder(), CTempTrackProxy::GetShown(), CTempTrackProxy::GetSource(), m_TrackProxies, ILayoutTrackFactory::MergeAnnotAndFilter(), NULL, CTrackProxy::SetContShown(), CLayoutTrack::SetOrder(), CTempTrackProxy::SetShown(), and SyncSettings().

Referenced by SyncSettings(), and CFeaturePanel::x_SaveSettings().

◆ ToggleTracks()

void CTrackContainer::ToggleTracks ( vector< string > &  naAccessions)

◆ Traverse()

template<typename Tr >
void CTrackContainer::Traverse ( Tr &&  tr,
bool  visible 
)
inline

◆ x_AddSubtrack()

void CTrackContainer::x_AddSubtrack ( CTrackContainer parent,
CLayoutTrack track,
CTempTrackProxy proxy 
)
private

◆ x_ConvertToContainer()

CTrackContainer * CTrackContainer::x_ConvertToContainer ( CTempTrackProxy proxy)
protected

◆ x_CreateTracksMenu()

void CTrackContainer::x_CreateTracksMenu ( wxMenu &  menu,
TIconID  id 
)
protected

◆ x_Empty()

bool CTrackContainer::x_Empty ( ) const
protectedvirtual

Reimplemented from CGlyphContainer.

Reimplemented in CFeaturePanel.

Definition at line 1404 of file track_container_track.cpp.

References ITERATE, m_TrackProxies, and NULL.

◆ x_GetMenuTrack()

CRef< CTempTrackProxy > CTrackContainer::x_GetMenuTrack ( int  index)
protected

Definition at line 1337 of file track_container_track.cpp.

References m_TrackProxies, and s_GetMenuTracks().

Referenced by OnMenuToggleTrack(), and OnMenuTrackSettings().

◆ x_HasToBeShown()

bool CTrackContainer::x_HasToBeShown ( ) const
private

◆ x_HasToggleTracks()

bool CTrackContainer::x_HasToggleTracks ( ) const
private

◆ x_MakeTopLevelTracks()

void CTrackContainer::x_MakeTopLevelTracks ( CGlyphContainer featurePanel,
TTrackProxies dst_proxies,
int order,
const string base_name,
int  indent 
)
protected

Make all the tracks at different levels as top-level tracks.

Definition at line 1948 of file track_container_track.cpp.

References CGlyphContainer::Add(), indent(), IsOverlay(), m_TrackProxies, CLayoutTrack::SetIndent(), CLayoutTrack::SetParentTrack(), and x_MakeTopLevelTracks().

Referenced by CFeaturePanel::Update(), and x_MakeTopLevelTracks().

◆ x_OnAllJobsFinished()

void CTrackContainer::x_OnAllJobsFinished ( )
protectedvirtual

◆ x_OnIconClicked()

void CTrackContainer::x_OnIconClicked ( TIconID  id)
protectedvirtual

◆ x_OnJobCompleted()

void CTrackContainer::x_OnJobCompleted ( CAppJobNotification notify)
protectedvirtual

◆ x_ReinitNATrack()

void CTrackContainer::x_ReinitNATrack ( CTempTrackProxy t_proxy,
TAnnotMetaDataList annots,
bool  makeContainersVisible 
)
protected

◆ x_ReinitSubtracks()

void CTrackContainer::x_ReinitSubtracks ( )
protectedvirtual

reinitialize all subtracks if necessary.

Reimplemented in CAllOtherFeaturesTrack.

Definition at line 1607 of file track_container_track.cpp.

References CTempTrackProxy::GetShown(), m_TrackProxies, NON_CONST_ITERATE, and x_ReinitTrack().

Referenced by CFeaturePanel::Update(), x_ReinitTrack(), and x_UpdateData().

◆ x_ReinitTrack()

void CTrackContainer::x_ReinitTrack ( CTrackProxy t_proxy)
protected

◆ x_ShowTitle()

bool CTrackContainer::x_ShowTitle ( ) const
protectedvirtual

Need to preserve title space and show the title.

Many factors may determine if a title will be rendered.

Reimplemented from CLayoutTrack.

Definition at line 1847 of file track_container_track.cpp.

References CSeqGraphicConfig::GetSizeLevel(), IsOverlay(), CLayoutTrack::m_gConfig, and CLayoutTrack::x_ShowTitle().

◆ x_ShowTrack()

void CTrackContainer::x_ShowTrack ( CLayoutTrack track,
bool  on 
)
private

◆ x_Traverse()

template<typename Tr >
void CTrackContainer::x_Traverse ( Tr &&  tr,
bool  visible 
)
inlineprotected

Definition at line 255 of file track_container_track.hpp.

References m_TrackProxies, and x_Traverse().

Referenced by Traverse(), and x_Traverse().

◆ x_UpdateData()

void CTrackContainer::x_UpdateData ( )
protectedvirtual

◆ x_UpdateMsg()

void CTrackContainer::x_UpdateMsg ( )
protected

Friends And Related Function Documentation

◆ CTrackContainerFactory

friend class CTrackContainerFactory
friend

Definition at line 63 of file track_container_track.hpp.

Member Data Documentation

◆ m_Adaptive

bool CTrackContainer::m_Adaptive
private

Adpative/Exact selector.

Definition at line 348 of file track_container_track.hpp.

Referenced by GetAdaptive(), LoadNATracks(), SetAdaptive(), x_ReinitNATrack(), and x_ReinitTrack().

◆ m_AnnotLevel

int CTrackContainer::m_AnnotLevel
private

Annotation selector depth.

Definition at line 345 of file track_container_track.hpp.

Referenced by GetAnnotLevel(), LoadNATracks(), SetAnnotLevel(), and x_ReinitTrack().

◆ m_ConfigMgr

CRef<CTrackConfigManager> CTrackContainer::m_ConfigMgr
private

Definition at line 342 of file track_container_track.hpp.

Referenced by GetConfigMgr(), and SetConfigMgr().

◆ m_DS

CRef<CFeaturePanelDS> CTrackContainer::m_DS
protected

◆ m_Handler

wxEvtHandler* CTrackContainer::m_Handler
private

wx-related event handler.

Definition at line 340 of file track_container_track.hpp.

Referenced by x_OnIconClicked(), and ~CTrackContainer().

◆ m_SkipGenuineCheck

bool CTrackContainer::m_SkipGenuineCheck
private

flag indicating if track verification is required.

By default, a data track will be verified to make sure it indeed exists during track configuration according to a list of requested tracks.

Definition at line 357 of file track_container_track.hpp.

Referenced by GetSkipGenuineCheck(), and SetSkipGenuineCheck().

◆ m_TrackInitFinished

bool CTrackContainer::m_TrackInitFinished
private

flag indicating whether tracks initialization is finished.

Definition at line 351 of file track_container_track.hpp.

Referenced by IsTrackInitDone(), and SetTrackInitDone().

◆ m_TrackProxies

TTrackProxies CTrackContainer::m_TrackProxies
protected

◆ m_TypeInfo

CTrackTypeInfo CTrackContainer::m_TypeInfo
staticprivate

The documentation for this class was generated from the following files:
Modified on Thu Feb 29 12:21:37 2024 by modify_doxy.py rev. 669887