Directory

← Back

PortalLayout

Display your components in a web-portal style!

Author

Rating

Popularity

<100

PortalLayout is yet another implementation of Vaadin layout. Shortly speaking, all the components you add there are wrapped in the portlets with some fancy functionality built-in (e.g drag and drop and collapsing).

What is offered:

  • No need to settle up DnD functionality.
  • Communication between portals:
    • Make whatever complex UI, bundle its parts with portals.
    • Add portlets.
    • Drag portlets from one portal to the other easily!
    • If needed, make one of your portals not communicative with others - it will neither accept portlets from outer space, nor let its contents go.
  • Dragging by the portlet headers.
  • Customizable positioner highlights the target drop area.
  • Various properties of the portlets (can be set from the server side):
    • Close ability.
    • Collapse ability.
    • Collapse state.
    • Lock state (make it not draggable if needed).
    • Caption.
  • Supports both fixed and relative heights. Here relative height in percents stands for the percent of free space the portlet will consume.
  • Supports spacing and margins.
  • The width of the portlets is always 100%.
  • Customize portlet headers, positioners and controls styles.
  • Action buttons in the headers.
  • Listeners for the collapse and close events.
  • Full caption support.
  • Animations for collapse and close events.
  • Vaadin components in the headers.
  • Custom styles for the portlets.

The project is still in the phase of the development. I would highly appreciate all the bug reports, suggestions, ideas and user experience.

Sample code

final Panel panel = new Panel();
panel.setSizeFull();
panel.getContent().setWidth("100%");
for (int i = 0; i < 5; ++i)
{
  final PortalLayout portal = new PortalLayout();
  TextArea tx = new TextArea();
  tx.setSizeFull();
  portal.addComponent(tx);
  tx.setCaption("Text Area");
}		
layout.addComponent(panel);
videoPortal.addComponent(pl);
videoPortal.setComponentCaption(pl, "Joy Division - Disorder");
videoPortal.addAction(pl, new ToolbarAction(new ThemeResource("stop.png")) {
  @Override
  public void execute(final Context context) {
    pl.stop();
  }
});

Compatibility

(Loading compatibility data...)

Was this helpful? Need more help?
Leave a comment or a question below. You can also join the chat on Discord or ask questions on StackOverflow.

Version

Initial Vaadin7-compatible release. Still quite shaky and several features are missing (will come in the nearest future).

Released
2013-03-12
Maturity
BETA
License
Apache License 2.0

Compatibility

Framework
Vaadin 7.0+
Vaadin 6.5+ in 1.0
Vaadin 6.0+ in 0.1.0
Vaadin 7.0 in 2.0.beta1
Vaadin 6.7 in 2.0.beta1
Browser
Internet Explorer
Internet Explorer
Internet Explorer
Firefox
Opera
Safari
Google Chrome
Internet Explorer

Vaadin Add-on Directory

Find open-source widgets, add-ons, themes, and integrations for your Vaadin application. Vaadin Add-on Directory
The channel for finding, promoting, and distributing Vaadin add-ons.
Online