package org.fluentlenium.core.action; import org.fluentlenium.core.domain.FluentWebElement; import org.openqa.selenium.WebElement; /** * All actions that can be used on the list or on a web element. * * @param <T> {@code this} object type to chain method calls * @param <E> type of fluent web element */ public interface FluentActions<T, E extends FluentWebElement> extends FluentJavascriptActions { /** * Perform a click. * * @return this object reference to chain methods calls * @see WebElement#click() */ T click(); /** * Perform a double click. * * @return this object reference to chain methods calls */ T doubleClick(); /** * Perform a context click. * * @return this object reference to chain methods calls */ T contextClick(); /** * Perform a form submission. * * @return this object reference to chain methods calls. * @see WebElement#submit() */ T submit(); /** * Write text in the element. * * @param text one or many text to send. * @return this object reference to chain methods calls. * @see WebElement#sendKeys(CharSequence...) */ T write(String... text); /** * Construct a Fill Builder in order to allow easy fill of visible input fields. * * @return Fill builder */ Fill<E> fill(); /** * Construct a Fill Select Builder in order to allow easy fill of visible input fields. * * @return Fill select builder */ FillSelect<E> fillSelect(); /** * Select a frame using this element. * * @return this object reference to chain methods calls. */ T frame(); }