Table of Contents

Namespace RetroEditor.Plugins

Classes

ZXSpectrum48ImageHelper

Helper class for rendering a ZX Spectrum 48K screen, this will probably be abstracted out to a more generic class in the future.

Structs

Color4B

Represents a color with four components (Red, Green, Blue, Alpha) using byte values

Line

Represents a line in 3D space defined by two vertices and a color

Pixel

A pixel in an image, 8:8:8:8 RGBA format

Point

Represents a point in 3D space with a position and color

Triangle

Represents a triangle in 3D space defined by three vertices

Vector3F

Represents a 3D vector with float components

Interfaces

IBitmapImage

Interface for a bitmap image - used with the BitmapWidget class

IBitmapPalette

Interface for a palette - used with the PaletteWidget class

IEditor

Editor interface - used to interact with the editor

IImage

Interface for an image - used by the ImageView class

ILayer

Interface for a layer in a tile map

ILayerWithFlip

Interface for a layer that supports flipping tiles

IMemoryAccess

Interface for accessing memory

IMenu

Interface for creating menus

IMenuItem

Represents a menu item

IMenuProvider

Interface for providing menus Allows a plugin to provide a set of menus to the editor

IObject

Represents an interface for UI widgets that defines basic properties and methods.

IObjectMap

Interface for an object map - used by the ObjectMapWidget class

IPlayerControls

Interface for libretro emulator player

IPlayerWindowExtension

Interface to allow a plugin to add widgets to the player window.

IRender3DWidget

Interface for a 3D widget that renders a 3D scene

IRetroPlugin

The primary interface to implement when developing a new plugin

ISave

Interface for saving data, intended to be used to generate the final modded game At present only implemented by ZXSpectrumTape

ISystemPlugin

Defines a system plugin (e.g. Megadrive, NES, etc)

ITile

Interface for a tile - used by the TileMapWidget class

ITileMap

Interface for a tile map - used by the TileMapWidget class

ITilePalette

Interface for a tile map palette - used by the TileMapWidget class

IUserWindow

Interface for a window that can be opened by the user.

IWidget

Interface for creating widgets

IWidgetCheckable

Interface for a widget that can be checked or unchecked

IWidgetEnableable

Interface for a widget that can be enabled or disabled

IWidgetHandleable

Interface for a widget that can notify of a value change

IWidgetItem

Interface for a widget item that can be added to a window

IWidgetLabel

Interface for a widget that can display a label

IWidgetRanged

Interface for a widget that has a ranged value

Enums

FlipState

Flags to indicate the flip state of a tile in a layer

LogType

The type of the Log Message, used to categorize the message.

MemoryEndian

Endianess of memory - used to determine how to read/write multi-byte values

ReadKind

Memory region to read from

WriteKind

Memory region to write to

Delegates

ChangedEventHandler

Delegate for a changed event. Would be called if a value changes in a widget that supports it

MenuEventHandler

Callback for menu events