001package org.nasdanika.html.model.bootstrap.gen; 002 003import org.nasdanika.common.Consumer; 004import org.nasdanika.common.Context; 005import org.nasdanika.common.Function; 006import org.nasdanika.common.ProgressMonitor; 007import org.nasdanika.html.HTMLElement; 008 009/** 010 * Creates a respective section in the table based on the containment reference - header, body, footer. 011 * @author Pavel 012 * 013 */ 014public class TableHeaderConsumerFactoryAdapter extends TableSectionConsumerFactoryAdapter<org.nasdanika.html.model.bootstrap.TableHeader, org.nasdanika.html.bootstrap.Table.TableHeader> { 015 016 public TableHeaderConsumerFactoryAdapter(org.nasdanika.html.model.bootstrap.TableHeader tableHeader) { 017 super(tableHeader); 018 } 019 020 @Override 021 protected Function<HTMLElement<?>, HTMLElement<?>> createConfigureFunction(Context context) throws Exception { 022 @SuppressWarnings("resource") 023 Consumer<org.nasdanika.html.bootstrap.Table.TableHeader> configurator = new Consumer<org.nasdanika.html.bootstrap.Table.TableHeader>() { 024 025 @Override 026 public double size() { 027 return 1; 028 } 029 030 @Override 031 public String name() { 032 return "Table header dark, light"; 033 } 034 035 @Override 036 public void execute(org.nasdanika.html.bootstrap.Table.TableHeader header, ProgressMonitor progressMonitor) throws Exception { 037 org.nasdanika.html.model.bootstrap.TableHeader semanticElement = getTarget(); 038 header.light(semanticElement.isLight()); 039 header.dark(semanticElement.isDark()); 040 } 041 }; 042 043 Function<HTMLElement<?>, HTMLElement<?>> headerConfigureFunction = getWrapper(context).then(configurator.asFunction()).then(toHTMLElement(context)); 044 return super.createConfigureFunction(context).then(headerConfigureFunction); 045 } 046 047 048 049 // TODO - dark, light 050 051 052 053}