View Javadoc
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  }