All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.webfolder.ui4j.api.dom.Element Maven / Gradle / Ivy

There is a newer version: 4.0.0
Show newest version
package io.webfolder.ui4j.api.dom;

import java.util.List;
import java.util.Map;
import java.util.Optional;

import io.webfolder.ui4j.api.event.EventHandler;
import io.webfolder.ui4j.api.util.Point;

public interface Element extends Node {

    Optional getAttribute(String name);

    Element setAttribute(String name, String value);

    Element setAttribute(Map attributes);

    Element removeAttribute(String name);

    boolean hasAttribute(String name);

    Element addClass(String... names);

    Element removeClass(String... names);

    boolean hasClass(String name);

    Element toggleClass(String name);

    List getClasses();

    Optional getText();

    String getTagName();

    Optional getValue();

    Element setValue(String value);

    Element bind(String event, EventHandler handler);

    Element bindClick(EventHandler handler);

    Element setTitle(String title);

    Optional getTitle();

    Element unbind(EventHandler handler);

    Element unbind(String event);

    List find(String selector);

    Element unbind();

    Element empty();

    void remove();

    Element click();

    Optional getParent();

    Optional getInput();

    Optional getCheckBox();

    Optional getRadioButton();

    Optional