author | Tero Marttila <terom@fixme.fi> |
Sun, 14 Jun 2009 17:19:41 +0300 | |
changeset 112 | e990b7a54d40 |
parent 82 | c21d9145aabc |
child 118 | 60b126ff0b74 |
permissions | -rw-r--r-- |
64
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
1 |
""" |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
2 |
Top-level gallery state |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
3 |
""" |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
4 |
|
112
e990b7a54d40
only load the resources/pkg_resources stuff if needed - slight optimization for importing without referencing the stylesheet
Tero Marttila <terom@fixme.fi>
parents:
82
diff
changeset
|
5 |
import filesystem, folder |
64
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
6 |
|
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
7 |
from utils import lazy_load |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
8 |
|
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
9 |
class Gallery (filesystem.Root, folder.Folder) : |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
10 |
""" |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
11 |
A Gallery is a single place in the filesystem which acts as a Folder of Images, but had some additional stuff |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
12 |
""" |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
13 |
|
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
14 |
def __init__ (self, path, config) : |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
15 |
""" |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
16 |
Build a Gallery rooted at the given filesystem path, and using the given user configuration. |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
17 |
|
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
18 |
XXX: replace path with config.gallery_path? |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
19 |
""" |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
20 |
|
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
21 |
super(Gallery, self).__init__(path, config) |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
22 |
|
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
23 |
@lazy_load |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
24 |
def degal_dir (self) : |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
25 |
""" |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
26 |
The dir containing the degal configuration. |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
27 |
|
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
28 |
It will be created if it does not exist. |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
29 |
""" |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
30 |
|
73
8897352630a5
misc. stuff in gallery.py utils.py
Tero Marttila <terom@fixme.fi>
parents:
64
diff
changeset
|
31 |
return self.subdir('.degal', create=True) |
8897352630a5
misc. stuff in gallery.py utils.py
Tero Marttila <terom@fixme.fi>
parents:
64
diff
changeset
|
32 |
|
64
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
33 |
@lazy_load |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
34 |
def stylesheet (self) : |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
35 |
""" |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
36 |
The stylesheet file. |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
37 |
|
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
38 |
It will be copied from internal resources if it does not exist. |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
39 |
""" |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
40 |
|
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
41 |
stylesheet = self.degal_dir.subfile('style.css') |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
42 |
|
82
c21d9145aabc
fix Gallery.stylesheet to actually copy it into place
Tero Marttila <terom@fixme.fi>
parents:
77
diff
changeset
|
43 |
if not stylesheet.exists() : |
112
e990b7a54d40
only load the resources/pkg_resources stuff if needed - slight optimization for importing without referencing the stylesheet
Tero Marttila <terom@fixme.fi>
parents:
82
diff
changeset
|
44 |
# load the resources dir |
e990b7a54d40
only load the resources/pkg_resources stuff if needed - slight optimization for importing without referencing the stylesheet
Tero Marttila <terom@fixme.fi>
parents:
82
diff
changeset
|
45 |
from resource import STATIC_DIR |
e990b7a54d40
only load the resources/pkg_resources stuff if needed - slight optimization for importing without referencing the stylesheet
Tero Marttila <terom@fixme.fi>
parents:
82
diff
changeset
|
46 |
|
e990b7a54d40
only load the resources/pkg_resources stuff if needed - slight optimization for importing without referencing the stylesheet
Tero Marttila <terom@fixme.fi>
parents:
82
diff
changeset
|
47 |
# copy it from the static resource file |
e990b7a54d40
only load the resources/pkg_resources stuff if needed - slight optimization for importing without referencing the stylesheet
Tero Marttila <terom@fixme.fi>
parents:
82
diff
changeset
|
48 |
stylesheet.copy_from(STATIC_DIR.subfile('style.css')) |
64
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
49 |
|
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
50 |
return stylesheet |
4ebd563214d2
begin implementation of folder, gallery
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
51 |
|
77
2a53c5ade434
misc. fixes, it runs now, but HTML output is corrupt (no flattening)
Tero Marttila <terom@fixme.fi>
parents:
73
diff
changeset
|
52 |
@lazy_load |
2a53c5ade434
misc. fixes, it runs now, but HTML output is corrupt (no flattening)
Tero Marttila <terom@fixme.fi>
parents:
73
diff
changeset
|
53 |
def version (self) : |
2a53c5ade434
misc. fixes, it runs now, but HTML output is corrupt (no flattening)
Tero Marttila <terom@fixme.fi>
parents:
73
diff
changeset
|
54 |
""" |
2a53c5ade434
misc. fixes, it runs now, but HTML output is corrupt (no flattening)
Tero Marttila <terom@fixme.fi>
parents:
73
diff
changeset
|
55 |
Return version string |
2a53c5ade434
misc. fixes, it runs now, but HTML output is corrupt (no flattening)
Tero Marttila <terom@fixme.fi>
parents:
73
diff
changeset
|
56 |
""" |
2a53c5ade434
misc. fixes, it runs now, but HTML output is corrupt (no flattening)
Tero Marttila <terom@fixme.fi>
parents:
73
diff
changeset
|
57 |
|
2a53c5ade434
misc. fixes, it runs now, but HTML output is corrupt (no flattening)
Tero Marttila <terom@fixme.fi>
parents:
73
diff
changeset
|
58 |
return "???" |