I didn't get a chance to finish but here's a quick preview of 2.0. A lot of things are missing. I'll post again with more details on the direction I think it should take.

It hasn't been checked in. Only a direct download. I haven't managed my time effectively and I've been very short on it.

Quick list of changes:

  • A starter theme directory. Doesn't do anything yet.
  • Split 12 & 16 column styles and a combined version. They are *all* included. Doesn't hurt anything for now, all it needs is some code to be selective about it. The styles themselves are rock solid. -I hope. :)
  • .clear class added for clearing a row. Very basic, should be straight forward. Can be applied to block level elements or the "br" tag. There was an issue with line-height in br but I think that's fixed.
  • The .clearfix & .clear-block classes (both are used) is improved. Taken from 960.gs download. Core has a problem with gaps appearing after the applied element. This should no longer be the case.
  • Vertical rhythm. It's a little off ATM. It takes a lot of the core styles so they conform to common spacing.
  • Grouping of core styles into logical groups. They were re-written already so I went ahead and grouped them according to it's purpose. system.css is now very tiny.
  • Improved debugging styles and presentation. It might not be pretty in dated browsers. Uses CSS3 selectors.

I might have missed something but there it is. Any comments are welcome. I'll try to get this into the repo when I get the chance.

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

dvessel’s picture

Title: Sweaping changes for upcoming 2.0 » Sweeping changes for upcoming 2.0

typo.

BrightLoudNoise’s picture

I'd recommend not naming the starter theme directory with a leading hyphen, that isn't very friendly if working from terminal.

Based on your earlier work, I've have been creating panels plugins to recreate the standard panels layouts in 960 dimensions, is that something you'd like to include? or should it be a separate project?

dvessel’s picture

@BrightLoudNoise, I had no clue. Very good to know and something I'll be avoiding. Thanks.

ugerhard’s picture

@BrightLoudNoise I'd be very interested in the panels plugins; that is something that I'll have to tackle myself in an upcoming project, and i bet these could be useful for a lot of people working with ninesixty, so I'd +1 for them to be included with the theme.

dvessel’s picture

Oh, the Panels stuff. I wouldn't mind looking at it. I don't know how plug-in's work so I don't know for sure.

BrightLoudNoise’s picture

FileSize
1.84 KB

@dvessel put the contents of the attached into your ../themes/ninesixty/ folder, and they should be available as layouts when using panels 3.0 after clearing caches.

The 2 examples I've included are based on hard-coded grid-16 container classes and assume that any blocks are suppressed, I'm still trying to sort how to calculate the appropriate interior widths based on other blocks possibly shown in the theme.

juan_g’s picture

A related Panels issue:

Panels 3 grid layout builder

Someone said: "It turned out to be fast enough to make grid layouts as CTools plugins" (comment #16).

It would be great to have Panels module and NineSixty base theme working together. That would make building sites really fast and powerful at the same time. And, additionally, with optional content-first source order (swapping display order with NineSixty's pull & push classes).

Summit’s picture

Subscribing, greetings, Martijn

bensnyder’s picture

subscribing

Gerard’s picture

subscribing

juan_g’s picture

There is some discussion on integration between the 960 grid system and Panels on the thread Theme candidate for 7 core : 960 Grid System.

BTW, the new drupal.org theme (site redesign project) is 960.gs-derived, like NineSixty.

scott859’s picture

subscribing

perandre’s picture

+1 (sorry)

bensnyder’s picture

I don't like the "base theme" feature in drupal. Quite frankly, I think core and modules should be extendable, but themes should stand by themselves. For beginners or non-designers, this is an exception as it is useful to get updates for the theme. But for advanced themers (a.k.a. people building on top of a grid!) a theme like this should be intended to be modified once installed. Not extended through the use of a sub-theme.

Maybe this is a poor view - but good theme's are very specific to a site. A good themer should pick the new features out of new releases and manually add them to his/her theme.

With that said, I'm planning on releasing another 960gs theme in the near future - unless dvessel is interested in combining efforts. Please let me know.

Attached are some panel layouts I thought you guys could use ahead of time. They are just a few of the many I'm working on. These will work out of the box unlike the ones above and they use proper 960gs standards. I have also introduced some conventions in the classes. The most important are the .panel-col-first and .panel-col-last classes. CSS such as:

#content .grid_16 .inside {margin: 0 10px;}
#content .panel-col-first .inside {margin: 0 0 0 10px;}
#content .panel-col-last .inside {margin: 0 10px 0 0;}

...will squeeze the outer panes an additional 10px to allow for 20px of space if you are doing a theme like http://drupal.org/project/marinelli/ where the content is boxed in.

If you have any suggestions, please let me know on this thread. I will let you all know when I have a final release.

-=INSTALL INSTRUCTIONS=-
-----------------------------------------------------------------------
*Note*
I'll say this to avoid any funny questions. [your_theme] stands for whatever your theme is named. Could be "ninesixty" for example.

1) Unzip the folder in your theme so the structure looks like this:
[your_theme]/panels/layouts

2) In [your_theme].info, add the following:
plugins[panels][layouts] = panels/layouts

3) Go into each [your_theme]/panels/layouts/[layout]/[layout].inc file and change [theme] to [your_theme]. In linux/unix (maybe even on a mac), the following command will do it automatically if you are in your theme's directory:

perl -p -i -e 's/[theme]/[your_theme]/g' ./panels/layouts/*/*.inc
(remember to replace [your_theme] with whatever your theme is named.)

4) Clear your theme's cache.

5) Enjoy

bensnyder’s picture

FileSize
36.07 KB

Ahh forgot to attach the file! Here it is.

merlinofchaos’s picture

First, yay, 960gs + Panels == a big win for people who work with 960! That's good stuff.

Second: 'base theme' functionality is very valuable for a number of reasons:

1) A site which changes themes for things like sections can keep a common base, then switch out which theme is actually active. Using subthemes is valuable here.
2) It's much safer to modify an existing theme by subtheming it and keeping your modifications local.
3) For 'stock' themes, it's convenient to have a base theme which handles structure and use subthemes to handle design details.

It's not always the right tool, but I disagree that it's a bad tool.

pabojon’s picture

Thanks for doing this! Just one problem - it looks like all of the CSS files are empty. Problem with the upload?

bensnyder’s picture

No - by default there is no CSS necessary. The empty CSS files are there so that a user can individually style a layout if they wish. Please check out the Panels 960gs theme for more information. I will be updating it today.

shiva7663’s picture

subscribing

okeedoak’s picture

subscribing

maijs’s picture

Subscribing.

entrigan’s picture

#14 worked excellent, except I (and I assume anyone would) needed to escape the [ and ] characters from step 3. That makes the command:

perl -p -i -e 's/\[theme\]/[your_theme]/g' ./panels/layouts/*/*.inc

Thanks pegleg

EDIT: Actually there is another issue: pegleg used grid_x syntax rather than grid-x. This would require a more complicated command to fix so I just changed the ones I needed manually.

EDIT the EDIT: Dunno what I was thinking but the command to change _ to - is perl -p -i -e 's/grid\_/grid\-/g' ./panels/layouts/*/*.inc

dccircuit’s picture

Regarding #22: The final command to change grid_x to grid-x syntax needs to be applied to the .php files not the .inc files. So the command that worked for me was: perl -p -i -e 's/grid\_/grid\-/g' ./panels/layouts/*/*.php

Thanks, entrigan... Your notes helped me out a lot with what I was trying to do.

BenK’s picture

Subscribing...

amitaibu’s picture

1) I think that the typography, element, defaults CSS are nice to have, but we need to make sure that the focus of this theme is on layouts not elements.
In fact in Zen-960 I'll probably css remove those CSS files, as I think that 960's true power is the layouts, and Zen is the elements.

2) Zen forces one to create a sub theme for it to work. Again, looking at Zen-960 this is sub-optimal. Would be nice if 960 could also work as is, without a starterkit.

btw, when is 6-1.x getting back from the code graveyard -- it was blown to pieces :)

dvessel’s picture

Amitaibu, it'll all be optional. For those who don't want to chain Zen and 960, those elements are there which are useful defaults and good starting points.

For your second point, I'm not 100% sure what you mean but I think it get your point. NineSixty will have nothing hardcoded to assume it is the parent most theme. It's only where it introduces features specific to it does it refer the itself.

As for the code graveyard. I know.. I suck at managing code. Completely trashed it and I'd love to revert it to the 1.0 release state so I can branch off the new features more cleanly.

mrfelton’s picture

I use zen generally, but would like to try a 906 theme. I am especially interested in using it with panels and have seen the patch at [780782] which looks like it provides a good starting point. Would you recommended starting with 6.x-1.0 or 6.x-2.x?

Thanks

amitaibu’s picture

> I suck at managing code

Maybe you can login to IRC and we'll try to fix it.

perandre’s picture

@mrfelton: I use version 1 with panels all the time; works like a charm! The proper way would be to use a flexible layout and add classes to panes (grid-6 first, etc). But I'm lazy, so I use predfined rules, like:

.panel-2col .panel-panel {
width: 460px;
}

.panel-2col .panel-col-first {
margin-right: 20px;
}

.panel-2col-stacked .panel-col-first {
width: 620px;
}

.panel-3col-33-stacked .panel-col, .panel-3col-33-stacked .panel-col-first {
width: 300px;
margin-right: 20px;
}

.panel-3col-33-stacked .panel-col-last, .panel-2col-stacked .panel-col-last {
margin-right: 0;
width: 300px;
}

.panel-3col-33-stacked .panel-col .inside, .panel-3col-33-stacked .panel-col-last .inside, .panel-2col .panel-panel .inside  {
margin:0;
}

.panel-col-bottom {
padding-top: 20px;
}
amitaibu’s picture

> The proper way would be to use a flexible layout and add classes to panes

I don't think it's proper as it can work only on panes not on the whole region. For that you can try the Panels layout #780782: Add Panels layout

perandre’s picture

@Amitaibu: True; not very effective.

amitaibu’s picture

@dvessel,
Drupalcon is getting near, and I'd be happy to show people the Panels/ Views integration. Would you like me to help you with CVS stuff?

Anonymous’s picture

Category: task » support

Is the 6.x-2.x version under development? Is there any place where I can download it for testing?

Thanks

muschpusch’s picture

Subscribe

ryan.armstrong’s picture

sub

zdean’s picture

subscribe

andypost’s picture

following

bryancasler’s picture

Looking for a Drupal 7 Panels Grid solution. Anyone know an alternate solution?

bryancasler’s picture

Looking for a Drupal 7 Panels Grid solution. Anyone know an alternate solution?

andypost’s picture