~ubuntu-branches/ubuntu/karmic/photoprint/karmic

« back to all changes in this revision

Viewing changes to effects/ppeffect.h

  • Committer: Bazaar Package Importer
  • Author(s): Milan Zamazal
  • Date: 2007-05-01 16:32:13 UTC
  • mto: This revision was merged to the branch mainline in revision 3.
  • Revision ID: james.westby@ubuntu.com-20070501163213-k0gaendx7grjlmk5
Tags: upstream-0.3.5
ImportĀ upstreamĀ versionĀ 0.3.5

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#ifndef PPEFFECT_H
 
2
#define PPEFFECT_H
 
3
 
 
4
#include <gtk/gtkwindow.h>
 
5
#include <gdk/gdkpixbuf.h>
 
6
 
 
7
#include "../imagesource/imagesource.h"
 
8
 
 
9
enum PPEFFECT_STAGE {PPEFFECT_PRESCALE,PPEFFECT_POSTSCALE};
 
10
 
 
11
class PPEffect;
 
12
 
 
13
class PPEffectHeader
 
14
{
 
15
        public:
 
16
        PPEffectHeader();
 
17
        ~PPEffectHeader();
 
18
        ImageSource *ApplyEffects(ImageSource *source,enum PPEFFECT_STAGE stage);
 
19
        int EffectCount(enum PPEFFECT_STAGE stage);
 
20
        PPEffect *GetFirstEffect(enum PPEFFECT_STAGE stage);
 
21
        private:
 
22
        PPEffect *firsteffect;
 
23
        friend class PPEffect;
 
24
};
 
25
 
 
26
 
 
27
class PPEffect
 
28
{
 
29
        public:
 
30
        PPEffect(PPEffectHeader &header,enum PPEFFECT_STAGE stage);
 
31
        virtual ~PPEffect();
 
32
        virtual ImageSource *Apply(ImageSource *source)=0;
 
33
        virtual bool Dialog(GtkWindow *parent,GdkPixbuf *preview)=0;
 
34
        virtual PPEffect *Next(enum PPEFFECT_STAGE stage);
 
35
        virtual GdkPixbuf *GetIcon()=0;
 
36
        protected:
 
37
        enum PPEFFECT_STAGE stage;
 
38
        PPEffectHeader &header;
 
39
        PPEffect *prev,*next;
 
40
};
 
41
 
 
42
#endif