SatellitesDialog.hpp   SatellitesDialog.hpp 
skipping to change at line 30 skipping to change at line 30
#ifndef _SATELLITESDIALOG_HPP_ #ifndef _SATELLITESDIALOG_HPP_
#define _SATELLITESDIALOG_HPP_ #define _SATELLITESDIALOG_HPP_
#include <QObject> #include <QObject>
#include <QModelIndex> #include <QModelIndex>
#include "StelDialog.hpp" #include "StelDialog.hpp"
#include "Satellites.hpp" #include "Satellites.hpp"
class Ui_satellitesDialog; class Ui_satellitesDialog;
class QCheckBox;
class QListWidgetItem; class QListWidgetItem;
class QSortFilterProxyModel; class QSortFilterProxyModel;
class QStandardItemModel; class QStandardItemModel;
class QTimer; class QTimer;
class SatellitesImportDialog; class SatellitesImportDialog;
class SatellitesListFilterModel;
//! Main configuration window of the %Satellites plugin.
//! @todo Save sources list on check/uncheck.
class SatellitesDialog : public StelDialog class SatellitesDialog : public StelDialog
{ {
Q_OBJECT Q_OBJECT
public: public:
SatellitesDialog(); SatellitesDialog();
~SatellitesDialog(); ~SatellitesDialog();
protected: protected:
//! Initialize the dialog widgets and connect the signals/slots //! Initialize the dialog widgets and connect the signals/slots
void createDialogContent(); void createDialogContent();
public slots: public slots:
void retranslate(); void retranslate();
void refreshUpdateValues(void);
private slots: private slots:
//! Populates the satellites list, filtering it according to group. void jumpToSourcesTab();
//! Update the countdown to the next update.
void updateCountdown();
//! Filter the satellites list according to the selected (pseudo)gro
up.
//! @param index selection index of the groups drop-down list. //! @param index selection index of the groups drop-down list.
//! @todo Rework to use a proper model and filtering via a proxy mod void filterListByGroup(int index);
el? //! Populate the satellite data fields from the selected satellite(s
void listSatelliteGroup(int index); ).
//! Populates the satellites list with the currently selected group. //! @note The previous version used data only from the @em current i
void reloadSatellitesList(); tem
void updateSelectedInfo(const QModelIndex& cur, const QModelIndex& p //! in the list, not the whole selection. (Qt makes a difference bet
rev); ween
//! "@em the current" and "@em a selected" item - a selection can co
ntain
//! multiple items.)
void updateSatelliteData();
void saveSatellites(void); void saveSatellites(void);
void setUpdateValues(int hours); void showUpdateState(Satellites::UpdateState state);
void setUpdatesEnabled(int checkState); void showUpdateCompleted(int updated, int total, int added, int miss
void updateStateReceiver(Satellites::UpdateState state); ing);
void updateCompleteReceiver(int numUpdated, int total, int missing);
void sourceEditingDone(void); //! @name Sources Tab
//@{
void saveEditedSource();
void saveSourceList(void); void saveSourceList(void);
void deleteSourceRow(void); void deleteSourceRow(void);
void addSourceRow(void); void addSourceRow(void);
//! Toggle between modes in the Sources list.
//! If automatic adding is enabled, items in the list become checkab
le.
void toggleCheckableSources();
//@}
void restoreDefaults(void); void restoreDefaults(void);
void saveSettings(void); void saveSettings(void);
void addSatellites(const TleDataList& newSatellites); void addSatellites(const TleDataList& newSatellites);
void removeSatellites(); void removeSatellites();
void setDisplayFlag(bool display); //! Apply the "Displayed" and "Orbit" boxes to the selected satellit
void setOrbitFlag(bool display); e(s).
void handleDoubleClick(const QModelIndex & index); void setFlags();
//! Find out if a group is added or toggled in the group selector.
void handleGroupChanges(QListWidgetItem* item);
//! Display, select and start tracking the double clicked satellite.
void trackSatellite(const QModelIndex & index);
void setOrbitParams(void); void setOrbitParams(void);
void updateTLEs(void); void updateTLEs(void);
private: private:
void connectSatelliteGuiForm(void); //! @todo find out if this is really necessary... --BM
void disconnectSatelliteGuiForm(void); void enableSatelliteDataForm(bool enabled);
void populateAboutPage();
//! Update the Settings tab with values from the plug-in.
//! Calls updateCountdown(). Connected to Satellites::settingsChange
d().
void updateSettingsPage();
//! Populates the satellite groups filtering menu on the %Satellites
tab.
//! Preserves the current item, if it's still in the new list.
void populateFilterMenu();
//! Populates the list of sources on the Sources tab.
void populateSourcesList();
//! Add the special "New group..." editable item to the group select
or.
//! Unlike the other items, which can only be checked/unchecked, thi
s one
//! can be edited. Saving the edit will add a new group with the spe
cified
//! name.
//! Called by updateSatelliteData() and handleGroupChanges().
void addSpecialGroupItem();
//! Applies the changes in the group selector to the selected satell
ites.
void setGroups();
Ui_satellitesDialog* ui; Ui_satellitesDialog* ui;
bool satelliteModified; bool satelliteModified;
void setAboutHtml(void);
void updateGuiFromSettings(void);
void populateGroupsList();
QTimer* updateTimer; QTimer* updateTimer;
SatellitesImportDialog* importWindow; SatellitesImportDialog* importWindow;
QStandardItemModel* satellitesModel; SatellitesListFilterModel* filterModel;
QSortFilterProxyModel* filterProxyModel;
//! Makes sure that newly added source lines are as checkable as the
rest.
Qt::ItemDataRole checkStateRole;
}; };
#endif // _SATELLITESDIALOG_HPP_ #endif // _SATELLITESDIALOG_HPP_
 End of changes. 13 change blocks. 
24 lines changed or deleted 72 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/