26 #ifndef __TERRALIB_QT_WIDGETS_INTERNAL_TIMESLIDERWIDGET_H
27 #define __TERRALIB_QT_WIDGETS_INTERNAL_TIMESLIDERWIDGET_H
30 #include "../Config.h"
31 #include "../../../geometry.h"
32 #include "../../../datatype.h"
33 #include "../InterfaceController.h"
37 #include <QAbstractAnimation>
44 namespace Ui {
class TimeSliderWidgetForm; }
47 class QParallelAnimationGroup;
64 class TrajectoryDataSet;
65 class TrajectoryDataSetLayer;
123 void addTemporalImages(
const QString& filePath);
157 void calculateSpatialExtent();
162 void calculateTemporalExtent();
167 void changeDirection();
173 void setGoAndBack(
bool t);
179 void setDirection(
const QAbstractAnimation::Direction& direction);
185 void setDuration(
const unsigned int& duration);
192 void setAutomaticPan(
const QString& title);
197 void createNewPixmap();
242 bool eventFilter(QObject*, QEvent*);
247 void updateTimeTextEdit();
252 void updateSliderPos();
262 void createAnimations();
285 void erase(
const unsigned int& curTime);
292 void setErasePerfectly(
bool b);
301 QDateTime fixDateTimeEdit(QDateTimeEdit* dte,
const QDateTime& t);
311 void drawPixmapItem(
PixmapItem* pi,
const QRectF& dwrect, QPainter* painter);
315 void loadAnimation(
const QString& title);
317 void removeAnimation(
const QString& title);
319 void removeOnPropertieCombo(
const QString& title);
329 void drawTrajectoryIcon(
const TrajectoryItem* t,
const QPoint& pos, QPainter* painter);
331 bool trajectoryAlreadyExists(QPair<QString, te::st::TrajectoryDataSetLayer*>& item);
332 bool coverageAlreadyExists(QPair<QString, QString>& item);
344 void showPropertySection(
bool b);
351 bool isSettingChanged();
375 void onDisplayPaintEvent(QPainter* p);
381 void onAnimationDragEnterEvent(QDragEnterEvent* e);
383 void onAnimationDropEvent(QDropEvent*);
387 void onSettingsToolButtonnClicked();
392 void onPlayToolButtonnClicked();
397 void onStopToolButtonnClicked();
403 void onSliderMoved(
int value);
408 void onExtentChanged();
413 void onSridChanged();
418 void onFinishAnimation();
424 void onDurationValueChanged(
int v);
430 void onOpacityValueChanged(
int v);
436 void onDateTimeEditChanged(
const QDateTime& t);
438 void onAutoPanCheckBoxClicked(
bool);
439 void onPanFactorValueChanged(
double);
440 void onFrontPushButtonClicked(
bool b);
441 void onBackPushButtonClicked(
bool b);
446 void onHelpPushButtonClicked();
453 void onDrawTrailCheckBoxClicked(
bool b);
467 void onForwardRadioButtonClicked(
bool b);
474 void onBackwardRadioButtonClicked(
bool b);
481 void onLoopCheckBoxClicked(
bool b);
488 void onGoAndBackCheckBoxClicked(
bool b);
495 void onApplyTimeIntervalPushButtonClicked(
bool b);
509 void onAnimationComboBoxActivated(
int i);
514 void onRemovePushButtonClicked(
bool);
519 void onRemoveAllPushButtonClicked(
bool);
524 void onResetInitialTimePushButtonClicked();
529 void onResetFinalTimePushButtonClicked();
531 void onWidthValueChanged(
int);
533 void onHeightValueChanged(
int);
542 void deleteTimeSliderWidget();
571 std::auto_ptr<Ui::TimeSliderWidgetForm>
m_ui;
591 #endif // __TERRALIB_QT_WIDGETS_INTERNAL_TIMESLIDERWIDGET_H
A class to represent time instant.
An Envelope defines a 2D rectangular region.
A class to represent time period.
A layer with reference to a dataset that contains trajectories.
boost::intrusive_ptr< AbstractLayer > AbstractLayerPtr