ARB
Classes | Macros | Typedefs | Enumerations | Functions
TreeDisplay.hxx File Reference
#include <AP_Tree.hxx>
#include <Group.hxx>
#include <awt_canvas.hxx>
#include <vector>
#include <map>
Include dependency graph for TreeDisplay.hxx:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  AWT_scaled_font_limits
 
struct  DendroSubtreeLimits
 
struct  AWT_command_data
 
class  NodeMarkers
 
class  MarkerDisplay
 
struct  GroupInfo
 
class  PaintedNode
 
struct  BootstrapConfig
 
class  AWT_graphic_tree
 
class  ClickedTarget
 
class  TREE_canvas
 

Macros

#define TREEDISP_STACKSIZE   (1024L*1024L*20)
 
#define MAX_TREEDISP_RECURSION_DEPTH   20000
 
#define TREEDISP_TRUNCATION_MESSAGE   "Warning: depth limit reached => subtree not shown (use logical zoom to workaround)"
 
#define td_assert(cond)   arb_assert(cond)
 
#define AWAR_DTREE_BASELINEWIDTH   "awt/dtree/baselinewidth"
 
#define AWAR_DTREE_VERICAL_DIST   "awt/dtree/verticaldist"
 
#define AWAR_DTREE_BRANCH_STYLE   "awt/dtree/branch_style"
 
#define AWAR_DTREE_ATTACH_SIZE   "awt/dtree/attach_size"
 
#define AWAR_DTREE_ATTACH_LEN   "awt/dtree/attach_len"
 
#define AWAR_DTREE_ATTACH_GROUP   "awt/dtree/attach_group"
 
#define AWAR_DTREE_GROUP_DOWNSCALE   "awt/dtree/downscaling"
 
#define AWAR_DTREE_GROUP_SCALE   "awt/dtree/groupscaling"
 
#define AWAR_DTREE_AUTO_JUMP   "awt/dtree/autojump"
 
#define AWAR_DTREE_AUTO_JUMP_TREE   "awt/dtree/autojump_tree"
 
#define AWAR_DTREE_AUTO_UNFOLD   "awt/dtree/auto_unfold"
 
#define AWAR_DTREE_SHOW_BRACKETS   "awt/dtree/show_brackets"
 
#define AWAR_DTREE_GROUP_STYLE   "awt/dtree/groupstyle"
 
#define AWAR_DTREE_GROUP_ORIENT   "awt/dtree/grouporient"
 
#define AWAR_DTREE_GREY_LEVEL   "awt/dtree/greylevel"
 
#define AWAR_DTREE_GROUPCOUNTMODE   "awt/dtree/groupcountmode"
 
#define AWAR_DTREE_GROUPINFOPOS   "awt/dtree/groupinfopos"
 
#define AWAR_DTREE_BOOTSTRAP_MIN   "awt/dtree/bootstrap/min"
 
#define AWAR_DTREE_BOOTSTRAP_MAX   "awt/dtree/bootstrap/max"
 
#define AWAR_DTREE_BOOTSTRAP_SHOW   "awt/dtree/bootstrap/show"
 
#define AWAR_DTREE_BOOTSTRAP_STYLE   "awt/dtree/bootstrap/style"
 
#define AWAR_DTREE_CIRCLE_SHOW   "awt/dtree/bootstrap/circle/show"
 
#define AWAR_DTREE_CIRCLE_FILL   "awt/dtree/bootstrap/circle/fill"
 
#define AWAR_DTREE_CIRCLE_ELLIPSE   "awt/dtree/bootstrap/circle/ellipse"
 
#define AWAR_DTREE_CIRCLE_ZOOM   "awt/dtree/bootstrap/circle/zoom"
 
#define AWAR_DTREE_CIRCLE_LIMIT   "awt/dtree/bootstrap/circle/limit"
 
#define AWAR_DTREE_RADIAL_ZOOM_TEXT   "awt/dtree/radial/zoomtext"
 
#define AWAR_DTREE_RADIAL_XPAD   "awt/dtree/radial/xpadding"
 
#define AWAR_DTREE_DENDRO_ZOOM_TEXT   "awt/dtree/dendro/zoomtext"
 
#define AWAR_DTREE_DENDRO_XPAD   "awt/dtree/dendro/xpadding"
 
#define AWAR_DTREE_GROUP_MARKED_THRESHOLD   "awt/dtree/markers/group_marked_threshold"
 
#define AWAR_DTREE_GROUP_PARTIALLY_MARKED_THRESHOLD   "awt/dtree/markers/group_partially_marked_threshold"
 
#define AWAR_DTREE_MARKER_WIDTH   "awt/dtree/markers/marker_width"
 
#define AWAR_DTREE_PARTIAL_GREYLEVEL   "awt/dtree/markers/partial_greylevel"
 
#define NT_BOX_WIDTH   7
 
#define NT_DIAMOND_RADIUS   5
 
#define NT_ROOT_WIDTH   9
 
#define NT_SELECTED_WIDTH   11
 
#define AWT_TREE(ntw)   (ntw)->get_graphic_tree()
 

Typedefs

typedef void(* AD_map_viewer_cb )(GBDATA *gbd, AD_MAP_VIEWER_TYPE type)
 

Enumerations

enum  AP_tree_display_style {
  AP_TREE_NORMAL, AP_TREE_RADIAL, AP_TREE_IRS, AP_LIST_NDS,
  AP_LIST_SIMPLE
}
 
enum  AP_tree_jump_type {
  AP_JUMP_KEEP_VISIBLE = 1, AP_JUMP_LOGICAL_UNZOOM = 2, AP_JUMP_FORCE_VCENTER = 4, AP_JUMP_ALLOW_HCENTER = 8,
  AP_JUMP_FORCE_HCENTER = 16, AP_JUMP_BE_VERBOOSE = 32, AP_JUMP_AUTO_UNFOLD = 64, AP_DONT_JUMP = 0,
  AP_JUMP_SMART_CENTER = AP_JUMP_FORCE_VCENTER|AP_JUMP_ALLOW_HCENTER, AP_JUMP_FORCE_CENTER = AP_JUMP_FORCE_VCENTER|AP_JUMP_FORCE_HCENTER, AP_JUMP_BY_BUTTON = AP_JUMP_SMART_CENTER|AP_JUMP_LOGICAL_UNZOOM|AP_JUMP_AUTO_UNFOLD|AP_JUMP_BE_VERBOOSE
}
 
enum  AP_tree_jump_reason { AP_JUMP_REASON_TREE, AP_JUMP_REASON_STYLE, AP_JUMP_REASON_SPECIES, AP_JUMP_REASON_GROUP }
 
enum  ClickedType {
  CL_NODE = 1, CL_SPECIES, CL_RULER, CL_FLAG,
  CL_BRANCH, CL_ROOTNODE
}
 
enum  AD_MAP_VIEWER_TYPE { ADMVT_NONE = 0, ADMVT_INFO, ADMVT_WWW, ADMVT_SELECT }
 
enum  CollapseMode {
  COLLAPSE_ALL = 0, EXPAND_MARKED = 1, COLLAPSE_TERMINAL = 2, EXPAND_ALL = 4,
  EXPAND_COLOR = 8, EXPAND_ZOMBIES = 16, EXPAND_UNMARKED = 32
}
 
enum  GroupInfoMode { GI_COMBINED, GI_SEPARATED, GI_SEPARATED_PARENTIZED }
 
enum  GroupInfoPosition { GIP_SEPARATED, GIP_ATTACHED, GIP_OVERLAYED }
 
enum  GroupCountMode {
  GCM_NONE, GCM_MEMBERS, GCM_MARKED, GCM_BOTH,
  GCM_PERCENT, GCM_BOTH_PC
}
 
enum  BranchStyle { BS_RECTANGULAR, BS_DIAGONAL }
 
enum  GroupStyle { GS_TRAPEZE, GS_TRIANGLE }
 
enum  GroupOrientation { GO_TOP, GO_BOTTOM, GO_INTERIOR, GO_EXTERIOR }
 
enum  BootstrapStyle { BS_PERCENT, BS_PERCENT_NOSIGN, BS_FLOAT }
 

Functions

bool is_list_style (AP_tree_display_style style)
 
bool is_tree_style (AP_tree_display_style style)
 
 DECLARE_CBTYPE_FVV_AND_BUILDERS (GraphicTreeCallback, void, AWT_graphic_tree *)
 
 MARK_NONFINAL_CLASS (AWT_graphic_tree)
 
 MARK_NONFINAL_FUNCTION (AWT_graphic_tree, AP_tree_root *, create_tree_root,(AliView *, AP_sequence *, bool), NULp)
 
void TREE_create_awars (AW_root *aw_root, AW_default db)
 
void TREE_install_update_callbacks (TREE_canvas *ntw)
 
AW_windowTREE_create_settings_window (AW_root *aw_root)
 
AW_windowTREE_create_marker_settings_window (AW_root *root)
 
AWT_graphic_treeNT_generate_tree (AW_root *root, GBDATA *gb_main, AD_map_viewer_cb map_viewer_cb)
 

Macro Definition Documentation

#define TREEDISP_STACKSIZE   (1024L*1024L*20)

Definition at line 32 of file TreeDisplay.hxx.

Referenced by ARB_main(), and pars_start_cb().

#define MAX_TREEDISP_RECURSION_DEPTH   20000

Definition at line 35 of file TreeDisplay.hxx.

#define TREEDISP_TRUNCATION_MESSAGE   "Warning: depth limit reached => subtree not shown (use logical zoom to workaround)"

Definition at line 36 of file TreeDisplay.hxx.

#define td_assert (   cond)    arb_assert(cond)
#define AWAR_DTREE_BASELINEWIDTH   "awt/dtree/baselinewidth"
#define AWAR_DTREE_VERICAL_DIST   "awt/dtree/verticaldist"
#define AWAR_DTREE_BRANCH_STYLE   "awt/dtree/branch_style"
#define AWAR_DTREE_ATTACH_SIZE   "awt/dtree/attach_size"
#define AWAR_DTREE_ATTACH_LEN   "awt/dtree/attach_len"
#define AWAR_DTREE_ATTACH_GROUP   "awt/dtree/attach_group"
#define AWAR_DTREE_GROUP_DOWNSCALE   "awt/dtree/downscaling"
#define AWAR_DTREE_GROUP_SCALE   "awt/dtree/groupscaling"
#define AWAR_DTREE_AUTO_JUMP   "awt/dtree/autojump"
#define AWAR_DTREE_AUTO_JUMP_TREE   "awt/dtree/autojump_tree"
#define AWAR_DTREE_AUTO_UNFOLD   "awt/dtree/auto_unfold"
#define AWAR_DTREE_SHOW_BRACKETS   "awt/dtree/show_brackets"
#define AWAR_DTREE_GROUP_STYLE   "awt/dtree/groupstyle"
#define AWAR_DTREE_GROUP_ORIENT   "awt/dtree/grouporient"
#define AWAR_DTREE_GREY_LEVEL   "awt/dtree/greylevel"
#define AWAR_DTREE_GROUPCOUNTMODE   "awt/dtree/groupcountmode"
#define AWAR_DTREE_GROUPINFOPOS   "awt/dtree/groupinfopos"
#define AWAR_DTREE_BOOTSTRAP_MIN   "awt/dtree/bootstrap/min"
#define AWAR_DTREE_BOOTSTRAP_MAX   "awt/dtree/bootstrap/max"
#define AWAR_DTREE_BOOTSTRAP_SHOW   "awt/dtree/bootstrap/show"
#define AWAR_DTREE_BOOTSTRAP_STYLE   "awt/dtree/bootstrap/style"
#define AWAR_DTREE_CIRCLE_SHOW   "awt/dtree/bootstrap/circle/show"
#define AWAR_DTREE_CIRCLE_FILL   "awt/dtree/bootstrap/circle/fill"
#define AWAR_DTREE_CIRCLE_ELLIPSE   "awt/dtree/bootstrap/circle/ellipse"
#define AWAR_DTREE_CIRCLE_ZOOM   "awt/dtree/bootstrap/circle/zoom"
#define AWAR_DTREE_CIRCLE_LIMIT   "awt/dtree/bootstrap/circle/limit"
#define AWAR_DTREE_RADIAL_ZOOM_TEXT   "awt/dtree/radial/zoomtext"
#define AWAR_DTREE_RADIAL_XPAD   "awt/dtree/radial/xpadding"
#define AWAR_DTREE_DENDRO_ZOOM_TEXT   "awt/dtree/dendro/zoomtext"
#define AWAR_DTREE_DENDRO_XPAD   "awt/dtree/dendro/xpadding"
#define AWAR_DTREE_GROUP_MARKED_THRESHOLD   "awt/dtree/markers/group_marked_threshold"
#define AWAR_DTREE_GROUP_PARTIALLY_MARKED_THRESHOLD   "awt/dtree/markers/group_partially_marked_threshold"
#define AWAR_DTREE_MARKER_WIDTH   "awt/dtree/markers/marker_width"
#define AWAR_DTREE_PARTIAL_GREYLEVEL   "awt/dtree/markers/partial_greylevel"
#define NT_BOX_WIDTH   7

Definition at line 80 of file TreeDisplay.hxx.

#define NT_DIAMOND_RADIUS   5

Definition at line 81 of file TreeDisplay.hxx.

#define NT_ROOT_WIDTH   9

Definition at line 82 of file TreeDisplay.hxx.

Referenced by AWT_graphic_tree::show().

#define NT_SELECTED_WIDTH   11

Definition at line 83 of file TreeDisplay.hxx.

Referenced by AWT_graphic_tree::show().

#define AWT_TREE (   ntw)    (ntw)->get_graphic_tree()

Typedef Documentation

typedef void(* AD_map_viewer_cb)(GBDATA *gbd, AD_MAP_VIEWER_TYPE type)

Definition at line 155 of file TreeDisplay.hxx.

Enumeration Type Documentation

Enumerator
AP_TREE_NORMAL 
AP_TREE_RADIAL 
AP_TREE_IRS 
AP_LIST_NDS 
AP_LIST_SIMPLE 

Definition at line 87 of file TreeDisplay.hxx.

Enumerator
AP_JUMP_KEEP_VISIBLE 
AP_JUMP_LOGICAL_UNZOOM 
AP_JUMP_FORCE_VCENTER 
AP_JUMP_ALLOW_HCENTER 
AP_JUMP_FORCE_HCENTER 
AP_JUMP_BE_VERBOOSE 
AP_JUMP_AUTO_UNFOLD 
AP_DONT_JUMP 
AP_JUMP_SMART_CENTER 
AP_JUMP_FORCE_CENTER 
AP_JUMP_BY_BUTTON 

Definition at line 95 of file TreeDisplay.hxx.

Enumerator
AP_JUMP_REASON_TREE 
AP_JUMP_REASON_STYLE 
AP_JUMP_REASON_SPECIES 
AP_JUMP_REASON_GROUP 

Definition at line 112 of file TreeDisplay.hxx.

Enumerator
CL_NODE 
CL_SPECIES 
CL_RULER 
CL_FLAG 
CL_BRANCH 
CL_ROOTNODE 

Definition at line 119 of file TreeDisplay.hxx.

Enumerator
ADMVT_NONE 
ADMVT_INFO 
ADMVT_WWW 
ADMVT_SELECT 

Definition at line 148 of file TreeDisplay.hxx.

Enumerator
COLLAPSE_ALL 
EXPAND_MARKED 
COLLAPSE_TERMINAL 
EXPAND_ALL 
EXPAND_COLOR 
EXPAND_ZOMBIES 
EXPAND_UNMARKED 

Definition at line 177 of file TreeDisplay.hxx.

Enumerator
GI_COMBINED 
GI_SEPARATED 
GI_SEPARATED_PARENTIZED 

Definition at line 263 of file TreeDisplay.hxx.

Enumerator
GIP_SEPARATED 
GIP_ATTACHED 
GIP_OVERLAYED 

Definition at line 269 of file TreeDisplay.hxx.

Enumerator
GCM_NONE 
GCM_MEMBERS 
GCM_MARKED 
GCM_BOTH 
GCM_PERCENT 
GCM_BOTH_PC 

Definition at line 275 of file TreeDisplay.hxx.

Enumerator
BS_RECTANGULAR 
BS_DIAGONAL 

Definition at line 284 of file TreeDisplay.hxx.

enum GroupStyle
Enumerator
GS_TRAPEZE 
GS_TRIANGLE 

Definition at line 289 of file TreeDisplay.hxx.

Enumerator
GO_TOP 
GO_BOTTOM 
GO_INTERIOR 
GO_EXTERIOR 

Definition at line 294 of file TreeDisplay.hxx.

Enumerator
BS_PERCENT 
BS_PERCENT_NOSIGN 
BS_FLOAT 

Definition at line 320 of file TreeDisplay.hxx.

Function Documentation

bool is_list_style ( AP_tree_display_style  style)
inline

Definition at line 128 of file TreeDisplay.hxx.

References AP_LIST_NDS, and AP_LIST_SIMPLE.

Referenced by is_tree_style(), and AWT_graphic_tree::set_tree_style().

bool is_tree_style ( AP_tree_display_style  style)
inline

Definition at line 129 of file TreeDisplay.hxx.

References is_list_style().

Referenced by NT_jump_cb(), and AWT_graphic_tree::show().

DECLARE_CBTYPE_FVV_AND_BUILDERS ( GraphicTreeCallback  ,
void  ,
AWT_graphic_tree  
)
MARK_NONFINAL_CLASS ( AWT_graphic_tree  )
MARK_NONFINAL_FUNCTION ( AWT_graphic_tree  ,
AP_tree_root ,
create_tree_root  ,
(AliView *, AP_sequence *, bool)  ,
NULp   
)
void TREE_create_awars ( AW_root aw_root,
AW_default  db 
)
void TREE_install_update_callbacks ( TREE_canvas ntw)
AW_window* TREE_create_settings_window ( AW_root aw_root)
AW_window* TREE_create_marker_settings_window ( AW_root root)
AWT_graphic_tree* NT_generate_tree ( AW_root root,
GBDATA gb_main,
AD_map_viewer_cb  map_viewer_cb 
)

Definition at line 3931 of file TreeDisplay.cxx.

References AWT_graphic_tree::init(), and NULp.

Referenced by popup_new_main_window().