Shinya Kitaoka 810553
#pragma once
Shinya Kitaoka 810553
Shinya Kitaoka 120a6e
// TODO:
Shinya Kitaoka 120a6e
// エフェクトの縮小表示時のアイコンのファイル名。要プラグインFxへの対応。ここに集めるのではなく、Fxに自己申告させるか、アイコン自体を無くす。 2016/1/12
Shinya Kitaoka 120a6e
// shun_iwasawa
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#ifndef FXICONMANAGER_H
Toshihiro Shimizu 890ddd
#define FXICONMANAGER_H
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#include "tcommon.h"
SodaPop 54b1a5
#include <qpixmap></qpixmap>
SodaPop 54b1a5
SodaPop 54b1a5
#undef DVAPI
SodaPop 54b1a5
#undef DVVAR
SodaPop 54b1a5
#ifdef TOONZQT_EXPORTS
SodaPop 54b1a5
#define DVAPI DV_EXPORT_API
SodaPop 54b1a5
#define DVVAR DV_EXPORT_VAR
SodaPop 54b1a5
#else
SodaPop 54b1a5
#define DVAPI DV_IMPORT_API
SodaPop 54b1a5
#define DVVAR DV_IMPORT_VAR
SodaPop 54b1a5
#endif
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class QPixmap;
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
namespace {
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
const struct {
Shinya Kitaoka 120a6e
  const char *fxType;
Shinya Kitaoka 120a6e
  const char *pixmapFilename;
Toshihiro Shimizu 890ddd
} fxTypeInfo[] = {
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
    {"checkBoardFx", "fx_checkboard"},
Shinya Kitaoka 120a6e
    {"colorCardFx", "fx_colorcard"},
Shinya Kitaoka 120a6e
    {"STD_tileFx", "fx_tile"},
Shinya Kitaoka 120a6e
    {"STD_blurFx", "fx_blur"},
Shinya Kitaoka 120a6e
    {"STD_directionalBlurFx", "fx_directionalblur"},
Shinya Kitaoka 120a6e
    {"STD_inoBlurFx", "fx_ino_blur"},
Shinya Kitaoka 120a6e
    {"STD_inoMotionBlurFx", "fx_ino_motionblur"},
Shinya Kitaoka 120a6e
    {"STD_inoRadialBlurFx", "fx_ino_radialblur"},
Shinya Kitaoka 120a6e
    {"STD_inoSpinBlurFx", "fx_ino_spinblur"},
Shinya Kitaoka 120a6e
    {"STD_localBlurFx", "fx_localblur"},
Shinya Kitaoka 120a6e
    {"STD_motionBlurFx", "fx_motionblur"},
Shinya Kitaoka 120a6e
    {"STD_radialBlurFx", "fx_radialblur"},
Shinya Kitaoka 120a6e
    {"STD_rotationalBlurFx", "fx_spinblur"},
Shinya Kitaoka 120a6e
    {"STD_freeDistortFx", "fx_freedistort"},
Shinya Kitaoka 120a6e
    {"STD_inoWarphvFx", "fx_ino_warphv"},
Shinya Kitaoka 120a6e
    {"STD_linearWaveFx", "fx_linearwave"},
Shinya Kitaoka 120a6e
    {"STD_perlinNoiseFx", "fx_perlinnoise"},
Shinya Kitaoka 120a6e
    {"STD_randomWaveFx", "fx_randomwave"},
Shinya Kitaoka 120a6e
    {"STD_rippleFx", "fx_ripple"},
Shinya Kitaoka 120a6e
    {"STD_warpFx", "fx_warp"},
Shinya Kitaoka 120a6e
    {"STD_diamondGradientFx", "fx_diamondgradient"},
Shinya Kitaoka 120a6e
    {"STD_fourPointsGradientFx", "fx_fourpoints"},
Shinya Kitaoka 120a6e
    {"STD_linearGradientFx", "fx_lineargradient"},
Shinya Kitaoka 120a6e
    {"STD_multiLinearGradientFx", "fx_multilineargradient"},
Shinya Kitaoka 120a6e
    {"STD_multiRadialGradientFx", "fx_multiradialgradient"},
Shinya Kitaoka 120a6e
    {"STD_radialGradientFx", "fx_radialgradient"},
Shinya Kitaoka 120a6e
    {"STD_spiralFx", "fx_spiral"},
Shinya Kitaoka 120a6e
    {"STD_squareGradientFx", "fx_squaregradient"},
Shinya Kitaoka 120a6e
    {"STD_toneCurveFx", "fx_tonecurve"},
Shinya Kitaoka 120a6e
    {"STD_inoChannelSelectorFx", "fx_ino_channelselector"},
Shinya Kitaoka 120a6e
    {"STD_inoDensityFx", "fx_ino_density"},
Shinya Kitaoka 120a6e
    {"STD_inohlsAddFx", "fx_ino_hlsadd"},
Shinya Kitaoka 120a6e
    {"STD_inohlsAdjustFx", "fx_ino_hlsadjust"},
Shinya Kitaoka 120a6e
    {"STD_inohsvAddFx", "fx_ino_hsvadd"},
Shinya Kitaoka 120a6e
    {"STD_inohsvAdjustFx", "fx_ino_hsvadjust"},
Shinya Kitaoka 120a6e
    {"STD_inoLevelAutoFx", "fx_ino_levelauto"},
Shinya Kitaoka 120a6e
    {"STD_inoLevelAutoInCameraFx", "fx_ino_levelautoincamera"},
Shinya Kitaoka 120a6e
    {"STD_inoLevelMasterFx", "fx_ino_levelmaster"},
Shinya Kitaoka 120a6e
    {"STD_inoLevelrgbaFx", "fx_ino_levelrgba"},
Shinya Kitaoka 120a6e
    {"STD_inoNegateFx", "fx_ino_negate"},
Shinya Kitaoka 120a6e
    {"STD_localTransparencyFx", "fx_localtransparency"},
Shinya Kitaoka 120a6e
    {"STD_multiToneFx", "fx_multitone"},
Shinya Kitaoka 120a6e
    {"STD_premultiplyFx", "fx_premultiply"},
Shinya Kitaoka 120a6e
    {"STD_rgbmCutFx", "fx_rgbmcut"},
Shinya Kitaoka 120a6e
    {"STD_rgbmFadeFx", "fx_rgbmfade"},
Shinya Kitaoka 120a6e
    {"STD_rgbmScaleFx", "fx_rgbmscale"},
Shinya Kitaoka 120a6e
    {"STD_sharpenFx", "fx_sharpen"},
Shinya Kitaoka 120a6e
    {"STD_fadeFx", "fx_transparency"},
Shinya Kitaoka 120a6e
    {"STD_inoOverFx", "fx_ino_over"},
Shinya Kitaoka 120a6e
    {"STD_inoCrossDissolveFx", "fx_ino_crossdissolve"},
Shinya Kitaoka 120a6e
    {"STD_inoDarkenFx", "fx_ino_darken"},
Shinya Kitaoka 120a6e
    {"STD_inoMultiplyFx", "fx_ino_multiply"},
Shinya Kitaoka 120a6e
    {"STD_inoColorBurnFx", "fx_ino_colorburn"},
Shinya Kitaoka 120a6e
    {"STD_inoLinearBurnFx", "fx_ino_linearburn"},
Shinya Kitaoka 120a6e
    {"STD_inoDarkerColorFx", "fx_ino_darkercolor"},
Shinya Kitaoka 120a6e
    {"STD_inoAddFx", "fx_ino_add"},
Shinya Kitaoka 120a6e
    {"STD_inoLightenFx", "fx_ino_lighten"},
Shinya Kitaoka 120a6e
    {"STD_inoScreenFx", "fx_ino_screen"},
Shinya Kitaoka 120a6e
    {"STD_inoColorDodgeFx", "fx_ino_colordodge"},
Shinya Kitaoka 120a6e
    {"STD_inoLinearDodgeFx", "fx_ino_lineardodge"},
Shinya Kitaoka 120a6e
    {"STD_inoLighterColorFx", "fx_ino_lightercolor"},
Shinya Kitaoka 120a6e
    {"STD_inoOverlayFx", "fx_ino_overlay"},
Shinya Kitaoka 120a6e
    {"STD_inoSoftLightFx", "fx_ino_softlight"},
Shinya Kitaoka 120a6e
    {"STD_inoHardLightFx", "fx_ino_hardlight"},
Shinya Kitaoka 120a6e
    {"STD_inoVividLightFx", "fx_ino_vividlight"},
Shinya Kitaoka 120a6e
    {"STD_inoLinearLightFx", "fx_ino_linearlight"},
Shinya Kitaoka 120a6e
    {"STD_inoPinLightFx", "fx_ino_pinlight"},
Shinya Kitaoka 120a6e
    {"STD_inoHardMixFx", "fx_ino_hardmix"},
Shinya Kitaoka 120a6e
    {"STD_inoDivideFx", "fx_ino_divide"},
Shinya Kitaoka 120a6e
    {"STD_inoSubtractFx", "fx_ino_subtract"},
Shinya Kitaoka 120a6e
    {"STD_backlitFx", "fx_backlit"},
Shinya Kitaoka 120a6e
    {"STD_bodyHighLightFx", "fx_bodyhighlight"},
Shinya Kitaoka 120a6e
    {"STD_castShadowFx", "fx_castshadow"},
Shinya Kitaoka 120a6e
    {"STD_glowFx", "fx_glow"},
Shinya Kitaoka 120a6e
    {"STD_inoFogFx", "fx_ino_fog"},
Shinya Kitaoka 120a6e
    {"STD_lightSpotFx", "fx_lightspot"},
Shinya Kitaoka 120a6e
    {"STD_raylitFx", "fx_raylit"},
Shinya Kitaoka 120a6e
    {"STD_targetSpotFx", "fx_targetspot"},
Shinya Kitaoka 120a6e
    {"STD_hsvKeyFx", "fx_hsvkey"},
Shinya Kitaoka 120a6e
    {"inFx", "fx_in"},
Shinya Kitaoka 120a6e
    {"outFx", "fx_out"},
Shinya Kitaoka 120a6e
    {"STD_rgbKeyFx", "fx_rgbkey"},
Shinya Kitaoka 120a6e
    {"atopFx", "fx_visiblemattein"},
Shinya Kitaoka 120a6e
    {"STD_dissolveFx", "fx_dissolve"},
Shinya Kitaoka 120a6e
    {"STD_inohlsNoiseFx", "fx_ino_hlsnoise"},
Shinya Kitaoka 120a6e
    {"STD_inohlsNoiseInCameraFx", "fx_ino_hlsnoiseincamera"},
Shinya Kitaoka 120a6e
    {"STD_inohsvNoiseFx", "fx_ino_hsvnoise"},
Shinya Kitaoka 120a6e
    {"STD_inohsvNoiseInCameraFx", "fx_ino_hsvnoiseincamera"},
Shinya Kitaoka 120a6e
    {"STD_inoMedianFilterFx", "fx_ino_medianfilter"},
Shinya Kitaoka 120a6e
    {"STD_noiseFx", "fx_noise"},
Shinya Kitaoka 120a6e
    {"STD_saltpepperNoiseFx", "fx_saltpeppernoise"},
Shinya Kitaoka 120a6e
    {"STD_cloudsFx", "fx_clouds"},
Shinya Kitaoka 120a6e
    {"STD_inopnCloudsFx", "fx_ino_pnclouds"},
Shinya Kitaoka 120a6e
    {"STD_particlesFx", "fx_particles"},
Shinya Kitaoka 120a6e
    {"STD_colorEmbossFx", "fx_coloremboss"},
Shinya Kitaoka 120a6e
    {"STD_embossFx", "fx_emboss"},
Shinya Kitaoka 120a6e
    {"STD_inoMaxMinFx", "fx_ino_maxmin"},
Shinya Kitaoka 120a6e
    {"STD_inoMotionWindFx", "fx_ino_motionwind"},
Shinya Kitaoka 120a6e
    {"STD_posterizeFx", "fx_posterize"},
Shinya Kitaoka 120a6e
    {"STD_solarizeFx", "fx_solarize"},
Shinya Kitaoka 120a6e
    {"STD_artContourFx", "fx_artcontour"},
Shinya Kitaoka 120a6e
    {"STD_calligraphicFx", "fx_calligraphic"},
Shinya Kitaoka 120a6e
    {"STD_blendTzFx", "fx_blendtz"},
Shinya Kitaoka 120a6e
    {"STD_externalPaletteFx", "fx_externalpalette"},
Shinya Kitaoka 120a6e
    {"STD_outBorderFx", "fx_outline"},
Shinya Kitaoka 120a6e
    {"STD_paletteFilterFx", "fx_palettefilter"},
Shinya Kitaoka 120a6e
    {"STD_cornerPinFx", "fx_pinnedtexture"},
Shinya Kitaoka 120a6e
    {"STD_textureFx", "fx_texture"},
Shinya Kitaoka 120a6e
    {"STD_iwa_TileFx", "fx_iwa_tile"},
Shinya Kitaoka 120a6e
    {"STD_iwa_MotionBlurFx", "fx_iwa_motionblur"},
Shinya Kitaoka 120a6e
    {"STD_iwa_SpectrumFx", "fx_iwa_spectrum"},
Shinya Kitaoka 120a6e
    {"STD_iwa_PerspectiveDistortFx", "fx_iwa_perspective_distort"},
shun_iwasawa a35b8f
    {"STD_iwa_BokehFx", "fx_iwa_bokeh"},
shun-iwasawa e2505a
    {"STD_iwa_BokehRefFx", "fx_iwa_bokeh_ref"},
shun_iwasawa a35b8f
    {"STD_iwa_SoapBubbleFx", "fx_iwa_soapbubble"},
Shinya Kitaoka 120a6e
    {0, 0}};
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
SodaPop 54b1a5
class DVAPI FxIconPixmapManager final : public QObject {  // singleton
SodaPop 54b1a5
  Q_OBJECT
SodaPop 54b1a5
SodaPop 54b1a5
public:
Shinya Kitaoka 120a6e
  std::map<std::string, qpixmap=""> m_pms;</std::string,>
Toshihiro Shimizu 890ddd
SodaPop 54b1a5
public:
Shinya Kitaoka 120a6e
  FxIconPixmapManager();
SodaPop 54b1a5
  ~FxIconPixmapManager();
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
  static FxIconPixmapManager *instance();
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
  const QPixmap &getFxIconPm(std::string type);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#endif