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.
|
|
|
package mightypork.gamecore.gui.components;
|
|
|
|
|
|
|
|
|
|
|
|
import mightypork.gamecore.gui.Hideable;
|
|
|
|
import mightypork.util.constraints.rect.Rect;
|
|
|
|
import mightypork.util.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();
|
|
|
|
}
|