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

Search Toolkit Book for SequenceDisplay

#include "sequence_display.hpp"
(Private to src/app/cn3d.)

+ Inheritance diagram for SequenceDisplay:
+ Collaboration diagram for SequenceDisplay:

Public Types

typedef std::vector< const Sequence * > SequenceList
 
- Public Types inherited from ViewableAlignment
enum  eControlKeys { eShiftDown = 0x01 , eControlDown = 0x02 , eAltOrMetaDown = 0x04 }
 

Public Member Functions

 SequenceDisplay (bool editable, ViewerWindowBase *const *parentViewerWindow)
 
virtual ~SequenceDisplay (void)
 
void AddRowFromAlignment (unsigned int row, BlockMultipleAlignment *fromAlignment)
 
void AddRowFromSequence (const Sequence *sequence, unsigned int from, unsigned int to)
 
void AddRowFromString (const std::string &anyString)
 
DisplayRowFromStringFindBlockBoundaryRow (const BlockMultipleAlignment *forAlignment) const
 
void UpdateBlockBoundaryRow (const BlockMultipleAlignment *forAlignment) const
 
void AddBlockBoundaryRow (BlockMultipleAlignment *forAlignment)
 
void AddBlockBoundaryRows (void)
 
void RemoveBlockBoundaryRows (void)
 
void GetSequences (const BlockMultipleAlignment *forAlignment, SequenceList *seqs) const
 
void GetProteinSequences (SequenceList *seqs) const
 
void GetRowOrder (const BlockMultipleAlignment *forAlignment, std::vector< unsigned int > *dependentRowOrder) const
 
void RowsAdded (unsigned int nRowsAddedToMultiple, BlockMultipleAlignment *multiple, int where=-1)
 
void RowsRemoved (const std::vector< unsigned int > &rowsRemoved, const BlockMultipleAlignment *multiple)
 
bool CalculateRowScoresWithThreader (double weightPSSM)
 
void SortRowsByIdentifier (void)
 
void SortRowsByThreadingScore (double weightPSSM)
 
void SortRowsBySelfHit (void)
 
void FloatPDBRowsToTop (void)
 
void FloatHighlightsToTop (void)
 
void FloatGVToTop (void)
 
bool SortRowsByLoopLength (unsigned int row, unsigned int alnIndex)
 
bool ProximitySort (unsigned int displayRow)
 
SequenceDisplayClone (const Old2NewAlignmentMap &newAlignments) const
 
void Empty (void)
 
unsigned int NRows (void) const
 
bool IsEditable (void) const
 
const SequenceGetSequenceForRow (unsigned int row) const
 
void RedrawAlignedMolecules (void) const
 
bool GetDisplayCoordinates (const Molecule *molecule, unsigned int seqIndex, BlockMultipleAlignment::eUnalignedJustification justification, unsigned int *column, unsigned int *row)
 
void SetStartingColumn (unsigned int column)
 
unsigned int GetStartingColumn (void) const
 
void GetSize (unsigned int *setColumns, unsigned int *setRows) const
 
bool GetRowTitle (unsigned int row, wxString *title, wxColour *color) const
 
bool GetCharacterTraitsAt (unsigned int column, unsigned int row, char *character, wxColour *color, bool *drawBackground, wxColour *cellBackgroundColor) const
 
void MouseOver (int column, int row) const
 
bool MouseDown (int column, int row, unsigned int controls)
 
void SelectedRectangle (int columnLeft, int rowTop, int columnRight, int rowBottom)
 
void DraggedCell (int columnFrom, int rowFrom, int columnTo, int rowTo)
 
- Public Member Functions inherited from ViewableAlignment
virtual ~ViewableAlignment (void)
 

Private Types

typedef std::vector< DisplayRow * > RowVector
 

Private Member Functions

void AddRow (DisplayRow *row)
 
BlockMultipleAlignmentGetAlignmentForRow (unsigned int row) const
 
void UpdateBlockBoundaryRow (DisplayRowFromString *blockBoundaryRow) const
 
void UpdateMaxRowWidth (void)
 
void UpdateAfterEdit (const BlockMultipleAlignment *forAlignment)
 
void SortRows (void)
 

Private Attributes

const bool isEditable
 
ViewerWindowBase *constviewerWindow
 
unsigned int startingColumn
 
RowVector rows
 
unsigned int maxRowWidth
 
bool shiftDown
 
bool controlDown
 

Friends

class SequenceViewer
 
class UpdateViewer
 

Detailed Description

Definition at line 185 of file sequence_display.hpp.

Member Typedef Documentation

◆ RowVector

typedef std::vector< DisplayRow * > SequenceDisplay::RowVector
private

Definition at line 251 of file sequence_display.hpp.

◆ SequenceList

typedef std::vector< const Sequence * > SequenceDisplay::SequenceList

Definition at line 207 of file sequence_display.hpp.

Constructor & Destructor Documentation

◆ SequenceDisplay()

SequenceDisplay::SequenceDisplay ( bool  editable,
ViewerWindowBase *const parentViewerWindow 
)

Definition at line 201 of file sequence_display.cpp.

Referenced by Clone().

◆ ~SequenceDisplay()

SequenceDisplay::~SequenceDisplay ( void  )
virtual

Definition at line 206 of file sequence_display.cpp.

References i, and rows.

Member Function Documentation

◆ AddBlockBoundaryRow()

void SequenceDisplay::AddBlockBoundaryRow ( BlockMultipleAlignment forAlignment)

◆ AddBlockBoundaryRows()

void SequenceDisplay::AddBlockBoundaryRows ( void  )

◆ AddRow()

void SequenceDisplay::AddRow ( DisplayRow row)
private

◆ AddRowFromAlignment()

void SequenceDisplay::AddRowFromAlignment ( unsigned int  row,
BlockMultipleAlignment fromAlignment 
)

◆ AddRowFromSequence()

void SequenceDisplay::AddRowFromSequence ( const Sequence sequence,
unsigned int  from,
unsigned int  to 
)

Definition at line 263 of file sequence_display.cpp.

References AddRow(), and ERRORMSG.

Referenced by SequenceViewer::DisplaySequences().

◆ AddRowFromString()

void SequenceDisplay::AddRowFromString ( const std::string anyString)

Definition at line 273 of file sequence_display.cpp.

References AddRow().

Referenced by UpdateViewer::AddAlignments(), and SequenceViewer::DisplaySequences().

◆ CalculateRowScoresWithThreader()

bool SequenceDisplay::CalculateRowScoresWithThreader ( double  weightPSSM)

◆ Clone()

SequenceDisplay * SequenceDisplay::Clone ( const Old2NewAlignmentMap newAlignments) const

◆ DraggedCell()

void SequenceDisplay::DraggedCell ( int  columnFrom,
int  rowFrom,
int  columnTo,
int  rowTo 
)
virtual

◆ Empty()

void SequenceDisplay::Empty ( void  )

◆ FindBlockBoundaryRow()

DisplayRowFromString * SequenceDisplay::FindBlockBoundaryRow ( const BlockMultipleAlignment forAlignment) const

◆ FloatGVToTop()

void SequenceDisplay::FloatGVToTop ( void  )

◆ FloatHighlightsToTop()

void SequenceDisplay::FloatHighlightsToTop ( void  )

◆ FloatPDBRowsToTop()

void SequenceDisplay::FloatPDBRowsToTop ( void  )

◆ GetAlignmentForRow()

BlockMultipleAlignment * SequenceDisplay::GetAlignmentForRow ( unsigned int  row) const
private

◆ GetCharacterTraitsAt()

bool SequenceDisplay::GetCharacterTraitsAt ( unsigned int  column,
unsigned int  row,
char *  character,
wxColour *  color,
bool drawBackground,
wxColour *  cellBackgroundColor 
) const
virtual

◆ GetDisplayCoordinates()

bool SequenceDisplay::GetDisplayCoordinates ( const Molecule molecule,
unsigned int  seqIndex,
BlockMultipleAlignment::eUnalignedJustification  justification,
unsigned int column,
unsigned int row 
)

◆ GetProteinSequences()

void SequenceDisplay::GetProteinSequences ( SequenceList seqs) const

Definition at line 922 of file sequence_display.cpp.

References Sequence::isProtein, row, and rows.

Referenced by AlignmentManager::GetStructureProteins().

◆ GetRowOrder()

void SequenceDisplay::GetRowOrder ( const BlockMultipleAlignment forAlignment,
std::vector< unsigned int > *  dependentRowOrder 
) const

◆ GetRowTitle()

bool SequenceDisplay::GetRowTitle ( unsigned int  row,
wxString *  title,
wxColour *  color 
) const
virtual

◆ GetSequenceForRow()

const Sequence* SequenceDisplay::GetSequenceForRow ( unsigned int  row) const
inline

Definition at line 266 of file sequence_display.hpp.

References NRows(), NULL, row, and rows.

Referenced by ViewerWindowBase::MakeSequenceVisible(), and ViewerWindowBase::OnFindPattern().

◆ GetSequences()

void SequenceDisplay::GetSequences ( const BlockMultipleAlignment forAlignment,
SequenceList seqs 
) const

◆ GetSize()

void SequenceDisplay::GetSize ( unsigned int setColumns,
unsigned int setRows 
) const
inlinevirtual

Implements ViewableAlignment.

Definition at line 286 of file sequence_display.hpp.

References maxRowWidth, and rows.

◆ GetStartingColumn()

unsigned int SequenceDisplay::GetStartingColumn ( void  ) const
inline

◆ IsEditable()

bool SequenceDisplay::IsEditable ( void  ) const
inline

◆ MouseDown()

bool SequenceDisplay::MouseDown ( int  column,
int  row,
unsigned int  controls 
)
virtual

Reimplemented from ViewableAlignment.

Definition at line 414 of file sequence_display.cpp.

References BlockMultipleAlignment::alignDependentFrom, BlockMultipleAlignment::alignDependentTo, DisplayRowFromAlignment::alignment, ViewerBase::alignmentManager, ViewerWindowBase::AlwaysSyncStructures(), UpdateViewer::BlastNeighbor(), UpdateViewerWindow::BlastNeighborSingleOff(), UpdateViewerWindow::BlastPSSMSingleOff(), UpdateViewerWindow::BlastSingleOff(), UpdateViewer::BlastUpdate(), UpdateViewerWindow::BlockAlignSingleOff(), AlignmentManager::BlockAlignUpdate(), column, controlDown, UpdateViewer::DeleteAlignment(), BlockMultipleAlignment::DeleteAllBlocks(), UpdateViewerWindow::DeleteAllBlocksOff(), BlockMultipleAlignment::DeleteBlock(), BlockMultipleAlignment::DeleteRow(), SequenceViewerWindow::DeleteRowOff(), UpdateViewerWindow::DeleteSingleOff(), UpdateViewerWindow::DoBlastNeighborSingle(), UpdateViewerWindow::DoBlastPSSMSingle(), UpdateViewerWindow::DoBlastSingle(), UpdateViewerWindow::DoBlockAlignSingle(), UpdateViewerWindow::DoDeleteAllBlocks(), SequenceViewerWindow::DoDeleteRow(), UpdateViewerWindow::DoDeleteSingle(), UpdateViewerWindow::DoExtendSingle(), SequenceViewerWindow::DoMarkBlock(), UpdateViewerWindow::DoMergeNeighbor(), UpdateViewerWindow::DoMergeSingle(), SequenceViewerWindow::DoProximitySort(), SequenceViewerWindow::DoRealignRow(), SequenceViewerWindow::DoRestrictHighlights(), UpdateViewerWindow::DoSetRegion(), SequenceViewerWindow::DoSortLoops(), UpdateViewerWindow::DoThreadSingle(), ViewableAlignment::eAltOrMetaDown, ViewableAlignment::eControlDown, ERRORMSG, ViewableAlignment::eShiftDown, Threader::EstimateNRandomStarts(), UpdateViewerWindow::ExtendSingleOff(), AlignmentManager::ExtendUpdate(), GetAlignmentForRow(), AlignmentManager::GetCurrentMultipleAlignment(), BlockMultipleAlignment::GetSequenceOfRow(), RegionDialog::GetValues(), ThreaderOptionsDialog::GetValues(), GlobalMessenger(), globalThreaderOptions, Messenger::KeepHighlightsOnlyOnSequence(), Sequence::LaunchWebBrowserWithInfo(), BlockMultipleAlignment::MarkBlock(), SequenceViewerWindow::MarkBlockOff(), UpdateViewerWindow::MergeNeighborOff(), UpdateViewerWindow::MergeSingleOff(), AlignmentManager::MergeUpdates(), Sequence::molecule, ThreaderOptions::nRandomStarts, BlockMultipleAlignment::NRows(), NRows(), Messenger::PostRedrawMolecule(), Messenger::PostRedrawSequenceViewer(), ProximitySort(), SequenceViewerWindow::ProximitySortOff(), r(), AlignmentManager::RealignDependentSequences(), SequenceViewerWindow::RealignRowOff(), Messenger::RemoveAllHighlights(), SequenceViewerWindow::RestrictHighlightsOff(), DisplayRowFromAlignment::row, row, rows, SequenceViewerWindow::sequenceViewer, UpdateViewerWindow::SetRegionOff(), shiftDown, SequenceViewerWindow::SortLoopsOff(), SortRowsByLoopLength(), BlockMultipleAlignment::SplitBlock(), UpdateViewerWindow::ThreadSingleOff(), AlignmentManager::ThreadUpdate(), TRACEMSG, UpdateAfterEdit(), UpdateViewerWindow::updateViewer, and WARNINGMSG.

◆ MouseOver()

void SequenceDisplay::MouseOver ( int  column,
int  row 
) const
virtual

◆ NRows()

unsigned int SequenceDisplay::NRows ( void  ) const
inline

◆ ProximitySort()

bool SequenceDisplay::ProximitySort ( unsigned int  displayRow)

◆ RedrawAlignedMolecules()

void SequenceDisplay::RedrawAlignedMolecules ( void  ) const

◆ RemoveBlockBoundaryRows()

void SequenceDisplay::RemoveBlockBoundaryRows ( void  )

◆ RowsAdded()

void SequenceDisplay::RowsAdded ( unsigned int  nRowsAddedToMultiple,
BlockMultipleAlignment multiple,
int  where = -1 
)

◆ RowsRemoved()

void SequenceDisplay::RowsRemoved ( const std::vector< unsigned int > &  rowsRemoved,
const BlockMultipleAlignment multiple 
)

◆ SelectedRectangle()

void SequenceDisplay::SelectedRectangle ( int  columnLeft,
int  rowTop,
int  columnRight,
int  rowBottom 
)
virtual

◆ SetStartingColumn()

void SequenceDisplay::SetStartingColumn ( unsigned int  column)
inline

◆ SortRows()

void SequenceDisplay::SortRows ( void  )
private

◆ SortRowsByIdentifier()

void SequenceDisplay::SortRowsByIdentifier ( void  )

◆ SortRowsByLoopLength()

bool SequenceDisplay::SortRowsByLoopLength ( unsigned int  row,
unsigned int  alnIndex 
)

◆ SortRowsBySelfHit()

void SequenceDisplay::SortRowsBySelfHit ( void  )

◆ SortRowsByThreadingScore()

void SequenceDisplay::SortRowsByThreadingScore ( double  weightPSSM)

◆ UpdateAfterEdit()

void SequenceDisplay::UpdateAfterEdit ( const BlockMultipleAlignment forAlignment)
private

◆ UpdateBlockBoundaryRow() [1/2]

void SequenceDisplay::UpdateBlockBoundaryRow ( const BlockMultipleAlignment forAlignment) const

◆ UpdateBlockBoundaryRow() [2/2]

void SequenceDisplay::UpdateBlockBoundaryRow ( DisplayRowFromString blockBoundaryRow) const
private

◆ UpdateMaxRowWidth()

void SequenceDisplay::UpdateMaxRowWidth ( void  )
private

Definition at line 245 of file sequence_display.cpp.

References maxRowWidth, r(), and rows.

Referenced by RemoveBlockBoundaryRows(), and UpdateAfterEdit().

Friends And Related Function Documentation

◆ SequenceViewer

friend class SequenceViewer
friend

Definition at line 187 of file sequence_display.hpp.

◆ UpdateViewer

friend class UpdateViewer
friend

Definition at line 188 of file sequence_display.hpp.

Member Data Documentation

◆ controlDown

bool SequenceDisplay::controlDown
private

Definition at line 258 of file sequence_display.hpp.

Referenced by DraggedCell(), MouseDown(), and SelectedRectangle().

◆ isEditable

const bool SequenceDisplay::isEditable
private

Definition at line 241 of file sequence_display.hpp.

Referenced by CalculateRowScoresWithThreader(), Clone(), and IsEditable().

◆ maxRowWidth

unsigned int SequenceDisplay::maxRowWidth
private

Definition at line 254 of file sequence_display.hpp.

Referenced by AddRow(), Clone(), DraggedCell(), Empty(), GetSize(), and UpdateMaxRowWidth().

◆ rows

RowVector SequenceDisplay::rows
private

◆ shiftDown

bool SequenceDisplay::shiftDown
private

Definition at line 258 of file sequence_display.hpp.

Referenced by DraggedCell(), MouseDown(), and SelectedRectangle().

◆ startingColumn

unsigned int SequenceDisplay::startingColumn
private

Definition at line 250 of file sequence_display.hpp.

Referenced by Clone(), Empty(), GetStartingColumn(), and SetStartingColumn().

◆ viewerWindow

ViewerWindowBase* const* SequenceDisplay::viewerWindow
private

The documentation for this class was generated from the following files:
Modified on Wed Jun 19 17:01:34 2024 by modify_doxy.py rev. 669887