Include twitter bootstrap in commons.web for easier customization

instead of relying on wicket-bootstrap project.
This commit is contained in:
robin shine 2013-07-03 11:10:02 +08:00
parent 680f8e9118
commit b8c9451eb9
17 changed files with 9625 additions and 15 deletions

View File

@ -47,12 +47,7 @@
<groupId>org.apache.wicket</groupId>
<artifactId>wicket-devutils</artifactId>
<version>${wicketVersion}</version>
</dependency>
<dependency>
<groupId>org.apache.wicket</groupId>
<artifactId>wicket-bootstrap</artifactId>
<version>0.9</version>
</dependency>
</dependency>
<dependency>
<groupId>com.pmease</groupId>
<artifactId>commons.loader</artifactId>

View File

@ -2,13 +2,14 @@ package com.pmease.commons.web.asset;
import java.util.Arrays;
import org.apache.wicket.bootstrap.Bootstrap;
import org.apache.wicket.markup.head.CssHeaderItem;
import org.apache.wicket.markup.head.HeaderItem;
import org.apache.wicket.markup.head.JavaScriptHeaderItem;
import org.apache.wicket.request.resource.CssResourceReference;
import org.apache.wicket.request.resource.JavaScriptResourceReference;
import com.pmease.commons.web.asset.bootstrap.BootstrapResourceReference;
public class CommonResourceReference extends JavaScriptResourceReference {
private static final long serialVersionUID = 1L;
@ -21,7 +22,7 @@ public class CommonResourceReference extends JavaScriptResourceReference {
@Override
public Iterable<? extends HeaderItem> getDependencies() {
return Arrays.asList(
JavaScriptHeaderItem.forReference(Bootstrap.responsive()),
JavaScriptHeaderItem.forReference(new BootstrapResourceReference()),
CssHeaderItem.forReference(new CssResourceReference(CommonResourceReference.class, "common.css")));
}

View File

@ -0,0 +1,30 @@
package com.pmease.commons.web.asset.bootstrap;
import java.util.Arrays;
import org.apache.wicket.ajax.WicketEventJQueryResourceReference;
import org.apache.wicket.markup.head.CssHeaderItem;
import org.apache.wicket.markup.head.HeaderItem;
import org.apache.wicket.markup.head.JavaScriptHeaderItem;
import org.apache.wicket.request.resource.CssResourceReference;
import org.apache.wicket.request.resource.JavaScriptResourceReference;
public class BootstrapResourceReference extends JavaScriptResourceReference {
private static final long serialVersionUID = 1L;
public BootstrapResourceReference() {
super(BootstrapResourceReference.class, "js/bootstrap.js");
}
@Override
public Iterable<? extends HeaderItem> getDependencies() {
HeaderItem jquery = JavaScriptHeaderItem.forReference(WicketEventJQueryResourceReference.get());
HeaderItem stylesheet = CssHeaderItem.forReference(
new CssResourceReference(BootstrapResourceReference.class, "css/bootstrap.css"));
HeaderItem responsiveStylesheet = CssHeaderItem.forReference(
new CssResourceReference(BootstrapResourceReference.class, "css/bootstrap-responsive.css"));
return Arrays.asList(jquery, stylesheet, responsiveStylesheet);
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -8,6 +8,8 @@ import org.apache.wicket.markup.head.JavaScriptHeaderItem;
import org.apache.wicket.request.resource.CssResourceReference;
import org.apache.wicket.request.resource.JavaScriptResourceReference;
import com.pmease.commons.web.asset.bootstrap.BootstrapResourceReference;
public class DropdownResourceReference extends JavaScriptResourceReference {
private static final long serialVersionUID = 1L;
@ -20,7 +22,7 @@ public class DropdownResourceReference extends JavaScriptResourceReference {
@Override
public Iterable<? extends HeaderItem> getDependencies() {
return Arrays.asList(
JavaScriptHeaderItem.forReference(org.apache.wicket.bootstrap.Bootstrap.responsive()),
JavaScriptHeaderItem.forReference(new BootstrapResourceReference()),
JavaScriptHeaderItem.forReference(new JavaScriptResourceReference(
DropdownResourceReference.class, "alignment.js")),
CssHeaderItem.forReference(new CssResourceReference(

View File

@ -8,6 +8,8 @@ import org.apache.wicket.markup.head.JavaScriptHeaderItem;
import org.apache.wicket.request.resource.CssResourceReference;
import org.apache.wicket.request.resource.JavaScriptResourceReference;
import com.pmease.commons.web.asset.bootstrap.BootstrapResourceReference;
public class ModalResourceReference extends JavaScriptResourceReference {
private static final long serialVersionUID = 1L;
@ -20,7 +22,7 @@ public class ModalResourceReference extends JavaScriptResourceReference {
@Override
public Iterable<? extends HeaderItem> getDependencies() {
return Arrays.asList(
JavaScriptHeaderItem.forReference(org.apache.wicket.bootstrap.Bootstrap.responsive()),
JavaScriptHeaderItem.forReference(new BootstrapResourceReference()),
CssHeaderItem.forReference(new CssResourceReference(ModalBehavior.class, "modal.css")));
}

View File

@ -10,13 +10,14 @@ import org.apache.wicket.ajax.attributes.CallbackParameter;
import org.apache.wicket.ajax.attributes.IAjaxCallListener;
import org.apache.wicket.ajax.json.JSONArray;
import org.apache.wicket.ajax.json.JsonFunction;
import org.apache.wicket.bootstrap.Bootstrap;
import org.apache.wicket.markup.head.IHeaderResponse;
import org.apache.wicket.markup.head.JavaScriptHeaderItem;
import org.apache.wicket.markup.head.OnDomReadyHeaderItem;
import org.apache.wicket.request.cycle.RequestCycle;
import org.apache.wicket.request.handler.TextRequestHandler;
import com.pmease.commons.web.asset.bootstrap.BootstrapResourceReference;
@SuppressWarnings("serial")
public abstract class TypeAheadBehavior extends AbstractDefaultAjaxBehavior {
@ -46,7 +47,7 @@ public abstract class TypeAheadBehavior extends AbstractDefaultAjaxBehavior {
public void renderHead(Component component, IHeaderResponse response) {
super.renderHead(component, response);
response.render(JavaScriptHeaderItem.forReference(Bootstrap.responsive()));
response.render(JavaScriptHeaderItem.forReference(new BootstrapResourceReference()));
String template =
"$('#%s').typeahead({\n" +

View File

@ -2,7 +2,6 @@ package com.pmease.commons.web.component.datatablesupport;
import java.util.List;
import org.apache.wicket.bootstrap.Bootstrap;
import org.apache.wicket.extensions.markup.html.repeater.data.table.DataTable;
import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
import org.apache.wicket.extensions.markup.html.repeater.data.table.ISortableDataProvider;
@ -13,6 +12,8 @@ import org.apache.wicket.markup.repeater.Item;
import org.apache.wicket.markup.repeater.OddEvenItem;
import org.apache.wicket.model.IModel;
import com.pmease.commons.web.asset.bootstrap.BootstrapResourceReference;
@SuppressWarnings("serial")
public class CustomDataTable<T, S> extends DataTable<T, S> {
@ -34,8 +35,7 @@ public class CustomDataTable<T, S> extends DataTable<T, S> {
public void renderHead(IHeaderResponse response) {
super.renderHead(response);
response.render(JavaScriptHeaderItem.forReference(Bootstrap
.responsive()));
response.render(JavaScriptHeaderItem.forReference(new BootstrapResourceReference()));
}
}

View File

@ -8,5 +8,7 @@
<a wicket:id="login">login</a>
<a wicket:id="logout">logout</a>
<a wicket:id="check">check</a>
<a class="btn" href="#"><i class="icon-search"></i> Search</a>
</body>
</html>

View File

@ -2,12 +2,15 @@ package com.pmease.gitop.core.web;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authc.UsernamePasswordToken;
import org.apache.wicket.markup.head.IHeaderResponse;
import org.apache.wicket.markup.head.JavaScriptHeaderItem;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.link.Link;
import org.apache.wicket.model.AbstractReadOnlyModel;
import com.pmease.commons.security.SecurityHelper;
import com.pmease.commons.web.asset.bootstrap.BootstrapResourceReference;
import com.pmease.gitop.core.model.User;
@SuppressWarnings("serial")
@ -54,5 +57,12 @@ public class HomePage extends WebPage {
});
}
@Override
public void renderHead(IHeaderResponse response) {
super.renderHead(response);
response.render(JavaScriptHeaderItem.forReference(new BootstrapResourceReference()));
}
}