Rogue: Savage Rats, a retro-themed dungeon crawler
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
rogue-savage-rats/src/mightypork/gamecore/gui/components/Component.java

47 lines
806 B

package mightypork.gamecore.gui.components;
import mightypork.gamecore.gui.Hideable;
import mightypork.util.math.constraints.rect.Rect;
import mightypork.util.math.constraints.rect.proxy.RectBound;
/**
* Basic UI component interface
*
* @author MightyPork
*/
public interface Component extends Hideable, PluggableRenderable {
/**
* Set visible. When not visible, the component should not render.
*/
@Override
void setVisible(boolean yes);
@Override
boolean isVisible();
@Override
Rect getRect();
@Override
void setRect(RectBound rect);
/**
* Render the component, if it is visible.
*/
@Override
void render();
/**
* The bounding rect was changed. The component should now update any cached
* constraints derived from it.
*/
void updateLayout();
}