In Oracle APEX 5.0 we have added several new features to Custom Plug-in Attributes to improve the usability of your Plug-ins when they are used by other developers.
Show in Wizard
Some Plug-ins do make use of the maximum number of 25 available Custom Plug-in Attributes. This might provide the maximum of flexibility using and customizing your Plug-in, but keep in mind how much complexity and maybe confusion this might cause for developers using your Plug-in when they call a Create Page or Create Region wizard and are confronted with all those options. Most time it’s not necessary to expose every feature of your wrapped jQuery plug-in, but in the case you have to go into that detail, the new Show In Wizard flag is a good way to at least remove complexity from the Create Wizards. Just set that flag for the absolutely necessary Custom Plug-in attributes and use useful default values for all others. Developers can still edit the component and set advanced attributes, but the 80% case should work with just setting a few attributes.
Similar to Show in Wizard, this flag is used in Page Designer to decide if a Custom Plug-in Attribute should already be displayed in the Common View of Property Editor, or if it’s an advanced attribute. Your rule of thumb for setting this flag should be if it’s very likely that a developer would want to change this attribute.
It’s now possible to specify a help text for each single List of Values entry of a Select List. First of all this should help to actually document the different options of a select list and not forget newly added ones and it will also make sure that that help text is always displayed in the same format. Here is an example of the attribute help displayed in Page Designer.
Again a flag for List of Values entries of a Select List. It allows to specify for Page Designer if a Select List entry can be picked with the Quick Pick menu in Property Editor. Keep in mind that the Quick Pick menu should really just contain the most common entries and the list should be less than 5 entries to allow a quick selection without having to read and think to much!
Lov Null Text
Another new attribute for Custom Plug-in Attributes of type Select List. By default a select list shows – Select – if no value has been picked. With the new Lov Null Text attribute you can specify a different text instead. In the example below I used Use Application Setting. This new attribute is especially useful if you also have Custom Plug-in Attributes of scope Application which define a default behavior for that plug-in without having to set a value for each single instance where you use it. But the attribute is also defined with scope Component to allow to change that default setting for a particular instance where the plug-in is used in the application.
Examples for an attribute have been moved into a dedicated attribute in the Custom Plug-in Attributes definition. Again, this will make sure that examples are always displayed in the same format and the same position in the attribute help text. In a future release of APEX we do also plan to integrate the examples into the Code Editor to make it easier so access them while entering a SQL Statement, …
Set Text Case
This new attribute is only available for Custom Plug-in Attributes of type Text and Textarea. It allows to specify if a entered attribute value should automatically be converted to Upper or Lowercase or if it should be stored unchanged.
This new attribute is only available for attributes of type Integer, Number and Text and will be displayed next to the attribute input field to indicate which Unit (for example: Pixel) the entered value should be. Note: Only Property Editor in Page Designer will use this new attribute!
Supported User Interfaces
If you write a Plug-in which works for Desktop and Mobile user interfaces, you can use the new Supported For checkboxes in the User Interface region of a Custom Plug-in Attribute to specify if an attribute is just available for Desktop, Mobile or Both. If you don’t check any checkbox then APEX will interpret that as Both.
Interested in more Plug-in Enhancements?
Check out my other blog postings of this series of Plug-in Enhancements in Oracle APEX 5.0.