Layer.java

Переключить прокрутку окна
Загрузить этот исходный код

/*
    Реализация спецификаций CLDC версии 1.1 (JSR-139), MIDP версии 2.1 (JSR-118)
    и других спецификаций для функционирования компактных приложений на языке
    Java (мидлетов) в среде программного обеспечения Малик Эмулятор.

    Copyright © 2016–2017, 2019–2023 Малик Разработчик

    Это свободная программа: вы можете перераспространять ее и/или изменять
    ее на условиях Меньшей Стандартной общественной лицензии GNU в том виде,
    в каком она была опубликована Фондом свободного программного обеспечения;
    либо версии 3 лицензии, либо (по вашему выбору) любой более поздней версии.

    Эта программа распространяется в надежде, что она будет полезной,
    но БЕЗО ВСЯКИХ ГАРАНТИЙ; даже без неявной гарантии ТОВАРНОГО ВИДА
    или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННЫХ ЦЕЛЕЙ. Подробнее см. в Меньшей Стандартной
    общественной лицензии GNU.

    Вы должны были получить копию Меньшей Стандартной общественной лицензии GNU
    вместе с этой программой. Если это не так, см.
    <https://www.gnu.org/licenses/>.
*/

package javax.microedition.lcdui.game;

import javax.microedition.lcdui.*;

public abstract class Layer extends Object
{
    boolean visibility;
    int left;
    int top;
    int width;
    int height;
    final Object monitor;

    Layer() {
        this.visibility = true;
        this.monitor = new Object();
    }

    public abstract void paint(Graphics render);

    public void move(int deltaX, int deltaY) {
        synchronized(monitor)
        {
            this.left += deltaX;
            this.top += deltaY;
        }
    }

    public void setVisible(boolean visibility) {
        this.visibility = visibility;
    }

    public void setPosition(int left, int top) {
        synchronized(monitor)
        {
            this.left = left;
            this.top = top;
        }
    }

    public final boolean isVisible() {
        return visibility;
    }

    public final int getX() {
        return left;
    }

    public final int getY() {
        return top;
    }

    public final int getWidth() {
        return width;
    }

    public final int getHeight() {
        return height;
    }
}