summaryrefslogtreecommitdiffstats
path: root/src/extension/internal/filter/filter-all.cpp
blob: 5aa3900b089e05edf15ca1771cfd7dc7991274c2 (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
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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Copyright (C) 2008 Authors:
 *   Ted Gould <ted@gould.cx>
 *
 * Released under GNU GPL v2+, read the file 'COPYING' for more information.
 */

#include "filter.h"

/* Put your filter here */
#include "bevels.h"
#include "blurs.h"
#include "bumps.h"
#include "color.h"
#include "distort.h"
#include "image.h"
#include "morphology.h"
#include "overlays.h"
#include "paint.h"
#include "protrusions.h"
#include "shadows.h"
#include "textures.h"
#include "transparency.h"

namespace Inkscape {
namespace Extension {
namespace Internal {
namespace Filter {


void
Filter::filters_all ( )
{
	// Here come the filters which are coded in C++ in order to present a parameters dialog

    /* Experimental custom predefined filters */

    // Bevels
    DiffuseLight::init();
    MatteJelly::init();
    SpecularLight::init();

    // Blurs
    Blur::init();
    CleanEdges::init();
    CrossBlur::init();
    Feather::init();
    ImageBlur::init();
    
    // Bumps
    Bump::init();
    WaxBump::init();

    // Color
    Brilliance::init();
    ChannelPaint::init();
    ColorBlindness::init();
    ColorShift::init();
    Colorize::init();
    ComponentTransfer::init();
    Duochrome::init();
    ExtractChannel::init();
    FadeToBW::init();
    Greyscale::init();
    Invert::init();
    Lighting::init();
    LightnessContrast::init();
    NudgeRGB::init();
    NudgeCMY::init();
    Quadritone::init();
    SimpleBlend::init();
    Solarize::init();
    Tritone::init();

    // Distort
    FeltFeather::init();
    Roughen::init();

    // Image effect
    EdgeDetect::init();

    // Image paint and draw
    Chromolitho::init();
    CrossEngraving::init();
    Drawing::init();
    Electrize::init();
    NeonDraw::init();
    PointEngraving::init();
    Posterize::init();
    PosterizeBasic::init();

    // Morphology
    Crosssmooth::init();
    Outline::init();

    // Overlays
    NoiseFill::init();

    // Protrusions
    Snow::init();

    // Shadows and glows
    ColorizableDropShadow::init();

    // Textures
    InkBlot::init();
    
    // Fill and transparency
    Blend::init();
    ChannelTransparency::init();
    LightEraser::init();
    Opacity::init();
    Silhouette::init();

	// Here come the rest of the filters that are read from SVG files in share/filters and
	// .config/Inkscape/filters
	/* This should always be last, don't put stuff below this
	 * line. */
	Filter::filters_all_files();

	return;
}

}; /* namespace Filter */
}; /* namespace Internal */
}; /* namespace Extension */
}; /* namespace Inkscape */