⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sequence_display.hpp

📁 ncbi源码
💻 HPP
📖 第 1 页 / 共 2 页
字号:
    // adds a string row to the alignment, that contains block boundary indicators    DisplayRowFromString * FindBlockBoundaryRow(const BlockMultipleAlignment *forAlignment) const;    void UpdateBlockBoundaryRow(const BlockMultipleAlignment *forAlignment) const;    void AddBlockBoundaryRow(BlockMultipleAlignment *forAlignment);  // adds to end of display!    void AddBlockBoundaryRows(void);    void RemoveBlockBoundaryRows(void);    // returns a list of all sequences in the display (in order) for the given alignment    typedef std::vector < const Sequence * > SequenceList;    void GetSequences(const BlockMultipleAlignment *forAlignment, SequenceList *seqs) const;    // returns a list of all protein sequences in the display (in order)    void GetProteinSequences(SequenceList *seqs) const;    // fills the vector with the current row ordering for the given alignment    void GetRowOrder(const BlockMultipleAlignment *forAlignment, std::vector < int > *slaveRowOrder) const;    // to inform the display that new rows have been added to or removed from the multiple    void RowsAdded(int nRowsAddedToMultiple, BlockMultipleAlignment *multiple, int where = -1);    void RowsRemoved(const std::vector < int >& rowsRemoved, const BlockMultipleAlignment *multiple);    // row scoring and sorting functions - only for single-alignment displays!    // sorting necessarily always leaves master at the top    bool CalculateRowScoresWithThreader(double weightPSSM);    void SortRowsByIdentifier(void);    void SortRowsByThreadingScore(double weightPSSM);    void SortRowsBySelfHit(void);    void FloatPDBRowsToTop(void);    void FloatHighlightsToTop(void);    void FloatGVToTop(void);    // a sort of clustering of similar sequences around a particular row    bool ProximitySort(int displayRow);    // create a new copy of this object    SequenceDisplay * Clone(const Old2NewAlignmentMap& newAlignments) const;    // clear out all rows from this display    void Empty(void);private:    const bool isEditable;    // generic row manipulation functions    void AddRow(DisplayRow *row);    BlockMultipleAlignment * GetAlignmentForRow(int row) const;    void UpdateBlockBoundaryRow(DisplayRowFromString *blockBoundaryRow) const;    ViewerWindowBase* const *viewerWindow;    int startingColumn;    typedef std::vector < DisplayRow * > RowVector;    RowVector rows;    int maxRowWidth;    void UpdateMaxRowWidth(void);    void UpdateAfterEdit(const BlockMultipleAlignment *forAlignment);    bool shiftDown, controlDown;    void SortRows(void);public:    int NRows(void) const { return rows.size(); }    bool IsEditable(void) const { return isEditable; }    const Sequence * GetSequenceForRow(int row) const    {        if (row >= 0 && row < NRows())            return rows[row]->GetSequence();        else            return NULL;    }    // redraw all molecules associated with the SequenceDisplay    void RedrawAlignedMolecules(void) const;    // find coordinates of this residue in the display; returns false if not found    bool GetDisplayCoordinates(const Molecule *molecule, int seqIndex,        BlockMultipleAlignment::eUnalignedJustification justification, int *column, int *row);    // column to scroll to when this display is first shown    void SetStartingColumn(int column) { startingColumn = column; }    int GetStartingColumn(void) const { return startingColumn; }    // methods required by ViewableAlignment base class    void GetSize(int *setColumns, int *setRows) const        { *setColumns = maxRowWidth; *setRows = rows.size(); }    bool GetRowTitle(int row, wxString *title, wxColour *color) const;    bool GetCharacterTraitsAt(int column, int row,              // location        char *character,										// character to draw        wxColour *color,                                        // color of this character        bool *drawBackground,                                   // special background color?        wxColour *cellBackgroundColor    ) const;    // callbacks for ViewableAlignment    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);};END_SCOPE(Cn3D)#endif // CN3D_SEQUENCE_DISPLAY__HPP/** ---------------------------------------------------------------------------* $Log: sequence_display.hpp,v $* Revision 1000.1  2004/04/12 17:33:23  gouriano* PRODUCTION: UPGRADED [CATCHUP_003] Dev-tree R1.28** Revision 1.28  2004/02/19 17:05:06  thiessen* remove cn3d/ from include paths; add pragma to disable annoying msvc warning** Revision 1.27  2003/10/20 13:17:15  thiessen* add float geometry violations sorting** Revision 1.26  2003/02/03 19:20:05  thiessen* format changes: move CVS Log to bottom of file, remove std:: from .cpp files, and use new diagnostic macros** Revision 1.25  2003/01/29 01:41:06  thiessen* add merge neighbor instead of merge near highlight** Revision 1.24  2002/09/05 18:38:57  thiessen* add sort by highlights** Revision 1.23  2002/06/13 14:54:07  thiessen* add sort by self-hit** Revision 1.22  2002/04/26 19:01:00  thiessen* fix display delete bug** Revision 1.21  2002/02/28 19:11:52  thiessen* wrap sequences in single-structure mode** Revision 1.20  2002/02/05 18:53:25  thiessen* scroll to residue in sequence windows when selected in structure window** Revision 1.19  2001/11/27 16:26:09  thiessen* major update to data management system** Revision 1.18  2001/07/23 20:08:38  thiessen* add regex pattern search** Revision 1.17  2001/07/10 16:39:34  thiessen* change selection control keys; add CDD name/notes dialogs** Revision 1.16  2001/06/21 02:01:07  thiessen* major update to molecule identification and highlighting ; add toggle highlight (via alt)** Revision 1.15  2001/06/15 14:52:30  thiessen* fix minor syntax errors** Revision 1.14  2001/06/04 14:33:54  thiessen* add proximity sort; highlight sequence on browser launch** Revision 1.13  2001/06/01 18:07:38  thiessen* fix display clone bug** Revision 1.12  2001/06/01 14:04:54  thiessen* add float PDB sort** Revision 1.11  2001/05/11 02:10:04  thiessen* add better merge fail indicators; tweaks to windowing/taskbar** Revision 1.10  2001/05/03 14:38:32  thiessen* put ViewableAlignment in its own (non-wx) header** Revision 1.9  2001/04/04 00:27:21  thiessen* major update - add merging, threader GUI controls** Revision 1.8  2001/03/30 14:43:11  thiessen* show threader scores in status line; misc UI tweaks** Revision 1.7  2001/03/30 03:07:08  thiessen* add threader score calculation & sorting** Revision 1.6  2001/03/22 00:32:36  thiessen* initial threading working (PSSM only); free color storage in undo stack** Revision 1.5  2001/03/19 15:47:37  thiessen* add row sorting by identifier** Revision 1.4  2001/03/13 01:24:15  thiessen* working undo system for >1 alignment (e.g., update window)** Revision 1.3  2001/03/09 15:48:43  thiessen* major changes to add initial update viewer** Revision 1.2  2001/03/06 20:20:43  thiessen* progress towards >1 alignment in a SequenceDisplay ; misc minor fixes** Revision 1.1  2001/03/01 20:15:29  thiessen* major rearrangement of sequence viewer code into base and derived classes**/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -