Stellarium  HEAD
Data Structures
Oculars Plug-in

Data Structures

class  OcularDialog
 
class  OcularsGuiPanel
 A screen widget similar to InfoPanel. More...
 
class  PropertyBasedTableModel
 This class provides a table model for just about any QObject. More...
 
class  Lens
 
class  Ocular
 
class  Telescope
 
class  CCD
 properties for the Oculars plugin. More...
 
class  Oculars
 Main class of the Oculars plug-in. More...
 

Detailed Description

This plugin serves several purposes:

None of these activities can take the place of hands-on experience, but they are a good way to supplement your visual astronomy interests.


Data Structure Documentation

◆ OcularDialog

class OcularDialog

Public Slots

void closeWindow ()
 
void deleteSelectedCCD ()
 
void deleteSelectedOcular ()
 
void deleteSelectedTelescope ()
 
void deleteSelectedLens ()
 
void insertNewCCD ()
 
void insertNewOcular ()
 
void insertNewTelescope ()
 
void insertNewLens ()
 
void moveUpSelectedSensor ()
 
void moveUpSelectedOcular ()
 
void moveUpSelectedTelescope ()
 
void moveUpSelectedLens ()
 
void moveDownSelectedSensor ()
 
void moveDownSelectedOcular ()
 
void moveDownSelectedTelescope ()
 
void moveDownSelectedLens ()
 
void retranslate () override
 
void updateOcular ()
 
void selectOcular (const QModelIndex)
 
void updateLens ()
 
void selectLens (const QModelIndex)
 
void updateCCD ()
 
void selectCCD (const QModelIndex)
 
void updateTelescope ()
 
void selectTelescope (const QModelIndex)
 
- Public Slots inherited from StelDialog
virtual void styleChanged (const QString &style)
 Apply application style change.
 
virtual void retranslate ()=0
 Retranslate the content of the dialog. More...
 
virtual void setVisible (bool)
 On the first call with "true" populates the window contents.
 
virtual void close ()
 Closes the window (the window widget is not deleted, just not visible).
 
void handleMovedTo (QPoint newPos)
 Adds dialog location to config.ini; should be connected in createDialogContent()
 
virtual void handleDialogSizeChanged (QSizeF size)
 Stores dialog sizes into config.ini; should be connected from the proxy. More...
 

Public Member Functions

 OcularDialog (Oculars *plugin, QList< CCD * > *ccds, QList< Ocular * > *oculars, QList< Telescope * > *telescopes, QList< Lens * > *lenses)
 
- Public Member Functions inherited from StelDialog
 StelDialog (const QString &dialogName=QString("Default"), QObject *parent=nullptr)
 
bool visible () const
 Returns true if the dialog contents have been constructed and are currently shown.
 
QString getDialogName () const
 

Protected Member Functions

void createDialogContent () override
 Initialize the dialog widgets and connect the signals/slots.
 

Protected Attributes

Ui_ocularDialogForm * ui
 
- Protected Attributes inherited from StelDialog
QWidget * dialog
 The main dialog.
 
class CustomProxyproxy
 
QString dialogName
 The name should be set in derived classes' constructors and can be used to store and retrieve the panel locations.
 
QList< QWidget * > kineticScrollingList
 A list of widgets where kinetic scrolling can be activated or deactivated The list must be filled once, in the constructor or init() of fillDialog() etc. More...
 

Additional Inherited Members

- Signals inherited from StelDialog
void visibleChanged (bool)
 
- Protected Slots inherited from StelDialog
bool askConfirmation (const QString &message=q_("Are you sure? This will delete your customized data."))
 
void messageBox (const QString &title, const QString &message)
 
void enableKineticScrolling (bool b)
 enable kinetic scrolling. This should be connected to StelApp's StelGui signal flagUseKineticScrollingChanged.
 
void handleFontChanged ()
 connect from StelApp to handle font and font size changes.
 
void handleColorSchemeChanged ()
 connect from StelApp to handle CSS style changes
 
virtual void updateNightModeProperty (bool n)
 
- Static Protected Member Functions inherited from StelDialog
static void connectCheckBox (QAbstractButton *checkBox, const QString &actionName)
 Helper function to connect a checkbox to the StelAction with the specified name.
 
static void connectCheckBox (QAbstractButton *checkBox, StelAction *action)
 Helper function to connect a checkbox to the given StelAction.
 
static void connectIntProperty (QLineEdit *lineEdit, const QString &propName)
 Helper function to connect a QLineEdit to an integer StelProperty. More...
 
static void connectIntProperty (QSpinBox *spinBox, const QString &propName)
 Helper function to connect a QSpinBox to an integer StelProperty. More...
 
static void connectIntProperty (QComboBox *comboBox, const QString &propName)
 Helper function to connect a QComboBox to an integer StelProperty. More...
 
static void connectIntProperty (QSlider *slider, const QString &propName, int minValue, int maxValue)
 Helper function to connect a QSlider to an double or float StelProperty. More...
 
static void connectDoubleProperty (QDoubleSpinBox *spinBox, const QString &propName)
 Helper function to connect a QDoubleSpinBox to an double or float StelProperty. More...
 
static void connectDoubleProperty (AngleSpinBox *spinBox, const QString &propName)
 Helper function to connect an AngleSpinBox to a double or float StelProperty representing decimal degrees. More...
 
static void connectDoubleProperty (QSlider *slider, const QString &propName, double minValue, double maxValue)
 Helper function to connect a QSlider to an double or float StelProperty. More...
 
static void connectStringProperty (QComboBox *comboBox, const QString &propName)
 Helper function to connect a QComboBox to a QString StelProperty. More...
 
static void connectStringProperty (QLineEdit *lineEdit, const QString &propName)
 Helper function to connect a QLineEdit to a QString StelProperty. More...
 
static void connectBoolProperty (QAbstractButton *checkBox, const QString &propName)
 Helper function to connect a checkbox to a bool StelProperty. More...
 
static void connectBoolProperty (QGroupBox *checkBox, const QString &propName)
 Helper function to connect a groupbox to a bool StelProperty. More...
 
- Properties inherited from StelDialog
bool visible
 

◆ OcularsGuiPanel

class OcularsGuiPanel

A screen widget similar to InfoPanel.

Contains controls and information.

Public Slots

void showOcularGui ()
 Show only the controls used with an ocular overlay.
 
void showCcdGui ()
 Show only the controls used with a CCD overlay.
 
void foldGui ()
 Hide the controls, leaving only the button bar.
 

Public Member Functions

 OcularsGuiPanel (Oculars *ocularsPlugin, QGraphicsWidget *parent=Q_NULLPTR, Qt::WindowFlags wFlags=Qt::Widget)
 

◆ PropertyBasedTableModel

class PropertyBasedTableModel

This class provides a table model for just about any QObject.

It it nice, as a table model implementation per class is not required. It does this by using the Qt meta object system.

To use this class, your domain objects basically just need to use properties (for any properties you want to make available to the model), and have a Q_INVOKABLE copy constructor. Then, when you instantiate an instance, you must call the init method. The init method takes the data to model, as well as an instance of your model class (to use as a model for creating new instances), and a map to know the ordering of the properties to their position (as you want them displayed).

Author
Timothy Reaves treav.nosp@m.es@s.nosp@m.ilver.nosp@m.fiel.nosp@m.dstec.nosp@m.h.co.nosp@m.m http://doc.qt.nokia.com/latest/properties.html

Public Member Functions

 PropertyBasedTableModel (QObject *parent=Q_NULLPTR)
 
void init (QList< QObject * > *content, QObject *model, QMap< int, QString > mappings)
 Initializes this instance for use. More...
 
QVariant data (const QModelIndex &item, int role=Qt::DisplayRole) const override
 
int rowCount (const QModelIndex &parent=QModelIndex()) const override
 
int columnCount (const QModelIndex &parent=QModelIndex()) const override
 
Qt::ItemFlags flags (const QModelIndex &index) const override
 
bool insertRows (int position, int rows, const QModelIndex &index=QModelIndex()) override
 
bool setData (const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) override
 
bool removeRows (int position, int rows, const QModelIndex &index=QModelIndex()) override
 
void moveRowUp (int position)
 
void moveRowDown (int position)
 

Member Function Documentation

◆ init()

void PropertyBasedTableModel::init ( QList< QObject * > *  content,
QObject *  model,
QMap< int, QString >  mappings 
)

Initializes this instance for use.

If you do not call this method, and use this class, your app will crash.

Parameters
contentthe domain objects you want to model. They should all be the same type. This instance does not take ownership of content, or the elements in it.
modelan instance of the same type as in content, this instance is used to create new instances of your domain objects by calling the model objects copy constructor. This instance takes ownership of model.
mappingshas an integer positional index to the property.

◆ Lens

class Lens

Public Member Functions

Q_INVOKABLE Lens (const QObject &other)
 
void writeToSettings (QSettings *settings, const int index)
 
double getMultipler () const
 
void setMultipler (double theValue)
 
const QString getName () const
 
void setName (const QString &theValue)
 
QMap< int, QString > propertyMap ()
 

Static Public Member Functions

static LenslensFromSettings (QSettings *theSettings, int lensIndex)
 
static LenslensModel ()
 

Properties

QString name
 
double multipler
 

◆ Ocular

class Ocular

Public Member Functions

Q_INVOKABLE Ocular (const QObject &other)
 
void writeToSettings (QSettings *settings, const int index)
 
bool isBinoculars (void) const
 
void setBinoculars (const bool flag)
 
bool hasPermanentCrosshair (void) const
 
void setPermanentCrosshair (const bool flag)
 
double apparentFOV (void) const
 
void setApparentFOV (const double fov)
 
double effectiveFocalLength (void) const
 
void setEffectiveFocalLength (const double fl)
 
double fieldStop (void) const
 
void setFieldStop (const double fs)
 
QString name (void) const
 
void setName (const QString &aName)
 
QString reticlePath (void) const
 
void setReticlePath (const QString &path)
 
double actualFOV (const Telescope *telescope, const Lens *lens) const
 
double magnification (const Telescope *telescope, const Lens *lens) const
 
QMap< int, QString > propertyMap (void)
 

Static Public Member Functions

static OcularocularFromSettings (const QSettings *theSettings, const int ocularIndex)
 
static OcularocularModel (void)
 

Properties

bool binoculars
 
bool permanentCrosshair
 
double apparentFOV
 
double effectiveFocalLength
 
double fieldStop
 
QString name
 
QString reticlePath
 

◆ Telescope

class Telescope

Public Member Functions

Q_INVOKABLE Telescope (const QObject &other)
 
void writeToSettings (QSettings *settings, const int index)
 
double diameter () const
 
void setDiameter (double theValue)
 
double focalLength () const
 
void setFocalLength (double theValue)
 
const QString name () const
 
void setName (const QString &theValue)
 
bool isHFlipped () const
 
void setHFlipped (bool flipped)
 
bool isVFlipped () const
 
void setVFlipped (bool flipped)
 
bool isEquatorial () const
 
void setEquatorial (bool eq)
 
QMap< int, QString > propertyMap ()
 

Static Public Member Functions

static TelescopetelescopeFromSettings (QSettings *theSettings, int telescopeIndex)
 
static TelescopetelescopeModel ()
 

Properties

QString name
 
double diameter
 
double focalLength
 
bool hFlipped
 
bool vFlipped
 
bool equatorial
 

◆ CCD

class CCD

properties for the Oculars plugin.

pixel count, sensor size and pixel size are obviously related, and should all be given in data sheets or manuals. Sometimes one of them is lacking, or given only approximately like "APS-C" which can have some tolerance. As a consequence, it seems natural to assume one fixed and one updateable when setting one of those. The logic used here:

  • setResolutionX|Y: set pixel count in X|Y, and compute pixelHeight|pixelWidth = chipWidth|chipHeight / resolutionX|Y
  • setChipWidth|setChipHeight: set chip width|height, and compute pixelHeight|pixelWidth = chipWidth|chipHeight / resolutionX|Y
  • setPixelWidth|setPixelHeight: set pixel width|height, and compute chipWidth|chipHeight=pixelWidth|pixelHeight * resolutionX|Y

Public Member Functions

Q_INVOKABLE CCD (const QObject &other)
 
void writeToSettings (QSettings *settings, const int index)
 
QString name () const
 
void setName (const QString &name)
 
int getCCDID ()
 
int resolutionX () const
 
void setResolutionX (int resolution)
 
int resolutionY () const
 
void setResolutionY (int resolution)
 
double chipWidth () const
 
void setChipWidth (double width)
 
double chipHeight () const
 
void setChipHeight (double height)
 
double chipRotAngle () const
 
void setChipRotAngle (double angle)
 
int binningX () const
 
void setBinningX (int binning)
 
int binningY () const
 
void setBinningY (int binning)
 
bool hasOAG () const
 
void setHasOAG (bool oag)
 
double prismDistance () const
 
void setPrismDistance (double distance)
 
double prismHeight () const
 
void setPrismHeight (double height)
 
double prismWidth () const
 
void setPrismWidth (double width)
 
double prismPosAngle () const
 
void setPrismPosAngle (double angle)
 
double getActualFOVx (const Telescope *telescope, const Lens *lens) const
 The formula for this calculation comes from the Yerkes observatory. More...
 
double getActualFOVy (const Telescope *telescope, const Lens *lens) const
 
double getCentralAngularResolutionX (const Telescope *telescope, const Lens *lens) const
 Horizontal angular resolution in degrees per pixel in the middle of the field of view.
 
double getCentralAngularResolutionY (const Telescope *telescope, const Lens *lens) const
 Vertical angular resolution in degrees per pixel in the middle of the field of view.
 
double getFocuserFOV (const Telescope *telescope, const Lens *lens, double focuserSize) const
 focuser size in inches
 
double getInnerOAGRadius (const Telescope *telescope, const Lens *lens) const
 
double getOuterOAGRadius (const Telescope *telescope, const Lens *lens) const
 
double getOAGActualFOVx (const Telescope *telescope, const Lens *lens) const
 
QMap< int, QString > propertyMap ()
 

Static Public Member Functions

static CCDccdFromSettings (QSettings *settings, int ccdIndex)
 
static CCDccdModel ()
 

Properties

QString name
 
int resolutionX
 
int resolutionY
 
double chipWidth
 
double chipHeight
 
double chipRotAngle
 
int binningX
 
int binningY
 
double hasOAG
 
double prismHeight
 
double prismWidth
 
double prismDistance
 
double prismPosAngle
 

Member Function Documentation

◆ getActualFOVx()

double CCD::getActualFOVx ( const Telescope telescope,
const Lens lens 
) const

The formula for this calculation comes from the Yerkes observatory.

fov degrees = 2PI/360degrees * chipDimension mm / telescope FL mm

◆ Oculars

class Oculars

Main class of the Oculars plug-in.

Public Slots

QSettings * getSettings () override
 return the plugin's own settings (these do not include the settings from the main application) This implementation return a singleton (class static) QSettings object.
 
void updateLists ()
 Update the ocular, telescope and sensor lists after the removal of a member. More...
 
void ccdRotationReset ()
 
void prismPositionAngleReset ()
 
void decrementCCDIndex ()
 
void decrementOcularIndex ()
 
void decrementTelescopeIndex ()
 
void decrementLensIndex ()
 
void displayPopupMenu ()
 
void enableOcular (bool b)
 This method is called with we detect that our hot key is pressed. More...
 
bool getEnableOcular () const
 
void incrementCCDIndex ()
 
void incrementOcularIndex ()
 
void incrementTelescopeIndex ()
 
void incrementLensIndex ()
 
void disableLens ()
 
void rotateReticleClockwise ()
 
void rotateReticleCounterclockwise ()
 
void rotateCCD (int amount)
 amount must be a number. This adds to the current rotation.
 
double getSelectedCCDRotationAngle (void) const
 get rotation angle from currently selected CCD
 
void setSelectedCCDRotationAngle (double angle)
 set rotation angle for currently selected CCD
 
void rotatePrism (int amount)
 amount must be a number. This adds to the current rotation.
 
double getSelectedCCDPrismPositionAngle (void) const
 get position angle from prism/OAG of currently selected CCD
 
void setSelectedCCDPrismPositionAngle (double angle)
 set position angle for prism/OAG of currently selected CCD
 
void selectCCDAtIndex (int index)
 index in the range of -1:ccds.count(), else call is ignored
 
int getSelectedCCDIndex () const
 
void selectOcularAtIndex (int index)
 index in the range of -1:oculars.count(), else call is ignored
 
int getSelectedOcularIndex () const
 
void selectTelescopeAtIndex (int index)
 index in the range of -1:telescopes.count(), else call is ignored
 
int getSelectedTelescopeIndex () const
 
void selectLensAtIndex (int index)
 index in the range -1:lenses.count(), else call is ignored
 
int getSelectedLensIndex () const
 
void toggleCCD (bool show)
 Toggles the sensor frame overlay.
 
void toggleCCD ()
 Toggles the sensor frame overlay (overloaded for blind switching).
 
bool getEnableCCD () const
 
void toggleCrosshairs (bool show=true)
 
bool getEnableCrosshairs () const
 
void toggleTelrad (bool show)
 Toggles the Telrad sight overlay.
 
bool getEnableTelrad () const
 
void toggleTelrad ()
 Toggles the Telrad sight overlay (overloaded for blind switching).
 
void enableGuiPanel (bool enable=true)
 
bool getFlagGuiPanelEnabled (void) const
 
void setGuiPanelFontSize (int size)
 
int getGuiPanelFontSize () const
 
void setTextColor (const Vec3f &color)
 
Vec3f getTextColor () const
 
void setLineColor (const Vec3f &color)
 
Vec3f getLineColor () const
 
void setFocuserColor (const Vec3f &color)
 
Vec3f getFocuserColor () const
 
void setTelradFOV (const Vec4f &fov)
 
Vec4f getTelradFOV () const
 
void setFlagDMSDegrees (const bool b)
 
bool getFlagDMSDegrees (void) const
 
void setFlagHorizontalCoordinates (const bool b)
 
bool getFlagHorizontalCoordinates (void) const
 
void setFlagRequireSelection (const bool b)
 
bool getFlagRequireSelection (void) const
 
void setFlagAutoLimitMagnitude (const bool b)
 
bool getFlagAutoLimitMagnitude (void) const
 
void setMagLimitStarsOcularsManual (double mag)
 
double getMagLimitStarsOcularsManual () const
 
void setFlagInitFovUsage (const bool b)
 
bool getFlagInitFovUsage (void) const
 
void setFlagInitDirectionUsage (const bool b)
 
bool getFlagInitDirectionUsage (void) const
 
void setFlagAutosetMountForCCD (const bool b)
 
bool getFlagAutosetMountForCCD (void) const
 
void setFlagScalingFOVForTelrad (const bool b)
 
bool getFlagScalingFOVForTelrad (void) const
 
void setFlagScalingFOVForCCD (const bool b)
 
bool getFlagScalingFOVForCCD (void) const
 
void setFlagMaxExposureTimeForCCD (const bool b)
 
bool getFlagMaxExposureTimeForCCD (void) const
 
void setFlagUseSemiTransparency (const bool b)
 
bool getFlagUseSemiTransparency (void) const
 
void setTransparencyMask (const int v)
 
int getTransparencyMask (void) const
 
void setFlagShowResolutionCriteria (const bool b)
 
bool getFlagShowResolutionCriteria (void) const
 
void setCcdCropOverlayHSize (int size)
 
int getCcdCropOverlayHSize () const
 
void setCcdCropOverlayVSize (int size)
 
int getCcdCropOverlayVSize () const
 
void setArrowButtonScale (const int val)
 
int getArrowButtonScale () const
 
void setFlagHideGridsLines (const bool b)
 
bool getFlagHideGridsLines (void) const
 
void setFlagScaleImageCircle (bool state)
 
bool getFlagScaleImageCircle (void) const
 
void setFlagShowOcularsButton (bool b)
 Define whether the button toggling eyepieces should be visible.
 
bool getFlagShowOcularsButton (void)
 
void setFontSize (int s)
 
void setFontSizeFromApp (int s)
 Connect this to StelApp font size.
 
void setFlagShowCcdCropOverlay (const bool b)
 
bool getFlagShowCcdCropOverlay (void) const
 
void setFlagShowCcdCropOverlayPixelGrid (const bool b)
 
bool getFlagShowCcdCropOverlayPixelGrid (void) const
 
void setFlagShowContour (const bool b)
 
bool getFlagShowContour (void) const
 
void setFlagShowCardinals (const bool b)
 
bool getFlagShowCardinals (void) const
 
void setFlagAlignCrosshair (const bool b)
 
bool getFlagAlignCrosshair (void) const
 
void setFlagShowFocuserOverlay (const bool b)
 
bool getFlagShowFocuserOverlay (void) const
 
void setFlagUseSmallFocuserOverlay (const bool b)
 
bool getFlagUseSmallFocuserOverlay (void) const
 
void setFlagUseMediumFocuserOverlay (const bool b)
 
bool getFlagUseMediumFocuserOverlay (void) const
 
void setFlagUseLargeFocuserOverlay (const bool b)
 
bool getFlagUseLargeFocuserOverlay (void) const
 

Signals

void enableOcularChanged (bool value)
 
void enableCrosshairsChanged (bool value)
 
void enableCCDChanged (bool value)
 
void enableTelradChanged (bool value)
 
void selectedCCDChanged (int value)
 
void selectedOcularChanged (int value)
 
void selectedTelescopeChanged (int value)
 
void selectedLensChanged (int value)
 
void selectedCCDRotationAngleChanged (double value)
 
void selectedCCDPrismPositionAngleChanged (double value)
 
void flagGuiPanelEnabledChanged (bool value)
 
void guiPanelFontSizeChanged (int value)
 
void textColorChanged (const Vec3f &color)
 
void lineColorChanged (const Vec3f &color)
 
void focuserColorChanged (const Vec3f &color)
 
void flagHideGridsLinesChanged (bool value)
 
void flagAutosetMountForCCDChanged (bool value)
 
void flagScalingFOVForTelradChanged (bool value)
 
void telradFOVChanged (Vec4f fov)
 
void flagScalingFOVForCCDChanged (bool value)
 
void flagMaxExposureTimeForCCDChanged (bool value)
 
void flagUseSemiTransparencyChanged (bool value)
 
void transparencyMaskChanged (int value)
 
void flagShowResolutionCriteriaChanged (bool value)
 
void arrowButtonScaleChanged (int value)
 
void flagInitDirectionUsageChanged (bool value)
 
void flagInitFOVUsageChanged (bool value)
 
void flagRequireSelectionChanged (bool value)
 
void flagAutoLimitMagnitudeChanged (bool value)
 
void flagDMSDegreesChanged (bool value)
 
void flagHorizontalCoordinatesChanged (bool value)
 
void flagScaleImageCircleChanged (bool value)
 
void flagShowOcularsButtonChanged (bool value)
 
void flagShowCcdCropOverlayChanged (bool value)
 
void ccdCropOverlayHSizeChanged (int value)
 
void ccdCropOverlayVSizeChanged (int value)
 
void flagShowCcdCropOverlayPixelGridChanged (bool value)
 
void flagShowContourChanged (bool value)
 
void flagShowCardinalsChanged (bool value)
 
void flagAlignCrosshairChanged (bool value)
 
void flagShowFocuserOverlayChanged (bool value)
 
void flagUseSmallFocuserOverlayChanged (bool value)
 
void flagUseMediumFocuserOverlayChanged (bool value)
 
void flagUseLargeFocuserOverlayChanged (bool value)
 

Public Member Functions

void init () override
 Initialize itself. More...
 
void deinit () override
 Called before the module will be deleted, and before the OpenGL context is suppressed. More...
 
bool configureGui (bool show=true) override
 Detect or show the configuration GUI elements for the module. More...
 
void draw (StelCore *core) override
 Execute all the drawing functions for this module. More...
 
double getCallOrder (StelModuleActionName actionName) const override
 Return the value defining the order of call for the given action For example if stars.callOrder[ActionDraw] == 10 and constellation.callOrder[ActionDraw] == 11, the stars module will be drawn before the constellations. More...
 
void handleMouseClicks (class QMouseEvent *event) override
 Returns the module-specific style sheet.

 
QString getDimensionsString (double fovX, double fovY) const
 
QString getFOVString (double fov) const
 
double getLimitMagnitude (Ocular *ocular, Telescope *telescope)
 
- Public Member Functions inherited from StelModule
 StelModule ()
 Constructor. Every derived class MUST call setObjectName(className) in its constructor.
 
virtual QSettings * getSettings ()
 Return module-specific settings. More...
 
virtual void update (double deltaTime)
 Update the module with respect to the time. More...
 
virtual QString getModuleVersion () const
 Get the version of the module, default is stellarium main version.
 
virtual QString getAuthorName () const
 Get the name of the module author.
 
virtual QString getAuthorEmail () const
 Get the email address of the module author.
 
virtual void handleMouseWheel (class QWheelEvent *)
 Handle mouse wheel. More...
 
virtual bool handleMouseMoves (int x, int y, Qt::MouseButtons b)
 Handle mouse moves. More...
 
virtual void handleKeys (class QKeyEvent *e)
 Handle key events. More...
 
virtual bool handlePinch (qreal scale, bool started)
 Handle pinch gesture events. More...
 

Properties

bool enableOcular
 
bool enableCrosshairs
 
bool enableCCD
 
bool enableTelrad
 
int selectedCCDIndex
 index of the current CCD, in the range of -1:ccds.count(). -1 means no CCD is selected.
 
int selectedOcularIndex
 index of the current ocular, in the range of -1:oculars.count(). -1 means no ocular is selected.
 
int selectedTelescopeIndex
 index of the current telescope, in the range of -1:telescopes.count(). -1 means none is selected.
 
int selectedLensIndex
 index of the current lens, in the range of -1:lense.count(). -1 means no lens is selected
 
double selectedCCDRotationAngle
 allows rotating via property/remotecontrol API
 
double selectedCCDPrismPositionAngle
 allows rotating via property/remotecontrol API
 
bool flagGuiPanelEnabled
 Display the GUI control panel.
 
bool flagInitFOVUsage
 Flag used to track if we use default initial FOV (value at the startup of planetarium).
 
bool flagInitDirectionUsage
 Flag used to track if we use default initial direction (value at the startup of planetarium).
 
bool flagShowResolutionCriteria
 Show various criteria for angular resolution based on telescope/ocular.
 
bool flagRequireSelection
 Decide whether an object is required to be selected to zoom in.
 
bool flagAutoLimitMagnitude
 Decide whether stellar magnitudes should be auto-limited based on telescope/ocular combination. More...
 
bool flagHideGridsLines
 Switch off all grids and lines of GridMgr while in Ocular view.
 
bool flagScaleImageCircle
 Decide whether to scale the mask based aFOV.
 
bool flagSemiTransparency
 Draw the area outside the ocular circle not black but let some stars through.
 
int transparencyMask
 Value of transparency for semi-transparent mask.
 
bool flagDMSDegrees
 Use decimal degrees in CCD frame display.
 
bool flagHorizontalCoordinates
 Use horizontal coordinates instead equatorial coordinates for cross of center CCD.
 
bool flagAutosetMountForCCD
 Flag used to track if we use automatic switch to type of mount for CCD frame.
 
bool flagScalingFOVForTelrad
 Flag used to track if we use automatic scaling FOV for Telrad.
 
Vec4f telradFOV
 4-vector of circles. The fourth element is non-standard.
 
bool flagScalingFOVForCCD
 Flag used to track if we use automatic scaling FOV for CCD.
 
bool flagMaxExposureTimeForCCD
 Flag used to track if we show max exposure time for CCD.
 
bool flagShowOcularsButton
 
bool flagShowContour
 
bool flagShowCardinals
 
bool flagAlignCrosshair
 
int arrowButtonScale
 allows scaling of the GUI "previous/next" Ocular/CCD/Telescope etc. buttons
 
int guiPanelFontSize
 
Vec3f textColor
 
Vec3f lineColor
 
bool flagShowCcdCropOverlay
 Flag used to track if the ccd crop overlay should be shown.
 
bool flagShowCcdCropOverlayPixelGrid
 Flag used to track if the ccd full grid overlay should be shown.
 
int ccdCropOverlayHSize
 Holds the ccd crop overlay size.
 
int ccdCropOverlayVSize
 Holds the ccd crop overlay size.
 
bool flagShowFocuserOverlay
 Flag used to track if the focuser crop overlay should be shown.
 
bool flagUseSmallFocuserOverlay
 Flag used to track if a small-sized focuser (1.25") overlay should be shown.
 
bool flagUseMediumFocuserOverlay
 Flag used to track if a medium-sized focuser (2.0") overlay should be shown.
 
bool flagUseLargeFocuserOverlay
 Flag used to track if a large-sized focuser (3.3") overlay should be shown.
 
Vec3f focuserColor
 

Friends

class OcularsGuiPanel
 

Additional Inherited Members

- Public Types inherited from StelModule
enum  StelModuleSelectAction { AddToSelection , ReplaceSelection , RemoveFromSelection }
 Enum used when selecting objects to define whether to add to, replace, or remove from the existing selection list. More...
 
enum  StelModuleActionName {
  ActionDraw , ActionUpdate , ActionHandleMouseClicks , ActionHandleMouseMoves ,
  ActionHandleKeys
}
 Define the possible action for which an order is defined. More...
 
- Protected Member Functions inherited from StelModule
class StelActionaddAction (const QString &id, const QString &groupId, const QString &text, QObject *target, const char *slot, const QString &shortcut="", const QString &altShortcut="")
 convenience methods to add an action (call to slot) to the StelActionMgr object. More...
 
class StelActionaddAction (const QString &id, const QString &groupId, const QString &text, const char *slot, const QString &shortcut="", const QString &altShortcut="")
 convenience methods to add an action (call to own slot) to the StelActionMgr object. More...
 
StelActionaddAction (const QString &id, const QString &groupId, const QString &text, QObject *contextObject, std::function< void()> lambda, const QString &shortcut="", const QString &altShortcut="")
 convenience methods to add an action (call to Lambda functor) to the StelActionMgr object. More...
 

Member Function Documentation

◆ configureGui()

bool Oculars::configureGui ( bool  show = true)
overridevirtual

Detect or show the configuration GUI elements for the module.

This is to be used with plugins to display a configuration dialog from the plugin list window.

Parameters
showif true, make the configuration GUI visible. If false, hide the config GUI if there is one.
Returns
true if the module has a configuration GUI, else false.

Reimplemented from StelModule.

◆ deinit()

void Oculars::deinit ( )
overridevirtual

Called before the module will be deleted, and before the OpenGL context is suppressed.

Deinitialize all OpenGL texture in this method.

Reimplemented from StelModule.

◆ draw()

void Oculars::draw ( StelCore core)
overridevirtual

Execute all the drawing functions for this module.

Parameters
corethe core to use for the drawing

Reimplemented from StelModule.

◆ enableOcular

void Oculars::enableOcular ( bool  b)
slot

This method is called with we detect that our hot key is pressed.

It handles determining if we should do anything - based on a selected object.

◆ getCallOrder()

double Oculars::getCallOrder ( StelModuleActionName  actionName) const
overridevirtual

Return the value defining the order of call for the given action For example if stars.callOrder[ActionDraw] == 10 and constellation.callOrder[ActionDraw] == 11, the stars module will be drawn before the constellations.

Parameters
actionNamethe name of the action for which we want the call order
Returns
the value defining the order. The closer to 0 the earlier the module's action will be called

Reimplemented from StelModule.

◆ init()

void Oculars::init ( )
overridevirtual

Initialize itself.

If the initialization takes significant time, the progress should be displayed on the loading bar.

Implements StelModule.

◆ updateLists

void Oculars::updateLists ( )
slot

Update the ocular, telescope and sensor lists after the removal of a member.

Necessary because of the way model/view management in the OcularDialog is implemented.

Property Documentation

◆ flagAutoLimitMagnitude

bool Oculars::flagAutoLimitMagnitude
readwrite

Decide whether stellar magnitudes should be auto-limited based on telescope/ocular combination.

If false, the manual limitation value magLimitStarsOculars takes over, and limitation is decided by flagLimitStarsOculars. If true, flagLimitStarsOculars is set true when activating Oculars view, and will remain true.