|
@@ -508,12 +508,15 @@ void laread_ConditionNodeType(laUiConditionNode *ucn, int Type){
|
|
|
ucn->Type = Type;
|
|
|
}
|
|
|
|
|
|
-void* laget_FirstDriverPage(void* unused, void* unused2){
|
|
|
- return MAIN.Drivers->Pages.pFirst;
|
|
|
+void* laget_FirstDriverPage(laRackPageCollection* rpc, void* unused2){
|
|
|
+ return rpc->Pages.pFirst;
|
|
|
}
|
|
|
void* laget_CurrentRackPage(laRackPageCollection* c){
|
|
|
return c->CurrentPage;
|
|
|
}
|
|
|
+void laset_CurrentRackPage(laRackPageCollection* c,laRackPage* rp){
|
|
|
+ memAssignRef(c,&c->CurrentPage,rp);
|
|
|
+}
|
|
|
void* laget_CurrentAnimationAction(void* unused_a){
|
|
|
return MAIN.Animation->CurrentAction;
|
|
|
}
|
|
@@ -753,7 +756,7 @@ void lapost_DetachedProp(laProp *Prop){
|
|
|
}
|
|
|
|
|
|
void latouched_NodeInSocket(void* unused, int hint){
|
|
|
- laDriverRequestRebuild(); laMappingRequestRebuild();
|
|
|
+ laGraphRequestRebuild();
|
|
|
}
|
|
|
|
|
|
int lafilter_NodeCategory(void* unused, laNodeCategory* c){
|
|
@@ -1024,13 +1027,16 @@ void la_RegisterInternalProps(){
|
|
|
laSubGroupExtraFunctions(sp,lafilter_NodeCategory,0,0,0);
|
|
|
|
|
|
laAddSubGroup(p, "input_mapping", "Input Mapping", "Input mapping page collection","la_input_mapping_collection",0,0,0,offsetof(LA,InputMapping),0,0,0,0,0,0,0,LA_UDF_SINGLE);
|
|
|
- laAddSubGroup(p, "drivers", "Drivers", "Driver page collection","la_driver_collection",0,0,0,offsetof(LA,Drivers),0,0,0,0,0,0,0,LA_UDF_SINGLE);
|
|
|
-
|
|
|
+
|
|
|
laAddSubGroup(p, "animation", "Animation", "Animation data","la_animation",0,0,0,offsetof(LA,Animation),0,0,0,0,0,0,0,LA_UDF_SINGLE);
|
|
|
|
|
|
laAddStringProperty(p, "identifier", "Identifier", "Identifier", 0,0,0,0,0,0,0,laget_MainIdentifier, 0,0,LA_AS_IDENTIFIER|LA_READ_ONLY);
|
|
|
laAddSubGroup(p, "test_ucn", "TEST UCN", "---", "udf_content_node",0,0,0,offsetof(LA, TEST_Link), 0,0,0,0,0,0,0,0);
|
|
|
|
|
|
+ ep=laAddEnumProperty(p, "detached_view_switch", "View Detached", "Use detached view on panels", LA_WIDGET_ENUM_HIGHLIGHT,0,0,0,0,offsetof(LA, DetachedViewSwitch),0,0,0,0,0,0,0,0,0,LA_UDF_IGNORE);
|
|
|
+ laAddEnumItemAs(ep, "LINKED", "Linked", "View is linked to global current states", 0, U'🔗');
|
|
|
+ laAddEnumItemAs(ep, "DETACHED", "Detached", "View is detached from global states and is pinned to panel", 1, U'📌');
|
|
|
+
|
|
|
laAddIntProperty(p, "example_int", "Example Integer", "Example integer", 0,0,0,100,0,1, 50,0,offsetof(LA, example_int), 0,0,0,0,0,0,0,0,0,0,0);
|
|
|
laAddStringProperty(p, "example_string", "Example String", "Example string", 0,0,0,0,1, offsetof(LA,example_string), 0,0,0,0,0);
|
|
|
laAddStringProperty(p, "unknown_prop", "Unknown Property", "Placeholder for unknown property, probably due to a wrong property path, or not setting LA_AS_IDENTIFIER in any of the properties.",
|
|
@@ -1049,8 +1055,8 @@ void la_RegisterInternalProps(){
|
|
|
}
|
|
|
p = laAddPropertyContainer("la_driver_collection", "Driver Collection", "Driver collection", 0,0,sizeof(laRackPageCollection), 0,0,1);{
|
|
|
laAddSubGroup(p, "pages", "Pages", "Rack pages","la_rack_page",0,0,0,-1,0,laget_CurrentRackPage,0,0,0,0,offsetof(laRackPageCollection,Pages),0);
|
|
|
- sp=laAddSubGroup(p, "current_page", "Current Page", "Current page","la_rack_page",0,0,0,offsetof(laRackPageCollection,CurrentPage),0,0,0,0,0,0,0,LA_UDF_REFER);
|
|
|
- laSubGroupDetachable(sp,laget_FirstDriverPage,laget_ListNext);
|
|
|
+ sp=laAddSubGroup(p, "current_page", "Current Page", "Current page","la_rack_page",0,0,0,offsetof(laRackPageCollection,CurrentPage),laget_FirstDriverPage,0,laget_ListNext,laset_CurrentRackPage,0,0,0,LA_UDF_REFER);
|
|
|
+ //laSubGroupDetachable(sp,laget_FirstDriverPage,laget_ListNext);
|
|
|
}
|
|
|
|
|
|
p = laAddPropertyContainer("la_rack_page", "Rack Page", "A page of nodes", 0,laui_IdentifierOnly, sizeof(laRackPage), 0,0,2);{
|
|
@@ -1059,6 +1065,13 @@ void la_RegisterInternalProps(){
|
|
|
laAddIntProperty(p,"type", "Type", "Type of the rack", 0,0,0,0,0,0,0,0,offsetof(laRackPage,RackType),0,0,0,0,0,0,0,0,0,0,LA_READ_ONLY);
|
|
|
laAddIntProperty(p,"has_rack", "Has Rack", "Has rack", 0,0,0,0,0,0,0,0,offsetof(laRackPage,Racks.pFirst),0,0,0,0,0,0,0,0,0,0,LA_READ_ONLY|LA_UDF_IGNORE);
|
|
|
laAddSubGroup(p, "racks", "Racks", "Racks for nodes","la_node_rack",0,0,0,-1,0,0,0,0,0,0,offsetof(laRackPage,Racks),0);
|
|
|
+ ep=laAddEnumProperty(p, "trigger", "Trigger", "Trigger evaluation on event",0,0,0,0,0,offsetof(laRackPage,TriggerMode),0,0,0,0,0,0,0,0,0,0);
|
|
|
+ laAddEnumItemAs(ep, "ALWAYS", "Always", "Always evalueave this page",LA_PAGE_TRIGGER_ALWAYS,0);
|
|
|
+ laAddEnumItemAs(ep, "NONE", "None", "This page is only evaluated when called from other pages",LA_PAGE_TRIGGER_NONE,0);
|
|
|
+ ep=laAddEnumProperty(p, "use_script", "Use Script", "Use script instead of nodes",0,0,0,0,0,offsetof(laRackPage,UseScript),0,0,0,0,0,0,0,0,0,0);
|
|
|
+ laAddEnumItemAs(ep, "NODES", "Nodes", "Use nodes to express logic",0,0);
|
|
|
+ laAddEnumItemAs(ep, "SCRIPT", "Script", "Use scripts to express logic",1,0);
|
|
|
+ laAddStringProperty(p, "script", "Script", "Script content",LA_WIDGET_STRING_MULTI,0,0,0,1,offsetof(laRackPage, Script), 0,0,0,0,0);
|
|
|
laAddOperatorProperty(p,"add_rack","Add Rack", "Add a rack into the page", "LA_add_rack", '+', 0);
|
|
|
}
|
|
|
|
|
@@ -1567,6 +1580,8 @@ void la_RegisterInternalProps(){
|
|
|
laAddSubGroup(p, "parent", "Parent", "Object parent", "tns_object",0,0,0,offsetof(tnsObject, ParentObject), 0,0,0,0,0,0,0,LA_UDF_REFER);
|
|
|
laAddSubGroup(p, "children", "Children", "The Children Of This Object", "tns_child_object",0,0,0,-1, 0,0,0,0,0,0,offsetof(tnsObject, ChildObjects), 0);
|
|
|
laAddSubGroup(p, "__actions__", "Actions", "Animation actions", "la_animation_action",0,0,0,-1,0,laget_CurrentAnimationAction,0,laset_CurrentAnimationAction,0,0,offsetof(tnsObject, Actions), 0);
|
|
|
+ laAddSubGroup(p, "drivers", "Drivers", "Driver page collection","la_driver_collection",0,0,0,offsetof(tnsObject,Drivers),0,0,0,0,0,0,0,LA_UDF_SINGLE);
|
|
|
+ laAddOperatorProperty(p, "add_driver_page", "Add Page", "Add a driver page","LA_add_driver_page",'+',0);
|
|
|
}
|
|
|
p = laAddPropertyContainer("tns_mesh_object", "Mesh Object", "Mesh object", 0,0,sizeof(tnsMeshObject), tnspost_Object, 0,2);{
|
|
|
laPropContainerExtraFunctions(p,0,0,tnstouched_Object,0/*tnspropagate_Object*/,0);
|