/* Copyright 2014 by Sean Luke and George Mason University Licensed under the Academic Free License version 3.0 See the file "LICENSE" for more information */ package sim.portrayal.inspector; /** A Groupable object can have its properties automatically broken up under various disclosure groups in a GroupedInspector. Properties */ public interface Groupable { /** Returns a list of names for groups to appear in the TabbedInspector. */ public String[] provideGroupNames(); /** Returns, for each group, a list of names of Java Bean Properties of this object which should appear under that group. */ public String[][] provideGroupProperties(); /** Returns whether remaining properties (not appearing under provideGroupProperties) should be displayed. If true, then they will be inserted individually, ungrouped, prior to any groups. */ public boolean showExtraProperties(); }