%-----------------keyPressCallback--------------------------- function keyPressCallback(obj, eventdata, mfn) global theVars; in = get(obj,'CurrentCharacter'); switch (in) case 'a' %Adjacency if(theVars(mfn).clickBehaviorChar ~= 'a') theVars(mfn).clickBehaviorChar = 'a'; allBackOn(mfn); updateClickTypeInfo(mfn); if(theVars(mfn).clickLevelNum==1) msg = 'Click to expand the graph around any verb by one more level'; else msg = sprintf('Click to expand the graph around any verb to exactly %d levels\n',theVars(mfn).clickLevelNum); end; writeUserMessage(mfn,{msg}); else msg = sprintf('already in ADJACENCY mode, level %d\n', ... theVars(mfn).clickLevelNum); writeUserMessage(mfn,{msg}); end; case 's' %Similarity if(theVars(mfn).clickBehaviorChar ~= 's') theVars(mfn).clickBehaviorChar = 's'; allBackOn(mfn); updateClickTypeInfo(mfn); msg = 'Click repeatedly on a single verb to see the next most similar verb'; writeUserMessage(mfn,{msg}); else writeUserMessage(mfn,{'already in similarity mode'}); end; case {'1','2','3','4','5','6','7','8','9'} %NOT zero! if(theVars(mfn).clickBehaviorChar == 'a') theVars(mfn).clickLevelNum = str2num(in); updateClickTypeInfo(mfn); if(theVars(mfn).clickLevelNum==1) msg = 'Click to expand the graph around any verb by one more level'; else msg = sprintf('Click to expand the graph around any verb to exactly %d levels\n',theVars(mfn).clickLevelNum); end; writeUserMessage(mfn,{msg}); end; case 'o' %reset: turn all axes on allBackOn(mfn); case 'n' %toggle name label visibility if(strcmp(get(theVars(mfn).nameHandles(1),'Visible'),'on')) set(theVars(mfn).nameHandles,'Visible','off'); else set(theVars(mfn).nameHandles,'Visible','on'); end; case 'x' %eXpand makeNewWindowWithVisible(mfn); case 't' %launch ParameterExplorer window makeThresholdTester(mfn); case 'v' %View new data set: dialog to create a new connection map %diagram based on a different data set additionalDataDialog(mfn); case 'f' %Find: enter element by name to get its coordinates (will %automatically toggle 'c' findElementWindow(mfn); case 'c' %show/hide coords isVisible = get(theVars(mfn).theAxesHandles(1).coordsText,'Visible'); if(strcmp(isVisible,'on')) set([theVars(mfn).theAxesHandles.coordsText],'Visible','off'); else set([theVars(mfn).theAxesHandles.coordsText],'Visible','on'); end; case 'N' %nametype toggle if(strcmp(get(theVars(mfn).nameHandles(1),'String'), ... theVars(mfn).targets{1})) %convert back to regular names set(theVars(mfn).nameHandles,{'String'},theVars(mfn).names); else %show targets as names set(theVars(mfn).nameHandles,{'String'},theVars(mfn).targets); end; otherwise %unsupported key press, do nothing end;