Skip to content

Commit 886e3ea

Browse files
committed
Add image previewer core addon
1 parent 4fde785 commit 886e3ea

File tree

11 files changed

+75
-8
lines changed

11 files changed

+75
-8
lines changed

addons/aceeditor/addon-built.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

addons/aceeditor/client.js

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ define([
1010
var settings = codebox.require("core/settings");
1111
var files = codebox.require("core/files");
1212
var config = codebox.require("config");
13+
var languages = codebox.require("utils/languages");
1314

1415
// Configure ace
1516
var aceconfig = ace.require("ace/config");
@@ -86,12 +87,22 @@ define([
8687
}
8788
});
8889

90+
// Build code files extensions list
91+
var textExts = _.reduce(languages.LIST, function(list, language) {
92+
list = list.concat(language.extensions || []);
93+
if (language.primary_extension) list.push(language.primary_extension);
94+
return list;
95+
}, [
96+
// Defaults extensions
97+
'.txt'
98+
]);
99+
89100
// Add files handler
90101
files.addHandler("ace", {
91102
name: "ACE Code Editor",
92103
View: FileEditorView,
93104
valid: function(file) {
94-
return !file.isDirectory();
105+
return (!file.isDirectory() && _.contains(textExts, file.extension()));
95106
}
96107
});
97108

addons/explorer/package.json

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,6 @@
1111
"url": "http://samypesse.fr"
1212
},
1313
"client": {
14-
"main": "client",
15-
"provides": [
16-
"filesManager"
17-
]
14+
"main": "client"
1815
}
1916
}

addons/imageviewer/addon-built.js

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

addons/imageviewer/client.js

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
define([
2+
"views/image"
3+
], function(FileImageView) {
4+
var _ = codebox.require("underscore");
5+
var files = codebox.require("core/files");
6+
7+
var imageExts = [
8+
".png", ".jpg", ".gif", ".tiff", ".jpeg", ".bmp", ".webp", ".svg"
9+
];
10+
11+
files.addHandler("imageviewer", {
12+
name: "Image Viewer",
13+
View: FileImageView,
14+
valid: function(file) {
15+
return (!file.isDirectory() && _.contains(imageExts, file.extension()));
16+
}
17+
});
18+
});

addons/imageviewer/package.json

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"name": "imageviewer",
3+
"version": "0.0.1",
4+
"title": "Image Viewer",
5+
"description": "Images files viewer.",
6+
"homepage": "https://github.com/FriendCode/codebox",
7+
"license": "Apache",
8+
"author": {
9+
"name": "Samy Pessé",
10+
"email": "samypesse@gmaiL.com",
11+
"url": "http://samypesse.fr"
12+
},
13+
"client": {
14+
"main": "client"
15+
}
16+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
.addon-files-aceeditor {
2+
.image {
3+
4+
}
5+
}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
<div class="tab-panel-body" style="background: url(<%- file.get("href") %>) no-repeat center;"></div>

addons/imageviewer/views/image.js

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
define([
2+
"less!stylesheets/image.less"
3+
], function() {
4+
var _ = codebox.require("underscore");
5+
var $ = codebox.require("jQuery");
6+
var hr = codebox.require("hr/hr");
7+
var Dialogs = codebox.require("utils/dialogs");
8+
var FilesBaseView = codebox.require("views/files/base");
9+
10+
var FileImageView = FilesBaseView.extend({
11+
className: "addon-files-imageviewer",
12+
templateLoader: "addon.imageviewer.templates",
13+
template: "image.html",
14+
events: {}
15+
});
16+
17+
return FileImageView;
18+
});

client/core/files.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ define([
8787

8888
var handlers = getHandlers(file);
8989
if (_.size(handlers) == 0) {
90-
dialogs.alert("No handler for this file", "Sorry, No handler has been found to open this file. Try to find and install an addon to manage this file.");
90+
dialogs.alert("Can't open this file", "Sorry, No handler has been found to open this file. Try to find and install an addon to manage this file.");
9191
return Q.reject(new Error("No handler for this file"));
9292
}
9393

0 commit comments

Comments
 (0)