1 /* 2 * Copyright (c) 2020 bahlef. 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Eclipse Public License v2.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/epl-v20.html 7 * Contributors: 8 * markiewb - initial API and implementation and/or initial documentation 9 * bahlef 10 */ 11 package de.funfried.netbeans.plugins.external.formatter.ui.customizer; 12 13 /** 14 * Interface to define a verifiable configuration panel. 15 * 16 * @author markiewb 17 */ 18 public interface VerifiableConfigPanel { 19 /** 20 * Returns {@code true} if and only if the configuration is valid, otherwise 21 * {@code false}. 22 * 23 * @return {@code true} if and only if the configuration is valid, otherwise 24 * {@code false} 25 */ 26 boolean valid(); 27 28 /** 29 * Loads the configuration and sets the values to the UI components. 30 */ 31 void load(); 32 33 /** 34 * Stores the configuration from the current state of UI components. 35 */ 36 void store(); 37 }