KoShapeGroup.cpp 2 KB
Newer Older
Thomas Zander's avatar
Thomas Zander committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
/* This file is part of the KDE project
 * Copyright (C) 2006 Thomas Zander <zander@kde.org>
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Library General Public
 * License as published by the Free Software Foundation; either
 * version 2 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Library General Public License for more details.
 *
 * You should have received a copy of the GNU Library General Public License
 * along with this library; see the file COPYING.LIB.  If not, write to
 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 * Boston, MA 02110-1301, USA.
 */

#include "KoShapeGroup.h"
21 22
#include "KoShapeContainerModel.h"
#include "SimpleShapeContainerModel.h"
23 24
#include "KoShapeSavingContext.h"
#include "KoXmlWriter.h"
Thomas Zander's avatar
Thomas Zander committed
25

Jarosław Staniek's avatar
Jarosław Staniek committed
26 27
#include <QPainter>

Thomas Zander's avatar
Thomas Zander committed
28
KoShapeGroup::KoShapeGroup()
29
: KoShapeContainer(new SimpleShapeContainerModel())
Thomas Zander's avatar
Thomas Zander committed
30 31 32
{
}

33
void KoShapeGroup::paintComponent(QPainter &painter, const KoViewConverter &converter) {
Thomas Zander's avatar
Thomas Zander committed
34 35 36 37 38 39 40 41 42
    Q_UNUSED(painter);
    Q_UNUSED(converter);
}

bool KoShapeGroup::hitTest( const QPointF &position ) const {
    Q_UNUSED(position);
    return false;
}

43 44 45
void KoShapeGroup::childCountChanged() {
    QRectF br = boundingRect();
    setPosition( br.topLeft() );
46
    setSize( br.size() );
47
}
48

49 50
void KoShapeGroup::saveOdf( KoShapeSavingContext & context ) const {
    context.xmlWriter().startElement( "draw:g" );
51
    saveOdfAttributes(context, OdfMandatories);
52
    context.xmlWriter().addAttributePt( "svg:y", position().y() );
53 54 55 56 57

    foreach(KoShape* shape, iterator()) // store children.
        shape->saveOdf(context);

    saveOdfConnections(context);
58
    context.xmlWriter().endElement();
59
}
60 61 62 63

bool KoShapeGroup::loadOdf( const KoXmlElement & element, KoShapeLoadingContext &context ) {
    return false; // TODO
}