<commit_before>package View;

import java.util.function.Consumer;
import javafx.scene.control.Button;
import com.thoughtworks.xstream.annotations.XStreamOmitField;
import engine.fieldsetting.Settable;
import engine.goals.Goal;
import engine.goals.NullGoal;


/**
 * This class contains information needed to create, enable, and set up the click action for a
 * button. It was created to allow a game designer to add a custom button to the game and use a goal
 * to determine when it should be enabled and give it a lambda function to execute on click.
 * 
 * @author Sierra
 * @author Cosette
 *
 */
@Settable
public class ButtonWrapper {

    private static final String DEFAULT_TEXT = "";

    @XStreamOmitField<commit_msg>Added more documentation to button wrapper<commit_after>package View;

import java.util.function.Consumer;
import javafx.scene.control.Button;
import com.thoughtworks.xstream.annotations.XStreamOmitField;
import engine.fieldsetting.Settable;
import engine.goals.Goal;
import engine.goals.NullGoal;


/**
 * This class contains information needed to create, enable, and set up the click action for a
 * button. It was created to allow a game designer to add a custom button to the game and use a goal
 * to determine when it should be enabled and give it a lambda function to execute on click. It
 * assumes that anything passed into it's constructor and set methods is not null, and it depends on
 * the Goal interface to act as the enable condition for the button.
 * 
 * @author Sierra
 * @author Cosette
 *
 */
@Settable
public class ButtonWrapper {

    private static final String DEFAULT_TEXT = "";

    @XStreamOmitField
{'fraction_non_alphanumeric': 0.06476997578692494, 'fraction_numerical': 0.0, 'mean_word_length': 4.315112540192926, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6786370', 'n_tokens_mistral': 445, 'n_tokens_neox': 433, 'n_words': 198}