package de.ugoe.cs.quest.eventcore.guimodel; import java.io.Serializable; /** *

* Common interface for GUI element specifications. *

* * @version 1.0 * @author Patrick Harms */ public interface IGUIElementSpec extends Serializable { /** *

* Returns a string represenation of the GUI element type that this specification represents. *

* * @return */ public String getType(); /** *

* Evaluates if two GUI specifications are similar. Similar means that a heuristic determines * that the two GUI specifications describe the same GUI element. *

* * @param other * specification whose similarity to this is evaluated * @return true if the specifications are similar; false otherwise */ public boolean getSimilarity(IGUIElementSpec other); /** *

* Defines that {@link IGUIElement} implementations have to define equals. *

* * @see Object#equals(Object) */ @Override public boolean equals(Object other); /** *

* Defines that {@link IGUIElement} implementations have to define hashCode. *

* * @see Object#hashCode() */ @Override public int hashCode(); }