Framework  3.9
TreeSelectFieldRenderer Class Reference

Field renderer for data fields that are selectable via a tree control. More...

+ Inheritance diagram for TreeSelectFieldRenderer:
+ Collaboration diagram for TreeSelectFieldRenderer:

Public Member Functions

 TreeSelectFieldRenderer (&$form, $field, &$tree, $label=null)
 
 renderScript ($field)
 FieldRenderers can override this method to provide any Javascript that their control requires for an edit form. More...
 
 renderSearchField ($field, $mode="")
 FieldRenderers must override this method to provide the HTML implementation of the control displayed for the field in a search form. More...
 
 renderField ($field="")
 FieldRenderers must override this method to provide the HTML implementation of the control used to edit the field. More...
 
 renderReadOnly ($field)
 
 preProcess ($field="")
 FieldRenderers can override this method to provide behavior that occurs prior to the saving of the parent form's target object to the database. More...
 
 postProcess ($field="")
 FieldRenderers can override this method to provide behavior that occurs after the parent form's target object has been saved to the database. More...
 
- Public Member Functions inherited from FieldRenderer
 FieldRenderer ($parent)
 Constructor. More...
 
 _printLabel ($field, $colspan=1, $styles="", $annotation="")
 Internal method to generate the HTML for the field label. More...
 
 _getLabel ($field, $addSuffix=true)
 
 _startField ($field, $styles="")
 Internal method to generate the starting HTML for the field (including the label) More...
 
 _endField ($field)
 Internal method to generate the closing HTML for the field. More...
 
 addValidatorsToForm ($field, $required=false)
 This method is called by the AutoForm to add any default input validators that are required by the FieldRenderer. More...
 
 addSearchValidatorsToForm ($field, $mode, $required=false)
 For SearchForm, the validator field needs to match the name tag in the form which is in the format field:mode. More...
 
 formatName ($item, $name)
 Formats the given DataItem based on the supplied format string. More...
 
 renderSearchScript ($field, $mode)
 FieldRenderers can override this method to provide any Javascript that the control requires when being used in a search form. More...
 
 renderOnSubmitHandler ($field)
 FieldRenderers can override this method to provide any Javascript that must be executed when the form is submitted on the client. More...
 

Public Attributes

 $tree
 
 $field
 
 $onPreProcess
 
 $onPostProcess
 
- Public Attributes inherited from FieldRenderer
 $parent = null
 
 $labelSuffix = ""
 
 $colspan = 1
 
 $annotateBefore = false
 
 $annotateNextLine = true
 
 $hideLabel = false
 
 $onPreProcess = null
 callback hook for processing prior to saving the form's data object - individual renderers may override with custom processing More...
 
 $onPostProcess = null
 callback hook for processing after saving the form's data object - individual renderers may override with custom processing More...
 

Detailed Description

Field renderer for data fields that are selectable via a tree control.

Renders using a framework tree control that must be constructed by the calling code.

Definition at line 45 of file tree_select_field_renderer.inc.

Member Function Documentation

◆ postProcess()

TreeSelectFieldRenderer::postProcess (   $field = "")

FieldRenderers can override this method to provide behavior that occurs after the parent form's target object has been saved to the database.

For example, the CrossReferenceSelectFieldRenderer overrides this method to update crossference tables based on the user's selection.

Parameters
string$field

Reimplemented from FieldRenderer.

Definition at line 104 of file tree_select_field_renderer.inc.

105  {
106  if ($this->onPostProcess != null)
107  {
108  $callback = $this->onPostProcess;
109  call_user_func($callback, $this, $field);
110  }
111  }

◆ preProcess()

TreeSelectFieldRenderer::preProcess (   $field = "")

FieldRenderers can override this method to provide behavior that occurs prior to the saving of the parent form's target object to the database.

For example, the FileUploadFieldRenderer overrides this method to process the uploading of the file and then store the location in the associated field in the target object.

Parameters
string$fieldthe field name

Reimplemented from FieldRenderer.

Definition at line 95 of file tree_select_field_renderer.inc.

96  {
97  if ($this->onPreProcess != null)
98  {
99  $callback = $this->onPreProcess;
100  call_user_func($callback, $this, $field);
101  }
102  }

◆ renderField()

TreeSelectFieldRenderer::renderField (   $field = "")

FieldRenderers must override this method to provide the HTML implementation of the control used to edit the field.

Parameters
string$fieldthe field name

Reimplemented from FieldRenderer.

Definition at line 81 of file tree_select_field_renderer.inc.

82  {
83  if (!$field) $field = $this->field;
84 
85  $this->_startField($field);
86  $this->tree->writeHTML();
87  $this->_endField($field);
88  }
_startField($field, $styles="")
Internal method to generate the starting HTML for the field (including the label)
_endField($field)
Internal method to generate the closing HTML for the field.

◆ renderReadOnly()

TreeSelectFieldRenderer::renderReadOnly (   $field)

Definition at line 90 of file tree_select_field_renderer.inc.

91  {
92  //TODO: Implement this
93  }

◆ renderScript()

TreeSelectFieldRenderer::renderScript (   $field)

FieldRenderers can override this method to provide any Javascript that their control requires for an edit form.

Parameters
string$fieldthe field name

Reimplemented from FieldRenderer.

Definition at line 70 of file tree_select_field_renderer.inc.

71  {
72  //Not necessary - tree control writes script automatically
73  //$this->tree->writeScript();
74  }

◆ renderSearchField()

TreeSelectFieldRenderer::renderSearchField (   $field,
  $mode = "" 
)

FieldRenderers must override this method to provide the HTML implementation of the control displayed for the field in a search form.

Parameters
string$fieldthe field name

Reimplemented from FieldRenderer.

Definition at line 76 of file tree_select_field_renderer.inc.

77  {
78  $this->renderField($field);
79  }
renderField($field="")
FieldRenderers must override this method to provide the HTML implementation of the control used to ed...

◆ TreeSelectFieldRenderer()

TreeSelectFieldRenderer::TreeSelectFieldRenderer ( $form,
  $field,
$tree,
  $label = null 
)

Definition at line 52 of file tree_select_field_renderer.inc.

53  {
54  $this->tree = $tree;
55  $this->onPreProcess = null;
56  $this->onPostProcess = null;
57  $this->FieldRenderer($form);
58  $this->field = $field;
59  if ($form->data->hasField($field))
60  {
61  $form->override($field, $label, $this);
62  }
63  else
64  {
65  $form->add($this, $field);
66  if ($label) $form->alias($field, $label);
67  }
68  }
FieldRenderer($parent)
Constructor.

Member Data Documentation

◆ $field

TreeSelectFieldRenderer::$field

Definition at line 48 of file tree_select_field_renderer.inc.

◆ $onPostProcess

TreeSelectFieldRenderer::$onPostProcess

Definition at line 50 of file tree_select_field_renderer.inc.

◆ $onPreProcess

TreeSelectFieldRenderer::$onPreProcess

Definition at line 49 of file tree_select_field_renderer.inc.

◆ $tree

TreeSelectFieldRenderer::$tree

Definition at line 47 of file tree_select_field_renderer.inc.


The documentation for this class was generated from the following file: