diff --git a/configFiles/Linear16x1_kilosortChanMap.mat b/configFiles/Linear16x1_kilosortChanMap.mat new file mode 100644 index 00000000..c5224bb0 Binary files /dev/null and b/configFiles/Linear16x1_kilosortChanMap.mat differ diff --git a/gui/ksGUI.m b/gui/ksGUI.m index 713e47b9..61afb429 100644 --- a/gui/ksGUI.m +++ b/gui/ksGUI.m @@ -1115,12 +1115,18 @@ function updateProbeView(obj, varargin) end cm = createValidChanMap(cm); if ~isempty(cm) + obj.P.allChanMaps(end+1) = cm; + currProbeList = obj.H.settings.setProbeEdt.String; + newProbeList = [{cm.name} currProbeList]; + obj.H.settings.setProbeEdt.String = newProbeList; + answer = questdlg('Save this channel map for later?'); if strcmp(answer, 'Yes') saveNewChanMap(cm, obj); end else obj.log('Channel map invalid. Must have chanMap, xcoords, and ycoords of same length'); + return; end end case 'other...' @@ -1135,6 +1141,7 @@ function updateProbeView(obj, varargin) currProbeList = obj.H.settings.setProbeEdt.String; newProbeList = [{cm.name} currProbeList]; obj.H.settings.setProbeEdt.String = newProbeList; + answer = questdlg('Save this channel map for later?'); if strcmp(answer, 'Yes') saveNewChanMap(cm, obj); diff --git a/gui/loadChanMaps.m b/gui/loadChanMaps.m index d66ef890..ca57a754 100644 --- a/gui/loadChanMaps.m +++ b/gui/loadChanMaps.m @@ -8,14 +8,19 @@ idx = 1; chanMaps = []; +orig_state = warning; +warning('off','all') + for c = 1:numel(chanMapFiles) q = load(fullfile(ksroot, 'configFiles', chanMapFiles(c).name)); cm = createValidChanMap(q, chanMapFiles(c).name); if ~isempty(cm) - if idx==1; chanMaps = cm; else; chanMaps(idx) = cm; end; + if idx==1; chanMaps = cm; else; chanMaps(idx) = cm; end idx = idx+1; end end + +warning(orig_state); diff --git a/gui/saveNewChanMap.m b/gui/saveNewChanMap.m index 40e1cd84..e4a932bf 100644 --- a/gui/saveNewChanMap.m +++ b/gui/saveNewChanMap.m @@ -12,8 +12,9 @@ function saveNewChanMap(cm, obj) end end if ~isempty(newName) + newName = genvarname(newName); ksRoot = fileparts(fileparts(mfilename('fullpath'))); - newFn = [answer{1} '_kilosortChanMap.mat']; + newFn = [newName '_kilosortChanMap.mat']; save(fullfile(ksRoot, 'configFiles', newFn), '-struct', 'cm'); obj.log(['Saved new channel map: ' fullfile(ksRoot, 'configFiles', newFn)]); else