📄 gui_eeg_contours.m
字号:
'set(EEGCONTOURS.handles.EgridRes,''String'', num2str(EEGCONTOURS.p.grid.res),''Value'', EEGCONTOURS.p.grid.res ); ',...
'set(EEGCONTOURS.gui,''Userdata'',EEGCONTOURS); clear EEGCONTOURS;'));
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Voltage Data Selection and Parameters
height = (height - .01) - frameheight*5;
G.Frame_data = uicontrol('Parent',GUI,'Style','frame','Units','Normalized',...
'Position',[frameindent height framewidth frameheight*5]);
G.Title_data = uicontrol('Parent',GUI,'Style','pushbutton','Units','Normalized',Font, ...
'Position',[frameindent*2 height+L(5) titlewidth textheight],...
'String','Voltage File','HorizontalAlignment','left',...
'BackgroundColor',[0.0 0.0 0.75],'ForegroundColor', [1 1 1],...
'Callback',strcat('EEGCONTOURS = get(gcbf,''UserData'');',...
'gui_eeg_open(EEGCONTOURS.p,''init'',EEGCONTOURS.gui);',...
'clear EEGCONTOURS;'));
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Range of Data to Visualise
G.Title_range = uicontrol('Parent',GUI,'Style','text','Units','Normalized',Font, ...
'Position',[frameindent*2 height+L(4) titlewidth textheight],...
'String','Voltage Range','HorizontalAlignment','left');
switch p.rangeMethod
case 'minmaxall', range = [1 0 0 0]; rangeEnable = 'off'; % Min/Max,all points
case 'minmaxone', range = [0 1 0 0]; rangeEnable = 'off'; % Min/Max, single point
case 'minmaxabs', range = [0 0 1 0]; rangeEnable = 'off'; % Min/Max, Absolute
otherwise, range = [0 0 0 1]; rangeEnable = 'on' ; % Specified range
end
% Min/Max across whole window
G.BrangeMethod1 = uicontrol('Parent',GUI,'Style','Radiobutton',...
'Units','Normalized',Font, ...
'Position',[indent(2) height+L(3) radiowidth radioheight], 'String','Min/Max all points','Value',range(1),...
'Callback',strcat('EEGCONTOURS = get(gcbf,''Userdata'');',...
'EEGCONTOURS.p.rangeMethod = ''minmaxall'';',...
'set(EEGCONTOURS.handles.BrangeMethod1,''Value'',1);',...
'set(EEGCONTOURS.handles.BrangeMethod2,''Value'',0);',...
'set(EEGCONTOURS.handles.BrangeMethod3,''Value'',0);',...
'set(EEGCONTOURS.handles.BrangeMethod4,''Value'',0);',...
'set(EEGCONTOURS.handles.EminimumIntensity,''Enable'',''off'');',...
'set(EEGCONTOURS.handles.EmaximumIntensity,''Enable'',''off'');',...
'set(EEGCONTOURS.gui,''Userdata'',EEGCONTOURS); clear EEGCONTOURS;'));
% Min/Max across time point only
G.BrangeMethod2 = uicontrol('Parent',GUI,'Style','Radiobutton',...
'Units','Normalized',Font, ...
'Position',[indent(2) height+L(4) radiowidth radioheight],...
'String','Min/Max','Value',range(2),...
'Callback',strcat('EEGCONTOURS = get(gcbf,''Userdata'');',...
'EEGCONTOURS.p.rangeMethod = ''minmaxone'';',...
'set(EEGCONTOURS.handles.BrangeMethod1,''Value'',0);',...
'set(EEGCONTOURS.handles.BrangeMethod2,''Value'',1);',...
'set(EEGCONTOURS.handles.BrangeMethod3,''Value'',0);',...
'set(EEGCONTOURS.handles.BrangeMethod4,''Value'',0);',...
'set(EEGCONTOURS.handles.EminimumIntensity,''Enable'',''off'');',...
'set(EEGCONTOURS.handles.EmaximumIntensity,''Enable'',''off'');',...
'set(EEGCONTOURS.gui,''Userdata'',EEGCONTOURS); clear EEGCONTOURS;'));
% Abs Min/Max across time point only
G.BrangeMethod3 = uicontrol('Parent',GUI,'Style','Radiobutton',...
'Units','Normalized',Font, ...
'Position',[indent(3) height+L(4) radiowidth radioheight],...
'String','Abs Min/Max','Value',range(3),...
'Callback',strcat('EEGCONTOURS = get(gcbf,''Userdata'');',...
'EEGCONTOURS.p.rangeMethod = ''minmaxabs'';',...
'set(EEGCONTOURS.handles.BrangeMethod1,''Value'',0);',...
'set(EEGCONTOURS.handles.BrangeMethod2,''Value'',0);',...
'set(EEGCONTOURS.handles.BrangeMethod3,''Value'',1);',...
'set(EEGCONTOURS.handles.BrangeMethod4,''Value'',0);',...
'set(EEGCONTOURS.handles.EminimumIntensity,''Enable'',''off'');',...
'set(EEGCONTOURS.handles.EmaximumIntensity,''Enable'',''off'');',...
'set(EEGCONTOURS.gui,''Userdata'',EEGCONTOURS); clear EEGCONTOURS;'));
% scale by specified range
G.BrangeMethod4 = uicontrol('Parent',GUI,'Style','Radiobutton',...
'Units','Normalized',Font, ...
'Position',[indent(3) height+L(3) radiowidth radioheight], 'String','Specified Range', 'Value',range(4),...
'Callback',strcat('EEGCONTOURS = get(gcbf,''Userdata'');',...
'EEGCONTOURS.p.rangeMethod = ''minmaxgiv'';',...
'set(EEGCONTOURS.handles.BrangeMethod1,''Value'',0);',...
'set(EEGCONTOURS.handles.BrangeMethod2,''Value'',0);',...
'set(EEGCONTOURS.handles.BrangeMethod3,''Value'',0);',...
'set(EEGCONTOURS.handles.BrangeMethod4,''Value'',1);',...
'min = EEGCONTOURS.p.minimumIntensity;',...
'max = EEGCONTOURS.p.maximumIntensity;',...
'set(EEGCONTOURS.handles.EminimumIntensity,''Enable'',''on'',''Value'',min,''String'',num2str(min) );',...
'set(EEGCONTOURS.handles.EmaximumIntensity,''Enable'',''on'',''Value'',max,''String'',num2str(max) );',...
'set(EEGCONTOURS.gui,''Userdata'',EEGCONTOURS); clear EEGCONTOURS;'));
G.Title_min = uicontrol('Parent',GUI,'Style','text','Units','Normalized',Font, ...
'Position',[indent(5) height+L(4) textwidth textheight],'String','Min');
G.EminimumIntensity = uicontrol('Parent',GUI,'Style','edit','Units','Normalized',Font, ...
'Position',[indent(5)-editwidth height+L(4) editwidth editheight],'Enable',rangeEnable,...
'String',num2str(p.minimumIntensity),'Value',p.minimumIntensity,...
'Callback',strcat('EEGCONTOURS = get(gcbf,''Userdata'');',...
'min = str2num( get(EEGCONTOURS.handles.EminimumIntensity,''String'') );',...
'set(EEGCONTOURS.handles.EminimumIntensity,''Value'',min,''String'',num2str(min) );',...
'EEGCONTOURS.p.minimumIntensity = min; ',...
'set(EEGCONTOURS.gui,''Userdata'',EEGCONTOURS); clear EEGCONTOURS;'));
G.Title_max = uicontrol('Parent',GUI,'Style','text','Units','Normalized',Font, ...
'Position',[indent(5) height+L(3) textwidth textheight],'String','Max');
G.EmaximumIntensity = uicontrol('Parent',GUI,'Style','edit','Units','Normalized',Font, ...
'Position',[indent(5)-editwidth height+L(3) editwidth editheight],'Enable',rangeEnable,...
'String',num2str(p.maximumIntensity),'Value',p.maximumIntensity,...
'Callback',strcat('EEGCONTOURS = get(gcbf,''Userdata'');',...
'max = str2num( get(EEGCONTOURS.handles.EmaximumIntensity,''String'') );',...
'set(EEGCONTOURS.handles.EmaximumIntensity,''Value'',max,''String'',num2str(max) );',...
'EEGCONTOURS.p.maximumIntensity = max; ',...
'set(EEGCONTOURS.gui,''Userdata'',EEGCONTOURS); clear EEGCONTOURS;'));
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Range of TimePoints
G.Title_range = uicontrol('Parent',GUI,'Style','text','Units','Normalized',Font, ...
'Position',[frameindent*2 height+L(2) titlewidth textheight],...
'String','Time Range','HorizontalAlignment','left');
switch p.timeMethod
case 1, time = [1 0]; endEnable = 'off'; singleEnable = 'on'; % Single Timepoint
case 2, time = [0 1]; endEnable = 'on'; singleEnable = 'off'; % Range Timepoints
end
G.BclickTimePoint = uicontrol('Parent',GUI,'Style','Checkbox','Units','Normalized',Font, ...
'Position',[indent(1)+.05 height+L(1) radiowidth radioheight],...
'String','Click Plot',...
'TooltipString','Interactive data timepoint selection.',...
'Value',p.clickTimePoint,...
'Callback',strcat('EEGCONTOURS = get(gcbf,''Userdata'');',...
'EEGCONTOURS.p.clickTimePoint = get(EEGCONTOURS.handles.BclickTimePoint,''Value'');',...
'set(EEGCONTOURS.gui,''Userdata'',EEGCONTOURS); clear EEGCONTOURS;'));
G.Title_sample1 = uicontrol('Parent',GUI,'Style','text','Units','Normalized',Font, ...
'Position',[indent(2)-.04 height+L(2) radiowidth textheight],...
'String','Sample Rate',...
'TooltipString','Disabled until functionality developed.');
G.EtimeSample = uicontrol('Parent',GUI,'Style','edit','Units','Normalized',Font, ...
'Position',[indent(2) height+L(1) editwidth editheight],...
'Min', 1, 'Max', 50000, ...
'Value', p.volt.sampleMsec, 'String', num2str(p.volt.sampleMsec),...
'TooltipString','Specify EEG/ERP sample rate in milliseconds.');
G.BtimeMethod1 = uicontrol('Parent',GUI,'Style','Radiobutton',...
'Units','Normalized',Font, ...
'Position',[indent(3) height+L(2) radiowidth radioheight],...
'String','Single Point','Value',time(1));
G.EtimePoint = uicontrol('Parent',GUI,'Style','edit','Units','Normalized',Font, ...
'Position',[indent(4) height+L(2) editwidth editheight], 'Min', 1, 'Max', 50000, ...
'Value', p.volt.samplePoint, 'String', num2str(p.volt.samplePoint));
G.Title_start = uicontrol('Parent',GUI,'Style','text','Units','Normalized',Font, ...
'Position',[indent(5) height+L(2) textwidth textheight],'String','Start');
G.BtimeMethod2 = uicontrol('Parent',GUI,'Style','Radiobutton',...
'Units','Normalized',Font, ...
'Position',[indent(3) height+L(1) radiowidth radioheight],...
'String','Range','Value',time(2),...
...
...
'TooltipString','Disabled until functionality developed.',...
'Enable','off');
G.EendTime = uicontrol('Parent',GUI,'Style','edit','Units','Normalized',Font, ...
'Position',[indent(4) height+L(1) editwidth editheight],'Enable',endEnable,...
'String',num2str(p.endTime),'Value',p.endTime);
G.Title_end = uicontrol('Parent',GUI,'Style','text','Units','Normalized',Font, ...
'Position',[indent(5) height+L(1) textwidth textheight],'String','End');
% Single Timepoint
set(G.BtimeMethod1,'Callback',strcat('EEGCONTOURS = get(gcbf,''Userdata'');',...
'set(EEGCONTOURS.handles.BtimeMethod1,''Value'',1);',...
'set(EEGCONTOURS.handles.BtimeMethod2,''Value'',0);',...
'set(EEGCONTOURS.handles.EendTime,''Enable'',''off'');',...
'set(EEGCONTOURS.gui,''Userdata'',EEGCONTOURS); clear EEGCONTOURS;'));
% Specify a time point range
set(G.BtimeMethod2,'Callback',strcat('EEGCONTOURS = get(gcbf,''Userdata'');',...
'set(EEGCONTOURS.handles.BtimeMethod1,''Value'',0);',...
'set(EEGCONTOURS.handles.BtimeMethod2,''Value'',1);',...
'set(EEGCONTOURS.handles.EendTime,''Enable'',''on'');',...
'set(EEGCONTOURS.gui,''Userdata'',EEGCONTOURS); clear EEGCONTOURS;'));
set(G.EtimeSample,'Callback',strcat('EEGCONTOURS = get(gcbf,''Userdata'');',...
'EEGCONTOURS.p.timeSample = str2num( get(EEGCONTOURS.handles.EtimeSample,''String'') );',...
'set(EEGCONTOURS.handles.EtimeSample,''Value'',EEGCONTOURS.p.timeSample,''String'',num2str(EEGCONTOURS.p.timeSample) );',...
'set(EEGCONTOURS.handles.EtimePoint,''Value'',EEGCONTOURS.p.volt.samplePoint,''String'',num2str(EEGCONTOURS.p.volt.samplePoint) );',...
'set(EEGCONTOURS.handles.EendTime, ''Value'',EEGCONTOURS.p.endTime, ''String'',num2str(EEGCONTOURS.p.endTime) );',...
'set(EEGCONTOURS.gui,''Userdata'',EEGCONTOURS); clear EEGCONTOURS;'));
set(G.EtimePoint,'Callback',strcat('EEGCONTOURS = get(gcbf,''Userdata'');',...
'EEGCONTOURS.p.volt.samplePoint = str2num( get(EEGCONTOURS.handles.EtimePoint,''String'') );',...
'set(EEGCONTOURS.handles.EtimePoint,''Value'',EEGCONTOURS.p.volt.samplePoint,''String'',num2str(EEGCONTOURS.p.volt.samplePoint) );',...
'set(EEGCONTOURS.gui,''Userdata'',EEGCONTOURS); clear EEGCONTOURS;'));
set(G.EendTime,'Callback',strcat('EEGCONTOURS = get(gcbf,''Userdata'');',...
'EEGCONTOURS.p.endTime = str2num( get(EEGCONTOURS.handles.EendTime,''String'') );',...
'set(EEGCONTOURS.handles.EendTime, ''Value'',EEGCONTOURS.p.endTime, ''String'',num2str(EEGCONTOURS.p.endTime) );',...
'set(EEGCONTOURS.gui,''Userdata'',EEGCONTOURS); clear EEGCONTOURS;'));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -