blob: 2e800234b84cf1f958766d0d22c2a555782a61ec (
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
|
- regression: did the last change from bmeyer break resize handling when the
statusbar is shown/hidden? How can it be fixed if not reverted?
- KView Canvas Widget
- alpha blending
- faster zooming (how? perhaphs I can create smaller pixmaps and only the ones visible are
really calculated and shown)
- partial loading
- Configuration Dlg
- Printing
- Gibt es einen Befehl, mit dem man z.B. Fotogröße 9x13 bzw. 10x15 eingeben
kann? (option in printing dialog to select photo size 9x13, 10x15)
- print in original size (look at dpi info in image file if present and
allow the user to override the value)
- Architectural stuff
- Add "playlist" to the imageviewer interface:
The Viewer should support, somehow, that a list of images is to be shown as
a slideshow. Plugins can then work with that "playlist" instead of messing
around with internals like the presenter plugin does.
- This would make preloading (and caching) the images possible.
- Caching: currently the canvas doesn't do anything with files while the
viewer only calls QImage( QByteArray ) or QImage( filename ). Therefor the
Viewer has to cache the loading of images while the canvas would have to
cache the zoomed images and pixmaps.
It would be no problem to make the canvas work on files and bytearrays
(with the additional way of passing QImages) and make the Viewer only use
the Canvas' functionality in working with images. The Viewer would
basically rely on the canvas for most of the work.
- Effects Plugin:
- Good enough for now, but if this plugin should support more effects I
should think about creating an interface for effect classes:
Something like:
class Effect
{
QString dialogTitle() const = 0;
QWidget * dialogWidget() = 0;
/* @returns whether @ref applyEffect() would create the same image as
* last time or a changed one */
bool changed() const = 0;
void applyEffect( QImage & ) = 0;
};
- Brightness Adjustment
- Greyscale conversion
- Smoothing
- Image info
- Handle resizing of the image area using an event filter? Instead of calling
handleResize() everywhere it could resize the image area this would always
call the function when the image area resizes (if it works).
- show modified state in titlebar
- new config option to set KView into read-only mode: remove all edit
functionality and use the ReadOnly KPart. This disables the annoying question
whether you want to save changes when all you wanted to do was to look at the
image from a different angle :-)
- If an image is deleted but hasn't changed in the viewer it might happen that
you can't save the file again.
KView should stat the file and if it's deleted save it regardless of whether
the image was modified or not.
- move the configuration of resize handling into a menu and remove it from the
configuration dialog (or should it be kept - dunno)
- config option to always rotate the image so that it's shown with maximum size
|