Skip to content

Commit 82b5749

Browse files
committed
add option to show or hide cursor and alawys show it in debug mode
1 parent ff00c89 commit 82b5749

File tree

4 files changed

+49
-31
lines changed

4 files changed

+49
-31
lines changed

src/defaults/checkCppPtbCfg.m

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
if cfg.debug.do
3838
cfg.eyeTracker.do = false;
3939
cfg.skipSyncTests = 1;
40+
cfg.hideCursor = false;
4041
end
4142

4243
if cfg.skipSyncTests == false

src/defaults/cppPtbDefaults.m

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@
1414
value = struct('testingDevice', 'pc', ...
1515
'color', struct('background', [0 0 0]), ...
1616
'skipSyncTests', 0, ...
17-
'verbose', 1);
17+
'verbose', 1, ...
18+
'hideCursor', true);
1819

1920
value.aperture.type = 'none';
2021

src/initPTB.m

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,9 @@
5050
initDebug(cfg);
5151

5252
% Mouse
53-
HideCursor;
53+
if cfg.hideCursor
54+
HideCursor;
55+
end
5456

5557
%% Audio
5658
cfg = initAudio(cfg);

tests/test_checkCppPtbCfg.m

Lines changed: 43 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,14 @@ function test_checkCppPtbCfg_basic()
1414
cfg = checkCppPtbCfg();
1515

1616
% test data
17-
expectedCfg = cppPtbDefaults('all');
18-
expectedCfg.eyeTracker.do = false;
19-
expectedCfg.skipSyncTests = 1;
17+
expected = cppPtbDefaults('all');
18+
expected.eyeTracker.do = false;
19+
expected.debug.do = 1;
20+
expected.skipSyncTests = 1;
21+
expected.hideCursor= false;
2022

2123
% test
22-
assertEqual(expectedCfg, cfg);
24+
checkAllFields(cfg, expected);
2325

2426
end
2527

@@ -30,12 +32,13 @@ function test_setDefaultsPtb_no_debug()
3032
cfg = checkCppPtbCfg(cfg);
3133

3234
% test data
33-
expectedCfg = cppPtbDefaults('all');
34-
expectedCfg.debug.do = 0;
35-
expectedCfg.skipSyncTests = 0;
35+
expected = cppPtbDefaults('all');
36+
expected.debug.do = 0;
37+
expected.skipSyncTests = 0;
38+
expected.hideCursor= true;
3639

3740
% test
38-
assertEqual(expectedCfg, cfg);
41+
checkAllFields(cfg, expected);
3942

4043
end
4144

@@ -46,13 +49,14 @@ function test_setDefaultsPtb_overwrite()
4649
cfg = checkCppPtbCfg(cfg);
4750

4851
% test data
49-
expectedCfg = cppPtbDefaults('all');
50-
expectedCfg.screen.monitorWidth = 36;
51-
expectedCfg.eyeTracker.do = false;
52-
expectedCfg.skipSyncTests = 1;
52+
expected = cppPtbDefaults('all');
53+
expected.screen.monitorWidth = 36;
54+
expected.eyeTracker.do = false;
55+
expected.skipSyncTests = 1;
56+
expected.hideCursor= false;
5357

5458
% test
55-
assertEqual(expectedCfg, cfg);
59+
checkAllFields(cfg, expected);
5660

5761
end
5862

@@ -63,8 +67,8 @@ function test_setDefaultsPtb_audio()
6367
cfg = checkCppPtbCfg(cfg);
6468

6569
% test data
66-
expectedCfg = cppPtbDefaults('all');
67-
expectedCfg.audio = struct('do', true, ...
70+
expected = cppPtbDefaults('all');
71+
expected.audio = struct('do', true, ...
6872
'devIdx', [], ...
6973
'playbackMode', 1, ...
7074
'fs', 44100, ...
@@ -75,17 +79,18 @@ function test_setDefaultsPtb_audio()
7579
'startCue', 0, ...
7680
'waitForDevice', 1);
7781

78-
expectedCfg.audio.pushSize = expectedCfg.audio.fs * 0.010;
82+
expected.audio.pushSize = expected.audio.fs * 0.010;
7983

80-
expectedCfg.audio.requestOffsetTime = 1;
81-
expectedCfg.audio.reqsSampleOffset = expectedCfg.audio.requestOffsetTime * ...
82-
expectedCfg.audio.fs;
84+
expected.audio.requestOffsetTime = 1;
85+
expected.audio.reqsSampleOffset = expected.audio.requestOffsetTime * ...
86+
expected.audio.fs;
8387

84-
expectedCfg.eyeTracker.do = false;
85-
expectedCfg.skipSyncTests = 1;
88+
expected.eyeTracker.do = false;
89+
expected.skipSyncTests = 1;
90+
expected.hideCursor= false;
8691

8792
% test
88-
assertEqual(expectedCfg, cfg);
93+
checkAllFields(cfg, expected);
8994

9095
end
9196

@@ -96,14 +101,23 @@ function test_setDefaultsPtb_mri()
96101
cfg = checkCppPtbCfg(cfg);
97102

98103
% test data
99-
expectedCfg = cppPtbDefaults('all');
100-
expectedCfg.testingDevice = 'mri';
101-
expectedCfg.bids.mri.RepetitionTime = [];
102-
expectedCfg.pacedByTriggers.do = false;
103-
expectedCfg.eyeTracker.do = false;
104-
expectedCfg.skipSyncTests = 1;
104+
expected = cppPtbDefaults('all');
105+
expected.testingDevice = 'mri';
106+
expected.bids.mri.RepetitionTime = [];
107+
expected.pacedByTriggers.do = false;
108+
expected.eyeTracker.do = false;
109+
expected.skipSyncTests = 1;
110+
expected.hideCursor= false;
105111

106112
% test
107-
assertEqual(expectedCfg, cfg);
113+
checkAllFields(cfg, expected);
108114

109115
end
116+
117+
function checkAllFields(cfg, expected)
118+
fields = fieldnames(expected);
119+
for i = 1:numel(fields)
120+
% fields{i}
121+
assertEqual(cfg.(fields{i}), expected.(fields{i}));
122+
end
123+
end

0 commit comments

Comments
 (0)