Difference between revisions of "LGUI2:objectview"

From Lavish Software Wiki
Jump to navigation Jump to search
 
Line 1: Line 1:
A [[LavishGUI 2]] objectview element is a basic [[LGUI2:Content Container|Content Container]] element, which shows a [[LGUI2:propertyview|propertyview]] for JSON or LavishScript object [[LGUI2:property|properties]].  
+
A [[LavishGUI 2]] objectview element is a basic [[LGUI2:Content Container|Content Container]] element, which shows [[LGUI2:propertyview|propertyviews]] for JSON or LavishScript object [[LGUI2:property|properties]].  
  
 
== Defining an objectview element ==
 
== Defining an objectview element ==
Line 29: Line 29:
  
 
== Examples ==  
 
== Examples ==  
 
+
; An objectview used to view/edit a LavishScript object, with different types of properties
 +
{
 +
  "type":"objectview",
 +
  "verticalAlignment":"stretch",
 +
  "horizontalAlignment":"stretch",
 +
  "objectBinding":{
 +
    "pullFormat":"${ISB2_EzKz.GetSelectedKey}"
 +
  },
 +
  "properties":[
 +
    {
 +
      "name":"Code Name",
 +
      "dataBinding":{
 +
        "pullFormat":"${LGUI2.DataBindingContext.Object.CodeName}",
 +
        "pullReplaceNull":""
 +
      },
 +
      "viewTemplate":"propertyview.textblock"                           
 +
    },
 +
    {
 +
      "name":"Display Name",
 +
      "dataBinding":{
 +
        "pullFormat":"${LGUI2.DataBindingContext.Object.DisplayName}",
 +
        "pushFormat":["LGUI2.DataBindingContext.Object.DisplayName:Set[\"","\"]"],
 +
        "pullReplaceNull":"",
 +
        "pushNullFormat":"LGUI2.DataBindingContext.Object.DisplayName:Set[\"\"]"
 +
      },
 +
      "editTemplate":"propertyview.textbox"                           
 +
    },
 +
    {
 +
      "name":"Auto-Assist",
 +
      "dataBinding":{
 +
        "pullFormat":"${LGUI2.DataBindingContext.Object.AutoAssist}",
 +
        "pushFormat":["LGUI2.DataBindingContext.Object:SetAutoAssist[\"","\"]"]
 +
      },
 +
      "editTemplate":"propertyview.checkbox"                           
 +
    },
 +
    {
 +
      "name":"Use Master Hotkey Toggle",
 +
      "dataBinding":"LGUI2.DataBindingContext.Object.MasterHotkeyToggle",
 +
      "editTemplate":"propertyview.checkbox"                           
 +
    }
 +
  ]
 +
}
  
 
{{LGUI2:Element}}
 
{{LGUI2:Element}}
 
[[Category:LavishGUI 2 Bordered Elements]]
 
[[Category:LavishGUI 2 Bordered Elements]]
 
[[Category:LavishGUI 2 Content Container Elements]]
 
[[Category:LavishGUI 2 Content Container Elements]]

Latest revision as of 18:31, 8 October 2020

A LavishGUI 2 objectview element is a basic Content Container element, which shows propertyviews for JSON or LavishScript object properties.

Defining an objectview element

An objectview element is an Content Container, with additional properties for viewing a JSON or LavishScript object.


objectview properties
object A JSON object definition to view. Alternatively, objectBinding can specify a JSON or LavishScript object
objectBinding A Data Binding definition to use for the object
properties A JSON Array specifying a list of Properties to begin with


objectview events
Define these Event Handlers within an "eventHandlers" Object
onObjectChanged The object being viewed has changed

Examples

An objectview used to view/edit a LavishScript object, with different types of properties
{
  "type":"objectview",
  "verticalAlignment":"stretch",
  "horizontalAlignment":"stretch",
  "objectBinding":{
    "pullFormat":"${ISB2_EzKz.GetSelectedKey}"
  },
  "properties":[
    {
      "name":"Code Name",
      "dataBinding":{
        "pullFormat":"${LGUI2.DataBindingContext.Object.CodeName}",
        "pullReplaceNull":""
      },
      "viewTemplate":"propertyview.textblock"                            
    },
    {
      "name":"Display Name",
      "dataBinding":{
        "pullFormat":"${LGUI2.DataBindingContext.Object.DisplayName}",
        "pushFormat":["LGUI2.DataBindingContext.Object.DisplayName:Set[\"","\"]"],
        "pullReplaceNull":"",
        "pushNullFormat":"LGUI2.DataBindingContext.Object.DisplayName:Set[\"\"]"
      },
      "editTemplate":"propertyview.textbox"                            
    },
    {
      "name":"Auto-Assist",
      "dataBinding":{
        "pullFormat":"${LGUI2.DataBindingContext.Object.AutoAssist}",
        "pushFormat":["LGUI2.DataBindingContext.Object:SetAutoAssist[\"","\"]"]
      },
      "editTemplate":"propertyview.checkbox"                            
    },
    {
      "name":"Use Master Hotkey Toggle",
      "dataBinding":"LGUI2.DataBindingContext.Object.MasterHotkeyToggle",
      "editTemplate":"propertyview.checkbox"                            
    }
  ]
} 

LavishGUI 2 Element Types

LavishGUI 2 LavishScript Object Types

Core API (see Using LavishGUI 2 from LavishScript)
lgui2 - lgui2animateargs - lgui2animationtype - lgui2elementref - lgui2eventargs - lgui2eventhandler - lgui2elementtype - lgui2itemviewgeneratorargs - lgui2inputbinding - lgui2layer - lgui2skin - lgui2trigger
Enums
elgui2animationframestate - elgui2dpad - elgui2edge - elgui2fontflags - elgui2horizontalalignment - elgui2imageorientation - elgui2progresstext - elgui2scrollbar - elgui2sizetocontent - elgui2verticalignment - elgui2visibility
Element Components
lgui2animation - lgui2brush - lgui2fontstyle - lgui2margins - lgui2item - lgui2property - lgui2radialitem - lgui2radialgaugeneedle
Element Base Types
lgui2element - lgui2bordered - lgui2contentbase - lgui2headeredcontentbase - lgui2itemlist
Elements