comparison import/myrrdin/imagecache.d @ 5:f4b89014ad39

added moving figure stuff + animated sprites. not usable atm.
author fred@reichbier.de
date Sat, 19 Jul 2008 14:33:08 +0200
parents src/imagecache.d@a2d653eb9e99
children 510541745cd1
comparison
equal deleted inserted replaced
4:292df259cc85 5:f4b89014ad39
1 /*
2 This file is part of myrrdin.
3
4 myrrdin is free software: you can redistribute it and/or modify
5 it under the terms of the GNU Lesser General Public License as
6 published by the Free Software Foundation, either version 3 of
7 the License, or (at your option) any later version.
8
9 myrrdin is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU Lesser General Public License for more details.
13
14 You should have received a copy of the GNU Lesser General Public
15 License along with myrrdin. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18 module imagecache;
19
20 import dsfml.window.all;
21 import dsfml.system.all;
22 import dsfml.graphics.all;
23
24 import tango.io.vfs.FileFolder;
25
26 class Cache {
27 private FileFolder filefolder;
28 private Image[char[]] images;
29
30 this(char[] folder) {
31 this.filefolder = new FileFolder(folder, false);
32 }
33
34 void load(char[] real_filename, char[] seen_filename) {
35 this.images[seen_filename] = new Image();
36 this.images[seen_filename].loadFromFile(real_filename);
37 }
38
39 Image get_image(char[] filename) {
40 if (!(filename in this.images)) {
41 this.load(this.filefolder.file(filename).toString(), filename);
42 }
43 return this.images[filename];
44 }
45 }