Class PaintBuffer
Klasse, die die Darstellung auf dem Bildschirm realisiert. Die Klasse hält (z.Z.) 4 Bitmaps, die nacheinander und transparent in das Fenster (genauer in das Graphics Objekt des Parameters e beim Aufruf von Compose) kopiert werden. Für jedes Bitmap gibt es ein eigenes "Invalid" Rechteck bzw. Region. Der Ablauf ist wie folgt:
- irgend etwas ändert sich (z.B das Raster, die Markierung, ein geometrisches Objekt u.s.w.). Das muss zur Folge haben, dass InvalidateXxx für den entsprechenden Aspekt (z.B. InvalidateDrawing für die geometrischen Objekte, InvalidateSelect für die Markierung) aufgerufen wird. Die Invalid-Bereiche werden für die einzelnen Aspekte akkumuliert. Irgendwann erfolgt der Aufruf von Compose (gewöhnlich ausgelöst durch den Paint Event des Controls)Dort versucht nun diese Klasse das Bild neu zusammenzusetzten. Ist der Invalid-Bereich eines Aspektes leer, dann ist das zugehörige Bitmap aktuell, d.h. kann so verwendet werden. Wenn nicht, so muss der Bereich neu gezeichnet werden. Compose löst den RepaintXxxEvent (z.B. RepaintDrawingEvent) aus. Die Handler dieses Events (gewöhnlich nur einer) bekommen ein PaintToGDI Objekt, mit dessen Hilfe sie zeichnen können.
Inheritance
System.Object
PaintBuffer
Inherited Members
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: CADability
Assembly: CADability.dll
Syntax
public class PaintBuffer
Methods
| Improve this Doc View SourceForceInvalidateAll()
Declaration
public void ForceInvalidateAll()
HScroll(Int32)
Declaration
public void HScroll(int Offset)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | Offset |
InvalidateActive(Rectangle)
Declaration
public void InvalidateActive(Rectangle ext)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Drawing.Rectangle | ext |
InvalidateBackground(Rectangle)
Declaration
public void InvalidateBackground(Rectangle ext)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Drawing.Rectangle | ext |
InvalidateDrawing(Rectangle)
Declaration
public void InvalidateDrawing(Rectangle ext)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Drawing.Rectangle | ext |
InvalidateSelect(Rectangle)
Declaration
public void InvalidateSelect(Rectangle ext)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Drawing.Rectangle | ext |
RectangleFromPoints(Point[])
Declaration
public static Rectangle RectangleFromPoints(params Point[] PointList)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Drawing.Point[] | PointList |
Returns
| Type | Description |
|---|---|
| System.Drawing.Rectangle |
Union(Rectangle, Rectangle)
liefert einRechteck, welches die beiden im Parameter gegeben Rechtecke umfasst
Declaration
public static Rectangle Union(Rectangle r1, Rectangle r2)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Drawing.Rectangle | r1 | |
| System.Drawing.Rectangle | r2 |
Returns
| Type | Description |
|---|---|
| System.Drawing.Rectangle |
VScroll(Int32)
Declaration
public void VScroll(int Offset)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | Offset |