21 char *to_free_target = target;
23 char *name = strchr(target, 1);
30 if (target[-1] ==
'@') {
59 long _2filter_len = strlen(_2filter);
66 long i;
for (i=0; i<len; i++) {
79 for (
int j = 0; j<(len-10)/10; ++j) {
83 int printed = sprintf(buffer,
"%li", i+1);
100 for (i=0, s=str; *
s; ++
s, ++i) {
101 if (strchr(canc, *s) || (i<min) || (max>0 && i > max)) {
105 if (i > _2filter_len || _2filter[i] !=
'0') {
125 free(to_free_target);
213 char *awar_alignment =
GBS_string_eval(awar_filtername,
"/name=/alignment");
215 aw_root->
awar_string(awar_filtername,
"none", aw_def);
219 if (awar_mapto_alignment) awar_ali->
map(awar_mapto_alignment);
221 free(awar_alignment);
243 int len = strlen(def_name);
246 ga_assert(strcmp(def_name+len-5,
"/name") == 0);
337 const char *awar_repeated =
"/2filter";
338 const char *awar_postfix =
"/name";
339 int prefix_len = strlen(awar_prefix);
340 int repeated_len = strlen(awar_repeated);
341 int postfix_len = strlen(awar_postfix);
344 for (count = 1; ; ++count) {
345 char *awar_name =
new char[prefix_len + count*repeated_len + postfix_len + 1];
346 strcpy(awar_name, awar_prefix);
348 for (c=0; c<count; ++c) strcat(awar_name, awar_repeated);
349 strcat(awar_name, awar_postfix);
354 if (!awar_found)
break;
357 if (!strstr(content,
"none")) {
362 return combined_name;
370 AW_window_simple *aws =
new AW_window_simple;
375 aws->init(aw_root, window_id,
"Select Filter");
378 aws->load_xfig(
"awt/filter.fig");
379 aws->button_length(10);
383 aws->create_button(
"CLOSE",
"CLOSE",
"C");
386 aws->create_button(
"HELP",
"HELP",
"H");
399 aws->create_input_field(acbs->
def_cancel, 10);
402 aws->create_text_field(acbs->
def_source, 1, 1);
405 aws->create_input_field(acbs->
def_min, 4);
408 aws->create_input_field(acbs->
def_max, 4);
412 aws->insert_option(
"ORIGINAL DATA",
"O", 0);
414 aws->insert_option(
"TRANSVERSIONS ONLY",
"T", 1);
415 aws->insert_option(
"SIMPLIFIED AA",
"A", 2);
417 aws->update_option_menu();
421 aws->button_length(7);
454 filter =
new AP_filter(filter_string,
"0", len);
void awt_create_filter_awars(AW_root *aw_root, AW_default aw_def, const char *awar_filtername, const char *awar_mapto_alignment)
GBDATA * GBT_first_SAI(GBDATA *gb_main)
void awt_destroy_filter(AP_filter *filter)
static void awt_create_select_filter_window_gb_cb(UNFIXED, adfiltercbstruct *cbs)
static void awt_create_select_filter_window_aw_cb(UNFIXED, adfiltercbstruct *cbs)
recalc filter
GBDATA * GB_child(GBDATA *father)
void insert_default(const char *displayed, const AW_scalar &value)
GB_ERROR GB_add_callback(GBDATA *gbd, GB_CB_TYPE type, const DatabaseCallback &dbcb)
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)
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)
static AW_window * awt_create_2_filter_window(AW_root *aw_root, adfiltercbstruct *acbs)
char * GB_read_bits(GBDATA *gbd, char c_0, char c_1)
adfiltercbstruct * awt_create_select_filter(AW_root *aw_root, GBDATA *gb_main, const char *def_name)
#define AWAR_SPECIES_NAME
AW_window * awt_create_select_filter_win(AW_root *aw_root, adfiltercbstruct *acbs)
char * read_string() const
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)
void awt_set_awar_to_valid_filter_good_for_tree_methods(GBDATA *gb_main, AW_root *awr, const char *awar_name)
GBDATA * GBT_next_SAI(GBDATA *gb_sai)
AP_filter * awt_get_filter(adfiltercbstruct *acbs)
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)
AW_awar * map(const char *awarn)
char * GB_read_string(GBDATA *gbd)
GB_ERROR awt_invalid_filter(AP_filter *filter)
GB_ERROR is_invalid() const
uint32_t GBS_checksum(const char *seq, int ignore_case, const char *exclude)
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)
char * AWT_get_combined_filter_name(AW_root *aw_root, GB_CSTR prefix)
static void awt_add_sequences_to_list(adfiltercbstruct *cbs, const char *use, GBDATA *gb_extended, const char *pre, char tpre)
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)
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