package com.codename1.demos.ddddemo;
import com.codename1.rad.ui.UI;
import com.codename1.rad.nodes.ActionNode;
import static com.codename1.demos.ddddemo.PersonEntityType.*;
import com.codename1.ui.FontImage;
import static com.codename1.ui.FontImage.MATERIAL_DELETE;
import static com.codename1.rad.nodes.FormNode.OVERFLOW_MENU;
import static com.codename1.rad.nodes.FormNode.BOTTOM_RIGHT_MENU;
import static com.codename1.rad.nodes.FormNode.TOP_LEFT_MENU;
public class PersonEditor extends UI {
public static ActionNode
deleteAction = action(
label("Delete"),
description("Delete this user"),
icon(MATERIAL_DELETE)
),
showContactsAction = action(
label("Open Contacts"),
description("Show all contacts"),
icon(FontImage.MATERIAL_CONTACTS)
),
printAction = action(
label("Print"),
description("Print this page"),
icon(FontImage.MATERIAL_PRINT)
);
{
form(
actions(OVERFLOW_MENU, deleteAction, printAction), (1)
actions(TOP_LEFT_MENU, deleteAction, printAction, showContactsAction), (2)
actions(BOTTOM_RIGHT_MENU, deleteAction, printAction), (3)
editable(true),
description("Please edit the person's information in the fields below"),
label("Person Details"),
columns(2),
textField(
label("Name"),
description("Please enter your name"),
tags(Person.name)
),
textField(
tags(description)
),
comboBox(
tags(DemoTags.hairColor)
),
section(
actions(TOP_LEFT_MENU, deleteAction, printAction),
columns(1),
label("Section 2"),
textArea(
tags(DemoTags.userProfile)
),
table(actions(OVERFLOW_MENU, deleteAction, printAction),
label("Quick Links"),
description("Useful links related to this person"),
editable(true),
tags(com.codename1.rad.schemas.Person.url),
columns(new QuickLinkEditor().getAllFields())
)
)
);
}}