Actually, we could add and design info windows within idempiere, but we have to customize code in order to make it available on DPViews dashboard.
I suggest :
Add 2 columns on AD_InfoWindow :
Label (for storing the message that will be used as the button label)
Image (type String) ; eg: Info16.png / InfoBPartner16.png / ...
Make the name of AD_InfoWindow unique (using beforeSave)
Modification on DPViews
Add a select which gather valid info windows.
> For each, call a new method createBtn (Name, label, Image) - those arguments will be read in the AD_InfoWindow table - which will create the button and attach it to the vbox.
Try to create a single method which will have the button name argument (same as info window). With this, we should be able to recover the table name and key column name and so be able to instanciate the InfoPanel using InfoManager.create
I guess that WAcctViewer will remain as hardcoded as it is a particular panel.