[Marble-devel] Review Request: Add visibleRegionChanged signal in MarbleMap and MarbleWidget
Torsten Rahn
rahn at kde.org
Sat May 8 12:08:41 CEST 2010
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/3898/#review5513
-----------------------------------------------------------
/trunk/KDE/kdeedu/marble/src/lib/MarbleMap.h
<http://reviewboard.kde.org/r/3898/#comment5187>
I object to this method name. :-)
For the UI the usage of the term "region" is fine. But in terms of API it's imho not: We are using the term Region for two subjects:
- QRegion
- GeoDataRegion
One of the merits of the Qt (and Marble) API is the consistency in terms of wording.
Therefore I think that this method should look differently. Possible alternatives I see are:
void visibleRegionChanged( const GeoDataRegion& visibleRegion );
void visibleLatLonAltBoxChanged( const GeoDataLatLonAltBox& visibleLatLonAltBox );
void viewChanged( const GeoDataAbstractView& view );
void lookAtChanged( const GeoDataLookAt& lookAt );
void cameraChanged( const GeoDataCamera& camera );
- Torsten
On 2010-05-07 09:35:44, jmho wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviewboard.kde.org/r/3898/
> -----------------------------------------------------------
>
> (Updated 2010-05-07 09:35:44)
>
>
> Review request for marble.
>
>
> Summary
> -------
>
> With this patch, MarbleMap emits a signal (visibleRegionChanged) when the users moves the map or zooms.
> The signals's argument contains the new visible region as GeoDataLatLonAltBox.
> The new signal is needed for a non-modal download region dialog.
>
>
> Diffs
> -----
>
> /trunk/KDE/kdeedu/marble/src/lib/MarbleMap.h 1123897
> /trunk/KDE/kdeedu/marble/src/lib/MarbleMap.cpp 1123897
> /trunk/KDE/kdeedu/marble/src/lib/MarbleWidget.h 1123897
> /trunk/KDE/kdeedu/marble/src/lib/MarbleWidget.cpp 1123897
>
> Diff: http://reviewboard.kde.org/r/3898/diff
>
>
> Testing
> -------
>
> Using the patch below showed that the signal is emitted when browsing and zooming around the map.
>
> -------------------------- marble/src/marble_part.cpp --------------------------
> index 5722b07..4601cae 100644
> @@ -150,6 +150,8 @@ void MarblePart::initObject()
> setupStatusBar();
> readSettings();
> m_statusBarExtension->statusBar()->setUpdatesEnabled( true );
> + connect( m_controlView->marbleWidget(), SIGNAL( visibleRegionChanged( GeoDataLatLonAltBox )),
> + SLOT( debugVisibleRegion( GeoDataLatLonAltBox )));
> }
>
> ControlView* MarblePart::controlView() const
> @@ -1265,6 +1267,11 @@ void MarblePart::readPluginSettings()
> }
> }
>
> +void MarblePart::debugVisibleRegion( const GeoDataLatLonAltBox& region )
> +{
> + kDebug() << "N/W/S/E:" << region.north() << region.west() << region.south() << region.east();
> +}
> +
> void MarblePart::lockFloatItemPosition( bool enabled )
> {
> QList<AbstractFloatItem *> floatItemList = m_controlView->marbleWidget()->floatItems();
>
> --------------------------- marble/src/marble_part.h ---------------------------
> index 7328fde..f17c398 100644
> @@ -35,6 +35,7 @@ namespace Marble
> {
>
> class ControlView;
> +class GeoDataLatLonAltBox;
> class SunControlWidget;
>
> class MarblePart: public KParts::ReadOnlyPart
> @@ -147,6 +148,8 @@ class MarblePart: public KParts::ReadOnlyPart
> */
> void readPluginSettings();
>
> + void debugVisibleRegion( const GeoDataLatLonAltBox& );
> +
> private:
> void setupActions();
> void setupDownloadProgressBar();
>
>
> Thanks,
>
> jmho
>
>
More information about the Marble-devel
mailing list