diff --git a/toonz/sources/CMakeLists.txt b/toonz/sources/CMakeLists.txt index de32de6..37448fd 100644 --- a/toonz/sources/CMakeLists.txt +++ b/toonz/sources/CMakeLists.txt @@ -25,7 +25,7 @@ if(WIN32) endif() set(QT_LIB_PATH ${QT_PATH}) set(CMAKE_PREFIX_PATH "${QT_PATH}/lib/cmake/") - add_definitions(-DNOMINMAX) + add_definitions(-DVC_EXTRALEAN -DNOMINMAX -D_USE_MATH_DEFINES) elseif(APPLE) message("Apple System") if(NOT PLATFORM) @@ -200,8 +200,8 @@ endif() include_directories(BEFORE ${TIFF_INCLUDE_DIR} ${PNG_INCLUDE_DIRS}) find_path(BOOST_ROOT include/boost boost HINTS ${THIRDPARTY_LIBS_HINTS} - PATH_SUFFIXES boost/boost_1_60_0/ boost/boost_1_59_0/ - boost/boost_1_58_0/ boost/boost_1_57_0/ boost/boost_1_56_0/ boost155/1.55.0_1/ boost/boost_1_55_0/ ) + PATH_SUFFIXES boost/boost_1_60_0/ boost/boost_1_59_0/ + boost/boost_1_58_0/ boost/boost_1_57_0/ boost/boost_1_56_0/ boost155/1.55.0_1/ boost/boost_1_55_0/ ) find_package(Boost 1.55 REQUIRED) include_directories(${Boost_INCLUDE_DIR} ${LZ4_LIB_INCLUDE_DIRS} ${USB_LIB_INCLUDE_DIRS} ${SUPERLU_INCLUDE_DIR} ${JPEG_INCLUDE_DIR}) diff --git a/toonz/sources/colorfx/strokestyles.cpp b/toonz/sources/colorfx/strokestyles.cpp index 92969b9..f5c51e2 100644 --- a/toonz/sources/colorfx/strokestyles.cpp +++ b/toonz/sources/colorfx/strokestyles.cpp @@ -5783,18 +5783,10 @@ void OutlineViewerStyle::getParamRange(int index, double &min, double &max) cons { assert(0 <= index && index < 4); switch (index) { - case 0: - min = 0.0; - max = 2.99; - - CASE 1 : min = 0.0; - max = 1.99; - - CASE 2 : min = 0.0; - max = 3.99; - - CASE 3 : min = 3.0; - max = 100.0; + case 0: min = 0.0; max = 2.99; break; + case 1: min = 0.0; max = 1.99; break; + case 2: min = 0.0; max = 3.99; break; + case 3: min = 3.0; max = 100.0; break; } } @@ -5804,10 +5796,8 @@ void OutlineViewerStyle::getParamRange(int index, int &min, int &max) const { assert(5 <= index && index < 7); switch (index) { - case 5: - min = 0, max = 10; - - CASE 6 : min = 0, max = 4; + case 5: min = 0, max = 10; break; + case 6: min = 0, max = 4; break; } } diff --git a/toonz/sources/common/tapptools/ttimer.cpp b/toonz/sources/common/tapptools/ttimer.cpp index 00bf68e..6a63f3c 100644 --- a/toonz/sources/common/tapptools/ttimer.cpp +++ b/toonz/sources/common/tapptools/ttimer.cpp @@ -7,6 +7,8 @@ #ifdef _WIN32 #include +#include +#include //moto strano: se togliamo l'include della glut non linka #include diff --git a/toonz/sources/common/tcolor/tpixelutils.cpp b/toonz/sources/common/tcolor/tpixelutils.cpp index f9b46ec..512d800 100644 --- a/toonz/sources/common/tcolor/tpixelutils.cpp +++ b/toonz/sources/common/tcolor/tpixelutils.cpp @@ -125,30 +125,36 @@ void HSV2RGB(double hue, double sat, double value, t = value * (1 - (sat * (1 - f))); switch (i) { - CASE 0 : - *red = value; + case 0: + *red = value; *green = t; *blue = p; - CASE 1 : - *red = q; + break; + case 1: + *red = q; *green = value; *blue = p; - CASE 2 : - *red = p; + break; + case 2: + *red = p; *green = value; *blue = t; - CASE 3 : - *red = p; + break; + case 3: + *red = p; *green = q; *blue = value; - CASE 4 : - *red = t; + break; + case 4: + *red = t; *green = p; *blue = value; - CASE 5 : - *red = value; + break; + case 5: + *red = value; *green = p; *blue = q; + break; } } } diff --git a/toonz/sources/common/tcore/tmathutil.cpp b/toonz/sources/common/tcore/tmathutil.cpp index bf6e807..00c3a77 100644 --- a/toonz/sources/common/tcore/tmathutil.cpp +++ b/toonz/sources/common/tcore/tmathutil.cpp @@ -783,11 +783,19 @@ int rootFinding(const std::vector &in_poly, std::vector &sol) case 0: if (sol.empty()) return INFINITE_SOLUTIONS; - CASE 1 : //no solutions - CASE 2 : sol.push_back(-p[0] / p[1]); - CASE 3 : rootForQuadraticEquation(p, sol); - CASE 4 : rootForCubicEquation(p, sol); - DEFAULT: + break; + case 1: //no solutions + break; + case 2: + sol.push_back(-p[0] / p[1]); + break; + case 3: + rootForQuadraticEquation(p, sol); + break; + case 4: + rootForCubicEquation(p, sol); + break; + default: rootForGreaterThanThreeEquation(p, sol); } return sol.size(); diff --git a/toonz/sources/common/tfx/ttzpimagefx.cpp b/toonz/sources/common/tfx/ttzpimagefx.cpp index 4a0a46c..29fff9a 100644 --- a/toonz/sources/common/tfx/ttzpimagefx.cpp +++ b/toonz/sources/common/tfx/ttzpimagefx.cpp @@ -261,20 +261,16 @@ TRectD SandorFxRenderData::getBBoxEnlargement(const TRectD &bbox) return bbox; } - CASE Calligraphic : __OR OutBorder: - { - return bbox.enlarge(m_callParams.m_thickness); - } + case Calligraphic: + case OutBorder: + return bbox.enlarge(m_callParams.m_thickness); - CASE ArtAtContour: - { - return bbox.enlarge( - tmax(tceil(m_controllerBBox.getLx()), tceil(m_controllerBBox.getLy())) * m_contourParams.m_maxSize); - } + case ArtAtContour: + return bbox.enlarge( + tmax(tceil(m_controllerBBox.getLx()), tceil(m_controllerBBox.getLy())) * m_contourParams.m_maxSize); - DEFAULT : { + default: assert(false); return bbox; } - } } diff --git a/toonz/sources/common/tgl/tgl.cpp b/toonz/sources/common/tgl/tgl.cpp index a561d44..d80c433 100644 --- a/toonz/sources/common/tgl/tgl.cpp +++ b/toonz/sources/common/tgl/tgl.cpp @@ -10,6 +10,7 @@ #ifndef __sgi #ifdef _WIN32 +#include #include #elif defined(LINUX) #include diff --git a/toonz/sources/common/tiio/bmp/filebmp.c b/toonz/sources/common/tiio/bmp/filebmp.c index 363bf84..006c9fc 100644 --- a/toonz/sources/common/tiio/bmp/filebmp.c +++ b/toonz/sources/common/tiio/bmp/filebmp.c @@ -21,29 +21,6 @@ #include "filebmp.h" -/* -typedef unsigned long ULONG; -typedef unsigned short USHORT; -typedef unsigned char UCHAR; -typedef unsigned int UINT; -typedef void IMAGERGB; -typedef struct {USHORT m,b,g,r;} SPIXEL; -#define CASE break; case -#define __OR ; case -#define DEFAULT break; default -#define TRUE 1 -#define FALSE 0 -#define NIL (void*)0 -*/ - -/* -typedef struct bmpimage { - int xsize,ysize; - LPIXEL *buffer; - BMP_SUBTYPE type; - } IMAGE; -*/ - #define UNUSED_REDUCE_COLORS /*---------------------------------------------------------------------------*/ @@ -202,9 +179,15 @@ int read_bmp_line(FILE *fp, void *line_buffer, case BMP_BW: pad = ((w + 31) / 32) * 32; rv = load_lineBMP1(fp, pic, w, (UINT)pad, map); - CASE BMP_GREY16 : __OR BMP_CMAPPED16 : pad = ((w + 7) / 8) * 8; + break; + case BMP_GREY16: + case BMP_CMAPPED16: + pad = ((w + 7) / 8) * 8; rv = load_lineBMP4(fp, pic, w, (UINT)pad, map); - CASE BMP_GREY16C : __OR BMP_CMAPPED16C : rv = load_lineBMPC4(fp, pic, w, row, map); + break; + case BMP_GREY16C: + case BMP_CMAPPED16C: + rv = load_lineBMPC4(fp, pic, w, row, map); if (rv == -1) rv = 1; else if (rv == -2) @@ -213,9 +196,15 @@ int read_bmp_line(FILE *fp, void *line_buffer, rv = 0; else rv = 0; - CASE BMP_GREY256 : __OR BMP_CMAPPED256 : pad = ((w + 3) / 4) * 4; + break; + case BMP_GREY256: + case BMP_CMAPPED256: + pad = ((w + 3) / 4) * 4; rv = load_lineBMP8(fp, pic, w, (UINT)pad, map); - CASE BMP_GREY256C : __OR BMP_CMAPPED256C : rv = load_lineBMPC8(fp, pic, w, row, map); + break; + case BMP_GREY256C: + case BMP_CMAPPED256C: + rv = load_lineBMPC8(fp, pic, w, row, map); if (rv == -1) rv = 1; else if (rv == -2) @@ -224,9 +213,10 @@ int read_bmp_line(FILE *fp, void *line_buffer, rv = 0; else rv = 0; - CASE BMP_RGB : pad = (4 - ((w * 3) % 4)) & 0x03; + break; + case BMP_RGB: + pad = (4 - ((w * 3) % 4)) & 0x03; rv = load_lineBMP24(fp, pic, w, (UINT)pad); - DEFAULT: break; } @@ -247,15 +237,28 @@ int write_bmp_line(FILE *fp, void *line_buffer, case BMP_BW: pad = ((w + 31) / 32) * 32; rv = line_writeBMP1(fp, pic, w, (UINT)pad, map); - CASE BMP_GREY16 : __OR BMP_CMAPPED16 : pad = ((w + 7) / 8) * 8; + break; + case BMP_GREY16: + case BMP_CMAPPED16: + pad = ((w + 7) / 8) * 8; rv = line_writeBMP4(fp, pic, w, (UINT)pad, map); - CASE BMP_GREY16C : __OR BMP_CMAPPED16C : rv = line_writeBMPC4(fp, pic, w, row, map); - CASE BMP_GREY256 : __OR BMP_CMAPPED256 : pad = ((w + 3) / 4) * 4; + break; + case BMP_GREY16C: + case BMP_CMAPPED16C: + rv = line_writeBMPC4(fp, pic, w, row, map); + break; + case BMP_GREY256: + case BMP_CMAPPED256: + pad = ((w + 3) / 4) * 4; rv = line_writeBMP8(fp, pic, w, (UINT)pad, map); - CASE BMP_GREY256C : __OR BMP_CMAPPED256C : rv = line_writeBMPC8(fp, pic, w, row, map); - CASE BMP_RGB : pad = (4 - ((w * 3) % 4)) & 0x03; + break; + case BMP_GREY256C: + case BMP_CMAPPED256C: + rv = line_writeBMPC8(fp, pic, w, row, map); + break; + case BMP_RGB: + pad = (4 - ((w * 3) % 4)) & 0x03; rv = line_writeBMP24(fp, p24, w, (UINT)pad); - DEFAULT: break; } @@ -273,15 +276,28 @@ int skip_bmp_lines(FILE *fp, UINT w, UINT rows, int whence, BMP_SUBTYPE type) case BMP_BW: pad = ((w + 31) / 32) * 32; rv = skip_rowsBMP1(fp, w, (UINT)pad, rows, whence); - CASE BMP_GREY16 : __OR BMP_CMAPPED16 : pad = ((w + 7) / 8) * 8; + break; + case BMP_GREY16: + case BMP_CMAPPED16: + pad = ((w + 7) / 8) * 8; rv = skip_rowsBMP4(fp, w, (UINT)pad, rows, whence); - CASE BMP_GREY16C : __OR BMP_CMAPPED16C : rv = skip_rowsBMPC4(fp, rows); - CASE BMP_GREY256 : __OR BMP_CMAPPED256 : pad = ((w + 3) / 4) * 4; + break; + case BMP_GREY16C: + case BMP_CMAPPED16C: + rv = skip_rowsBMPC4(fp, rows); + break; + case BMP_GREY256: + case BMP_CMAPPED256: + pad = ((w + 3) / 4) * 4; rv = skip_rowsBMP8(fp, w, (UINT)pad, rows, whence); - CASE BMP_GREY256C : __OR BMP_CMAPPED256C : rv = skip_rowsBMPC8(fp, rows); - CASE BMP_RGB : pad = (4 - ((w * 3) % 4)) & 0x03; + break; + case BMP_GREY256C: + case BMP_CMAPPED256C: + rv = skip_rowsBMPC8(fp, rows); + break; + case BMP_RGB: + pad = (4 - ((w * 3) % 4)) & 0x03; rv = skip_rowsBMP24(fp, w, (UINT)pad, rows, whence); - DEFAULT: break; } @@ -552,10 +568,17 @@ static int img_read_bmp_generic(const MYSTRING fname, int type, IMAGE **pimg) switch (hd->biBitCount) { case 1: rv = loadBMP1(fp, pic, hd->biWidth, hd->biHeight, r, g, b); - CASE 4 : rv = loadBMP4(fp, pic, hd->biWidth, hd->biHeight, hd->biCompression, r, g, b); - CASE 8 : rv = loadBMP8(fp, pic, hd->biWidth, hd->biHeight, hd->biCompression, r, g, b); - CASE 24 : rv = loadBMP24(fp, pic, hd->biWidth, hd->biHeight); - DEFAULT: + break; + case 4: + rv = loadBMP4(fp, pic, hd->biWidth, hd->biHeight, hd->biCompression, r, g, b); + break; + case 8: + rv = loadBMP8(fp, pic, hd->biWidth, hd->biHeight, hd->biCompression, r, g, b); + break; + case 24: + rv = loadBMP24(fp, pic, hd->biWidth, hd->biHeight); + break; + default: retCode = UNSUPPORTED_BMP_FORMAT; goto ERROR; } @@ -739,10 +762,17 @@ static int img_read_bmp_region(const MYSTRING fname, IMAGE **pimg, int x1, int y switch (hd->biBitCount) { case 1: pad = ((hd->biWidth + 31) / 32) * 32; - CASE 4 : pad = ((hd->biWidth + 7) / 8) * 8; - CASE 8 : pad = ((hd->biWidth + 3) / 4) * 4; - CASE 24 : pad = (4 - ((hd->biWidth * 3) % 4)) & 0x03; - DEFAULT: + break; + case 4: + pad = ((hd->biWidth + 7) / 8) * 8; + break; + case 8: + pad = ((hd->biWidth + 3) / 4) * 4; + break; + case 24: + pad = (4 - ((hd->biWidth * 3) % 4)) & 0x03; + break; + default: /* segnala errore ed esci */ break; } @@ -765,33 +795,6 @@ static int img_read_bmp_region(const MYSTRING fname, IMAGE **pimg, int x1, int y if (load_lineBMP24(fp, line, hd->biWidth, pad)) goto ERROR; - /* QUESTO SWITCH VA AGGIUSTATO! - switch (subtype) - { - CASE BMP_BW: - if (load_lineBMP1(fp, line, hd->biWidth, pad, map)) - goto ERROR; - CASE BMP_GREY16: - __OR BMP_CMAPPED16: - if (load_lineBMP4(fp, line, hd->biWidth, pad, map)) - goto ERROR; - CASE BMP_GREY16C: - __OR BMP_CMAPPED16C: - if (load_lineBMPC4(fp, line, hd->biWidth, i, map)==-1) - goto ERROR; - CASE BMP_GREY256: - __OR BMP_CMAPPED256: - if (load_lineBMP8(fp, line, hd->biWidth, pad, map)) - goto ERROR; - CASE BMP_GREY256C: - __OR BMP_CMAPPED256C: - if (load_lineBMPC8(fp, line, hd->biWidth, i, map)==-1) - goto ERROR; - CASE BMP_RGB: - if (load_lineBMP24(fp, line, hd->biWidth, pad)) - goto ERROR; -} -*/ for (appo = pic, j = c = 0; j < (UINT)info.scanNcol; j++, c += info.step) *appo++ = *(line + info.startScanCol + c); pic += info.xsize; @@ -1224,19 +1227,26 @@ static int skip_rowsBMPC4(FILE *fp, UINT rows) switch (c) { case 0x00: rows--; - CASE 0x01 : rows = 0; - CASE 0x02 : c1 = getc(fp); /* x buffer offest */ - c1 = getc(fp); /* y buffer offest */ + break; + case 0x01: + rows = 0; + break; + case 0x02: + c1 = getc(fp); /* x buffer offest */ + c1 = getc(fp); /* y buffer offest */ rows -= c1; - DEFAULT: + break; + default: for (i = 0; i < c; i++) { if ((i & 1) == 0) getc(fp); } if (((c & 3) == 1) || ((c & 3) == 2)) getc(fp); + break; } - DEFAULT: + break; + default: c1 = getc(fp); } } @@ -1507,17 +1517,24 @@ static int skip_rowsBMPC8(FILE *fp, UINT rows) switch (c) { case 0x00: rows--; - CASE 0x01 : rows = 0; - CASE 0x02 : c1 = getc(fp); /* x buffer offest */ - c1 = getc(fp); /* y buffer offest */ + break; + case 0x01: + rows = 0; + break; + case 0x02: + c1 = getc(fp); /* x buffer offest */ + c1 = getc(fp); /* y buffer offest */ rows -= c1; - DEFAULT: + break; + default: for (i = 0; i < c; i++) getc(fp); if (c & 1) getc(fp); + break; } - DEFAULT: + break; + default: c1 = getc(fp); } } @@ -1692,12 +1709,19 @@ int img_write_bmp(const MYSTRING fname, IMAGE *img) switch (subtype) { case BMP_BW: - __OR BMP_GREY16 : __OR BMP_GREY16C : - - __OR BMP_CMAPPED256 : __OR BMP_CMAPPED256C : return UNSUPPORTED_BMP_FORMAT; - CASE BMP_GREY256 : __OR BMP_GREY256C : nbits = 8; - CASE BMP_RGB : nbits = 24; - DEFAULT: + case BMP_GREY16: + case BMP_GREY16C: + case BMP_CMAPPED256: + case BMP_CMAPPED256C: + return UNSUPPORTED_BMP_FORMAT; + case BMP_GREY256: + case BMP_GREY256C: + nbits = 8; + break; + case BMP_RGB: + nbits = 24; + break; + default: goto BMP_WRITE_ERROR; } @@ -1713,9 +1737,13 @@ int img_write_bmp(const MYSTRING fname, IMAGE *img) switch (nbits) { case 4: comp = (comp == TRUE) ? BMP_BI_RLE4 : BMP_BI_RGB; - CASE 8 : comp = (comp == TRUE) ? BMP_BI_RLE8 : BMP_BI_RGB; - DEFAULT: + break; + case 8: + comp = (comp == TRUE) ? BMP_BI_RLE8 : BMP_BI_RGB; + break; + default: comp = BMP_BI_RGB; + break; } /* fill image header */ @@ -1741,12 +1769,19 @@ int img_write_bmp(const MYSTRING fname, IMAGE *img) switch (nbits) { case 1: write_function = writeBMP1; - CASE 4 : if (comp == BMP_BI_RGB) write_function = writeBMP4; + break; + case 4: + if (comp == BMP_BI_RGB) write_function = writeBMP4; else write_function = writeBMPC4; - CASE 8 : if (comp == BMP_BI_RGB) write_function = writeBMP8; + break; + case 8: + if (comp == BMP_BI_RGB) write_function = writeBMP8; else write_function = writeBMPC8; - CASE 24 : write_function = writeBMP24; - DEFAULT: + break; + case 24: + write_function = writeBMP24; + break; + default: goto BMP_WRITE_ERROR; } @@ -2291,28 +2326,30 @@ int make_bmp_palette(int colors, int grey, UCHAR *r, UCHAR *g, UCHAR *b) case 2: for (i = 0; i < 2; i++) r[i] = g[i] = b[i] = i * 255; - CASE 16 : for (i = 0; i < 16; i++) - { + break; + case 16: + for (i = 0; i < 16; i++) { for (j = 0; j < 16; j++) { ind = i * 16 + j; val = i * 16; r[ind] = g[ind] = b[ind] = val; } } - CASE 256 : if (grey) - { + break; + case 256: + if (grey) { for (i = 0; i < 256; i++) r[i] = g[i] = b[i] = i; } - else - { + else { for (i = 0; i < 256; i++) { r[i] = BMP_RMAP(i); g[i] = BMP_GMAP(i); b[i] = BMP_BMAP(i); } } - DEFAULT: + break; + default: return FALSE; } @@ -2381,7 +2418,10 @@ int writebmp(const MYSTRING filename, int xsize, int ysize, void *buffer, int bp switch (bpp) { case 8: img.type = BMP_GREY256C; - CASE 32 : img.type = BMP_RGB; + break; + case 32: + img.type = BMP_RGB; + break; } return img_write_bmp(filename, &img); } diff --git a/toonz/sources/common/tiio/tiio_bmp.cpp b/toonz/sources/common/tiio/tiio_bmp.cpp index 8f1e858..aa67b97 100644 --- a/toonz/sources/common/tiio/tiio_bmp.cpp +++ b/toonz/sources/common/tiio/tiio_bmp.cpp @@ -786,20 +786,21 @@ void BmpWriter::writeLine(char *buffer) putc(0, m_chan); bytes++; } + break; } - CASE 8: - { - TPixelGR8 *pix = (TPixelGR8 *)buffer; - for (j = 0; j < lx; j++) { - putc(pix->value, m_chan); - ++pix; - } - while (lx & 3) { - putc(0, m_chan); - lx++; - } + case 8: { + TPixelGR8 *pix = (TPixelGR8 *)buffer; + for (j = 0; j < lx; j++) { + putc(pix->value, m_chan); + ++pix; } - DEFAULT: + while (lx & 3) { + putc(0, m_chan); + lx++; + } + break; + } + default: assert(false); } ftell(m_chan); diff --git a/toonz/sources/common/timage_io/timage_io.cpp b/toonz/sources/common/timage_io/timage_io.cpp index 45291bf..8bb353e 100644 --- a/toonz/sources/common/timage_io/timage_io.cpp +++ b/toonz/sources/common/timage_io/timage_io.cpp @@ -538,25 +538,21 @@ void convertForWriting(TRasterP &ras, const TRasterP &rin, int bpp) { switch (bpp) { case 1: - __OR 8: - { - ras = TRasterGR8P(rin->getSize()); - TRop::convert(ras, rin); - } - - CASE 24 : __OR 32: - { - ras = TRaster32P(rin->getSize()); - TRop::convert(ras, rin); - } - - CASE 48 : __OR 64: - { - ras = TRaster64P(rin->getSize()); - TRop::convert(ras, rin); - } - - DEFAULT: + case 8: + ras = TRasterGR8P(rin->getSize()); + TRop::convert(ras, rin); + break; + case 24: + case 32: + ras = TRaster32P(rin->getSize()); + TRop::convert(ras, rin); + break; + case 48: + case 64: + ras = TRaster64P(rin->getSize()); + TRop::convert(ras, rin); + break; + default: assert(false); } } diff --git a/toonz/sources/common/trop/quickput.cpp b/toonz/sources/common/trop/quickput.cpp index 8fec906..bbf9611 100644 --- a/toonz/sources/common/trop/quickput.cpp +++ b/toonz/sources/common/trop/quickput.cpp @@ -3233,18 +3233,26 @@ void doQuickPutCmapped( switch (t) { case 0: colorUp = colors[i]; - CASE 255 : colorUp = TPixel::Transparent; - DEFAULT: + break; + case 255: + colorUp = TPixel::Transparent; + break; + default: colorUp = antialias(colors[i], 255 - t); + break; } else switch (t) { case 0: colorUp = colors[i]; - CASE 255 : colorUp = colors[p]; - DEFAULT: + break; + case 255: + colorUp = colors[p]; + break; + default: colorUp = blend(colors[i], colors[p], t, TPixelCM32::getMaxTone()); - } + break; + } if (colorUp.m == 255) *dnPix = colorUp; @@ -3391,26 +3399,34 @@ void doQuickPutCmapped( switch (t) { case 0: colorUp = (i == s.m_inkIndex) ? TPixel::Red : inks[i]; - CASE 255 : colorUp = TPixel::Transparent; - DEFAULT: + break; + case 255: + colorUp = TPixel::Transparent; + break; + default: { TPixel inkColor; if (i == s.m_inkIndex) { inkColor = TPixel::Red; if (p == 0) { - t = t / 2; //transparency check(for a bug!) darken semitrasparent pixels; ghibli likes it, and wants it also for ink checks... - //otherwise, ramps goes always from reds towards grey... + t = t / 2; // transparency check(for a bug!) darken semitrasparent pixels; ghibli likes it, and wants it also for ink checks... + // otherwise, ramps goes always from reds towards grey... } } else inkColor = inks[i]; colorUp = antialias(inkColor, 255 - t); + break; + } } else switch (t) { case 0: colorUp = (i == s.m_inkIndex) ? TPixel::Red : inks[i]; - CASE 255 : colorUp = (p == s.m_paintIndex) ? TPixel::Red : paints[p]; - DEFAULT: + break; + case 255: + colorUp = (p == s.m_paintIndex) ? TPixel::Red : paints[p]; + break; + default: { TPixel paintColor = (p == s.m_paintIndex) ? TPixel::Red : paints[p]; TPixel inkColor; if (i == s.m_inkIndex) { @@ -3425,7 +3441,10 @@ void doQuickPutCmapped( t = t / 2; colorUp = blend(inkColor, paintColor, t, TPixelCM32::getMaxTone()); + break; + } } + if (colorUp.m == 255) *dnPix = colorUp; else if (colorUp.m != 0) @@ -3681,18 +3700,25 @@ void doQuickPutCmapped( switch (t) { case 0: colorUp = inks[i]; - CASE 255 : colorUp = TPixel::Transparent; - DEFAULT: + break; + case 255: + colorUp = TPixel::Transparent; + break; + default: colorUp = antialias(inks[i], 255 - t); + break; } else switch (t) { case 0: colorUp = inks[i]; - CASE 255 : colorUp = paints[p]; - - DEFAULT: + break; + case 255: + colorUp = paints[p]; + break; + default: colorUp = blend(inks[i], paints[p], t, TPixelCM32::getMaxTone()); + break; } if (colorUp.m == 255) @@ -3826,9 +3852,13 @@ void doQuickResampleColorFilter( switch (t) { case 0: colorUp = inks[i]; - CASE 255 : colorUp = paints[p]; - DEFAULT: + break; + case 255: + colorUp = paints[p]; + break; + default: colorUp = blend(inks[i], paints[p], t, TPixelCM32::getMaxTone()); + break; } if (colorMask == TRop::MChan) diff --git a/toonz/sources/common/trop/terodilate.cpp b/toonz/sources/common/trop/terodilate.cpp index e16de7d..75e92e6 100644 --- a/toonz/sources/common/trop/terodilate.cpp +++ b/toonz/sources/common/trop/terodilate.cpp @@ -459,17 +459,25 @@ void TRop::erodilate(const TRasterP &src, const TRasterP &dst, switch (type) { case ED_rectangular: ::rect_erodilate(src, dst, radius); - CASE ED_circular : ::circular_erodilate(src, dst, radius); - DEFAULT: + break; + case ED_circular: + ::circular_erodilate(src, dst, radius); + break; + default: assert(!"Unknown mask type"); + break; } else if ((TRaster64P)src && (TRaster64P)dst) switch (type) { case ED_rectangular: ::rect_erodilate(src, dst, radius); - CASE ED_circular : ::circular_erodilate(src, dst, radius); - DEFAULT: + break; + case ED_circular: + ::circular_erodilate(src, dst, radius); + break; + default: assert(!"Unknown mask type"); + break; } else assert(!"Unsupported raster type!"); diff --git a/toonz/sources/common/trop/tresample.cpp b/toonz/sources/common/trop/tresample.cpp index 8351c28..a6ffa1b 100644 --- a/toonz/sources/common/trop/tresample.cpp +++ b/toonz/sources/common/trop/tresample.cpp @@ -589,36 +589,20 @@ static inline void get_flt_fun_rad(TRop::ResampleFilterType flt_type, double rad; switch (flt_type) { - case TRop::Triangle: - fun = flt_triangle; - rad = fltradTriangle; - CASE TRop::Mitchell : fun = flt_mitchell; - rad = fltradMitchell; - CASE TRop::Cubic5 : fun = flt_cubic_5; - rad = fltradCubic5; - CASE TRop::Cubic75 : fun = flt_cubic_75; - rad = fltradCubic75; - CASE TRop::Cubic1 : fun = flt_cubic_1; - rad = fltradCubic1; - CASE TRop::Hann2 : fun = flt_hann2; - rad = fltradHann2; - CASE TRop::Hann3 : fun = flt_hann3; - rad = fltradHann3; - CASE TRop::Hamming2 : fun = flt_hamming2; - rad = fltradHamming2; - CASE TRop::Hamming3 : fun = flt_hamming3; - rad = fltradHamming3; - CASE TRop::Lanczos2 : fun = flt_lanczos2; - rad = fltradLanczos2; - CASE TRop::Lanczos3 : fun = flt_lanczos3; - rad = fltradLanczos3; - CASE TRop::Gauss : fun = flt_gauss; - rad = fltradGauss; - CASE 101 : fun = flt_w_1; - rad = fltradW1; - DEFAULT: - fun = flt_triangle; - rad = fltradTriangle; + case TRop::Triangle: fun = flt_triangle; rad = fltradTriangle; break; + case TRop::Mitchell: fun = flt_mitchell; rad = fltradMitchell; break; + case TRop::Cubic5 : fun = flt_cubic_5 ; rad = fltradCubic5 ; break; + case TRop::Cubic75 : fun = flt_cubic_75; rad = fltradCubic75 ; break; + case TRop::Cubic1 : fun = flt_cubic_1 ; rad = fltradCubic1 ; break; + case TRop::Hann2 : fun = flt_hann2 ; rad = fltradHann2 ; break; + case TRop::Hann3 : fun = flt_hann3 ; rad = fltradHann3 ; break; + case TRop::Hamming2: fun = flt_hamming2; rad = fltradHamming2; break; + case TRop::Hamming3: fun = flt_hamming3; rad = fltradHamming3; break; + case TRop::Lanczos2: fun = flt_lanczos2; rad = fltradLanczos2; break; + case TRop::Lanczos3: fun = flt_lanczos3; rad = fltradLanczos3; break; + case TRop::Gauss : fun = flt_gauss ; rad = fltradGauss ; break; + case 101 : fun = flt_w_1 ; rad = fltradW1 ; break; + default : fun = flt_triangle; rad = fltradTriangle; break; } if (flt_fun) *flt_fun = fun; @@ -823,25 +807,6 @@ inline void calcValueNoCalc(UINT &calc_value){ calc_value &= ~0x80U; \ } -///////////////////////////////////////////////////////// -// INIZIO GESTIONE ALTRI TIPI RASTER DA IMPLEMENTARE -///////////////////////////////////////////////////////// - -//#define PIXVAL_EQ_EQUAL(V1,V2) ((V1)==(V2)) - -/* -#define PIXVAL_EQ_24_EQUAL(V1,V2) ((V1)&0xffffff==(V2)&0xffffff) -#define PIXVAL_EQ_2_LONG_EQUAL(V1,V2) (*(TINT32*)&(V1)==*(TINT32*)&(V2) &&\ - ((TINT32*)&(V1))[1]==((TINT32*)&(V2))[1]) -*/ -///////////////////////////////////////////////////////// -// fine GESTIONE ALTRI TIPI RASTER DA IMPLEMENTARE -///////////////////////////////////////////////////////// - -//#define PIXVAL_EQ_LONG_EQUAL(V1,V2) (*(TINT32*)&(V1)==*(TINT32*)&(V2)) -//#define PIXVAL_EQ PIXVAL_EQ_LONG_EQUAL -//#define PIXVAL_EQ PIXVAL_EQ_EQUAL - template #ifdef _WIN32 __forceinline @@ -1030,96 +995,6 @@ void create_calc(const TRasterPT &rin, ResampleCalcAlgo(rin->pixels(), lu, lv, wrap_in, max_pix_ref_u, min_pix_ref_u, max_pix_ref_v, min_pix_ref_v, calc, calc_bytesize, calc_bytewrap); - //for (int i=0;itype) - { - case RAS_CM16: - { - USHORT *buffer_in; - USHORT *prev_line_in; - USHORT *last_line_in; - USHORT prev_value; - USHORT left_value; - USHORT last_value; - - buffer_in = rin->buffer; - -#undef PIXVAL_EQ -#define PIXVAL_EQ PIXVAL_EQ_EQUAL - - RESAMPLE_CALC_ALGO - - } - - CASE RAS_CM24: - { - ULONG *buffer_in; - ULONG *prev_line_in; - ULONG *last_line_in; - ULONG prev_value; - ULONG left_value; - ULONG last_value; - - buffer_in = rin->buffer; - -#undef PIXVAL_EQ -#define PIXVAL_EQ PIXVAL_EQ_24_EQUAL - - RESAMPLE_CALC_ALGO - - } - - CASE RAS_RGB_: // si potrebbe ignorare M - __OR RAS_RGBM: - { - LPIXEL *buffer_in; - LPIXEL *prev_line_in; - LPIXEL *last_line_in; - LPIXEL prev_value; - LPIXEL left_value; - LPIXEL last_value; - - buffer_in = rin->buffer; - -#undef PIXVAL_EQ -#define PIXVAL_EQ PIXVAL_EQ_LONG_EQUAL - - RESAMPLE_CALC_ALGO - - } - - CASE RAS_RGBM64: - { - SPIXEL *buffer_in; - SPIXEL *prev_line_in; - SPIXEL *last_line_in; - SPIXEL prev_value; - SPIXEL left_value; - SPIXEL last_value; - - buffer_in = rin->buffer; - -#undef PIXVAL_EQ -#define PIXVAL_EQ PIXVAL_EQ_2_LONG_EQUAL - - RESAMPLE_CALC_ALGO - - } - - DEFAULT: - assert ( !"invalid raster type"); - } -*/ - ///////////////////////////////////////////////////////// - // FINE GESTIONE ALTRI TIPI RASTER DA IMPLEMENTARE - ///////////////////////////////////////////////////////// } //--------------------------------------------------------------------------- @@ -1194,57 +1069,78 @@ inline double get_filter_value(TRop::ResampleFilterType flt_type, double x) return (p0 + x * x * (p2 + x * p3)); if (x < 2.0) return (q0 + x * (q1 + x * (q2 + x * q3))); + + break; } - CASE TRop::Cubic5 : if (x < 0.0) x = -x; + case TRop::Cubic5: + if (x < 0.0) x = -x; if (x < 1.0) return 2.5 * x * x * x - 3.5 * x * x + 1; if (x < 2.0) return 0.5 * x * x * x - 2.5 * x * x + 4 * x - 2; + break; - CASE TRop::Cubic75 : if (x < 0.0) x = -x; + case TRop::Cubic75: + if (x < 0.0) x = -x; if (x < 1.0) return 2.75 * x * x * x - 3.75 * x * x + 1; if (x < 2.0) return 0.75 * x * x * x - 3.75 * x * x + 6 * x - 3; + break; - CASE TRop::Cubic1 : if (x < 0.0) x = -x; + case TRop::Cubic1: + if (x < 0.0) x = -x; if (x < 1.0) return 3 * x * x * x - 4 * x * x + 1; if (x < 2.0) return x * x * x - 5 * x * x + 8 * x - 4; + break; - CASE TRop::Hann2 : if (x <= -2.0) return 0.0; + case TRop::Hann2: + if (x <= -2.0) return 0.0; if (x < 2.0) return sinc0(x, 1) * (0.5 + 0.5 * cos((pi / 2) * x)); + break; - CASE TRop::Hann3 : if (x <= -3.0) return 0.0; + case TRop::Hann3: + if (x <= -3.0) return 0.0; if (x < 3.0) return sinc0(x, 1) * (0.5 + 0.5 * cos((pi / 3) * x)); + break; - CASE TRop::Hamming2 : if (x <= -2.0) return 0.0; + case TRop::Hamming2: + if (x <= -2.0) return 0.0; if (x < 2.0) return sinc0(x, 1) * (0.54 + 0.46 * cos((pi / 2) * x)); + break; - CASE TRop::Hamming3 : if (x <= -3.0) return 0.0; + case TRop::Hamming3: + if (x <= -3.0) return 0.0; if (x < 3.0) return sinc0(x, 1) * (0.54 + 0.46 * cos((pi / 3) * x)); + break; - CASE TRop::Lanczos2 : if (x <= -2.0) return 0.0; + case TRop::Lanczos2: + if (x <= -2.0) return 0.0; if (x < 2.0) return sinc0(x, 1) * sinc0(x, 2); + break; - CASE TRop::Lanczos3 : if (x <= -3.0) return 0.0; + case TRop::Lanczos3: + if (x <= -3.0) return 0.0; if (x < 3.0) return sinc0(x, 1) * sinc0(x, 3); + break; - CASE TRop::Gauss : if (x <= -2.0) return 0.0; + case TRop::Gauss: + if (x <= -2.0) return 0.0; if (x < 2.0) - return exp((-pi) * x * x); - /* exp(-M_PI*2*2)~=3.5*10^-6 */ - - DEFAULT: + return exp((-pi) * x * x); /* exp(-M_PI*2*2)~=3.5*10^-6 */ + break; + default: assert(!"bad filter type"); + break; } return 0.0; } @@ -2753,100 +2649,6 @@ void rop_resample_rgbm(TRasterPT rout, const TRasterPT &rin, pix_ref_u.get(), pix_ref_v.get(), pix_ref_f.get(), pix_ref_g.get(), filter); - - ///////////////////////////////////////////////////////// - // INIZIO GESTIONE ALTRI TIPI RASTER DA IMPLEMENTARE - ///////////////////////////////////////////////////////// - - /* -switch (RASRAS (rin->type, rout->type)) - { - case RASRAS (RAS_RGB_, RAS_RGB_): - __OR RASRAS (RAS_RGBM, RAS_RGB_): - __OR RASRAS (RAS_RGBM, RAS_RGBM): - resample_main_rgbm (rin, rout, - aff_xy2uv, - aff0_uv2fg, - min_pix_ref_u, min_pix_ref_v, - max_pix_ref_u, max_pix_ref_v, - n_pix, - pix_ref_u, pix_ref_v, - pix_ref_f, pix_ref_g, - filter); - - CASE RASRAS (RAS_RGBM, RAS_RGBM64): - resample_main_rgbm_rgbm64 (rin, rout, - aff_xy2uv, - aff0_uv2fg, - min_pix_ref_u, min_pix_ref_v, - max_pix_ref_u, max_pix_ref_v, - n_pix, - pix_ref_u, pix_ref_v, - pix_ref_f, pix_ref_g, - filter); - - CASE RASRAS (RAS_RGBM64, RAS_RGBM64): - resample_main_rgbm64 (rin, rout, - aff_xy2uv, - aff0_uv2fg, - min_pix_ref_u, min_pix_ref_v, - max_pix_ref_u, max_pix_ref_v, - n_pix, - pix_ref_u, pix_ref_v, - pix_ref_f, pix_ref_g, - filter); - - CASE RASRAS (RAS_CM16, RAS_RGBM): - resample_main_cm16_rgbm (rin, rout, - aff_xy2uv, - aff0_uv2fg, - min_pix_ref_u, min_pix_ref_v, - max_pix_ref_u, max_pix_ref_v, - n_pix, - pix_ref_u, pix_ref_v, - pix_ref_f, pix_ref_g, - filter); - - CASE RASRAS (RAS_CM24, RAS_RGBM): - resample_main_cm24_rgbm (rin, rout, - aff_xy2uv, - aff0_uv2fg, - min_pix_ref_u, min_pix_ref_v, - max_pix_ref_u, max_pix_ref_v, - n_pix, - pix_ref_u, pix_ref_v, - pix_ref_f, pix_ref_g, - filter); - - CASE RASRAS (RAS_CM16, RAS_RGBM64): - resample_main_cm16_rgbm64 (rin, rout, - aff_xy2uv, - aff0_uv2fg, - min_pix_ref_u, min_pix_ref_v, - max_pix_ref_u, max_pix_ref_v, - n_pix, - pix_ref_u, pix_ref_v, - pix_ref_f, pix_ref_g, - filter); - - CASE RASRAS (RAS_CM24, RAS_RGBM64): - resample_main_cm24_rgbm64 (rin, rout, - aff_xy2uv, - aff0_uv2fg, - min_pix_ref_u, min_pix_ref_v, - max_pix_ref_u, max_pix_ref_v, - n_pix, - pix_ref_u, pix_ref_v, - pix_ref_f, pix_ref_g, - filter); - - DEFAULT: - assert ( !"bad raster type combination"); - } -*/ - ///////////////////////////////////////////////////////// - // FINE GESTIONE ALTRI TIPI RASTER DA IMPLEMENTARE - ///////////////////////////////////////////////////////// } //--------------------------------------------------------------------------- @@ -3093,38 +2895,6 @@ TAffine aff_0, inv_0; if (!(rin->getLx() > 0 && rin->getLy() > 0)) /* immagine in vuota */ { rout->fill(T::Black); //Black_rgbm - - ///////////////////////////////////////////////////////// - // INIZIO GESTIONE ALTRI TIPI RASTER DA IMPLEMENTARE - ///////////////////////////////////////////////////////// - - /* switch (rout->type) - { - - case RAS_GR8: - for (y = 0; y < rout->ly; y++) - for (x = 0; x < rout->lx; x++) - ((UCHAR*)rout->buffer)[x + y * rout->wrap] = BLACK_GR8; - CASE RAS_RGB_: - __OR RAS_RGBM: - for (y = 0; y < rout->ly; y++) - for (x = 0; x < rout->lx; x++) - ((LPIXEL*)rout->buffer)[x + y * rout->wrap] = Black_rgbm; - CASE RAS_RGBM64: - for (y = 0; y < rout->ly; y++) - for (x = 0; x < rout->lx; x++) - ((SPIXEL*)rout->buffer)[x + y * rout->wrap] = Black_rgbm64; - DEFAULT: - abort(); - } - */ - //---- NON GESTIAMO ANCORA EXTRA BUFFER - //ZERO_EXTRA_OF (rout) - - ///////////////////////////////////////////////////////// - // FINE GESTIONE ALTRI TIPI RASTER DA IMPLEMENTARE - ///////////////////////////////////////////////////////// - return; } @@ -3136,51 +2906,6 @@ TAffine aff_0, inv_0; throw TRopException("unsupported pixel type"); #ifdef ALTRI_TIPI_DI_RASTER - ///////////////////////////////////////////////////////// - // INIZIO GESTIONE ALTRI TIPI RASTER DA IMPLEMENTARE - ///////////////////////////////////////////////////////// - /* - switch (RASRAS (rin->type, rout->type)) - { - case RASRAS (RAS_CM16, RAS_RGB_): - __OR RASRAS (RAS_CM24, RAS_RGB_): - __OR RASRAS (RAS_CM16, RAS_RGBM): - __OR RASRAS (RAS_CM24, RAS_RGBM): - __OR RASRAS (RAS_CM16, RAS_RGBM64): - __OR RASRAS (RAS_CM24, RAS_RGBM64): - __OR RASRAS (RAS_RGB_, RAS_RGB_): - __OR RASRAS (RAS_RGBM, RAS_RGB_): - __OR RASRAS (RAS_RGBM, RAS_RGBM): - __OR RASRAS (RAS_RGBM, RAS_RGBM64): - __OR RASRAS (RAS_RGBM64, RAS_RGBM64): - - rop_resample_rgbm (rin, rout, aff, flt_type, 1.0); - - #ifdef CHECK_IF_PREMULTIPLIED - { - int x, y; - LPIXEL *buf, pix; - - buf = rout->buffer; - for (y = 0; y < rout->getLy(); y++) - for (x = 0; x < rout->getLx(); x++) - { - pix = buf[x + y * rout->wrap]; - if (pix.m < pix.b || pix.m < pix.g || pix.m < pix.r) - printf ("(%d,%d): 0x%02x 0x%02x 0x%02x 0x%02x\n", - x, y, pix.m, pix.b, pix.g, pix.r); - } - } - #endif -//----NON GESTIAMO ANCORA EXTRA BUFFER - rop_resample_extra (rin, rout, aff); - return; - } -*/ - ///////////////////////////////////////////////////////// - // FINE GESTIONE ALTRI TIPI RASTER DA IMPLEMENTARE - ///////////////////////////////////////////////////////// - jacob = fabs(aff.det()); if (jacob == 0.0) throw TRopException("AFFINE transformation has zero determinant"); @@ -3222,45 +2947,6 @@ TAffine aff_0, inv_0; minmax(negradx_ - rad_x, negrady_ - rad_y, posradx_ + rad_x, posrady_ + rad_y, inv_0, negradu_, negradv_, posradu_, posradv_); - ///////////////////////////////////////////////////////// - // INIZIO GESTIONE ALTRI TIPI RASTER DA IMPLEMENTARE - ///////////////////////////////////////////////////////// - /* -double flatradx_ = posradx_; -double flatrady_ = posrady_; -int flatradu = CEIL (posradu_) - 1; -int flatradv = CEIL (posradv_) - 1; - -switch (RASRAS (rin->type, rout->type)) - { - case RASRAS (RAS_RGB, RAS_RGB): - rop_resample_rgb (rin, rout, aff, invrot, - rowf, pmin, pmax, colf, qmin, qmax, nrows, - flatradu, flatradv, flatradx_, flatrady_, - rown, nocdiamx, coln, nocdiamy); - - CASE RASRAS (RAS_GR8, RAS_GR8): - rop_resample_gr8 (rin, rout, aff, invrot, - rowf, pmin, pmax, colf, qmin, qmax, nrows, - flatradu, flatradv, flatradx_, flatrady_, - rown, nocdiamx, coln, nocdiamy); - - CASE RASRAS (RAS_WB, RAS_GR8): - rop_resample_wb (rin, rout, aff, invrot, - rowf, pmin, pmax, colf, qmin, qmax, nrows, - flatradu, flatradv, flatradx_, flatrady_, - rown, nocdiamx, coln, nocdiamy); - - DEFAULT: - msg (MSG_IE, "rop_resample: unsupported raster combination"); - return; - } - */ - - ///////////////////////////////////////////////////////// - // FINE GESTIONE ALTRI TIPI RASTER DA IMPLEMENTARE - ///////////////////////////////////////////////////////// - //free_nocalc (coln); if (coln) delete (coln); @@ -5053,100 +4739,6 @@ void rop_resample_rgbm_2(TRasterPT rout, const TRasterCM32P &rin, pix_ref_u.get(), pix_ref_v.get(), pix_ref_f.get(), pix_ref_g.get(), filter, palette); - - ///////////////////////////////////////////////////////// - // INIZIO GESTIONE ALTRI TIPI RASTER DA IMPLEMENTARE - ///////////////////////////////////////////////////////// - - /* -switch (RASRAS (rin->type, rout->type)) - { - case RASRAS (RAS_RGB_, RAS_RGB_): - __OR RASRAS (RAS_RGBM, RAS_RGB_): - __OR RASRAS (RAS_RGBM, RAS_RGBM): - resample_main_rgbm (rin, rout, - aff_xy2uv, - aff0_uv2fg, - min_pix_ref_u, min_pix_ref_v, - max_pix_ref_u, max_pix_ref_v, - n_pix, - pix_ref_u, pix_ref_v, - pix_ref_f, pix_ref_g, - filter); - - CASE RASRAS (RAS_RGBM, RAS_RGBM64): - resample_main_rgbm_rgbm64 (rin, rout, - aff_xy2uv, - aff0_uv2fg, - min_pix_ref_u, min_pix_ref_v, - max_pix_ref_u, max_pix_ref_v, - n_pix, - pix_ref_u, pix_ref_v, - pix_ref_f, pix_ref_g, - filter); - - CASE RASRAS (RAS_RGBM64, RAS_RGBM64): - resample_main_rgbm64 (rin, rout, - aff_xy2uv, - aff0_uv2fg, - min_pix_ref_u, min_pix_ref_v, - max_pix_ref_u, max_pix_ref_v, - n_pix, - pix_ref_u, pix_ref_v, - pix_ref_f, pix_ref_g, - filter); - - CASE RASRAS (RAS_CM16, RAS_RGBM): - resample_main_cm16_rgbm (rin, rout, - aff_xy2uv, - aff0_uv2fg, - min_pix_ref_u, min_pix_ref_v, - max_pix_ref_u, max_pix_ref_v, - n_pix, - pix_ref_u, pix_ref_v, - pix_ref_f, pix_ref_g, - filter); - - CASE RASRAS (RAS_CM24, RAS_RGBM): - resample_main_cm24_rgbm (rin, rout, - aff_xy2uv, - aff0_uv2fg, - min_pix_ref_u, min_pix_ref_v, - max_pix_ref_u, max_pix_ref_v, - n_pix, - pix_ref_u, pix_ref_v, - pix_ref_f, pix_ref_g, - filter); - - CASE RASRAS (RAS_CM16, RAS_RGBM64): - resample_main_cm16_rgbm64 (rin, rout, - aff_xy2uv, - aff0_uv2fg, - min_pix_ref_u, min_pix_ref_v, - max_pix_ref_u, max_pix_ref_v, - n_pix, - pix_ref_u, pix_ref_v, - pix_ref_f, pix_ref_g, - filter); - - CASE RASRAS (RAS_CM24, RAS_RGBM64): - resample_main_cm24_rgbm64 (rin, rout, - aff_xy2uv, - aff0_uv2fg, - min_pix_ref_u, min_pix_ref_v, - max_pix_ref_u, max_pix_ref_v, - n_pix, - pix_ref_u, pix_ref_v, - pix_ref_f, pix_ref_g, - filter); - - DEFAULT: - assert ( !"bad raster type combination"); - } -*/ - ///////////////////////////////////////////////////////// - // FINE GESTIONE ALTRI TIPI RASTER DA IMPLEMENTARE - ///////////////////////////////////////////////////////// } //----------------------------------------------------------------------------- diff --git a/toonz/sources/common/tsound/tsop.cpp b/toonz/sources/common/tsound/tsop.cpp index 68c194f..dfcc7b6 100644 --- a/toonz/sources/common/tsound/tsop.cpp +++ b/toonz/sources/common/tsound/tsop.cpp @@ -102,20 +102,19 @@ int getFilterRadius(FLT_TYPE flt_type) { int result = 0; switch (flt_type) { - case FLT_TRIANGLE: - result = 1; - CASE FLT_MITCHELL : result = 2; - CASE FLT_CUBIC_5 : result = 2; - CASE FLT_CUBIC_75 : result = 2; - CASE FLT_CUBIC_1 : result = 2; - CASE FLT_HANN2 : result = 2; - CASE FLT_HANN3 : result = 3; - CASE FLT_HAMMING2 : result = 2; - CASE FLT_HAMMING3 : result = 3; - CASE FLT_LANCZOS2 : result = 2; - CASE FLT_LANCZOS3 : result = 3; - CASE FLT_GAUSS : result = 2; - DEFAULT: + case FLT_TRIANGLE: result = 1; break; + case FLT_MITCHELL: result = 2; break; + case FLT_CUBIC_5 : result = 2; break; + case FLT_CUBIC_75: result = 2; break; + case FLT_CUBIC_1 : result = 2; break; + case FLT_HANN2 : result = 2; break; + case FLT_HANN3 : result = 3; break; + case FLT_HAMMING2: result = 2; break; + case FLT_HAMMING3: result = 3; break; + case FLT_LANCZOS2: result = 2; break; + case FLT_LANCZOS3: result = 3; break; + case FLT_GAUSS : result = 2; break; + default: assert(!"bad filter type"); break; } @@ -139,8 +138,9 @@ double filterValue(FLT_TYPE flt_type, double x) result = 1.0 - x; else result = 0.0; + break; - CASE FLT_MITCHELL: + case FLT_MITCHELL: { static double p0, p2, p3, q0, q1, q2, q3; @@ -166,43 +166,65 @@ double filterValue(FLT_TYPE flt_type, double x) result = (p0 + x * x * (p2 + x * p3)); else if (x < 2.0) result = (q0 + x * (q1 + x * (q2 + x * q3))); - } - CASE FLT_CUBIC_5 : if (x < 0.0) x = -x; + break; + } + + case FLT_CUBIC_5: + if (x < 0.0) x = -x; else if (x < 1.0) result = 2.5 * x * x * x - 3.5 * x * x + 1; else if (x < 2.0) result = 0.5 * x * x * x - 2.5 * x * x + 4 * x - 2; + break; - CASE FLT_CUBIC_75 : if (x < 0.0) x = -x; + case FLT_CUBIC_75: + if (x < 0.0) x = -x; else if (x < 1.0) result = 2.75 * x * x * x - 3.75 * x * x + 1; else if (x < 2.0) result = 0.75 * x * x * x - 3.75 * x * x + 6 * x - 3; + break; - CASE FLT_CUBIC_1 : if (x < 0.0) x = -x; + case FLT_CUBIC_1: + if (x < 0.0) x = -x; else if (x < 1.0) result = 3 * x * x * x - 4 * x * x + 1; else if (x < 2.0) result = x * x * x - 5 * x * x + 8 * x - 4; + break; - CASE FLT_HANN2 : if (x <= -2.0) result = 0.0; + case FLT_HANN2: + if (x <= -2.0) result = 0.0; else if (x < 2.0) result = SINC0(x, 1) * (0.5 + 0.5 * cos((TConsts::pi_2)*x)); + break; - CASE FLT_HANN3 : if (x <= -3.0) result = 0.0; + case FLT_HANN3: + if (x <= -3.0) result = 0.0; else if (x < 3.0) result = SINC0(x, 1) * (0.5 + 0.5 * cos((TConsts::pi / 3) * x)); + break; - CASE FLT_HAMMING2 : if (x <= -2.0) result = 0.0; + case FLT_HAMMING2: + if (x <= -2.0) result = 0.0; else if (x < 2.0) result = SINC0(x, 1) * (0.54 + 0.46 * cos((TConsts::pi_2)*x)); + break; - CASE FLT_HAMMING3 : if (x <= -3.0) result = 0.0; + case FLT_HAMMING3: + if (x <= -3.0) result = 0.0; else if (x < 3.0) result = SINC0(x, 1) * (0.54 + 0.46 * cos((TConsts::pi / 3) * x)); + break; - CASE FLT_LANCZOS2 : if (x <= -2.0) result = 0.0; + case FLT_LANCZOS2: + if (x <= -2.0) result = 0.0; else if (x < 2.0) result = SINC0(x, 1) * SINC0(x, 2); + break; - CASE FLT_LANCZOS3 : if (x <= -3.0) result = 0.0; + case FLT_LANCZOS3: + if (x <= -3.0) result = 0.0; else if (x < 3.0) result = SINC0(x, 1) * SINC0(x, 3); + break; - CASE FLT_GAUSS : if (x <= -2.0) result = 0.0; + case FLT_GAUSS: + if (x <= -2.0) result = 0.0; else if (x < 2.0) result = exp((-TConsts::pi) * x * x); - /* exp(-M_PI*2*2)~=3.5*10^-6 */ + /* exp(-M_PI*2*2)~=3.5*10^-6 */ + break; - DEFAULT: + default: assert(!"bad filter type"); } return result; diff --git a/toonz/sources/common/tsound/tsound_nt.cpp b/toonz/sources/common/tsound/tsound_nt.cpp index bfcbe95..484927c 100644 --- a/toonz/sources/common/tsound/tsound_nt.cpp +++ b/toonz/sources/common/tsound/tsound_nt.cpp @@ -9,6 +9,8 @@ #include #include "tsystem.h" +#include + //========================================================= //forward declarations diff --git a/toonz/sources/common/tsystem/tsystem.cpp b/toonz/sources/common/tsystem/tsystem.cpp index ad73849..4ad8489 100644 --- a/toonz/sources/common/tsystem/tsystem.cpp +++ b/toonz/sources/common/tsystem/tsystem.cpp @@ -27,6 +27,8 @@ using namespace std; #include #include #include +#include +#include #else #include #include diff --git a/toonz/sources/common/tsystem/tsystempd.cpp b/toonz/sources/common/tsystem/tsystempd.cpp index 3a74825..47901ab 100644 --- a/toonz/sources/common/tsystem/tsystempd.cpp +++ b/toonz/sources/common/tsystem/tsystempd.cpp @@ -29,6 +29,7 @@ #include #include #include +#include // gmt: sulla mia macchina cosi' non compila!!! // #include "winsock2.h" // #include "lmcons.h" @@ -475,37 +476,33 @@ TString TSystemException::getMessage() const { wstring msg; switch (m_err) { - case -1: - // nothing - msg = m_msg; - CASE EEXIST : msg = L": Directory was not created because filename is the name of an existing file, directory, or device"; - CASE ENOENT : msg = L": Path was not found, or the named file does not exist or is a null pathname."; - CASE ENOTEMPTY : msg = L": Given path is not a directory; directory is not empty; or directory is either current working directory or root directory"; - CASE EACCES : msg = L": Search permission is denied by a component of the path prefix, or write permission on the file named by path is denied, or times is NULL, and write access is denied"; - CASE EFAULT : msg = L": Times is not NULL and, or points outside the process's allocated address space."; - CASE EINTR : msg = L": A signal was caught during the utime system call."; - CASE ENAMETOOLONG : msg = L": The length of the path argument exceeds {PATH_MAX}, or the length of a path component exceeds {NAME_MAX} while _POSIX_NO_TRUNC is in effect."; - CASE ENOTDIR : msg = L": A component of the path prefix is not a directory."; - CASE EPERM : msg = L": The calling process does not have the super-user privilege, the effective user ID is not the owner of the file, and times is not NULL, or the file system containing the file is mounted read-only"; - CASE EROFS : msg = L": The current file system level range does not envelop the level of the file named by path, and the calling process does not have the super-user privilege."; - CASE ENOSYS : msg = L": When the named file cannot have its time reset. The file is on a file system that doesn't have this operation."; - CASE EMFILE : msg = L": The maximum number of file descriptors are currently open."; - CASE ENFILE : msg = L": The system file table is full."; - CASE EBADF : msg = L": The file descriptor determined by the DIR stream is no longer valid. This result occurs if the DIR stream has been closed."; - CASE EINVAL : msg = L": 64-bit and non-64-bit calls were mixed in a sequence of calls."; - DEFAULT: - msg = L": Unknown error"; - + case -1: msg = m_msg; break; // // nothing + case EEXIST: msg = L": Directory was not created because filename is the name of an existing file, directory, or device"; break; + case ENOENT: msg = L": Path was not found, or the named file does not exist or is a null pathname."; break; + case ENOTEMPTY: msg = L": Given path is not a directory; directory is not empty; or directory is either current working directory or root directory"; break; + case EACCES: msg = L": Search permission is denied by a component of the path prefix, or write permission on the file named by path is denied, or times is NULL, and write access is denied"; break; + case EFAULT: msg = L": Times is not NULL and, or points outside the process's allocated address space."; break; + case EINTR: msg = L": A signal was caught during the utime system call."; break; + case ENAMETOOLONG: msg = L": The length of the path argument exceeds {PATH_MAX}, or the length of a path component exceeds {NAME_MAX} while _POSIX_NO_TRUNC is in effect."; break; + case ENOTDIR: msg = L": A component of the path prefix is not a directory."; break; + case EPERM: msg = L": The calling process does not have the super-user privilege, the effective user ID is not the owner of the file, and times is not NULL, or the file system containing the file is mounted read-only"; break; + case EROFS: msg = L": The current file system level range does not envelop the level of the file named by path, and the calling process does not have the super-user privilege."; break; + case ENOSYS: msg = L": When the named file cannot have its time reset. The file is on a file system that doesn't have this operation."; break; + case EMFILE: msg = L": The maximum number of file descriptors are currently open."; break; + case ENFILE: msg = L": The system file table is full."; break; + case EBADF: msg = L": The file descriptor determined by the DIR stream is no longer valid. This result occurs if the DIR stream has been closed."; break; + case EINVAL: msg = L": 64-bit and non-64-bit calls were mixed in a sequence of calls."; break; + default: msg = L": Unknown error"; break; #ifndef _WIN32 - CASE ELOOP : msg = L": Too many symbolic links were encountered in translating path."; + case ELOOP: msg = L": Too many symbolic links were encountered in translating path."; break; #ifndef MACOSX - CASE EMULTIHOP : msg = L": Components of path require hopping to multiple remote machines and the file system does not allow it."; - CASE ENOLINK : msg = L": Path points to a remote machine and the link to that machine is no longer active."; + case EMULTIHOP: msg = L": Components of path require hopping to multiple remote machines and the file system does not allow it."; break; + case ENOLINK: msg = L": Path points to a remote machine and the link to that machine is no longer active."; break; #endif #if defined(__sgi) - CASE EDIRCORRUPTED : msg = L": The directory is corrupted on disk."; + case EDIRCORRUPTED: msg = L": The directory is corrupted on disk."; break; #endif - CASE EOVERFLOW : msg = L": One of the inode number values or offset values did not fit in 32 bits, and the 64-bit interfaces were not used."; + case EOVERFLOW: msg = L": One of the inode number values or offset values did not fit in 32 bits, and the 64-bit interfaces were not used."; break; #endif } return m_fname.getWideString() + L"\n" + msg; diff --git a/toonz/sources/common/tvectorimage/tcomputeregions.cpp b/toonz/sources/common/tvectorimage/tcomputeregions.cpp index 9c9fa37..26b2e1d 100644 --- a/toonz/sources/common/tvectorimage/tcomputeregions.cpp +++ b/toonz/sources/common/tvectorimage/tcomputeregions.cpp @@ -1179,57 +1179,67 @@ bool makeEdgeIntersection(Intersection &interList, IntersectedStroke &item1, Int int fac = (angle1 < angle2) | ((angle1 < angle3) << 1) | ((angle2 < angle3) << 2); switch (fac) { - CASE 0 : //p1a p2b p2a p1b - insertBranch(interList, item1, true); + case 0: //p1a p2b p2a p1b + insertBranch(interList, item1, true); if (!eraseP2b) insertBranch(interList, item2, false); if (!eraseP2a) insertBranch(interList, item2, true); if (!eraseP1b) insertBranch(interList, item1, false); - CASE 1 : //p1a p2b p1b p2a - insertBranch(interList, item1, true); + break; + case 1: //p1a p2b p1b p2a + insertBranch(interList, item1, true); if (!eraseP2b) insertBranch(interList, item2, false); if (!eraseP1b) insertBranch(interList, item1, false); if (!eraseP2a) insertBranch(interList, item2, true); - CASE 2 : assert(false); - CASE 3 : //p1a p1b p2b p2a - insertBranch(interList, item1, true); + break; + case 2: + assert(false); + break; + case 3: //p1a p1b p2b p2a + insertBranch(interList, item1, true); if (!eraseP1b) insertBranch(interList, item1, false); if (!eraseP2b) insertBranch(interList, item2, false); if (!eraseP2a) insertBranch(interList, item2, true); - CASE 4 : //p1a p2a p2b p1b - insertBranch(interList, item1, true); + break; + case 4: //p1a p2a p2b p1b + insertBranch(interList, item1, true); if (!eraseP2a) insertBranch(interList, item2, true); if (!eraseP2b) insertBranch(interList, item2, false); if (!eraseP1b) insertBranch(interList, item1, false); - CASE 5 : assert(false); - CASE 6 : //p1a p2a p1b p2b - insertBranch(interList, item1, true); + break; + case 5: + assert(false); + break; + case 6: //p1a p2a p1b p2b + insertBranch(interList, item1, true); if (!eraseP2a) insertBranch(interList, item2, true); if (!eraseP1b) insertBranch(interList, item1, false); if (!eraseP2b) insertBranch(interList, item2, false); - CASE 7 : //p1a p1b p2a p2b - insertBranch(interList, item1, true); + break; + case 7: //p1a p1b p2a p2b + insertBranch(interList, item1, true); if (!eraseP1b) insertBranch(interList, item1, false); if (!eraseP2a) insertBranch(interList, item2, true); if (!eraseP2b) insertBranch(interList, item2, false); - DEFAULT: + break; + default: assert(false); } diff --git a/toonz/sources/common/tvrender/tcolorstyles.cpp b/toonz/sources/common/tvrender/tcolorstyles.cpp index c9fbafb..b592e3c 100644 --- a/toonz/sources/common/tvrender/tcolorstyles.cpp +++ b/toonz/sources/common/tvrender/tcolorstyles.cpp @@ -111,14 +111,21 @@ bool TColorStyle::operator==(const TColorStyle &cs) const case BOOL: if (getParamValue(bool_tag(), p) != cs.getParamValue(bool_tag(), p)) return false; - - CASE INT : case ENUM : if (getParamValue(int_tag(), p) != cs.getParamValue(int_tag(), p)) return false; - - CASE DOUBLE : if (getParamValue(double_tag(), p) != cs.getParamValue(double_tag(), p)) return false; - - CASE FILEPATH : if (getParamValue(TFilePath_tag(), p) != cs.getParamValue(TFilePath_tag(), p)) return false; - - DEFAULT: + break; + case INT: + case ENUM: + if (getParamValue(int_tag(), p) != cs.getParamValue(int_tag(), p)) + return false; + break; + case DOUBLE: + if (getParamValue(double_tag(), p) != cs.getParamValue(double_tag(), p)) + return false; + break; + case FILEPATH: + if (getParamValue(TFilePath_tag(), p) != cs.getParamValue(TFilePath_tag(), p)) + return false; + break; + default: assert(false); } } @@ -346,9 +353,11 @@ void TColorStyle::assignBlend(const TColorStyle &a, const TColorStyle &b, double for (par = 0; par != parCount; ++par) { switch (getParamType(par)) { - CASE DOUBLE : setParamValue(par, (1 - t) * a.getParamValue(double_tag(), par) + t * b.getParamValue(double_tag(), par)); - - DEFAULT:; + case DOUBLE: + setParamValue(par, (1 - t) * a.getParamValue(double_tag(), par) + t * b.getParamValue(double_tag(), par)); + break; + default: + break; } } } diff --git a/toonz/sources/common/tvrender/tflash.cpp b/toonz/sources/common/tvrender/tflash.cpp index acc38a9..8a1aead 100644 --- a/toonz/sources/common/tvrender/tflash.cpp +++ b/toonz/sources/common/tvrender/tflash.cpp @@ -242,10 +242,14 @@ bool PolyStyle::operator==(const PolyStyle &p) const switch (m_type) { case Centerline: return m_thickness == p.m_thickness && m_color1 == p.m_color1; - CASE Solid : return m_color1 == p.m_color1; - CASE Texture : return m_matrix == p.m_matrix && m_texture.getPointer() == p.m_texture.getPointer(); - CASE LinearGradient : __OR RadialGradient : return m_color1 == p.m_color1 && m_color2 == p.m_color2 && m_matrix == p.m_matrix && m_smooth == p.m_smooth; - DEFAULT: + case Solid: + return m_color1 == p.m_color1; + case Texture: + return m_matrix == p.m_matrix && m_texture.getPointer() == p.m_texture.getPointer(); + case LinearGradient: + case RadialGradient: + return m_color1 == p.m_color1 && m_color2 == p.m_color2 && m_matrix == p.m_matrix && m_smooth == p.m_smooth; + default: assert(false); return false; } @@ -281,10 +285,14 @@ bool PolyStyle::operator<(const PolyStyle &p) const switch (m_type) { case Centerline: return (m_thickness == p.m_thickness) ? m_color1 < p.m_color1 : m_thickness < p.m_thickness; - CASE Solid : return m_color1 < p.m_color1; - CASE Texture : return m_texture.getPointer() < p.m_texture.getPointer(); //ignoro la matrice!!!! - CASE LinearGradient : __OR RadialGradient : return (m_smooth == p.m_smooth) ? ((m_color1 == p.m_color1) ? ((m_color2 == p.m_color2) ? affineMinorThen(m_matrix, p.m_matrix) : m_color2 < p.m_color2) : m_color1 < p.m_color1) : m_smooth < p.m_smooth; - DEFAULT: + case Solid: + return m_color1 < p.m_color1; + case Texture: + return m_texture.getPointer() < p.m_texture.getPointer(); //ignoro la matrice!!!! + case LinearGradient: + case RadialGradient: + return (m_smooth == p.m_smooth) ? ((m_color1 == p.m_color1) ? ((m_color2 == p.m_color2) ? affineMinorThen(m_matrix, p.m_matrix) : m_color2 < p.m_color2) : m_color1 < p.m_color1) : m_smooth < p.m_smooth; + default: assert(false); return false; } diff --git a/toonz/sources/common/tvrender/tfont_nt.cpp b/toonz/sources/common/tvrender/tfont_nt.cpp index 7cbf774..649cf13 100644 --- a/toonz/sources/common/tvrender/tfont_nt.cpp +++ b/toonz/sources/common/tvrender/tfont_nt.cpp @@ -295,8 +295,10 @@ TPoint TFont::drawChar(TRasterGR8P &outImage, TPoint &glyphOrigin, wchar_t charc switch (srcPix->value) { case 0: tarPix->value = 0; - DEFAULT: + break; + default: tarPix->value = (srcPix->value << 2) - 1; + break; } ++srcPix; ++tarPix; diff --git a/toonz/sources/common/twain/ttwain_capability.c b/toonz/sources/common/twain/ttwain_capability.c index 06baf6b..4fbf2b8 100644 --- a/toonz/sources/common/twain/ttwain_capability.c +++ b/toonz/sources/common/twain/ttwain_capability.c @@ -25,14 +25,8 @@ ConvertOneValue2Enum() #include "ttwain_global_def.h" -#define CASE \ - break; \ - case -#define DEFAULT \ - break; \ - default - /*---------------------------------------------------------------------------*/ - static const size_t DCItemSize[13] = +/*---------------------------------------------------------------------------*/ +static const size_t DCItemSize[13] = { sizeof(TW_INT8), sizeof(TW_INT16), @@ -125,17 +119,22 @@ static int TTWAIN_GetCapability(TW_INT16 msgType, TW_UINT16 cap_id, TW_UINT16 co if (cont_size) { switch (TWON_TWON(cap.ConType, conType)) { - CASE TWON_TWON(TWON_ENUMERATION, TWON_ENUMERATION) : - *cont_size = GetContainerSize(TWON_ENUMERATION, my_enum->ItemType, my_enum->NumItems); - CASE TWON_TWON(TWON_ONEVALUE, TWON_ENUMERATION) : - *cont_size = GetContainerSize(TWON_ENUMERATION, my_one->ItemType, 1); - CASE TWON_TWON(TWON_ARRAY, TWON_ARRAY) : - *cont_size = GetContainerSize(TWON_ARRAY, my_array->ItemType, my_array->NumItems); - CASE TWON_TWON(TWON_ONEVALUE, TWON_ONEVALUE) : - *cont_size = GetContainerSize(TWON_ONEVALUE, my_one->ItemType, 1); - CASE TWON_TWON(TWON_ENUMERATION, TWON_ARRAY) : - *cont_size = GetContainerSize(TWON_ARRAY, my_enum->ItemType, my_enum->NumItems); - DEFAULT: + case TWON_TWON(TWON_ENUMERATION, TWON_ENUMERATION): + *cont_size = GetContainerSize(TWON_ENUMERATION, my_enum->ItemType, my_enum->NumItems); + break; + case TWON_TWON(TWON_ONEVALUE, TWON_ENUMERATION): + *cont_size = GetContainerSize(TWON_ENUMERATION, my_one->ItemType, 1); + break; + case TWON_TWON(TWON_ARRAY, TWON_ARRAY): + *cont_size = GetContainerSize(TWON_ARRAY, my_array->ItemType, my_array->NumItems); + break; + case TWON_TWON(TWON_ONEVALUE, TWON_ONEVALUE): + *cont_size = GetContainerSize(TWON_ONEVALUE, my_one->ItemType, 1); + break; + case TWON_TWON(TWON_ENUMERATION, TWON_ARRAY): + *cont_size = GetContainerSize(TWON_ARRAY, my_enum->ItemType, my_enum->NumItems); + break; + default: /* tmsg_error("Unable to convert type %d to %d (cap 0x%x)\n", cap.ConType, conType,cap_id);*/ assert(0); GLOBAL_UNLOCK(cap.hContainer); @@ -148,27 +147,36 @@ static int TTWAIN_GetCapability(TW_INT16 msgType, TW_UINT16 cap_id, TW_UINT16 co } switch (TWON_TWON(cap.ConType, conType)) { - CASE TWON_TWON(TWON_ENUMERATION, TWON_ENUMERATION) : size = GetContainerSize(cap.ConType, my_enum->ItemType, my_enum->NumItems); + case TWON_TWON(TWON_ENUMERATION, TWON_ENUMERATION): + size = GetContainerSize(cap.ConType, my_enum->ItemType, my_enum->NumItems); memcpy(data, my_enum, size); - - CASE TWON_TWON(TWON_ENUMERATION, TWON_RANGE) : ConvertEnumeration2Range(*my_enum, (TW_RANGE *)data); - - CASE TWON_TWON(TWON_ENUMERATION, TWON_ONEVALUE) : ConvertEnum2OneValue(*my_enum, (TW_ONEVALUE *)data); - - CASE TWON_TWON(TWON_ARRAY, TWON_ARRAY) : size = GetContainerSize(cap.ConType, my_array->ItemType, my_array->NumItems); + break; + case TWON_TWON(TWON_ENUMERATION, TWON_RANGE): + ConvertEnumeration2Range(*my_enum, (TW_RANGE *)data); + break; + case TWON_TWON(TWON_ENUMERATION, TWON_ONEVALUE): + ConvertEnum2OneValue(*my_enum, (TW_ONEVALUE *)data); + break; + case TWON_TWON(TWON_ARRAY, TWON_ARRAY): + size = GetContainerSize(cap.ConType, my_array->ItemType, my_array->NumItems); memcpy(data, my_array, size); - - CASE TWON_TWON(TWON_ONEVALUE, TWON_ONEVALUE) : memcpy(data, my_one, sizeof(TW_ONEVALUE)); - - CASE TWON_TWON(TWON_ONEVALUE, TWON_RANGE) : ConvertOneValue2Range(*my_one, (TW_RANGE *)data); - - CASE TWON_TWON(TWON_ONEVALUE, TWON_ENUMERATION) : ConvertOneValue2Enum(*my_one, (TW_ENUMERATION *)data); - - CASE TWON_TWON(TWON_RANGE, TWON_RANGE) : memcpy(data, my_range, sizeof(TW_RANGE)); - - CASE TWON_TWON(TWON_ENUMERATION, TWON_ARRAY) : ConvertEnum2Array(*my_enum, (TW_ARRAY *)data); - - DEFAULT: + break; + case TWON_TWON(TWON_ONEVALUE, TWON_ONEVALUE): + memcpy(data, my_one, sizeof(TW_ONEVALUE)); + break; + case TWON_TWON(TWON_ONEVALUE, TWON_RANGE): + ConvertOneValue2Range(*my_one, (TW_RANGE *)data); + break; + case TWON_TWON(TWON_ONEVALUE, TWON_ENUMERATION): + ConvertOneValue2Enum(*my_one, (TW_ENUMERATION *)data); + break; + case TWON_TWON(TWON_RANGE, TWON_RANGE): + memcpy(data, my_range, sizeof(TW_RANGE)); + break; + case TWON_TWON(TWON_ENUMERATION, TWON_ARRAY): + ConvertEnum2Array(*my_enum, (TW_ARRAY *)data); + break; + default: assert(0); GLOBAL_UNLOCK(cap.hContainer); GLOBAL_FREE(cap.hContainer); diff --git a/toonz/sources/common/twain/ttwain_state.c b/toonz/sources/common/twain/ttwain_state.c index 28db069..c751fd1 100644 --- a/toonz/sources/common/twain/ttwain_state.c +++ b/toonz/sources/common/twain/ttwain_state.c @@ -30,12 +30,6 @@ extern int exitTwainSession(void); #endif static void TTWAIN_FreeVar(void); -#define CASE \ - break; \ - case -#define DEFAULT \ - break; \ - default #define RELEASE_STR "5.1" #define TITLEBAR_STR "Toonz5.1" #define TwProgramName "Toonz5.1" @@ -989,7 +983,8 @@ memset(targetBuffer, 0xff, TTwainData.transferInfo.memorySize); rc3 = TTWAIN_DS(DG_IMAGE, DAT_IMAGEMEMXFER, MSG_GET, (TW_MEMREF)imageMemXfer); nTransferDone++; switch (rc3) { - CASE TWRC_SUCCESS : PRINTF("IMAGEMEMXFER, GET, returns SUCCESS\n"); + case TWRC_SUCCESS: + PRINTF("IMAGEMEMXFER, GET, returns SUCCESS\n"); if (imgInfoOk) { TW_UINT32 colsToCopy; rowsToCopy = MIN(imageMemXfer->Rows, rowsRemaining); @@ -1022,7 +1017,10 @@ memset(targetBuffer, 0xff, TTwainData.transferInfo.memorySize); sourceBuffer += imageMemXfer->BytesPerRow; } rowsRemaining -= rowsToCopy; - CASE TWRC_XFERDONE : PRINTF("IMAGEMEMXFER, GET, returns XFERDONE\n"); + break; + + case TWRC_XFERDONE: + PRINTF("IMAGEMEMXFER, GET, returns XFERDONE\n"); /*copy the last transfer data*/ if (imgInfoOk) { TW_UINT32 colsToCopy; @@ -1079,7 +1077,8 @@ memset(targetBuffer, 0xff, TTwainData.transferInfo.memorySize); ret = TRUE; goto done; - CASE TWRC_CANCEL : TTWAIN_RecordError(); + case TWRC_CANCEL: + TTWAIN_RecordError(); twRC2 = TTWAIN_DS(DG_CONTROL, DAT_PENDINGXFERS, MSG_ENDXFER, (TW_MEMREF)&TTwainData.transferInfo.pendingXfers); if (twRC2 != TWRC_SUCCESS) { @@ -1090,8 +1089,10 @@ memset(targetBuffer, 0xff, TTwainData.transferInfo.memorySize); ret = FALSE; goto done; } + break; - CASE TWRC_FAILURE : PRINTF("IMAGEMEMXFER, GET, returns FAILURE\n"); + case TWRC_FAILURE: + PRINTF("IMAGEMEMXFER, GET, returns FAILURE\n"); TTWAIN_RecordError(); twRC2 = TTWAIN_DS(DG_CONTROL, DAT_PENDINGXFERS, MSG_ENDXFER, (TW_MEMREF)&TTwainData.transferInfo.pendingXfers); @@ -1103,7 +1104,9 @@ memset(targetBuffer, 0xff, TTwainData.transferInfo.memorySize); ret = FALSE; goto done; } - DEFAULT: + break; + + default: PRINTF("IMAGEMEMXFER, GET, returns ?!? Default handler called\n"); /* Abort the image */ TTWAIN_RecordError(); @@ -1132,11 +1135,18 @@ done: xdpi = TTWAIN_Fix32ToFloat(info.XResolution); ydpi = TTWAIN_Fix32ToFloat(info.YResolution); switch (BB(info.PixelType, info.BitsPerPixel)) { - CASE BB(TWPT_BW, 1) : pixType = TTWAIN_BW; - CASE BB(TWPT_GRAY, 8) : pixType = TTWAIN_GRAY8; - CASE BB(TWPT_RGB, 24) : pixType = TTWAIN_RGB24; - DEFAULT: + case BB(TWPT_BW, 1): + pixType = TTWAIN_BW; + break; + case BB(TWPT_GRAY, 8): + pixType = TTWAIN_GRAY8; + break; + case BB(TWPT_RGB, 24): pixType = TTWAIN_RGB24; + break; + default: + pixType = TTWAIN_RGB24; + break; } } else { float lx = TTWAIN_Fix32ToFloat(imageLayout.Frame.Right) - TTWAIN_Fix32ToFloat(imageLayout.Frame.Left); @@ -1145,20 +1155,6 @@ done: xdpi = (float)TTwainData.transferInfo.preferredLx / lx; ydpi = (float)TTwainData.transferInfo.preferredLy / ly; - /* - TW_UINT16 rc = TTWAIN_GetCurrentPixelType(&pixType); - printf("get cur pix type %s\n", (rc==TWRC_SUCCESS)?"OK":"FAIL"); - if (rc == TWRC_SUCCESS) - switch (pixType) - { - CASE TWPT_BW : pixType = TTWAIN_BW; - CASE TWPT_GRAY: pixType = TTWAIN_GRAY8; - CASE TWPT_RGB : pixType = TTWAIN_RGB24; - DEFAULT : pixType = TTWAIN_RGB24; - } - else - pixType = TTWAIN_RGB24; - */ switch (imageMemXfer->BytesPerRow / TTwainData.transferInfo.preferredLx) { case 1: pixType = TTWAIN_GRAY8; diff --git a/toonz/sources/common/twain/ttwain_stateW.c b/toonz/sources/common/twain/ttwain_stateW.c index fc28451..a616a0c 100644 --- a/toonz/sources/common/twain/ttwain_stateW.c +++ b/toonz/sources/common/twain/ttwain_stateW.c @@ -3,6 +3,7 @@ #pragma warning(disable : 4996) #include +#include #include "ttwain_state.h" #include "ttwainP.h" diff --git a/toonz/sources/common/twain/ttwain_util.c b/toonz/sources/common/twain/ttwain_util.c index af691b2..b5c7165 100644 --- a/toonz/sources/common/twain/ttwain_util.c +++ b/toonz/sources/common/twain/ttwain_util.c @@ -90,13 +90,6 @@ l'immagine) #define FLAVOR_UNUSED (0xffff) -#define CASE \ - break; \ - case -#define __OR case -#define DEFAULT \ - break; \ - default struct TTWAIN_PIXELTYPEP { TW_UINT16 type; TW_UINT16 flavor; @@ -985,24 +978,26 @@ if (TTwainData.transferInfo.usageMode == TTWAIN_MODE_UNLEASHED) { switch (range.ItemType) { case TWTY_INT8: - __OR TWTY_INT16 : __OR TWTY_INT32 : __OR TWTY_UINT8 : __OR TWTY_UINT16 : return (float)range.MinValue; + case TWTY_INT16: + case TWTY_INT32: + case TWTY_UINT8: + case TWTY_UINT16: + return (float)range.MinValue; - CASE TWTY_FIX32: + case TWTY_FIX32: { TW_FIX32 *fix32 = (TW_FIX32 *)&range.MinValue; return (float)TTWAIN_Fix32ToFloat(*fix32); } - DEFAULT: - /* - TWTY_UINT32 - TWTY_BOOL - TWTY_FRAME - TWTY_STR32 - TWTY_STR64 - TWTY_STR128 - TWTY_STR255 - */ + default: + // TWTY_UINT32 + // TWTY_BOOL + // TWTY_FRAME + // TWTY_STR32 + // TWTY_STR64 + // TWTY_STR128 + // TWTY_STR255 assert(!"Invalid type!!!"); return 0; } @@ -1013,24 +1008,26 @@ if (TTwainData.transferInfo.usageMode == TTWAIN_MODE_UNLEASHED) { switch (range.ItemType) { case TWTY_INT8: - __OR TWTY_INT16 : __OR TWTY_INT32 : __OR TWTY_UINT8 : __OR TWTY_UINT16 : return (float)range.MaxValue; + case TWTY_INT16: + case TWTY_INT32: + case TWTY_UINT8: + case TWTY_UINT16: + return (float)range.MaxValue; - CASE TWTY_FIX32: + case TWTY_FIX32: { TW_FIX32 *fix32 = (TW_FIX32 *)&range.MaxValue; return (float)TTWAIN_Fix32ToFloat(*fix32); } - DEFAULT: - /* - TWTY_UINT32 - TWTY_BOOL - TWTY_FRAME - TWTY_STR32 - TWTY_STR64 - TWTY_STR128 - TWTY_STR255 - */ + default: + // TWTY_UINT32 + // TWTY_BOOL + // TWTY_FRAME + // TWTY_STR32 + // TWTY_STR64 + // TWTY_STR128 + // TWTY_STR255 assert(!"Invalid type!!"); return 0; } @@ -1041,24 +1038,26 @@ if (TTwainData.transferInfo.usageMode == TTWAIN_MODE_UNLEASHED) { switch (range.ItemType) { case TWTY_INT8: - __OR TWTY_INT16 : __OR TWTY_INT32 : __OR TWTY_UINT8 : __OR TWTY_UINT16 : return (float)range.DefaultValue; + case TWTY_INT16: + case TWTY_INT32: + case TWTY_UINT8: + case TWTY_UINT16: + return (float)range.DefaultValue; - CASE TWTY_FIX32: + case TWTY_FIX32: { TW_FIX32 *fix32 = (TW_FIX32 *)&range.DefaultValue; return (float)TTWAIN_Fix32ToFloat(*fix32); } - DEFAULT: - /* - TWTY_UINT32 - TWTY_BOOL - TWTY_FRAME - TWTY_STR32 - TWTY_STR64 - TWTY_STR128 - TWTY_STR255 - */ + default: + // TWTY_UINT32 + // TWTY_BOOL + // TWTY_FRAME + // TWTY_STR32 + // TWTY_STR64 + // TWTY_STR128 + // TWTY_STR255 assert(!"Invalid type!!"); return 0; } @@ -1069,24 +1068,26 @@ if (TTwainData.transferInfo.usageMode == TTWAIN_MODE_UNLEASHED) { switch (range.ItemType) { case TWTY_INT8: - __OR TWTY_INT16 : __OR TWTY_INT32 : __OR TWTY_UINT8 : __OR TWTY_UINT16 : return (float)range.StepSize; + case TWTY_INT16: + case TWTY_INT32: + case TWTY_UINT8: + case TWTY_UINT16: + return (float)range.StepSize; - CASE TWTY_FIX32: + case TWTY_FIX32: { TW_FIX32 *fix32 = (TW_FIX32 *)&range.StepSize; return (float)TTWAIN_Fix32ToFloat(*fix32); } - DEFAULT: - /* - TWTY_UINT32 - TWTY_BOOL - TWTY_FRAME - TWTY_STR32 - TWTY_STR64 - TWTY_STR128 - TWTY_STR255 - */ + default: + // TWTY_UINT32 + // TWTY_BOOL + // TWTY_FRAME + // TWTY_STR32 + // TWTY_STR64 + // TWTY_STR128 + // TWTY_STR255 assert(!"Invalid type!!"); return 0; } diff --git a/toonz/sources/common/twain/ttwain_utilW.c b/toonz/sources/common/twain/ttwain_utilW.c index 83f2283..1cbde5c 100644 --- a/toonz/sources/common/twain/ttwain_utilW.c +++ b/toonz/sources/common/twain/ttwain_utilW.c @@ -39,134 +39,6 @@ static LPBYTE get_buffer(LPBITMAPINFOHEADER lpbi, int *iud) int TTWAIN_Native2RasterPD(void *handle, void *the_ras, int *lx, int *ly) { assert(!"DAFARE"); -#if 0 -LPBITMAPINFOHEADER lpBIH; -LPBYTE buffer; -int is_upside_down; -int ras_type = 0; -int linesize; -float ras_bpp = 0; -TUINT32 rebound; -UCHAR *ras_out; -int y,x; -float xDpi, yDpi; -DWORD bitmap_size; -int extraX, extraY, extraByteX; -TUINT32 tot_rebound = 0; - -RASTER *ras = (RASTER *) the_ras; -if (!handle) - return FALSE; -/*DAFARE -if (!ras) - return FALSE; -*/ -lpBIH = (LPBITMAPINFOHEADER) GLOBAL_LOCK(handle); - -extraX = (int)lpBIH->biWidth - ras->lx; -extraY = (int)lpBIH->biHeight- ras->ly; - -*lx = lpBIH->biWidth ; -*ly = lpBIH->biHeight; - -assert(extraX>=0); -assert(extraY>=0); - -xDpi = PelsPerMeter2DPI(lpBIH->biXPelsPerMeter); -yDpi = PelsPerMeter2DPI(lpBIH->biYPelsPerMeter); - -switch (lpBIH->biBitCount) - { - CASE 1: - ras_type = RAS_BW; - ras_bpp = 1.0/8.0; - CASE 8: - ras_type = RAS_GR8; - ras_bpp = 1; - CASE 24: - ras_type = RAS_RGB; - ras_bpp = 3; - DEFAULT: - assert(0); - } -extraByteX = CEIL(extraX * ras_bpp); -bitmap_size = ((((lpBIH->biWidth * lpBIH->biBitCount) + 31) & ~31) >> 3) * lpBIH->biHeight; -/* cfr. DIBs and Their Use - Ron Gery - Microsoft Developer Network Technology Group -*/ -ras_out = ras->buffer; - -buffer = 0; -buffer = get_buffer(lpBIH, &is_upside_down); - -if (is_upside_down) - { - ras_out = ras->buffer; - if (!TTwainData.transferInfo.nextImageNeedsToBeInverted) - { - switch (ras_type) - { - CASE RAS_GR8: - __OR RAS_RGB: - __OR RAS_BW: - linesize = CEIL(ras->lx * ras_bpp); - for (y =0; yly; y++, ras_out += linesize) - { - memcpy(ras_out, buffer, linesize); - buffer += linesize; - buffer += extraByteX; - rebound = (TUINT32) buffer; - rebound = 4 - (rebound %4); - tot_rebound +=rebound; - buffer += rebound; - } - } - } - else - { - switch (ras_type) - { - CASE RAS_BW: - linesize = CEIL(ras->lx * ras_bpp); - for (y =0; yly; y++, ras_out) - { - for (x = 0; xbiSize) - { - assert((lpBIH->biSizeImage-CEIL(ras->lx*ras->ly*ras_bpp))==tot_rebound); - } -} -#endif -return TRUE; -#endif return 1; } diff --git a/toonz/sources/image/avi/tiio_avi.cpp b/toonz/sources/image/avi/tiio_avi.cpp index 6ce9fe5..2363172 100644 --- a/toonz/sources/image/avi/tiio_avi.cpp +++ b/toonz/sources/image/avi/tiio_avi.cpp @@ -39,18 +39,15 @@ void WideChar2Char(LPCWSTR wideCharStr, char *str, int strBuffSize) std::string buildAVIExceptionString(int rc) { switch (rc) { - CASE AVIERR_BADFORMAT : return "The file couldn't be read, indicating a corrupt file or an unrecognized format."; - CASE AVIERR_MEMORY : return "The file could not be opened because of insufficient memory."; - CASE AVIERR_FILEREAD : return "A disk error occurred while reading the file."; - CASE AVIERR_FILEOPEN : return "A disk error occurred while opening the file."; - CASE REGDB_E_CLASSNOTREG : return "According to the registry, the type of file specified in m_aviFileOpen does not have a handler to process it."; - - CASE AVIERR_UNSUPPORTED : return "Format unsupported"; - CASE AVIERR_INTERNAL : return "Internal error"; - CASE AVIERR_NODATA : return "No data"; - - DEFAULT: - return "Unable to create avi."; + case AVIERR_BADFORMAT : return "The file couldn't be read, indicating a corrupt file or an unrecognized format."; + case AVIERR_MEMORY : return "The file could not be opened because of insufficient memory."; + case AVIERR_FILEREAD : return "A disk error occurred while reading the file."; + case AVIERR_FILEOPEN : return "A disk error occurred while opening the file."; + case REGDB_E_CLASSNOTREG : return "According to the registry, the type of file specified in m_aviFileOpen does not have a handler to process it."; + case AVIERR_UNSUPPORTED : return "Format unsupported"; + case AVIERR_INTERNAL : return "Internal error"; + case AVIERR_NODATA : return "No data"; + default: return "Unable to create avi."; } } @@ -942,21 +939,19 @@ TImageP TLevelReaderAvi::load(int frameIndex) int bpp = m_dstBitmapInfo->bmiHeader.biBitCount; m_prevFrame = frameIndex; switch (bpp) { - CASE 32: - { - TRasterPT ret; - ret.create(width, height); - ret->lock(); - memcpy(ret->getRawData(), m_decompressedBuffer, width * height * 4); - ret->unlock(); - return TRasterImageP(ret); - } - CASE 24: - { - TRasterImageP i(DIBToRaster((UCHAR *)m_decompressedBuffer, width, height)); - return i; - } - DEFAULT : { + case 32: { + TRasterPT ret; + ret.create(width, height); + ret->lock(); + memcpy(ret->getRawData(), m_decompressedBuffer, width * height * 4); + ret->unlock(); + return TRasterImageP(ret); + } + case 24: { + TRasterImageP i(DIBToRaster((UCHAR *)m_decompressedBuffer, width, height)); + return i; + } + default: { throw TImageException(m_path, toString(bpp) + " to 32 bit not supported\n"); } } diff --git a/toonz/sources/image/compatibility/inforegion.c b/toonz/sources/image/compatibility/inforegion.c index 837400c..189b89c 100644 --- a/toonz/sources/image/compatibility/inforegion.c +++ b/toonz/sources/image/compatibility/inforegion.c @@ -248,14 +248,17 @@ int get_info_region(EXT_INFO_REGION *region, appoNrow = MIN((region->scanNrow * scale), height_in); switch (orientation) { - CASE TNZ_TOPLEFT : region->buf_inc = 1; + case TNZ_TOPLEFT: + region->buf_inc = 1; region->y_offset += region->scanNrow - 1; region->verso_x = 0; region->verso_y = -1; region->sxpix = region->startScanCol; region->sypix = height_in - region->startScanRow - appoNrow; region->sypix = MAX(0, region->sypix); - CASE TNZ_TOPRIGHT : region->buf_inc = -1; + break; + case TNZ_TOPRIGHT: + region->buf_inc = -1; region->y_offset += region->scanNrow - 1; region->x_offset += region->scanNcol - 1; region->verso_x = 0; @@ -264,24 +267,32 @@ int get_info_region(EXT_INFO_REGION *region, region->sypix = height_in - region->startScanRow - appoNrow; region->sxpix = MAX(0, region->sxpix); region->sypix = MAX(0, region->sypix); - CASE TNZ_BOTRIGHT : region->buf_inc = -1; + break; + case TNZ_BOTRIGHT: + region->buf_inc = -1; region->x_offset += region->scanNcol - 1; region->verso_x = 0; region->verso_y = 1; region->sxpix = width_in - region->startScanCol - appoNcol; region->sypix = region->startScanRow; - CASE TNZ_BOTLEFT : region->buf_inc = 1; + break; + case TNZ_BOTLEFT: + region->buf_inc = 1; region->verso_x = 0; region->verso_y = 1; region->sxpix = region->startScanCol; region->sypix = region->startScanRow; - CASE TNZ_LEFTOP : region->buf_inc = -region->xsize; + break; + case TNZ_LEFTOP: + region->buf_inc = -region->xsize; region->y_offset += region->scanNrow - 1; region->verso_x = 1; region->verso_y = 0; region->sxpix = height_in - region->startScanRow - appoNrow; region->sypix = region->startScanCol; - CASE TNZ_RIGHTOP : region->buf_inc = -region->xsize; + break; + case TNZ_RIGHTOP: + region->buf_inc = -region->xsize; region->y_offset += region->scanNrow - 1; region->x_offset += region->scanNcol - 1; region->verso_x = -1; @@ -290,18 +301,23 @@ int get_info_region(EXT_INFO_REGION *region, region->sxpix = 0; if ((region->sypix = width_in - region->startScanCol - appoNcol) < 0) region->sypix = 0; - CASE TNZ_RIGHTBOT : region->buf_inc = region->xsize; + break; + case TNZ_RIGHTBOT: + region->buf_inc = region->xsize; region->x_offset += region->scanNcol - 1; region->verso_x = -1; region->verso_y = 0; region->sxpix = region->startScanRow; region->sypix = width_in - region->startScanCol - appoNcol; - CASE TNZ_LEFTBOT : region->buf_inc = region->xsize; + break; + case TNZ_LEFTBOT: + region->buf_inc = region->xsize; region->verso_x = 1; region->verso_y = 0; region->sxpix = region->startScanRow; region->sypix = region->startScanCol; - DEFAULT: + break; + default: printf("error: bad orientation type\n"); return FALSE; } diff --git a/toonz/sources/image/compatibility/tnz4.h b/toonz/sources/image/compatibility/tnz4.h index d84950c..1387fbe 100644 --- a/toonz/sources/image/compatibility/tnz4.h +++ b/toonz/sources/image/compatibility/tnz4.h @@ -74,18 +74,6 @@ typedef struct IMAGE { #define TOONZRGB (1234) #define TOONZRGB64 (4567) -#define CASE \ - break; \ - case -#ifndef __OR -#define __OR \ - ; \ - case -#endif -#define DEFAULT \ - break; \ - default - #define TMALLOC(ptr, elem) \ (ptr) = (void *)malloc((elem) * sizeof(*(ptr))); #define TCALLOC(ptr, elem) \ diff --git a/toonz/sources/image/pli/pli_io.cpp b/toonz/sources/image/pli/pli_io.cpp index 770e997..073245d 100644 --- a/toonz/sources/image/pli/pli_io.cpp +++ b/toonz/sources/image/pli/pli_io.cpp @@ -289,14 +289,13 @@ inline MyIfstream &MyIfstream::operator>>(string &un) UINT TStyleParam::getSize() { switch (m_type) { - case SP_BYTE: - return 1; - CASE SP_INT : return 4; - CASE SP_DOUBLE : return 4; - CASE SP_USHORT : return 2; - CASE SP_RASTER : return 2 + 2 + m_r->getLx() * m_r->getLy() * m_r->getPixelSize(); - CASE SP_STRING : return (m_string.size() + sizeof(USHORT)); - DEFAULT: + case SP_BYTE : return 1; + case SP_INT : return 4; + case SP_DOUBLE: return 4; + case SP_USHORT: return 2; + case SP_RASTER: return 2 + 2 + m_r->getLx() * m_r->getLy() * m_r->getPixelSize(); + case SP_STRING: return (m_string.size() + sizeof(USHORT)); + default: assert(false); return 0; } @@ -745,9 +744,15 @@ void ParsedPliImp::loadInfo(bool readPlt, TPalette *&palette, TContentHistory *& switch (type) { case PliTag::SET_DATA_8_CNTRL: m_currDinamicTypeBytesNum = 1; - CASE PliTag::SET_DATA_16_CNTRL : m_currDinamicTypeBytesNum = 2; - CASE PliTag::SET_DATA_32_CNTRL : m_currDinamicTypeBytesNum = 4; - DEFAULT:; + break; + case PliTag::SET_DATA_16_CNTRL: + m_currDinamicTypeBytesNum = 2; + break; + case PliTag::SET_DATA_32_CNTRL: + m_currDinamicTypeBytesNum = 4; + break; + default: + break; } } pos = m_iChan.tellg(); @@ -788,15 +793,25 @@ USHORT ParsedPliImp::readTagHeader() switch (tagLengthId) { case 0x0: m_tagLength = 0; - CASE 0x1 : UCHAR clength; + break; + case 0x1: { + UCHAR clength; m_iChan >> clength; m_tagLength = clength; - CASE 0x2 : USHORT slength; + break; + } + case 0x2: { + USHORT slength; m_iChan >> slength; m_tagLength = slength; - CASE 0x3 : m_iChan >> m_tagLength; - DEFAULT: + break; + } + case 0x3: + m_iChan >> m_tagLength; + break; + default: assert(false); + break; } return tagType; @@ -895,14 +910,23 @@ TagElem *ParsedPliImp::readTag() switch (tagLengthId) { case 0x0: m_tagLength = 0; - CASE 0x1 : UCHAR clength; + break; + case 0x1: { + UCHAR clength; m_iChan >> clength; m_tagLength = clength; - CASE 0x2 : USHORT slength; + break; + } + case 0x2: { + USHORT slength; m_iChan >> slength; m_tagLength = slength; - CASE 0x3 : m_iChan >> m_tagLength; - DEFAULT: + break; + } + case 0x3: + m_iChan >> m_tagLength; + break; + default: assert(false); } @@ -921,25 +945,58 @@ TagElem *ParsedPliImp::readTag() switch (tagType) { case PliTag::SET_DATA_8_CNTRL: m_currDinamicTypeBytesNum = 1; - CASE PliTag::SET_DATA_16_CNTRL : m_currDinamicTypeBytesNum = 2; - CASE PliTag::SET_DATA_32_CNTRL : m_currDinamicTypeBytesNum = 4; - CASE PliTag::TEXT : newTag = readTextTag(); - CASE PliTag::PALETTE : newTag = readPaletteTag(); - CASE PliTag::PALETTE_WITH_ALPHA : newTag = readPaletteWithAlphaTag(); - CASE PliTag::THICK_QUADRATIC_CHAIN_GOBJ : __OR PliTag::THICK_QUADRATIC_LOOP_GOBJ : newTag = readThickQuadraticChainTag(tagType == PliTag::THICK_QUADRATIC_LOOP_GOBJ); - CASE PliTag::GROUP_GOBJ : newTag = readGroupTag(); - CASE PliTag::IMAGE_GOBJ : newTag = readImageTag(); - CASE PliTag::COLOR_NGOBJ : newTag = readColorTag(); - CASE PliTag::STYLE_NGOBJ : newTag = readStyleTag(); - CASE PliTag::GEOMETRIC_TRANSFORMATION_GOBJ : newTag = readGeometricTransformationTag(); - CASE PliTag::DOUBLEPAIR_OBJ : newTag = readDoublePairTag(); - CASE PliTag::BITMAP_GOBJ : newTag = readBitmapTag(); - CASE PliTag::INTERSECTION_DATA_GOBJ : newTag = readIntersectionDataTag(); - CASE PliTag::OUTLINE_OPTIONS_GOBJ : newTag = readOutlineOptionsTag(); - CASE PliTag::PRECISION_SCALE_GOBJ : newTag = readPrecisionScaleTag(); - - CASE PliTag::END_CNTRL : return 0; - DEFAULT:; + break; + case PliTag::SET_DATA_16_CNTRL: + m_currDinamicTypeBytesNum = 2; + break; + case PliTag::SET_DATA_32_CNTRL: + m_currDinamicTypeBytesNum = 4; + break; + case PliTag::TEXT: + newTag = readTextTag(); + break; + case PliTag::PALETTE: + newTag = readPaletteTag(); + break; + case PliTag::PALETTE_WITH_ALPHA: + newTag = readPaletteWithAlphaTag(); + break; + case PliTag::THICK_QUADRATIC_CHAIN_GOBJ: + case PliTag::THICK_QUADRATIC_LOOP_GOBJ: + newTag = readThickQuadraticChainTag(tagType == PliTag::THICK_QUADRATIC_LOOP_GOBJ); + break; + case PliTag::GROUP_GOBJ: + newTag = readGroupTag(); + break; + case PliTag::IMAGE_GOBJ: + newTag = readImageTag(); + break; + case PliTag::COLOR_NGOBJ: + newTag = readColorTag(); + break; + case PliTag::STYLE_NGOBJ: + newTag = readStyleTag(); + break; + case PliTag::GEOMETRIC_TRANSFORMATION_GOBJ: + newTag = readGeometricTransformationTag(); + break; + case PliTag::DOUBLEPAIR_OBJ: + newTag = readDoublePairTag(); + break; + case PliTag::BITMAP_GOBJ: + newTag = readBitmapTag(); + break; + case PliTag::INTERSECTION_DATA_GOBJ: + newTag = readIntersectionDataTag(); + break; + case PliTag::OUTLINE_OPTIONS_GOBJ: + newTag = readOutlineOptionsTag(); + break; + case PliTag::PRECISION_SCALE_GOBJ: + newTag = readPrecisionScaleTag(); + break; + case PliTag::END_CNTRL: + return 0; } if (newTag) @@ -984,16 +1041,22 @@ inline void ParsedPliImp::readDinamicData(TUINT32 &val, TUINT32 &bufOffs) switch (m_currDinamicTypeBytesNum) { case 1: val = m_buf[bufOffs++]; - CASE 2 : if (m_isIrixEndian) - val = m_buf[bufOffs + 1] | (m_buf[bufOffs] << 8); - else val = m_buf[bufOffs] | (m_buf[bufOffs + 1] << 8); - + break; + case 2: + if (m_isIrixEndian) + val = m_buf[bufOffs + 1] | (m_buf[bufOffs] << 8); + else + val = m_buf[bufOffs] | (m_buf[bufOffs + 1] << 8); bufOffs += 2; - CASE 4 : if (m_isIrixEndian) - val = m_buf[bufOffs + 3] | (m_buf[bufOffs + 2] << 8) | (m_buf[bufOffs + 1] << 16) | (m_buf[bufOffs] << 24); - else val = m_buf[bufOffs] | (m_buf[bufOffs + 1] << 8) | (m_buf[bufOffs + 2] << 16) | (m_buf[bufOffs + 3] << 24); + break; + case 4: + if (m_isIrixEndian) + val = m_buf[bufOffs + 3] | (m_buf[bufOffs + 2] << 8) | (m_buf[bufOffs + 1] << 16) | (m_buf[bufOffs] << 24); + else + val = m_buf[bufOffs] | (m_buf[bufOffs + 1] << 8) | (m_buf[bufOffs + 2] << 16) | (m_buf[bufOffs + 3] << 24); bufOffs += 4; - DEFAULT: + break; + default: assert(false); } } @@ -1012,16 +1075,16 @@ inline bool ParsedPliImp::readDinamicData(TINT32 &val, TUINT32 &bufOffs) isNegative = true; } bufOffs++; - CASE 2 : if (m_isIrixEndian) - { + break; + case 2: + if (m_isIrixEndian) { val = (m_buf[bufOffs + 1] | (m_buf[bufOffs] << 8)) & 0x7fff; if (m_buf[bufOffs] & 0x80) { val = -val; isNegative = true; } } - else - { + else { val = (m_buf[bufOffs] | (m_buf[bufOffs + 1] << 8)) & 0x7fff; if (m_buf[bufOffs + 1] & 0x80) { val = -val; @@ -1029,16 +1092,16 @@ inline bool ParsedPliImp::readDinamicData(TINT32 &val, TUINT32 &bufOffs) } } bufOffs += 2; - CASE 4 : if (m_isIrixEndian) - { + break; + case 4: + if (m_isIrixEndian) { val = m_buf[bufOffs + 3] | (m_buf[bufOffs + 2] << 8) | (m_buf[bufOffs + 1] << 16) | (m_buf[bufOffs] << 24) & 0x7fffffff; if (m_buf[bufOffs] & 0x80) { val = -val; isNegative = true; } } - else - { + else { val = m_buf[bufOffs] | (m_buf[bufOffs + 1] << 8) | (m_buf[bufOffs + 2] << 16) | (m_buf[bufOffs + 3] << 24) & 0x7fffffff; if (m_buf[bufOffs + 3] & 0x80) { val = -val; @@ -1046,8 +1109,8 @@ inline bool ParsedPliImp::readDinamicData(TINT32 &val, TUINT32 &bufOffs) } } bufOffs += 4; - - DEFAULT: + break; + default: assert(false); } return isNegative; @@ -1307,21 +1370,34 @@ PliTag *ParsedPliImp::readStyleTag() case TStyleParam::SP_BYTE: param.m_numericVal = m_buf[bufOffs++]; lenght--; - CASE TStyleParam::SP_USHORT : USHORT val; + break; + case TStyleParam::SP_USHORT: { + USHORT val; readUShortData(val, bufOffs); param.m_numericVal = val; lenght -= 2; - CASE TStyleParam::SP_INT : __OR TStyleParam::SP_DOUBLE : readFloatData(param.m_numericVal, bufOffs); + break; + } + case TStyleParam::SP_INT: + case TStyleParam::SP_DOUBLE: + readFloatData(param.m_numericVal, bufOffs); lenght -= 4; - CASE TStyleParam::SP_RASTER : lenght -= readRasterData(param.m_r, bufOffs); - CASE TStyleParam::SP_STRING : USHORT strLen; + break; + case TStyleParam::SP_RASTER: + lenght -= readRasterData(param.m_r, bufOffs); + break; + case TStyleParam::SP_STRING: { + USHORT strLen; readUShortData(strLen, bufOffs); //bufOffs+=2; param.m_string = ""; - for (i = 0; i < strLen; i++) + for (i = 0; i < strLen; i++) { param.m_string.append(1, m_buf[bufOffs++]); + } lenght -= strLen + sizeof(USHORT); - DEFAULT: + break; + } + default: assert(false); } paramArray.push_back(param); @@ -1738,21 +1814,47 @@ void ParsedPliImp::writeTag(TagElem *elem) switch (elem->m_tag->m_type) { case PliTag::TEXT: elem->m_offset = writeTextTag((TextTag *)elem->m_tag); - CASE PliTag::PALETTE : elem->m_offset = writePaletteTag((PaletteTag *)elem->m_tag); - CASE PliTag::PALETTE_WITH_ALPHA : elem->m_offset = writePaletteWithAlphaTag((PaletteWithAlphaTag *)elem->m_tag); - CASE PliTag::THICK_QUADRATIC_CHAIN_GOBJ : elem->m_offset = writeThickQuadraticChainTag((ThickQuadraticChainTag *)elem->m_tag); - CASE PliTag::GROUP_GOBJ : elem->m_offset = writeGroupTag((GroupTag *)elem->m_tag); - CASE PliTag::IMAGE_GOBJ : elem->m_offset = writeImageTag((ImageTag *)elem->m_tag); - CASE PliTag::COLOR_NGOBJ : elem->m_offset = writeColorTag((ColorTag *)elem->m_tag); - CASE PliTag::STYLE_NGOBJ : elem->m_offset = writeStyleTag((StyleTag *)elem->m_tag); - CASE PliTag::GEOMETRIC_TRANSFORMATION_GOBJ : elem->m_offset = writeGeometricTransformationTag((GeometricTransformationTag *)elem->m_tag); - CASE PliTag::DOUBLEPAIR_OBJ : elem->m_offset = writeDoublePairTag((DoublePairTag *)elem->m_tag); - CASE PliTag::BITMAP_GOBJ : elem->m_offset = writeBitmapTag((BitmapTag *)elem->m_tag); - CASE PliTag::INTERSECTION_DATA_GOBJ : elem->m_offset = writeIntersectionDataTag((IntersectionDataTag *)elem->m_tag); - CASE PliTag::OUTLINE_OPTIONS_GOBJ : elem->m_offset = writeOutlineOptionsTag((StrokeOutlineOptionsTag *)elem->m_tag); - CASE PliTag::PRECISION_SCALE_GOBJ : elem->m_offset = writePrecisionScaleTag((PrecisionScaleTag *)elem->m_tag); - - DEFAULT: + break; + case PliTag::PALETTE: + elem->m_offset = writePaletteTag((PaletteTag *)elem->m_tag); + break; + case PliTag::PALETTE_WITH_ALPHA: + elem->m_offset = writePaletteWithAlphaTag((PaletteWithAlphaTag *)elem->m_tag); + break; + case PliTag::THICK_QUADRATIC_CHAIN_GOBJ: + elem->m_offset = writeThickQuadraticChainTag((ThickQuadraticChainTag *)elem->m_tag); + break; + case PliTag::GROUP_GOBJ: + elem->m_offset = writeGroupTag((GroupTag *)elem->m_tag); + break; + case PliTag::IMAGE_GOBJ: + elem->m_offset = writeImageTag((ImageTag *)elem->m_tag); + break; + case PliTag::COLOR_NGOBJ: + elem->m_offset = writeColorTag((ColorTag *)elem->m_tag); + break; + case PliTag::STYLE_NGOBJ: + elem->m_offset = writeStyleTag((StyleTag *)elem->m_tag); + break; + case PliTag::GEOMETRIC_TRANSFORMATION_GOBJ: + elem->m_offset = writeGeometricTransformationTag((GeometricTransformationTag *)elem->m_tag); + break; + case PliTag::DOUBLEPAIR_OBJ: + elem->m_offset = writeDoublePairTag((DoublePairTag *)elem->m_tag); + break; + case PliTag::BITMAP_GOBJ: + elem->m_offset = writeBitmapTag((BitmapTag *)elem->m_tag); + break; + case PliTag::INTERSECTION_DATA_GOBJ: + elem->m_offset = writeIntersectionDataTag((IntersectionDataTag *)elem->m_tag); + break; + case PliTag::OUTLINE_OPTIONS_GOBJ: + elem->m_offset = writeOutlineOptionsTag((StrokeOutlineOptionsTag *)elem->m_tag); + break; + case PliTag::PRECISION_SCALE_GOBJ: + elem->m_offset = writePrecisionScaleTag((PrecisionScaleTag *)elem->m_tag); + break; + default: assert(false); //m_error = UNKNOWN_TAG; ; @@ -1788,9 +1890,14 @@ inline void ParsedPliImp::writeDinamicData(TUINT32 val) switch (m_currDinamicTypeBytesNum) { case 1: *m_oChan << (UCHAR)val; - CASE 2 : *m_oChan << (USHORT)val; - CASE 4 : *m_oChan << (TUINT32)val; - DEFAULT: + break; + case 2: + *m_oChan << (USHORT)val; + break; + case 4: + *m_oChan << (TUINT32)val; + break; + default: assert(false); } } @@ -1803,9 +1910,14 @@ inline void ParsedPliImp::writeDinamicData(TINT32 val, bool isNegative = false) switch (m_currDinamicTypeBytesNum) { case 1: *m_oChan << complement1((char)val, isNegative); - CASE 2 : *m_oChan << complement1((short)val, isNegative); - CASE 4 : *m_oChan << complement1(val, isNegative); - DEFAULT: + break; + case 2: + *m_oChan << complement1((short)val, isNegative); + break; + case 4: + *m_oChan << complement1(val, isNegative); + break; + default: assert(false); } } @@ -2239,13 +2351,23 @@ TUINT32 ParsedPliImp::writeStyleTag(StyleTag *tag) switch (tag->m_param[i].m_type) { case TStyleParam::SP_BYTE: *m_oChan << (UCHAR)tag->m_param[i].m_numericVal; - CASE TStyleParam::SP_USHORT : *m_oChan << (USHORT)tag->m_param[i].m_numericVal; - CASE TStyleParam::SP_INT : __OR TStyleParam::SP_DOUBLE : writeFloatData((double)tag->m_param[i].m_numericVal); - CASE TStyleParam::SP_RASTER : *m_oChan << tag->m_param[i].m_r; - CASE TStyleParam::SP_STRING : *m_oChan << tag->m_param[i].m_string; - - DEFAULT: + break; + case TStyleParam::SP_USHORT: + *m_oChan << (USHORT)tag->m_param[i].m_numericVal; + break; + case TStyleParam::SP_INT: + case TStyleParam::SP_DOUBLE: + writeFloatData((double)tag->m_param[i].m_numericVal); + break; + case TStyleParam::SP_RASTER: + *m_oChan << tag->m_param[i].m_r; + break; + case TStyleParam::SP_STRING: + *m_oChan << tag->m_param[i].m_string; + break; + default: assert(false); + break; } } return offset; diff --git a/toonz/sources/image/pli/tiio_pli.cpp b/toonz/sources/image/pli/tiio_pli.cpp index b1b41eb..fdbd406 100644 --- a/toonz/sources/image/pli/tiio_pli.cpp +++ b/toonz/sources/image/pli/tiio_pli.cpp @@ -386,30 +386,36 @@ TImageP TImageReaderPli::doLoad() // per tutti gli oggetti presenti nel tag for (i = 0; i < imageTag->m_numObjects; i++) { switch (imageTag->m_object[i]->m_type) { - case PliTag::GROUP_GOBJ: { + case PliTag::GROUP_GOBJ: assert(((GroupTag *)imageTag->m_object[i])->m_type == GroupTag::STROKE); createGroup((GroupTag *)imageTag->m_object[i], outVectImage, strokeData); - } - CASE PliTag::INTERSECTION_DATA_GOBJ : readRegionVersion4x((IntersectionDataTag *)imageTag->m_object[i], outVectImage); + break; + + case PliTag::INTERSECTION_DATA_GOBJ: + readRegionVersion4x((IntersectionDataTag *)imageTag->m_object[i], outVectImage); + break; + case PliTag::THICK_QUADRATIC_CHAIN_GOBJ: // aggiunge le stroke quadratiche - CASE PliTag::THICK_QUADRATIC_CHAIN_GOBJ : createStroke((ThickQuadraticChainTag *)imageTag->m_object[i], outVectImage, strokeData); + createStroke((ThickQuadraticChainTag *)imageTag->m_object[i], outVectImage, strokeData); + break; + case PliTag::COLOR_NGOBJ: { // aggiunge curve quadratiche con spessore costante - CASE PliTag::COLOR_NGOBJ: - { - ColorTag *colorTag = (ColorTag *)imageTag->m_object[i]; - - assert(colorTag->m_numColors == 1); - strokeData.m_styleId = colorTag->m_color[0]; - // isSketch=(colorTag->m_color[0] < c_maxSketchColorNum); - // isSketch=(colorTag->m_color[0] < c_maxSketchColorNum); - } + ColorTag *colorTag = (ColorTag *)imageTag->m_object[i]; - // adds outline options data - CASE PliTag::OUTLINE_OPTIONS_GOBJ : strokeData.m_options = ((StrokeOutlineOptionsTag *)imageTag->m_object[i])->m_options; + assert(colorTag->m_numColors == 1); + strokeData.m_styleId = colorTag->m_color[0]; + // isSketch=(colorTag->m_color[0] < c_maxSketchColorNum); + // isSketch=(colorTag->m_color[0] < c_maxSketchColorNum); - DEFAULT:; + break; + } + + case PliTag::OUTLINE_OPTIONS_GOBJ: + // adds outline options data + strokeData.m_options = ((StrokeOutlineOptionsTag *)imageTag->m_object[i])->m_options; + break; } // switch(groupTag->m_object[j]->m_type) } // for (i=0; im_numObjects; i++) diff --git a/toonz/sources/image/quantel/filequantel.c b/toonz/sources/image/quantel/filequantel.c index bdaf230..a858833 100644 --- a/toonz/sources/image/quantel/filequantel.c +++ b/toonz/sources/image/quantel/filequantel.c @@ -187,32 +187,42 @@ static int quantel_get_info(const T_CHAR *fname, int type, int *xsize, int *ysiz case QNT_FORMAT: *xsize = QNT_PAL_XSIZE; *ysize = QNT_PAL_YSIZE; - CASE QTL_FORMAT : - *xsize = QTL_NTSC_XSIZE; + break; + case QTL_FORMAT: + *xsize = QTL_NTSC_XSIZE; *ysize = QTL_NTSC_YSIZE; - CASE YUV_FORMAT : - *xsize = QUANTEL_XSIZE; + break; + case YUV_FORMAT: + *xsize = QUANTEL_XSIZE; switch (f_stat.st_size) { case QNT_PAL_FILE_SIZE: - __OR QNT_PAL_W_FILE_SIZE : - *ysize = QNT_PAL_YSIZE; - CASE QTL_NTSC_FILE_SIZE : __OR QTL_NTSC_W_FILE_SIZE : - *ysize = QTL_NTSC_YSIZE; - DEFAULT: + case QNT_PAL_W_FILE_SIZE: + *ysize = QNT_PAL_YSIZE; + break; + case QTL_NTSC_FILE_SIZE: + case QTL_NTSC_W_FILE_SIZE: + *ysize = QTL_NTSC_YSIZE; + break; + default: *ysize = f_stat.st_size / (QUANTEL_XSIZE * sizeof(short)); + break; } - CASE SDL_FORMAT : - *xsize = QNT_PAL_XSIZE; + break; + case SDL_FORMAT: + *xsize = QNT_PAL_XSIZE; switch (f_stat.st_size) { case QNT_PAL_FILE_SIZE: *ysize = QNT_PAL_YSIZE; - CASE QTL_NTSC_FILE_SIZE : - *ysize = QTL_NTSC_YSIZE; - DEFAULT: + break; + case QTL_NTSC_FILE_SIZE: + *ysize = QTL_NTSC_YSIZE; + break; + default: /*printf("error: bad file dimension\n");*/ return FALSE; } - DEFAULT: + break; + default: /*printf("error: bad file format\n");*/ return FALSE; } @@ -457,16 +467,24 @@ int img_write_quantel(const T_CHAR *fname, void *buffer, int w, int h, int type) interlace = FALSE; yuv_flag = 0; max_ysize = QNT_PAL_YSIZE; - CASE QTL_FORMAT : interlace = FALSE; + break; + case QTL_FORMAT: + interlace = FALSE; yuv_flag = 0; max_ysize = QTL_NTSC_YSIZE; - CASE YUV_FORMAT : __OR VPB_FORMAT : interlace = FALSE; + break; + case YUV_FORMAT: + case VPB_FORMAT: + interlace = FALSE; yuv_flag = 0; max_ysize = QUANTEL_GET_YSIZE(ysize); - CASE SDL_FORMAT : interlace = TRUE; + break; + case SDL_FORMAT: + interlace = TRUE; yuv_flag = 0; max_ysize = QUANTEL_GET_YSIZE(ysize); - DEFAULT: + break; + default: /*printf("error: %d bad file format\n", fname);*/ return 0; } diff --git a/toonz/sources/image/tif/tiio_tif.cpp b/toonz/sources/image/tif/tiio_tif.cpp index 521dd2b..f095c20 100644 --- a/toonz/sources/image/tif/tiio_tif.cpp +++ b/toonz/sources/image/tif/tiio_tif.cpp @@ -489,7 +489,7 @@ void TifReader::readLine(short *buffer, int x0, int x1, int shrink) case ORIENTATION_TOPLEFT: case ORIENTATION_TOPRIGHT: case ORIENTATION_LEFTTOP: - case ORIENTATION_RIGHTTOP: { + case ORIENTATION_RIGHTTOP: // We have to invert the fixed BOTTOM-UP returned by TIFF functions - since this function is // supposed to ignore orientation issues (which are managed outside). @@ -498,9 +498,14 @@ void TifReader::readLine(short *buffer, int x0, int x1, int shrink) r = tmin(m_rowsPerStrip, m_info.m_ly - m_rowsPerStrip * m_stripIndex) - 1 - (m_row % m_rowsPerStrip); - } + break; - CASE ORIENTATION_BOTRIGHT : case ORIENTATION_BOTLEFT : case ORIENTATION_RIGHTBOT : case ORIENTATION_LEFTBOT : r = m_row % m_rowsPerStrip; + case ORIENTATION_BOTRIGHT: + case ORIENTATION_BOTLEFT: + case ORIENTATION_RIGHTBOT: + case ORIENTATION_LEFTBOT: + r = m_row % m_rowsPerStrip; + break; } // Finally, copy the strip row to the output row buffer @@ -611,7 +616,7 @@ void TifReader::readLine(char *buffer, int x0, int x1, int shrink) case ORIENTATION_TOPLEFT: case ORIENTATION_TOPRIGHT: case ORIENTATION_LEFTTOP: - case ORIENTATION_RIGHTTOP: { + case ORIENTATION_RIGHTTOP: // We have to invert the fixed BOTTOM-UP returned by TIFF functions - since this function is // supposed to ignore orientation issues (which are managed outside). @@ -620,9 +625,14 @@ void TifReader::readLine(char *buffer, int x0, int x1, int shrink) r = tmin(m_rowsPerStrip, m_info.m_ly - m_rowsPerStrip * m_stripIndex) - 1 - (m_row % m_rowsPerStrip); - } + break; - CASE ORIENTATION_BOTRIGHT : case ORIENTATION_BOTLEFT : case ORIENTATION_RIGHTBOT : case ORIENTATION_LEFTBOT : r = m_row % m_rowsPerStrip; + case ORIENTATION_BOTRIGHT: + case ORIENTATION_BOTLEFT: + case ORIENTATION_RIGHTBOT: + case ORIENTATION_LEFTBOT: + r = m_row % m_rowsPerStrip; + break; } TPixel32 *pix = (TPixel32 *)buffer; diff --git a/toonz/sources/image/tzp/avl.c b/toonz/sources/image/tzp/avl.c index a8201b7..04c905d 100644 --- a/toonz/sources/image/tzp/avl.c +++ b/toonz/sources/image/tzp/avl.c @@ -20,15 +20,6 @@ #define AVL_C #include "avl.h" #include "tcm.h" -#define CASE \ - break; \ - case -#define __OR case -#define DEFAULT \ - break; \ - default - -#define LOOP for (;;) #ifndef TRUE #define TRUE 1 @@ -209,17 +200,17 @@ TREE *avl__tree(int treetype, uint keyoffs, int (*usrcmp)(void *, void *)) keyinfo = treetype << 2; switch (treetype) { - CASE AVL_NODUP_MBR : __OR AVL_DUP_MBR : keyinfo |= USR_CMP; - CASE AVL_NODUP_PTR : __OR AVL_DUP_PTR : keyinfo |= USR_CMP; - CASE AVL_NODUP_STR : __OR AVL_DUP_STR : keyinfo |= STR_CMP; - CASE AVL_NODUP_LNG : __OR AVL_DUP_LNG : keyinfo |= VAL_CMP; - CASE AVL_NODUP_INT : __OR AVL_DUP_INT : keyinfo |= VAL_CMP; - CASE AVL_NODUP_SHT : __OR AVL_DUP_SHT : keyinfo |= VAL_CMP; - CASE AVL_NODUP_ULN : __OR AVL_DUP_ULN : keyinfo |= COR_CMP; - CASE AVL_NODUP_UIN : __OR AVL_DUP_UIN : keyinfo |= COR_CMP; - CASE AVL_NODUP_USH : __OR AVL_DUP_USH : keyinfo |= VAL_CMP; - CASE AVL_NODUP_CHR : __OR AVL_DUP_CHR : keyinfo |= VAL_CMP; - DEFAULT: + case AVL_NODUP_MBR: case AVL_DUP_MBR: keyinfo |= USR_CMP; break; + case AVL_NODUP_PTR: case AVL_DUP_PTR: keyinfo |= USR_CMP; break; + case AVL_NODUP_STR: case AVL_DUP_STR: keyinfo |= STR_CMP; break; + case AVL_NODUP_LNG: case AVL_DUP_LNG: keyinfo |= VAL_CMP; break; + case AVL_NODUP_INT: case AVL_DUP_INT: keyinfo |= VAL_CMP; break; + case AVL_NODUP_SHT: case AVL_DUP_SHT: keyinfo |= VAL_CMP; break; + case AVL_NODUP_ULN: case AVL_DUP_ULN: keyinfo |= COR_CMP; break; + case AVL_NODUP_UIN: case AVL_DUP_UIN: keyinfo |= COR_CMP; break; + case AVL_NODUP_USH: case AVL_DUP_USH: keyinfo |= VAL_CMP; break; + case AVL_NODUP_CHR: case AVL_DUP_CHR: keyinfo |= VAL_CMP; break; + default: return NIL; } ALLOC_TREE(tree) @@ -244,10 +235,10 @@ static int rebalance(NODE **rootaddr) NODE *half; switch (root->bal) { - CASE LEFTUNBAL : switch (root->left->bal) - { - CASE LEFT : /* simple rotation, tree depth decreased */ - newroot = root->left; + case LEFTUNBAL: + switch (root->left->bal) { + case LEFT: /* simple rotation, tree depth decreased */ + newroot = root->left; root->left = newroot->right; root->bal = BAL; newroot->right = root; @@ -255,8 +246,8 @@ static int rebalance(NODE **rootaddr) *rootaddr = newroot; return LESS; - CASE BAL : /* simple rotation, tree depth unchanged */ - newroot = root->left; + case BAL: /* simple rotation, tree depth unchanged */ + newroot = root->left; root->left = newroot->right; root->bal = LEFT; newroot->right = root; @@ -264,18 +255,24 @@ static int rebalance(NODE **rootaddr) *rootaddr = newroot; return SAME; - CASE RIGHT : /* double rotation */ - half = root->left; + case RIGHT: /* double rotation */ + half = root->left; newroot = half->right; root->left = newroot->right; half->right = newroot->left; switch (newroot->bal) { - CASE BAL : root->bal = BAL; + case BAL: + root->bal = BAL; half->bal = BAL; - CASE LEFT : root->bal = RIGHT; + break; + case LEFT: + root->bal = RIGHT; half->bal = BAL; - CASE RIGHT : root->bal = BAL; + break; + case RIGHT: + root->bal = BAL; half->bal = LEFT; + break; } newroot->left = half; newroot->right = root; @@ -283,10 +280,11 @@ static int rebalance(NODE **rootaddr) *rootaddr = newroot; return LESS; } - CASE RIGHTUNBAL : switch (root->right->bal) - { - CASE RIGHT : /* simple rotation, tree depth decreased */ - newroot = root->right; + break; + case RIGHTUNBAL: + switch (root->right->bal) { + case RIGHT: /* simple rotation, tree depth decreased */ + newroot = root->right; root->right = newroot->left; root->bal = BAL; newroot->left = root; @@ -294,8 +292,8 @@ static int rebalance(NODE **rootaddr) *rootaddr = newroot; return LESS; - CASE BAL : /* simple rotation, tree depth unchanged */ - newroot = root->right; + case BAL: /* simple rotation, tree depth unchanged */ + newroot = root->right; root->right = newroot->left; root->bal = RIGHT; newroot->left = root; @@ -303,18 +301,24 @@ static int rebalance(NODE **rootaddr) *rootaddr = newroot; return SAME; - CASE LEFT : /* double rotation */ - half = root->right; + case LEFT: /* double rotation */ + half = root->right; newroot = half->left; root->right = newroot->left; half->left = newroot->right; switch (newroot->bal) { - CASE BAL : root->bal = BAL; + case BAL: + root->bal = BAL; half->bal = BAL; - CASE RIGHT : root->bal = LEFT; + break; + case RIGHT: + root->bal = LEFT; half->bal = BAL; - CASE LEFT : root->bal = BAL; + break; + case LEFT: + root->bal = BAL; half->bal = RIGHT; + break; } newroot->right = half; newroot->left = root; @@ -322,7 +326,8 @@ static int rebalance(NODE **rootaddr) *rootaddr = newroot; return LESS; } - DEFAULT: + break; + default: return SAME; } return ERROR; @@ -346,17 +351,23 @@ static int insert_ptr(NODE **rootaddr, ins = DEEPER; } switch (ins) { - CASE DEEPER : switch (root->bal) - { - CASE RIGHT : root->bal = BAL; + case DEEPER: + switch (root->bal) { + case RIGHT: + root->bal = BAL; return INS; - CASE BAL : root->bal = LEFT; + case BAL: + root->bal = LEFT; return DEEPER; - CASE LEFT : root->bal = LEFTUNBAL; + case LEFT: + root->bal = LEFTUNBAL; return rebalance(rootaddr) == LESS ? INS : DEEPER; } - CASE INS : return INS; - CASE NOTINS : return NOTINS; + break; + case INS: + return INS; + case NOTINS: + return NOTINS; } } else if (cmp > 0 || dup) { if (root->right) @@ -366,17 +377,23 @@ static int insert_ptr(NODE **rootaddr, ins = DEEPER; } switch (ins) { - CASE DEEPER : switch (root->bal) - { - CASE LEFT : root->bal = BAL; + case DEEPER: + switch (root->bal) { + case LEFT: + root->bal = BAL; return INS; - CASE BAL : root->bal = RIGHT; + case BAL: + root->bal = RIGHT; return DEEPER; - CASE RIGHT : root->bal = RIGHTUNBAL; + case RIGHT: + root->bal = RIGHTUNBAL; return rebalance(rootaddr) == LESS ? INS : DEEPER; } - CASE INS : return INS; - CASE NOTINS : return NOTINS; + break; + case INS: + return INS; + case NOTINS: + return NOTINS; } } return NOTINS; @@ -397,37 +414,49 @@ static int insert_val(NODE **rootaddr, NODE *node, int dup) ins = DEEPER; } switch (ins) { - CASE DEEPER : switch (root->bal) - { - CASE RIGHT : root->bal = BAL; + case DEEPER: + switch (root->bal) { + case RIGHT: + root->bal = BAL; return INS; - CASE BAL : root->bal = LEFT; + case BAL: + root->bal = LEFT; return DEEPER; - CASE LEFT : root->bal = LEFTUNBAL; + case LEFT: + root->bal = LEFTUNBAL; return rebalance(rootaddr) == LESS ? INS : DEEPER; } - CASE INS : return INS; - CASE NOTINS : return NOTINS; + break; + case INS: + return INS; + case NOTINS: + return NOTINS; } } else if (node->key.val > root->key.val || dup) { - if (root->right) + if (root->right) { ins = insert_val(&root->right, node, dup); + } else { root->right = node; ins = DEEPER; } switch (ins) { - CASE DEEPER : switch (root->bal) - { - CASE LEFT : root->bal = BAL; + case DEEPER: + switch (root->bal) { + case LEFT: + root->bal = BAL; return INS; - CASE BAL : root->bal = RIGHT; + case BAL: + root->bal = RIGHT; return DEEPER; - CASE RIGHT : root->bal = RIGHTUNBAL; + case RIGHT: + root->bal = RIGHTUNBAL; return rebalance(rootaddr) == LESS ? INS : DEEPER; } - CASE INS : return INS; - CASE NOTINS : return NOTINS; + case INS: + return INS; + case NOTINS: + return NOTINS; } } return NOTINS; @@ -451,30 +480,62 @@ int avl_insert(TREE *tree, void *data) keyinfo = tree->keyinfo; switch (KEYTYPE(keyinfo)) { - CASE MBR_KEY : node->key.ptr = (void *)((char *)data + tree->keyoffs); - CASE PTR_KEY : node->key.ptr = *(void **)((char *)data + tree->keyoffs); - CASE STR_KEY : node->key.ptr = *(void **)((char *)data + tree->keyoffs); - CASE LNG_KEY : node->key.val = *(long *)((char *)data + tree->keyoffs); - CASE INT_KEY : node->key.val = *(int *)((char *)data + tree->keyoffs); - CASE SHT_KEY : node->key.val = *(short *)((char *)data + tree->keyoffs); - CASE ULN_KEY : node->key.val = - CORRECT(*(ulong *)((char *)data + tree->keyoffs)); - CASE UIN_KEY : node->key.val = - CORRECT(*(uint *)((char *)data + tree->keyoffs)); - CASE USH_KEY : node->key.val = *(ushort *)((char *)data + tree->keyoffs); - CASE CHR_KEY : node->key.val = *((char *)data + tree->keyoffs); - DEFAULT: + case MBR_KEY: + node->key.ptr = (void *)((char *)data + tree->keyoffs); + break; + case PTR_KEY: + node->key.ptr = *(void **)((char *)data + tree->keyoffs); + break; + case STR_KEY: + node->key.ptr = *(void **)((char *)data + tree->keyoffs); + break; + case LNG_KEY: + node->key.val = *(long *)((char *)data + tree->keyoffs); + break; + case INT_KEY: + node->key.val = *(int *)((char *)data + tree->keyoffs); + break; + case SHT_KEY: + node->key.val = *(short *)((char *)data + tree->keyoffs); + break; + case ULN_KEY: + node->key.val = CORRECT(*(ulong *)((char *)data + tree->keyoffs)); + break; + case UIN_KEY: + node->key.val = CORRECT(*(uint *)((char *)data + tree->keyoffs)); + break; + case USH_KEY: + node->key.val = *(ushort *)((char *)data + tree->keyoffs); + break; + case CHR_KEY: + node->key.val = *((char *)data + tree->keyoffs); + break; + default: FREE_NODE(node) return FALSE; } if (tree->root) { switch (LOCTYPE(keyinfo)) { - CASE USR_NODUP : ins = insert_ptr(&tree->root, node, tree->usrcmp, NODUP); - CASE STR_NODUP : ins = insert_ptr(&tree->root, node, AVL_AVLCMP, NODUP); - CASE COR_NODUP : __OR VAL_NODUP : ins = insert_val(&tree->root, node, NODUP); - CASE USR_DUP : ins = insert_ptr(&tree->root, node, tree->usrcmp, DUP); - CASE STR_DUP : ins = insert_ptr(&tree->root, node, AVL_AVLCMP, DUP); - CASE COR_DUP : __OR VAL_DUP : ins = insert_val(&tree->root, node, DUP); + case USR_NODUP: + ins = insert_ptr(&tree->root, node, tree->usrcmp, NODUP); + break; + case STR_NODUP: + ins = insert_ptr(&tree->root, node, AVL_AVLCMP, NODUP); + break; + case COR_NODUP: + case VAL_NODUP: + ins = insert_val(&tree->root, node, NODUP); + break; + case USR_DUP: + ins = insert_ptr(&tree->root, node, tree->usrcmp, DUP); + break; + case STR_DUP: + ins = insert_ptr(&tree->root, node, AVL_AVLCMP, DUP); + break; + case COR_DUP: + case VAL_DUP: + ins = insert_val(&tree->root, node, DUP); + break; } if (ins == NOTINS) { FREE_NODE(node) @@ -586,43 +647,60 @@ void *avl__locate(TREE *tree, long keyval) node = tree->root; switch (LOCTYPE(tree->keyinfo)) { - CASE USR_NODUP : usrcmp = tree->usrcmp; + case USR_NODUP: + usrcmp = tree->usrcmp; while (node) { cmp = (*usrcmp)((void *)keyval, node->key.ptr); - SELECT_EQ_NODUP(node, cmp, 0) + SELECT_EQ_NODUP(node, cmp, 0); + } + break; + case STR_NODUP: + while (node) { + SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr); + SELECT_EQ_NODUP(node, cmp, 0); } - CASE STR_NODUP : while (node) - { - SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr) - SELECT_EQ_NODUP(node, cmp, 0) + break; + case COR_NODUP: + keyval = CORRECT(keyval); + // fallthrough + case VAL_NODUP: + while (node) { + SELECT_EQ_NODUP(node, keyval, node->key.val); } - CASE COR_NODUP : keyval = CORRECT(keyval); - __OR VAL_NODUP : while (node) - SELECT_EQ_NODUP(node, keyval, node->key.val) - - CASE USR_DUP : save = NIL; + break; + case USR_DUP: + save = NIL; usrcmp = tree->usrcmp; while (node) { cmp = (*usrcmp)((void *)keyval, node->key.ptr); - SELECT_EQ_DUP(node, cmp, 0, save) + SELECT_EQ_DUP(node, cmp, 0, save); } - if (save) + if (save) { return save->data; - - CASE STR_DUP : save = NIL; + } + break; + case STR_DUP: + save = NIL; while (node) { - SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr) - SELECT_EQ_DUP(node, cmp, 0, save) + SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr); + SELECT_EQ_DUP(node, cmp, 0, save); } - if (save) + if (save) { return save->data; - - CASE COR_DUP : keyval = CORRECT(keyval); - __OR VAL_DUP : save = NIL; - while (node) - SELECT_EQ_DUP(node, keyval, node->key.val, save) - if (save) + } + break; + case COR_DUP: + keyval = CORRECT(keyval); + // fallthrough + case VAL_DUP: + save = NIL; + while (node) { + SELECT_EQ_DUP(node, keyval, node->key.val, save); + } + if (save) { return save->data; + } + break; } return NIL; } @@ -639,38 +717,50 @@ void *avl__locate_ge(TREE *tree, long keyval) node = tree->root; save = NIL; switch (LOCTYPE(tree->keyinfo)) { - CASE USR_NODUP : usrcmp = tree->usrcmp; + case USR_NODUP: + usrcmp = tree->usrcmp; while (node) { cmp = (*usrcmp)((void *)keyval, node->key.ptr); - SELECT_GE_NODUP(node, cmp, 0, save) + SELECT_GE_NODUP(node, cmp, 0, save); + } + break; + case STR_NODUP: + while (node) { + SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr); + SELECT_GE_NODUP(node, cmp, 0, save); } - CASE STR_NODUP : while (node) - { - SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr) - SELECT_GE_NODUP(node, cmp, 0, save) + break; + case COR_NODUP: + keyval = CORRECT(keyval); + // fallthrough + case VAL_NODUP: + while (node) { + SELECT_GE_NODUP(node, keyval, node->key.val, save); } - CASE COR_NODUP : keyval = CORRECT(keyval); - __OR VAL_NODUP : while (node) - SELECT_GE_NODUP(node, keyval, node->key.val, save) - - CASE USR_DUP : usrcmp = tree->usrcmp; + break; + case USR_DUP: + usrcmp = tree->usrcmp; while (node) { cmp = (*usrcmp)((void *)keyval, node->key.ptr); - SELECT_GE_DUP(node, cmp, 0, save) + SELECT_GE_DUP(node, cmp, 0, save); } - CASE STR_DUP : while (node) - { - SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr) - SELECT_GE_DUP(node, cmp, 0, save) + break; + case STR_DUP: + while (node) { + SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr); + SELECT_GE_DUP(node, cmp, 0, save); + } + break; + case COR_DUP: + keyval = CORRECT(keyval); + // fallthrough + case VAL_DUP: + while (node) { + SELECT_GE_DUP(node, keyval, node->key.val, save); } - CASE COR_DUP : keyval = CORRECT(keyval); - __OR VAL_DUP : while (node) - SELECT_GE_DUP(node, keyval, node->key.val, save) + break; } - if (save) - return save->data; - else - return NIL; + return save ? save->data : NIL; } /*---------------------------------------------------------------------------*/ @@ -685,24 +775,29 @@ void *avl__locate_gt(TREE *tree, long keyval) node = tree->root; save = NIL; switch (CMPTYPE(tree->keyinfo)) { - CASE USR_CMP : usrcmp = tree->usrcmp; + case USR_CMP: + usrcmp = tree->usrcmp; while (node) { cmp = (*usrcmp)((void *)keyval, node->key.ptr); - SELECT_GT(node, cmp, 0, save) + SELECT_GT(node, cmp, 0, save); } - CASE STR_CMP : while (node) - { - SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr) - SELECT_GT(node, cmp, 0, save) + break; + case STR_CMP: + while (node) { + SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr); + SELECT_GT(node, cmp, 0, save); } - CASE COR_CMP : keyval = CORRECT(keyval); - __OR VAL_CMP : while (node) - SELECT_GT(node, keyval, node->key.val, save) + break; + case COR_CMP: + keyval = CORRECT(keyval); + // fallthrough + case VAL_CMP: + while (node) { + SELECT_GT(node, keyval, node->key.val, save); + } + break; } - if (save) - return save->data; - else - return NIL; + return save ? save->data : NIL; } /*---------------------------------------------------------------------------*/ @@ -717,38 +812,50 @@ void *avl__locate_le(TREE *tree, long keyval) node = tree->root; save = NIL; switch (LOCTYPE(tree->keyinfo)) { - CASE USR_NODUP : usrcmp = tree->usrcmp; + case USR_NODUP: + usrcmp = tree->usrcmp; while (node) { cmp = (*usrcmp)((void *)keyval, node->key.ptr); - SELECT_LE_NODUP(node, cmp, 0, save) + SELECT_LE_NODUP(node, cmp, 0, save); } - CASE STR_NODUP : while (node) - { - SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr) - SELECT_LE_NODUP(node, cmp, 0, save) + break; + case STR_NODUP: + while (node) { + SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr); + SELECT_LE_NODUP(node, cmp, 0, save); } - CASE COR_NODUP : keyval = CORRECT(keyval); - __OR VAL_NODUP : while (node) - SELECT_LE_NODUP(node, keyval, node->key.val, save) - - CASE USR_DUP : usrcmp = tree->usrcmp; + break; + case COR_NODUP: + keyval = CORRECT(keyval); + // fallthrough + case VAL_NODUP: + while (node) { + SELECT_LE_NODUP(node, keyval, node->key.val, save); + } + break; + case USR_DUP: + usrcmp = tree->usrcmp; while (node) { cmp = (*usrcmp)((void *)keyval, node->key.ptr); - SELECT_LE_DUP(node, cmp, 0, save) + SELECT_LE_DUP(node, cmp, 0, save); + } + break; + case STR_DUP: + while (node) { + SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr); + SELECT_LE_DUP(node, cmp, 0, save); } - CASE STR_DUP : while (node) - { - SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr) - SELECT_LE_DUP(node, cmp, 0, save) + break; + case COR_DUP: + keyval = CORRECT(keyval); + // fallthrough + case VAL_DUP: + while (node) { + SELECT_LE_DUP(node, keyval, node->key.val, save); } - CASE COR_DUP : keyval = CORRECT(keyval); - __OR VAL_DUP : while (node) - SELECT_LE_DUP(node, keyval, node->key.val, save) + break; } - if (save) - return save->data; - else - return NIL; + return save ? save->data : NIL; } /*---------------------------------------------------------------------------*/ @@ -763,24 +870,29 @@ void *avl__locate_lt(TREE *tree, long keyval) node = tree->root; save = NIL; switch (CMPTYPE(tree->keyinfo)) { - CASE USR_CMP : usrcmp = tree->usrcmp; + case USR_CMP: + usrcmp = tree->usrcmp; while (node) { cmp = (*usrcmp)((void *)keyval, node->key.ptr); - SELECT_LT(node, cmp, 0, save) + SELECT_LT(node, cmp, 0, save); } - CASE STR_CMP : while (node) - { - SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr) - SELECT_LT(node, cmp, 0, save) + break; + case STR_CMP: + while (node) { + SET_STRCMP(cmp, (char *)keyval, (char *)node->key.ptr); + SELECT_LT(node, cmp, 0, save); } - CASE COR_CMP : keyval = CORRECT(keyval); - __OR VAL_CMP : while (node) - SELECT_LT(node, keyval, node->key.val, save) + break; + case COR_CMP: + keyval = CORRECT(keyval); + // fallthrough + case VAL_CMP: + while (node) { + SELECT_LT(node, keyval, node->key.val, save); + } + break; } - if (save) - return save->data; - else - return NIL; + return save ? save->data : NIL; } /*---------------------------------------------------------------------------*/ @@ -824,11 +936,17 @@ static NODE *leftmost(NODE **rootaddr) if (node->bal == LESS) { /* left subtree depth decreased */ switch (root->bal) { - CASE LEFT : root->bal = BAL; - CASE BAL : root->bal = RIGHT; + case LEFT: + root->bal = BAL; + break; + case BAL: + root->bal = RIGHT; node->bal = SAME; - CASE RIGHT : root->bal = RIGHTUNBAL; + break; + case RIGHT: + root->bal = RIGHTUNBAL; node->bal = rebalance(rootaddr); + break; } } return node; @@ -858,11 +976,17 @@ static NODE *remove_ptr(NODE **rootaddr, if (node && node->bal == LESS) { /* left subtree depth decreased */ switch (root->bal) { - CASE LEFT : root->bal = BAL; - CASE BAL : root->bal = RIGHT; + case LEFT: + root->bal = BAL; + break; + case BAL: + root->bal = RIGHT; node->bal = SAME; - CASE RIGHT : root->bal = RIGHTUNBAL; + break; + case RIGHT: + root->bal = RIGHTUNBAL; node->bal = rebalance(rootaddr); + break; } } } else if (cmp > 0) { @@ -872,11 +996,17 @@ static NODE *remove_ptr(NODE **rootaddr, if (node && node->bal == LESS) { /* right subtree depth decreased */ switch (root->bal) { - CASE RIGHT : root->bal = BAL; - CASE BAL : root->bal = LEFT; + case RIGHT: + root->bal = BAL; + break; + case BAL: + root->bal = LEFT; node->bal = SAME; - CASE LEFT : root->bal = LEFTUNBAL; + break; + case LEFT: + root->bal = LEFTUNBAL; node->bal = rebalance(rootaddr); + break; } } } else { @@ -884,11 +1014,17 @@ static NODE *remove_ptr(NODE **rootaddr, if (node->bal == LESS) { /* left subtree depth decreased */ switch (root->bal) { - CASE LEFT : root->bal = BAL; - CASE BAL : root->bal = RIGHT; + case LEFT: + root->bal = BAL; + break; + case BAL: + root->bal = RIGHT; node->bal = SAME; - CASE RIGHT : root->bal = RIGHTUNBAL; + break; + case RIGHT: + root->bal = RIGHTUNBAL; node->bal = rebalance(rootaddr); + break; } } } else { @@ -907,12 +1043,18 @@ static NODE *remove_ptr(NODE **rootaddr, if (root->bal == LESS) { /* right subtree depth decreased */ switch (node->bal) { - CASE RIGHT : root->bal = BAL; + case RIGHT: + root->bal = BAL; node->bal = LESS; - CASE BAL : root->bal = LEFT; + break; + case BAL: + root->bal = LEFT; node->bal = SAME; - CASE LEFT : root->bal = LEFTUNBAL; + break; + case LEFT: + root->bal = LEFTUNBAL; node->bal = rebalance(&root); + break; } } else { root->bal = node->bal; @@ -939,11 +1081,17 @@ static NODE *remove_val(NODE **rootaddr, long keyval, int dup) if (node && node->bal == LESS) { /* left subtree depth decreased */ switch (root->bal) { - CASE LEFT : root->bal = BAL; - CASE BAL : root->bal = RIGHT; + case LEFT: + root->bal = BAL; + break; + case BAL: + root->bal = RIGHT; node->bal = SAME; - CASE RIGHT : root->bal = RIGHTUNBAL; + break; + case RIGHT: + root->bal = RIGHTUNBAL; node->bal = rebalance(rootaddr); + break; } } } else if (keyval > root->key.val) { @@ -953,11 +1101,17 @@ static NODE *remove_val(NODE **rootaddr, long keyval, int dup) if (node && node->bal == LESS) { /* right subtree depth decreased */ switch (root->bal) { - CASE RIGHT : root->bal = BAL; - CASE BAL : root->bal = LEFT; + case RIGHT: + root->bal = BAL; + break; + case BAL: + root->bal = LEFT; node->bal = SAME; - CASE LEFT : root->bal = LEFTUNBAL; + break; + case LEFT: + root->bal = LEFTUNBAL; node->bal = rebalance(rootaddr); + break; } } } else { @@ -965,11 +1119,17 @@ static NODE *remove_val(NODE **rootaddr, long keyval, int dup) if (node->bal == LESS) { /* left subtree depth decreased */ switch (root->bal) { - CASE LEFT : root->bal = BAL; - CASE BAL : root->bal = RIGHT; + case LEFT: + root->bal = BAL; + break; + case BAL: + root->bal = RIGHT; node->bal = SAME; - CASE RIGHT : root->bal = RIGHTUNBAL; + break; + case RIGHT: + root->bal = RIGHTUNBAL; node->bal = rebalance(rootaddr); + break; } } } else { @@ -988,12 +1148,18 @@ static NODE *remove_val(NODE **rootaddr, long keyval, int dup) if (root->bal == LESS) { /* right subtree depth decreased */ switch (node->bal) { - CASE RIGHT : root->bal = BAL; + case RIGHT: + root->bal = BAL; node->bal = LESS; - CASE BAL : root->bal = LEFT; + break; + case BAL: + root->bal = LEFT; node->bal = SAME; - CASE LEFT : root->bal = LEFTUNBAL; + break; + case LEFT: + root->bal = LEFTUNBAL; node->bal = rebalance(&root); + break; } } else { root->bal = node->bal; @@ -1015,14 +1181,30 @@ void *avl__remove(TREE *tree, long keyval) if (tree->root) { switch (LOCTYPE(tree->keyinfo)) { - CASE USR_NODUP : node = remove_ptr(&tree->root, (void *)keyval, tree->usrcmp, NODUP); - CASE STR_NODUP : node = remove_ptr(&tree->root, (void *)keyval, AVL_AVLCMP, NODUP); - CASE COR_NODUP : keyval = CORRECT(keyval); - __OR VAL_NODUP : node = remove_val(&tree->root, keyval, NODUP); - CASE USR_DUP : node = remove_ptr(&tree->root, (void *)keyval, tree->usrcmp, DUP); - CASE STR_DUP : node = remove_ptr(&tree->root, (void *)keyval, AVL_AVLCMP, DUP); - CASE COR_DUP : keyval = CORRECT(keyval); - __OR VAL_DUP : node = remove_val(&tree->root, keyval, DUP); + case USR_NODUP: + node = remove_ptr(&tree->root, (void *)keyval, tree->usrcmp, NODUP); + break; + case STR_NODUP: + node = remove_ptr(&tree->root, (void *)keyval, AVL_AVLCMP, NODUP); + break; + case COR_NODUP: + keyval = CORRECT(keyval); + // fallthrough + case VAL_NODUP: + node = remove_val(&tree->root, keyval, NODUP); + break; + case USR_DUP: + node = remove_ptr(&tree->root, (void *)keyval, tree->usrcmp, DUP); + break; + case STR_DUP: + node = remove_ptr(&tree->root, (void *)keyval, AVL_AVLCMP, DUP); + break; + case COR_DUP: + keyval = CORRECT(keyval); + // fallthrough + case VAL_DUP: + node = remove_val(&tree->root, keyval, DUP); + break; } if (node) { tree->nodes--; @@ -1202,100 +1384,137 @@ void *avl__start(TREE *tree, long keyval, int back) *++pathright = back; *++pathnode = node = tree->root; switch (LOCTYPE(tree->keyinfo)) { - CASE USR_NODUP : __OR STR_NODUP : usrcmp = tree->usrcmp; - if (back) - LOOP - { - SET_PTRCMP(cmp, usrcmp, (void *)keyval, node->key.ptr) + case USR_NODUP: + case STR_NODUP: + usrcmp = tree->usrcmp; + if (back) { + for (;;) { + SET_PTRCMP(cmp, usrcmp, (void *)keyval, node->key.ptr); if (cmp > 0) { saveright = pathright; savenode = pathnode; - DOWN_RIGHT_OR_BREAK(node, pathright, pathnode) - } else if (cmp < 0) - DOWN_LEFT_OR_BREAK(node, pathright, pathnode) - else - START_OK_AND_RETURN(path, pathright, pathnode) + DOWN_RIGHT_OR_BREAK(node, pathright, pathnode); + } + else if (cmp < 0) { + DOWN_LEFT_OR_BREAK(node, pathright, pathnode); + } + else { + START_OK_AND_RETURN(path, pathright, pathnode); + } } - else - LOOP - { - SET_PTRCMP(cmp, usrcmp, (void *)keyval, node->key.ptr) + } + else { + for (;;) { + SET_PTRCMP(cmp, usrcmp, (void *)keyval, node->key.ptr); if (cmp < 0) { saveright = pathright; savenode = pathnode; - DOWN_LEFT_OR_BREAK(node, pathright, pathnode) - } else if (cmp > 0) - DOWN_RIGHT_OR_BREAK(node, pathright, pathnode) - else - START_OK_AND_RETURN(path, pathright, pathnode) + DOWN_LEFT_OR_BREAK(node, pathright, pathnode); + } + else if (cmp > 0) { + DOWN_RIGHT_OR_BREAK(node, pathright, pathnode); + } + else { + START_OK_AND_RETURN(path, pathright, pathnode); + } } - CASE COR_NODUP : keyval = CORRECT(keyval); - __OR VAL_NODUP : if (back) - LOOP - { - if (keyval > node->key.val) { - saveright = pathright; - savenode = pathnode; - DOWN_RIGHT_OR_BREAK(node, pathright, pathnode) - } else if (keyval < node->key.val) - DOWN_LEFT_OR_BREAK(node, pathright, pathnode) - else - START_OK_AND_RETURN(path, pathright, pathnode) - } - else LOOP - { - if (keyval < node->key.val) { - saveright = pathright; - savenode = pathnode; - DOWN_LEFT_OR_BREAK(node, pathright, pathnode) - } else if (keyval > node->key.val) - DOWN_RIGHT_OR_BREAK(node, pathright, pathnode) - else - START_OK_AND_RETURN(path, pathright, pathnode) } - CASE USR_DUP : __OR STR_DUP : usrcmp = tree->usrcmp; - if (back) - LOOP - { - SET_PTRCMP(cmp, usrcmp, (void *)keyval, node->key.ptr) + break; + case COR_NODUP: + keyval = CORRECT(keyval); + // fallthrough + case VAL_NODUP: + if (back) { + for (;;) { + if (keyval > node->key.val) { + saveright = pathright; + savenode = pathnode; + DOWN_RIGHT_OR_BREAK(node, pathright, pathnode); + } + else if (keyval < node->key.val) { + DOWN_LEFT_OR_BREAK(node, pathright, pathnode); + } + else { + START_OK_AND_RETURN(path, pathright, pathnode); + } + } + } + else { + for (;;) { + if (keyval < node->key.val) { + saveright = pathright; + savenode = pathnode; + DOWN_LEFT_OR_BREAK(node, pathright, pathnode); + } + else if (keyval > node->key.val) { + DOWN_RIGHT_OR_BREAK(node, pathright, pathnode); + } + else { + START_OK_AND_RETURN(path, pathright, pathnode); + } + } + break; + } + break; + case USR_DUP: + case STR_DUP: + usrcmp = tree->usrcmp; + if (back) { + for (;;) { + SET_PTRCMP(cmp, usrcmp, (void *)keyval, node->key.ptr); if (cmp >= 0) { saveright = pathright; savenode = pathnode; - DOWN_RIGHT_OR_BREAK(node, pathright, pathnode) - } else - DOWN_LEFT_OR_BREAK(node, pathright, pathnode) + DOWN_RIGHT_OR_BREAK(node, pathright, pathnode); + } + else { + DOWN_LEFT_OR_BREAK(node, pathright, pathnode); + } } - else - LOOP - { - SET_PTRCMP(cmp, usrcmp, (void *)keyval, node->key.ptr) + } + else { + for (;;) { + SET_PTRCMP(cmp, usrcmp, (void *)keyval, node->key.ptr); if (cmp <= 0) { saveright = pathright; savenode = pathnode; - DOWN_LEFT_OR_BREAK(node, pathright, pathnode) - } else - DOWN_RIGHT_OR_BREAK(node, pathright, pathnode) + DOWN_LEFT_OR_BREAK(node, pathright, pathnode); + } + else { + DOWN_RIGHT_OR_BREAK(node, pathright, pathnode); + } + } + } + break; + case COR_DUP: + keyval = CORRECT(keyval); + // fallthrough + case VAL_DUP: + if (back) { + for (;;) { + if (keyval >= node->key.val) { + saveright = pathright; + savenode = pathnode; + DOWN_RIGHT_OR_BREAK(node, pathright, pathnode); + } + else { + DOWN_LEFT_OR_BREAK(node, pathright, pathnode); + } + } + } + else { + for (;;) { + if (keyval <= node->key.val) { + saveright = pathright; + savenode = pathnode; + DOWN_LEFT_OR_BREAK(node, pathright, pathnode); + } + else { + DOWN_RIGHT_OR_BREAK(node, pathright, pathnode); + } } - CASE COR_DUP : keyval = CORRECT(keyval); - __OR VAL_DUP : if (back) - LOOP - { - if (keyval >= node->key.val) { - saveright = pathright; - savenode = pathnode; - DOWN_RIGHT_OR_BREAK(node, pathright, pathnode) - } else - DOWN_LEFT_OR_BREAK(node, pathright, pathnode) - } - else LOOP - { - if (keyval <= node->key.val) { - saveright = pathright; - savenode = pathnode; - DOWN_LEFT_OR_BREAK(node, pathright, pathnode) - } else - DOWN_RIGHT_OR_BREAK(node, pathright, pathnode) } + break; } if (savenode) { path->pathright = saveright; diff --git a/toonz/sources/image/tzp/tmacro.h b/toonz/sources/image/tzp/tmacro.h index 2f49fb5..00c6e56 100644 --- a/toonz/sources/image/tzp/tmacro.h +++ b/toonz/sources/image/tzp/tmacro.h @@ -49,14 +49,6 @@ typedef unsigned short USHORT; typedef unsigned int UINT; typedef unsigned long ULONG; -#define CASE \ - break; \ - case -#define __OR case -#define DEFAULT \ - break; \ - default - /*---------------------------------------------------------------------------*/ typedef struct { diff --git a/toonz/sources/include/tcommon.h b/toonz/sources/include/tcommon.h index a9a8139..e49ae7d 100644 --- a/toonz/sources/include/tcommon.h +++ b/toonz/sources/include/tcommon.h @@ -199,14 +199,6 @@ const unsigned int c_maxuint = (unsigned int)(~0U); #define DV_ALIGNED(val) __attribute__((aligned(val))) #endif -#define CASE \ - break; \ - case -#define __OR case -#define DEFAULT \ - break; \ - default - inline short swapShort(short val) { return ((val >> 8) & 0x00ff) | (val << 8); diff --git a/toonz/sources/include/tgl.h b/toonz/sources/include/tgl.h index d54f644..d1f3ab1 100644 --- a/toonz/sources/include/tgl.h +++ b/toonz/sources/include/tgl.h @@ -8,7 +8,7 @@ #ifdef _WIN32 #include -//#endif +#include #include #include diff --git a/toonz/sources/include/toonz4.6/tmacro.h b/toonz/sources/include/toonz4.6/tmacro.h index 2f49fb5..00c6e56 100644 --- a/toonz/sources/include/toonz4.6/tmacro.h +++ b/toonz/sources/include/toonz4.6/tmacro.h @@ -49,14 +49,6 @@ typedef unsigned short USHORT; typedef unsigned int UINT; typedef unsigned long ULONG; -#define CASE \ - break; \ - case -#define __OR case -#define DEFAULT \ - break; \ - default - /*---------------------------------------------------------------------------*/ typedef struct { diff --git a/toonz/sources/include/tvectorgl.h b/toonz/sources/include/tvectorgl.h index 28945ef..b3c37d6 100644 --- a/toonz/sources/include/tvectorgl.h +++ b/toonz/sources/include/tvectorgl.h @@ -5,7 +5,7 @@ #ifdef _WIN32 #include -// #endif +#include #include #include diff --git a/toonz/sources/stdfx/changecolorfx.cpp b/toonz/sources/stdfx/changecolorfx.cpp index 009b11b..bf4d6bd 100644 --- a/toonz/sources/stdfx/changecolorfx.cpp +++ b/toonz/sources/stdfx/changecolorfx.cpp @@ -75,30 +75,36 @@ static void OLDHSV2RGB(double hue, double sat, double value, t = value * (1 - (sat * (1 - f))); switch (i) { - CASE 0 : - *red = value; + case 0: + *red = value; *green = t; *blue = p; - CASE 1 : - *red = q; + break; + case 1: + *red = q; *green = value; *blue = p; - CASE 2 : - *red = p; + break; + case 2: + *red = p; *green = value; *blue = t; - CASE 3 : - *red = p; + break; + case 3: + *red = p; *green = q; *blue = value; - CASE 4 : - *red = t; + break; + case 4: + *red = t; *green = p; *blue = value; - CASE 5 : - *red = value; + break; + case 5: + *red = value; *green = p; *blue = q; + break; } } } diff --git a/toonz/sources/stdfx/cornerpinfx.cpp b/toonz/sources/stdfx/cornerpinfx.cpp index b32784f..3be7bcb 100644 --- a/toonz/sources/stdfx/cornerpinfx.cpp +++ b/toonz/sources/stdfx/cornerpinfx.cpp @@ -564,24 +564,31 @@ void CornerPinFx::doCompute(TTile &tile, double frame, const TRenderSettings &ri switch (m_mode->getValue()) { case SUBSTITUTE: myOver32(tile.getRaster(), textureTile.getRaster(), &substitute, v); - - CASE PATTERNTYPE : witheCard = TRaster32P(textureTile.getRaster()->getSize()); + break; + case PATTERNTYPE: + witheCard = TRaster32P(textureTile.getRaster()->getSize()); witheCard->fill(TPixel32::White); TRop::over(textureTile.getRaster(), witheCard, textureTile.getRaster()); myOver32(tile.getRaster(), textureTile.getRaster(), &pattern32, v); - - CASE ADD : myOver32(tile.getRaster(), textureTile.getRaster(), &textureAdd, v / 100.0); - - CASE SUBTRACT : myOver32(tile.getRaster(), textureTile.getRaster(), &textureSub, v / 100.0); - - CASE MULTIPLY : myOver32(tile.getRaster(), textureTile.getRaster(), &textureMult, v); - - CASE DARKEN : myOver32(tile.getRaster(), textureTile.getRaster(), &textureDarken, v); - - CASE LIGHTEN : myOver32(tile.getRaster(), textureTile.getRaster(), &textureLighten, v); - - DEFAULT: + break; + case ADD: + myOver32(tile.getRaster(), textureTile.getRaster(), &textureAdd, v / 100.0); + break; + case SUBTRACT: + myOver32(tile.getRaster(), textureTile.getRaster(), &textureSub, v / 100.0); + break; + case MULTIPLY: + myOver32(tile.getRaster(), textureTile.getRaster(), &textureMult, v); + break; + case DARKEN: + myOver32(tile.getRaster(), textureTile.getRaster(), &textureDarken, v); + break; + case LIGHTEN: + myOver32(tile.getRaster(), textureTile.getRaster(), &textureLighten, v); + break; + default: assert(0); + break; } } else { TRaster64P witheCard; @@ -591,24 +598,31 @@ void CornerPinFx::doCompute(TTile &tile, double frame, const TRenderSettings &ri switch (m_mode->getValue()) { case SUBSTITUTE: myOver64(tile.getRaster(), textureTile.getRaster(), &substitute, v); - - CASE PATTERNTYPE : witheCard = TRaster64P(textureTile.getRaster()->getSize()); + break; + case PATTERNTYPE: + witheCard = TRaster64P(textureTile.getRaster()->getSize()); witheCard->fill(TPixel64::White); TRop::over(textureTile.getRaster(), witheCard, textureTile.getRaster()); myOver64(tile.getRaster(), textureTile.getRaster(), &pattern64, v); - - CASE ADD : myOver64(tile.getRaster(), textureTile.getRaster(), &textureAdd, v / 100.0); - - CASE SUBTRACT : myOver64(tile.getRaster(), textureTile.getRaster(), &textureSub, v / 100.0); - - CASE MULTIPLY : myOver64(tile.getRaster(), textureTile.getRaster(), &textureMult, v); - - CASE DARKEN : myOver64(tile.getRaster(), textureTile.getRaster(), &textureDarken, v); - - CASE LIGHTEN : myOver64(tile.getRaster(), textureTile.getRaster(), &textureLighten, v); - - DEFAULT: + break; + case ADD: + myOver64(tile.getRaster(), textureTile.getRaster(), &textureAdd, v / 100.0); + break; + case SUBTRACT: + myOver64(tile.getRaster(), textureTile.getRaster(), &textureSub, v / 100.0); + break; + case MULTIPLY: + myOver64(tile.getRaster(), textureTile.getRaster(), &textureMult, v); + break; + case DARKEN: + myOver64(tile.getRaster(), textureTile.getRaster(), &textureDarken, v); + break; + case LIGHTEN: + myOver64(tile.getRaster(), textureTile.getRaster(), &textureLighten, v); + break; + default: assert(0); + break; } } diff --git a/toonz/sources/stdfx/hsvutil.cpp b/toonz/sources/stdfx/hsvutil.cpp index 4091513..98bf6ab 100644 --- a/toonz/sources/stdfx/hsvutil.cpp +++ b/toonz/sources/stdfx/hsvutil.cpp @@ -74,30 +74,36 @@ void OLDHSV2RGB(double hue, double sat, double value, t = value * (1 - (sat * (1 - f))); switch (i) { - CASE 0 : - *red = value; + case 0: + *red = value; *green = t; *blue = p; - CASE 1 : - *red = q; + break; + case 1: + *red = q; *green = value; *blue = p; - CASE 2 : - *red = p; + break; + case 2: + *red = p; *green = value; *blue = t; - CASE 3 : - *red = p; + break; + case 3: + *red = p; *green = q; *blue = value; - CASE 4 : - *red = t; + break; + case 4: + *red = t; *green = p; *blue = value; - CASE 5 : - *red = value; + break; + case 5: + *red = value; *green = p; *blue = q; + break; } } } diff --git a/toonz/sources/stdfx/iwa_particles.cpp b/toonz/sources/stdfx/iwa_particles.cpp index d21316a..2dfb369 100644 --- a/toonz/sources/stdfx/iwa_particles.cpp +++ b/toonz/sources/stdfx/iwa_particles.cpp @@ -18,9 +18,11 @@ void Iwa_Particle::create_Animation(const particles_values &values, { switch (values.animation_val) { case Iwa_TiledParticlesFx::ANIM_CYCLE: - __OR Iwa_TiledParticlesFx::ANIM_S_CYCLE : animswing = 0; /*frame <0 perche' c'e' il preroll dialmeno un frame*/ - CASE Iwa_TiledParticlesFx::ANIM_SR_CYCLE : animswing = random.getFloat() > 0.5 ? 1 : 0; - DEFAULT: + case Iwa_TiledParticlesFx::ANIM_S_CYCLE: + animswing = 0; /*frame <0 perche' c'e' il preroll dialmeno un frame*/ + break; + case Iwa_TiledParticlesFx::ANIM_SR_CYCLE: + animswing = random.getFloat() > 0.5 ? 1 : 0; break; } } @@ -354,23 +356,27 @@ void Iwa_Particle::update_Animation(const particles_values &values, switch (values.animation_val) { case Iwa_TiledParticlesFx::ANIM_RANDOM: frame = (int)(first + random.getFloat() * (last - first)); - CASE Iwa_TiledParticlesFx::ANIM_R_CYCLE : __OR Iwa_TiledParticlesFx::ANIM_CYCLE : if (!keep || frame != keep - 1) - frame = first + (frame + 1) % (last - first); - CASE Iwa_TiledParticlesFx::ANIM_S_CYCLE : __OR Iwa_TiledParticlesFx::ANIM_SR_CYCLE: - { - if (!keep || frame != keep - 1) { - if (!animswing && frame < last - 1) { - frame = (frame + 1); - if (frame == last - 1) - animswing = 1; - } else - frame = (frame - 1); - if (frame <= first) { - animswing = 0; - frame = first; - } + break; + case Iwa_TiledParticlesFx::ANIM_R_CYCLE: + case Iwa_TiledParticlesFx::ANIM_CYCLE: + if (!keep || frame != keep - 1) + frame = first + (frame + 1) % (last - first); + break; + case Iwa_TiledParticlesFx::ANIM_S_CYCLE: + case Iwa_TiledParticlesFx::ANIM_SR_CYCLE: + if (!keep || frame != keep - 1) { + if (!animswing && frame < last - 1) { + frame = (frame + 1); + if (frame == last - 1) + animswing = 1; + } else + frame = (frame - 1); + if (frame <= first) { + animswing = 0; + frame = first; } } + break; } } @@ -505,10 +511,11 @@ void Iwa_Particle::get_image_reference(TTile *ctrl, const particles_values &valu TPixel64 pix = raster64->pixels(troundp(tmp.y))[(int)tmp.x]; imagereference = TPixelGR16::from(pix).value / (float)TPixelGR16::maxChannelValue; } - - CASE Iwa_TiledParticlesFx::H_REF : if (raster32 && - tmp.x >= 0 && tmp.x < raster32->getLx() && - tmp.y >= 0 && tround(tmp.y) < raster32->getLy()) + break; + case Iwa_TiledParticlesFx::H_REF: + if (raster32 && + tmp.x >= 0 && tmp.x < raster32->getLx() && + tmp.y >= 0 && tround(tmp.y) < raster32->getLy()) { float aux = (float)TPixel32::maxChannelValue; double h, s, v; @@ -526,6 +533,7 @@ void Iwa_Particle::get_image_reference(TTile *ctrl, const particles_values &valu OLDRGB2HSV(pix.r / aux, pix.g / aux, pix.b / aux, &h, &s, &v); imagereference = (float)h / 360.0f; } + break; } if (raster32) diff --git a/toonz/sources/stdfx/iwa_particlesengine.cpp b/toonz/sources/stdfx/iwa_particlesengine.cpp index 46a7fdd..d9b8de3 100644 --- a/toonz/sources/stdfx/iwa_particlesengine.cpp +++ b/toonz/sources/stdfx/iwa_particlesengine.cpp @@ -401,9 +401,10 @@ void Iwa_Particles_Engine::roll_particles(TTile *tile, /*-結果を格納 } totalparticles++; } + break; - CASE Iwa_TiledParticlesFx::TOP_RANDOM : for (i = 0; i < actualBirthParticles; i++) - { + case Iwa_TiledParticlesFx::TOP_RANDOM: + for (i = 0; i < actualBirthParticles; i++) { double tmp = values.random_val->getFloat() * myParticles.size(); std::list::iterator it = myParticles.begin(); for (int j = 0; j < tmp; j++, it++) @@ -439,8 +440,9 @@ void Iwa_Particles_Engine::roll_particles(TTile *tile, /*-結果を格納 totalparticles++; } } + break; - DEFAULT: + default: for (i = 0; i < actualBirthParticles; i++) { /*- 出発する粒子 -*/ ParticleOrigin po = particleOrigins.at(leavingPartIndex.at(i)); @@ -470,6 +472,7 @@ void Iwa_Particles_Engine::roll_particles(TTile *tile, /*-結果を格納 } totalparticles++; } + break; } } @@ -1510,9 +1513,13 @@ unsigned char Iwa_Particles_Engine::getInitSourceFrame(const particles_values &v { switch (values.animation_val) { case Iwa_TiledParticlesFx::ANIM_CYCLE: - __OR Iwa_TiledParticlesFx::ANIM_S_CYCLE : return (unsigned char)first; - CASE Iwa_TiledParticlesFx::ANIM_SR_CYCLE : return (unsigned char)(first + (values.random_val->getFloat()) * (last - first)); - DEFAULT: + case Iwa_TiledParticlesFx::ANIM_S_CYCLE: + return (unsigned char)first; + + case Iwa_TiledParticlesFx::ANIM_SR_CYCLE: + return (unsigned char)(first + (values.random_val->getFloat()) * (last - first)); + + default: return (unsigned char)(first + (values.random_val->getFloat()) * (last - first)); } } diff --git a/toonz/sources/stdfx/palettefilterfx.cpp b/toonz/sources/stdfx/palettefilterfx.cpp index 9a1b14c..35c6237 100644 --- a/toonz/sources/stdfx/palettefilterfx.cpp +++ b/toonz/sources/stdfx/palettefilterfx.cpp @@ -71,14 +71,13 @@ void PaletteFilterFx::doDryCompute(TRectD &rect, double frame, insertIndexes(items, PaletteFilterData); PaletteFilterData->m_keep = (bool)(m_keep->getValue() == 1); switch (m_type->getValue()) { - case 0: - PaletteFilterData->m_type = eApplyToInksAndPaints; - CASE 1 : PaletteFilterData->m_type = eApplyToInksKeepingAllPaints; - CASE 2 : PaletteFilterData->m_type = eApplyToPaintsKeepingAllInks; - CASE 3 : PaletteFilterData->m_type = eApplyToInksAndPaints_NoGap; - CASE 4 : PaletteFilterData->m_type = eApplyToInksDeletingAllPaints; - CASE 5 : PaletteFilterData->m_type = eApplyToPaintsDeletingAllInks; - DEFAULT: + case 0: PaletteFilterData->m_type = eApplyToInksAndPaints ; break; + case 1: PaletteFilterData->m_type = eApplyToInksKeepingAllPaints ; break; + case 2: PaletteFilterData->m_type = eApplyToPaintsKeepingAllInks ; break; + case 3: PaletteFilterData->m_type = eApplyToInksAndPaints_NoGap ; break; + case 4: PaletteFilterData->m_type = eApplyToInksDeletingAllPaints; break; + case 5: PaletteFilterData->m_type = eApplyToPaintsDeletingAllInks; break; + default: assert(false); } @@ -102,14 +101,13 @@ void PaletteFilterFx::doCompute(TTile &tile, double frame, const TRenderSettings insertIndexes(items, PaletteFilterData); PaletteFilterData->m_keep = (bool)(m_keep->getValue() == 1); switch (m_type->getValue()) { - case 0: - PaletteFilterData->m_type = eApplyToInksAndPaints; - CASE 1 : PaletteFilterData->m_type = eApplyToInksKeepingAllPaints; - CASE 2 : PaletteFilterData->m_type = eApplyToPaintsKeepingAllInks; - CASE 3 : PaletteFilterData->m_type = eApplyToInksAndPaints_NoGap; - CASE 4 : PaletteFilterData->m_type = eApplyToInksDeletingAllPaints; - CASE 5 : PaletteFilterData->m_type = eApplyToPaintsDeletingAllInks; - DEFAULT: + case 0: PaletteFilterData->m_type = eApplyToInksAndPaints ; break; + case 1: PaletteFilterData->m_type = eApplyToInksKeepingAllPaints ; break; + case 2: PaletteFilterData->m_type = eApplyToPaintsKeepingAllInks ; break; + case 3: PaletteFilterData->m_type = eApplyToInksAndPaints_NoGap ; break; + case 4: PaletteFilterData->m_type = eApplyToInksDeletingAllPaints; break; + case 5: PaletteFilterData->m_type = eApplyToPaintsDeletingAllInks; break; + default: assert(false); } diff --git a/toonz/sources/stdfx/particles.cpp b/toonz/sources/stdfx/particles.cpp index 824c3a7..8c9aa84 100644 --- a/toonz/sources/stdfx/particles.cpp +++ b/toonz/sources/stdfx/particles.cpp @@ -16,12 +16,19 @@ void Particle::create_Animation(const particles_values &values, { switch (values.animation_val) { case ParticlesFx::ANIM_CYCLE: - __OR ParticlesFx::ANIM_S_CYCLE : frame = first; + case ParticlesFx::ANIM_S_CYCLE: + frame = first; animswing = 0; /*frame <0 perche' c'e' il preroll dialmeno un frame*/ - CASE ParticlesFx::ANIM_SR_CYCLE : frame = (int)(first + (random.getFloat()) * (last - first)); + break; + + case ParticlesFx::ANIM_SR_CYCLE: + frame = (int)(first + (random.getFloat()) * (last - first)); animswing = random.getFloat() > 0.5 ? 1 : 0; - DEFAULT: + break; + + default: frame = (int)(first + (random.getFloat()) * (last - first)); + break; } } @@ -357,23 +364,29 @@ void Particle::update_Animation(const particles_values &values, switch (values.animation_val) { case ParticlesFx::ANIM_RANDOM: frame = (int)(first + random.getFloat() * (last - first)); - CASE ParticlesFx::ANIM_R_CYCLE : __OR ParticlesFx::ANIM_CYCLE : if (!keep || frame != keep - 1) - frame = first + (frame + 1) % (last - first); - CASE ParticlesFx::ANIM_S_CYCLE : __OR ParticlesFx::ANIM_SR_CYCLE: - { - if (!keep || frame != keep - 1) { - if (!animswing && frame < last - 1) { - frame = (frame + 1); - if (frame == last - 1) - animswing = 1; - } else - frame = (frame - 1); - if (frame <= first) { - animswing = 0; - frame = first; - } + break; + + case ParticlesFx::ANIM_R_CYCLE: + case ParticlesFx::ANIM_CYCLE: + if (!keep || frame != keep - 1) + frame = first + (frame + 1) % (last - first); + break; + + case ParticlesFx::ANIM_S_CYCLE: + case ParticlesFx::ANIM_SR_CYCLE: + if (!keep || frame != keep - 1) { + if (!animswing && frame < last - 1) { + frame = (frame + 1); + if (frame == last - 1) + animswing = 1; + } else + frame = (frame - 1); + if (frame <= first) { + animswing = 0; + frame = first; } } + break; } } @@ -494,14 +507,17 @@ void Particle::get_image_reference(TTile *ctrl, const particles_values &values, TPixel32 pix = raster32->pixels(troundp(tmp.y))[(int)tmp.x]; imagereference = TPixelGR8::from(pix).value / (double)TPixelGR8::maxChannelValue; } - CASE ParticlesFx::H_REF : if (raster32 && tmp.x >= 0 && tmp.x < raster32->getLx() && tmp.y >= 0 && tround(tmp.y) < raster32->getLy()) - { + break; + + case ParticlesFx::H_REF: + if (raster32 && tmp.x >= 0 && tmp.x < raster32->getLx() && tmp.y >= 0 && tround(tmp.y) < raster32->getLy()) { double aux = (double)TPixel32::maxChannelValue; double h, s, v; TPixel32 pix = raster32->pixels(troundp(tmp.y))[(int)tmp.x]; OLDRGB2HSV(pix.r / aux, pix.g / aux, pix.b / aux, &h, &s, &v); imagereference = h / 360.0; } + break; } raster32->unlock(); } diff --git a/toonz/sources/stdfx/particlesengine.cpp b/toonz/sources/stdfx/particlesengine.cpp index cb1ef13..2d6fbe0 100644 --- a/toonz/sources/stdfx/particlesengine.cpp +++ b/toonz/sources/stdfx/particlesengine.cpp @@ -277,7 +277,7 @@ void Particles_Engine::roll_particles( int oldparticles = myParticles.size(); switch (values.toplayer_val) { - case ParticlesFx::TOP_YOUNGER: { + case ParticlesFx::TOP_YOUNGER: for (i = 0; i < newparticles; i++) { int seed = (int)((std::numeric_limits::max)() * values.random_val->getFloat()); int level = (int)(values.random_val->getFloat() * level_n); @@ -293,31 +293,32 @@ void Particles_Engine::roll_particles( totalparticles++; } - } - CASE ParticlesFx::TOP_RANDOM: - { - for (i = 0; i < newparticles; i++) { - double tmp = values.random_val->getFloat() * myParticles.size(); - std::list::iterator it = myParticles.begin(); - for (int j = 0; j < tmp; j++, it++) - ; - { - int seed = (int)((std::numeric_limits::max)() * values.random_val->getFloat()); - int level = (int)(values.random_val->getFloat() * level_n); - int lifetime = 0; - - if (values.column_lifetime_val) - lifetime = lastframe[level]; - else - lifetime = (int)(values.lifetime_val.first + ranges.lifetime_range * values.random_val->getFloat()); - if (lifetime > curr_frame - frame) - myParticles.insert(it, Particle(lifetime, seed, porttiles, values, ranges, myregions, totalparticles, 0, level, lastframe[level], myHistogram, myWeight)); - - totalparticles++; - } + break; + + case ParticlesFx::TOP_RANDOM: + for (i = 0; i < newparticles; i++) { + double tmp = values.random_val->getFloat() * myParticles.size(); + std::list::iterator it = myParticles.begin(); + for (int j = 0; j < tmp; j++, it++) + ; + { + int seed = (int)((std::numeric_limits::max)() * values.random_val->getFloat()); + int level = (int)(values.random_val->getFloat() * level_n); + int lifetime = 0; + + if (values.column_lifetime_val) + lifetime = lastframe[level]; + else + lifetime = (int)(values.lifetime_val.first + ranges.lifetime_range * values.random_val->getFloat()); + if (lifetime > curr_frame - frame) + myParticles.insert(it, Particle(lifetime, seed, porttiles, values, ranges, myregions, totalparticles, 0, level, lastframe[level], myHistogram, myWeight)); + + totalparticles++; } } - DEFAULT : { + break; + + default: for (i = 0; i < newparticles; i++) { int seed = (int)((std::numeric_limits::max)() * values.random_val->getFloat()); int level = (int)(values.random_val->getFloat() * level_n); @@ -332,7 +333,7 @@ void Particles_Engine::roll_particles( totalparticles++; } - } + break; } } } diff --git a/toonz/sources/stdfx/shaderfx.cpp b/toonz/sources/stdfx/shaderfx.cpp index bda24f6..05b1e68 100644 --- a/toonz/sources/stdfx/shaderfx.cpp +++ b/toonz/sources/stdfx/shaderfx.cpp @@ -295,11 +295,12 @@ public: case ShadingContext::NO_PIXEL_BUFFER: DVGui::warning(QGLShaderProgram::tr( "This system configuration does not support OpenGL Pixel Buffers. Shader Fxs will not be able to render.")); + break; - CASE ShadingContext::NO_SHADERS : DVGui::warning(QGLShaderProgram::tr( - "This system configuration does not support OpenGL Shader Programs. Shader Fxs will not be able to render.")); - - DEFAULT:; + case ShadingContext::NO_SHADERS: + DVGui::warning(QGLShaderProgram::tr( + "This system configuration does not support OpenGL Shader Programs. Shader Fxs will not be able to render.")); + break; } sentMsg = true; @@ -444,96 +445,112 @@ void ShaderFx::initialize() m_params.push_back(param); bindParam(this, siParam.m_name.toStdString(), - *boost::unsafe_any_cast(&m_params.back())); - } + *boost::unsafe_any_cast(&m_params.back())); - CASE ShaderInterface::FLOAT: - { - TDoubleParamP param(siParam.m_default.m_float); - param->setValueRange(siParam.m_range[0].m_float, siParam.m_range[1].m_float); - - locals.addUiConcept(siParam, param); + break; + } - switch (siParam.m_concept.m_type) { - case ShaderInterface::PERCENT: - param->setMeasureName(l_measureNames[PERCENT]); + case ShaderInterface::FLOAT: { + TDoubleParamP param(siParam.m_default.m_float); + param->setValueRange(siParam.m_range[0].m_float, siParam.m_range[1].m_float); - CASE ShaderInterface::LENGTH : case ShaderInterface::RADIUS_UI : case ShaderInterface::WIDTH_UI : case ShaderInterface::SIZE_UI : param->setMeasureName(l_measureNames[LENGTH]); + locals.addUiConcept(siParam, param); - CASE ShaderInterface::ANGLE : case ShaderInterface::ANGLE_UI : param->setMeasureName(l_measureNames[ANGLE]); + switch (siParam.m_concept.m_type) { + case ShaderInterface::PERCENT: + param->setMeasureName(l_measureNames[PERCENT]); + break; - DEFAULT:; - } + case ShaderInterface::LENGTH: + case ShaderInterface::RADIUS_UI: + case ShaderInterface::WIDTH_UI: + case ShaderInterface::SIZE_UI: + param->setMeasureName(l_measureNames[LENGTH]); + break; - m_params.push_back(param); - bindParam(this, siParam.m_name.toStdString(), - *boost::unsafe_any_cast(&m_params.back())); + case ShaderInterface::ANGLE: + case ShaderInterface::ANGLE_UI: + param->setMeasureName(l_measureNames[ANGLE]); + break; } - CASE ShaderInterface::VEC2: - { - TPointParamP param(TPointD( - siParam.m_default.m_vec2[0], siParam.m_default.m_vec2[1])); - - param->getX()->setValueRange(siParam.m_range[0].m_vec2[0], siParam.m_range[1].m_vec2[0]); - param->getY()->setValueRange(siParam.m_range[0].m_vec2[1], siParam.m_range[1].m_vec2[1]); - - locals.addUiConcept(siParam, param); - - switch (siParam.m_concept.m_type) { - case ShaderInterface::PERCENT: - param->getX()->setMeasureName(l_measureNames[PERCENT]); - param->getY()->setMeasureName(l_measureNames[PERCENT]); - - CASE ShaderInterface::LENGTH : case ShaderInterface::POINT : case ShaderInterface::POINT_UI : case ShaderInterface::VECTOR_UI : case ShaderInterface::WIDTH_UI : case ShaderInterface::SIZE_UI : param->getX()->setMeasureName(l_measureNames[LENGTH]); - param->getY()->setMeasureName(l_measureNames[LENGTH]); - - CASE ShaderInterface::ANGLE : case ShaderInterface::ANGLE_UI : param->getX()->setMeasureName(l_measureNames[ANGLE]); - param->getY()->setMeasureName(l_measureNames[ANGLE]); - - DEFAULT:; - } + m_params.push_back(param); + bindParam(this, siParam.m_name.toStdString(), + *boost::unsafe_any_cast(&m_params.back())); + break; + } - m_params.push_back(param); - bindParam(this, siParam.m_name.toStdString(), - *boost::unsafe_any_cast(&m_params.back())); + case ShaderInterface::VEC2: { + TPointParamP param(TPointD( + siParam.m_default.m_vec2[0], siParam.m_default.m_vec2[1])); + + param->getX()->setValueRange(siParam.m_range[0].m_vec2[0], siParam.m_range[1].m_vec2[0]); + param->getY()->setValueRange(siParam.m_range[0].m_vec2[1], siParam.m_range[1].m_vec2[1]); + + locals.addUiConcept(siParam, param); + + switch (siParam.m_concept.m_type) { + case ShaderInterface::PERCENT: + param->getX()->setMeasureName(l_measureNames[PERCENT]); + param->getY()->setMeasureName(l_measureNames[PERCENT]); + break; + + case ShaderInterface::LENGTH: + case ShaderInterface::POINT: + case ShaderInterface::POINT_UI: + case ShaderInterface::VECTOR_UI: + case ShaderInterface::WIDTH_UI: + case ShaderInterface::SIZE_UI: + param->getX()->setMeasureName(l_measureNames[LENGTH]); + param->getY()->setMeasureName(l_measureNames[LENGTH]); + break; + + case ShaderInterface::ANGLE: + case ShaderInterface::ANGLE_UI: + param->getX()->setMeasureName(l_measureNames[ANGLE]); + param->getY()->setMeasureName(l_measureNames[ANGLE]); + break; } - CASE ShaderInterface::INT: - { - TIntParamP param(siParam.m_default.m_int); - param->setValueRange(siParam.m_range[0].m_int, siParam.m_range[1].m_int); + m_params.push_back(param); + bindParam(this, siParam.m_name.toStdString(), + *boost::unsafe_any_cast(&m_params.back())); + break; + } - m_params.push_back(param); - bindParam(this, siParam.m_name.toStdString(), - *boost::unsafe_any_cast(&m_params.back())); - } + case ShaderInterface::INT: { + TIntParamP param(siParam.m_default.m_int); + param->setValueRange(siParam.m_range[0].m_int, siParam.m_range[1].m_int); - CASE ShaderInterface::RGBA: - { - TPixelParamP param(TPixel32( - siParam.m_default.m_rgba[0], siParam.m_default.m_rgba[1], - siParam.m_default.m_rgba[2], siParam.m_default.m_rgba[3])); + m_params.push_back(param); + bindParam(this, siParam.m_name.toStdString(), + *boost::unsafe_any_cast(&m_params.back())); + break; + } - m_params.push_back(param); - bindParam(this, siParam.m_name.toStdString(), - *boost::unsafe_any_cast(&m_params.back())); - } + case ShaderInterface::RGBA: { + TPixelParamP param(TPixel32( + siParam.m_default.m_rgba[0], siParam.m_default.m_rgba[1], + siParam.m_default.m_rgba[2], siParam.m_default.m_rgba[3])); - CASE ShaderInterface::RGB: - { - TPixelParamP param(TPixel32( - siParam.m_default.m_rgb[0], siParam.m_default.m_rgb[1], - siParam.m_default.m_rgb[2])); + m_params.push_back(param); + bindParam(this, siParam.m_name.toStdString(), + *boost::unsafe_any_cast(&m_params.back())); + break; + } - param->enableMatte(false); + case ShaderInterface::RGB: { + TPixelParamP param(TPixel32( + siParam.m_default.m_rgb[0], siParam.m_default.m_rgb[1], + siParam.m_default.m_rgb[2])); - m_params.push_back(param); - bindParam(this, siParam.m_name.toStdString(), - *boost::unsafe_any_cast(&m_params.back())); - } + param->enableMatte(false); - DEFAULT:; + m_params.push_back(param); + bindParam(this, siParam.m_name.toStdString(), + *boost::unsafe_any_cast(&m_params.back())); + break; + } } } @@ -718,41 +735,41 @@ void ShaderFx::bindParameters( case ShaderInterface::BOOL: { const TBoolParamP ¶m = *boost::unsafe_any_cast(&m_params[p]); program->setUniformValue(siParam.m_name.toUtf8().data(), (GLboolean)param->getValue()); + break; } - CASE ShaderInterface::FLOAT: - { - const TDoubleParamP ¶m = *boost::unsafe_any_cast(&m_params[p]); - program->setUniformValue(siParam.m_name.toUtf8().data(), - (GLfloat)param->getValue(frame)); - } - - CASE ShaderInterface::VEC2: - { - const TPointParamP ¶m = *boost::unsafe_any_cast(&m_params[p]); + case ShaderInterface::FLOAT: { + const TDoubleParamP ¶m = *boost::unsafe_any_cast(&m_params[p]); + program->setUniformValue(siParam.m_name.toUtf8().data(), + (GLfloat)param->getValue(frame)); + break; + } - const TPointD &value = param->getValue(frame); - program->setUniformValue(siParam.m_name.toUtf8().data(), - (GLfloat)value.x, (GLfloat)value.y); - } + case ShaderInterface::VEC2: { + const TPointParamP ¶m = *boost::unsafe_any_cast(&m_params[p]); - CASE ShaderInterface::INT: - { - const TIntParamP ¶m = *boost::unsafe_any_cast(&m_params[p]); - program->setUniformValue(siParam.m_name.toUtf8().data(), (GLint)param->getValue()); - } + const TPointD &value = param->getValue(frame); + program->setUniformValue(siParam.m_name.toUtf8().data(), + (GLfloat)value.x, (GLfloat)value.y); + break; + } - CASE ShaderInterface::RGBA : case ShaderInterface::RGB: - { - const TPixelParamP ¶m = *boost::unsafe_any_cast(&m_params[p]); + case ShaderInterface::INT: { + const TIntParamP ¶m = *boost::unsafe_any_cast(&m_params[p]); + program->setUniformValue(siParam.m_name.toUtf8().data(), (GLint)param->getValue()); + break; + } - const TPixel32 &value = param->getValue(frame); - program->setUniformValue(siParam.m_name.toUtf8().data(), - (GLfloat)value.r / 255.0f, (GLfloat)value.g / 255.0f, - (GLfloat)value.b / 255.0f, (GLfloat)value.m / 255.0f); - } + case ShaderInterface::RGBA: + case ShaderInterface::RGB: { + const TPixelParamP ¶m = *boost::unsafe_any_cast(&m_params[p]); - DEFAULT:; + const TPixel32 &value = param->getValue(frame); + program->setUniformValue(siParam.m_name.toUtf8().data(), + (GLfloat)value.r / 255.0f, (GLfloat)value.g / 255.0f, + (GLfloat)value.b / 255.0f, (GLfloat)value.m / 255.0f); + break; + } } } } diff --git a/toonz/sources/stdfx/shaderinterface.cpp b/toonz/sources/stdfx/shaderinterface.cpp index 5774e83..92f4eba 100644 --- a/toonz/sources/stdfx/shaderinterface.cpp +++ b/toonz/sources/stdfx/shaderinterface.cpp @@ -482,37 +482,47 @@ void ShaderInterface::Parameter::saveData(TOStream &os) switch (m_type) { case BOOL: os << (int)m_default.m_bool; - CASE FLOAT : os << (double)m_default.m_float; - - CASE VEC2 : os << (double)m_default.m_vec2[0] << (double)m_default.m_vec2[1]; - - CASE VEC3 : os << (double)m_default.m_vec3[0] << (double)m_default.m_vec3[1] - << (double)m_default.m_vec3[2]; - - CASE VEC4 : os << (double)m_default.m_vec4[0] << (double)m_default.m_vec4[1] - << (double)m_default.m_vec4[2] - << (double)m_default.m_vec4[3]; - - CASE INT : os << m_default.m_int; - - CASE IVEC2 : os << m_default.m_ivec2[0] << m_default.m_ivec2[1]; - - CASE IVEC3 : os << m_default.m_ivec3[0] << m_default.m_ivec3[1] - << m_default.m_ivec3[2]; - - CASE IVEC4 : os << m_default.m_ivec4[0] << m_default.m_ivec4[1] - << m_default.m_ivec4[2] - << m_default.m_ivec4[3]; - - CASE RGBA : os << (int)m_default.m_rgba[0] << (int)m_default.m_rgba[1] - << (int)m_default.m_rgba[2] - << (int)m_default.m_rgba[3]; - - CASE RGB : os << (int)m_default.m_rgb[0] << (int)m_default.m_rgb[1] - << (int)m_default.m_rgb[2]; - - DEFAULT:; - }; + break; + case FLOAT: + os << (double)m_default.m_float; + break; + case VEC2: + os << (double)m_default.m_vec2[0] << (double)m_default.m_vec2[1]; + break; + case VEC3: + os << (double)m_default.m_vec3[0] << (double)m_default.m_vec3[1] + << (double)m_default.m_vec3[2]; + break; + case VEC4: + os << (double)m_default.m_vec4[0] << (double)m_default.m_vec4[1] + << (double)m_default.m_vec4[2] + << (double)m_default.m_vec4[3]; + break; + case INT: + os << m_default.m_int; + break; + case IVEC2: + os << m_default.m_ivec2[0] << m_default.m_ivec2[1]; + break; + case IVEC3: + os << m_default.m_ivec3[0] << m_default.m_ivec3[1] + << m_default.m_ivec3[2]; + break; + case IVEC4: + os << m_default.m_ivec4[0] << m_default.m_ivec4[1] + << m_default.m_ivec4[2] + << m_default.m_ivec4[3]; + break; + case RGBA: + os << (int)m_default.m_rgba[0] << (int)m_default.m_rgba[1] + << (int)m_default.m_rgba[2] + << (int)m_default.m_rgba[3]; + break; + case RGB: + os << (int)m_default.m_rgb[0] << (int)m_default.m_rgb[1] + << (int)m_default.m_rgb[2]; + break; + } os.closeChild(); @@ -521,47 +531,53 @@ void ShaderInterface::Parameter::saveData(TOStream &os) switch (m_type) { case FLOAT: os << (double)m_range[0].m_float << (double)m_range[1].m_float; - - CASE VEC2 : os << (double)m_range[0].m_vec2[0] << (double)m_range[1].m_vec2[0] - << (double)m_range[0].m_vec2[1] - << (double)m_range[1].m_vec2[1]; - - CASE VEC3 : os << (double)m_range[0].m_vec3[0] << (double)m_range[1].m_vec3[0] + break; + case VEC2: + os << (double)m_range[0].m_vec2[0] << (double)m_range[1].m_vec2[0] + << (double)m_range[0].m_vec2[1] + << (double)m_range[1].m_vec2[1]; + break; + case VEC3: + os << (double)m_range[0].m_vec3[0] << (double)m_range[1].m_vec3[0] << (double)m_range[0].m_vec3[1] << (double)m_range[1].m_vec3[1] << (double)m_range[0].m_vec3[2] << (double)m_range[1].m_vec3[2]; - - CASE VEC4 : os << (double)m_range[0].m_vec4[0] << (double)m_range[1].m_vec4[0] - << (double)m_range[0].m_vec4[1] - << (double)m_range[1].m_vec4[1] - << (double)m_range[0].m_vec4[2] - << (double)m_range[1].m_vec4[2] - << (double)m_range[0].m_vec4[3] - << (double)m_range[1].m_vec4[3]; - - CASE INT : os << m_range[0].m_int << m_range[1].m_int; - - CASE IVEC2 : os << m_range[0].m_ivec2[0] << m_range[1].m_ivec2[0] + break; + case VEC4: + os << (double)m_range[0].m_vec4[0] << (double)m_range[1].m_vec4[0] + << (double)m_range[0].m_vec4[1] + << (double)m_range[1].m_vec4[1] + << (double)m_range[0].m_vec4[2] + << (double)m_range[1].m_vec4[2] + << (double)m_range[0].m_vec4[3] + << (double)m_range[1].m_vec4[3]; + break; + case INT: + os << m_range[0].m_int << m_range[1].m_int; + break; + case IVEC2: + os << m_range[0].m_ivec2[0] << m_range[1].m_ivec2[0] << m_range[0].m_ivec2[1] << m_range[1].m_ivec2[1]; - - CASE IVEC3 : os << m_range[0].m_ivec3[0] << m_range[1].m_ivec3[0] + break; + case IVEC3: + os << m_range[0].m_ivec3[0] << m_range[1].m_ivec3[0] << m_range[0].m_ivec3[1] << m_range[1].m_ivec3[1] << m_range[0].m_ivec3[2] << m_range[1].m_ivec3[2]; - - CASE IVEC4 : os << m_range[0].m_ivec4[0] << m_range[1].m_ivec4[0] + break; + case IVEC4: + os << m_range[0].m_ivec4[0] << m_range[1].m_ivec4[0] << m_range[0].m_ivec4[1] << m_range[1].m_ivec4[1] << m_range[0].m_ivec4[2] << m_range[1].m_ivec4[2] << m_range[0].m_ivec4[3] << m_range[1].m_ivec4[3]; - - DEFAULT:; - }; + break; + } os.closeChild(); } @@ -591,83 +607,62 @@ void ShaderInterface::Parameter::loadData(TIStream &is) switch (m_type) { case BOOL: m_default.m_bool = false; - - CASE FLOAT: - { - m_default.m_float = 0.0; - m_range[0].m_float = -(std::numeric_limits::max)(); - m_range[1].m_float = (std::numeric_limits::max)(); - } - - CASE VEC2: - { - m_default.m_vec2[0] = m_default.m_vec2[1] = 0.0; - m_range[0].m_vec2[0] = m_range[0].m_vec2[1] = -(std::numeric_limits::max)(); - m_range[1].m_vec2[0] = m_range[1].m_vec2[1] = (std::numeric_limits::max)(); - } - - CASE VEC3: - { - m_default.m_vec3[0] = m_default.m_vec3[1] = m_default.m_vec3[1] = 0.0; - m_range[0].m_vec3[0] = m_range[0].m_vec3[1] = m_range[0].m_vec3[2] = -(std::numeric_limits::max)(); - m_range[1].m_vec3[0] = m_range[1].m_vec3[1] = m_range[1].m_vec3[2] = (std::numeric_limits::max)(); - } - - CASE VEC4: - { - m_default.m_vec4[0] = m_default.m_vec4[1] = - m_default.m_vec4[1] = m_default.m_vec4[1] = 0.0; - m_range[0].m_vec4[0] = m_range[0].m_vec4[1] = - m_range[0].m_vec4[2] = m_range[0].m_vec4[3] = -(std::numeric_limits::max)(); - m_range[1].m_vec4[0] = m_range[1].m_vec4[1] = - m_range[1].m_vec4[2] = m_range[1].m_vec4[3] = (std::numeric_limits::max)(); - } - - CASE INT: - { - m_default.m_int = 0; - m_range[0].m_int = -(std::numeric_limits::max)(); - m_range[1].m_int = (std::numeric_limits::max)(); - } - - CASE IVEC2: - { - m_default.m_ivec2[0] = m_default.m_ivec2[1] = 0; - m_range[0].m_ivec2[0] = m_range[0].m_ivec2[1] = -(std::numeric_limits::max)(); - m_range[1].m_ivec2[0] = m_range[1].m_ivec2[1] = (std::numeric_limits::max)(); - } - - CASE IVEC3: - { - m_default.m_ivec3[0] = m_default.m_ivec3[1] = m_default.m_ivec3[1] = 0; - m_range[0].m_ivec3[0] = m_range[0].m_ivec3[1] = m_range[0].m_ivec3[2] = -(std::numeric_limits::max)(); - m_range[1].m_ivec3[0] = m_range[1].m_ivec3[1] = m_range[1].m_ivec3[2] = (std::numeric_limits::max)(); - } - - CASE IVEC4: - { - m_default.m_ivec4[0] = m_default.m_ivec4[1] = - m_default.m_ivec4[1] = m_default.m_ivec4[1] = 0; - m_range[0].m_ivec4[0] = m_range[0].m_ivec4[1] = - m_range[0].m_ivec4[2] = m_range[0].m_ivec4[3] = -(std::numeric_limits::max)(); - m_range[1].m_ivec4[0] = m_range[1].m_ivec4[1] = - m_range[1].m_ivec4[2] = m_range[1].m_ivec4[3] = (std::numeric_limits::max)(); - } - - CASE RGBA: - { - m_default.m_rgba[0] = m_default.m_rgba[1] = - m_default.m_rgba[2] = m_default.m_rgba[3] = 255; - } - - CASE RGB: - { - m_default.m_rgb[0] = m_default.m_rgb[1] = - m_default.m_rgb[2] = 255; - } - - DEFAULT:; - }; + break; + case FLOAT: + m_default.m_float = 0.0; + m_range[0].m_float = -(std::numeric_limits::max)(); + m_range[1].m_float = (std::numeric_limits::max)(); + break; + case VEC2: + m_default.m_vec2[0] = m_default.m_vec2[1] = 0.0; + m_range[0].m_vec2[0] = m_range[0].m_vec2[1] = -(std::numeric_limits::max)(); + m_range[1].m_vec2[0] = m_range[1].m_vec2[1] = (std::numeric_limits::max)(); + break; + case VEC3: + m_default.m_vec3[0] = m_default.m_vec3[1] = m_default.m_vec3[1] = 0.0; + m_range[0].m_vec3[0] = m_range[0].m_vec3[1] = m_range[0].m_vec3[2] = -(std::numeric_limits::max)(); + m_range[1].m_vec3[0] = m_range[1].m_vec3[1] = m_range[1].m_vec3[2] = (std::numeric_limits::max)(); + break; + case VEC4: + m_default.m_vec4[0] = m_default.m_vec4[1] = + m_default.m_vec4[1] = m_default.m_vec4[1] = 0.0; + m_range[0].m_vec4[0] = m_range[0].m_vec4[1] = + m_range[0].m_vec4[2] = m_range[0].m_vec4[3] = -(std::numeric_limits::max)(); + m_range[1].m_vec4[0] = m_range[1].m_vec4[1] = + m_range[1].m_vec4[2] = m_range[1].m_vec4[3] = (std::numeric_limits::max)(); + break; + case INT: + m_default.m_int = 0; + m_range[0].m_int = -(std::numeric_limits::max)(); + m_range[1].m_int = (std::numeric_limits::max)(); + break; + case IVEC2: + m_default.m_ivec2[0] = m_default.m_ivec2[1] = 0; + m_range[0].m_ivec2[0] = m_range[0].m_ivec2[1] = -(std::numeric_limits::max)(); + m_range[1].m_ivec2[0] = m_range[1].m_ivec2[1] = (std::numeric_limits::max)(); + break; + case IVEC3: + m_default.m_ivec3[0] = m_default.m_ivec3[1] = m_default.m_ivec3[1] = 0; + m_range[0].m_ivec3[0] = m_range[0].m_ivec3[1] = m_range[0].m_ivec3[2] = -(std::numeric_limits::max)(); + m_range[1].m_ivec3[0] = m_range[1].m_ivec3[1] = m_range[1].m_ivec3[2] = (std::numeric_limits::max)(); + break; + case IVEC4: + m_default.m_ivec4[0] = m_default.m_ivec4[1] = + m_default.m_ivec4[1] = m_default.m_ivec4[1] = 0; + m_range[0].m_ivec4[0] = m_range[0].m_ivec4[1] = + m_range[0].m_ivec4[2] = m_range[0].m_ivec4[3] = -(std::numeric_limits::max)(); + m_range[1].m_ivec4[0] = m_range[1].m_ivec4[1] = + m_range[1].m_ivec4[2] = m_range[1].m_ivec4[3] = (std::numeric_limits::max)(); + break; + case RGBA: + m_default.m_rgba[0] = m_default.m_rgba[1] = + m_default.m_rgba[2] = m_default.m_rgba[3] = 255; + break; + case RGB: + m_default.m_rgb[0] = m_default.m_rgb[1] = + m_default.m_rgb[2] = 255; + break; + } // Attempt loading range from file while (is.openChild(tagName)) { @@ -678,69 +673,71 @@ void ShaderInterface::Parameter::loadData(TIStream &is) case BOOL: { int val; is >> val, m_default.m_bool = val; + break; } - CASE FLOAT: - { - double val; - is >> val, m_default.m_float = val; - } - - CASE VEC2: - { - double val; - - is >> val, m_default.m_vec2[0] = val; - is >> val, m_default.m_vec2[1] = val; - } - - CASE VEC3: - { - double val; - - is >> val, m_default.m_vec3[0] = val; - is >> val, m_default.m_vec3[1] = val; - is >> val, m_default.m_vec3[2] = val; - } - - CASE VEC4: - { - double val; - - is >> val, m_default.m_vec4[0] = val; - is >> val, m_default.m_vec4[1] = val; - is >> val, m_default.m_vec4[2] = val; - is >> val, m_default.m_vec4[3] = val; - } + case FLOAT: { + double val; + is >> val, m_default.m_float = val; + break; + } - CASE INT : is >> m_default.m_int; + case VEC2: { + double val; + is >> val, m_default.m_vec2[0] = val; + is >> val, m_default.m_vec2[1] = val; + break; + } - CASE IVEC2 : is >> m_default.m_ivec2[0] >> m_default.m_ivec2[1]; + case VEC3: { + double val; + is >> val, m_default.m_vec3[0] = val; + is >> val, m_default.m_vec3[1] = val; + is >> val, m_default.m_vec3[2] = val; + break; + } - CASE IVEC3 : is >> m_default.m_ivec3[0] >> m_default.m_ivec3[1] >> m_default.m_ivec3[2]; + case VEC4: { + double val; + is >> val, m_default.m_vec4[0] = val; + is >> val, m_default.m_vec4[1] = val; + is >> val, m_default.m_vec4[2] = val; + is >> val, m_default.m_vec4[3] = val; + break; + } - CASE IVEC4 : is >> m_default.m_ivec4[0] >> m_default.m_ivec4[1] >> m_default.m_ivec4[2] >> m_default.m_ivec4[3]; + case INT: + is >> m_default.m_int; + break; - CASE RGBA: - { - int val; + case IVEC2: + is >> m_default.m_ivec2[0] >> m_default.m_ivec2[1]; + break; - is >> val, m_default.m_rgba[0] = val; - is >> val, m_default.m_rgba[1] = val; - is >> val, m_default.m_rgba[2] = val; - is >> val, m_default.m_rgba[3] = val; - } + case IVEC3: + is >> m_default.m_ivec3[0] >> m_default.m_ivec3[1] >> m_default.m_ivec3[2]; + break; - CASE RGB: - { - int val; + case IVEC4: + is >> m_default.m_ivec4[0] >> m_default.m_ivec4[1] >> m_default.m_ivec4[2] >> m_default.m_ivec4[3]; + break; - is >> val, m_default.m_rgb[0] = val; - is >> val, m_default.m_rgb[1] = val; - is >> val, m_default.m_rgb[2] = val; - } + case RGBA: { + int val; + is >> val, m_default.m_rgba[0] = val; + is >> val, m_default.m_rgba[1] = val; + is >> val, m_default.m_rgba[2] = val; + is >> val, m_default.m_rgba[3] = val; + break; + } - DEFAULT:; + case RGB: { + int val; + is >> val, m_default.m_rgb[0] = val; + is >> val, m_default.m_rgb[1] = val; + is >> val, m_default.m_rgb[2] = val; + break; + } } is.closeChild(); @@ -748,56 +745,65 @@ void ShaderInterface::Parameter::loadData(TIStream &is) switch (m_type) { case FLOAT: { double val; - is >> val, m_range[0].m_float = val; is >> val, m_range[1].m_float = val; + break; } - CASE VEC2: - { - double val; - - is >> val, m_range[0].m_vec2[0] = val; - is >> val, m_range[1].m_vec2[0] = val; - is >> val, m_range[0].m_vec2[1] = val; - is >> val, m_range[1].m_vec2[1] = val; - } - - CASE VEC3: - { - double val; - - is >> val, m_range[0].m_vec3[0] = val; - is >> val, m_range[1].m_vec3[0] = val; - is >> val, m_range[0].m_vec3[1] = val; - is >> val, m_range[1].m_vec3[1] = val; - is >> val, m_range[0].m_vec3[2] = val; - is >> val, m_range[1].m_vec3[2] = val; - } - - CASE VEC4: - { - double val; - - is >> val, m_range[0].m_vec4[0] = val; - is >> val, m_range[1].m_vec4[0] = val; - is >> val, m_range[0].m_vec4[1] = val; - is >> val, m_range[1].m_vec4[1] = val; - is >> val, m_range[0].m_vec4[2] = val; - is >> val, m_range[1].m_vec4[2] = val; - is >> val, m_range[0].m_vec4[3] = val; - is >> val, m_range[1].m_vec4[3] = val; - } - - CASE INT : is >> m_range[0].m_int >> m_range[1].m_int; - - CASE IVEC2 : is >> m_range[0].m_ivec2[0] >> m_range[1].m_ivec2[0] >> m_range[0].m_ivec2[1] >> m_range[1].m_ivec2[1]; + case VEC2: { + double val; + is >> val, m_range[0].m_vec2[0] = val; + is >> val, m_range[1].m_vec2[0] = val; + is >> val, m_range[0].m_vec2[1] = val; + is >> val, m_range[1].m_vec2[1] = val; + break; + } - CASE IVEC3 : is >> m_range[0].m_ivec3[0] >> m_range[1].m_ivec3[0] >> m_range[0].m_ivec3[1] >> m_range[1].m_ivec3[1] >> m_range[0].m_ivec3[2] >> m_range[1].m_ivec3[2]; + case VEC3: { + double val; + is >> val, m_range[0].m_vec3[0] = val; + is >> val, m_range[1].m_vec3[0] = val; + is >> val, m_range[0].m_vec3[1] = val; + is >> val, m_range[1].m_vec3[1] = val; + is >> val, m_range[0].m_vec3[2] = val; + is >> val, m_range[1].m_vec3[2] = val; + break; + } - CASE IVEC4 : is >> m_range[0].m_ivec4[0] >> m_range[1].m_ivec4[0] >> m_range[0].m_ivec4[1] >> m_range[1].m_ivec4[1] >> m_range[0].m_ivec4[2] >> m_range[1].m_ivec4[2] >> m_range[0].m_ivec4[3] >> m_range[1].m_ivec4[3]; + case VEC4: { + double val; + is >> val, m_range[0].m_vec4[0] = val; + is >> val, m_range[1].m_vec4[0] = val; + is >> val, m_range[0].m_vec4[1] = val; + is >> val, m_range[1].m_vec4[1] = val; + is >> val, m_range[0].m_vec4[2] = val; + is >> val, m_range[1].m_vec4[2] = val; + is >> val, m_range[0].m_vec4[3] = val; + is >> val, m_range[1].m_vec4[3] = val; + break; + } - DEFAULT:; + case INT: + is >> m_range[0].m_int >> m_range[1].m_int; + break; + + case IVEC2: + is >> m_range[0].m_ivec2[0] >> m_range[1].m_ivec2[0] + >> m_range[0].m_ivec2[1] >> m_range[1].m_ivec2[1]; + break; + + case IVEC3: + is >> m_range[0].m_ivec3[0] >> m_range[1].m_ivec3[0] + >> m_range[0].m_ivec3[1] >> m_range[1].m_ivec3[1] + >> m_range[0].m_ivec3[2] >> m_range[1].m_ivec3[2]; + break; + + case IVEC4: + is >> m_range[0].m_ivec4[0] >> m_range[1].m_ivec4[0] + >> m_range[0].m_ivec4[1] >> m_range[1].m_ivec4[1] + >> m_range[0].m_ivec4[2] >> m_range[1].m_ivec4[2] + >> m_range[0].m_ivec4[3] >> m_range[1].m_ivec4[3]; + break; } is.closeChild(); diff --git a/toonz/sources/stdfx/texturefx.cpp b/toonz/sources/stdfx/texturefx.cpp index 4eb34b7..75d4590 100644 --- a/toonz/sources/stdfx/texturefx.cpp +++ b/toonz/sources/stdfx/texturefx.cpp @@ -82,16 +82,6 @@ void TextureFx::doDryCompute(TRectD &rect, double frame, const TRenderSettings & PaletteFilterFxRenderData *PaletteFilterData = new PaletteFilterFxRenderData; insertIndexes(items, PaletteFilterData); PaletteFilterData->m_keep = (bool)(m_keep->getValue() == 1); - /*switch (m_type->getValue()) - { - case 0: - PaletteFilterData.m_type = PaletteFilterFxRenderData::eApplyToAll; - CASE 1: - PaletteFilterData.m_type = PaletteFilterFxRenderData::eApplyToInks; - CASE 2: - PaletteFilterData.m_type = PaletteFilterFxRenderData::eApplyToPaints; - DEFAULT : assert(false); - }*/ ri2.m_data.push_back(PaletteFilterData); ri2.m_userCachable = false; @@ -134,16 +124,6 @@ void TextureFx::doCompute(TTile &tile, double frame, const TRenderSettings &ri) PaletteFilterFxRenderData *PaletteFilterData = new PaletteFilterFxRenderData; PaletteFilterData->m_keep = !!(m_keep->getValue()); insertIndexes(items, PaletteFilterData); - /*switch (m_type->getValue()) - { - case 0: - PaletteFilterData.m_type = PaletteFilterFxRenderData::eApplyToAll; - CASE 1: - PaletteFilterData.m_type = PaletteFilterFxRenderData::eApplyToInks; - CASE 2: - PaletteFilterData.m_type = PaletteFilterFxRenderData::eApplyToPaints; - DEFAULT : assert(false); - }*/ ri2.m_data.push_back(PaletteFilterData); ri2.m_userCachable = false; @@ -196,24 +176,30 @@ void TextureFx::doCompute(TTile &tile, double frame, const TRenderSettings &ri) switch (m_mode->getValue()) { case SUBSTITUTE: myOver32(tile.getRaster(), textureTile.getRaster(), &substitute, v); - - CASE PATTERNTYPE : witheCard = TRaster32P(textureTile.getRaster()->getSize()); + break; + case PATTERNTYPE: + witheCard = TRaster32P(textureTile.getRaster()->getSize()); witheCard->fill(TPixel32::White); TRop::over(textureTile.getRaster(), witheCard, textureTile.getRaster()); myOver32(tile.getRaster(), textureTile.getRaster(), &pattern32, v); - - CASE ADD : myOver32(tile.getRaster(), textureTile.getRaster(), &textureAdd, v / 100.0); - - CASE SUBTRACT : myOver32(tile.getRaster(), textureTile.getRaster(), &textureSub, v / 100.0); - - CASE MULTIPLY : myOver32(tile.getRaster(), textureTile.getRaster(), &textureMult, v); - - CASE DARKEN : myOver32(tile.getRaster(), textureTile.getRaster(), &textureDarken, v); - - CASE LIGHTEN : myOver32(tile.getRaster(), textureTile.getRaster(), &textureLighten, v); - - DEFAULT: + break; + case ADD: + myOver32(tile.getRaster(), textureTile.getRaster(), &textureAdd, v / 100.0); + break; + case SUBTRACT: + myOver32(tile.getRaster(), textureTile.getRaster(), &textureSub, v / 100.0); + break; + case MULTIPLY: + myOver32(tile.getRaster(), textureTile.getRaster(), &textureMult, v); + break; + case DARKEN: + myOver32(tile.getRaster(), textureTile.getRaster(), &textureDarken, v); + break; + case LIGHTEN : myOver32(tile.getRaster(), textureTile.getRaster(), &textureLighten, v); + break; + default: assert(0); + break; } } else { TRaster64P witheCard; @@ -223,23 +209,29 @@ void TextureFx::doCompute(TTile &tile, double frame, const TRenderSettings &ri) switch (m_mode->getValue()) { case SUBSTITUTE: myOver64(tile.getRaster(), textureTile.getRaster(), &substitute, v); - - CASE PATTERNTYPE : witheCard = TRaster64P(textureTile.getRaster()->getSize()); + break; + case PATTERNTYPE: + witheCard = TRaster64P(textureTile.getRaster()->getSize()); witheCard->fill(TPixel64::White); TRop::over(textureTile.getRaster(), witheCard, textureTile.getRaster()); myOver64(tile.getRaster(), textureTile.getRaster(), &pattern64, v); - - CASE ADD : myOver64(tile.getRaster(), textureTile.getRaster(), &textureAdd, v / 100.0); - - CASE SUBTRACT : myOver64(tile.getRaster(), textureTile.getRaster(), &textureSub, v / 100.0); - - CASE MULTIPLY : myOver64(tile.getRaster(), textureTile.getRaster(), &textureMult, v); - - CASE DARKEN : myOver64(tile.getRaster(), textureTile.getRaster(), &textureDarken, v); - - CASE LIGHTEN : myOver64(tile.getRaster(), textureTile.getRaster(), &textureLighten, v); - - DEFAULT: + break; + case ADD: + myOver64(tile.getRaster(), textureTile.getRaster(), &textureAdd, v / 100.0); + break; + case SUBTRACT: + myOver64(tile.getRaster(), textureTile.getRaster(), &textureSub, v / 100.0); + break; + case MULTIPLY: + myOver64(tile.getRaster(), textureTile.getRaster(), &textureMult, v); + break; + case DARKEN: + myOver64(tile.getRaster(), textureTile.getRaster(), &textureDarken, v); + break; + case LIGHTEN: + myOver64(tile.getRaster(), textureTile.getRaster(), &textureLighten, v); + break; + default: assert(0); } } diff --git a/toonz/sources/tnzbase/trasterfx.cpp b/toonz/sources/tnzbase/trasterfx.cpp index 31f4294..74998a0 100644 --- a/toonz/sources/tnzbase/trasterfx.cpp +++ b/toonz/sources/tnzbase/trasterfx.cpp @@ -114,25 +114,24 @@ double norm2(const TAffine &aff) inline int getResampleFilterRadius(const TRenderSettings &info) { switch (info.m_quality) { - case TRenderSettings::StandardResampleQuality: - return 1; - CASE TRenderSettings::ImprovedResampleQuality : return 2; - CASE TRenderSettings::HighResampleQuality : return 3; - CASE TRenderSettings::Triangle_FilterResampleQuality : return 1; - CASE TRenderSettings::Mitchell_FilterResampleQuality : return 2; - CASE TRenderSettings::Cubic5_FilterResampleQuality : return 2; - CASE TRenderSettings::Cubic75_FilterResampleQuality : return 2; - CASE TRenderSettings::Cubic1_FilterResampleQuality : return 2; - CASE TRenderSettings::Hann2_FilterResampleQuality : return 2; - CASE TRenderSettings::Hann3_FilterResampleQuality : return 3; - CASE TRenderSettings::Hamming2_FilterResampleQuality : return 2; - CASE TRenderSettings::Hamming3_FilterResampleQuality : return 3; - CASE TRenderSettings::Lanczos2_FilterResampleQuality : return 2; - CASE TRenderSettings::Lanczos3_FilterResampleQuality : return 3; - CASE TRenderSettings::Gauss_FilterResampleQuality : return 2; - CASE TRenderSettings::ClosestPixel_FilterResampleQuality : return 1; - CASE TRenderSettings::Bilinear_FilterResampleQuality : return 1; - DEFAULT: + case TRenderSettings::StandardResampleQuality : return 1; + case TRenderSettings::ImprovedResampleQuality : return 2; + case TRenderSettings::HighResampleQuality : return 3; + case TRenderSettings::Triangle_FilterResampleQuality : return 1; + case TRenderSettings::Mitchell_FilterResampleQuality : return 2; + case TRenderSettings::Cubic5_FilterResampleQuality : return 2; + case TRenderSettings::Cubic75_FilterResampleQuality : return 2; + case TRenderSettings::Cubic1_FilterResampleQuality : return 2; + case TRenderSettings::Hann2_FilterResampleQuality : return 2; + case TRenderSettings::Hann3_FilterResampleQuality : return 3; + case TRenderSettings::Hamming2_FilterResampleQuality : return 2; + case TRenderSettings::Hamming3_FilterResampleQuality : return 3; + case TRenderSettings::Lanczos2_FilterResampleQuality : return 2; + case TRenderSettings::Lanczos3_FilterResampleQuality : return 3; + case TRenderSettings::Gauss_FilterResampleQuality : return 2; + case TRenderSettings::ClosestPixel_FilterResampleQuality : return 1; + case TRenderSettings::Bilinear_FilterResampleQuality : return 1; + default: assert(false); return -1; } @@ -996,23 +995,56 @@ TRasterP TRasterFx::applyAffine( switch (info.m_quality) { case TRenderSettings::StandardResampleQuality: qual = TRop::Triangle; - CASE TRenderSettings::ImprovedResampleQuality : qual = TRop::Hann2; - CASE TRenderSettings::HighResampleQuality : qual = TRop::Hamming3; - CASE TRenderSettings::Triangle_FilterResampleQuality : qual = TRop::Triangle; - CASE TRenderSettings::Mitchell_FilterResampleQuality : qual = TRop::Mitchell; - CASE TRenderSettings::Cubic5_FilterResampleQuality : qual = TRop::Cubic5; - CASE TRenderSettings::Cubic75_FilterResampleQuality : qual = TRop::Cubic75; - CASE TRenderSettings::Cubic1_FilterResampleQuality : qual = TRop::Cubic1; - CASE TRenderSettings::Hann2_FilterResampleQuality : qual = TRop::Hann2; - CASE TRenderSettings::Hann3_FilterResampleQuality : qual = TRop::Hann3; - CASE TRenderSettings::Hamming2_FilterResampleQuality : qual = TRop::Hamming2; - CASE TRenderSettings::Hamming3_FilterResampleQuality : qual = TRop::Hamming3; - CASE TRenderSettings::Lanczos2_FilterResampleQuality : qual = TRop::Lanczos2; - CASE TRenderSettings::Lanczos3_FilterResampleQuality : qual = TRop::Lanczos3; - CASE TRenderSettings::Gauss_FilterResampleQuality : qual = TRop::Gauss; - CASE TRenderSettings::ClosestPixel_FilterResampleQuality : qual = TRop::ClosestPixel; - CASE TRenderSettings::Bilinear_FilterResampleQuality : qual = TRop::Bilinear; - DEFAULT: + break; + case TRenderSettings::ImprovedResampleQuality: + qual = TRop::Hann2; + break; + case TRenderSettings::HighResampleQuality: + qual = TRop::Hamming3; + break; + case TRenderSettings::Triangle_FilterResampleQuality: + qual = TRop::Triangle; + break; + case TRenderSettings::Mitchell_FilterResampleQuality: + qual = TRop::Mitchell; + break; + case TRenderSettings::Cubic5_FilterResampleQuality: + qual = TRop::Cubic5; + break; + case TRenderSettings::Cubic75_FilterResampleQuality: + qual = TRop::Cubic75; + break; + case TRenderSettings::Cubic1_FilterResampleQuality: + qual = TRop::Cubic1; + break; + case TRenderSettings::Hann2_FilterResampleQuality: + qual = TRop::Hann2; + break; + case TRenderSettings::Hann3_FilterResampleQuality: + qual = TRop::Hann3; + break; + case TRenderSettings::Hamming2_FilterResampleQuality: + qual = TRop::Hamming2; + break; + case TRenderSettings::Hamming3_FilterResampleQuality: + qual = TRop::Hamming3; + break; + case TRenderSettings::Lanczos2_FilterResampleQuality: + qual = TRop::Lanczos2; + break; + case TRenderSettings::Lanczos3_FilterResampleQuality: + qual = TRop::Lanczos3; + break; + case TRenderSettings::Gauss_FilterResampleQuality: + qual = TRop::Gauss; + break; + case TRenderSettings::ClosestPixel_FilterResampleQuality: + qual = TRop::ClosestPixel; + break; + case TRenderSettings::Bilinear_FilterResampleQuality: + qual = TRop::Bilinear; + break; + default: assert(false); } diff --git a/toonz/sources/tnzbase/tscanner/tscannerutil.cpp b/toonz/sources/tnzbase/tscanner/tscannerutil.cpp index 9d5d3fc..9850808 100644 --- a/toonz/sources/tnzbase/tscanner/tscannerutil.cpp +++ b/toonz/sources/tnzbase/tscanner/tscannerutil.cpp @@ -223,39 +223,55 @@ void copy90BWBufferToRasGR8(unsigned char *bwBuffer, int bwLx, int bwLy, int bwW dvdy = 0; switch ((mirror << 2) + ninety) { - CASE(0 << 2) + 0 : u00 = u1; + case (0 << 2) + 0: + u00 = u1; v00 = v1; dudx = 1; dvdy = 1; - CASE(0 << 2) + 1 : u00 = u1; + break; + case (0 << 2) + 1: + u00 = u1; v00 = v1 + sv; dudy = 1; dvdx = -1; - CASE(0 << 2) + 2 : u00 = u1 + su; + break; + case (0 << 2) + 2: + u00 = u1 + su; v00 = v1 + sv; dudx = -1; dvdy = -1; - CASE(0 << 2) + 3 : u00 = u1 + su; + break; + case (0 << 2) + 3: + u00 = u1 + su; v00 = v1; dudy = -1; dvdx = 1; - CASE(1 << 2) + 0 : u00 = u1 + su; + break; + case (1 << 2) + 0: + u00 = u1 + su; v00 = v1; dudx = -1; dvdy = 1; - CASE(1 << 2) + 1 : u00 = u1 + su; + break; + case (1 << 2) + 1: + u00 = u1 + su; v00 = v1 + sv; dudy = -1; dvdx = -1; - CASE(1 << 2) + 2 : u00 = u1; + break; + case (1 << 2) + 2: + u00 = u1; v00 = v1 + sv; dudx = 1; dvdy = -1; - CASE(1 << 2) + 3 : u00 = u1; + break; + case (1 << 2) + 3: + u00 = u1; v00 = v1; dudy = 1; dvdx = 1; - DEFAULT: + break; + default: abort(); u00 = v00 = dudy = dvdx = 0; } diff --git a/toonz/sources/tnzext/meshbuilder.cpp b/toonz/sources/tnzext/meshbuilder.cpp index df1bdd0..35f32e5 100644 --- a/toonz/sources/tnzext/meshbuilder.cpp +++ b/toonz/sources/tnzext/meshbuilder.cpp @@ -135,30 +135,34 @@ TRasterGR8P thresholdRaster(const TRasterP &ras, const MeshBuilderOptions &opts) case 1: { TRasterGR8P rasGR8(ras); thresholdRasterGr(rasGR8, binaryRas, TPixelGR8::from(toPixel32(opts.m_transparentColor))); + break; } - CASE 2: - { - TRasterGR16P rasGR16(ras); - thresholdRasterGr(rasGR16, binaryRas, TPixelGR16::from(opts.m_transparentColor)); - } - - CASE 4: - { - TRaster32P ras32(ras); - thresholdRaster(ras32, binaryRas, toPixel32(opts.m_transparentColor)); - } - - CASE 8: - { - TRaster64P ras64(ras); - thresholdRaster(ras64, binaryRas, opts.m_transparentColor); - } - - DEFAULT: - assert(false); + case 2: + { + TRasterGR16P rasGR16(ras); + thresholdRasterGr(rasGR16, binaryRas, TPixelGR16::from(opts.m_transparentColor)); + break; + } + + case 4: + { + TRaster32P ras32(ras); + thresholdRaster(ras32, binaryRas, toPixel32(opts.m_transparentColor)); + break; + } + + case 8: + { + TRaster64P ras64(ras); + thresholdRaster(ras64, binaryRas, opts.m_transparentColor); + break; } + default: + assert(false); + } + // Build an enlarged ras to preserve borders. 5 pixels should be fine. TRasterGR8P result(ras->getLx(), ras->getLy()); TRop::blur(result, binaryRas, opts.m_margin, 0, 0); diff --git a/toonz/sources/tnztools/brushtool.cpp b/toonz/sources/tnztools/brushtool.cpp index 18cf889..2894375 100644 --- a/toonz/sources/tnztools/brushtool.cpp +++ b/toonz/sources/tnztools/brushtool.cpp @@ -1229,10 +1229,13 @@ void BrushTool::mouseMove(const TPointD &pos, const TMouseEvent &e) double add = (fabs(diff.x) > fabs(diff.y)) ? diff.x : diff.y; locals.addMinMax(TToonzImageP(getImage(false, 1)) ? m_rasThickness : m_thickness, add); + + break; } - DEFAULT: + default: m_brushPos = pos; + break; } m_mousePos = pos; diff --git a/toonz/sources/tnztools/edittoolgadgets.cpp b/toonz/sources/tnztools/edittoolgadgets.cpp index 8e6bc65..473b2b3 100644 --- a/toonz/sources/tnztools/edittoolgadgets.cpp +++ b/toonz/sources/tnztools/edittoolgadgets.cpp @@ -1110,75 +1110,88 @@ FxGadget *FxGadgetController::allocateGadget(const TParamUIConcept &uiConcept) TPointParamP center((uiConcept.m_params.size() >= 2) ? (TPointParamP)uiConcept.m_params[1] : TPointParamP()); gadget = new RadiusFxGadget(this, uiConcept.m_params[0], center); + + break; } - CASE TParamUIConcept::WIDTH: + case TParamUIConcept::WIDTH: { assert(uiConcept.m_params.size() >= 1 && uiConcept.m_params.size() <= 2); TDoubleParamP angle((uiConcept.m_params.size() >= 2) ? (TDoubleParamP)uiConcept.m_params[1] : TDoubleParamP()); gadget = new DistanceFxGadget(this, uiConcept.m_params[0], angle); + break; } - CASE TParamUIConcept::ANGLE: + case TParamUIConcept::ANGLE: { assert(uiConcept.m_params.size() == 1); gadget = new AngleFxGadget(this, uiConcept.m_params[0], TPointD()); + break; } - CASE TParamUIConcept::POINT: + case TParamUIConcept::POINT: { assert(uiConcept.m_params.size() == 1); gadget = new PointFxGadget(this, uiConcept.m_params[0]); + break; } - CASE TParamUIConcept::POINT_2: + case TParamUIConcept::POINT_2: { assert(uiConcept.m_params.size() == 2); gadget = new PointFxGadget(this, uiConcept.m_params[0], uiConcept.m_params[1]); + break; } - CASE TParamUIConcept::VECTOR: + case TParamUIConcept::VECTOR: { assert(uiConcept.m_params.size() == 2); gadget = new VectorFxGadget(this, uiConcept.m_params[0], uiConcept.m_params[1]); + break; } - CASE TParamUIConcept::POLAR: + case TParamUIConcept::POLAR: { assert(uiConcept.m_params.size() == 2); gadget = new PolarFxGadget(this, TPointD(), uiConcept.m_params[0], uiConcept.m_params[1]); + break; } - CASE TParamUIConcept::SIZE: + case TParamUIConcept::SIZE: { assert(uiConcept.m_params.size() >= 1 && uiConcept.m_params.size() <= 2); TDoubleParamP y((uiConcept.m_params.size() >= 2) ? (TDoubleParamP)uiConcept.m_params[1] : TDoubleParamP()); gadget = new SizeFxGadget(this, uiConcept.m_params[0], y); + break; } - CASE TParamUIConcept::QUAD: + case TParamUIConcept::QUAD: { assert(uiConcept.m_params.size() == 4); gadget = new QuadFxGadget(this, uiConcept.m_params[0], uiConcept.m_params[1], uiConcept.m_params[2], uiConcept.m_params[3]); + break; } - CASE TParamUIConcept::RECT: + case TParamUIConcept::RECT: { assert(uiConcept.m_params.size() >= 2 && uiConcept.m_params.size() <= 3); TPointParamP center((uiConcept.m_params.size() >= 3) ? (TPointParamP)uiConcept.m_params[2] : TPointParamP()); gadget = new RectFxGadget(this, uiConcept.m_params[0], uiConcept.m_params[1], center); + + break; } - CASE TParamUIConcept::DIAMOND: + case TParamUIConcept::DIAMOND: { assert(uiConcept.m_params.size() == 1); gadget = new DiamondFxGadget(this, uiConcept.m_params[0]); + break; } - }; + } if (gadget) gadget->setLabel(uiConcept.m_label); diff --git a/toonz/sources/tnztools/fullcolorbrushtool.cpp b/toonz/sources/tnztools/fullcolorbrushtool.cpp index 6ac1ae5..3da83b3 100644 --- a/toonz/sources/tnztools/fullcolorbrushtool.cpp +++ b/toonz/sources/tnztools/fullcolorbrushtool.cpp @@ -470,10 +470,13 @@ void FullColorBrushTool::mouseMove(const TPointD &pos, const TMouseEvent &e) double add = (fabs(diff.x) > fabs(diff.y)) ? diff.x : diff.y; locals.addMinMax(m_thickness, int(add)); + + break; } - DEFAULT: + default: m_brushPos = pos; + break; } m_mousePos = pos; diff --git a/toonz/sources/tnztools/fullcolorerasertool.cpp b/toonz/sources/tnztools/fullcolorerasertool.cpp index a079ecd..9e14fa6 100644 --- a/toonz/sources/tnztools/fullcolorerasertool.cpp +++ b/toonz/sources/tnztools/fullcolorerasertool.cpp @@ -900,10 +900,12 @@ void FullColorEraserTool::mouseMove(const TPointD &pos, const TMouseEvent &e) double add = (fabs(diff.x) > fabs(diff.y)) ? diff.x : diff.y; locals.addValue(m_size, add); + break; } - DEFAULT: + default: m_brushPos = pos; + break; } m_mousePos = pos; diff --git a/toonz/sources/tnztools/imagegrouping.cpp b/toonz/sources/tnztools/imagegrouping.cpp index 060c8bf..973b8cb 100644 --- a/toonz/sources/tnztools/imagegrouping.cpp +++ b/toonz/sources/tnztools/imagegrouping.cpp @@ -177,27 +177,25 @@ public: int refStroke; int moveBefore; switch (m_moveType) { - case TGroupCommand::FRONT: { + case TGroupCommand::FRONT: refStroke = m_moveBefore - m_count; moveBefore = m_refStroke; - } - CASE TGroupCommand::FORWARD: - { - refStroke = m_moveBefore - m_count; - moveBefore = m_refStroke; - } - CASE TGroupCommand::BACK: - { - refStroke = m_moveBefore; - moveBefore = m_refStroke + m_count; - } - CASE TGroupCommand::BACKWARD: - { - refStroke = m_moveBefore; - moveBefore = m_refStroke + m_count; - } - DEFAULT: + break; + case TGroupCommand::FORWARD: + refStroke = m_moveBefore - m_count; + moveBefore = m_refStroke; + break; + case TGroupCommand::BACK: + refStroke = m_moveBefore; + moveBefore = m_refStroke + m_count; + break; + case TGroupCommand::BACKWARD: + refStroke = m_moveBefore; + moveBefore = m_refStroke + m_count; + break; + default: assert(!"group move not defined!"); + break; } TVectorImageP image = m_level->getFrame(m_frameId, true); if (!image) @@ -680,22 +678,30 @@ int doMoveGroup(UCHAR moveType, TVectorImage *vimg, const std::vectorgetStrokeCount() && !vimg->canMoveStrokes(refStroke, count, moveBefore)) moveBefore++; if (moveBefore == vimg->getStrokeCount() + 1) return -1; - CASE TGroupCommand::BACK : moveBefore = 0; + break; + case TGroupCommand::BACK: + moveBefore = 0; while (moveBefore <= refStroke - 1 && !vimg->canMoveStrokes(refStroke, count, moveBefore)) moveBefore++; if (moveBefore == refStroke) return -1; - CASE TGroupCommand::BACKWARD : moveBefore = refStroke - 1; + break; + case TGroupCommand::BACKWARD: + moveBefore = refStroke - 1; while (moveBefore >= 0 && !vimg->canMoveStrokes(refStroke, count, moveBefore)) moveBefore--; if (moveBefore == -1) return -1; - DEFAULT: + break; + default: assert(false); } @@ -732,7 +738,8 @@ void TGroupCommand::moveGroup(UCHAR moveType) switch (moveType) { case TGroupCommand::FRONT: - __OR TGroupCommand::BACKWARD : i = 0; + case TGroupCommand::BACKWARD: + i = 0; if (moveType == TGroupCommand::BACKWARD && vimg->getStrokeIndex(selectedGroups[i].first) == 0) //tutti i gruppi adiacenti gia in fondo non possono essere backwardati { i++; @@ -742,7 +749,11 @@ void TGroupCommand::moveGroup(UCHAR moveType) } for (; i <= (int)selectedGroups.size() - 1; i++) doMoveGroup(moveType, vimg, selectedGroups, i); //vimg->getStrokeIndex(selectedGroups[i].first), selectedGroups[i].second); - CASE TGroupCommand::BACK : __OR TGroupCommand::FORWARD : i = selectedGroups.size() - 1; + break; + + case TGroupCommand::BACK: + case TGroupCommand::FORWARD: + i = selectedGroups.size() - 1; if (moveType == TGroupCommand::FORWARD && vimg->getStrokeIndex(selectedGroups[i].first) + selectedGroups[i].second - 1 == vimg->getStrokeCount() - 1) //tutti i gruppi adiacenti gia in cime non possono essere forwardati { i--; @@ -752,7 +763,9 @@ void TGroupCommand::moveGroup(UCHAR moveType) } for (; i >= 0; i--) doMoveGroup(moveType, vimg, selectedGroups, i); - DEFAULT: + break; + + default: assert(false); } diff --git a/toonz/sources/tnztools/levelselection.cpp b/toonz/sources/tnztools/levelselection.cpp index 628ba6f..e32c366 100644 --- a/toonz/sources/tnztools/levelselection.cpp +++ b/toonz/sources/tnztools/levelselection.cpp @@ -181,14 +181,18 @@ std::vector getSelectedStrokes(TVectorImage &vi, const LevelSelection &leve std::vector strokes; switch (levelSelection.filter()) { - case LevelSelection::EMPTY:; - - CASE LevelSelection::WHOLE : strokes.assign(boost::make_counting_iterator(0u), - boost::make_counting_iterator(vi.getStrokeCount())); - - CASE LevelSelection::SELECTED_STYLES : locals::selectStyles(vi, levelSelection.styles(), strokes); - - CASE LevelSelection::BOUNDARY_STROKES : getBoundaries(vi, strokes); + case LevelSelection::EMPTY: + break; + case LevelSelection::WHOLE: + strokes.assign(boost::make_counting_iterator(0u), + boost::make_counting_iterator(vi.getStrokeCount())); + break; + case LevelSelection::SELECTED_STYLES: + locals::selectStyles(vi, levelSelection.styles(), strokes); + break; + case LevelSelection::BOUNDARY_STROKES: + getBoundaries(vi, strokes); + break; } return strokes; diff --git a/toonz/sources/tnztools/plastictool.cpp b/toonz/sources/tnztools/plastictool.cpp index ea58842..da9f579 100644 --- a/toonz/sources/tnztools/plastictool.cpp +++ b/toonz/sources/tnztools/plastictool.cpp @@ -669,7 +669,9 @@ TTool::ToolType PlasticTool::getToolType() const case RIGIDITY_IDX: return TTool::LevelWriteTool; - CASE BUILD_IDX : case ANIMATE_IDX : return TTool::ColumnTool; + case BUILD_IDX: + case ANIMATE_IDX: + return TTool::ColumnTool; } assert(false); @@ -1346,12 +1348,16 @@ void PlasticTool::mouseMove(const TPointD &pos, const TMouseEvent &me) switch (m_mode.getIndex()) { case MESH_IDX: mouseMove_mesh(pos, me); - - CASE BUILD_IDX : mouseMove_build(pos, me); - - CASE RIGIDITY_IDX : mouseMove_rigidity(pos, me); - - CASE ANIMATE_IDX : mouseMove_animate(pos, me); + break; + case BUILD_IDX: + mouseMove_build(pos, me); + break; + case RIGIDITY_IDX: + mouseMove_rigidity(pos, me); + break; + case ANIMATE_IDX: + mouseMove_animate(pos, me); + break; } } @@ -1362,12 +1368,16 @@ void PlasticTool::leftButtonDown(const TPointD &pos, const TMouseEvent &me) switch (m_mode.getIndex()) { case MESH_IDX: leftButtonDown_mesh(pos, me); - - CASE BUILD_IDX : leftButtonDown_build(pos, me); - - CASE RIGIDITY_IDX : leftButtonDown_rigidity(pos, me); - - CASE ANIMATE_IDX : leftButtonDown_animate(pos, me); + break; + case BUILD_IDX: + leftButtonDown_build(pos, me); + break; + case RIGIDITY_IDX: + leftButtonDown_rigidity(pos, me); + break; + case ANIMATE_IDX: + leftButtonDown_animate(pos, me); + break; } } @@ -1381,12 +1391,16 @@ void PlasticTool::leftButtonDrag(const TPointD &pos, const TMouseEvent &me) switch (m_mode.getIndex()) { case MESH_IDX: leftButtonDrag_mesh(pos, me); - - CASE BUILD_IDX : leftButtonDrag_build(pos, me); - - CASE RIGIDITY_IDX : leftButtonDrag_rigidity(pos, me); - - CASE ANIMATE_IDX : leftButtonDrag_animate(pos, me); + break; + case BUILD_IDX: + leftButtonDrag_build(pos, me); + break; + case RIGIDITY_IDX: + leftButtonDrag_rigidity(pos, me); + break; + case ANIMATE_IDX: + leftButtonDrag_animate(pos, me); + break; } } @@ -1397,12 +1411,16 @@ void PlasticTool::leftButtonUp(const TPointD &pos, const TMouseEvent &me) switch (m_mode.getIndex()) { case MESH_IDX: leftButtonUp_mesh(pos, me); - - CASE BUILD_IDX : leftButtonUp_build(pos, me); - - CASE RIGIDITY_IDX : leftButtonUp_rigidity(pos, me); - - CASE ANIMATE_IDX : leftButtonUp_animate(pos, me); + break; + case BUILD_IDX: + leftButtonUp_build(pos, me); + break; + case RIGIDITY_IDX: + leftButtonUp_rigidity(pos, me); + break; + case ANIMATE_IDX: + leftButtonUp_animate(pos, me); + break; } m_pressedPos = TConsts::napd; @@ -1433,12 +1451,16 @@ void PlasticTool::addContextMenuItems(QMenu *menu) switch (m_mode.getIndex()) { case MESH_IDX: addContextMenuActions_mesh(menu); - - CASE BUILD_IDX : addContextMenuActions_build(menu); - - CASE RIGIDITY_IDX : addContextMenuActions_rigidity(menu); - - CASE ANIMATE_IDX : addContextMenuActions_animate(menu); + break; + case BUILD_IDX: + addContextMenuActions_build(menu); + break; + case RIGIDITY_IDX: + addContextMenuActions_rigidity(menu); + break; + case ANIMATE_IDX: + addContextMenuActions_animate(menu); + break; } // Add view actions @@ -1507,17 +1529,16 @@ bool PlasticTool::onPropertyChanged(std::string propertyName) case BUILD_IDX: case RIGIDITY_IDX: m_pvs.m_showOriginalColumn = xshColumn(); + break; + case ANIMATE_IDX: + m_pvs.m_showOriginalColumn = 0; - CASE ANIMATE_IDX: - { - m_pvs.m_showOriginalColumn = 0; + if (m_svSel.objects().size() > 1) + setSkeletonSelection(-1); - if (m_svSel.objects().size() > 1) - setSkeletonSelection(-1); - - storeDeformation(); // Rebuild deformed skeleton - } - }; + storeDeformation(); // Rebuild deformed skeleton + break; + } m_mode.notifyListeners(); // You thought that was automatic, eh? BTW, this means // we're requesting toolbars to update options visibility @@ -2060,12 +2081,16 @@ void PlasticTool::draw() switch (m_mode.getIndex()) { case MESH_IDX: draw_mesh(); - - CASE BUILD_IDX : draw_build(); - - CASE RIGIDITY_IDX : draw_rigidity(); - - CASE ANIMATE_IDX : draw_animate(); + break; + case BUILD_IDX: + draw_build(); + break; + case RIGIDITY_IDX: + draw_rigidity(); + break; + case ANIMATE_IDX: + draw_animate(); + break; }; glPopAttrib(); diff --git a/toonz/sources/tnztools/rastererasertool.cpp b/toonz/sources/tnztools/rastererasertool.cpp index 74b4f22..fc7ae1d 100644 --- a/toonz/sources/tnztools/rastererasertool.cpp +++ b/toonz/sources/tnztools/rastererasertool.cpp @@ -1418,10 +1418,12 @@ void EraserTool::mouseMove(const TPointD &pos, const TMouseEvent &e) double add = (fabs(diff.x) > fabs(diff.y)) ? diff.x : diff.y; locals.addValue(m_toolSize, add); + break; } - DEFAULT: + default: m_brushPos = pos; + break; } m_mousePos = pos; diff --git a/toonz/sources/tnztools/setsaveboxtool.cpp b/toonz/sources/tnztools/setsaveboxtool.cpp index 0b238eb..0a2cd44 100644 --- a/toonz/sources/tnztools/setsaveboxtool.cpp +++ b/toonz/sources/tnztools/setsaveboxtool.cpp @@ -147,11 +147,19 @@ int SetSaveboxTool::getCursorId(const TPointD &pos) switch (dragType) { case eMoveRect: return ToolCursor::MoveCursor; - CASE eMoveLeft : __OR eMoveRight : return ToolCursor::ScaleHCursor; - CASE eMoveDown : __OR eMoveUp : return ToolCursor::ScaleVCursor; - CASE eMoveLeft | eMoveUp : __OR eMoveRight | eMoveDown : return ToolCursor::ScaleInvCursor; - CASE eMoveLeft | eMoveDown : __OR eMoveRight | eMoveUp : return ToolCursor::ScaleCursor; - DEFAULT: + case eMoveLeft: + case eMoveRight: + return ToolCursor::ScaleHCursor; + case eMoveDown: + case eMoveUp: + return ToolCursor::ScaleVCursor; + case eMoveLeft | eMoveUp: + case eMoveRight | eMoveDown: + return ToolCursor::ScaleInvCursor; + case eMoveLeft | eMoveDown: + case eMoveRight | eMoveUp: + return ToolCursor::ScaleCursor; + default: return ToolCursor::StrokeSelectCursor; } return ToolCursor::StrokeSelectCursor; diff --git a/toonz/sources/tnztools/toolhandle.cpp b/toonz/sources/tnztools/toolhandle.cpp index 95b9c06..d815c74 100644 --- a/toonz/sources/tnztools/toolhandle.cpp +++ b/toonz/sources/tnztools/toolhandle.cpp @@ -134,12 +134,17 @@ void ToolHandle::onImageChanged(TImage::Type imageType) switch (imageType) { case TImage::RASTER: targetType = TTool::RasterImage; - - CASE TImage::TOONZ_RASTER : targetType = TTool::ToonzImage; - - CASE TImage::VECTOR : default : targetType = TTool::VectorImage; - - CASE TImage::MESH : targetType = TTool::MeshImage; + break; + case TImage::TOONZ_RASTER: + targetType = TTool::ToonzImage; + break; + case TImage::VECTOR: + default: + targetType = TTool::VectorImage; + break; + case TImage::MESH: + targetType = TTool::MeshImage; + break; } if (targetType != m_toolTargetType) { diff --git a/toonz/sources/tnztools/vectorerasertool.cpp b/toonz/sources/tnztools/vectorerasertool.cpp index 408b1e0..c12e0bd 100644 --- a/toonz/sources/tnztools/vectorerasertool.cpp +++ b/toonz/sources/tnztools/vectorerasertool.cpp @@ -1046,10 +1046,12 @@ void EraserTool::mouseMove(const TPointD &pos, const TMouseEvent &e) double add = (fabs(diff.x) > fabs(diff.y)) ? diff.x : diff.y; locals.addValue(m_toolSize, add); + break; } - DEFAULT: + default: m_brushPos = pos; + break; } m_oldMousePos = m_mousePos = pos; diff --git a/toonz/sources/tnztools/vectorselectiontool.cpp b/toonz/sources/tnztools/vectorselectiontool.cpp index 001d7c1..9ad9a6d 100644 --- a/toonz/sources/tnztools/vectorselectiontool.cpp +++ b/toonz/sources/tnztools/vectorselectiontool.cpp @@ -1333,10 +1333,19 @@ void VectorSelectionTool::updateSelectionTarget() case SAME_STYLE_TYPE_IDX: case BOUNDARY_TYPE_IDX: framesMode = LevelSelection::FRAMES_CURRENT; + break; - CASE ALL_LEVEL_TYPE_IDX : case STYLE_LEVEL_TYPE_IDX : case BOUNDARY_LEVEL_TYPE_IDX : framesMode = LevelSelection::FRAMES_ALL; + case ALL_LEVEL_TYPE_IDX: + case STYLE_LEVEL_TYPE_IDX: + case BOUNDARY_LEVEL_TYPE_IDX: + framesMode = LevelSelection::FRAMES_ALL; + break; - CASE SELECTED_FRAMES_TYPE_IDX : case STYLE_SELECTED_FRAMES_TYPE_IDX : case BOUNDARY_SELECTED_FRAMES_TYPE_IDX : framesMode = LevelSelection::FRAMES_SELECTED; + case SELECTED_FRAMES_TYPE_IDX: + case STYLE_SELECTED_FRAMES_TYPE_IDX: + case BOUNDARY_SELECTED_FRAMES_TYPE_IDX: + framesMode = LevelSelection::FRAMES_SELECTED; + break; } if (framesMode != m_levelSelection.framesMode()) @@ -1348,18 +1357,23 @@ void VectorSelectionTool::updateSelectionTarget() LevelSelection::Filter filter; switch (m_selectionTarget.getIndex()) { case SELECTED_FRAMES_TYPE_IDX: - case ALL_LEVEL_TYPE_IDX: { + case ALL_LEVEL_TYPE_IDX: filter = LevelSelection::WHOLE; selectedStyles().clear(); - } + break; - CASE SAME_STYLE_TYPE_IDX : case STYLE_SELECTED_FRAMES_TYPE_IDX : case STYLE_LEVEL_TYPE_IDX : filter = LevelSelection::SELECTED_STYLES; + case SAME_STYLE_TYPE_IDX: + case STYLE_SELECTED_FRAMES_TYPE_IDX: + case STYLE_LEVEL_TYPE_IDX: + filter = LevelSelection::SELECTED_STYLES; + break; - CASE BOUNDARY_TYPE_IDX : case BOUNDARY_SELECTED_FRAMES_TYPE_IDX : case BOUNDARY_LEVEL_TYPE_IDX: - { - filter = LevelSelection::BOUNDARY_STROKES; - selectedStyles().clear(); - } + case BOUNDARY_TYPE_IDX: + case BOUNDARY_SELECTED_FRAMES_TYPE_IDX: + case BOUNDARY_LEVEL_TYPE_IDX: + filter = LevelSelection::BOUNDARY_STROKES; + selectedStyles().clear(); + break; } if (filter != m_levelSelection.filter()) diff --git a/toonz/sources/tnztools/vectortapetool.cpp b/toonz/sources/tnztools/vectortapetool.cpp index ce4da6e..95fbc8f 100644 --- a/toonz/sources/tnztools/vectortapetool.cpp +++ b/toonz/sources/tnztools/vectortapetool.cpp @@ -662,10 +662,16 @@ public: switch (type) { case p2p: joinPointToPoint(vi, fillInformation); - CASE p2l : joinPointToLine(vi, fillInformation); - CASE l2l : joinLineToLine(vi, fillInformation); - DEFAULT: + break; + case p2l: + joinPointToLine(vi, fillInformation); + break; + case l2l: + joinLineToLine(vi, fillInformation); + break; + default: assert(false); + break; } return type; } diff --git a/toonz/sources/toonz/adjustthicknesspopup.cpp b/toonz/sources/toonz/adjustthicknesspopup.cpp index 8795dcf..e7a4f2f 100644 --- a/toonz/sources/toonz/adjustthicknesspopup.cpp +++ b/toonz/sources/toonz/adjustthicknesspopup.cpp @@ -341,27 +341,25 @@ AdjustThicknessPopup::SelectionData::SelectionData(const TSelection *sel) } switch (m_this->m_framesType) { - case ALL_FRAMES: { + case ALL_FRAMES: if (m_this->m_sl->getFrameCount() <= 0) *m_this = SelectionData(); - } - - CASE SELECTED_FRAMES: - { - // Since fid2index may return negative indexes, cut them out - m_this->m_frameIdxs.erase(m_this->m_frameIdxs.begin(), m_this->m_frameIdxs.lower_bound(0)); + break; + case SELECTED_FRAMES: + // Since fid2index may return negative indexes, cut them out + m_this->m_frameIdxs.erase(m_this->m_frameIdxs.begin(), m_this->m_frameIdxs.lower_bound(0)); - // Also cut indexes greater than m_sl's frames count - m_this->m_frameIdxs.erase(m_this->m_frameIdxs.lower_bound(m_this->m_sl->getFrameCount()), - m_this->m_frameIdxs.end()); + // Also cut indexes greater than m_sl's frames count + m_this->m_frameIdxs.erase(m_this->m_frameIdxs.lower_bound(m_this->m_sl->getFrameCount()), + m_this->m_frameIdxs.end()); - // Reset to empty in case no frame was selected - if (m_this->m_frameIdxs.empty()) - *m_this = SelectionData(); + // Reset to empty in case no frame was selected + if (m_this->m_frameIdxs.empty()) + *m_this = SelectionData(); - // NOTE: This may notably happen whenever non-empty level cells refer to frames - // not present in the level. - } + // NOTE: This may notably happen whenever non-empty level cells refer to frames + // not present in the level. + break; } } @@ -485,38 +483,41 @@ AdjustThicknessPopup::SelectionData::SelectionData(const TSelection *sel) switch (selection.filter()) { case LevelSelection::WHOLE: m_this->m_contentType = IMAGE; + break; - CASE LevelSelection::SELECTED_STYLES: - { - m_this->m_contentType = STYLES; - m_this->m_idxs = std::vector( - selection.styles().begin(), selection.styles().end()); + case LevelSelection::SELECTED_STYLES: + m_this->m_contentType = STYLES; + m_this->m_idxs = std::vector( + selection.styles().begin(), selection.styles().end()); - // Reset to empty in case no style was selected - if (m_this->m_idxs.empty()) { - *m_this = SelectionData(); - return; - } + // Reset to empty in case no style was selected + if (m_this->m_idxs.empty()) { + *m_this = SelectionData(); + return; } - CASE LevelSelection::BOUNDARY_STROKES : m_this->m_contentType = BOUNDARIES; + break; + case LevelSelection::BOUNDARY_STROKES: + m_this->m_contentType = BOUNDARIES; + break; } // Discriminate frames selection modes switch (selection.framesMode()) { case LevelSelection::FRAMES_ALL: m_this->m_framesType = ALL_FRAMES; + break; - CASE LevelSelection::FRAMES_SELECTED: - { - m_this->m_framesType = SELECTED_FRAMES; + case LevelSelection::FRAMES_SELECTED: { + m_this->m_framesType = SELECTED_FRAMES; - const std::set &fids = TTool::getSelectedFrames(); + const std::set &fids = TTool::getSelectedFrames(); - m_this->m_frameIdxs = std::set( - tcg::make_cast_it(fids.begin(), tcg::bind1st(Fid2Index(), *m_this->m_sl)), - tcg::make_cast_it(fids.end(), tcg::bind1st(Fid2Index(), *m_this->m_sl))); - } + m_this->m_frameIdxs = std::set( + tcg::make_cast_it(fids.begin(), tcg::bind1st(Fid2Index(), *m_this->m_sl)), + tcg::make_cast_it(fids.end(), tcg::bind1st(Fid2Index(), *m_this->m_sl))); + break; + } } resetIfInvalid(); @@ -565,20 +566,19 @@ void AdjustThicknessPopup::SelectionData::getRange(int &startIdx, int &endIdx) c return; switch (m_framesType) { - case ALL_FRAMES: { + case ALL_FRAMES: assert(m_sl); startIdx = 0; endIdx = m_sl->getFrameCount() - 1; - } + break; - CASE SELECTED_FRAMES: - { - assert(!m_frameIdxs.empty()); + case SELECTED_FRAMES: + assert(!m_frameIdxs.empty()); - startIdx = *m_frameIdxs.begin(); - endIdx = *--m_frameIdxs.end(); - } + startIdx = *m_frameIdxs.begin(); + endIdx = *--m_frameIdxs.end(); + break; } } @@ -626,44 +626,43 @@ TVectorImageP processFrame( // Perform the operation preview switch (selData.m_contentType) { - CASE SelectionData::IMAGE: - { - double transform[2]; - locals::makeTransform(transform, fromTransform, toTransform, - startIdx, endIdx, slFrameIndex); + case SelectionData::IMAGE: { + double transform[2]; + locals::makeTransform(transform, fromTransform, toTransform, + startIdx, endIdx, slFrameIndex); - ::transformThickness_image(viOut, transform); - } + ::transformThickness_image(viOut, transform); + break; + } - CASE SelectionData::STYLES: - { - double transform[2]; - locals::makeTransform(transform, fromTransform, toTransform, - startIdx, endIdx, slFrameIndex); + case SelectionData::STYLES: { + double transform[2]; + locals::makeTransform(transform, fromTransform, toTransform, + startIdx, endIdx, slFrameIndex); - ::transformThickness_styles(viOut, transform, - &selData.m_idxs.front(), selData.m_idxs.size()); - } + ::transformThickness_styles(viOut, transform, + selData.m_idxs.data(), selData.m_idxs.size()); + break; + } - CASE SelectionData::BOUNDARIES: - { - double transform[2]; - locals::makeTransform(transform, fromTransform, toTransform, - startIdx, endIdx, slFrameIndex); + case SelectionData::BOUNDARIES: { + double transform[2]; + locals::makeTransform(transform, fromTransform, toTransform, + startIdx, endIdx, slFrameIndex); - std::vector strokes = getBoundaryStrokes(*viOut); + std::vector strokes = getBoundaryStrokes(*viOut); - ::transformThickness_strokes(viOut, transform, - &strokes.front(), strokes.size()); - } + ::transformThickness_strokes(viOut, transform, + strokes.data(), strokes.size()); + break; + } - CASE SelectionData::STROKES: - { - ::transformThickness_strokes(viOut, fromTransform, - &selData.m_idxs.front(), selData.m_idxs.size()); - } + case SelectionData::STROKES: + ::transformThickness_strokes(viOut, fromTransform, + selData.m_idxs.data(), selData.m_idxs.size()); + break; - DEFAULT: + default: assert(false); } @@ -941,31 +940,29 @@ void AdjustThicknessPopup::getTransformParameters( CONSTANT }; switch (m_thicknessMode->currentIndex()) { - case SCALE: { + case SCALE: fromTransform[0] = 0.0; fromTransform[1] = m_fromScale->getValue(); toTransform[0] = 0.0; toTransform[1] = m_toScale->getValue(); - } + break; - CASE ADD: - { - fromTransform[0] = m_fromDisplacement->getValue() * Stage::inch; - fromTransform[1] = 1.0; + case ADD: + fromTransform[0] = m_fromDisplacement->getValue() * Stage::inch; + fromTransform[1] = 1.0; - toTransform[0] = m_toDisplacement->getValue() * Stage::inch; - toTransform[1] = 1.0; - } + toTransform[0] = m_toDisplacement->getValue() * Stage::inch; + toTransform[1] = 1.0; + break; - CASE CONSTANT: - { - fromTransform[0] = m_fromDisplacement->getValue() * Stage::inch; - fromTransform[1] = 0.0; + case CONSTANT: + fromTransform[0] = m_fromDisplacement->getValue() * Stage::inch; + fromTransform[1] = 0.0; - toTransform[0] = m_toDisplacement->getValue() * Stage::inch; - toTransform[1] = 0.0; - } + toTransform[0] = m_toDisplacement->getValue() * Stage::inch; + toTransform[1] = 0.0; + break; } } @@ -1082,18 +1079,16 @@ void AdjustThicknessUndo::redo() const // Iterate selected frames switch (m_selData.m_framesType) { - case SelectionData::ALL_FRAMES: { + case SelectionData::ALL_FRAMES: std::for_each(boost::make_counting_iterator(0), boost::make_counting_iterator(m_selData.m_sl->getFrameCount()), tcg::bind1st(&locals::processFrame, *this)); - } - - CASE SelectionData::SELECTED_FRAMES: - { - std::for_each(m_selData.m_frameIdxs.begin(), - m_selData.m_frameIdxs.end(), - tcg::bind1st(&locals::processFrame, *this)); - } + break; + case SelectionData::SELECTED_FRAMES: + std::for_each(m_selData.m_frameIdxs.begin(), + m_selData.m_frameIdxs.end(), + tcg::bind1st(&locals::processFrame, *this)); + break; } } diff --git a/toonz/sources/toonz/cellselectioncommand.cpp b/toonz/sources/toonz/cellselectioncommand.cpp index 21b5642..9e29ee6 100644 --- a/toonz/sources/toonz/cellselectioncommand.cpp +++ b/toonz/sources/toonz/cellselectioncommand.cpp @@ -1414,18 +1414,21 @@ bool CloneLevelUndo::chooseOverwrite( default: return false; - case OverwriteDialog::KEEP_OLD: { + case OverwriteDialog::KEEP_OLD: // Load the level at the preferred clone path if (!xl) xl = scene->loadLevel(dstPath); // Hard load - from disk assert(xl); dstSl = xl->getSimpleLevel(); - } + break; - CASE OverwriteDialog::OVERWRITE : assert(!xl); + case OverwriteDialog::OVERWRITE: + assert(!xl); + break; - CASE OverwriteDialog::RENAME:; + case OverwriteDialog::RENAME: + break; } return true; diff --git a/toonz/sources/toonz/cleanuppopup.cpp b/toonz/sources/toonz/cleanuppopup.cpp index 59e14d5..eb75367 100644 --- a/toonz/sources/toonz/cleanuppopup.cpp +++ b/toonz/sources/toonz/cleanuppopup.cpp @@ -1454,7 +1454,7 @@ QString CleanupPopup::OverwriteDialog::acceptResolution( QString error; switch (resolution) { - case NO_RESOLUTION: { + case NO_RESOLUTION: // fp was already found to be invalid assert(::exists(fp)); error = locals::existsStr(fp); @@ -1464,23 +1464,23 @@ QString CleanupPopup::OverwriteDialog::acceptResolution( assert(!m_suffixText.isEmpty()); m_suffix->setText(m_suffixText); } - } + break; - CASE ADD_SUFFIX: - { - // Save resolution options if necessary - if (applyToAll) - m_suffixText = m_suffix->text(); - - // Test produced file path - const TFilePath &fp_suf = fp.withName( - fp.getWideName() + m_suffix->text().toStdWString()); - - if (::exists(fp_suf)) - error = locals::existsStr(fp_suf); - else - fp = fp_suf; - } + case ADD_SUFFIX: + // Save resolution options if necessary + if (applyToAll) + m_suffixText = m_suffix->text(); + + // Test produced file path + const TFilePath &fp_suf = fp.withName( + fp.getWideName() + m_suffix->text().toStdWString()); + + if (::exists(fp_suf)) + error = locals::existsStr(fp_suf); + else + fp = fp_suf; + + break; } return error; diff --git a/toonz/sources/toonz/cleanuppreview.cpp b/toonz/sources/toonz/cleanuppreview.cpp index 5769735..3139d6b 100644 --- a/toonz/sources/toonz/cleanuppreview.cpp +++ b/toonz/sources/toonz/cleanuppreview.cpp @@ -850,7 +850,7 @@ void CameraTestTool::leftButtonUp(const TPointD &pos, const TMouseEvent &) int CameraTestTool::getCursorId() const { switch (m_scaling) { - CASE eNoScale: + case eNoScale: { CleanupParameters *cp = CleanupSettingsModel::instance()->getCurrentParameters(); if (cp->m_offx_lock && cp->m_offy_lock) @@ -862,11 +862,11 @@ int CameraTestTool::getCursorId() const else return ToolCursor::MoveCursor; } - CASE e11 : __OR e00 : return ToolCursor::ScaleCursor; - CASE e10 : __OR e01 : return ToolCursor::ScaleInvCursor; - CASE e1M : __OR e0M : return ToolCursor::ScaleHCursor; - CASE eM1 : __OR eM0 : return ToolCursor::ScaleVCursor; - DEFAULT: + case e11 : case e00 : return ToolCursor::ScaleCursor; + case e10 : case e01 : return ToolCursor::ScaleInvCursor; + case e1M : case e0M : return ToolCursor::ScaleHCursor; + case eM1 : case eM0 : return ToolCursor::ScaleVCursor; + default: assert(false); return 0; } diff --git a/toonz/sources/toonz/exportlevelcommand.cpp b/toonz/sources/toonz/exportlevelcommand.cpp index 841c4ee..3924baa 100644 --- a/toonz/sources/toonz/exportlevelcommand.cpp +++ b/toonz/sources/toonz/exportlevelcommand.cpp @@ -371,27 +371,27 @@ TImageP ImageExporter::exportedImage(const TFrameId &fid, TXshLevelType outImgTy switch (m_sl.getType()) { case OVL_XSHLEVEL: img = exportedImage(TRasterImageP(img)); - - CASE TZP_XSHLEVEL : img = exportedImage(TToonzImageP(img)); - - CASE PLI_XSHLEVEL: - { - TVectorImageP vi(img); - - // Apply temporary thickness modification - int fCount = m_sl.getFrameCount(); - double param = (fCount == 1) ? 0.0 : m_sl.fid2index(fid) / double(fCount - 1); - - VectorThicknessTransformer transformer( - vi, m_opts.m_thicknessTransform, param); - - img = (outImgType == TZP_TYPE) ? TImageP(exportedToonzImage(vi)) : TImageP(exportedRasterImage(vi)); - } - - DEFAULT : { + break; + case TZP_XSHLEVEL: + img = exportedImage(TToonzImageP(img)); + break; + case PLI_XSHLEVEL: { + TVectorImageP vi(img); + + // Apply temporary thickness modification + int fCount = m_sl.getFrameCount(); + double param = (fCount == 1) ? 0.0 : m_sl.fid2index(fid) / double(fCount - 1); + + VectorThicknessTransformer transformer( + vi, m_opts.m_thicknessTransform, param); + + img = (outImgType == TZP_TYPE) ? TImageP(exportedToonzImage(vi)) : TImageP(exportedRasterImage(vi)); + break; + } + default: assert(!"Wrong level type"); img = TImageP(); - } + break; } return img; diff --git a/toonz/sources/toonz/exportlevelpopup.cpp b/toonz/sources/toonz/exportlevelpopup.cpp index 2bee62f..44391ce 100644 --- a/toonz/sources/toonz/exportlevelpopup.cpp +++ b/toonz/sources/toonz/exportlevelpopup.cpp @@ -895,29 +895,25 @@ IoCmd::ExportLevelOptions ExportLevelPopup::ExportOptions::getOptions() const opts.m_camera.setRes(TDimension(m_hResFld->getValue(), m_vResFld->getValue())); switch (m_thicknessTransformMode->currentIndex()) { - enum { SCALE, - ADD, - CONSTANT }; + enum { SCALE, ADD, CONSTANT }; - case SCALE: { + case SCALE: opts.m_thicknessTransform[0][0] = opts.m_thicknessTransform[1][0] = 0.0; opts.m_thicknessTransform[0][1] = m_fromThicknessScale->getValue(); opts.m_thicknessTransform[1][1] = m_toThicknessScale->getValue(); - } - - CASE ADD: - { - opts.m_thicknessTransform[0][1] = opts.m_thicknessTransform[1][1] = 1.0; - opts.m_thicknessTransform[0][0] = m_fromThicknessDisplacement->getValue() * Stage::inch; - opts.m_thicknessTransform[1][0] = m_toThicknessDisplacement->getValue() * Stage::inch; - } - - CASE CONSTANT: - { - opts.m_thicknessTransform[0][1] = opts.m_thicknessTransform[1][1] = 0.0; - opts.m_thicknessTransform[0][0] = m_fromThicknessDisplacement->getValue() * Stage::inch; - opts.m_thicknessTransform[1][0] = m_toThicknessDisplacement->getValue() * Stage::inch; - } + break; + + case ADD: + opts.m_thicknessTransform[0][1] = opts.m_thicknessTransform[1][1] = 1.0; + opts.m_thicknessTransform[0][0] = m_fromThicknessDisplacement->getValue() * Stage::inch; + opts.m_thicknessTransform[1][0] = m_toThicknessDisplacement->getValue() * Stage::inch; + break; + + case CONSTANT: + opts.m_thicknessTransform[0][1] = opts.m_thicknessTransform[1][1] = 0.0; + opts.m_thicknessTransform[0][0] = m_fromThicknessDisplacement->getValue() * Stage::inch; + opts.m_thicknessTransform[1][0] = m_toThicknessDisplacement->getValue() * Stage::inch; + break; } return opts; diff --git a/toonz/sources/toonz/filmstrip.cpp b/toonz/sources/toonz/filmstrip.cpp index ce9e069..bcb84b2 100644 --- a/toonz/sources/toonz/filmstrip.cpp +++ b/toonz/sources/toonz/filmstrip.cpp @@ -226,7 +226,7 @@ void FilmstripFrames::select(int index, SelectionMode mode) if (!outOfRange) m_selection->select(fid); break; - case SIMPLE_SELECT: { + case SIMPLE_SELECT: // Bail out if fid is already selected if (!outOfRange && m_selection->isSelected(fid)) return; @@ -234,90 +234,87 @@ void FilmstripFrames::select(int index, SelectionMode mode) m_selection->selectNone(); if (!outOfRange) m_selection->select(fid); - } + break; - CASE SHIFT_SELECT: - { - if (outOfRange) - return; + case SHIFT_SELECT: + if (outOfRange) + return; - // Bail out if fid is already selected - if (m_selection->isSelected(fid)) + // Bail out if fid is already selected + if (m_selection->isSelected(fid)) + return; + + if (m_selection->isEmpty()) + m_selection->select(fid); + else { + TXshSimpleLevel *sl = getLevel(); + if (!sl) return; - if (m_selection->isEmpty()) - m_selection->select(fid); - else { - TXshSimpleLevel *sl = getLevel(); - if (!sl) - return; - - // seleziono il range da fid al piu' vicino frame selezionato (in entrambe le direzioni) - int frameCount = sl->getFrameCount(); - - // calcolo il limite inferiore della selezione - int ia = index; - while (ia > 0 && !m_selection->isSelected(sl->index2fid(ia - 1))) - ia--; - if (ia == 0) - ia = index; - - // calcolo il limite superiore della selezione - int ib = index; - while (ib < frameCount - 1 && !m_selection->isSelected(sl->index2fid(ib + 1))) - ib++; - if (ib == frameCount - 1) - ib = index; - - // seleziono - for (int i = ia; i <= ib; i++) - m_selection->select(sl->index2fid(i)); - } - } + // seleziono il range da fid al piu' vicino frame selezionato (in entrambe le direzioni) + int frameCount = sl->getFrameCount(); - CASE CTRL_SELECT: - { - if (outOfRange) - return; + // calcolo il limite inferiore della selezione + int ia = index; + while (ia > 0 && !m_selection->isSelected(sl->index2fid(ia - 1))) + ia--; + if (ia == 0) + ia = index; - m_selection->select(fid, !m_selection->isSelected(fid)); + // calcolo il limite superiore della selezione + int ib = index; + while (ib < frameCount - 1 && !m_selection->isSelected(sl->index2fid(ib + 1))) + ib++; + if (ib == frameCount - 1) + ib = index; + + // seleziono + for (int i = ia; i <= ib; i++) + m_selection->select(sl->index2fid(i)); } + break; - CASE START_DRAG_SELECT: - { - m_selection->selectNone(); + case CTRL_SELECT: + if (outOfRange) + return; - if (outOfRange) { - m_dragSelectionStartIndex = - m_dragSelectionEndIndex = -1; + m_selection->select(fid, !m_selection->isSelected(fid)); + break; - break; - } + case START_DRAG_SELECT: + m_selection->selectNone(); - m_selection->select(fid); - m_dragSelectionStartIndex = index; + if (outOfRange) { + m_dragSelectionStartIndex = + m_dragSelectionEndIndex = -1; + + break; } - CASE DRAG_SELECT: - { - if (outOfRange || - m_dragSelectionStartIndex < 0 || - m_dragSelectionEndIndex == index) - return; + m_selection->select(fid); + m_dragSelectionStartIndex = index; + break; - m_dragSelectionEndIndex = index; + case DRAG_SELECT: + if (outOfRange || + m_dragSelectionStartIndex < 0 || + m_dragSelectionEndIndex == index) + return; - m_selection->selectNone(); + m_dragSelectionEndIndex = index; - int ia = m_dragSelectionStartIndex; - int ib = index; + m_selection->selectNone(); - if (ia > ib) - std::swap(ia, ib); + int ia = m_dragSelectionStartIndex; + int ib = index; - for (int i = ia; i <= ib; ++i) - m_selection->select(index2fid(i)); - } + if (ia > ib) + std::swap(ia, ib); + + for (int i = ia; i <= ib; ++i) + m_selection->select(index2fid(i)); + + break; } TObjectHandle *objectHandle = TApp::instance()->getCurrentObject(); diff --git a/toonz/sources/toonz/flipbook.cpp b/toonz/sources/toonz/flipbook.cpp index e379650..566784f 100644 --- a/toonz/sources/toonz/flipbook.cpp +++ b/toonz/sources/toonz/flipbook.cpp @@ -750,9 +750,13 @@ void FlipBook::onButtonPressed(FlipConsole::EGadget button) switch (button) { case FlipConsole::eSound: m_playSound = !m_playSound; - CASE FlipConsole::eHisto : m_imageViewer->showHistogram(); - CASE FlipConsole::eSaveImg: - { + break; + + case FlipConsole::eHisto: + m_imageViewer->showHistogram(); + break; + + case FlipConsole::eSaveImg: { TRect loadbox = m_loadbox; m_loadbox = TRect(); TImageP img = getCurrentImage(m_flipConsole->getCurrentFrame()); @@ -772,15 +776,20 @@ void FlipBook::onButtonPressed(FlipConsole::EGadget button) else clonedImg = TToonzImageP(ti->getRaster()->clone(), ti->getSavebox()); TImageCache::instance()->add(QString("TnzCompareImg"), clonedImg); + break; } - CASE FlipConsole::eCompare : if ((TVectorImageP)getCurrentImage(m_flipConsole->getCurrentFrame())) - { + + case FlipConsole::eCompare: + if ((TVectorImageP)getCurrentImage(m_flipConsole->getCurrentFrame())) { DVGui::warning(tr("It is not possible to take or compare snapshots for Toonz vector levels.")); m_flipConsole->setChecked(FlipConsole::eCompare, false); return; } - CASE FlipConsole::eSave : saveImages(); - DEFAULT:; + break; + + case FlipConsole::eSave: + saveImages(); + break; } } diff --git a/toonz/sources/toonz/imageviewer.cpp b/toonz/sources/toonz/imageviewer.cpp index cde3e29..280e1e3 100644 --- a/toonz/sources/toonz/imageviewer.cpp +++ b/toonz/sources/toonz/imageviewer.cpp @@ -676,12 +676,26 @@ void ImageViewer::updateCursor(const TPoint &curPos) switch (dragType) { case eMoveRect: setCursor(Qt::SizeAllCursor); - CASE eMoveLeft : __OR eMoveRight : setCursor(Qt::SizeHorCursor); - CASE eMoveDown : __OR eMoveUp : setCursor(Qt::SizeVerCursor); - CASE eMoveLeft | eMoveUp : __OR eMoveRight | eMoveDown : setCursor(Qt::SizeBDiagCursor); - CASE eMoveLeft | eMoveDown : __OR eMoveRight | eMoveUp : setCursor(Qt::SizeFDiagCursor); - DEFAULT: + break; + case eMoveLeft: + case eMoveRight: + setCursor(Qt::SizeHorCursor); + break; + case eMoveDown: + case eMoveUp: + setCursor(Qt::SizeVerCursor); + break; + case eMoveLeft | eMoveUp: + case eMoveRight | eMoveDown: + setCursor(Qt::SizeBDiagCursor); + break; + case eMoveLeft | eMoveDown: + case eMoveRight | eMoveUp: + setCursor(Qt::SizeFDiagCursor); + break; + default: setCursor(Qt::ArrowCursor); + break; } } diff --git a/toonz/sources/toonz/levelsettingspopup.cpp b/toonz/sources/toonz/levelsettingspopup.cpp index ea17b2d..ad96649 100644 --- a/toonz/sources/toonz/levelsettingspopup.cpp +++ b/toonz/sources/toonz/levelsettingspopup.cpp @@ -475,17 +475,22 @@ void LevelSettingsPopup::updateLevelSettings() switch (m_sl->getType()) { case TZI_XSHLEVEL: levelTypeString = "Scan level"; - - CASE PLI_XSHLEVEL : levelTypeString = "Vector level"; - - CASE TZP_XSHLEVEL : levelTypeString = "Ink&Paint level"; - - CASE OVL_XSHLEVEL : levelTypeString = "Raster level"; - - CASE MESH_XSHLEVEL : levelTypeString = "Mesh level"; - - DEFAULT: + break; + case PLI_XSHLEVEL: + levelTypeString = "Vector level"; + break; + case TZP_XSHLEVEL: + levelTypeString = "Ink&Paint level"; + break; + case OVL_XSHLEVEL: + levelTypeString = "Raster level"; + break; + case MESH_XSHLEVEL: + levelTypeString = "Mesh level"; + break; + default: levelTypeString = "?"; + break; } } else if (m_pl) levelTypeString = "Palette level"; diff --git a/toonz/sources/toonz/linetestviewer.cpp b/toonz/sources/toonz/linetestviewer.cpp index dcc9639..713849a 100644 --- a/toonz/sources/toonz/linetestviewer.cpp +++ b/toonz/sources/toonz/linetestviewer.cpp @@ -820,12 +820,10 @@ void LineTestViewer::resetView() void LineTestViewer::onButtonPressed(FlipConsole::EGadget button) { switch (button) { - CASE FlipConsole::eFilledRaster: - { - TXshSimpleLevel::m_fillFullColorRaster = !TXshSimpleLevel::m_fillFullColorRaster; - update(); - } - DEFAULT:; + case FlipConsole::eFilledRaster: + TXshSimpleLevel::m_fillFullColorRaster = !TXshSimpleLevel::m_fillFullColorRaster; + update(); + break; } } diff --git a/toonz/sources/toonz/loadfoldercommand.cpp b/toonz/sources/toonz/loadfoldercommand.cpp index 9540b36..2a0cd7f 100644 --- a/toonz/sources/toonz/loadfoldercommand.cpp +++ b/toonz/sources/toonz/loadfoldercommand.cpp @@ -420,8 +420,9 @@ struct import_Locals { switch (m_overwriteDialog->execute(&obj)) { case OverwriteDialog::OVERWRITE: overwrite = true; - - CASE OverwriteDialog::SKIP : return; + break; + case OverwriteDialog::SKIP: + return; } // Perform resource copy diff --git a/toonz/sources/toonz/meshifypopup.cpp b/toonz/sources/toonz/meshifypopup.cpp index 4f4d072..58e5dbf 100644 --- a/toonz/sources/toonz/meshifypopup.cpp +++ b/toonz/sources/toonz/meshifypopup.cpp @@ -302,7 +302,7 @@ TXshSimpleLevel *createMeshLevel(TXshLevel *texturesLevel) case CANCEL: return result; - case DELETE_OLD: { + case DELETE_OLD: // Remove the level on disk TSystem::removeFileOrLevel(origPath); if (origSl) { @@ -315,18 +315,17 @@ TXshSimpleLevel *createMeshLevel(TXshLevel *texturesLevel) codedDstPath = codedOrigPath; dstPath = origPath; - } - - CASE OVERWRITE_OLD: - { - if (origSl) { - removeIcons(origSl, origSl->getFids()); // Invalidate the levels' icons - origSl->setDirtyFlag(true); - } + break; - codedDstPath = codedOrigPath; - dstPath = origPath; + case OVERWRITE_OLD: + if (origSl) { + removeIcons(origSl, origSl->getFids()); // Invalidate the levels' icons + origSl->setDirtyFlag(true); } + + codedDstPath = codedOrigPath; + dstPath = origPath; + break; } } @@ -1266,24 +1265,19 @@ bool meshifySelection(const MeshifyOptions &options) switch (cTypes) { case HAS_LEVEL_COLUMNS: - // Create new mesh columns corresponding to specified selection meshifySelection(&createMeshifiedColumns, selection, options); - - CASE HAS_MESH_COLUMNS : - - // Check parental relationship - if specified columns have level column children, - // update related meshes - meshifySelection(&updateMeshifiedColumns, selection, options); - - CASE HAS_LEVEL_COLUMNS | HAS_MESH_COLUMNS : - - // Error message - DVGui::error(MeshifyPopup::tr("Current selection contains mixed image and mesh level types")); + break; + case HAS_MESH_COLUMNS: + // Check parental relationship - if specified columns have level column children, + // update related meshes + meshifySelection(&updateMeshifiedColumns, selection, options); + break; + case HAS_LEVEL_COLUMNS | HAS_MESH_COLUMNS: + // Error message + DVGui::error(MeshifyPopup::tr("Current selection contains mixed image and mesh level types")); return false; - - DEFAULT: - + default: // Error message DVGui::error(MeshifyPopup::tr("Current selection contains no image or mesh level types")); return false; diff --git a/toonz/sources/toonz/scanpopup.cpp b/toonz/sources/toonz/scanpopup.cpp index fcae13d..f554e79 100644 --- a/toonz/sources/toonz/scanpopup.cpp +++ b/toonz/sources/toonz/scanpopup.cpp @@ -557,10 +557,17 @@ void AutocenterPopup::showEvent(QShowEvent *e) switch (cp->m_pegSide) { case PEGS_BOTTOM: m_pegbarHoles->setCurrentIndex(0); - CASE PEGS_TOP : m_pegbarHoles->setCurrentIndex(1); - CASE PEGS_LEFT : m_pegbarHoles->setCurrentIndex(2); - CASE PEGS_RIGHT : m_pegbarHoles->setCurrentIndex(3); - DEFAULT: + break; + case PEGS_TOP: + m_pegbarHoles->setCurrentIndex(1); + break; + case PEGS_LEFT: + m_pegbarHoles->setCurrentIndex(2); + break; + case PEGS_RIGHT: + m_pegbarHoles->setCurrentIndex(3); + break; + default: assert(false); } @@ -1102,13 +1109,13 @@ public: int getCursorId() const { switch (m_scaling) { - CASE eNone : return ToolCursor::StrokeSelectCursor; - CASE eMove : return ToolCursor::MoveCursor; - CASE e11 : __OR e00 : return ToolCursor::ScaleCursor; - CASE e10 : __OR e01 : return ToolCursor::ScaleInvCursor; - CASE e1M : __OR e0M : return ToolCursor::ScaleHCursor; - CASE eM1 : __OR eM0 : return ToolCursor::ScaleVCursor; - DEFAULT: + case eNone: return ToolCursor::StrokeSelectCursor; + case eMove: return ToolCursor::MoveCursor; + case e11: case e00: return ToolCursor::ScaleCursor; + case e10: case e01: return ToolCursor::ScaleInvCursor; + case e1M: case e0M: return ToolCursor::ScaleHCursor; + case eM1: case eM0: return ToolCursor::ScaleVCursor; + default: assert(false); } return 0; diff --git a/toonz/sources/toonz/sceneviewerevents.cpp b/toonz/sources/toonz/sceneviewerevents.cpp index 9bfa7a1..0b790ba 100644 --- a/toonz/sources/toonz/sceneviewerevents.cpp +++ b/toonz/sources/toonz/sceneviewerevents.cpp @@ -141,38 +141,41 @@ void SceneViewer::onButtonPressed(FlipConsole::EGadget button) if (m_freezedStatus != NO_FREEZED) return; switch (button) { - CASE FlipConsole::eSaveImg: - { - if (m_previewMode == NO_PREVIEW) { - DVGui::warning(QObject::tr("It is not possible to save images in camera stand view.")); - return; - } - TApp *app = TApp::instance(); - int row = app->getCurrentFrame()->getFrame(); + case FlipConsole::eSaveImg: { + if (m_previewMode == NO_PREVIEW) { + DVGui::warning(QObject::tr("It is not possible to save images in camera stand view.")); + return; + } + TApp *app = TApp::instance(); + int row = app->getCurrentFrame()->getFrame(); - Previewer *previewer = Previewer::instance(m_previewMode == SUBCAMERA_PREVIEW); - if (!previewer->isFrameReady(row)) { - DVGui::warning(QObject::tr("The preview images are not ready yet.")); - return; - } + Previewer *previewer = Previewer::instance(m_previewMode == SUBCAMERA_PREVIEW); + if (!previewer->isFrameReady(row)) { + DVGui::warning(QObject::tr("The preview images are not ready yet.")); + return; + } - TRasterP ras = previewer->getRaster(row, m_visualSettings.m_recomputeIfNeeded); + TRasterP ras = previewer->getRaster(row, m_visualSettings.m_recomputeIfNeeded); - TImageCache::instance()->add(QString("TnzCompareImg"), TRasterImageP(ras->clone())); - } + TImageCache::instance()->add(QString("TnzCompareImg"), TRasterImageP(ras->clone())); - CASE FlipConsole::eSave : Previewer::instance(m_previewMode == SUBCAMERA_PREVIEW)->saveRenderedFrames(); - CASE FlipConsole::eHisto: - { - QAction *action = CommandManager::instance()->getAction(MI_Histogram); - action->trigger(); - } - CASE FlipConsole::eDefineSubCamera: - { - m_editPreviewSubCamera = !m_editPreviewSubCamera; - update(); - } - DEFAULT:; + break; + } + + case FlipConsole::eSave: + Previewer::instance(m_previewMode == SUBCAMERA_PREVIEW)->saveRenderedFrames(); + break; + + case FlipConsole::eHisto: { + QAction *action = CommandManager::instance()->getAction(MI_Histogram); + action->trigger(); + break; + } + + case FlipConsole::eDefineSubCamera: + m_editPreviewSubCamera = !m_editPreviewSubCamera; + update(); + break; } } diff --git a/toonz/sources/toonz/subcameramanager.cpp b/toonz/sources/toonz/subcameramanager.cpp index ae16d29..5a05142 100644 --- a/toonz/sources/toonz/subcameramanager.cpp +++ b/toonz/sources/toonz/subcameramanager.cpp @@ -212,11 +212,22 @@ bool PreviewSubCameraManager::mouseMoveEvent(SceneViewer *viewer, QMouseEvent *e case DRAG_LEFT: case DRAG_RIGHT: viewer->setCursor(Qt::SizeHorCursor); - CASE DRAG_TOP : case DRAG_BOTTOM : viewer->setCursor(Qt::SizeVerCursor); - CASE DRAG_LEFT | DRAG_TOP : case DRAG_RIGHT | DRAG_BOTTOM : viewer->setCursor(Qt::SizeFDiagCursor); - CASE DRAG_LEFT | DRAG_BOTTOM : case DRAG_RIGHT | DRAG_TOP : viewer->setCursor(Qt::SizeBDiagCursor); - DEFAULT: + break; + case DRAG_TOP: + case DRAG_BOTTOM: + viewer->setCursor(Qt::SizeVerCursor); + break; + case DRAG_LEFT | DRAG_TOP: + case DRAG_RIGHT | DRAG_BOTTOM: + viewer->setCursor(Qt::SizeFDiagCursor); + break; + case DRAG_LEFT | DRAG_BOTTOM: + case DRAG_RIGHT | DRAG_TOP: + viewer->setCursor(Qt::SizeBDiagCursor); + break; + default: viewer->setCursor(Qt::ArrowCursor); + break; } } diff --git a/toonz/sources/toonz/tapp.cpp b/toonz/sources/toonz/tapp.cpp index 5720190..cfc5c00 100644 --- a/toonz/sources/toonz/tapp.cpp +++ b/toonz/sources/toonz/tapp.cpp @@ -315,12 +315,13 @@ int TApp::getCurrentImageType() switch (sl->getType()) { case TZP_XSHLEVEL: return TImage::TOONZ_RASTER; - - CASE OVL_XSHLEVEL : return TImage::RASTER; - - CASE PLI_XSHLEVEL : default : return TImage::VECTOR; - - CASE MESH_XSHLEVEL : return TImage::MESH; + case OVL_XSHLEVEL: + return TImage::RASTER; + case PLI_XSHLEVEL: + default: + return TImage::VECTOR; + case MESH_XSHLEVEL: + return TImage::MESH; } } diff --git a/toonz/sources/toonz/tpanels.cpp b/toonz/sources/toonz/tpanels.cpp index 127e18a..85921ed 100644 --- a/toonz/sources/toonz/tpanels.cpp +++ b/toonz/sources/toonz/tpanels.cpp @@ -369,10 +369,16 @@ void FunctionViewerPanel::onIoCurve(int type, TDoubleParam *curve, const std::st switch ((FunctionViewer::IoType)type) { case FunctionViewer::eSaveCurve: saveCurve(curve); - CASE FunctionViewer::eLoadCurve : loadCurve(curve); - CASE FunctionViewer::eExportCurve : exportCurve(curve, name); - DEFAULT: + break; + case FunctionViewer::eLoadCurve: + loadCurve(curve); + break; + case FunctionViewer::eExportCurve: + exportCurve(curve, name); + break; + default: assert(false); + break; } } diff --git a/toonz/sources/toonz/vectorizerpopup.cpp b/toonz/sources/toonz/vectorizerpopup.cpp index 9b7ed28..7306952 100644 --- a/toonz/sources/toonz/vectorizerpopup.cpp +++ b/toonz/sources/toonz/vectorizerpopup.cpp @@ -272,19 +272,19 @@ void Vectorizer::setLevel(const TXshSimpleLevelP &level) return; switch (m_dialog->getChoice()) { - case OverwriteDialog::KEEP_OLD: { + case OverwriteDialog::KEEP_OLD: xl = scene->getLevelSet()->getLevel(levelName); if (!xl) xl = scene->loadLevel(dstPath); m_vLevel = xl->getSimpleLevel(); return; - } - - CASE OverwriteDialog::OVERWRITE : overWrite = true; - - DEFAULT: + case OverwriteDialog::OVERWRITE: + overWrite = true; + break; + default: levelName = name; + break; } } diff --git a/toonz/sources/toonz/xshcolumnviewer.cpp b/toonz/sources/toonz/xshcolumnviewer.cpp index d9d9f2d..736bd7b 100644 --- a/toonz/sources/toonz/xshcolumnviewer.cpp +++ b/toonz/sources/toonz/xshcolumnviewer.cpp @@ -1282,13 +1282,16 @@ void ColumnArea::paintEvent(QPaintEvent *event) switch (colType) { case TXshColumn::ePaletteType: drawPaletteColumnHead(p, col); - - CASE TXshColumn::eSoundType : drawSoundColumnHead(p, col); - - CASE TXshColumn::eSoundTextType : drawSoundTextColumnHead(p, col); - - DEFAULT: + break; + case TXshColumn::eSoundType: + drawSoundColumnHead(p, col); + break; + case TXshColumn::eSoundTextType: + drawSoundTextColumnHead(p, col); + break; + default: drawLevelColumnHead(p, col); + break; } } } diff --git a/toonz/sources/toonz/xsheetviewer.cpp b/toonz/sources/toonz/xsheetviewer.cpp index b6ef02c..735825f 100644 --- a/toonz/sources/toonz/xsheetviewer.cpp +++ b/toonz/sources/toonz/xsheetviewer.cpp @@ -782,31 +782,40 @@ void XsheetViewer::keyPressEvent(QKeyEvent *event) switch (int key = event->key()) { case Qt::Key_Up: setCurrentRow(tmax(row - 1, 0)); - - CASE Qt::Key_Down : setCurrentRow(row + 1); - - CASE Qt::Key_Left : setCurrentColumn(tmax(col - 1, 0)); - - CASE Qt::Key_Right : setCurrentColumn(col + 1); - + break; + case Qt::Key_Down: + setCurrentRow(row + 1); + break; + case Qt::Key_Left: + setCurrentColumn(tmax(col - 1, 0)); + break; + case Qt::Key_Right: + setCurrentColumn(col + 1); + break; + case Qt::Key_Control: // display the upper-directional smart tab only when the ctrl key is pressed - CASE Qt::Key_Control : m_cellArea->onControlPressed(true); + m_cellArea->onControlPressed(true); + break; - DEFAULT : { + default: { QRect visibleRect = m_cellArea->visibleRegion().boundingRect(); int visibleRowCount = visibleRect.height() / XsheetGUI::RowHeight; switch (key) { - CASE Qt::Key_PageUp : locals.scrollTo(visibleRect.top() - visibleRowCount * XsheetGUI::RowHeight, - visibleRect); - - CASE Qt::Key_PageDown : locals.scrollTo(visibleRect.bottom() + visibleRowCount * XsheetGUI::RowHeight, - visibleRect); - - CASE Qt::Key_Home : locals.scrollTo(0, visibleRect); - - CASE Qt::Key_End : locals.scrollTo((frameCount + 1) * XsheetGUI::RowHeight, visibleRect); + case Qt::Key_PageUp: + locals.scrollTo(visibleRect.top() - visibleRowCount * XsheetGUI::RowHeight, visibleRect); + break; + case Qt::Key_PageDown: + locals.scrollTo(visibleRect.bottom() + visibleRowCount * XsheetGUI::RowHeight, visibleRect); + break; + case Qt::Key_Home: + locals.scrollTo(0, visibleRect); + break; + case Qt::Key_End: + locals.scrollTo((frameCount + 1) * XsheetGUI::RowHeight, visibleRect); + break; } + break; } } } diff --git a/toonz/sources/toonzfarm/tfarm/tfarmtask.cpp b/toonz/sources/toonzfarm/tfarm/tfarmtask.cpp index da461d9..fa06a20 100644 --- a/toonz/sources/toonzfarm/tfarm/tfarmtask.cpp +++ b/toonz/sources/toonzfarm/tfarm/tfarmtask.cpp @@ -17,7 +17,9 @@ #include // MACOSX includes -#if defined(MACOSX) || defined(LINUX) +#ifdef _WIN32 +#include +#else #include // gethostbyname #include // inet_ntoa #endif diff --git a/toonz/sources/toonzlib/autoadjust.cpp b/toonz/sources/toonzlib/autoadjust.cpp index bd87930..c46e523 100644 --- a/toonz/sources/toonzlib/autoadjust.cpp +++ b/toonz/sources/toonzlib/autoadjust.cpp @@ -1367,7 +1367,8 @@ void thresh_image(const TRasterImageP &image, int threshold, int oversample_fact TMALLOC(bigline, outwrap_bytes * oversample_factor) switch (oversample_factor) { - CASE 1 : for (y = 0; y < ly; y++) + case 1: + for (y = 0; y < ly; y++) { cur = buffer + y * wrap; out = y == 0 ? bigline : buffer + y * outwrap_bytes; @@ -1388,8 +1389,10 @@ void thresh_image(const TRasterImageP &image, int threshold, int oversample_fact if (y == 0) memcpy(buffer, bigline, outwrap_bytes); } + break; - CASE 2 : for (y = 0; y < ly; y++) + case 2: + for (y = 0; y < ly; y++) { cur = buffer + y * wrap; xnext = cur + 1; @@ -1437,8 +1440,9 @@ void thresh_image(const TRasterImageP &image, int threshold, int oversample_fact if (y == 0) memcpy(buffer, bigline, outwrap_bytes * 2); } + break; - DEFAULT: + default: assert(0); } image->ras.type = RAS_WB; diff --git a/toonz/sources/toonzlib/autopos.cpp b/toonz/sources/toonzlib/autopos.cpp index 25840f9..a7dde5c 100644 --- a/toonz/sources/toonzlib/autopos.cpp +++ b/toonz/sources/toonzlib/autopos.cpp @@ -405,27 +405,7 @@ if ( image->orientation != TOR_LEFTBOT && TRasterP ras = image->getRaster(); wrap = ras->getWrap(); assert(TRaster32P(ras) || TRasterGR8P(ras)); //per ricordare di gestire le img bw! - /* DAFARE -if (rop_pixbits (image->ras.type) < 8 && rop_fillerbits (image->ras.type)) - wrap = (wrap + 7) / 8 * 8; -*/ - /* DAFARE -switch (image->orientation) - { - CASE TOR_BOTLEFT:__OR TOR_BOTRIGHT:__OR TOR_TOPLEFT:__OR TOR_TOPRIGHT: - strip_width = mmToPixel (5.0, image->x_dpi); - lx = image->ras.lx; - ly = image->ras.ly; - - CASE TOR_LEFTBOT:__OR TOR_RIGHTBOT:__OR TOR_LEFTTOP:__OR TOR_RIGHTTOP: - strip_width = mmToPixel (5.0, image->y_dpi); - lx = image->ras.ly; - ly = image->ras.lx; - - DEFAULT: assert (FALSE);lx=ly=strip_width=0; - } -*/ //assumo TOR_BOTLEFT:__OR TOR_BOTRIGHT:__OR TOR_TOPLEFT:__OR TOR_TOPRIGHT: double dpix, dpiy; image->getDpi(dpix, dpiy); @@ -435,44 +415,7 @@ switch (image->orientation) mx = lx - 1; my = ly - 1; - /* DAFARE -switch (image->orientation) - { - CASE TOR_BOTLEFT: - pix_origin = 0; - dpix_dx = 1; - dpix_dy = wrap; - CASE TOR_BOTRIGHT: - pix_origin = mx; - dpix_dx = -1; - dpix_dy = wrap; - CASE TOR_TOPLEFT: - pix_origin = my * wrap; - dpix_dx = 1; - dpix_dy = -wrap; - CASE TOR_TOPRIGHT: - pix_origin = mx + my * wrap; - dpix_dx = -1; - dpix_dy = -wrap; - CASE TOR_LEFTBOT: - pix_origin = 0; - dpix_dx = wrap; - dpix_dy = 1; - CASE TOR_RIGHTBOT: - pix_origin = mx * wrap; - dpix_dx = -wrap; - dpix_dy = 1; - CASE TOR_LEFTTOP: - pix_origin = my; - dpix_dx = wrap; - dpix_dy = -1; - CASE TOR_RIGHTTOP: - pix_origin = my + mx * wrap; - dpix_dx = -wrap; - dpix_dy = -1; - DEFAULT: assert(FALSE); pix_origin=dpix_dx=dpix_dy=0; - } -*/ + //assumo CASE TOR_BOTLEFT: pix_origin = 0; dpix_dx = 1; @@ -494,17 +437,7 @@ switch (image->orientation) assert(!"Unsupported pixel type"); ras->unlock(); - /* - CASE RAS_WB: - __OR RAS_BW: - assert ( !image->ras.bit_offs); - return autoalign_bw (image->ras.buffer, image->ras.type, - wrap, lx, ly, pix_origin, - dpix_dx, dpix_dy, strip_width); - - DEFAULT: assert (!"Unsupported alignment\n"); - } -*/ + return FALSE; } @@ -729,12 +662,7 @@ static int find_dots(const TRasterP &img, int strip_width, PEGS_SIDE pegs_side, return find_dots_gr8(ras8, strip_width, pegs_side, dotarray, dotarray_size, max_area); assert(!"Unsupported pixel type"); - /* DAFARE - CASE RAS_BW: - __OR RAS_WB: - return find_dots_bw (img, strip_width, pegs_side, dotarray, dotarray_size, - max_area); -*/ + return 0; } @@ -762,19 +690,25 @@ static int find_dots_bw(const TRasterP &img, int strip_width, PEGS_SIDE pegs_sid } switch (pegs_side) { - CASE PEGS_BOTTOM : __OR PEGS_TOP : x0 = 0; + case PEGS_BOTTOM: + case PEGS_TOP: + x0 = 0; y0 = pegs_side == PEGS_BOTTOM ? 0 : img->ly - strip_width; xsize = img->lx; ysize = strip_width; vertical = FALSE; - - CASE PEGS_LEFT : __OR PEGS_RIGHT : x0 = pegs_side == PEGS_LEFT ? 0 : img->lx - strip_width; + break; + + case PEGS_LEFT: + case PEGS_RIGHT: + x0 = pegs_side == PEGS_LEFT ? 0 : img->lx - strip_width; y0 = 0; xsize = strip_width; ysize = img->ly; vertical = TRUE; + break; - DEFAULT : { + default: { ostrstream os; os << "find dots internal error: pegs_side = " << std::hex << pegs_side << '\0'; os.freeze(false); @@ -891,19 +825,23 @@ static int find_dots_gr8(const TRasterGR8P &img, int strip_width, PEGS_SIDE pegs int vertical; switch (pegs_side) { - CASE PEGS_BOTTOM : __OR PEGS_TOP : x0 = 0; + case PEGS_BOTTOM: + case PEGS_TOP: + x0 = 0; y0 = pegs_side == PEGS_BOTTOM ? 0 : img->getLy() - strip_width; xsize = img->getLx(); ysize = strip_width; vertical = FALSE; - - CASE PEGS_LEFT : __OR PEGS_RIGHT : x0 = pegs_side == PEGS_LEFT ? 0 : img->getLx() - strip_width; + break; + case PEGS_LEFT: + case PEGS_RIGHT: + x0 = pegs_side == PEGS_LEFT ? 0 : img->getLx() - strip_width; y0 = 0; xsize = strip_width; ysize = img->getLy(); vertical = TRUE; - - DEFAULT : { + break; + default: { std::ostrstream os; os << "find dots internal error: pegs_side = " << std::hex << pegs_side << '\0'; os.freeze(false); @@ -1016,24 +954,29 @@ static int find_dots_rgb(const TRaster32P &img, int strip_width, PEGS_SIDE pegs_ assert(img->getPixelSize() == 4); /*questo e' per ricordare che l'algo e' per RGB*/ switch (pegs_side) { - CASE PEGS_BOTTOM : __OR PEGS_TOP : x0 = 0; + case PEGS_BOTTOM: + case PEGS_TOP: + x0 = 0; y0 = pegs_side == PEGS_BOTTOM ? 0 : img->getLy() - strip_width; xsize = img->getLx(); ysize = strip_width; vertical = FALSE; - - CASE PEGS_LEFT : __OR PEGS_RIGHT : x0 = pegs_side == PEGS_LEFT ? 0 : img->getLx() - strip_width; + break; + case PEGS_LEFT: + case PEGS_RIGHT: + x0 = pegs_side == PEGS_LEFT ? 0 : img->getLx() - strip_width; y0 = 0; xsize = strip_width; ysize = img->getLy(); vertical = TRUE; - - DEFAULT : { + break; + default: { std::ostrstream os; os << "find dots internal error: pegs_side = " << std::hex << pegs_side << '\0'; os.freeze(false); throw TCleanupException(os.str()); x0 = y0 = xsize = ysize = vertical = 0; + break; } } xlast = x0 + xsize - 1; @@ -1190,11 +1133,11 @@ start: if (!STACK_IS_EMPTY) { POP_FROM_STACK_U(ret, x, y, i, j, bit, byte); switch (ret) { - CASE 1 : goto return_1; - CASE 2 : goto return_2; - CASE 3 : goto return_3; - CASE 4 : goto return_4; - DEFAULT: + case 1 : goto return_1; + case 2 : goto return_2; + case 3 : goto return_3; + case 4 : goto return_4; + default: abort(); } } @@ -1319,11 +1262,11 @@ start: if (!STACK_IS_EMPTY) { POP_FROM_STACK_U(ret, x, y, i, j, dummy, pix); switch (ret) { - CASE 1 : goto return_1; - CASE 2 : goto return_2; - CASE 3 : goto return_3; - CASE 4 : goto return_4; - DEFAULT: + case 1 : goto return_1; + case 2 : goto return_2; + case 3 : goto return_3; + case 4 : goto return_4; + default: abort(); } } @@ -1432,11 +1375,11 @@ start: if (!STACK_IS_EMPTY) { POP_FROM_STACK_TPIXEL32(ret, x, y, i, j, dummy, pix); switch (ret) { - CASE 1 : goto return_1; - CASE 2 : goto return_2; - CASE 3 : goto return_3; - CASE 4 : goto return_4; - DEFAULT: + case 1 : goto return_1; + case 2 : goto return_2; + case 3 : goto return_3; + case 4 : goto return_4; + default: abort(); } } @@ -1558,9 +1501,13 @@ int get_image_rotation_and_center(const TRasterP &img, int strip_width, dx = dotarray[i + 1].x - dotarray[i].x; dy = dotarray[i + 1].y - dotarray[i].y; switch (pegs_side) { - CASE PEGS_LEFT : __OR PEGS_RIGHT : angle += dy == 0.0 ? TConsts::pi_2 : atan(dx / dy); - DEFAULT: + case PEGS_LEFT: + case PEGS_RIGHT: + angle += dy == 0.0 ? TConsts::pi_2 : atan(dx / dy); + break; + default: angle -= dx == 0.0 ? TConsts::pi_2 : atan(dy / dx); + break; } } diff --git a/toonz/sources/toonzlib/fill.cpp b/toonz/sources/toonzlib/fill.cpp index 96c59b1..d1401ca 100644 --- a/toonz/sources/toonzlib/fill.cpp +++ b/toonz/sources/toonzlib/fill.cpp @@ -273,8 +273,11 @@ bool fill(const TRasterCM32P &r, const FillParameters ¶ms, TTileSaverCM32 *s switch (TPixelCM32::getMaxTone()) { case 15: fillDepth = (15 - fillDepth); - CASE 255 : fillDepth = ((15 - fillDepth) << 4) | (15 - fillDepth); - DEFAULT: + break; + case 255: + fillDepth = ((15 - fillDepth) << 4) | (15 - fillDepth); + break; + default: assert(false); } diff --git a/toonz/sources/toonzlib/fillutil.cpp b/toonz/sources/toonzlib/fillutil.cpp index 5cb5e51..6de23b9 100644 --- a/toonz/sources/toonzlib/fillutil.cpp +++ b/toonz/sources/toonzlib/fillutil.cpp @@ -771,14 +771,28 @@ inline void newP(int next, TPoint &p) { switch (next) { case 0: - __OR 3 : __OR 5 : p.x -= 1; - CASE 2 : __OR 4 : __OR 7 : p.x += 1; + case 3: + case 5: + p.x -= 1; + break; + case 2: + case 4: + case 7: + p.x += 1; + break; } switch (next) { case 0: - __OR 1 : __OR 2 : p.y -= 1; - CASE 5 : __OR 6 : __OR 7 : p.y += 1; + case 1: + case 2: + p.y -= 1; + break; + case 5: + case 6: + case 7: + p.y += 1; + break; } } diff --git a/toonz/sources/toonzlib/imagestyles.cpp b/toonz/sources/toonzlib/imagestyles.cpp index c8d49d6..0745d52 100644 --- a/toonz/sources/toonzlib/imagestyles.cpp +++ b/toonz/sources/toonzlib/imagestyles.cpp @@ -569,16 +569,15 @@ int TTextureStyle::getParamCount() const QString TTextureStyle::getParamNames(int index) const { switch (index) { - case 0: - return "Use As Pattern"; - CASE 1 : return "Position"; - CASE 2 : return "Scale"; - CASE 3 : return "Rotation(degrees)"; - CASE 4 : return "X displ"; - CASE 5 : return "Y displ"; - CASE 6 : return "Contrast"; - CASE 7 : return "Load From File"; - DEFAULT: + case 0: return "Use As Pattern"; + case 1: return "Position"; + case 2: return "Scale"; + case 3: return "Rotation(degrees)"; + case 4: return "X displ"; + case 5: return "Y displ"; + case 6: return "Contrast"; + case 7: return "Load From File"; + default: assert(false); } @@ -594,15 +593,24 @@ void TTextureStyle::getParamRange(int index, double &min, double &max) const case 2: min = 0.15; max = 10; - CASE 3 : min = -180; + break; + case 3: + min = -180; max = 180; - CASE 4 : min = -500; + break; + case 4: + min = -500; max = 500; - CASE 5 : min = -500; + break; + case 5: + min = -500; max = 500; - CASE 6 : min = 0.01; + break; + case 6: + min = 0.01; max = 10; - DEFAULT: + break; + default: assert(false); } } @@ -653,13 +661,12 @@ double TTextureStyle::getParamValue(TColorStyle::double_tag, int index) const { assert(index > 1); switch (index) { - case 2: - return m_params.m_scale; - CASE 3 : return m_params.m_rotation; - CASE 4 : return m_params.m_displacement.x; - CASE 5 : return m_params.m_displacement.y; - CASE 6 : return m_params.m_contrast; - DEFAULT: + case 2: return m_params.m_scale; + case 3: return m_params.m_rotation; + case 4: return m_params.m_displacement.x; + case 5: return m_params.m_displacement.y; + case 6: return m_params.m_contrast; + default: assert(false); } return 0; @@ -714,14 +721,26 @@ void TTextureStyle::setParamValue(int index, double value) switch (index) { case 0: m_params.m_isPattern = (((int)value == 0) ? false : true); - CASE 1 : m_params.m_type = (((int)value == 0) ? TTextureParams::FIXED : ((int)value == 1) ? TTextureParams::AUTOMATIC : TTextureParams::RANDOM); - - CASE 2 : m_params.m_scale = value; - CASE 3 : m_params.m_rotation = value; - CASE 4 : m_params.m_displacement.x = value; - CASE 5 : m_params.m_displacement.y = value; - CASE 6 : m_params.m_contrast = value; - DEFAULT: + break; + case 1: + m_params.m_type = (((int)value == 0) ? TTextureParams::FIXED : ((int)value == 1) ? TTextureParams::AUTOMATIC : TTextureParams::RANDOM); + break; + case 2: + m_params.m_scale = value; + break; + case 3: + m_params.m_rotation = value; + break; + case 4: + m_params.m_displacement.x = value; + break; + case 5: + m_params.m_displacement.y = value; + break; + case 6: + m_params.m_contrast = value; + break; + default: assert(false); } } diff --git a/toonz/sources/toonzlib/multimediarenderer.cpp b/toonz/sources/toonzlib/multimediarenderer.cpp index d54fe3c..265eab0 100644 --- a/toonz/sources/toonzlib/multimediarenderer.cpp +++ b/toonz/sources/toonzlib/multimediarenderer.cpp @@ -125,8 +125,11 @@ void MultimediaRenderer::Imp::scanSceneForRenderNodes() switch (m_multimediaMode) { case COLUMNS: scanSceneForColumns(); - CASE LAYERS : scanSceneForLayers(); - DEFAULT: + break; + case LAYERS: + scanSceneForLayers(); + break; + default: assert(0); } } @@ -285,8 +288,11 @@ void MultimediaRenderer::Imp::start() switch (m_multimediaMode) { case COLUMNS: modeStr = L"_col"; - CASE LAYERS : modeStr = L"_lay"; - DEFAULT: + break; + case LAYERS: + modeStr = L"_lay"; + break; + default: assert(0); } diff --git a/toonz/sources/toonzlib/sceneproperties.cpp b/toonz/sources/toonzlib/sceneproperties.cpp index 4d05695..ef4da99 100644 --- a/toonz/sources/toonzlib/sceneproperties.cpp +++ b/toonz/sources/toonzlib/sceneproperties.cpp @@ -205,7 +205,7 @@ void TSceneProperties::saveData(TOStream &os) const break; case TRenderSettings::HighResampleQuality: os.child("resquality") << (int)2; - + break; case TRenderSettings::Triangle_FilterResampleQuality: os.child("resquality") << (int)100; break; @@ -248,8 +248,7 @@ void TSceneProperties::saveData(TOStream &os) const case TRenderSettings::Bilinear_FilterResampleQuality: os.child("resquality") << (int)113; break; - break; - DEFAULT: + default: assert(false); } switch (rs.m_fieldPrevalence) { @@ -262,7 +261,7 @@ void TSceneProperties::saveData(TOStream &os) const case TRenderSettings::OddField: os.child("fieldprevalence") << (int)2; break; - DEFAULT: + default: assert(false); } os.child("gamma") << rs.m_gamma; @@ -491,23 +490,56 @@ void TSceneProperties::loadData(TIStream &is, bool isLoadingProject) switch (j) { case 0: renderSettings.m_quality = TRenderSettings::StandardResampleQuality; - CASE 1 : renderSettings.m_quality = TRenderSettings::ImprovedResampleQuality; - CASE 2 : renderSettings.m_quality = TRenderSettings::HighResampleQuality; - CASE 100 : renderSettings.m_quality = TRenderSettings::Triangle_FilterResampleQuality; - CASE 101 : renderSettings.m_quality = TRenderSettings::Mitchell_FilterResampleQuality; - CASE 102 : renderSettings.m_quality = TRenderSettings::Cubic5_FilterResampleQuality; - CASE 103 : renderSettings.m_quality = TRenderSettings::Cubic75_FilterResampleQuality; - CASE 104 : renderSettings.m_quality = TRenderSettings::Cubic1_FilterResampleQuality; - CASE 105 : renderSettings.m_quality = TRenderSettings::Hann2_FilterResampleQuality; - CASE 106 : renderSettings.m_quality = TRenderSettings::Hann3_FilterResampleQuality; - CASE 107 : renderSettings.m_quality = TRenderSettings::Hamming2_FilterResampleQuality; - CASE 108 : renderSettings.m_quality = TRenderSettings::Hamming3_FilterResampleQuality; - CASE 109 : renderSettings.m_quality = TRenderSettings::Lanczos2_FilterResampleQuality; - CASE 110 : renderSettings.m_quality = TRenderSettings::Lanczos3_FilterResampleQuality; - CASE 111 : renderSettings.m_quality = TRenderSettings::Gauss_FilterResampleQuality; - CASE 112 : renderSettings.m_quality = TRenderSettings::ClosestPixel_FilterResampleQuality; - CASE 113 : renderSettings.m_quality = TRenderSettings::Bilinear_FilterResampleQuality; - DEFAULT: + break; + case 1: + renderSettings.m_quality = TRenderSettings::ImprovedResampleQuality; + break; + case 2: + renderSettings.m_quality = TRenderSettings::HighResampleQuality; + break; + case 100: + renderSettings.m_quality = TRenderSettings::Triangle_FilterResampleQuality; + break; + case 101: + renderSettings.m_quality = TRenderSettings::Mitchell_FilterResampleQuality; + break; + case 102: + renderSettings.m_quality = TRenderSettings::Cubic5_FilterResampleQuality; + break; + case 103: + renderSettings.m_quality = TRenderSettings::Cubic75_FilterResampleQuality; + break; + case 104: + renderSettings.m_quality = TRenderSettings::Cubic1_FilterResampleQuality; + break; + case 105: + renderSettings.m_quality = TRenderSettings::Hann2_FilterResampleQuality; + break; + case 106: + renderSettings.m_quality = TRenderSettings::Hann3_FilterResampleQuality; + break; + case 107: + renderSettings.m_quality = TRenderSettings::Hamming2_FilterResampleQuality; + break; + case 108: + renderSettings.m_quality = TRenderSettings::Hamming3_FilterResampleQuality; + break; + case 109: + renderSettings.m_quality = TRenderSettings::Lanczos2_FilterResampleQuality; + break; + case 110: + renderSettings.m_quality = TRenderSettings::Lanczos3_FilterResampleQuality; + break; + case 111: + renderSettings.m_quality = TRenderSettings::Gauss_FilterResampleQuality; + break; + case 112: + renderSettings.m_quality = TRenderSettings::ClosestPixel_FilterResampleQuality; + break; + case 113: + renderSettings.m_quality = TRenderSettings::Bilinear_FilterResampleQuality; + break; + default: renderSettings.m_quality = TRenderSettings::StandardResampleQuality; } } else if (tagName == "fieldprevalence") { @@ -516,10 +548,16 @@ void TSceneProperties::loadData(TIStream &is, bool isLoadingProject) switch (j) { case 0: renderSettings.m_fieldPrevalence = TRenderSettings::NoField; - CASE 1 : renderSettings.m_fieldPrevalence = TRenderSettings::EvenField; - CASE 2 : renderSettings.m_fieldPrevalence = TRenderSettings::OddField; - DEFAULT: + break; + case 1: + renderSettings.m_fieldPrevalence = TRenderSettings::EvenField; + break; + case 2: + renderSettings.m_fieldPrevalence = TRenderSettings::OddField; + break; + default: renderSettings.m_fieldPrevalence = TRenderSettings::NoField; + break; } } else if (tagName == "gamma") { double g; diff --git a/toonz/sources/toonzlib/screensavermaker.cpp b/toonz/sources/toonzlib/screensavermaker.cpp index fda2653..2b6539b 100644 --- a/toonz/sources/toonzlib/screensavermaker.cpp +++ b/toonz/sources/toonzlib/screensavermaker.cpp @@ -9,6 +9,7 @@ #pragma warning(disable : 4996) #include +#include //#include #include #include diff --git a/toonz/sources/toonzlib/scriptbinding_image_builder.cpp b/toonz/sources/toonzlib/scriptbinding_image_builder.cpp index 94285af..8423649 100644 --- a/toonz/sources/toonzlib/scriptbinding_image_builder.cpp +++ b/toonz/sources/toonzlib/scriptbinding_image_builder.cpp @@ -4,8 +4,7 @@ #include "toonz/scriptbinding_image.h" #include "ttoonzimage.h" #include "trop.h" -#define _USE_MATH_DEFINES -#include +#include namespace TScriptBinding { diff --git a/toonz/sources/toonzlib/tcenterlineskeletonizer.cpp b/toonz/sources/toonzlib/tcenterlineskeletonizer.cpp index 75301b0..7fd7b2a 100644 --- a/toonz/sources/toonzlib/tcenterlineskeletonizer.cpp +++ b/toonz/sources/toonzlib/tcenterlineskeletonizer.cpp @@ -1035,7 +1035,7 @@ inline bool Event::process() if (!m_generator->hasAttribute(ContourNode::ELIMINATED)) { switch (m_type) { - case special: { + case special: assert(!m_coGenerator->hasAttribute(ContourNode::ELIMINATED)); if (m_coGenerator->m_prev->hasAttribute(ContourNode::ELIMINATED) || // These two are most probably useless - could @@ -1052,75 +1052,75 @@ inline bool Event::process() //else allow processing algoritmicTime++; processSpecialEvent(); - } - CASE edge: - { - if (m_coGenerator->hasAttribute(ContourNode::ELIMINATED) || - m_algoritmicTime < m_coGenerator->m_next->m_updateTime) { - //recalculate event - Event newEvent(m_generator, m_context); - if (newEvent.m_type != failure) - timeline.push(newEvent); - return false; - } + break; - //Deal with edge superposition cases *only* when m_generator has the m_direction.z == 0.0 - if ((m_coGenerator->m_direction.z == 0.0 && m_coGenerator != m_generator) || - (m_coGenerator->m_next->m_direction.z == 0.0 && m_coGenerator == m_generator)) - return false; - - //else allow processing - algoritmicTime++; //global - if (m_generator->m_next->m_next == m_generator->m_prev) - processMaxEvent(); - else - processEdgeEvent(); + case edge: + if (m_coGenerator->hasAttribute(ContourNode::ELIMINATED) || + m_algoritmicTime < m_coGenerator->m_next->m_updateTime) { + //recalculate event + Event newEvent(m_generator, m_context); + if (newEvent.m_type != failure) + timeline.push(newEvent); + return false; } - CASE vertex: - { - if (m_coGenerator->hasAttribute(ContourNode::ELIMINATED)) { - //recalculate event - Event newEvent(m_generator, m_context); - if (newEvent.m_type != failure) - timeline.push(newEvent); - return false; - } + //Deal with edge superposition cases *only* when m_generator has the m_direction.z == 0.0 + if ((m_coGenerator->m_direction.z == 0.0 && m_coGenerator != m_generator) || + (m_coGenerator->m_next->m_direction.z == 0.0 && m_coGenerator == m_generator)) + return false; - // Unlike the split case, we don't need to rebuild if - // the event is not up to date with m_coGenerator - since - // the event is not about splitting an edge + //else allow processing + algoritmicTime++; //global + if (m_generator->m_next->m_next == m_generator->m_prev) + processMaxEvent(); + else + processEdgeEvent(); - if (m_coGenerator == m_generator->m_next->m_next // CAN devolve to a special event - which should - || m_coGenerator == m_generator->m_prev->m_prev) // already be present in the timeline - return false; + break; - //then, process it - algoritmicTime++; - processVertexEvent(); + case vertex: + if (m_coGenerator->hasAttribute(ContourNode::ELIMINATED)) { + //recalculate event + Event newEvent(m_generator, m_context); + if (newEvent.m_type != failure) + timeline.push(newEvent); + return false; } - CASE split_regenerate: - { - if (m_coGenerator->hasAttribute(ContourNode::ELIMINATED) || - (m_algoritmicTime < m_coGenerator->m_next->m_updateTime)) { - //recalculate event - Event newEvent(m_generator, m_context); - if (newEvent.m_type != failure) - timeline.push(newEvent); - return false; - } + // Unlike the split case, we don't need to rebuild if + // the event is not up to date with m_coGenerator - since + // the event is not about splitting an edge + + if (m_coGenerator == m_generator->m_next->m_next // CAN devolve to a special event - which should + || m_coGenerator == m_generator->m_prev->m_prev) // already be present in the timeline + return false; - // This may actually happen on current implementation, due to quirky event - // generation and preferential events rejection. See function tryRay..() - // around the end. Historically resolved to a split event, so we maintain that. + //then, process it + algoritmicTime++; + processVertexEvent(); - //assert(false); + break; + + case split_regenerate: + if (m_coGenerator->hasAttribute(ContourNode::ELIMINATED) || + (m_algoritmicTime < m_coGenerator->m_next->m_updateTime)) { + //recalculate event + Event newEvent(m_generator, m_context); + if (newEvent.m_type != failure) + timeline.push(newEvent); + return false; } + // This may actually happen on current implementation, due to quirky event + // generation and preferential events rejection. See function tryRay..() + // around the end. Historically resolved to a split event, so we maintain that. + + //assert(false); + + /* fallthrough */ + case split: // No break is intended - { if (m_coGenerator->hasAttribute(ContourNode::ELIMINATED) || (m_algoritmicTime < m_coGenerator->m_next->m_updateTime)) { //recalculate event @@ -1137,7 +1137,8 @@ inline bool Event::process() algoritmicTime++; processSplitEvent(); } - } + + break; } } diff --git a/toonz/sources/toonzlib/tcleanupper.cpp b/toonz/sources/toonzlib/tcleanupper.cpp index fe39df8..368cff5 100644 --- a/toonz/sources/toonzlib/tcleanupper.cpp +++ b/toonz/sources/toonzlib/tcleanupper.cpp @@ -617,7 +617,7 @@ CleanupPreprocessedImage *TCleanupper::process( image->setRaster(rgr); } switch (m_parameters->m_autoAdjustMode) { - case AUTO_ADJ_HISTOGRAM: { + case AUTO_ADJ_HISTOGRAM: if (first_image) { build_gr_cum(image, ref_cum); } else { @@ -625,13 +625,20 @@ CleanupPreprocessedImage *TCleanupper::process( build_gr_lut(ref_cum, cum, lut); apply_lut(image, lut); } - } + break; - CASE AUTO_ADJ_HISTO_L : histo_l_algo(image, first_image); + case AUTO_ADJ_HISTO_L: + histo_l_algo(image, first_image); + break; - CASE AUTO_ADJ_BLACK_EQ : black_eq_algo(image); + case AUTO_ADJ_BLACK_EQ: + black_eq_algo(image); + break; - CASE AUTO_ADJ_NONE : DEFAULT : assert(false); + case AUTO_ADJ_NONE: + default: + assert(false); + break; } } @@ -899,11 +906,19 @@ bool TCleanupper::doAutocenter( switch (m_parameters->m_pegSide) { case PEGS_BOTTOM: sigma = 0.0; - CASE PEGS_RIGHT : sigma = 90.0; - CASE PEGS_TOP : sigma = 180.0; - CASE PEGS_LEFT : sigma = -90.0; - DEFAULT: + break; + case PEGS_RIGHT: + sigma = 90.0; + break; + case PEGS_TOP: + sigma = 180.0; + break; + case PEGS_LEFT: + sigma = -90.0; + break; + default: sigma = 0.0; + break; } theta = sigma; @@ -926,9 +941,12 @@ bool TCleanupper::doAutocenter( switch (pegs_ras_side) { case PEGS_LEFT: - __OR PEGS_RIGHT : notMoreThan(image->getRaster()->getLx(), strip_width); - DEFAULT: + case PEGS_RIGHT: + notMoreThan(image->getRaster()->getLx(), strip_width); + break; + default: notMoreThan(image->getRaster()->getLy(), strip_width); + break; } convert_dots_mm_to_pixel( @@ -949,19 +967,25 @@ bool TCleanupper::doAutocenter( switch (m_parameters->m_pegSide) { case PEGS_BOTTOM: cqout -= dist; - CASE PEGS_TOP : cqout += dist; - CASE PEGS_LEFT : cpout -= dist; - CASE PEGS_RIGHT : cpout += dist; - DEFAULT : { + break; + case PEGS_TOP: + cqout += dist; + break; + case PEGS_LEFT: + cpout -= dist; + break; + case PEGS_RIGHT: + cpout += dist; + break; + default: // bad pegs side return false; } - } } fdg_info.dots.clear(); - } - break; + break; + } default: return false; diff --git a/toonz/sources/toonzlib/tcolumnfx.cpp b/toonz/sources/toonzlib/tcolumnfx.cpp index 02bf3f7..af6f863 100644 --- a/toonz/sources/toonzlib/tcolumnfx.cpp +++ b/toonz/sources/toonzlib/tcolumnfx.cpp @@ -257,20 +257,27 @@ int getEnlargement(const std::vector &fxs, double scale) BlendTzParams ¶ms = sandorData->m_blendParams; enlargement = params.m_amount * scale; } + + break; } - CASE Calligraphic : __OR OutBorder: + case Calligraphic: + case OutBorder: { CalligraphicParams ¶ms = sandorData->m_callParams; enlargement = params.m_thickness * scale; + + break; } - CASE ArtAtContour: + case ArtAtContour: { ArtAtContourParams ¶ms = sandorData->m_contourParams; enlargement = tmax(tceil(sandorData->m_controllerBBox.getLx()), tceil(sandorData->m_controllerBBox.getLy())) * params.m_maxSize; + + break; } } } @@ -556,9 +563,11 @@ TImageP applyCmappedFx(TToonzImageP &ti, const std::vector blend(ti, rasterOut, blendParams); blendParams.clear(); + break; } - CASE Calligraphic : __OR OutBorder: - { + + case Calligraphic: + case OutBorder: { if (sandorData->m_type == OutBorder && !firstSandorFx) continue; @@ -570,9 +579,10 @@ TImageP applyCmappedFx(TToonzImageP &ti, const std::vector calligraph(oldRasterIn, oldRasterOut, sandorData->m_border, sandorData->m_argc, argv, sandorData->m_shrink, sandorData->m_type == OutBorder); + + break; } - CASE ArtAtContour: - { + case ArtAtContour: { const char *argv[12]; memcpy(argv, sandorData->m_argv, 12 * sizeof(const char *)); @@ -590,8 +600,10 @@ TImageP applyCmappedFx(TToonzImageP &ti, const std::vector patternmap(oldRasterIn, oldRasterOut, sandorData->m_border, sandorData->m_argc, argv, sandorData->m_shrink, imgContour); TRop::releaseRaster46(imgContour); + + break; } - DEFAULT: + default: assert(false); } diff --git a/toonz/sources/toonzlib/toonzscene.cpp b/toonz/sources/toonzlib/toonzscene.cpp index 3bf1474..917006f 100644 --- a/toonz/sources/toonzlib/toonzscene.cpp +++ b/toonz/sources/toonzlib/toonzscene.cpp @@ -994,7 +994,7 @@ LevelType getLevelType(const TFilePath &fp) switch (type) { case TFileType::RASTER_IMAGE: case TFileType::RASTER_LEVEL: - case TFileType::CMAPPED_LEVEL: { + case TFileType::CMAPPED_LEVEL: if (format == "tzp" || format == "tzu") { ret.m_ltype = TZP_XSHLEVEL; ret.m_oldLevelFlag = true; @@ -1005,26 +1005,26 @@ LevelType getLevelType(const TFilePath &fp) ret.m_ltype = TZI_XSHLEVEL; else ret.m_ltype = OVL_XSHLEVEL; - } + break; - CASE TFileType::VECTOR_LEVEL: - { - if (format == "svg") { - ret.m_vectorNotPli = true; - ret.m_ext = "pli"; - } - /* if (format == "svg") - ret.m_ext = "pli";*/ - ret.m_ltype = PLI_XSHLEVEL; + case TFileType::VECTOR_LEVEL: + if (format == "svg") { + ret.m_vectorNotPli = true; + ret.m_ext = "pli"; } + /* if (format == "svg") + ret.m_ext = "pli";*/ + ret.m_ltype = PLI_XSHLEVEL; + break; - CASE TFileType::AUDIO_LEVEL : - - ret.m_ltype = SND_XSHLEVEL; - - CASE TFileType::MESH_IMAGE : case TFileType::MESH_LEVEL : + case TFileType::AUDIO_LEVEL: + ret.m_ltype = SND_XSHLEVEL; + break; - ret.m_ltype = MESH_XSHLEVEL; + case TFileType::MESH_IMAGE: + case TFileType::MESH_LEVEL: + ret.m_ltype = MESH_XSHLEVEL; + break; } return ret; diff --git a/toonz/sources/toonzlib/trastercentroid.cpp b/toonz/sources/toonzlib/trastercentroid.cpp index 7110b4e..d4c0db4 100644 --- a/toonz/sources/toonzlib/trastercentroid.cpp +++ b/toonz/sources/toonzlib/trastercentroid.cpp @@ -223,21 +223,16 @@ int Displace_vector[8]; /*------------------------------------------------------------------------*/ #define UPDATE_POS(displ_code, x_pos, y_pos) \ - switch (displ_code) { \ - CASE 0 : x_pos--; \ - y_pos--; \ - CASE 1 : y_pos--; \ - CASE 2 : x_pos++; \ - y_pos--; \ - CASE 3 : x_pos--; \ - CASE 4 : x_pos++; \ - CASE 5 : x_pos--; \ - y_pos++; \ - CASE 6 : y_pos++; \ - CASE 7 : x_pos++; \ - y_pos++; \ - DEFAULT: \ - assert(FALSE); \ + switch (displ_code) { \ + case 0: x_pos--; y_pos--; break; \ + case 1: y_pos--; break; \ + case 2: x_pos++; y_pos--; break; \ + case 3: x_pos--; break; \ + case 4: x_pos++; break; \ + case 5: x_pos--; y_pos++; break; \ + case 6: y_pos++; break; \ + case 7: x_pos++; y_pos++; break; \ + default: assert(FALSE); \ } /*------------------------------------------------------------------------*/ diff --git a/toonz/sources/toonzlib/txshcolumn.cpp b/toonz/sources/toonzlib/txshcolumn.cpp index 2675e0c..eeb3721 100644 --- a/toonz/sources/toonzlib/txshcolumn.cpp +++ b/toonz/sources/toonzlib/txshcolumn.cpp @@ -482,16 +482,11 @@ void TXshColumn::setStatusWord(int status) TXshColumn *TXshColumn::createEmpty(int type) { switch (type) { - case eSoundType: - return new TXshSoundColumn; - - CASE eZeraryFxType : return new TXshZeraryFxColumn(0); - - CASE ePaletteType : return new TXshPaletteColumn; - - CASE eSoundTextType : return new TXshSoundTextColumn; - - CASE eMeshType : return new TXshMeshColumn; + case eSoundType : return new TXshSoundColumn; + case eZeraryFxType : return new TXshZeraryFxColumn(0); + case ePaletteType : return new TXshPaletteColumn; + case eSoundTextType: return new TXshSoundTextColumn; + case eMeshType : return new TXshMeshColumn; } assert(type == eLevelType); diff --git a/toonz/sources/toonzlib/txsheetexpr.cpp b/toonz/sources/toonzlib/txsheetexpr.cpp index 6c68b94..55eb9aa 100644 --- a/toonz/sources/toonzlib/txsheetexpr.cpp +++ b/toonz/sources/toonzlib/txsheetexpr.cpp @@ -507,17 +507,17 @@ public: case COLUMN_NUMBER: return (token.getType() == Token::Number && locals.skdp(token)); - CASE VERTEX_NAME: - { - if (const SkD *skdp = locals.skdp(previousTokens[COLUMN_NUMBER])) { - const QString &vertexName = QString::fromStdString(text); - return (skdp->vertexDeformation(vertexName) != 0); - } + case VERTEX_NAME: + if (const SkD *skdp = locals.skdp(previousTokens[COLUMN_NUMBER])) { + const QString &vertexName = QString::fromStdString(text); + return (skdp->vertexDeformation(vertexName) != 0); } + break; - CASE COMPONENT : return std::count( - m_components, m_components + sizeof(m_components) / sizeof(Component), - text) > 0; + case COMPONENT: + return std::count( + m_components, m_components + sizeof(m_components) / sizeof(Component), + text) > 0; } return false; diff --git a/toonz/sources/toonzlib/txshsimplelevel.cpp b/toonz/sources/toonzlib/txshsimplelevel.cpp index 1bcffb9..e9d478e 100644 --- a/toonz/sources/toonzlib/txshsimplelevel.cpp +++ b/toonz/sources/toonzlib/txshsimplelevel.cpp @@ -1888,15 +1888,17 @@ TImageP TXshSimpleLevel::createEmptyFrame() case PLI_XSHLEVEL: result = new TVectorImage; - CASE MESH_XSHLEVEL : assert(false); // Not implemented yet + case MESH_XSHLEVEL: + assert(false); // Not implemented yet + break; - DEFAULT : { + default: { // normally the image must have the level->getProperties()->getImageDpi(). // if this value is missing (for some reason - can this happen, ever?) then // we use the getDpi() (that is the current dpi, e.g. cameraDpi or customDpi). TPointD dpi = getProperties()->getImageDpi(); - /*-- + /*-- tgaからtlvにconvertしたものをInsert Pasteしたとき、 ペーストしたフレームにのみDPIが付いてしまうので、この処理は省く --*/ @@ -1921,6 +1923,8 @@ TImageP TXshSimpleLevel::createEmptyFrame() result = ri; } + + break; } } @@ -2273,9 +2277,11 @@ TRectD TXshSimpleLevel::getBBox(const TFrameId &fid) const if (TMeshImageP mi = img) mi->getDpi(dpiX, dpiY); + + break; } - DEFAULT : { + default: { // Raster case: retrieve the image info from the ImageManager const std::string &imageId = getImageId(fid); @@ -2289,6 +2295,8 @@ TRectD TXshSimpleLevel::getBBox(const TFrameId &fid) const if (info->m_dpix > 0.0 && info->m_dpiy > 0.0) dpiX = info->m_dpix, dpiY = info->m_dpiy; + + break; } } diff --git a/toonz/sources/toonzqt/flipconsole.cpp b/toonz/sources/toonzqt/flipconsole.cpp index 3056e69..50b732a 100644 --- a/toonz/sources/toonzqt/flipconsole.cpp +++ b/toonz/sources/toonzqt/flipconsole.cpp @@ -644,10 +644,14 @@ void FlipConsole::enableButton(UINT button, bool enable, bool doShowHide) case eGRed: if (m_doubleRed) m_doubleRed->setEnabledSecondButton(enable); - CASE eGGreen : if (m_doubleGreen) - m_doubleGreen->setEnabledSecondButton(enable); - CASE eGBlue : if (m_doubleBlue) - m_doubleBlue->setEnabledSecondButton(enable); + break; + case eGGreen: + if (m_doubleGreen) + m_doubleGreen->setEnabledSecondButton(enable); + break; + case eGBlue: + if (m_doubleBlue) + m_doubleBlue->setEnabledSecondButton(enable); break; } } @@ -1376,53 +1380,61 @@ void FlipConsole::doButtonPressed(UINT button) switch (button) { case eFirst: m_currentFrame = from; - CASE ePrev : m_currentFrame = (m_currentFrame - m_step < from) ? from : m_currentFrame - m_step; - CASE eNext : m_currentFrame = (m_currentFrame + m_step > to) ? to : m_currentFrame + m_step; - CASE eLast : m_currentFrame = to; - CASE ePlay : __OR eLoop: - { - //if ( isChecked(ePlay, false); - //setChecked(eLoop, false); - m_editCurrFrame->disconnect(); - m_currFrameSlider->disconnect(); + break; + case ePrev: + m_currentFrame = (m_currentFrame - m_step < from) ? from : m_currentFrame - m_step; + break; + case eNext: + m_currentFrame = (m_currentFrame + m_step > to) ? to : m_currentFrame + m_step; + break; + case eLast: + m_currentFrame = to; + break; + case ePlay: + case eLoop: + //if ( isChecked(ePlay, false); + //setChecked(eLoop, false); + m_editCurrFrame->disconnect(); + m_currFrameSlider->disconnect(); - m_isPlay = (button == ePlay); + m_isPlay = (button == ePlay); - if (linked && m_isLinkedPlaying) - return; + if (linked && m_isLinkedPlaying) + return; - if ((m_fps == 0 || m_framesCount == 0) && m_playbackExecutor.isRunning()) { - doButtonPressed(ePause); - if (m_fpsLabel) - m_fpsLabel->setText(tr(" FPS ") + QString::number(m_fps)); - if (m_fpsField) - m_fpsField->setLineEditBackgroundColor(Qt::transparent); - return; - } + if ((m_fps == 0 || m_framesCount == 0) && m_playbackExecutor.isRunning()) { + doButtonPressed(ePause); if (m_fpsLabel) - m_fpsLabel->setText(tr(" FPS ") + "/"); + m_fpsLabel->setText(tr(" FPS ") + QString::number(m_fps)); if (m_fpsField) - m_fpsField->setLineEditBackgroundColor(Qt::red); - - m_playbackExecutor.resetFps(m_fps); - if (!m_playbackExecutor.isRunning()) - m_playbackExecutor.start(); - m_isLinkedPlaying = linked; + m_fpsField->setLineEditBackgroundColor(Qt::transparent); + return; + } + if (m_fpsLabel) + m_fpsLabel->setText(tr(" FPS ") + "/"); + if (m_fpsField) + m_fpsField->setLineEditBackgroundColor(Qt::red); - m_reverse = (m_fps < 0); + m_playbackExecutor.resetFps(m_fps); + if (!m_playbackExecutor.isRunning()) + m_playbackExecutor.start(); + m_isLinkedPlaying = linked; - if (!linked) { - //if the play button pressed at the end frame, then go back to the start frame and play - if (m_currentFrame <= from || m_currentFrame >= to) //the first frame of the playback is drawn right now - m_currentFrame = m_reverse ? to : from; - m_settings.m_recomputeIfNeeded = true; - m_consoleOwner->onDrawFrame(m_currentFrame, m_settings); - } + m_reverse = (m_fps < 0); - emit playStateChanged(true); - return; + if (!linked) { + //if the play button pressed at the end frame, then go back to the start frame and play + if (m_currentFrame <= from || m_currentFrame >= to) //the first frame of the playback is drawn right now + m_currentFrame = m_reverse ? to : from; + m_settings.m_recomputeIfNeeded = true; + m_consoleOwner->onDrawFrame(m_currentFrame, m_settings); } - CASE ePause : m_isLinkedPlaying = false; + + emit playStateChanged(true); + return; + + case ePause: + m_isLinkedPlaying = false; if (m_playbackExecutor.isRunning()) m_playbackExecutor.abort(); @@ -1451,86 +1463,94 @@ void FlipConsole::doButtonPressed(UINT button) connect(m_currFrameSlider, SIGNAL(flipSliderReleased()), this, SLOT(onSliderRelease())); emit playStateChanged(false); return; - /*CASE eMatte: - if (isChecked(eMatte)) - { - //setChecked(eRed, false); - //setChecked(eGreen, false); - //setChecked(eBlue, false); - setChecked(eGRed, false); + + case eGRed: + case eGGreen: + case eGBlue: + case eRed: + case eGreen: + case eBlue: + case eMatte: { + if (button != eGRed) + setChecked(eGRed, false); + if (button != eGGreen) setChecked(eGGreen, false); - setChecked(eGBlue, false); - m_settings.m_colorMask = TRop::MChan; - } - else - m_settings.m_colorMask = 0; - - if (m_doubleRed) - { - m_doubleRed->update(); - m_doubleGreen->update(); - m_doubleBlue->update(); - }*/ - - CASE eGRed : __OR eGGreen : __OR eGBlue : __OR eRed : __OR eGreen : __OR eBlue : __OR eMatte: - { + if (button != eGBlue) + setChecked(eGBlue, false); + + if (button == eGRed || button == eGGreen || button == eGBlue) { + m_settings.m_greytones = isChecked(button); + setChecked(eRed, false); + setChecked(eGreen, false); + setChecked(eBlue, false); + setChecked(eMatte, false); + } else + m_settings.m_greytones = false; + + if (m_doubleRed) { + m_doubleRed->update(); + m_doubleGreen->update(); + m_doubleBlue->update(); + } - if (button != eGRed) - setChecked(eGRed, false); - if (button != eGGreen) - setChecked(eGGreen, false); - if (button != eGBlue) - setChecked(eGBlue, false); - - if (button == eGRed || button == eGGreen || button == eGBlue) { - m_settings.m_greytones = isChecked(button); - setChecked(eRed, false); - setChecked(eGreen, false); - setChecked(eBlue, false); - setChecked(eMatte, false); - } else - m_settings.m_greytones = false; - - if (m_doubleRed) { - m_doubleRed->update(); - m_doubleGreen->update(); - m_doubleBlue->update(); - } + int colorMask = 0; + if (isChecked(eRed) || isChecked(eGRed)) + colorMask = colorMask | TRop::RChan; + if (isChecked(eGreen) || isChecked(eGGreen)) + colorMask = colorMask | TRop::GChan; + if (isChecked(eBlue) || isChecked(eGBlue)) + colorMask = colorMask | TRop::BChan; + if (isChecked(eMatte)) + colorMask = colorMask | TRop::MChan; - int colorMask = 0; - if (isChecked(eRed) || isChecked(eGRed)) - colorMask = colorMask | TRop::RChan; - if (isChecked(eGreen) || isChecked(eGGreen)) - colorMask = colorMask | TRop::GChan; - if (isChecked(eBlue) || isChecked(eGBlue)) - colorMask = colorMask | TRop::BChan; - if (isChecked(eMatte)) - colorMask = colorMask | TRop::MChan; - - if (colorMask == (TRop::RChan | TRop::GChan | TRop::BChan) || - colorMask == (TRop::RChan | TRop::GChan | TRop::BChan | TRop::MChan)) - m_settings.m_colorMask = 0; - else - m_settings.m_colorMask = colorMask; - } - CASE eSound : - //emit soundEnabled(isChecked(eSound)); - CASE eWhiteBg : __OR eBlackBg : __OR eCheckBg : m_settings.m_bg = (EGadget)button; + if (colorMask == (TRop::RChan | TRop::GChan | TRop::BChan) || + colorMask == (TRop::RChan | TRop::GChan | TRop::BChan | TRop::MChan)) + m_settings.m_colorMask = 0; + else + m_settings.m_colorMask = colorMask; + break; + } + case eSound: + //emit soundEnabled(isChecked(eSound)); + break; + + case eWhiteBg: + case eBlackBg: + case eCheckBg: + m_settings.m_bg = (EGadget)button; FlipBookWhiteBgToggle = isChecked(eWhiteBg); FlipBookBlackBgToggle = isChecked(eBlackBg); FlipBookCheckBgToggle = isChecked(eCheckBg); - CASE FlipConsole::eCompare : m_settings.m_doCompare = !m_settings.m_doCompare; - CASE eHisto : CASE eSaveImg : CASE eSave : - //nothing to do - return; - CASE eDefineSubCamera : - //nothing to do - return; - CASE eDefineLoadBox : onLoadBox(true); - CASE eUseLoadBox : onLoadBox(false); - CASE eFilledRaster : return; - DEFAULT: + break; + + case FlipConsole::eCompare: + m_settings.m_doCompare = !m_settings.m_doCompare; + break; + + case eHisto: + case eSaveImg: + case eSave: + //nothing to do + return; + + case eDefineSubCamera: + //nothing to do + return; + + case eDefineLoadBox: + onLoadBox(true); + break; + + case eUseLoadBox: + onLoadBox(false); + break; + + case eFilledRaster: + return; + + default: assert(false); + break; } m_currFrameSlider->setValue(m_currentFrame); diff --git a/toonz/sources/toonzqt/functionpanel.cpp b/toonz/sources/toonzqt/functionpanel.cpp index 833ac0a..5c702b4 100644 --- a/toonz/sources/toonzqt/functionpanel.cpp +++ b/toonz/sources/toonzqt/functionpanel.cpp @@ -716,20 +716,21 @@ void FunctionPanel::updateGadgets(TDoubleParam *curve) QPointF q = getWinPos(curve, currentPointLeft + speedIn); m_gadgets.push_back(Gadget(SpeedIn, i, q, handleHitRadius, handleHitRadius, pLeft)); } + break; } - CASE TDoubleKeyframe::EaseInOut: - { - QPointF q = getWinPos(curve, kf.m_frame + kf.m_speedIn.x); - m_gadgets.push_back(Gadget(EaseIn, i, q, 6, 15)); - } + case TDoubleKeyframe::EaseInOut: { + QPointF q = getWinPos(curve, kf.m_frame + kf.m_speedIn.x); + m_gadgets.push_back(Gadget(EaseIn, i, q, 6, 15)); + break; + } - CASE TDoubleKeyframe::EaseInOutPercentage: - { - double easeIn = kf.m_speedIn.x * (kf.m_frame - oldKf.m_frame) * 0.01; - QPointF q = getWinPos(curve, kf.m_frame + easeIn); - m_gadgets.push_back(Gadget(EaseInPercentage, i, q, 6, 15)); - } + case TDoubleKeyframe::EaseInOutPercentage: { + double easeIn = kf.m_speedIn.x * (kf.m_frame - oldKf.m_frame) * 0.01; + QPointF q = getWinPos(curve, kf.m_frame + easeIn); + m_gadgets.push_back(Gadget(EaseInPercentage, i, q, 6, 15)); + break; + } } // Right handle @@ -741,22 +742,23 @@ void FunctionPanel::updateGadgets(TDoubleParam *curve) QPointF q = getWinPos(curve, currentPointRight + speedOut); m_gadgets.push_back(Gadget(SpeedOut, i, q, handleHitRadius, handleHitRadius, p)); } + break; } - CASE TDoubleKeyframe::EaseInOut: - { - QPointF q = getWinPos(curve, kf.m_frame + kf.m_speedOut.x); - m_gadgets.push_back(Gadget(EaseOut, i, q, 6, 15)); - } + case TDoubleKeyframe::EaseInOut: { + QPointF q = getWinPos(curve, kf.m_frame + kf.m_speedOut.x); + m_gadgets.push_back(Gadget(EaseOut, i, q, 6, 15)); + break; + } - CASE TDoubleKeyframe::EaseInOutPercentage: - { - double segmentWidth = curve->keyframeIndexToFrame(i + 1) - kf.m_frame; - double easeOut = segmentWidth * kf.m_speedOut.x * 0.01; + case TDoubleKeyframe::EaseInOutPercentage: { + double segmentWidth = curve->keyframeIndexToFrame(i + 1) - kf.m_frame; + double easeOut = segmentWidth * kf.m_speedOut.x * 0.01; - QPointF q = getWinPos(curve, kf.m_frame + easeOut); - m_gadgets.push_back(Gadget(EaseOutPercentage, i, q, 6, 15)); - } + QPointF q = getWinPos(curve, kf.m_frame + easeOut); + m_gadgets.push_back(Gadget(EaseOutPercentage, i, q, 6, 15)); + break; + } } } } diff --git a/toonz/sources/toonzqt/functionpaneltools.cpp b/toonz/sources/toonzqt/functionpaneltools.cpp index ee169c1..795f713 100644 --- a/toonz/sources/toonzqt/functionpaneltools.cpp +++ b/toonz/sources/toonzqt/functionpaneltools.cpp @@ -514,8 +514,11 @@ void MoveGroupHandleDragTool::drag(QMouseEvent *e) switch (kf.m_type) { case TDoubleKeyframe::SpeedInOut: setter->setSpeedOut(kf.m_speedOut); - CASE TDoubleKeyframe::EaseInOut : setter->setEaseOut(kf.m_speedOut.x); - DEFAULT: + break; + case TDoubleKeyframe::EaseInOut: + setter->setEaseOut(kf.m_speedOut.x); + break; + default: assert(false); } } else if (m_handle == 102) // aagghhrrr @@ -525,8 +528,11 @@ void MoveGroupHandleDragTool::drag(QMouseEvent *e) switch (kf.m_prevType) { case TDoubleKeyframe::SpeedInOut: setter->setSpeedIn(kf.m_speedIn); - CASE TDoubleKeyframe::EaseInOut : setter->setEaseIn(kf.m_speedIn.x); - DEFAULT: + break; + case TDoubleKeyframe::EaseInOut: + setter->setEaseIn(kf.m_speedIn.x); + break; + default: assert(false); } } diff --git a/toonz/sources/toonzqt/fxschematicnode.cpp b/toonz/sources/toonzqt/fxschematicnode.cpp index d896fa5..c87b094 100644 --- a/toonz/sources/toonzqt/fxschematicnode.cpp +++ b/toonz/sources/toonzqt/fxschematicnode.cpp @@ -601,28 +601,26 @@ FxPainter::FxPainter(FxSchematicNode *parent, double width, double height, case eMacroFx: case eNormalLayerBlendingFx: case eNormalMatteFx: - case eNormalImageAdjustFx: { + case eNormalImageAdjustFx: m_label = QString::fromStdWString(TStringTable::translate(parent->getFx()->getFxType())); setToolTip(QString::fromStdWString(parent->getFx()->getFxId())); - } - - CASE eZeraryFx: - { - TZeraryColumnFx *zfx = dynamic_cast(parent->getFx()); - if (zfx) { - TFx *zeraryFx = zfx->getZeraryFx(); - if (zeraryFx) { - m_label = QString::fromStdWString(TStringTable::translate(zeraryFx->getFxType())); - setToolTip(QString::fromStdWString(zeraryFx->getFxId())); - } + break; + case eZeraryFx: { + TZeraryColumnFx *zfx = dynamic_cast(parent->getFx()); + if (zfx) { + TFx *zeraryFx = zfx->getZeraryFx(); + if (zeraryFx) { + m_label = QString::fromStdWString(TStringTable::translate(zeraryFx->getFxType())); + setToolTip(QString::fromStdWString(zeraryFx->getFxId())); } } + break; + } - CASE eGroupedFx: - { - m_label = QString("Group ") + QString::number(parent->getFx()->getAttributes()->getGroupId()); - setToolTip(m_label); - } + case eGroupedFx: + m_label = QString("Group ") + QString::number(parent->getFx()->getAttributes()->getGroupId()); + setToolTip(m_label); + break; } } diff --git a/toonz/sources/toonzqt/icongenerator.cpp b/toonz/sources/toonzqt/icongenerator.cpp index ea21027..219d02c 100644 --- a/toonz/sources/toonzqt/icongenerator.cpp +++ b/toonz/sources/toonzqt/icongenerator.cpp @@ -1462,22 +1462,23 @@ QPixmap IconGenerator::getIcon(TXshLevel *xl, const TFrameId &fid, bool filmStri case OVL_XSHLEVEL: case TZI_XSHLEVEL: addTask(id, new RasterImageIconRenderer(id, iconSize, sl, fid)); - - CASE PLI_XSHLEVEL : addTask(id, new VectorImageIconRenderer(id, iconSize, sl, fid, m_settings)); - - CASE TZP_XSHLEVEL: - { - // Yep, we could have rasters, due to a cleanupping process - if (status == TXshSimpleLevel::Scanned) - addTask(id, new RasterImageIconRenderer(id, iconSize, sl, fid)); - else - addTask(id, new ToonzImageIconRenderer(id, iconSize, sl, fid, m_settings)); - } - - CASE MESH_XSHLEVEL : addTask(id, new MeshImageIconRenderer(id, iconSize, sl, fid, m_settings)); - - DEFAULT: + break; + case PLI_XSHLEVEL: + addTask(id, new VectorImageIconRenderer(id, iconSize, sl, fid, m_settings)); + break; + case TZP_XSHLEVEL: + // Yep, we could have rasters, due to a cleanupping process + if (status == TXshSimpleLevel::Scanned) + addTask(id, new RasterImageIconRenderer(id, iconSize, sl, fid)); + else + addTask(id, new ToonzImageIconRenderer(id, iconSize, sl, fid, m_settings)); + break; + case MESH_XSHLEVEL: + addTask(id, new MeshImageIconRenderer(id, iconSize, sl, fid, m_settings)); + break; + default: assert(false); + break; } m_settings = oldSettings; @@ -1502,23 +1503,23 @@ void IconGenerator::invalidate(TXshLevel *xl, const TFrameId &fid, bool onlyFilm case OVL_XSHLEVEL: case TZI_XSHLEVEL: addTask(id, new RasterImageIconRenderer(id, getIconSize(), sl, fid)); - - CASE PLI_XSHLEVEL : removeIcon(id); + break; + case PLI_XSHLEVEL: + removeIcon(id); addTask(id, new VectorImageIconRenderer(id, getIconSize(), sl, fid, m_settings)); - - CASE TZP_XSHLEVEL: - { - int status = sl->getFrameStatus(fid); - if (status == TXshSimpleLevel::Scanned) - addTask(id, new RasterImageIconRenderer(id, getIconSize(), sl, fid)); - else - addTask(id, new ToonzImageIconRenderer(id, getIconSize(), sl, fid, m_settings)); - } - - CASE MESH_XSHLEVEL : addTask(id, new MeshImageIconRenderer(id, getIconSize(), sl, fid, m_settings)); - - DEFAULT: + break; + case TZP_XSHLEVEL: + if (sl->getFrameStatus(fid) == TXshSimpleLevel::Scanned) + addTask(id, new RasterImageIconRenderer(id, getIconSize(), sl, fid)); + else + addTask(id, new ToonzImageIconRenderer(id, getIconSize(), sl, fid, m_settings)); + break; + case MESH_XSHLEVEL: + addTask(id, new MeshImageIconRenderer(id, getIconSize(), sl, fid, m_settings)); + break; + default: assert(false); + break; } if (onlyFilmStrip) @@ -1539,22 +1540,22 @@ void IconGenerator::invalidate(TXshLevel *xl, const TFrameId &fid, bool onlyFilm case OVL_XSHLEVEL: case TZI_XSHLEVEL: addTask(id, new RasterImageIconRenderer(id, TDimension(80, 60), sl, fid)); - - CASE PLI_XSHLEVEL : addTask(id, new VectorImageIconRenderer(id, TDimension(80, 60), sl, fid, m_settings)); - - CASE TZP_XSHLEVEL: - { - int status = sl->getFrameStatus(fid); - if (status == TXshSimpleLevel::Scanned) - addTask(id, new RasterImageIconRenderer(id, TDimension(80, 60), sl, fid)); - else - addTask(id, new ToonzImageIconRenderer(id, TDimension(80, 60), sl, fid, m_settings)); - } - - CASE MESH_XSHLEVEL : addTask(id, new MeshImageIconRenderer(id, TDimension(80, 60), sl, fid, m_settings)); - - DEFAULT: + break; + case PLI_XSHLEVEL: + addTask(id, new VectorImageIconRenderer(id, TDimension(80, 60), sl, fid, m_settings)); + break; + case TZP_XSHLEVEL: + if (sl->getFrameStatus(fid) == TXshSimpleLevel::Scanned) + addTask(id, new RasterImageIconRenderer(id, TDimension(80, 60), sl, fid)); + else + addTask(id, new ToonzImageIconRenderer(id, TDimension(80, 60), sl, fid, m_settings)); + break; + case MESH_XSHLEVEL: + addTask(id, new MeshImageIconRenderer(id, TDimension(80, 60), sl, fid, m_settings)); + break; + default: assert(false); + break; } m_settings = oldSettings; diff --git a/toonz/sources/toonzqt/lineedit.cpp b/toonz/sources/toonzqt/lineedit.cpp index debde80..6f1c8a0 100644 --- a/toonz/sources/toonzqt/lineedit.cpp +++ b/toonz/sources/toonzqt/lineedit.cpp @@ -43,13 +43,21 @@ void LineEdit::keyPressEvent(QKeyEvent *event) m_isReturnPressed = false; if (m_forbiddenSpecialChars) { switch (event->key()) { - CASE Qt::Key_Backslash : __OR Qt::Key_Slash : __OR Qt::Key_Colon : __OR Qt::Key_Asterisk : __OR Qt::Key_Question : __OR Qt::Key_QuoteDbl : __OR Qt::Key_Greater : __OR Qt::Key_Less : __OR Qt::Key_Bar : __OR Qt::Key_Period: - { - DVGui::info(tr("A file name cannot contains any of the following chracters: /\\:*?\"<>|.")); - return; - } + case Qt::Key_Backslash: + case Qt::Key_Slash: + case Qt::Key_Colon: + case Qt::Key_Asterisk: + case Qt::Key_Question: + case Qt::Key_QuoteDbl: + case Qt::Key_Greater: + case Qt::Key_Less: + case Qt::Key_Bar: + case Qt::Key_Period: + DVGui::info(tr("A file name cannot contains any of the following chracters: /\\:*?\"<>|.")); + return; default: QLineEdit::keyPressEvent(event); + break; } } else QLineEdit::keyPressEvent(event); diff --git a/toonz/sources/toonzqt/styleeditor.cpp b/toonz/sources/toonzqt/styleeditor.cpp index 496b1ea..62cdcba 100644 --- a/toonz/sources/toonzqt/styleeditor.cpp +++ b/toonz/sources/toonzqt/styleeditor.cpp @@ -2654,63 +2654,69 @@ void SettingsPage::setStyle(const TColorStyleP &editedStyle) m_paramsLayout->addWidget(checkBox, p, 1); ret = QObject::connect(checkBox, SIGNAL(toggled(bool)), this, SLOT(onValueChanged())) && ret; + + break; } - CASE TColorStyle::INT: - { - DVGui::IntField *intField = new DVGui::IntField; - m_paramsLayout->addWidget(intField, p, 1); + case TColorStyle::INT: { + DVGui::IntField *intField = new DVGui::IntField; + m_paramsLayout->addWidget(intField, p, 1); - int min, max; - m_editedStyle->getParamRange(p, min, max); + int min, max; + m_editedStyle->getParamRange(p, min, max); - intField->setRange(min, max); + intField->setRange(min, max); - ret = QObject::connect(intField, SIGNAL(valueChanged(bool)), this, SLOT(onValueChanged(bool))) && ret; - } + ret = QObject::connect(intField, SIGNAL(valueChanged(bool)), this, SLOT(onValueChanged(bool))) && ret; - CASE TColorStyle::ENUM: - { - QComboBox *comboBox = new QComboBox; - m_paramsLayout->addWidget(comboBox, p, 1); + break; + } - QStringList items; - m_editedStyle->getParamRange(p, items); + case TColorStyle::ENUM: { + QComboBox *comboBox = new QComboBox; + m_paramsLayout->addWidget(comboBox, p, 1); - comboBox->addItems(items); + QStringList items; + m_editedStyle->getParamRange(p, items); - ret = QObject::connect(comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(onValueChanged())) && ret; - } + comboBox->addItems(items); - CASE TColorStyle::DOUBLE: - { - DVGui::DoubleField *doubleField = new DVGui::DoubleField; - m_paramsLayout->addWidget(doubleField, p, 1); + ret = QObject::connect(comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(onValueChanged())) && ret; - double min, max; - m_editedStyle->getParamRange(p, min, max); + break; + } - doubleField->setRange(min, max); + case TColorStyle::DOUBLE: { + DVGui::DoubleField *doubleField = new DVGui::DoubleField; + m_paramsLayout->addWidget(doubleField, p, 1); - ret = QObject::connect(doubleField, SIGNAL(valueChanged(bool)), this, SLOT(onValueChanged(bool))) && ret; - } + double min, max; + m_editedStyle->getParamRange(p, min, max); + + doubleField->setRange(min, max); - CASE TColorStyle::FILEPATH: - { - DVGui::FileField *fileField = new DVGui::FileField; - m_paramsLayout->addWidget(fileField, p, 1); + ret = QObject::connect(doubleField, SIGNAL(valueChanged(bool)), this, SLOT(onValueChanged(bool))) && ret; - QStringList extensions; - m_editedStyle->getParamRange(p, extensions); + break; + } - fileField->setFileMode(QFileDialog::AnyFile); - fileField->setFilters(extensions); + case TColorStyle::FILEPATH: { + DVGui::FileField *fileField = new DVGui::FileField; + m_paramsLayout->addWidget(fileField, p, 1); - fileField->setPath(QString::fromStdWString( - editedStyle->getParamValue(TColorStyle::TFilePath_tag(), p).getWideString())); + QStringList extensions; + m_editedStyle->getParamRange(p, extensions); - ret = QObject::connect(fileField, SIGNAL(pathChanged()), this, SLOT(onValueChanged())) && ret; - } + fileField->setFileMode(QFileDialog::AnyFile); + fileField->setFilters(extensions); + + fileField->setPath(QString::fromStdWString( + editedStyle->getParamValue(TColorStyle::TFilePath_tag(), p).getWideString())); + + ret = QObject::connect(fileField, SIGNAL(pathChanged()), this, SLOT(onValueChanged())) && ret; + + break; + } } assert(ret); @@ -2744,40 +2750,46 @@ void SettingsPage::updateValues() m_paramsLayout->itemAtPosition(p, 1)->widget()); checkBox->setChecked(m_editedStyle->getParamValue(TColorStyle::bool_tag(), p)); + + break; } - CASE TColorStyle::INT: - { - DVGui::IntField *intField = static_cast( - m_paramsLayout->itemAtPosition(p, 1)->widget()); + case TColorStyle::INT: { + DVGui::IntField *intField = static_cast( + m_paramsLayout->itemAtPosition(p, 1)->widget()); - intField->setValue(m_editedStyle->getParamValue(TColorStyle::int_tag(), p)); - } + intField->setValue(m_editedStyle->getParamValue(TColorStyle::int_tag(), p)); - CASE TColorStyle::ENUM: - { - QComboBox *comboBox = static_cast( - m_paramsLayout->itemAtPosition(p, 1)->widget()); + break; + } - comboBox->setCurrentIndex(m_editedStyle->getParamValue(TColorStyle::int_tag(), p)); - } + case TColorStyle::ENUM: { + QComboBox *comboBox = static_cast( + m_paramsLayout->itemAtPosition(p, 1)->widget()); - CASE TColorStyle::DOUBLE: - { - DVGui::DoubleField *doubleField = static_cast( - m_paramsLayout->itemAtPosition(p, 1)->widget()); + comboBox->setCurrentIndex(m_editedStyle->getParamValue(TColorStyle::int_tag(), p)); - doubleField->setValue(m_editedStyle->getParamValue(TColorStyle::double_tag(), p)); - } + break; + } - CASE TColorStyle::FILEPATH: - { - DVGui::FileField *fileField = static_cast( - m_paramsLayout->itemAtPosition(p, 1)->widget()); + case TColorStyle::DOUBLE: { + DVGui::DoubleField *doubleField = static_cast( + m_paramsLayout->itemAtPosition(p, 1)->widget()); - fileField->setPath(QString::fromStdWString( - m_editedStyle->getParamValue(TColorStyle::TFilePath_tag(), p).getWideString())); - } + doubleField->setValue(m_editedStyle->getParamValue(TColorStyle::double_tag(), p)); + + break; + } + + case TColorStyle::FILEPATH: { + DVGui::FileField *fileField = static_cast( + m_paramsLayout->itemAtPosition(p, 1)->widget()); + + fileField->setPath(QString::fromStdWString( + m_editedStyle->getParamValue(TColorStyle::TFilePath_tag(), p).getWideString())); + + break; + } } } } @@ -2823,17 +2835,21 @@ void SettingsPage::onValueChanged(bool isDragging) switch (m_editedStyle->getParamType(p)) { case TColorStyle::BOOL: m_editedStyle->setParamValue(p, static_cast(senderWidget)->isChecked()); - - CASE TColorStyle::INT : m_editedStyle->setParamValue(p, static_cast(senderWidget)->getValue()); - - CASE TColorStyle::ENUM : m_editedStyle->setParamValue(p, static_cast(senderWidget)->currentIndex()); - - CASE TColorStyle::DOUBLE : m_editedStyle->setParamValue(p, static_cast(senderWidget)->getValue()); - - CASE TColorStyle::FILEPATH: + break; + case TColorStyle::INT: + m_editedStyle->setParamValue(p, static_cast(senderWidget)->getValue()); + break; + case TColorStyle::ENUM: + m_editedStyle->setParamValue(p, static_cast(senderWidget)->currentIndex()); + break; + case TColorStyle::DOUBLE: + m_editedStyle->setParamValue(p, static_cast(senderWidget)->getValue()); + break; + case TColorStyle::FILEPATH: { const QString &string = static_cast(senderWidget)->getPath(); m_editedStyle->setParamValue(p, TFilePath(string.toStdWString())); + break; } } diff --git a/toonz/sources/toonzqt/tmessageviewer.cpp b/toonz/sources/toonzqt/tmessageviewer.cpp index 3232361..c501d35 100644 --- a/toonz/sources/toonzqt/tmessageviewer.cpp +++ b/toonz/sources/toonzqt/tmessageviewer.cpp @@ -120,9 +120,13 @@ void TMessageRepository::messageReceived(int type, const QString &message) switch (type) { case DVGui::INFORMATION: m_sim->appendRow(new QStandardItem(gGreenIcon, message)); - CASE DVGui::WARNING : m_sim->appendRow(new QStandardItem(gYellowIcon, message)); - CASE DVGui::CRITICAL : m_sim->appendRow(new QStandardItem(gRedIcon, message)); - DEFAULT:; + break; + case DVGui::WARNING: + m_sim->appendRow(new QStandardItem(gYellowIcon, message)); + break; + case DVGui::CRITICAL: + m_sim->appendRow(new QStandardItem(gRedIcon, message)); + break; } if (type == DVGui::CRITICAL || (type == DVGui::WARNING && !TMessageViewer::isTMsgVisible()))