Subversion Repositories AndroidProjects

Rev

Blame | Last modification | View Log | RSS feed

package com.gebauz.bauzoid.menu;

import com.badlogic.gdx.graphics.Texture.TextureFilter;
import com.gebauz.bauzoid.game.Game;
import com.gebauz.bauzoid.parser.ScanException;
import com.gebauz.bauzoid.parser.Tokenizer;

public abstract class ImageBase extends MenuItem
{
        // Constants========================================================================================

        // Embedded Types===================================================================================

        // Fields===========================================================================================
       
        private String mTextureName = "";
        private TextureFilter mMinFilter = TextureFilter.Nearest;
        private TextureFilter mMagFilter = TextureFilter.Nearest;

        // Methods==========================================================================================
       
        public ImageBase(Game game, Menu parent, String name)
        {
                super(game, parent, name);
        }
       
        @Override
        public boolean parseLine(String identifier, Tokenizer tokenizer) throws ScanException
        {
                if (identifier.equalsIgnoreCase("texture"))
                {
                        mTextureName = MenuUtil.parseString(tokenizer);
                }
                else if (identifier.equalsIgnoreCase("filter"))
                {
                        String minFilter = tokenizer.readIdentifier();
                        tokenizer.readToken(",");
                        String magFilter = tokenizer.readIdentifier();
                        tokenizer.readToken(";");
                       
                        setMinFilter(parseFilter(minFilter));
                        setMagFilter(parseFilter(magFilter));
                }
                else
                {
                        return super.parseLine(identifier, tokenizer);
                }
                return true;
        }
       
        public TextureFilter parseFilter(String filter)
        {
                if (filter.equalsIgnoreCase("linear"))
                        return TextureFilter.Linear;
                return TextureFilter.Nearest;
        }

        // Getters/Setters==================================================================================

        public TextureFilter getMagFilter() { return mMagFilter; }
        public void setMagFilter(TextureFilter magFilter) { mMagFilter = magFilter; }

        public TextureFilter getMinFilter() { return mMinFilter; }
        public void setMinFilter(TextureFilter minFilter) { mMinFilter = minFilter; }

        public String getTextureName() { return mTextureName; }
        public void setTextureName(String textureName) { mTextureName = textureName; }
       
}