mirror of
				https://github.com/flynx/ImageGrid.git
				synced 2025-11-04 05:10:07 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			146 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			146 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
		
			Executable File
		
	
	
	
	
/*********************************************************************/
 | 
						|
// NOTE: use String.fromCharCode(code)...
 | 
						|
// list of keys to be ignored by handler but still handled by the browser...
 | 
						|
 | 
						|
var keybindings = {
 | 
						|
	// global bindings...
 | 
						|
	'*': {
 | 
						|
		title: 'Global',
 | 
						|
		doc: '',
 | 
						|
 | 
						|
		ignore: [
 | 
						|
			116,												//	F5
 | 
						|
			123,												//	F12
 | 
						|
		],
 | 
						|
 | 
						|
		// togglable modes and options...
 | 
						|
		191: {
 | 
						|
			'default':	ImageGrid.showKeyboardBindings,			//	?
 | 
						|
			'ctrl':		ImageGrid.showSetup,					//	ctrl+?
 | 
						|
		},
 | 
						|
		80:		ImageGrid.showSetup,							//	p
 | 
						|
		70:		ImageGrid.toggleSingleImageMode,				//	f
 | 
						|
		13:		70,												//	Enter
 | 
						|
		83:		ImageGrid.toggleSingleRibbonMode,				//	s
 | 
						|
		84:		ImageGrid.toggleSingleImageModeTransitions,		//	t
 | 
						|
		65:		ImageGrid.toggleTransitions,					//	a
 | 
						|
		9:		ImageGrid.toggleControls,						//	tab
 | 
						|
		66:		ImageGrid.toggleBackgroundModes,				//	b
 | 
						|
		73:		ImageGrid.toggleCurrentRibbonOpacity,			//	i
 | 
						|
		78:		ImageGrid.toggleInfo,							//	n
 | 
						|
		77:		toggleMarkers,									//	m
 | 
						|
 | 
						|
		87:		ImageGrid.saveState,							//	w
 | 
						|
 | 
						|
		27:		ImageGrid.closeOverlay,							//	Esc	
 | 
						|
 | 
						|
		// ignore the modifiers (shift, alt, ctrl, caps)...
 | 
						|
		16:		function(){},
 | 
						|
		17:		16,
 | 
						|
		18:		16,
 | 
						|
		20:		16,												//	Caps Lock
 | 
						|
 | 
						|
		// refresh...
 | 
						|
		// XXX make this into a real action...
 | 
						|
		116:	function(){ return DEBUG?true:false },			//	F5
 | 
						|
		112:	116,											//	F12
 | 
						|
	},
 | 
						|
 | 
						|
 | 
						|
	// overlay...
 | 
						|
	'.overlay-mode': {
 | 
						|
		title: 'Overlay mode',
 | 
						|
		doc: 'Overlay mode key bindings.',
 | 
						|
 | 
						|
		ignore: [
 | 
						|
			33,													//	PgUp
 | 
						|
			34,													//	PgDown
 | 
						|
			37,													//	Left
 | 
						|
			39,													//	Right
 | 
						|
			36,													//	Home
 | 
						|
			32,													//	Space
 | 
						|
			35,													//	End
 | 
						|
			38,													//	Up
 | 
						|
			40,													//	Down
 | 
						|
		],
 | 
						|
	},
 | 
						|
 | 
						|
 | 
						|
	// everything except overlays...
 | 
						|
	'.viewer *:not(.overlay-mode *)': {
 | 
						|
		title: 'Ribbon and Viewer',
 | 
						|
		doc: '',
 | 
						|
 | 
						|
		// zooming...
 | 
						|
		187:	ImageGrid.scaleContainerUp,						//	+
 | 
						|
		189:	ImageGrid.scaleContainerDown,					//	-
 | 
						|
		// zoom presets...
 | 
						|
		48:	{
 | 
						|
			'default':	ImageGrid.centerCurrentImage,			// 	0
 | 
						|
			// XXX make this into a real action...
 | 
						|
			'ctrl':		ImageGrid.fitImage,						//	ctrl+0
 | 
						|
		},
 | 
						|
		49:		ImageGrid.fitImage,								//	1
 | 
						|
		50:		ImageGrid.fitTwoImages,							//	2
 | 
						|
		51:		ImageGrid.fitThreeImages,						//	3
 | 
						|
		52:		ImageGrid.fitFourImages,						//	4
 | 
						|
		53:		ImageGrid.fitFiveImages,						//	5
 | 
						|
		54:		ImageGrid.fitSixImages,							//	6
 | 
						|
		55:		ImageGrid.fitSevenImages,						//	7
 | 
						|
		56:		ImageGrid.fitEightImages,						//	8
 | 
						|
		57:		ImageGrid.fitNineImages,						//	9
 | 
						|
 | 
						|
 | 
						|
		// navigation...
 | 
						|
		36:		ImageGrid.firstImage,							//	Home
 | 
						|
		219:	36,												//	[
 | 
						|
		35:		ImageGrid.lastImage,							//	End
 | 
						|
		221:	35,												//	]
 | 
						|
		37:	{
 | 
						|
			'default': ImageGrid.prevImage,						//	Right
 | 
						|
			'ctrl': ImageGrid.prevScreenImages,					//	ctrl-Right
 | 
						|
			'alt': ImageGrid.prevScreenImages,					//	alt-Right
 | 
						|
		},
 | 
						|
		8: 		37, 											// 	BkSp
 | 
						|
		188:	37,												//	<
 | 
						|
		39:	{
 | 
						|
			'default': ImageGrid.nextImage,						//	Left
 | 
						|
			'ctrl': ImageGrid.nextScreenImages,					//	ctrl-Left
 | 
						|
			'alt': ImageGrid.nextScreenImages,					//	alt-Left
 | 
						|
		},
 | 
						|
		32:		39,												//	Space
 | 
						|
		190:	39,												//	>
 | 
						|
		186:	ImageGrid.prevScreenImages,						//	;
 | 
						|
		222:	ImageGrid.nextScreenImages,						//	'
 | 
						|
		// move view...
 | 
						|
		// XXX should these be s-up, s-down, ... ??
 | 
						|
		75:		ImageGrid.moveViewUp,							//	k
 | 
						|
		74:		ImageGrid.moveViewDown,							//	j
 | 
						|
		72:		ImageGrid.moveViewLeft,							//	h
 | 
						|
		76:		ImageGrid.moveViewRight,						//	l
 | 
						|
		// XXX use this to open...
 | 
						|
		//79:		ImageGrid.centerCurrentImage,					//	o
 | 
						|
 | 
						|
 | 
						|
		// combined navigation with actions..
 | 
						|
		38: {
 | 
						|
			'default': ImageGrid.focusAboveRibbon,				//	Up
 | 
						|
			'shift': ImageGrid.shiftImageUp,					//	shift-Up
 | 
						|
			'ctrl+shift': ImageGrid.shiftImageUpNewRibbon		//	ctrl-shift-Up
 | 
						|
		},
 | 
						|
		40:	{
 | 
						|
			'default': ImageGrid.focusBelowRibbon,				//	Down
 | 
						|
			'shift': ImageGrid.shiftImageDown,					//	shift-Down
 | 
						|
			'ctrl+shift': ImageGrid.shiftImageDownNewRibbon		//	ctrl-shift-Down
 | 
						|
		},
 | 
						|
 | 
						|
		// misc actions...
 | 
						|
		82:		ImageGrid.reverseImageOrder,					//	r
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
 | 
						|
/*********************************************************************/
 | 
						|
// vim:set ts=4 sw=4 nowrap :
 |