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

📄 phylo_tree_widget.hpp

📁 ncbi源码
💻 HPP
字号:
/* * =========================================================================== * PRODUCTION $Log: phylo_tree_widget.hpp,v $ * PRODUCTION Revision 1000.2  2004/06/02 20:23:52  gouriano * PRODUCTION PRODUCTION: UPGRADED [GCC34_MSVC7] Dev-tree R1.11 * PRODUCTION * =========================================================================== */#ifndef GUI_WIDGETS_PHYLO_TREE___PHYLO_TREE_WIDGET__HPP#define GUI_WIDGETS_PHYLO_TREE___PHYLO_TREE_WIDGET__HPP/*  $Id: phylo_tree_widget.hpp,v 1000.2 2004/06/02 20:23:52 gouriano Exp $ * =========================================================================== * *                            PUBLIC DOMAIN NOTICE *               National Center for Biotechnology Information * *  This software/database is a "United States Government Work" under the *  terms of the United States Copyright Act.  It was written as part of *  the author's official duties as a United States Government employee and *  thus cannot be copyrighted.  This software/database is freely available *  to the public for use. The National Library of Medicine and the U.S. *  Government have not placed any restriction on its use or reproduction. * *  Although all reasonable efforts have been taken to ensure the accuracy *  and reliability of the software and data, the NLM and the U.S. *  Government do not and cannot warrant the performance or results that *  may be obtained by using this software or data. The NLM and the U.S. *  Government disclaim all warranties, express or implied, including *  warranties of performance, merchantability or fitness for any particular *  purpose. * *  Please cite the author in any work or product based on this material. * * =========================================================================== * * Authors:  Vladimir Tereshkov * * File Description: *   */#include <corelib/ncbiobj.hpp>#include <gui/opengl/glcanvas2d.hpp>#include <gui/opengl/gldlist.hpp>#include <gui/opengl/glviewport.hpp>#include <gui/utils/command.hpp>#include <objects/seqloc/Seq_loc.hpp>#include <gui/widgets/gl/glpane_widget.hpp>#include <gui/widgets/fl/menu.hpp>#include <gui/widgets/phylo_tree/phylo_tree_ds.hpp>#include <gui/widgets/phylo_tree/phylo_tree_pane.hpp>#include <FL/Fl_Group.H>#include <FL/Fl_Scrollbar.H>BEGIN_NCBI_SCOPE/// Definitions for Hit Matrix Widget commands///enum    EHitMatrixCommands {    eCmdSetEqualScale = eBaseCmdLast + 200,    eCmdChooseSeq,    eCmdColorByScore,    eCmdSetGraphType1,    eCmdSetGraphType2,    eCmdSetGraphType3,    eCmdSetGraphType4,    eCmdUseDistances};/////////////////////////////////////////////////////////////////////////////////// class CPhyloTreeWidgetclass NCBI_GUIWIDGETS_PHYLO_TREE_EXPORT CPhyloTreeWidget : public CGlPaneWidget{public:    CPhyloTreeWidget(int x, int y, int w, int h, const char* label = NULL);    virtual ~CPhyloTreeWidget();    virtual void SetDataSource(CPhyloTreeDataSource* p_ds);    virtual CPhyloTreeDataSource*  GetDS(void);    virtual const CGlPane&  GetPort(void) const;    virtual void    OnSetScaleXY(TModelUnit scale_x, const TModelPoint& point);        /// Command handlers    void    OnSetEqualScale();    void    OnSetGraphType1();    void    OnSetGraphType2();    void    OnSetGraphType3();    void    OnSetGraphType4();    void    OnUseDistances();    // update handlers    void    OnUpdateUseDistances(ICmdUI* pCmdUI);    void    OnUpdateSetGraphType1(ICmdUI* pCmdUI);    void    OnUpdateSetGraphType2(ICmdUI* pCmdUI);    void    OnUpdateSetGraphType3(ICmdUI* pCmdUI);    void    OnUpdateSetGraphType4(ICmdUI* pCmdUI);    void            SetCurrRenderer(Int4 idx);    vector<string>  GetRenderersNames(void);    virtual void    OnShowPopup();      void            SendSelChangedEvent();    void            SetPortLimits(const TModelRect & rect);    virtual void    OnSelChangedEvent(CViewEvent::TEventObject obj);            EVENT_MAP_DECLARE();    DECLARE_CMD_MAP();protected:        // CGlPaneWidget overridables    virtual void x_CreatePane(void);       virtual CGlPaneWidgetChild*    x_GetPane(void);    virtual void    x_SetPortLimits(void);        virtual void    x_UpdateScrollbars(void);    virtual void    x_OnScrollX(void);    virtual void    x_OnScrollY(void);    virtual void    x_Update();    virtual void    x_UpdatePane();    protected:    CRef<CPhyloTreeDataSource> m_pDataSource;    CPhyloTreePane*            m_pMatrixPane;        int     m_ScoreIndex; /// index of the score used for hit coloring    };END_NCBI_SCOPE/* * =========================================================================== * $Log: phylo_tree_widget.hpp,v $ * Revision 1000.2  2004/06/02 20:23:52  gouriano * PRODUCTION: UPGRADED [GCC34_MSVC7] Dev-tree R1.11 * * Revision 1.11  2004/06/02 16:38:59  tereshko * Fixed selections and popup behavior under windows * * Revision 1.10  2004/05/20 15:29:46  tereshko * Implemented support for new updates-driven menu * * Revision 1.9  2004/05/06 19:41:07  tereshko * Added force layout * * Revision 1.8  2004/04/28 19:27:27  tereshko * Added support for distances rendering * * Revision 1.7  2004/04/13 20:29:22  tereshko * Numerous renderers improvements * * Revision 1.6  2004/04/07 12:42:34  dicuccio * Formatting changes.  Store CRef<> to data source * * Revision 1.5  2004/03/30 17:11:08  tereshko * Added support for events broadcasting * * Revision 1.4  2004/03/02 18:29:24  tereshko * Added radial tree layout * * Revision 1.3  2004/02/18 15:11:00  tereshko * Added renderer switching handle * * Revision 1.2  2004/02/13 21:18:35  tereshko * Updated to implement new interface functions * * Revision 1.1  2004/02/13 17:00:09  tereshko * Phylogenetic Tree Widget initial revision * * =========================================================================== */#endif  // GUI_WIDGETS_PHYLO_TREE___PHYLO_TREE_WIDGET__HPP

⌨️ 快捷键说明

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