blob: 70c48071f28a5eb26e3898caf4aa2a593ec82863 (
plain)
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
|
If you intend to work on any of these issues, please contact
Federico Mena-Quintero (federico@gimp.org).
* Finish the ImageView widget:
- Write a "fast" version of uta.c:uta_find_first_glom_rect().
Right now we just have a hacked version of libart's
function.
- Figure out what to do with the color correction tables; we
are not using them right now.
* Turn the UIImage widget into a Bonobo control ("I want an image
viewer in my application"):
- Write a CORBA interface for the control's methods (set zoom,
set image, etc.).
- See what user interface elements such as toolbar/menu items
it needs, and put them in the control's machinery for
toolbar/menu merging.
- See if it should support some of the PersistStream hydration
methods.
* Make the main program be a simple shell (like the Evolution shell)
where the main image viewer Bonobo control is inserted:
- Remove all the "window modes" crap from window.c.
- Maybe we should have several different types of window
classes: one for holding just a viewer control (windowed
image viewing); one for holding all the directory browsing
controls; one for holding the image collection browsing
controls.
* Finish the GnomeIconView!!!
* Write a directory browser. Maybe this should be done using Nautilus
controls, or maybe we should have a simple and dumb thing of our
own.
* Write the image category mechanism.
* Write the image collection mechanism and its GUI.
* Write a Bonobo embeddable ("I want to embed an image in my
document"):
- Add separate zoom factors for the vertical and horizontal
dimensions to the ImageView widget. This is required so
that the parent can resize the image in any way.
- Write a CORBA interface for the embeddable's methods. What
does it need?
* Progressive loading. Write something like
typedef struct {
GdkPixbufLoader *loader;
GdkPixbuf *result;
ArtUta *loaded_area;
} ImageLoadContext;
to allow images to be loaded progressively in the idle loop. This
should be interruptible, etc.
* Animation support:
- Enhance the above structure to support animations.
- Make the ImageView widget understand animations. What to do
about tearing when compositing the frames? Should we
special-case animations and blast them to the screen whole
without tearing?
Maybe we can blast each frame at the proper time without
tearing, and only use the normal tearing method when the
user changes the zoom/scroll.
* Write the user's, programmer's, and API reference manuals.
|