|
| MapProjection (std::shared_ptr< TimerTick > timerTick, std::filesystem::path &xdgDataPath) |
|
| MapProjection (const MapProjection &)=delete |
|
| MapProjection (MapProjection &&)=delete |
|
MapProjection & | operator= (const MapProjection &)=delete |
|
MapProjection & | operator= (MapProjection &&)=delete |
|
std::string_view | nodeId () const noexcept override |
|
void | draw (gm::Context &context, const Position< int > &containerPosition) override |
| Draw the MapProjection.
|
|
Rectangle | layout (gm::Context &context, const Rectangle &screenRect) override |
| Layout the MapProjection.
|
|
void | addedToContainer () override |
| Called when added to a container. More...
|
|
void | cacheCurrentMaps () |
| Add the selected maps to the current cache list and invoke a load if required.
|
|
auto | getQth () const |
|
bool | mapProjectionsValid () const |
| Determine if map projections are valid. More...
|
|
auto | getProjection () const |
| Accessor for the type of projection. More...
|
|
void | drawMapItem (const ImageId &mapItem, gm::Context &context, Rectangle mapRectangle, GeoPosition &geoPosition, MapProjectionType projection, int splitPixel) |
| Render a single icon on the map. More...
|
|
int | projectionSplitPixel (Size drawSize) const |
| Computer the StationMercator split pixel given a map drawing size. More...
|
|
void | drawMapLine (gm::Context &context, AntiAliasedDrawing &drawing, GeoPosition begin, Rectangle mapRectangle, const std::function< GeoPosition(GeoPosition &, bool fine)> &increment) |
| Draw a line on the projected map. More...
|
|
void | drawInterpolate (gm::Context &context, AntiAliasedDrawing &drawing, Rectangle mapRect, GeoPosition &geo0, GeoPosition &geo1) |
|
template<typename Iterator > |
void | drawMapLine (gm::Context &context, AntiAliasedDrawing &drawing, Rectangle mapRect, Iterator first, Iterator last) |
| Draw a line on the projected map using points in a standard container. More...
|
|
void | drawLongitude (gm::Context &context, AntiAliasedDrawing &drawing, double longitude, double latitudeBound, Rectangle mapRect) |
| Draw a line of Longitude at longitude. More...
|
|
void | drawLatitude (gm::Context &context, AntiAliasedDrawing &drawing, double latitude, Rectangle mapRect) |
| Draw a line of Latitude at latitude. More...
|
|
| MapProjection (std::shared_ptr< WebFileCache > mapCache, Size mapSize) |
|
void | initializeComposite () override |
| See Widget::initializeComposite()
|
|
Rectangle | widgetLayout (sdl::Renderer &renderer, Rectangle available, uint layoutStage) override |
| Determine the desired size of the label with text and badge. More...
|
|
void | draw (sdl::Renderer &renderer, Rectangle parentRect) override |
| Draw the Label. More...
|
|
Position | geoToMap (GeoPosition geo, ProjectionType projection, int splitPixel) |
| Convert a GeoPosition in radians to a map Position in pixels. More...
|
|
void | setMoonEphemerisFile (EphemerisFile item, const std::filesystem::path &filePath) |
| Set the Moon ephemeris. More...
|
|
| Widget (const Widget &)=delete |
|
| Widget (Widget &&)=delete |
|
Widget & | operator= (const Widget &)=delete |
|
Widget & | operator= (Widget &&)=delete |
|
std::shared_ptr< Widget > | pointerWidget (const Position< int > &position, const Position< int > &containerPosition) |
| Search for the Widget within which the position lies. More...
|
|
Position< int > | computeScreenPosition () |
| Recursively compute the Widget Position on the Screen. More...
|
|
bool | contains (const Position< int > &position) |
| Determine if a given Screen Position is within the Widget Rectangle. More...
|
|
Application & | getApplication () |
| Get a reference to the Application object. More...
|
|
Application & | getApplication () const |
| const version of getApplication()
|
|
std::shared_ptr< Window > | getWindow () |
| Get the Window ancestor of a Widget. More...
|
|
std::shared_ptr< Window > | getWindow () const |
| const version of getWindow().
|
|
bool | enterEvent () |
| Notify Widget of mouse pointer enter event. More...
|
|
void | setEnterLeaveEventCallback (EventCallback eventCallback) |
| Set the enter callback.
|
|
bool | leaveEvent () |
| Notify Widget of mouse pointer leave event. More...
|
|
void | setLeaveEventCallback (EventCallback eventCallback) |
| Set the leave callback.
|
|
bool | buttonEvent (bool pressed, uint button, uint clicks, bool passed) |
| Notify Widget of mouse button events. More...
|
|
void | setButtonEventCallback (ButtonCallback buttonCallback) |
| Set the button callback.
|
|
bool | mouseMotionEvent (bool pressed, uint button, const Position< int > &mousePos, const Position< int > &relativePos, bool passed) |
| Notify Widget of mouse motion events. More...
|
|
void | setMouseMotionEventCallback (MouseMotionCallback mouseMotionCallback) |
| Set the mouse motion callback.
|
|
bool | mouseScrollEvent (const Position< int > &deltaPos, bool passed) |
| Notify Widget of mouse scroll wheel events. More...
|
|
void | setMouseScrollEventCallback (ScrollCallback scrollCallback) |
| Set the mouse scroll callback.
|
|
bool | keyboardShortcutEvent (uint32_t shortcutCode, bool state, uint repeat) |
| Notify the Widget of a keyboard shortcut invocation. More...
|
|
void | setKeyboardShortcutCallback (KeyboardShortcutCallback keyboardShortcutCallback) |
| Set the keyboard shortcut callback.
|
|
bool | keyTextInputEvent (const std::string &text) |
| Notify the Widget of text input. More...
|
|
void | setTextInputCallback (TextInputCallback textInputCallback) |
| Set the text input callback.
|
|
bool | supportsKeyboardFocus () const |
|
bool | keyboardFocusEvent (bool hasFocus) |
| Notify the Widget when it gains or looses keyboard focus. More...
|
|
void | setKeyboardFocusCallback (KeyboardFocusCallback keyboardFocusCallback) |
| Set the keyboard focus callback.
|
|
bool | keyboardEvent (const SDL_KeyboardEvent &keyboardEvent) |
|
void | setKeyboardEvent (KeyboardEventCallback keyboardEventCallback) |
|
void | setScreenRectangle (const Position< int > &containerPosition) |
| Compute the screen rectangle from the Container screen Position. More...
|
|
Rectangle | getScreenRectangle (const Position< int > &containerPosition) const |
| Get the rectangle occupied by the Visual. More...
|
|
Position< int > | drawPadding (const Position< int > &containerPosition) |
| Pad the drawing location.
|
|
Rectangle | layoutPadding (const Rectangle &screenRect) |
| Pad the layout.
|
|
void | setSize (const Size &size) |
| Set preferred Size.
|
|
Size | getSize () const |
| Get the preferred size.
|
|
void | setPosition (const Position< int > &position) |
| Set preferred Position.
|
|
Position< int > | getPosition () const |
| Get the preferred Position.
|
|
void | setPadding (const Padding &padding) |
| Set Padding.
|
|
void | setScreenRectangle (const Rectangle &screenRect) |
| Set Screen Rectangle.
|
|
constexpr bool | isVisible () const noexcept |
| Check visibility.
|
|
void | setVisible (bool visible) noexcept |
| Set visibility.
|
|
void | setLayoutHint (const LayoutHint &hint) |
| Add a LayoutHint.
|
|
std::optional< int > | getAttachmentHint (LayoutHint::Attachment attachment) |
| Get an AttachmentHint value given a LayoutHint::Attachment. More...
|
|
std::optional< int > | getGridHint (LayoutHint::GridLayoutHint gridLayoutHint) |
| Get a GridLayoutHint value given a LayoutHint::GridLayoutHint. More...
|
|
template<size_t HintClass> |
std::optional< const ValueMap > | getHintMap () const |
|
SemanticGesture | supportedSemanticGestures () const |
| Get supported SemanticGestures.
|
|
void | remove (const std::shared_ptr< Node > &node) |
|
| Node (const std::shared_ptr< Container > &container) |
| Create a node and add it to a Container. More...
|
|
void | setId (const Id &nodeId) noexcept |
| Set Id.
|
|
std::string_view | getId () const |
| Get Id.
|
|
IdPath | getIdPath () const |
| Get the Id Path.
|
|
std::shared_ptr< Container > | container () |
|
std::shared_ptr< Container > | container () const |
|
template<typename C > |
std::shared_ptr< C > | containerAs () |
|
template<typename C > |
std::shared_ptr< C > | containerAs () const |
|
std::shared_ptr< const Node > | getNode () const |
| Get a const std::shared_ptr to this node. More...
|
|
std::shared_ptr< Node > | getNode () |
| Get a std::shared_ptr to this node. More...
|
|
template<typename NodeType > |
std::shared_ptr< const Node > | getNode () const |
| Get a std::shared_ptr<const NodeType> to this node. More...
|
|
template<typename NodeType > |
std::shared_ptr< NodeType > | getNode () |
| Get a std::shared_ptr<NodeType> to this node. More...
|
|
std::shared_ptr< Node > | remove () |
|
| Manager (const Manager &)=delete |
|
| Manager (Manager &&)=delete |
|
Manager & | operator= (const Manager &)=delete |
|
Manager & | operator= (Manager &&)=delete |
|
std::string_view | nodeId () const noexcept override |
|
void | add (const std::shared_ptr< Node > &node) override |
| Add a Node to the contents of the Manager. More...
|
|
void | draw (gm::Context &context, const Position< int > &containerPosition) override |
| Draw the manager and contents. More...
|
|
Rectangle | layout (gm::Context &context, const Rectangle &screenRect) override |
| Layout the Manager and contents. More...
|
|
void | setLayoutManager (std::unique_ptr< LayoutManager > &&layoutManager) |
| Set the layout manager. More...
|
|
std::unique_ptr< LayoutManager > & | layoutManager () |
| Get the LayoutManager. More...
|
|
|
std::shared_ptr< TimerTick > | mTimerTick {} |
| Source of timing information.
|
|
TickProtocol::slot_type | mMapIlluminationTimer {} |
| Slot to receive illumination update time signals on.
|
|
WebCacheProtocol::slot_type | mMapSlot {} |
| The pointer to the map cache. More...
|
|
MapProjectionType | mProjection {} |
| The map projection type.
|
|
MapDepiction | mMapDepiction {MapDepiction::Terrain} |
| The map depiction.
|
|
MapSize | mMapSize {MapSize::Small} |
| The map size.
|
|
bool | mNewSurfaces {} |
| True when new surfaces have been created.
|
|
Size | mMapImgSize {} |
| The size of the map image.
|
|
std::array< gm::Surface, 2 > | mMapSurface {} |
|
std::array< gm::Surface, 2 > | mAzSurface {} |
|
std::array< gm::Surface, 2 > | mMercatorTemp {} |
|
std::array< gm::Surface, 2 > | mAzimuthalTemp {} |
|
std::array< gm::Texture, 2 > | mMercator {} |
| The Mercator projection background and foreground maps.
|
|
std::array< gm::Texture, 2 > | mAzimuthal {} |
| The Azimuthal projection background and foreground maps.
|
|
std::atomic_bool | mAbortFuture {} |
| A flag to abort background processing. More...
|
|
GeoPosition | mQth {45.,-75.} |
| The station location in degrees. More...
|
|
GeoPosition | mQthRad {mQth.toRadians()} |
| The station location in radians.
|
|
std::future< bool > | mComputeAzimuthalMapsFuture |
| The std::future result of computeAzimuthalMaps()
|
|
bool | mMapProjectionsInvalid {true} |
| True when base maps have not been loaded or projected for use.
|
|
std::future< bool > | mForegroundBackgroundFuture |
| The std::future result of setForegroundBackground()
|
|
SignalSerialNumber | mSignalSerialNumber {} |
|
Rose::IconFileItem | mMoonIconSpec {static_cast<ImageId>(set::AppImageId::Moon), Size{0, 0}, "full_moon.png"} |
|
std::stack< set::AppImageId > | mSatelliteIconStack {} |
| A stack for managing the satellite icons.
|
|
bool | mTerrestrialMode {} |
| True when map is in Terrestrial mode, excludes SatelliteMode.
|
|
bool | mSatelliteMode {} |
| True when map is in SatelliteMode, excludes TerrestrialMode.
|
|
bool | mCelestialMode {} |
| True when map is displaying Celestial objects.
|
|
bool | mAnnotationMode {} |
| True when map is displaying Annotations.
|
|
std::string | mSatelliteFavorite {} |
| User selected favorite Satellite.
|
|
std::future< bool > | mFutureAziProj {} |
| A future for the map azimuthal projections.
|
|
std::future< bool > | mFutureSun {} |
| A future for the map sun illumination.
|
|
std::atomic_bool | mNewSurfaces {} |
| True when there are new Surfaces to render into Textures.
|
|
ProjectionType | mProjection {ProjectionType::Mercator} |
| The desired projection display.
|
|
std::shared_ptr< WebFileCache > | mMapCache {} |
|
ImageId | mDayMapImage {} |
| The base day Mercator map image.
|
|
ImageId | mNightMapImage {} |
| The base night Mercator map image.
|
|
GeoPosition | mAntipode {} |
| The station antipode in radians.
|
|
Size | mMapSize {} |
| The size of the base maps in pixels.
|
|
int | mSelectedSatellite {} |
| The Satellite to display tracking for.
|
|
std::array< sdl::Surface, static_cast< std::size_t >MapDataType::MapCount)> | mMapSurface {} |
|
std::array< sdl::Surface, static_cast< std::size_t >MapDataType::MapCount)> | mAzSurface {} |
|
std::array< sdl::Surface, static_cast< std::size_t >MapDataType::MapCount)/2 > | mMercatorTemp |
|
std::array< sdl::Surface, static_cast< std::size_t >MapDataType::MapCount)/2 > | mAzimuthalTemp |
|
std::atomic_bool | mUpdateEphemeris {false} |
|
std::array< std::filesystem::path, 5 > | mEphemerisFilePath {} |
| The set of cached ephemeris files.
|
|
EphemerisFile | mEphemerisFile {EphemerisFile::ClearSkyAll} |
| The index to the ephemeris in use.
|
|
Observer | mObserver {} |
| The QTH Observer data.
|
|
std::vector< TrackedSatellite > | mSatelliteList {} |
| The list of Satellites being tracked.
|
|
std::mutex | mSatListMutex {} |
| A mutex to protect write access to mSatelliteList.
|
|
double | mMinimumElevation {15.} |
| The minimum pass elevation to track satellite.
|
|
std::array< sdl::Texture, 2 > | mMercator {} |
| The Mercator projection background and foreground maps.
|
|
std::array< sdl::Texture, 2 > | mAzimuthal {} |
| The Azimuthal projection background and foreground maps.
|
|
sdl::Texture | mNightAz {} |
| The Texture with the Night Azimuthal map.
|
|
sdl::Texture | mDayAz {} |
| The Texture with the Day Azimuthal map.
|
|
std::shared_ptr< Slot< std::string > > | mSettingsUpdateRx {} |
| Slot to receive settings updates on.
|
|
std::unique_ptr< AntiAliasedDrawing > | mDrawingContext {} |
|
std::array< MapIcon, 2 > | mStationIcons {} |
| Icons for QTH and Antipode.
|
|
std::array< MapIcon, 2 > | mCelestialIcons {} |
| Near earth objects (Sun, Moon, etc.).
|
|
Satellite | mMoon {} |
| Orbital data for the moon.
|
|
EventCallback | mEnterEventCallback {} |
| The pointer has entered the Widget.
|
|
EventCallback | mLeaveEventCallback {} |
| The pointer has left the Widget.
|
|
ButtonCallback | mButtonEventCallback {} |
| The pointer button has been pressed with the pointer inside the Widget.
|
|
MouseMotionCallback | mMouseMotionCallback {} |
| The pointer is in motion, inside the Widget with a button pressed.
|
|
ScrollCallback | mMouseScrollCallback {} |
| The mouse scroll wheel has moved with the pointer inside the Widget.
|
|
KeyboardShortcutCallback | mKeyboardShortcutCallback {} |
| A keyboard button event while the Widget has keyboard focus.
|
|
TextInputCallback | mTextInputCallback {} |
| A text input event while the Widget has keyboard focus.
|
|
KeyboardFocusCallback | mKeyboardFocusCallback {} |
| Notification that this Widget has gained or lost keyboard focus.
|
|
KeyboardEventCallback | mKeyboardEventCallback {} |
| Notification that this Widget has received a keyboard event.
|
|
SemanticGesture | mSemanticGesture {} |
|
Position< int > | mPos {} |
| Position relative to the container, arrived at by layout.
|
|
Size | mSize {} |
| The size on screen, arrived at by layout.
|
|
Position< int > | mPreferredPos {} |
| The preferred position.
|
|
Size | mPreferredSize {} |
| The preferred size.
|
|
Rectangle | mScreenRect {} |
| The screen Rectangle computed at drawing time.
|
|
Padding | mPadding {} |
| Immediately around the Visual, used for separation and alignment.
|
|
State | mState {} |
| The object state Id string.
|
|
bool | mVisible {true} |
| If true the object is visible.
|
|
std::weak_ptr< Container > | mContainer {} |
| The Container that holds the Node. More...
|
|
Id | mId {} |
|
std::unique_ptr< LayoutManager > | mLayoutManager {} |
| The layout manager which determines the presentation of contained Widgets.
|
|