001package com.fs.starfarer.api.ui;
002
003import com.fs.starfarer.api.input.InputEventAPI;
004
005public interface PositionAPI {
006        float getX();
007        float getY();
008        float getWidth();
009        float getHeight();
010        float getCenterX();
011        float getCenterY();
012        
013        PositionAPI setLocation(float x, float y);
014        PositionAPI setSize(float width, float height);
015        
016        boolean containsEvent(InputEventAPI event);
017        PositionAPI setXAlignOffset(float xAlignOffset);
018        PositionAPI setYAlignOffset(float yAlignOffset);
019        
020        PositionAPI inTL(float xPad, float yPad);
021        PositionAPI inTMid(float yPad);
022        PositionAPI inTR(float xPad, float yPad);
023        PositionAPI inRMid(float xPad);
024        PositionAPI inMid();
025        PositionAPI inBR(float xPad, float yPad);
026        PositionAPI inBMid(float yPad);
027        PositionAPI inBL(float xPad, float yPad);
028        PositionAPI inLMid(float xPad);
029        
030        
031        PositionAPI leftOfTop(UIComponentAPI sibling, float xPad);
032        PositionAPI leftOfMid(UIComponentAPI sibling, float xPad);
033        PositionAPI leftOfBottom(UIComponentAPI sibling, float xPad);
034        PositionAPI rightOfTop(UIComponentAPI sibling, float xPad);
035        PositionAPI rightOfMid(UIComponentAPI sibling, float xPad);
036        PositionAPI rightOfBottom(UIComponentAPI sibling, float xPad);
037        PositionAPI aboveLeft(UIComponentAPI sibling, float yPad);
038        PositionAPI aboveMid(UIComponentAPI sibling, float yPad);
039        PositionAPI aboveRight(UIComponentAPI sibling, float yPad);
040        PositionAPI belowLeft(UIComponentAPI sibling, float yPad);
041        PositionAPI belowMid(UIComponentAPI sibling, float yPad);
042        PositionAPI belowRight(UIComponentAPI sibling, float yPad);
043        
044        void setSuspendRecompute(boolean suspendRecompute);
045        boolean isSuspendRecompute();
046        
047        
048}