1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
- Keyboard shortcuts
zoom in (+ in addition to ctrl-+)
zoom out
Scrolling
- When you open a file that is already open, reload it ...
- 'Reload' menu item
- Display original size in the title
- Open a copy, save a copy (maybe)
- Properties
- Metadata
- Keep track of when files are used
- Limit size to 10000 most recently used files
- Recent files
- Full screen view
- Statusbar
- Size, position, color
- Show optionally
- Rotation
- Loading arrays of files
- Remember the directory in the open file dialog
Later:
- Pass through unknown properties in the metadata. (To be forwards
compatible). This is not hugely important. I don't really care all
that much about NFS mounted home directories where people run
different versions of siv.
Done:
- View toolbar
- Metadata
- Be less aggressive about saving it - we are
one-instance now.
- Handle startup notification across dbus
- When failing from the command line, print failure on stdout rather
than displaying an alert. (This doesn't work very well if the
process is running in the background, but still has a terminal).
- Icon
- Set the image as icon when one is loaded
- One-instance
- Make it one-instance with d-bus so that if you try to open the
same image twice, you will get the old window.
- Own the "siv.gnome.org" name, have a method to open a new
window (or present an existing one).
- On startup:
if (!own_name())
get_name().open (filename);
else
open (filename);
- Look at evince.
- "Open a copy"
- At that point, caching the meta data should be feasible (though it
should still deal with the case where someone presses Ctrl-C).
- Find out why it's so slow when loading huge images
- Icon
- If more than one instance of the application is
open, then things go haywrite.
Either only allow one open instance, or monitor the metadata file.
Or only write out the ones we have changed - ie., write-out
consists of reading the file into hash table, then modifying, then
writing out.
In fact, maybe we should just never cache the table in memory.
Just read it every time we need data from it.
If people put .gnome2 on NFS, then they lose.
- Set mimetypes in open dialog
- Dragging
- Remember position of empty window
- .desktop file
- Make sure filenames are escaped if they contains [ or ]
- About box
- Build system
- Meta data
- Save adjustment positions
- Open
|