31 char *to_free_target = target;
33 char *name = strchr(target, 1);
40 if (target[-1] ==
'@') {
69 long _2filter_len = strlen(_2filter);
76 long i;
for (i=0; i<len; i++) {
89 for (
int j = 0; j<(len-10)/10; ++j) {
93 int printed = sprintf(buffer,
"%li", i+1);
110 for (i=0, s=str; *
s; ++
s, ++i) {
111 if (strchr(canc, *s) || (i<min) || (max>0 && i > max)) {
115 if (i > _2filter_len || _2filter[i] !=
'0') {
135 free(to_free_target);
223 char *awar_alignment =
GBS_string_eval(awar_filtername,
"/name=/alignment");
225 aw_root->
awar_string(awar_filtername,
"none", aw_def);
229 if (awar_mapto_alignment) awar_ali->
map(awar_mapto_alignment);
231 free(awar_alignment);
253 int len = strlen(def_name);
256 ga_assert(strcmp(def_name+len-5,
"/name") == 0);
347 const char *awar_repeated =
"/2filter";
348 const char *awar_postfix =
"/name";
349 int prefix_len = strlen(awar_prefix);
350 int repeated_len = strlen(awar_repeated);
351 int postfix_len = strlen(awar_postfix);
354 for (count = 1; ; ++count) {
355 char *awar_name =
new char[prefix_len + count*repeated_len + postfix_len + 1];
356 strcpy(awar_name, awar_prefix);
358 for (c=0; c<count; ++c) strcat(awar_name, awar_repeated);
359 strcat(awar_name, awar_postfix);
364 if (!awar_found)
break;
367 if (!strstr(content,
"none")) {
372 return combined_name;
380 AW_window_simple *aws =
new AW_window_simple;
385 aws->init(aw_root, window_id,
"Select Filter");
388 aws->load_xfig(
"awt/filter.fig");
389 aws->button_length(10);
393 aws->create_button(
"CLOSE",
"CLOSE",
"C");
396 aws->create_button(
"HELP",
"HELP",
"H");
409 aws->create_input_field(acbs->
def_cancel, 10);
412 aws->create_text_field(acbs->
def_source, 1, 1);
415 aws->create_input_field(acbs->
def_min, 4);
418 aws->create_input_field(acbs->
def_max, 4);
422 aws->insert_option(
"ORIGINAL DATA",
"O", 0);
424 aws->insert_option(
"TRANSVERSIONS ONLY",
"T", 1);
425 aws->insert_option(
"SIMPLIFIED AA",
"A", 2);
427 aws->update_option_menu();
431 aws->button_length(7);
464 filter =
new AP_filter(filter_string,
"0", len);
GBDATA * GBT_first_SAI(GBDATA *gb_main)
static void awt_create_select_filter_window_gb_cb(UNFIXED, adfiltercbstruct *cbs)
GBDATA * GB_child(GBDATA *father)
AW_window * awt_create_select_filter_win(AW_root *aw_root, adfiltercbstruct *acbs)
void insert_default(const char *displayed, const AW_scalar &value)
GB_ERROR GB_add_callback(GBDATA *gbd, GB_CB_TYPE type, const DatabaseCallback &dbcb)
static AW_window * awt_create_2_filter_window(AW_root *aw_root, adfiltercbstruct *acbs)
adfiltercbstruct * awt_create_select_filter(AW_root *aw_root, GBDATA *gb_main, const char *def_name)
char * ARB_strdup(const char *str)
const char * GBS_global_string(const char *templat,...)
long GBT_get_alignment_len(GBDATA *gb_main, const char *aliname)
void npaste_at(size_t at, const char *from, size_t count)
char * GBS_string_eval(const char *insource, const char *icommand)
void AW_POPDOWN(AW_window *window)
void cat(const char *from)
char buffer[MESSAGE_BUFFERSIZE]
GBDATA * GB_get_father(GBDATA *gbd)
GB_ERROR GB_push_transaction(GBDATA *gbd)
AW_awar * add_callback(const RootCallback &cb)
struct Unfixed_cb_parameter * UNFIXED
void insert(const char *displayed, const AW_scalar &value)
char * AWT_get_combined_filter_name(AW_root *aw_root, GB_CSTR prefix)
AP_filter * awt_get_filter(adfiltercbstruct *acbs)
AW_selection_list * filterlist
GBDATA * GBT_find_SAI(GBDATA *gb_main, const char *name)
WindowCallback makeHelpCallback(const char *helpfile)
GB_TYPES GB_read_type(GBDATA *gbd)
GB_CSTR GB_read_key_pntr(GBDATA *gbd)
void awt_destroy_filter(AP_filter *filter)
GB_ERROR awt_invalid_filter(AP_filter *filter)
char * GB_read_bits(GBDATA *gbd, char c_0, char c_1)
#define AWAR_SPECIES_NAME
char * read_string() const
void awt_create_filter_awars(AW_root *aw_root, AW_default aw_def, const char *awar_filtername, const char *awar_mapto_alignment)
AW_awar * awar_no_error(const char *awar)
end timer stuff
AW_awar * awar(const char *awar)
GB_ERROR GB_pop_transaction(GBDATA *gbd)
GBDATA * GB_brother(GBDATA *entry, const char *key)
const char * GBT_readOrCreate_char_pntr(GBDATA *gb_container, const char *fieldpath, const char *default_value)
GBDATA * GBT_next_SAI(GBDATA *gb_sai)
AW_awar * awar_int(const char *var_name, long default_value=0, AW_default default_file=AW_ROOT_DEFAULT)
void enable_simplify(AWT_FILTER_SIMPLIFY type)
void awt_set_awar_to_valid_filter_good_for_tree_methods(GBDATA *gb_main, AW_root *awr, const char *awar_name)
AW_awar * map(const char *awarn)
char * GB_read_string(GBDATA *gbd)
GB_ERROR is_invalid() const
uint32_t GBS_checksum(const char *seq, int ignore_case, const char *exclude)
static void awt_create_select_filter_window_aw_cb(UNFIXED, adfiltercbstruct *cbs)
recalc filter
GBDATA * GBT_find_species(GBDATA *gb_main, const char *name)
GB_ERROR write_string(const char *aw_string)
bool ARB_strBeginsWith(const char *str, const char *with)
const char * get_data() const
GBDATA * GB_nextChild(GBDATA *child)
GB_CSTR GB_read_char_pntr(GBDATA *gbd)
AW_awar * awar_string(const char *var_name, const char *default_value="", AW_default default_file=AW_ROOT_DEFAULT)
GBDATA * GBT_get_SAI_data(GBDATA *gb_main)
GBDATA * GB_search(GBDATA *gbd, const char *fieldpath, GB_TYPES create)
GB_CSTR GBT_get_name_or_description(GBDATA *gb_item)
static void awt_add_sequences_to_list(adfiltercbstruct *cbs, const char *use, GBDATA *gb_extended, const char *pre, char tpre)
GB_ERROR write_int(long aw_int)
GBDATA * GB_entry(GBDATA *father, const char *key)
char * GBS_global_string_copy(const char *templat,...)
GB_write_int const char s