mirror of
				https://github.com/flynx/ImageGrid.git
				synced 2025-10-30 19:00:09 +00:00 
			
		
		
		
	started work on the fs loader...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
		
							parent
							
								
									3eb788b02e
								
							
						
					
					
						commit
						d727691977
					
				| @ -319,7 +319,15 @@ function(path, logger){ | ||||
| 				// collect the found indexes...
 | ||||
| 				.on('match', function(path){ | ||||
| 					loadIndex(path, logger)  | ||||
| 						.done(function(obj){ res[path] = obj[path] }) | ||||
| 						.done(function(obj){  | ||||
| 							// NOTE: considering that all the paths within
 | ||||
| 							// 		the index are relative to the preview 
 | ||||
| 							// 		dir (the parent dir to the index root)
 | ||||
| 							// 		we do not need to include the index 
 | ||||
| 							// 		itself in the base path...
 | ||||
| 							var p = path.split(INDEX_DIR)[0] | ||||
| 							res[p] = obj[path]  | ||||
| 						}) | ||||
| 				}) | ||||
| 				// done...
 | ||||
| 				.on('end', function(paths){ | ||||
|  | ||||
| @ -1115,6 +1115,12 @@ var RibbonsPrototype = { | ||||
| 			// preview...
 | ||||
| 			var p_url = that.images.getBestPreview(img_data.id, size, img_data).url | ||||
| 
 | ||||
| 			// XXX experimental...
 | ||||
| 			if(img_data.base != null){ | ||||
| 				// XXX need to check if p_url is already absolute...
 | ||||
| 				p_url = img_data.base +'/'+ p_url | ||||
| 			} | ||||
| 
 | ||||
| 			// update the preview if it's a new image or...
 | ||||
| 			// XXX this should be pushed as far back as possible...
 | ||||
| 			if(old_gid != gid  | ||||
|  | ||||
| @ -282,7 +282,7 @@ $(function(){ | ||||
| 
 | ||||
| 	// setup base keyboard for devel, in case something breaks...
 | ||||
| 	// This branch does not drop keys...
 | ||||
| 	if(module.MAX_KEY_REPEAT_RATE < 0 || module.MAX_KEY_REPEAT_RATE == null){ | ||||
| 	if(a.config['max-key-repeat-rate'] < 0 || a.config['max-key-repeat-rate'] == null){ | ||||
| 		$(document) | ||||
| 			.keydown( | ||||
| 				keyboard.makeKeyboardHandler( | ||||
| @ -305,8 +305,7 @@ $(function(){ | ||||
| 						}, | ||||
| 						a),  | ||||
| 					function(){  | ||||
| 						// XXX get this from config...
 | ||||
| 						return module.MAX_KEY_REPEAT_RATE | ||||
| 						return a.config['max-key-repeat-rate'] | ||||
| 					})) | ||||
| 	} | ||||
| }) | ||||
|  | ||||
| @ -810,8 +810,9 @@ var ViewerActions = | ||||
| module.ViewerActions =  | ||||
| actions.Actions({ | ||||
| 
 | ||||
| 	/* | ||||
| 	// Images...
 | ||||
| 	// XXX this seems like a hack...
 | ||||
| 	// 		...should this be here???
 | ||||
| 	get images(){ | ||||
| 		return this.ribbons != null ? this.ribbons.images : null | ||||
| 	}, | ||||
| @ -821,7 +822,6 @@ actions.Actions({ | ||||
| 			this.ribbons.images = value | ||||
| 		} | ||||
| 	}, | ||||
| 	*/ | ||||
| 
 | ||||
| 	get screenwidth(){ | ||||
| 		return this.ribbons != null ? this.ribbons.getScreenWidthImages() : null | ||||
| @ -1329,6 +1329,14 @@ module.Viewer = ImageGridFeatures.Feature({ | ||||
| 		// ...this effectively sets the closest distance an image can be from
 | ||||
| 		// the viewer edge...
 | ||||
| 		'fit-overflow': 0.2, | ||||
| 
 | ||||
| 		 | ||||
| 		// limit key repeat to one per N milliseconds.
 | ||||
| 		//
 | ||||
| 		// Set this to -1 or null to run keys without any limitations.
 | ||||
| 		// XXX at this point the keyboard is setup in ui.js, need to 
 | ||||
| 		// 		move to a more logical spot...
 | ||||
| 		'max-key-repeat-rate': 0, | ||||
| 	}, | ||||
| 
 | ||||
| 	actions: ViewerActions, | ||||
| @ -2889,6 +2897,55 @@ module.AppControl = ImageGridFeatures.Feature({ | ||||
| 
 | ||||
| //---------------------------------------------------------------------
 | ||||
| // XXX at this point this is a stub...
 | ||||
| if(window.nodejs != null){ | ||||
| 	var file = requirejs('./file') | ||||
| } | ||||
| 
 | ||||
| var FileSystemLoaderActions = actions.Actions({ | ||||
| 	// XXX
 | ||||
| 	loadPath: ['File/', | ||||
| 		function(path){ | ||||
| 			var that = this | ||||
| 			// XXX does not appear to load correctly...
 | ||||
| 			file.loadIndex(path) | ||||
| 				.done(function(res){ | ||||
| 					// XXX res may contain multiple indexes, need to 
 | ||||
| 					// 		combine them...
 | ||||
| 					var k = Object.keys(res)[0] | ||||
| 
 | ||||
| 					// XXX use the logger...
 | ||||
| 					console.log('LOADING:', k) | ||||
| 
 | ||||
| 					var d = data.Data.fromJSON(res[k].data) | ||||
| 					// XXX need to load tags, marks, bookmarks, ...
 | ||||
| 					// XXX
 | ||||
| 
 | ||||
| 					// XXX need to make this segment specific...
 | ||||
| 					d.base = k | ||||
| 
 | ||||
| 					// XXX STUB remove ASAP... 
 | ||||
| 					// 		...need a real way to handle base dir, possible
 | ||||
| 					// 		approaches:
 | ||||
| 					// 			1) .base attr in image, set on load and 
 | ||||
| 					// 				do not save (or ignore on load)...
 | ||||
| 					// 				if exists prepend to all paths...
 | ||||
| 					// 				- more to do in view-time
 | ||||
| 					// 				+ more flexible
 | ||||
| 					// 			2) add/remove on load/save (approach below)
 | ||||
| 					// 				+ less to do in real time
 | ||||
| 					// 				- more processing on load/save
 | ||||
| 					var img = images.Images(res[k].images) | ||||
| 						.forEach(function(_, img){ img.base = k }) | ||||
| 
 | ||||
| 					that.load({ | ||||
| 						data: d, | ||||
| 						images: img, | ||||
| 					}) | ||||
| 				}) | ||||
| 		}], | ||||
| }) | ||||
| 
 | ||||
| 
 | ||||
| var FileSystemLoader =  | ||||
| module.FileSystemLoader = ImageGridFeatures.Feature({ | ||||
| 	title: '', | ||||
| @ -2896,6 +2953,8 @@ module.FileSystemLoader = ImageGridFeatures.Feature({ | ||||
| 
 | ||||
| 	tag: 'fs-loader', | ||||
| 
 | ||||
| 	actions: FileSystemLoaderActions, | ||||
| 
 | ||||
| 	isApplicable: function(){ | ||||
| 		return window.nodejs != null | ||||
| 	}, | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user