neilcsmith-net opened a new pull request, #7239:
URL: https://github.com/apache/netbeans/pull/7239

   This PR provides a new, in-development, Dashboard API in the platform, and 
uses it to provide a replacement for the current Welcome page in the IDE.
   
   A widget is a way of contextually grouping actions, textual information, 
images and links on a dashboard. A widget is a logical description of these 
elements (similar perhaps to NotifyDescriptor) - a dashboard displayer handles 
actual rendering to a UI, providing ability to unify design, or output other 
than with Swing.  Widgets are registered in the layer (`Dashboard/Widgets`) and 
referenced where used (currently just `Dashboard/Main`). The idea is to allow 
for future customization similar to how toolbars reference actions, and to 
allow alternative contextual dashboards, such as perhaps an editor dashboard 
providing a customizable quick overview of the file in question.
   
   Why an API?  Well, initially I was writing this for two platform 
applications that need to collate and show information from different modules. 
It overlapped with improvements I think need to be made to the current Welcome 
page, which looks out of place now, and doesn't "grow" with the user to remain 
a useful tool. Ideally, widgets get provided by modules in the same way that 
actions are, rather than all residing within the IDE welcome page replacement.  
The addition of two friend API here provides evidence of why we might want to 
do that in future, and means that at the moment, those widgets could not be 
replicated in a platform application. We might also provide additional widgets 
that the user can add as they get more experienced.
   
   Post NB22 development should (and will from me) focus on adding 
customization, layer generating annotations, additional widgets and 
stabilization.  Possibly also an overlay displayer in addition to top component.
   
   I realise this is a somewhat large change close to freeze. I was hoping to 
get it in a bit earlier, and realise it is likely to require some discussion, 
additional testing and tweaks.  Would love to get it in to NB22 though - I'd 
still like to use it in those platform applications!
   
   Current dashboard display with light and dark themes - 
   
   ![Screenshot from 2024-04-02 
18-07-03](https://github.com/apache/netbeans/assets/3975960/61607306-7aa4-437a-96bf-c30f4b48e26a)
   
   ![Screenshot from 2024-04-02 
18-07-24](https://github.com/apache/netbeans/assets/3975960/9f5e5f41-747f-4bf7-8234-d45a3129fc11)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists

Reply via email to