trait AbstractScreen extends Factory with Loggable
The trait that forms the basis for LiftScreen and the Screen instances in Wizard
- Alphabetic
- By Inheritance
- AbstractScreen
- Loggable
- Factory
- SimpleInjector
- Injector
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
final
case class
AFieldBinding
(binding: FieldBinding) extends FilterOrValidate[Nothing] with Product with Serializable
- Attributes
- protected
-
final
case class
AFilter
[T](f: (T) ⇒ T) extends FilterOrValidate[T] with Product with Serializable
- Attributes
- protected
-
final
case class
AVal
[T](v: (T) ⇒ List[FieldError]) extends FilterOrValidate[T] with Product with Serializable
- Attributes
- protected
-
sealed
trait
BoxMarker
extends AnyRef
- Attributes
- protected
-
final
case class
DisplayIf
(func: (BaseField) ⇒ Boolean) extends FilterOrValidate[Nothing] with Product with Serializable
- Attributes
- protected
-
type
Errors = List[FieldError]
- Attributes
- protected
-
trait
Field
extends ConfirmField
A field that's part of a Screen
-
class
FieldBuilder
[T] extends AnyRef
- Attributes
- protected
-
final
case class
FieldTransform
(func: (BaseField) ⇒ (NodeSeq) ⇒ NodeSeq) extends FilterOrValidate[Nothing] with Product with Serializable
- Attributes
- protected
-
sealed
trait
FilterOrValidate
[+T] extends AnyRef
- Attributes
- protected
-
final
case class
FormFieldId
(id: String) extends FilterOrValidate[Nothing] with Product with Serializable
- Attributes
- protected
-
final
case class
FormParam
(fp: SHtml.ElemAttr) extends FilterOrValidate[Nothing] with Product with Serializable
- Attributes
- protected
-
final
case class
Help
(ns: NodeSeq) extends FilterOrValidate[Nothing] with Product with Serializable
- Attributes
- protected
-
sealed
trait
OtherValueInitializer
[T] extends AnyRef
- Attributes
- protected
-
final
case class
OtherValueInitializerImpl
[T](f: () ⇒ T) extends OtherValueInitializer[T] with Product with Serializable
- Attributes
- protected
-
abstract
class
FactoryMaker
[T] extends StackableMaker[T] with Vendor[T]
Create an object or val that is a subclass of the FactoryMaker to generate factory for a particular class as well as define session and request specific vendors and use doWith to define the vendor just for the scope of the call.
Create an object or val that is a subclass of the FactoryMaker to generate factory for a particular class as well as define session and request specific vendors and use doWith to define the vendor just for the scope of the call.
- Definition Classes
- Factory
-
abstract
class
Inject
[T] extends StackableMaker[T] with Vendor[T]
Create an object or val that is a subclass of the FactoryMaker to generate factory for a particular class as well as define session and request specific vendors and use doWith to define the vendor just for the scope of the call.
Create an object or val that is a subclass of the FactoryMaker to generate factory for a particular class as well as define session and request specific vendors and use doWith to define the vendor just for the scope of the call.
- Definition Classes
- SimpleInjector
Abstract Value Members
-
abstract
def
onConfirm_?: Boolean
By default, are all the fields on this screen on the confirm screen?
-
abstract
def
vendAVar[T](dflt: ⇒ T): NonCleanAnyVar[T]
- Attributes
- protected
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
addFields(fields: () ⇒ FieldContainer): Unit
Add a FieldContainer to the Screen.
Add a FieldContainer to the Screen. A FieldContainer can contain either a single field (a BaseField) or a collection of BaseFields. The key take-away is that if the LiftScreen or Wizard is a singleton, you can still display variable number of fields by returning a variable number of BaseField instances from the FieldContainer.
WARNING -- this method is public so it can be called from a Wizard. This method should only be called from within the Screen or Wizard that owns the Screen and not from external code. -
def
additionalAttributes: MetaData
Any additional parameters that need to be put on the form (e.g., mime type)
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- implicit def boxOfScreen[T <: AbstractScreen](in: T): Box[T]
- implicit def boxStrToListFieldError(msg: Box[String]): List[FieldError]
- implicit def boxXmlToListFieldError(msg: Box[NodeSeq]): List[FieldError]
-
def
builder[T](name: ⇒ String, default: ⇒ T, stuff: FilterOrValidate[T]*)(implicit man: Manifest[T]): FieldBuilder[T]
Create a FieldBuilder so you can add help screens, validations and filters.
Create a FieldBuilder so you can add help screens, validations and filters. Remember to invoke "make" on the returned FieldBuilder to convert it into a field
- name
- the name of the field. This is a call-by-name parameter, so you can dynamically calculate the name of the field (e.g., localize its name)
- default
- the default value of the field
- stuff
- any filter or validation functions
- Attributes
- protected
- def cancelButton: Elem
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
implicit
def
elemInABox(in: Elem): Box[Elem]
- Attributes
- protected
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
field[T](name: ⇒ String, default: ⇒ T, stuff: FilterOrValidate[T]*)(implicit man: Manifest[T]): Field { type ValueType = T }
Create a field with a name, default value, and
Create a field with a name, default value, and
- name
- the name of the field. This is a call-by-name parameter, so you can dynamically calculate the name of the fiels (e.g., localize its name)
- default
- the default value of the field
- Attributes
- protected
-
def
field[T](underlying: ⇒ Box[BaseField { type ValueType = T }], stuff: FilterOrValidate[T]*)(implicit man: Manifest[T], marker: BoxMarker): Field { type ValueType = T }
- Attributes
- protected
-
def
field[T](underlying: ⇒ BaseField { type ValueType = T }, stuff: FilterOrValidate[T]*)(implicit man: Manifest[T]): Field { type ValueType = T }
- Attributes
- protected
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- def finishButton: Elem
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
grabParams(in: Seq[FilterOrValidate[_]]): List[SHtml.ElemAttr]
Grabs the FormFieldId and FormParam parameters
Grabs the FormFieldId and FormParam parameters
- Attributes
- protected
-
def
hasUploadField: Boolean
- Attributes
- protected
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
implicit
def
inject[T](implicit man: Manifest[T]): Box[T]
Perform the injection for the given type.
Perform the injection for the given type. You can call: inject[Date] or inject[List[Map[String, PaymentThing]]]. The appropriate Manifest will be
- Definition Classes
- SimpleInjector → Injector
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
localSetup(): Unit
Override this method to do any setup of this screen
Override this method to do any setup of this screen
- Attributes
- protected
-
val
logger: Logger
- Attributes
- protected
- Definition Classes
- Loggable
- Annotations
- @transient()
-
def
makeField[T, OV](theName: ⇒ String, defaultValue: ⇒ T, theToForm: (Field { ... /* 2 definitions in type refinement */ }) ⇒ Box[NodeSeq], otherValue: OtherValueInitializer[OV], stuff: FilterOrValidate[T]*): Field { ... /* 2 definitions in type refinement */ }
Create a field that's added to the Screen
Create a field that's added to the Screen
- theName
the name of the field. This is call-by-name, so you can do things like S.?("Dog's Name") such that the string will be localized
- defaultValue
the starting value for the field. This is also call-by-name which is handy for constructs like:
SomeExternalRequestVarOrSessionVar.get
- theToForm
a function to convert the field into a form
- otherValue
a handy way include other values in the field. The other value is calcualted when the field is initialized. You can, for example, put a list of valid options in the field.
- stuff
a list of filters and validations for the field
- returns
a newly minted Field
- Attributes
- protected
-
def
maxVal[T](len: ⇒ T, msg: ⇒ String)(implicit f: (T) ⇒ Number): (T) ⇒ List[FieldError]
- Attributes
- protected
-
def
minVal[T](len: ⇒ T, msg: ⇒ String)(implicit f: (T) ⇒ Number): (T) ⇒ List[FieldError]
- Attributes
- protected
-
def
multiselect[T](name: ⇒ String, default: ⇒ Seq[T], choices: ⇒ Seq[T], stuff: FilterOrValidate[Seq[T]]*)(implicit f: SHtml.PairStringPromoter[T]): Field { ... /* 2 definitions in type refinement */ }
Create a multi select HTML element
Create a multi select HTML element
- name
the name of the field (call-by-name)
- default
the starting value of the field (call-by-name)
- choices
the possible choices for the select
- stuff
- a list of filters and validations for the field
- f
a PairStringPromoter (a wrapper around a function) that converts T => display String
- returns
a newly minted Field{type ValueType = String}
- Attributes
- protected
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
notNull: (String) ⇒ String
- Attributes
- protected
- def noticeTypeToAttr(screen: AbstractScreen): Box[(Value) ⇒ MetaData]
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
password(name: ⇒ String, defaultValue: ⇒ String, stuff: FilterOrValidate[String]*): Field { type ValueType = String }
Create a password field
Create a password field
- name
the name of the field (call-by-name)
- defaultValue
the starting value of the field (call-by-name)
- stuff
the filters, validators and attributes
- returns
a newly minted Field
- Attributes
- protected
-
def
radio(name: ⇒ String, default: ⇒ String, choices: ⇒ Seq[String], stuff: FilterOrValidate[String]*): Field { ... /* 2 definitions in type refinement */ }
Create a radio HTML element
Create a radio HTML element
- name
the name of the field (call-by-name)
- default
the starting value of the field (call-by-name)
- choices
the possible choices for the select
- stuff
- a list of filters and validations for the field
- returns
a newly minted Field{type ValueType = String}
- Attributes
- protected
-
def
registerInjection[T](f: () ⇒ T)(implicit man: Manifest[T]): Unit
Register a function that will inject for the given Manifest
Register a function that will inject for the given Manifest
- Definition Classes
- SimpleInjector
-
def
removeRegExChars(regEx: String): (String) ⇒ String
- Attributes
- protected
- def screenBottom: Box[Elem]
-
def
screenFields: List[BaseField]
A list of fields in this screen
-
def
screenName: String
The name of the screen.
The name of the screen. Override this to change the screen name.
- def screenNameAsHtml: NodeSeq
- def screenTitle: NodeSeq
- def screenTop: Box[Elem]
- def screenValidate: List[FieldError]
-
def
select[T](name: ⇒ String, default: ⇒ T, choices: ⇒ Seq[T], stuff: FilterOrValidate[T]*)(implicit f: SHtml.PairStringPromoter[T]): Field { ... /* 2 definitions in type refinement */ }
Create a select HTML element
Create a select HTML element
- name
the name of the field (call-by-name)
- default
the starting value of the field (call-by-name)
- choices
the possible choices for the select
- stuff
- a list of filters and validations for the field
- f
a PairStringPromoter (a wrapper around a function) that converts T => display String
- returns
a newly minted Field{type ValueType = String}
- Attributes
- protected
- implicit def strToListFieldError(msg: String): List[FieldError]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
text(name: ⇒ String, defaultValue: ⇒ String, stuff: FilterOrValidate[String]*): Field { type ValueType = String }
Create a text field
Create a text field
- name
the name of the field (call-by-name)
- defaultValue
the starting value of the field (call-by-name)
- stuff
the filters, validators and attributes
- returns
a newly minted Field
- Attributes
- protected
-
def
textarea(name: ⇒ String, defaultValue: ⇒ String, rows: Int, cols: Int, stuff: FilterOrValidate[String]*): Field { type ValueType = String }
Create a textarea field
Create a textarea field
- name
the name of the field (call-by-name)
- defaultValue
the starting value of the field (call-by-name)
- rows
the number of rows in the textarea
- cols
the number of columns in the textarea
- stuff
- a list of filters and validations for the field
- returns
a newly minted Field{type ValueType = String}
- Attributes
- protected
-
def
textarea(name: ⇒ String, defaultValue: ⇒ String, stuff: FilterOrValidate[String]*): Field { type ValueType = String }
Create a textarea field with 80 columns and 5 rows
Create a textarea field with 80 columns and 5 rows
- name
the name of the field (call-by-name)
- defaultValue
the starting value of the field (call-by-name)
- stuff
- a list of filters and validations for the field
- returns
a newly minted Field{type ValueType = String}
- Attributes
- protected
-
def
toLower: (String) ⇒ String
- Attributes
- protected
-
def
toString(): String
- Definition Classes
- AbstractScreen → AnyRef → Any
-
def
toUpper: (String) ⇒ String
- Attributes
- protected
-
def
trim: (String) ⇒ String
- Attributes
- protected
-
def
valMaxLen(len: ⇒ Int, msg: ⇒ String): (String) ⇒ List[FieldError]
A validation helper.
A validation helper. Make sure the string is no more than a particular length and generate a validation issue if not.
- Attributes
- protected
-
def
valMinLen(len: ⇒ Int, msg: ⇒ String): (String) ⇒ List[FieldError]
A validation helper.
A validation helper. Make sure the string is at least a particular length and generate a validation issue if not.
- Attributes
- protected
-
def
valRegex(pat: ⇒ Pattern, msg: ⇒ String): (String) ⇒ List[FieldError]
Make sure the field matches a regular expression
Make sure the field matches a regular expression
- Attributes
- protected
- def validate: List[FieldError]
- def validations: List[() ⇒ List[FieldError]]
-
def
vendForm[T](implicit man: Manifest[T]): Box[(T, (T) ⇒ Any) ⇒ NodeSeq]
- Attributes
- protected
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
- implicit def xmlToListFieldError(msg: NodeSeq): List[FieldError]
-
implicit
object
BoxMarkerObj
extends BoxMarker
A little hack because => BaseField and => Box[BaseField] have the same method signature
A little hack because => BaseField and => Box[BaseField] have the same method signature
- Attributes
- protected
- object Field
-
object
FilterOrValidate
- Attributes
- protected
-
object
NotOnConfirmScreen
extends FilterOrValidate[Nothing] with Product with Serializable
Override the screen default for fields appearing on the confirm screen and force this field not to appear on the confirm screen
Override the screen default for fields appearing on the confirm screen and force this field not to appear on the confirm screen
- Attributes
- protected
-
object
NothingOtherValueInitializer
extends OtherValueInitializer[Nothing] with Product with Serializable
- Attributes
- protected
-
object
OnConfirmScreen
extends FilterOrValidate[Nothing] with Product with Serializable
Override the screen default for fields appearing on the confirm screen and force this field to appear on the confirm screen
Override the screen default for fields appearing on the confirm screen and force this field to appear on the confirm screen
- Attributes
- protected
-
object
currentField
extends ThreadGlobal[FieldIdentifier]
- Attributes
- protected