every_door_plugin
library
Classes
-
AddressMarker
-
-
AmenityAgeData
-
This class contains age data for an amenity.
It is used for building a POI tile: the age flags control the checkmark
button, and the disused flag affects the tile style.
Use from to get the data from an OsmChange object, or fill directly.
-
AmenityDescriber
-
Describes an OsmChange object by calling AmenityIndicators.
Without a single indicator added it just prints OsmChange.typeAndName.
-
AmenityIndicator
-
Amenity indicator controls the information present in a POI tile.
Used by AmenityDescriber to build a tile content.
It usually returns a single icon for a missing property, and
maybe some more information when the property is present.
-
AmenityModeDefinition
-
-
AuthController
-
This controller manages an AuthProvider, saving a token to the
local storage and keeping user details in value ready to display.
-
AuthProvider
-
Authentication provider base class. Should know how to login and
to get user details. Also stores an endpoint for making calls.
-
AuthToken
-
Authentication token class. Should be subclasses to contain actual
token data. It's a good idea to add a factory constructor
AuthToken.fromJson to keep serialization and deserialization in one place.
-
BaseModeDefinition
-
-
BaseNote
-
-
BuildingMarker
-
-
ClassicModeDefinition
-
-
ColoredMarker
-
-
ComboOption
-
-
ComboPresetField
-
-
CustomMap
-
General map widget for every map in Every Door. Encloses layer management,
interaction, additional buttons etc etc.
-
CustomMapController
-
-
DrawingStyle
-
-
EditorButton
-
A container representing a button on the editor pane.
-
EditorFields
-
A group of fields in the editor. Only the fields list is mandatory.
-
ElementKind
-
A static factory for ElementKindImpl, which also contains some
pre-defined kinds and supports merging kinds.
-
ElementKindImpl
-
-
EntranceMarker
-
-
EntrancesModeDefinition
-
-
Envelope
-
-
EveryDoorApp
-
This class is used by plugins to interact with the app.
It might be rebuilt often, and contains references to Riverpod
ref and BuildContext (if applicable). And also a ton of convenience
methods.
-
EveryDoorPlugin
-
Parent class for every plugin. None of the methods need to be implemented,
although it would be weird.
-
ExtOverlay
-
-
FieldPrerequisite
-
Tag dependency definition. Basically a structure that defines
which tags and which values should or should not be preset in a tag list.
See https://github.com/ideditor/schema-builder/blob/main/README.md#prerequisitetag
-
Geometry
-
-
IconMarker
-
-
Imagery
-
A data container for an imagery layer. Fields are based on the editor
layer index, and just the identifier and type are required. This is
the super-class for the multitude of implementations, including TMS,
WMS, and vector tiles.
-
LegendController
-
-
LegendItem
-
-
LineString
-
-
Located
-
Super-class for everything that can be displayed on the map.
Obviously, as the editor only supports points, this class contains
only the point location. Also has three service getters to learn
the state of the object. If not needed, it's safe to use default
values: true for isNew and false for everything else.
-
MapButton
-
-
MapButtonColumn
-
-
MapChooserPage
-
-
MapDrawing
-
-
MapNote
-
-
MicromappingModeDefinition
-
-
MultiIcon
-
This class encapsulates monochrome icons.
It replaces IconData class, allowing for raster
and vector images. An image should be rectangular,
recommended dimensions are 256×256.
-
MultiPolygon
-
-
NamedColor
-
-
NotesModeDefinition
-
-
NumberedMarker
-
-
OAuth2AuthProvider
-
Authentication provider for services with OAuth2. Which are
basically the most of them, including OpenStreetMap.
-
OsmChange
-
-
OsmElement
-
An OSM element downloaded from the server.
-
OsmId
-
OSM identifier: a type and a number.
-
OsmMember
-
An OSM relation member. Contains of an OSM id and an optional role.
-
OsmNote
-
-
-
OverlayButtonWidget
-
-
Plugin
-
Plugin metadata. Same as PluginData, but with added service methods
for retrieving localizations and assets. Data read from the plugin
metadata is final, but the active flag can be changed in runtime.
Same with instance: it is initialized when the plugin is made active,
and reset when it is disabled.
-
PluginData
-
Plugin metadata. Basically an identifier and a dictionary
from the bundled yaml file.
-
PluginEvents
-
Plugin events wrapper. Use this class to listen to events. Listeners
are automatically deactivated when the plugin is inactive. All callback
should be asynchronous functions, even when they don't use await.
-
PluginLocalizations
-
-
PluginLocalizationsBranch
-
Localizations wrapper for passing to various parts of code that need
only small parts of the metadata tree. For example, a tree preset
would need "preset.tree" branch for translations. This class allows
to hide the context.
-
PluginPreferences
-
Shadows the shared_preferences module from plugins. Nothing wrong with
using it directly, but this allows us to track preferences by plugin.
Basically adds a prefix to every key, and accesses the app-wide
SharedPreferencesWithCache instance.
-
PluginProviders
-
-
PluginVersion
-
-
PluginVersionRange
-
-
PoiDescriber
-
Description generator for POI tiles. Instances of this interface
are passed to
PoiTile so it can provide all the information
needed to assess the correctness of the data.
-
PoiEditorPage
-
An object editor page. Expects an OSM-like sourced object, that is,
an OsmChange. In particular, the object needs to have tags that
behave in accordance with OSM model, e.g. for lifecycle prefixes.
For editing Located you would need to create your own pages.
-
Polygon
-
-
Preset
-
-
PresetField
-
Field definition. Each field type needs to subclass this one.
There are multiple examples in the
fields directory.
-
PresetFieldContext
-
-
PresetLabel
-
-
RadioComboField
-
-
RadioField
-
Field with multiple choices, presented in a row. It is a part of many
standard fields: combo, radio, checkbox.
-
SimpleDescriber
-
Simple describer returns the OsmChange.typeAndName and nothing else.
It will be crossed out if disused.
-
SizedMarker
-
-
TagMatcher
-
A class for matching tag lists against a set of rules.
Contains rules for individual keys (see ValueMatcher),
and lists of good and missing keys to validate.
-
TextInputField
-
-
TextPresetField
-
-
TypeChooserPage
-
-
UserDetails
-
A base class for user details. Override to add more, e.g. an avatar.
-
ValueMatcher
-
This class matches tag values to a set of rules.