| package li.cil.oc.api.manual; |
| |
| /** |
| * Allows implementing advanced image renderers that react to mouse input and |
| * specify customized tooltips. |
| * <p/> |
| * This way you can e.g. disable the default tooltip and render a more advanced |
| * one, or render a small GUI on a page. |
| */ |
| public interface InteractiveImageRenderer extends ImageRenderer { |
| /** |
| * Get a custom tooltip for this image renderer. |
| * <p/> |
| * This can be used to override the original tooltip of an image. |
| * |
| * @param tooltip the original tooltip of the element. |
| * @return the tooltip to use for the element. |
| */ |
| String getTooltip(String tooltip); |
| |
| /** |
| * Called when the mouse is clicked while over this image renderer. |
| * <p/> |
| * This only fires for left-clicks, because right-clicks are reserved for |
| * navigating back in the manual. |
| * <p/> |
| * If this returns <tt>false</tt> and the element is a link, the link will |
| * be followed. If it returns <tt>true</tt>, it will not. |
| * |
| * @param mouseX the X coordinate of the mouse, relative to the element. |
| * @param mouseY the Y coordinate of the mouse, relative to the element. |
| * @return whether the click was handled. |
| */ |
| boolean onMouseClick(int mouseX, int mouseY); |
| } |