Namespace PaintDotNet
Classes
- BinaryPixelOp
Defines a way to operate on a pixel, or a region of pixels, in a binary fashion. That is, it is a simple function F that takes two parameters and returns a result of the form: c = F(a, b)
- Disposable
Provides a standard implementation of IDisposable and IIsDisposed.
- ExceptionUtil
The purposes of these methods is based on the fact that any method that throws an exception is not a candidate for inlining. Instead, you can call a method in this class which may then allow the calling method to be inlined.
- FileDialogFilterBuilder
A helper class for creating a string to use for the FilterText property of an OpenFileDialog or SaveFileDialog.
- FileType
Represents one type of file that PaintDotNet can load or save.
- FileType<TToken, TWidget>
A strongly typed version of FileType.
- IndexEventArgs
Declares an EventArgs type for an event that needs a single integer, interpreted as an index, as event information.
- LayerList
Basically an ArrayList, but lets the containing Document instance be notified when the list is modified so it can know that it needs to re-render itself.
This implementation also enforces that any contained layer must be of the same dimensions as the document it is contained within. If you try to add a layer that is the wrong size, an exception will be thrown.
- MemoryBlock
Manages an arbitrarily sized block of memory. You can also create child MemoryBlocks which reference a portion of the memory allocated by a parent MemoryBlock. If the parent is disposed, the children will not be valid.
- Metadata
This class exposes two types of metadata: system, and user. It is provided mostly for batching operations: loading all the data, modifying the copy, and then saving back all the data.
- PdnBaseForm
This is the base class for all Forms in Paint.NET.
- PdnRegion
Designed as a proxy to the GDI+ Region class, while allowing for a replacement that won't break code. The main reason for having this right now is to work around some bugs in System.Drawing.Region, especially the memory leak in GetRegionScans().
- RenderArgs
Encapsulates the arguments passed to a Render function. This way we can do on-demand and once-only creation of Bitmap and Graphics objects from a given Surface object.
- Surface
Implements a BGRA32 bitmap used by classic/legacy plugins.
- UnaryPixelOp
Defines a way to operate on a pixel, or a region of pixels, in a unary fashion. That is, it is a simple function F that takes one parameter and returns a result of the form: d = F(c)
- UnaryPixelOps
Provides a set of standard UnaryPixelOps.
- UnaryPixelOps.AverageChannels
Averages the input color's red, green, and blue channels. The alpha component is unaffected.
- UnaryPixelOps.BlendConstant
Blends pixels with the specified constant color.
- UnaryPixelOps.Constant
Always returns a constant color.
- UnaryPixelOps.Identity
Passes through the given color value. result(color) = color
- UnaryPixelOps.Invert
Inverts a pixel's color, and passes through the alpha component.
- UnaryPixelOps.InvertWithAlpha
Inverts a pixel's color and its alpha component.
- UnaryPixelOps.SetAlphaChannel
Specialization of SetChannel that sets the alpha channel.
- UnaryPixelOps.SetAlphaChannelTo255
Specialization of SetAlphaChannel that always sets alpha to 255.
- UnaryPixelOps.SetChannel
Used to set a given channel of a pixel to a given, predefined color. Useful if you want to set only the alpha value of a given region.
- UserBlendOp
Abstract base class that all "user" blend ops derive from. These ops are available in the UI for a user to choose from in order to configure the blending properties of a Layer. See UserBlendOps.cs for guidelines on implementation.
- UserBlendOps
This class contains all the render ops that can be used by the user to configure a layer's blending mode. It also contains helper functions to aid in enumerating and using these blend ops. Credit for mathematical descriptions of many of the blend modes goes to a page on Pegtop Software's website called, "Blend Modes" http://www.pegtop.net/delphi/articles/blendmodes/
- WaitCursorChanger
Simply sets a control's Cursor to the WaitCursor (hourglass) on creation, and sets it back to its original setting upon disposal.
Structs
- ColorBgra
Defines a 32-bit BGRA color value. This is mostly used by legacy "classic" plugins, and is has been superceded by ColorBgra32.
- Pair<T1, T2>
A struct containing two elements.
- ReadOnlySpanChunkEnumerator<T>
Affords the traversal of a large memory region (64-bit length) in terms of ReadOnlySpan.
- SpanChunkEnumerator<T>
Affords the traversal of a large memory region (64-bit length) in terms of Span.
Interfaces
- IFileTypeSaveToken
A base interface for SaveConfigToken wrappers that provides a simpler interface for manipulating the token's properties.
- IInternalImpl
Implemented by interfaces that may be consumed publicly but only implemented internally.
- IJpegFileTypeSaveToken
Provides the ability to read and write the properties for the built-in JPEG FileType's save token.
- IPixelOp
Provides an interface for the methods that UnaryPixelOp and BinaryPixelOp share. For UnaryPixelOp, this produces the function, "dst = F(src)" For BinaryPixelOp, this produces the function, "dst = F(dst, src)"
Enums
- MeasurementUnit
Specifies the unit of measure for the given data.
Delegates
- IndexEventHandler
Declares a delegate type for an event that needs a single integer, interpreted as an index, as event information.