Интерфейс IIOParamController

public interface IIOParamController

Интерфейс, который должны реализовывать объекты, способные определять параметры объекта IIOParam, либо путём вывода графического интерфейса для получения значений от пользователя, либо другими способами. Данный интерфейс просто определяет общий метод activate, который вызывает контроллер, не заботясь о том, как контроллер получает значения (т.е., безразлично, использует ли контроллер графический интерфейс или просто вычисляет набор значений).

Внутри метода activate, контроллер получает начальные значения, запрашивая у объекта IIOParam методы get, изменяет значения любым способом, затем вызывает методы объекта IIOParam set для изменения соответствующих параметров. Как правило, эти методы set вызываются все сразу при окончательном подтверждении, чтобы операция отмены не нарушала существующие значения. В общем случае, приложения могут ожидать, что когда метод activate вернёт true, объект IIOParam готов к использованию в операции чтения или записи.

Поставщики могут выбрать предоставление графических интерфейсов для подклассов IIOParam, которые они определяют для конкретного плагина. Они могут быть настроены в качестве контроллеров по умолчанию в соответствующих подклассах IIOParam.

Приложения могут переопределить любые графические интерфейсы по умолчанию и предоставить свои собственные контроллеры, встроенные в их собственную среду. Всё, что требуется, это то, что метод activate будет вести себя модально (не возвращаясь, пока не будет отменено или подтверждено), хотя он не обязан выводить явное модальное диалоговое окно. Такой немодальный компонент графического интерфейса был бы примерно так:

class MyGUI extends SomeComponent implements IIOParamController {

    public MyGUI() {
        // ...
        setEnabled(false);
    }

    public boolean activate(IIOParam param) {
        // disable other components if desired
        setEnabled(true);
        // go to sleep until either cancelled or committed
        boolean ret = false;
        if (!cancelled) {
            // set values on param
            ret = true;
        }
        setEnabled(false);
        // enable any components disabled above
        return ret;
    }

В качестве альтернативы, может быть использован алгоритмический процесс, такой как поиск в базе данных или разбор командной строки, в качестве контроллера, в этом случае метод activate просто выполнит поиск или вычисление параметров, вызовет методы IIOParam.setXXX и вернёт true.

См. также:
IIOParam.setController(javax.imageio.IIOParamController), IIOParam.getController(), IIOParam.getDefaultController(), IIOParam.hasController(), IIOParam.activateController()

Методы

Модификатор и тип Метод Описание
boolean activate​(IIOParam param)

Активирует контроллер.

Методы

activate

boolean activate(IIOParam param)

Активирует контроллер. Если true возвращается, все настройки в объекте IIOParam должны быть готовы к использованию в операции чтения или записи. Если false возвращается, никакие настройки в объекте IIOParam не будут изменены (т.е., пользователь отменил операцию).

Параметры:
param - объект IIOParam для изменения.
Возвращает:
true если IIOParam был изменён, false в противном случае.
Исключения:
IllegalArgumentException - если param равен null или не является экземпляром правильного класса.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/imageio/IIOParamController.html

Spec-Zone .ru
спецификации, руководства, описания, API