Beispiel #1
0
PlacemarkTextAnnotation::PlacemarkTextAnnotation( GeoDataPlacemark *placemark ) :
    SceneGraphicsItem( placemark ),
    m_movingPlacemark( false ),
    m_labelColor( QColor() )
{
    if ( placemark->style()->iconStyle().iconPath().isNull() ) {
        GeoDataStyle::Ptr newStyle(new GeoDataStyle( *placemark->style() ));
        newStyle->iconStyle().setIconPath(MarbleDirs::path(QStringLiteral("bitmaps/redflag_22.png")));
        placemark->setStyle( newStyle );
    }
    setPaintLayers(QStringList() << "PlacemarkTextAnnotation");
}
GroundOverlayFrame::GroundOverlayFrame( GeoDataPlacemark *placemark,
                                        GeoDataGroundOverlay *overlay,
                                        TextureLayer *textureLayer ) :
    SceneGraphicsItem( placemark ),
    m_overlay( overlay ),
    m_textureLayer( textureLayer ),
    m_movedHandle( NoRegion ),
    m_hoveredHandle( NoRegion ),
    m_editStatus( Resize ),
    m_editStatusChangeNeeded( false ),
    m_previousRotation( 0.0 ),
    m_viewport( 0 )
{
    // NorthWest
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-diagonal-topleft.png" ) );
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-diagonal-topleft-active.png" ) );
    // SouthWest
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-diagonal-topright.png" ) );
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-diagonal-topright-active.png" ) );
    // SouthEast
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-diagonal-topleft.png" ) );
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-diagonal-topleft-active.png" ) );
    // NorthEast
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-diagonal-topright.png" ) );
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-diagonal-topright-active.png" ) );
    // North
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-vertical.png" ) );
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-vertical-active.png" ) );
    // South
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-vertical.png" ) );
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-vertical-active.png" ) );
    // East
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-horizontal.png" ) );
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-horizontal-active.png" ) );
    // West
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-horizontal.png" ) );
    m_resizeIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-horizontal-active.png" ) );


    // NorthWest
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-rotation-topleft.png" ) );
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-rotation-topleft-active.png" ) );
    // SouthWest
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-rotation-bottomleft.png" ) );
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-rotation-bottomleft-active.png" ) );
    // SouthEast
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-rotation-bottomright.png" ) );
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-rotation-bottomright-active.png" ) );
    // NorthEast
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-rotation-topright.png" ) );
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-rotation-topright-active.png" ) );
    // North
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-horizontal.png" ) );
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-horizontal-active.png" ) );
    // South
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-horizontal.png" ) );
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-horizontal-active.png" ) );
    // East
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-vertical.png" ) );
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-vertical-active.png" ) );
    // West
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-vertical.png" ) );
    m_rotateIcons.append( QImage( MarbleDirs::systemPath() + "/bitmaps/editarrows/arrow-vertical-active.png" ) );

    update();
    setPaintLayers(QStringList() << "GroundOverlayFrame");
}