void vsx_engine_param::dump_aliases_and_connections(vsx_string base_macro, vsx_command_list* command_result) { for (std::vector<vsx_engine_param_connection*>::reverse_iterator it = connections.rbegin(); it != connections.rend(); ++it) { if ((*it)->alias_connection && (*it)->dest->owner->component->name.find(base_macro) == 0) { // 0 1 2 3 4 5 6 // param_alias [p_def] [-1=in / 1=out] [component] [parameter] [source_component] [source_parameter] (*it)->dest->dump_aliases_and_connections(base_macro, command_result); command_result->add_raw("param_alias "+ (*it)->dest->name+":"+(*it)->dest->spec+" "+ vsx_string_helper::i2s(owner->io)+" "+ str_replace(base_macro,"$$name",str_replace(base_macro+".","$$name.",(*it)->dest->owner->component->name,1,0),1,0)+" "+ (*it)->dest->name+" "+ str_replace(base_macro,"$$name",str_replace(base_macro+".","$$name.",(*it)->src->owner->component->name,1,0),1,0)+" "+ (*it)->src->name ); } else if (((*it)->src->owner->component->name.find(base_macro+".") == 0 || ((*it)->src->owner->component->name.find(base_macro) == 0 && base_macro.size() == (*it)->src->owner->component->name.size())) || base_macro.size() == 0) { // 0 1 2 3 4 // param_connect [in-comp] [in-param] [out-comp] [out-param] command_result->add_raw("param_connect "+ str_replace(base_macro,"$$name",str_replace(base_macro+".","$$name.",(*it)->dest->owner->component->name,1,0),1,0)+" "+ (*it)->dest->name+" "+ str_replace(base_macro,"$$name",str_replace(base_macro+".","$$name.",(*it)->src->owner->component->name,1,0),1,0)+" "+ (*it)->src->name ); } } }
void vsx_engine_param::set_string(vsx_string data) { if (!data.size()) return; switch (module_param->type) { case VSX_MODULE_PARAM_ID_INT: case VSX_MODULE_PARAM_ID_FLOAT: case VSX_MODULE_PARAM_ID_DOUBLE: case VSX_MODULE_PARAM_ID_STRING: case VSX_MODULE_PARAM_ID_RESOURCE: case VSX_MODULE_PARAM_ID_SEQUENCE: case VSX_MODULE_PARAM_ID_FLOAT_ARRAY: set_string_index(data); return; case VSX_MODULE_PARAM_ID_FLOAT3: case VSX_MODULE_PARAM_ID_FLOAT4: case VSX_MODULE_PARAM_ID_QUATERNION: break; } vsx_string deli = ","; std::vector<vsx_string> data_parts; explode(data,deli,data_parts); for (size_t i = 0; i < data_parts.size(); i++) { set_string_index(data_parts[i],i); } }
int count_whitespaces(vsx_string& s) { size_t i = 0; while (i < s.size() && s[i] == ' ') { //printf("line: %d\n",__LINE__); i++; } return i; }
void vsx_widget_base_edit::set_filter_string(vsx_string &filter_string) { if (filter_string.size() == 0) { if (filter_string_enabled) lines_visible = lines_visible_stack; filter_string_enabled = false; return; } if (!filter_string_enabled) lines_visible_stack = lines_visible; for (unsigned long i = 0; i < lines.size(); ++i) { if (lines[i].find(filter_string) != -1) lines_visible[i] = 0; else lines_visible[i] = 1; } scroll_y = 0; scrollbar_pos_y = 0; filter_string_enabled = true; }
void vsx_statelist::add_visual_path(vsx_string new_visual_path) { get_files_recursive(new_visual_path, &state_file_list,"",""); #ifdef VSXU_DEBUG printf("getting files recursive: %s\n", (new_visual_path).c_str() ); #endif for (std::list<vsx_string>::iterator it = state_file_list.begin(); it != state_file_list.end(); ++it) { state_info state; state.state_name = *it; state.state_name_suffix = state.state_name.substr(new_visual_path.size(),state.state_name.size() - new_visual_path.size() ); #ifdef VSXU_DEBUG printf("adding state %s\n",(*it).c_str()); #endif statelist.push_back(state); } }