javauis/m2g_qt/javasrc/com/nokia/microedition/m2g/M2GSVGRect.java
author hgs
Fri, 29 Oct 2010 11:49:32 +0300
changeset 87 1627c337e51e
parent 56 abc41079b313
permissions -rw-r--r--
v2.2.21_1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
56
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
     1
/*
87
1627c337e51e v2.2.21_1
hgs
parents: 56
diff changeset
     2
* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
56
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
     3
* All rights reserved.
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
     8
*
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
     9
* Initial Contributors:
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    11
*
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    12
* Contributors:
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    13
*
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    14
* Description:
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    15
*
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    16
*/
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    17
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    18
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    19
package com.nokia.microedition.m2g;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    20
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    21
import org.w3c.dom.svg.*;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    22
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    23
/**
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    24
 * This interface represents an "SVGRect" datatype, consisting of a minimum X, minimum Y, width
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    25
 * and height values.
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    26
 */
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    27
public class M2GSVGRect implements SVGRect
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    28
{
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    29
    //--------------------------------------------------
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    30
    // STATIC CONSTANTS
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    31
    //--------------------------------------------------
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    32
    private static final int X = 0;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    33
    private static final int Y = 1;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    34
    private static final int W = 2;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    35
    private static final int H = 3;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    36
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    37
    //--------------------------------------------------
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    38
    // VARIABLES
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    39
    //--------------------------------------------------
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    40
    private float[] iComponents;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    41
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    42
    //--------------------------------------------------
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    43
    // METHODS
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    44
    //--------------------------------------------------
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    45
    /**
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    46
     * Contructor
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    47
     */
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    48
    protected M2GSVGRect()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    49
    {
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    50
        iComponents = new float[4];
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    51
        iComponents[X] = 0;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    52
        iComponents[Y] = 0;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    53
        iComponents[W] = 0;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    54
        iComponents[H] = 0;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    55
    }
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    56
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    57
    /**
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    58
     * Contructor
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    59
     * @param aX -
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    60
     * @param aY -
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    61
     * @param aWidth -
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    62
     * @param aHeight -
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    63
     */
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    64
    protected M2GSVGRect(float aX, float aY, float aWidth, float aHeight)
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    65
    {
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    66
        iComponents = new float[4];
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    67
        iComponents[X] = aX;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    68
        iComponents[Y] = aY;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    69
        iComponents[W] = aWidth;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    70
        iComponents[H] = aHeight;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    71
    }
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    72
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    73
    /**
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    74
     * Returns reference to a components
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    75
     * @return components
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    76
     */
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    77
    float[] getComponents()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    78
    {
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    79
        return iComponents;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    80
    }
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    81
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    82
    /**
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    83
     * @see org.w3c.dom.svg.SVGRect#getX()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    84
     */
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    85
    public float getX()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    86
    {
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    87
        return iComponents[X];
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    88
    }
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    89
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    90
    /**
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    91
     * @see org.w3c.dom.svg.SVGRect#getY()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    92
     */
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    93
    public float getY()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    94
    {
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    95
        return iComponents[Y];
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    96
    }
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    97
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    98
    /**
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
    99
     * @see org.w3c.dom.svg.SVGRect#getWidth()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   100
     */
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   101
    public float getWidth()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   102
    {
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   103
        return iComponents[W];
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   104
    }
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   105
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   106
    /**
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   107
     * @see org.w3c.dom.svg.SVGRect#getHeight()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   108
     */
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   109
    public float getHeight()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   110
    {
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   111
        return iComponents[H];
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   112
    }
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   113
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   114
    /**
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   115
     * Checks if all components are zero
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   116
     * @returns true is every component is zero
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   117
     */
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   118
    public boolean isZero()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   119
    {
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   120
        for (int index = 0; index < iComponents.length; index++)
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   121
        {
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   122
            if (iComponents[index] != 0)
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   123
            {
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   124
                return false;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   125
            }
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   126
        }
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   127
        return true;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   128
    }
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   129
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   130
    /**
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   131
     * @see org.w3c.dom.svg.SVGRect#setX()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   132
     */
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   133
    public void setX(float value)
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   134
    {
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   135
        iComponents[X] = value;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   136
    }
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   137
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   138
    /**
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   139
     * @see org.w3c.dom.svg.SVGRect#setY()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   140
     */
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   141
    public void setY(float value)
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   142
    {
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   143
        iComponents[Y] = value;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   144
    }
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   145
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   146
    /**
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   147
     * @see org.w3c.dom.svg.SVGRect#setWidth()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   148
     */
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   149
    public void setWidth(float value)
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   150
    {
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   151
        iComponents[W] = value;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   152
    }
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   153
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   154
    /**
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   155
     * @see org.w3c.dom.svg.SVGRect#setHeight()
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   156
     */
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   157
    public void setHeight(float value)
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   158
    {
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   159
        iComponents[H] = value;
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   160
    }
abc41079b313 v2.2.7_1
hgs
parents:
diff changeset
   161
}