Revision 1202361

Go back to digest for 5th December 2010

Features in Educational

Bernhard Beschow committed changes in /trunk/KDE/kdeedu/marble:

move drawing methods from MarbleModel to MarbleMap

Motivation
==========

The whole painting should be implemented in the view rather than in the model because it decouples data and its representation. This allows for having different graphics
backends (hello OpenGL!) while having a common interface to the data.

Implementation
==============

MarbleMap is now the owner of all painting objects, e.g. the MeasureTool, a new TextureLayer class, the LayerManager, and others. To see all painting objects owned by
MarbleMap, see the modified MarbleMap_p.h.

Since the LayerManager object is now owned by MarbleMap, the layer-relevant methods, slots, and signals (such as addLayer(), removeLayer(), renderPluginsInitialized()) are
now forwarded by MarbleMap and Marblewidget rather than by MarbleModel.

The DownloadRegionDialog has been modified to take a MarbleWidget instead of a MarbleModel.

RB: 5902

File Changes

Modified 18 files
  • /trunk/KDE/kdeedu/marble
  •   /src/ControlView.cpp
  •   /src/marble_part.cpp
  •   /src/QtMainWindow.cpp
  •   /docs/release_notes/APIChanges-0.11.txt
  •   /src/lib/DownloadRegionDialog.cpp
  •   /src/lib/MarbleMap.cpp
  •   /src/lib/MarbleMap.h
  •   /src/lib/MarbleMap_p.h
  •   /src/lib/MarbleModel.cpp
  •   /src/lib/MarbleModel.h
  •   /src/lib/MarbleWidget.cpp
  •   /src/lib/MarbleWidget.h
  •   /src/lib/MarbleWidgetInputHandler.cpp
  •   /src/lib/MarbleWidgetPopupMenu.cpp
  •   /src/lib/PlacemarkLayout.cpp
  •   /src/lib/TextureLayer.cpp
  •   /src/lib/TextureLayer.h
  •   /src/plasmoid/worldclock.cpp
18 files changed in total