예제 #1
0
        public PixelFormat
        (
            uint?format        = null,
            Palette *palette   = null,
            byte?bitsPerPixel  = null,
            byte?bytesPerPixel = null,
            uint?rmask         = null,
            uint?gmask         = null,
            uint?bmask         = null,
            uint?amask         = null,
            byte?rloss         = null,
            byte?gloss         = null,
            byte?bloss         = null,
            byte?aloss         = null,
            byte?rshift        = null,
            byte?gshift        = null,
            byte?bshift        = null,
            byte?ashift        = null,
            int?refcount       = null,
            PixelFormat *next  = null
        ) : this()
        {
            if (format is not null)
            {
                Format = format.Value;
            }

            if (palette is not null)
            {
                Palette = palette;
            }

            if (bitsPerPixel is not null)
            {
                BitsPerPixel = bitsPerPixel.Value;
            }

            if (bytesPerPixel is not null)
            {
                BytesPerPixel = bytesPerPixel.Value;
            }

            if (rmask is not null)
            {
                Rmask = rmask.Value;
            }

            if (gmask is not null)
            {
                Gmask = gmask.Value;
            }

            if (bmask is not null)
            {
                Bmask = bmask.Value;
            }

            if (amask is not null)
            {
                Amask = amask.Value;
            }

            if (rloss is not null)
            {
                Rloss = rloss.Value;
            }

            if (gloss is not null)
            {
                Gloss = gloss.Value;
            }

            if (bloss is not null)
            {
                Bloss = bloss.Value;
            }

            if (aloss is not null)
            {
                Aloss = aloss.Value;
            }

            if (rshift is not null)
            {
                Rshift = rshift.Value;
            }

            if (gshift is not null)
            {
                Gshift = gshift.Value;
            }

            if (bshift is not null)
            {
                Bshift = bshift.Value;
            }

            if (ashift is not null)
            {
                Ashift = ashift.Value;
            }

            if (refcount is not null)
            {
                Refcount = refcount.Value;
            }

            if (next is not null)
            {
                Next = next;
            }
        }
예제 #2
0
 public static extern int SetPixelFormatPalette(PixelFormat *format, Palette *palette);
예제 #3
0
 public static extern void FreePalette(Palette *palette);
예제 #4
0
 public static extern int SetPaletteColors(Palette *palette, Color *colors, int firstcolor, int ncolors);
예제 #5
0
 public static extern int SetSurfacePalette(Surface *surface, Palette *palette);