Hi -

I am working on moving my site from Drupal 6 to 7. One of my own modules provided a Panels style plugin, and I had set style options for the entire Panels page. I did this by clicking a link on the "Content" page of the Panels UI that says "Display Settings," right above "Title type." I thought this was very useful - it makes sense to me to set style settings for the whole page rather than individual regions or panes.

In the new version, this link appears to be gone and I can't find it anywhere else. Is there still a way to set style options for the entire Panels page, and not just an individual region/pane?

Thanks,
Nathan

Comments

Version:7.x-3.0-alpha3» 7.x-3.x-dev

This should be confirmed missing in 7.x-3.x-dev. Thus marking as such.

I don't specifically see the feature you speak of in the D7 version of Panels 3.x-dev but have confirmed it was in D6. Not sure if this is a regression that occurred during the port or if there is a reason the feature was dropped for when porting Panels from D6 to D7.

Assigned:Unassigned» merlinofchaos

@merlin Has this feature been dropped?

Assigned:merlinofchaos» Unassigned
Category:support» feature
Status:Active» Needs review
StatusFileSize
new13.49 KB

Here is a patch that introduces "Wrapper Styles" under the "Display settings" drop-down menu. This allows style plugins to provide "render display" callbacks that can be applied to the entire Panels page. The existing
"No style" and "Rounded corners" style plugins provide an implementation to style the Panels page.

Upcoming patch will include a style base type of "display" for use with Stylizer and possibly some more documentation..

StatusFileSize
new49.81 KB

** Update: just using the name "wrapper" not "display" for most references to the wrapper styles.**

This updated patch provides "wrapper" style base plugins, updated docs, and renamed array keys.

StatusFileSize
new49.89 KB

Even more better! I didn't realize that wrapper settings weren't getting saved correctly. It's all good now. I changed the array key of where wrapper configurations are stored on the $display object to avoid name collisions.

Assigned:Unassigned» merlinofchaos

I've tested the feature, and I must say it looks really nice. The idea is useful and it works as advertised.
My only objection is that you could set the wrapper around the page content with Panels Everywhere instead. Helior commented that on IRC with

It's applicable to sites that don't use PE, also, the styles are applied on the inner content, not the wrapper to the main content pane.

There's a bit to much code that I'm unfamiliar for me to feel comfortable saying I've reviewed it, so I'm assigning it to merlin for a second review.

StatusFileSize
new50.17 KB

I encountered PHP notices while switching layouts. So I'm initializing the wrapper settings in panels_new_display(). One thing that concerns me is whether storing these configurations in the panel_settings display property is the right place or not.

Title:Set style plugin for entire page?Support "wrapper" style plugins for the entire display
StatusFileSize
new314.64 KB
new34.36 KB
new66.58 KB

Posting some screenshots so people have an idea of what this patch accomplishes.

Wrapper Style settings for the display:
Screen Shot 2012-07-11 at 10.10.49 PM.pngStyle plugins can have separate render/settings/etc. callbacks for the "wrapper":
Screen Shot 2012-07-11 at 10.13.02 PM.pngHere the "Rounded Corners" plugin wrapped around the entire display, as well as the regions within it:
Screen Shot 2012-07-11 at 10.15.08 PM.png

does not apply cleanly to panels

StatusFileSize
new50.16 KB

Hmm. The patch applied for me, but I did also notice a whitespace warning. At any rate, here's an updated patch that I /think/ will apply okay.

I've tried this patch on two websites (applying it to the stable (non-dev) version of Panels and it works brilliantly.
The patch applies cleanly with no errors.

Is this patch likely to become a part of panels in the future (I'm just checking so I know if to use in on future projects)?

My only objection is that you could set the wrapper around the page content with Panels Everywhere instead.

Is this feature all ready possible in Panels Everywhere? I looked around for the option, but could not find it.

Can this module be integrated in the future?
http://drupal.org/project/panels_extra_styles

Saved me big time with HTML 5 wrappers for content. I really think this should be in core.

StatusFileSize
new50.25 KB

Minor update that prevents a PHP notice about undefined index for wrapper_settings.

StatusFileSize
new33.76 KB

Re-rolling.