83
« Last post by Graeme on August 20, 2024, 08:36:48 PM »
Hi
The source code is at restore.e line 2100
on the slick command line, type
fp save-named-files
and it should find it
The command allows you to specify a name for the set of files - you could prefix the name with the name of the project perhaps.
The save_named_files command looks like this
_command void save_named_files(_str sectionName="") name_info(',') {
save_named_state(sectionName,true,false,VSCFGPROFILE_NAMED_FILES);
}
VSCFGPROFILE_NAMED_FILES is the string "named_files"
This ends up in user.cfg.xml as this
<misc.named_files n="misc.named_files" version="1">
<p n="gp1">
<monitor_configs>
So theoretically you can change the string to the name of your project or workspace or something and it might do what you want, and same with load_named_files.
Another possibility is to copy the code for save_named_state and experiment. Unfortunately I don't know anything about the xmlcfg stuff or profiles. I suspect that you can supply a filename in the call to _xmlcfg_create and it will write to that file instead of user.cfg.xml. The VSCFGPACKAGE_MISC thing is the string "misc" - which I guess results in the "misc.named_files" bit you can see above
_plugin_get_profile seems to be in the core code and you don't get a choice of where it goes looking for the profile, so if you specify your own filename in the call to xmlcfg_create, it will never find the profile - but maybe that doesn't matter, I do not know.
profile_handle:=_plugin_get_profile(VSCFGPACKAGE_MISC,profile_name);
if (profile_handle<0) {
profile_handle=_xmlcfg_create('',VSENCODING_UTF8);
int profile_node=_xmlcfg_add(profile_handle,0,VSXMLCFG_PROFILE,VSXMLCFG_NODE_ELEMENT_START,VSXMLCFG_ADD_AS_CHILD);
_xmlcfg_set_attribute(profile_handle,profile_node,VSXMLCFG_PROFILE_NAME,_plugin_append_profile_name(VSCFGPACKAGE_MISC,profile_name));
}
handle:=_xmlcfg_create('',VSENCODING_UTF8);