69 #if defined(DEVEL_RALF)
70 # define TRACE_GROUP_SELECTION
73 #define AWAR_EXPORT_NDS "tmp/export_nds"
74 #define AWAR_EXPORT_NDS_SEPARATOR AWAR_EXPORT_NDS "/delimiter"
75 #define AWAR_MARKED_SPECIES_COUNTER "tmp/disp_marked_species"
76 #define AWAR_NTREE_TITLE_MODE "tmp/title_mode"
103 FILE *out = fopen(name,
"w");
106 aw_message(
"Error: Cannot open and write to file");
115 const int passesNeeded = spacePadded ? 2 : 1;
116 NDS_Labeler labeler(nds_type);
121 size_t col_max_len[max_col];
123 const char *col_format =
NULp;
126 for (
size_t i = 0; i<max_col; ++i) {
137 for (
int pass = 1; pass<=passesNeeded; ++pass) {
148 size_t col_count = parts.
size();
152 for (
size_t i = 0; i<col_count; ++i) {
153 col_max_len[i] =
std::max(col_max_len[i], strlen(parts[i]));
157 for (
size_t i = 0; i<col_count; ++i) {
158 if (i)
fputc(
' ', out);
164 fputs(parts[i], out);
167 fprintf(out, col_format,
int(col_max_len[i]), parts[i]);
174 fprintf(out,
"%s\n", label);
192 AW_window_simple *aws =
new AW_window_simple;
193 aws->init(root,
"EXPORT_NDS_OF_MARKED",
"EXPORT NDS OF MARKED SPECIES");
198 aws->create_button(
"CLOSE",
"CLOSE",
"C");
202 aws->create_button(
"HELP",
"HELP",
"H");
206 aws->create_button(
"SAVE",
"SAVE",
"S");
210 aws->create_button(
"PRINT",
"PRINT",
"P");
213 aws->label(
"Column output");
219 aws->update_option_menu();
236 #if defined(TRACE_GROUP_SELECTION)
237 fputs(
"clear AWAR_GROUP (because species selected)\n", stderr);
282 #if defined(DEBUG) && 0
323 awar_expert->
touch();
336 fprintf(stderr,
"nt_run: Failed to run '%s' (Reason: %s)\n", command, error);
344 if (arb_ntree_args && arb_ntree_args[0]) {
363 if (is_server_and_has_clients) {
364 nt_run(
"(arb_clean session; echo ARB done) &");
385 restart_ntree_args(null2empty(restart_ntree_args_))
459 #define AWAR_DB_TYPE AWAR_DBBASE "/type" // created by AWT_insert_DBsaveType_selector
460 #define AWAR_DB_COMPRESSION AWAR_DBBASE "/compression" // created by AWT_insert_DBcompression_selector
461 #define AWAR_DB_OPTI_TREENAME AWAR_DBBASE "/optimize_tree_name"
484 static AW_window_simple *aws =
NULp;
486 aws =
new AW_window_simple;
487 aws->init(aw_root,
"SAVE_CHANGES_TO",
"Quicksave changes as");
488 aws->load_xfig(
"save_as.fig");
492 aws->create_button(
"CLOSE",
"CLOSE",
"C");
496 aws->create_button(
"HELP",
"HELP",
"H");
505 aws->create_button(
"SAVE",
"SAVE",
"S");
530 for (
int i = 0; ali_names[i]; ++i) {
532 ali_progress.inc_and_check_user_abort(error);
547 static AW_window_simple *aws =
NULp;
554 aws =
new AW_window_simple;
555 aws->init(aw_root,
"OPTIMIZE_DATABASE",
"Optimize database compression");
556 aws->load_xfig(
"optimize.fig");
563 aws->create_button(
"CLOSE",
"CLOSE",
"C");
567 aws->create_button(
"HELP",
"HELP",
"H");
571 aws->create_button(
"GO",
"GO");
576 static AW_window_simple *aws =
NULp;
579 aws =
new AW_window_simple;
580 aws->init(aw_root,
"SAVE_DB",
"SAVE ARB DB");
581 aws->load_xfig(
"save_as.fig");
585 aws->create_button(
"CLOSE",
"CLOSE",
"C");
589 aws->create_button(
"HELP",
"HELP",
"H");
596 aws->at(
"compression");
601 aws->help_text(
"optimize.hlp");
602 aws->create_autosize_button(
"OPTIMIZE",
"Optimize database compression");
606 aws->create_button(
"SAVE",
"SAVE",
"S");
653 static void NT_fix_database(
AW_window *) {
669 freeset(ref_name, name);
670 ref_gb_node = gb_organism;
711 char *species_name = root->awar(
get_self_awar())->read_string();
714 if (species_name[0]) {
750 if (strcmp(oldval, buffer)) {
766 if (!tree_names.
empty()) {
767 long treeCount = tree_names.
size();
769 const char *whats_removed =
NULp;
776 const char *task =
GBS_global_string(
"Deleting %s from %li trees", whats_removed, treeCount);
783 for (
int t = 0; t<treeCount && !
error; t++) {
791 int groups_removed = 0;
793 tree =
GBT_remove_leafs(tree, mode, species_hash, &removed, &groups_removed);
807 if (groups_removed>0) {
840 if (root)
return root;
877 :
"arb_ntree %s : &",
888 static char *awar_name =
NULp;
891 ".",
".arb", &awar_name,
896 static char *awar_name =
NULp;
899 ".",
".arb", &awar_name,
942 canvas[count++] = ntw;
949 if (idx<0 || idx>=count)
return NULp;
962 #if defined(TRACE_GROUP_SELECTION)
969 for (int32_t i = 0; i<maxIdx; ++i) {
971 if (ntw->
gfx == agt)
return ntw;
983 for (int32_t i = 0; i<maxIdx; ++i) {
985 if (ntw && ntw != to_skip) {
988 const char *description = i
991 sellst->
insert(description, i);
1008 #if defined(TRACE_GROUP_SELECTION)
1009 fprintf(stderr,
"[%s] ", track_group_selection_by_canvas ?
"track" :
"dont track");
1012 fprintf(stderr,
"canvas %i selects group '%s'\n", ntw->
get_index(), group.
get_name());
1015 fprintf(stderr,
"canvas %i de-selects group\n", ntw->
get_index());
1019 if (track_group_selection_by_canvas) {
1031 if (gb_wanted_group) {
1035 #if defined(TRACE_GROUP_SELECTION)
1036 fputs(
"clear AWAR_SPECIES_NAME (because group selected)\n", stderr);
1039 #if defined(TRACE_GROUP_SELECTION)
1040 const char *group_name =
NULp;
1041 if (gb_wanted_group) {
1046 fprintf(stderr,
"group awar changed to %p", gb_wanted_group);
1047 if (group_name) fprintf(stderr,
" (='%s')", group_name);
1048 fputc(
'\n', stderr);
1052 LocallyModify<bool> ignore_group_selection_by_canvas(track_group_selection_by_canvas,
false);
1058 for (int32_t i = 0; i<maxIdx; ++i) {
1064 if (gb_curr_tree == gb_wanted_tree) {
1069 agt->select_group(gb_wanted_group);
1097 char window_title[256];
1098 const char *awar_tree =
NULp;
1102 sprintf(window_title,
"ARB_NT_%i", clone);
1106 sprintf(window_title,
"ARB_NT");
1109 awm->
init(awr, window_title, window_title, 0, 0);
1138 if (result_ntw) *result_ntw = ntw;
1144 if (existing_tree_name) {
1168 AWT_create_debug_menu(awm);
1175 if (allow_new_window) {
1194 if (allow_new_window) {
1668 awm->
at(db_pathx, first_liney);
1670 awm->
at_attach_to(
false,
false, db_pathx2-db_pathx-1, second_liney-first_liney+1);
1678 #define TREE_BUTTON_OVERSIZE 6
1683 awm->
at(db_treex, second_uppery);
1696 awm->
create_button(
"FOLDED_LIST_TREE_TYPE",
"#dendroIrs.xpm");
1704 awm->
at(db_treex, first_liney);
1706 awm->
at_attach_to(
false,
false, db_treex2-db_treex-1, second_uppery-first_liney+1);
1717 #define EDIT_XSIZE 50
1718 #define EDIT_YSIZE 30 // same as 'save as' buttons
1723 awm->
at(protectx+2, first_liney+1);
1727 awm->
at(protectx, second_liney+2);
1741 awm->
at(db_alignx, second_liney);
1746 if (is_genome_db) awm->
create_button(
"EDIT_SEQUENCES",
"#editor_small.xpm");
1758 awm->
at(db_alignx, first_liney);
1759 awm->
at_attach_to(
false,
false, db_alignx2-db_alignx-1, second_liney-first_liney+1);
1767 awm->
at(leftx, third_liney);
1779 awm->
at(db_searchx, first_liney);
1784 awm->
at(db_searchx, second_uppery);
1791 awm->
at(db_infox, first_liney);
1797 awm->
at(db_infox, second_uppery);
1817 #if defined(DEVEL_RALF)
1819 #endif // DEVEL_RALF
1824 AWT_check_action_ids(awr, is_genome_db ?
"_genome" :
"");
GB_ERROR GB_begin_transaction(GBDATA *gbd)
AW_window * AP_create_max_freq_window(AW_root *aw_root)
void NT_popup_configuration_admin(AW_window *aw_main, TREE_canvas *ntw)
void register_canvas(TREE_canvas *ntw)
static void group_selected_by_canvas_cb(AWT_graphic_tree *gfx)
void insert_option(AW_label choice_label, const char *mnemonic, const char *var_value, const char *name_of_color=NULp)
GB_ERROR GBK_system(const char *system_command)
AW_window * create_species_query_window(AW_root *aw_root, GBDATA *gb_main)
static AW_window * NT_create_database_optimization_window(AW_root *aw_root)
void get_at_position(int *x, int *y) const
GBDATA * get_group_data() const
virtual const char * get_self_awar() const =0
void NT_install_treeShader(TREE_canvas *ntw, GBDATA *gb_main)
static void NT_database_optimization(AW_window *aww)
AP_tree_root * get_tree_root()
static void update_main_window_title(AW_root *awr, AW_window_menu_modes *aww, int clone)
#define AWAR_SAVED_DB_PATH
void GBT_compression_test(struct Unfixed_cb_parameter *, GBDATA *gb_main)
AW_window * create_probe_design_window(AW_root *root, GBDATA *gb_main)
void launch_MapViewer_cb(GBDATA *gbd, AD_MAP_VIEWER_TYPE type)
void button_length(int length)
AW_window * AWTC_create_rename_window(AW_root *root, GBDATA *gb_main)
GBDATA * GBT_first_marked_species(GBDATA *gb_main)
AW_window * NT_create_startEditorOnOldConfiguration_window(AW_root *awr)
void NT_remove_leafs(UNFIXED, TREE_canvas *ntw, AWT_RemoveType mode)
int get_at_xposition() const
static void NT_save_quick_as_cb(AW_window *aww)
AW_window * NT_create_moveGroupInfo_window(AW_root *root)
void NT_edit_bootstrap(UNFIXED, TREE_canvas *ntw)
void EXP_create_awars(AW_root *aw_root, AW_default aw_def, GBDATA *gb_main)
GBDATA * read_pointer() const
void nt_mode_event(UNFIXED, TREE_canvas *ntw, AWT_COMMAND_MODE mode)
GB_ERROR GB_save(GBDATA *gb, const char *path, const char *savetype)
return string(buffer, length)
void NT_createConcatenationAwars(AW_root *aw_root, AW_default aw_def, GBDATA *gb_main)
GBDATA * current(AW_root *root, GBDATA *gb_main) const OVERRIDE
static void expert_mode_changed_cb(AW_root *aw_root)
void insert_menu_topic(const char *id, const char *name, const char *mnemonic, const char *help_text_, AW_active mask, const WindowCallback &wcb)
void AWTC_create_submission_variables(AW_root *root, AW_default db1)
void load_xfig(const char *file, bool resize=true)
void SQ_create_awars(AW_root *awr, AW_default aw_def)
void create_dbui_awars(AW_root *aw_root)
#define AWAR_DB_OPTI_TREENAME
AW_window * create_AWTC_export_window(AW_root *awr, GBDATA *gb_main)
GB_ERROR GB_add_callback(GBDATA *gbd, GB_CB_TYPE type, const DatabaseCallback &dbcb)
void GEN_create_awars(AW_root *aw_root, AW_default aw_def, GBDATA *gb_main)
void NT_create_transpro_variables(AW_root *root, AW_default props)
long GBT_mark_all(GBDATA *gb_main, int flag)
void NT_create_compare_taxonomy_awars(AW_root *aw_root, AW_default props)
void popup_species_info_window(AW_root *aw_root, GBDATA *gb_main)
GB_ERROR write_pointer(GBDATA *aw_pointer)
const char * ARB_keep_string(char *str)
void NT_mark_all_cb(UNFIXED, TREE_canvas *ntw, int mark_mode)
AW_window * NT_create_extendeds_window(AW_root *aw_root)
#define TREE_BUTTON_OVERSIZE
AW_window * AWTC_create_submission_window(AW_root *root, GBDATA *gb_main)
void NT_remove_bootstrap(UNFIXED, TREE_canvas *ntw)
TreeNode * GBT_remove_leafs(TreeNode *tree, GBT_TreeRemoveType mode, const GB_HASH *species_hash, int *removed, int *groups_removed)
void NT_create_extendeds_vars(AW_root *aw_root, AW_default aw_def, GBDATA *gb_main)
GB_ERROR GB_end_transaction(GBDATA *gbd, GB_ERROR error)
void NT_move_boot_branch(UNFIXED, TREE_canvas *ntw, int direction)
void NT_reset_pzoom_cb(UNFIXED, TREE_canvas *ntw)
void dont_save_awars_with_default_value(GBDATA *gb_db)
void AW_create_standard_fileselection(AW_window *aws, const char *awar_prefix)
const char * GBT_name_of_largest_tree(GBDATA *gb_main)
GB_ERROR ARB_bind_global_awars(GBDATA *gb_main)
#define ARB_VERSION_DETAILED
void GBT_get_alignment_names(ConstStrArray &names, GBDATA *gbd)
void maybe_exit_delayed()
void create_primer_design_variables(AW_root *aw_root, AW_default aw_def, AW_default global)
char * ARB_strdup(const char *str)
#define AWAR_DEFAULT_ALIGNMENT
AW_window * create_probe_match_with_specificity_window(AW_root *root, TREE_canvas *ntw)
AW_window * STAT_create_chimera_check_window(AW_root *root, GBDATA *gb_main)
static void NT_create_mask_submenu(AW_window_menu_modes *awm)
TreeNode * GBT_read_tree(GBDATA *gb_main, const char *tree_name, TreeRoot *troot)
#define AWAR_SAI_COLOR_STR
AW_window * NT_create_multifurcate_tree_window(AW_root *aw_root, TREE_canvas *ntw)
AW_window * create_insertDeleteBySAI_window(AW_root *root, GBDATA *gb_main)
void NT_start_editor_on_tree(AW_window *aww, int use_species_aside, TREE_canvas *ntw)
const char * GBS_global_string(const char *templat,...)
AW_window * NT_create_syncScroll_window(AW_root *awr, TREE_canvas *ntw)
void AW_advice(const char *message, AW_Advice_Type type, const char *title, const char *corresponding_help)
Show a message box with an advice for the user.
static void export_nds_cb(AW_window *aww, bool do_print)
static void NT_toggle_focus_policy(AW_window *aww)
void GBK_terminatef(const char *templat,...)
void AW_POPDOWN(AW_window *window)
void TREE_auto_jump_cb(UNFIXED, TREE_canvas *ntw, AP_tree_jump_reason cause)
void AW_insert_common_property_menu_entries(AW_window_menu_modes *awmm)
static void canvas_tree_awar_changed_cb(AW_awar *, bool, TREE_canvas *ntw)
const char * GBT_existing_tree(GBDATA *gb_main, const char *tree_name)
void NT_create_alignment_vars(AW_root *aw_root, AW_default aw_def, GBDATA *gb_main)
void NT_confirm_exit(AW_window *aws, int exitcode)
void GBS_free_hash(GB_HASH *hs)
GB_HASH * GBT_create_species_hash(GBDATA *gb_main)
bool isNull() const
test if SmartPtr is NULp
static void NT_save_as_cb(AW_window *aww)
TREE_canvas * NT_get_canvas_by_index(int idx)
static bool track_group_selection_by_canvas
#define AWAR_FOOTER_MAX_LEN
void set_window_title(const char *title)
AW_window * create_multiprobe_window(AW_root *root, TREE_canvas *canvas)
AW_window * create_primer_design_window(AW_root *root, GBDATA *gb_main)
static AW_window * NT_create_save_as(AW_root *aw_root, const char *base_name)
const char * getKeyPath() const OVERRIDE
GB_ERROR GB_fix_database(GBDATA *gb_main)
void insert_field_admin_menuitems(AW_window *aws, GBDATA *gb_main)
void setNull()
set SmartPtr to NULp
char buffer[MESSAGE_BUFFERSIZE]
GBDATA * GB_get_father(GBDATA *gbd)
void update_option_menu()
static void NT_update_marked_counter(GBDATA *, AW_window *aww)
GB_ERROR GB_push_transaction(GBDATA *gbd)
void NT_delete_mark_all_cb(AW_window *, TREE_canvas *ntw)
void AW_init_color_group_defaults(const char *for_program)
void NT_exit_now_restart_if(AW_root *aw_root, int exitcode, const char *restart_ntree_args)
AW_window * NT_create_sort_tree_by_other_tree_window(AW_root *aw_root, TREE_canvas *ntw)
AW_window * NT_createMergeSimilarSpeciesWindow(AW_root *aw_root)
void AWT_registerTreeAwarCallback(AW_awar *awar, const TreeAwarCallback &tacb, bool triggerIfTreeDataChanges)
void SAI_popup_calculator_window(AW_window *awp, GBDATA *gb_main)
#define AWAR_MARKED_SPECIES_COUNTER
AW_awar * add_callback(const RootCallback &cb)
struct Unfixed_cb_parameter * UNFIXED
void insert(const char *displayed, const AW_scalar &value)
void AW_create_namesadmin_awars(AW_root *awr, GBDATA *gb_main)
static AW_window * create_mark_by_refentries_window(AW_root *awr, GBDATA *gbmain)
static void NT_mark_duplicates(UNFIXED, TREE_canvas *ntw)
void set_tree_style(AP_tree_display_style style, AWT_canvas *ntw)
GB_ERROR GDE_init(AW_root *aw_root, AW_default aw_def, GBDATA *gb_main, GDE_get_sequences_cb get_sequences, GDE_format_alignment_cb format_ali, gde_window_type window_type)
void GB_change_my_security(GBDATA *gbd, int level)
AW_window * NT_create_syncroot_window(AW_root *awr, GBDATA *gb_main)
const char * read_char_pntr() const
void AW_system(const char *command)
bool is_performing_delayed_exit() const
static void merge_from_cb(AW_window *aww, AW_CL cl_awarNamePtr)
static void install_group_changed_callback(const GraphicTreeCallback &gccb)
int create_mode(const char *pixmap, const char *help_text_, AW_active mask, const WindowCallback &cb)
GB_ERROR GB_optimize(GBDATA *gb_main)
AWT_graphic_tree * NT_generate_tree(AW_root *root, GBDATA *gb_main, AD_map_viewer_cb map_viewer_cb)
AW_window * NT_create_resort_window(AW_root *awr)
AW_window * NT_create_select_alignment_window(AW_root *awr)
static AW_root * SINGLETON
TreeNode * NT_get_tree_root_of_canvas(TREE_canvas *ntw)
void GDE_load_menu(AW_window *awm, AW_active, const char *menulabel)
WindowCallback makeHelpCallback(const char *helpfile)
GB_ERROR ARB_format_alignment(GBDATA *Main, const char *alignment_name)
static void nt_changesecurity(AW_root *aw_root)
char * GBT_read_string(GBDATA *gb_container, const char *fieldpath)
void popup_group_search_window(AW_window *aw_parent, GBDATA *gb_main)
void AWT_popup_print_window(AW_window *parent_win, AWT_canvas *scr)
void popup_tree_admin_window(AW_window *awp)
void NT_insert_collapse_submenu(AW_window_menu_modes *awm, TREE_canvas *ntw)
void GEN_create_genes_submenu(AW_window_menu_modes *awm, GBDATA *gb_main, bool for_ARB_NTREE)
void create_insertDeleteColumn_variables(AW_root *root, AW_default db1)
GBDATA * get_gb_tree() const
size_t get_self_awar_content_length() const OVERRIDE
static nt_item_type_species_selector item_type_species
AW_window * NT_create_consense_window(AW_root *aw_root)
std::set< GBDATA * > DBItemSet
void NT_create_sai_from_pfold(AW_window *aww)
AW_window * create_refentries_window(AW_root *aw_root, ReferringEntriesHandler *reh, const char *window_id, const char *title, const char *help, client_area_builder build_client_area, const char *action, referred_item_handler action_cb)
AW_window * NT_create_select_tree_window(AW_root *awr, const char *awar_tree)
AW_root * get_root() const
AW_window * NT_create_compareTopologies_window(AW_root *root)
void create_probe_design_variables(AW_root *aw_root, AW_default def, AW_default global)
static AW_window * create_nds_export_window(AW_root *root)
AW_window * AWT_create_www_window(AW_root *aw_root, GBDATA *gb_main)
void AW_save_properties(AW_window *aw)
NT_MacroExitor(AW_root *aw_root_, int exitcode_, const char *restart_ntree_args_)
AW_window * NT_create_dna_2_pro_window(AW_root *root)
static void create_export_nds_awars(AW_root *awr, AW_default def)
GB_ERROR GBT_write_tree(GBDATA *gb_main, const char *tree_name, TreeNode *tree)
AW_window * create_insertDeleteColumn_window(AW_root *root)
void create_menu(const char *name, const char *mnemonic, AW_active mask=AWM_ALL)
static ARB_ERROR mark_referred_species(GBDATA *gb_main, const DBItemSet &referred)
#define AWAR_NTREE_MAIN_WINDOW_COUNT
AW_window * AW_create_gc_window(AW_root *aw_root, AW_gc_manager *gcman)
void help_text(const char *id)
void NT_rerepair_DB(AW_window *, GBDATA *gb_main)
void NT_start_if(const char *arb_ntree_args)
void NT_jump_cb(UNFIXED, TREE_canvas *ntw, AP_tree_jump_type jumpType)
AW_window * NT_create_alignment_admin_window(AW_root *root, AW_window *aw_popmedown)
static void error(const char *msg)
TREE_canvas * get_canvas(int idx) const
void AP_create_consensus_var(AW_root *aw_root, AW_default aw_def)
const char * get_name() const
#define AWAR_TREE_REFRESH
void AW_create_fileselection_awars(AW_root *awr, const char *awar_base, const char *directories, const char *filter, const char *file_name)
AW_window * NT_create_searchManuallyNames_window(AW_root *aw_root)
AW_window * AW_preset_window(AW_root *root)
GBDATA * GBT_next_marked_species(GBDATA *gb_species)
void relink_tree(GBDATA *gb_main, void(*relinker)(GBDATA *&ref_gb_node, char *&ref_name, GB_HASH *organism_hash), GB_HASH *organism_hash)
void AW_console_cb(AW_window *)
void insert_help_topic(const char *labeli, const char *mnemonic, const char *helpText, AW_active mask, const WindowCallback &cb)
void AWTI_cleanup_importer(AW_root *awr)
void awt_create_aww_vars(AW_root *aw_root, AW_default aw_def)
AW_window * NT_create_realign_dna_window(AW_root *root)
void NT_count_different_chars(AW_window *, GBDATA *gb_main)
long GB_read_clients(GBDATA *gbd)
void NT_import_sequences(AW_window *aww, TREE_canvas *ntw)
#define AWAR_SPECIES_NAME
DBItemSet::const_iterator DBItemSetIter
static AW_window * popup_new_main_window(AW_root *awr, int clone, TREE_canvas **result_ntw)
#define AWAR_DB_COMPRESSION
#define AWAR_INFO_BUTTON_TEXT
static void nt_create_all_awars(AW_root *awr)
void AWT_popup_tree_export_window(AW_window *parent_win, AWT_canvas *scr)
AP_tree_display_style get_tree_style() const
#define AWAR_SECURITY_LEVEL
char * read_string() const
static WindowCallback simple(void(*root_cb)(AW_root *, T), T t)
AW_awar * awar(const char *awar)
GB_ERROR GB_pop_transaction(GBDATA *gbd)
void insert_sub_menu(const char *name, const char *mnemonic, AW_active mask=AWM_ALL)
void NT_create_trackAliChanges_Awars(AW_root *root, AW_default properties)
GB_ERROR GB_save_quick_as(GBDATA *gbd, const char *path)
void NT_resort_data_by_phylogeny(AW_window *, TREE_canvas *ntw)
static void NT_infomode_cb(UNFIXED, TREE_canvas *canvas, AWT_COMMAND_MODE mode)
void NT_set_tree_style(UNFIXED, TREE_canvas *ntw, AP_tree_display_style style)
AW_DB_selection * awt_create_TREE_selection_list(GBDATA *gb_main, AW_window *aws, const char *varname)
void AW_refresh_fileselection(AW_root *awr, const char *awar_prefix)
static AW_window_menu_modes_opengl * awm
void GB_print_debug_information(struct Unfixed_cb_parameter *, GBDATA *gb_main)
static void selectedSpeciesChanged_cb(AW_root *awr)
void ARB_system_in_console_cb(AW_window *, const char *command, const XCmdType *exectype)
#define AWAR_EXPORT_NDS_SEPARATOR
long GBT_count_marked_species(GBDATA *gb_main)
nt_item_type_species_selector()
void NT_insert_mark_submenus(AW_window_menu_modes *awm, TREE_canvas *ntw, int insert_as_submenu)
void insert_default_option(AW_label choice_label, const char *mnemonic, const char *var_value, const char *name_of_color=NULp)
AW_window * NT_create_splitAlignment_window(AW_root *awr)
void NT_create_multifurcate_tree_awars(AW_root *aw_root, AW_default props)
AW_window * SQ_create_seq_quality_window(AW_root *aw_root, GBDATA *gb_main)
void create_trees_var(AW_root *aw_root, AW_default aw_def)
static AW_window * NT_create_merge_from_window(AW_root *awr)
static void merge_into_cb(AW_window *aww, AW_CL cl_awarNamePtr)
GB_ERROR GB_undo(GBDATA *gb_main, GB_UNDO_TYPE type) __ATTR__USERESULT
AW_window * NT_create_species_join_window(AW_root *root)
static void group_awar_changed_cb(AW_root *awr)
void NT_suggestValidNames(AW_window *)
void set_info_area_height(int height)
AW_window * NT_create_colstat_2_gnuplot_window(AW_root *root)
fputs(TRACE_PREFIX, stderr)
#define AWAR_AW_FOCUS_FOLLOWS_MOUSE
#define AWAR_TOPAREA_SAIS
TREE_canvas * NT_create_main_window(AW_root *aw_root)
AW_window * create_colorize_items_window(AW_root *aw_root, GBDATA *gb_main, ItemSelector &sel)
const Group & get_selected_group() const
void set_mode(AWT_COMMAND_MODE mo)
void set_bottom_area_height(int height)
static void NT_undo_cb(AW_window *, GB_UNDO_TYPE undo_type, TREE_canvas *ntw)
AW_awar * awar_int(const char *var_name, long default_value=0, AW_default default_file=AW_ROOT_DEFAULT)
void NT_resort_tree_cb(UNFIXED, TREE_canvas *ntw, TreeOrder order)
void request_save_and_zoom_reset()
void auto_space(int xspace, int yspace)
void NT_activate_configMarkers_display(TREE_canvas *ntw)
GB_ERROR close(GB_ERROR error)
void AW_help_entry_pressed(AW_window *aww)
char * GBK_singlequote(const char *arg)
void GB_write_flag(GBDATA *gbd, long flag)
AW_window * NDS_create_window(AW_root *aw_root, GBDATA *gb_main)
static void NT_justify_branch_lenghs(UNFIXED, TREE_canvas *ntw)
#define AWAR_ERROR_MESSAGES
GBDATA * GEN_find_origin_organism(GBDATA *gb_pseudo, const GB_HASH *organism_hash)
const char * get_self_awar() const OVERRIDE
static void NT_open_mask_window(AW_window *aww, int id, GBDATA *gb_main)
void request_structure_update()
AW_gc_manager * gc_manager
void NT_deleteValidNames(AW_window *)
AW_window * AP_create_con_expert_window(AW_root *aw_root)
AW_window * GEN_create_first_map(AW_root *aw_root, GBDATA *gb_main)
void AW_popup_namesadmin_window(AW_window *parent_win, GBDATA *gb_main)
void justify_branch_lenghs(GBDATA *gb_main)
AP_tree * get_root_node()
void NT_importValidNames(AW_window *)
void subtitle(const char *stitle)
GB_ERROR GB_textprint(const char *path) __ATTR__USERESULT
void GBK_dump_backtrace(FILE *out, const char *message)
static AW_window * NT_create_merge_to_window(AW_root *awr)
ItemSelector & SPECIES_get_selector()
static void NT_alltree_remove_leafs(AW_window *, GBT_TreeRemoveType mode, GBDATA *gb_main)
void GBT_get_tree_names(ConstStrArray &names, GBDATA *gb_main, bool sorted)
static void NT_save_quick_cb(AW_window *aww)
static AW_window * create_colorize_species_window(AW_root *aw_root)
GB_ERROR GBT_compress_sequence_tree2(GBDATA *gbd, const char *tree_name, const char *ali_name) __ATTR__USERESULT
AW_window * TREE_create_settings_window(AW_root *aw_root)
void NT_createValidNamesAwars(AW_root *aw_root, AW_default aw_def)
void aw_message(const char *msg)
AW_option_menu_struct * create_option_menu(const char *awar_name)
void insert_macro_menu_entry(AW_window *awm, bool prepend_separator)
AW_window * AP_create_pos_var_pars_window(AW_root *root)
static void nt_start_2nd_arb(AW_window *aww, bool quit)
void GB_split_full_path(const char *fullpath, char **res_dir, char **res_fullname, char **res_name_only, char **res_suffix)
AW_window * NT_createConcatenationWindow(AW_root *aw_root)
GBDATA * GBT_find_species(GBDATA *gb_main, const char *name)
GB_HASH * GBT_create_organism_hash(GBDATA *gb_main)
void NT_select_bottom_tree(AW_window *aww, const char *awar_tree)
#define AWAR_NTREE_TITLE_MODE
void create_refentries_awars(AW_root *aw_root, AW_default aw_def)
GB_ERROR write_string(const char *aw_string)
static AW_window * NT_create_save_quick_as_window(AW_root *aw_root, const char *base_name)
void GBT_split_string(ConstStrArray &dest, const char *namelist, const char *separator, SplitMode mode)
static TREE_canvas_registry & instance()
void NT_scale_tree(UNFIXED, TREE_canvas *ntw)
const char * local_id(const char *id) const
GB_ERROR GB_request_undo_type(GBDATA *gb_main, GB_UNDO_TYPE type) __ATTR__USERESULT_TODO
void NT_fill_canvas_selection_list(class AW_selection_list *sellst, TREE_canvas *to_skip)
GB_transaction ta(gb_var)
void callback(const WindowCallback &cb)
void destroy(TreeNode *that)
GB_CSTR GB_read_char_pntr(GBDATA *gbd)
int get_at_yposition() const
AW_window * NT_create_compare_taxonomy_window(AW_root *aw_root, TREE_canvas *ntw)
static void nt_run(const char *command)
AW_awar * awar_string(const char *var_name, const char *default_value="", AW_default default_file=AW_ROOT_DEFAULT)
GB_ERROR GBT_check_data(GBDATA *Main, const char *alignment_name)
void hide_or_notify(const char *error)
AW_window * NT_create_branch_analysis_window(AW_root *aw_root, TREE_canvas *ntw)
void NT_deselect_group(AW_root *awr)
bool GEN_is_genome_db(GBDATA *gb_main, int default_value)
void shadow_width(int shadow_thickness)
AW_root * get_root() const
AW_window * awt_create_load_box(AW_root *aw_root, const char *action, const char *what, const char *default_directory, const char *file_extension, char **set_file_name_awar, const WindowCallback &ok_cb, const WindowCallback &close_cb, const char *close_button_text)
AW_window * create_probe_match_window(AW_root *root, GBDATA *gb_main)
AW_window * NT_create_trackAliChanges_window(AW_root *root)
void ARB_disconnect_from_db(AW_root *aw_root, GBDATA *&gb_main_ref)
void NT_confirm_exit_restart_if(AW_root *aw_root, int exitcode, const char *restart_ntree_args)
bool GEN_is_pseudo_gene_species(GBDATA *gb_species)
static void relink_pseudo_species_to_organisms(GBDATA *&ref_gb_node, char *&ref_name, GB_HASH *organism_hash)
void NT_configure_treeShader(void)
static void merge_from_to(AW_root *awr, const char *db_awar_name, bool merge_to)
AW_awar * get_awar_tree() const
void TREE_create_awars(AW_root *aw_root, AW_default db)
~nt_item_type_species_selector() OVERRIDE
void NDS_create_vars(AW_root *aw_root, AW_default awdef, GBDATA *gb_main)
void at_attach_to(bool attach_x, bool attach_y, int xoff, int yoff)
void NT_reset_branchlengths(UNFIXED, TREE_canvas *ntw)
void AWT_insert_DBsaveType_selector(AW_window *aww, const char *awar_name)
GB_ERROR write_int(long aw_int)
static void NT_toggle_expert_mode(AW_window *aww)
void NT_reset_lzoom_cb(UNFIXED, TREE_canvas *ntw)
AW_window * create_probe_admin_window(AW_root *root, GBDATA *gb_main)
void create_group_search_awars(AW_root *aw_root, AW_default props)
GBDATA * GB_entry(GBDATA *father, const char *key)
void inc_and_check_user_abort(GB_ERROR &error)
void TREE_install_update_callbacks(TREE_canvas *ntw)
GB_ERROR GB_save_quick(GBDATA *gbd, const char *refpath)
void AW_system_async_cb(AW_window *, const char *command)
void aw_message_if(GB_ERROR error)
AW_window * create_tree_window(AW_root *aw_root, AWT_graphic *awd)
char * GBS_global_string_copy(const char *templat,...)
void AWT_insert_DBcompression_selector(AW_window *aww, const char *awar_name)
static void NT_pseudo_species_to_organism(AW_window *, TREE_canvas *ntw)
void create_button(const char *macro_name, AW_label label, const char *mnemonic=NULp, const char *color=NULp)
void AWT_openURL(AW_window *aww, const char *url)
void NT_create_resort_awars(AW_root *awr, AW_default aw_def)
void NT_reload_tree_event(AW_root *, TREE_canvas *ntw, bool unzoom_and_expose)
GBDATA * GBT_get_species_data(GBDATA *gb_main)
GB_write_int const char s