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