File indexing completed on 2024-05-26 04:33:01

0001 /*
0002  * This file is part of the KDE project
0003  *
0004  * SPDX-FileCopyrightText: Michael Thaler <michael.thaler@physik.tu-muenchen.de>
0005  *
0006  *  SPDX-License-Identifier: GPL-2.0-or-later
0007  */
0008 
0009 #ifndef _KIS_CHANNEL_SEPARATOR_H_
0010 #define _KIS_CHANNEL_SEPARATOR_H_
0011 
0012 class KoUpdater;
0013 class KisViewManager;
0014 
0015 enum enumSepAlphaOptions {
0016     COPY_ALPHA_TO_SEPARATIONS = 0,
0017     DISCARD_ALPHA = 1,
0018     CREATE_ALPHA_SEPARATION = 2
0019 };
0020 
0021 
0022 enum enumSepSource {
0023     CURRENT_LAYER = 0,
0024     ALL_LAYERS = 1,
0025     VISIBLE_LAYERS = 2
0026 };
0027 
0028 class KisChannelSeparator
0029 {
0030 
0031 public:
0032 
0033     KisChannelSeparator(KisViewManager * view);
0034     virtual ~KisChannelSeparator() {}
0035 
0036     void separate(KoUpdater * progress, enumSepAlphaOptions alphaOps, enumSepSource sourceOps, bool downscale, bool toColor, bool activateCurrentChannel);
0037 
0038 private:
0039 
0040     KisViewManager *m_viewManager;
0041 
0042 };
0043 
0044 #endif