public Component getListCellRendererComponent( final JList list, final Object value, final int index, final boolean isSelected, final boolean cellHasFocus ) { super.getListCellRendererComponent( list, value, index, isSelected, cellHasFocus ); if ( value instanceof FunctionCategory ) { final FunctionCategory cat = (FunctionCategory) value; setText( cat.getDisplayName( Locale.getDefault() ) ); setToolTipText( cat.getDescription( Locale.getDefault() ) ); } else { setText( Messages.getInstance().getString( "FunctionCategoryCellRenderer.All" ) ); setToolTipText( null ); } return this; } }
public static void main(String[] args) { LibFormulaBoot.getInstance().start(); final DemoFormulaContext context = new DemoFormulaContext(); final FunctionRegistry functionRegistry = context.getFunctionRegistry(); final FunctionCategory[] categories = functionRegistry.getCategories(); for (int c = 0; c < categories.length; c++) { final FunctionCategory category = categories[c]; System.out.println(); System.out.println("Category " + category.getDisplayName(Locale.US)); final String[] strings = functionRegistry.getFunctionNamesByCategory(category); Arrays.sort(strings); for (int i = 0; i < strings.length; i++) { if (i != 0) { System.out.print(", "); } final String string = strings[i]; System.out.print(string); } } } }