|
@@ -1640,7 +1640,9 @@ void laui_DriverListItem(laUiList *uil, laPropPack *This, laPropPack *Extra, laC
|
|
|
laUiItem* b=laBeginRow(uil,c,0,0);
|
|
|
laShowItem(uil,c,This,"use_script")->Flags|=LA_UI_FLAGS_ICON|LA_UI_FLAGS_NO_DECAL|LA_UI_FLAGS_CYCLE;
|
|
|
laShowItem(uil,c,This,"identifier")->Flags|=LA_UI_FLAGS_PLAIN;
|
|
|
- laShowItem(uil,c,This,"trigger")->Flags|=LA_UI_FLAGS_PLAIN;
|
|
|
+ laUiItem* b4=laOnConditionThat(uil,c,laNot(laPropExpression(This,"use_script")));{
|
|
|
+ laShowItem(uil,c,This,"trigger")->Flags|=LA_UI_FLAGS_PLAIN;
|
|
|
+ }laEndCondition(uil,b4);
|
|
|
laEndRow(uil,b);
|
|
|
}
|
|
|
void laui_Drivers(laUiList *uil, laPropPack *This, laPropPack *Extra, laColumn *UNUSED, int context){
|
|
@@ -1651,31 +1653,33 @@ void laui_Drivers(laUiList *uil, laPropPack *This, laPropPack *Extra, laColumn *
|
|
|
laShowItemFull(uil,cll,Extra,"detached",0,0,0,0)->Flags|=LA_UI_FLAGS_HIGHLIGHT|LA_UI_FLAGS_ICON;
|
|
|
|
|
|
#define ADD_PAGE \
|
|
|
- laUiItem* b2=laOnConditionThat(uil,cl,laPropExpression(&rb->PP,""));{\
|
|
|
- laUiItem* b=laBeginRow(uil,cr,0,0);\
|
|
|
- laUiItem* b3=laOnConditionThat(uil,cl,laPropExpression(&rb->PP,"drivers.current_page"));{\
|
|
|
- laUiItem* cp=laShowItemFull(uil,cr,&rb->PP,"drivers.current_page",LA_WIDGET_COLLECTION_SELECTOR,0,laui_DriverListItem,0);\
|
|
|
- cp->Flags|=LA_UI_COLLECTION_SIMPLE_SELECTOR;\
|
|
|
- laShowItem(uil,cr,&cp->PP,"name");\
|
|
|
- laShowItem(uil,cr,&rb->PP,"add_driver_page")->Flags|=LA_UI_FLAGS_ICON|LA_UI_FLAGS_EXIT_WHEN_TRIGGERED;\
|
|
|
- laShowItem(uil,cr,&cp->PP,"remove_driver_page")->Flags|=LA_UI_FLAGS_ICON;\
|
|
|
- laShowSeparator(uil,cr);\
|
|
|
- laShowItem(uil,cr,&cp->PP,"trigger");\
|
|
|
- laShowItemFull(uil,cr,&cp->PP,"use_script",0,"icon=📃",0,0)\
|
|
|
- ->Flags|=LA_UI_FLAGS_HIGHLIGHT|LA_UI_FLAGS_CYCLE|LA_UI_FLAGS_ICON;\
|
|
|
- }laElse(uil,b3);{\
|
|
|
- laShowItem(uil,cr,&rb->PP,"add_driver_page")->Flags|=LA_UI_FLAGS_ICON|LA_UI_FLAGS_EXIT_WHEN_TRIGGERED;\
|
|
|
- }laEndCondition(uil,b3);\
|
|
|
- laEndRow(uil,b);\
|
|
|
- }laEndCondition(uil,b2);\
|
|
|
- b2=laOnConditionThat(uil,c,laPropExpression(&rb->PP,"drivers.current_page"));{\
|
|
|
- laUiItem* b3=laOnConditionThat(uil,c,laPropExpression(&rb->PP,"drivers.current_page.use_script"));{\
|
|
|
- laShowItemFull(uil,c,&rb->PP,"drivers.current_page.script",0,0,0,0)->Extra->HeightCoeff=-2;\
|
|
|
- }laElse(uil,b3);{\
|
|
|
- laShowItemFull(uil,c,&rb->PP,"drivers.current_page",LA_WIDGET_COLLECTION_SINGLE,0,laui_RackPage,0)->Flags|=LA_UI_FLAGS_NO_DECAL;\
|
|
|
- }laEndCondition(uil,b3);\
|
|
|
- }laElse(uil,b2);{\
|
|
|
- laShowLabel(uil,c,"Select or add a logic page.",0,0)->Flags|=LA_TEXT_ALIGN_CENTER;\
|
|
|
+ laUiItem* b2=laOnConditionThat(uil,cl,laPropExpression(&rb->PP,""));{ \
|
|
|
+ laUiItem* b=laBeginRow(uil,cr,0,0); \
|
|
|
+ laUiItem* b3=laOnConditionThat(uil,cl,laPropExpression(&rb->PP,"drivers.current_page"));{ \
|
|
|
+ laUiItem* cp=laShowItemFull(uil,cr,&rb->PP,"drivers.current_page",LA_WIDGET_COLLECTION_SELECTOR,0,laui_DriverListItem,0); \
|
|
|
+ cp->Flags|=LA_UI_COLLECTION_SIMPLE_SELECTOR; \
|
|
|
+ laShowItem(uil,cr,&cp->PP,"name"); \
|
|
|
+ laShowItem(uil,cr,&rb->PP,"add_driver_page")->Flags|=LA_UI_FLAGS_ICON|LA_UI_FLAGS_EXIT_WHEN_TRIGGERED; \
|
|
|
+ laShowItem(uil,cr,&cp->PP,"remove_driver_page")->Flags|=LA_UI_FLAGS_ICON; \
|
|
|
+ laShowSeparator(uil,cr); \
|
|
|
+ laShowItemFull(uil,cr,&cp->PP,"use_script",0,"icon=📃",0,0) \
|
|
|
+ ->Flags|=LA_UI_FLAGS_HIGHLIGHT|LA_UI_FLAGS_CYCLE|LA_UI_FLAGS_ICON; \
|
|
|
+ laUiItem* b4=laOnConditionThat(uil,cl,laNot(laPropExpression(&cp->PP,"use_script")));{ \
|
|
|
+ laShowItem(uil,cr,&cp->PP,"trigger"); \
|
|
|
+ }laEndCondition(uil,b4); \
|
|
|
+ }laElse(uil,b3);{ \
|
|
|
+ laShowItem(uil,cr,&rb->PP,"add_driver_page")->Flags|=LA_UI_FLAGS_ICON|LA_UI_FLAGS_EXIT_WHEN_TRIGGERED; \
|
|
|
+ }laEndCondition(uil,b3); \
|
|
|
+ laEndRow(uil,b); \
|
|
|
+ }laEndCondition(uil,b2); \
|
|
|
+ b2=laOnConditionThat(uil,c,laPropExpression(&rb->PP,"drivers.current_page"));{ \
|
|
|
+ laUiItem* b3=laOnConditionThat(uil,c,laPropExpression(&rb->PP,"drivers.current_page.use_script"));{ \
|
|
|
+ laShowItemFull(uil,c,&rb->PP,"drivers.current_page.script",0,0,0,0)->Extra->HeightCoeff=-2; \
|
|
|
+ }laElse(uil,b3);{ \
|
|
|
+ laShowItemFull(uil,c,&rb->PP,"drivers.current_page",LA_WIDGET_COLLECTION_SINGLE,0,laui_RackPage,0)->Flags|=LA_UI_FLAGS_NO_DECAL; \
|
|
|
+ }laEndCondition(uil,b3); \
|
|
|
+ }laElse(uil,b2);{ \
|
|
|
+ laShowLabel(uil,c,"Select or add a logic page.",0,0)->Flags|=LA_TEXT_ALIGN_CENTER; \
|
|
|
}laEndCondition(uil,b2);
|
|
|
|
|
|
laUiItem* b1=laOnConditionThat(uil,c,laPropExpression(Extra,"detached"));{
|
|
@@ -1699,38 +1703,38 @@ void laui_Materials(laUiList *uil, laPropPack *This, laPropPack *Extra, laColumn
|
|
|
laShowItemFull(uil,cl,Extra,"detached",0,0,0,0)->Flags|=LA_UI_FLAGS_HIGHLIGHT|LA_UI_FLAGS_ICON;
|
|
|
|
|
|
#define ADD_PAGE(SEL) \
|
|
|
- laUiItem* b=laBeginRow(uil,cr,0,0);\
|
|
|
- laUiItem* b2=laOnConditionThat(uil,cr,laPropExpression(&rb->PP,""));{\
|
|
|
- laUiItem* cp=laShowInvisibleItem(uil,cr,&rb->PP,"shader_page");\
|
|
|
- if(SEL){\
|
|
|
- laShowItemFull(uil,cr,&rb->PP,"",LA_WIDGET_COLLECTION_SELECTOR,0,laui_IdentifierOnly,0)\
|
|
|
- ->Flags|=LA_UI_COLLECTION_SIMPLE_SELECTOR;\
|
|
|
- }\
|
|
|
- laShowItem(uil,cr,&rb->PP,"name");\
|
|
|
- laShowItem(uil,cr,0,"M_new_material")->Flags|=LA_UI_FLAGS_ICON;\
|
|
|
- laShowItem(uil,cr,&rb->PP,"remove")->Flags|=LA_UI_FLAGS_ICON;\
|
|
|
- laShowSeparator(uil,cr)->Expand=1;\
|
|
|
- laShowItemFull(uil,cr,&cp->PP,"use_script",0,"icon=📃;text=GLSL",0,0)\
|
|
|
- ->Flags|=LA_UI_FLAGS_HIGHLIGHT|LA_UI_FLAGS_CYCLE;\
|
|
|
- laShowItem(uil,cr,&rb->PP,"refresh");\
|
|
|
- laShowSeparator(uil,cr);\
|
|
|
- laShowItem(uil,cr,&rb->PP,"as_library")->Flags|=LA_UI_FLAGS_HIGHLIGHT|LA_UI_FLAGS_CYCLE;\
|
|
|
- }laElse(uil,b2);{\
|
|
|
- if(SEL){\
|
|
|
- laShowItemFull(uil,cr,&rb->PP,"",LA_WIDGET_COLLECTION_SELECTOR,"text=Select",laui_IdentifierOnly,0)\
|
|
|
- ->Flags|=LA_UI_COLLECTION_SIMPLE_SELECTOR|LA_UI_FLAGS_EXPAND;\
|
|
|
- laShowItem(uil,cr,0,"M_new_material")->Flags|=LA_UI_FLAGS_ICON;\
|
|
|
- }\
|
|
|
- }laEndCondition(uil,b2);\
|
|
|
- laEndRow(uil,b);\
|
|
|
- b2=laOnConditionThat(uil,c,laPropExpression(&rb->PP,"shader_page"));{\
|
|
|
- laUiItem* b3=laOnConditionThat(uil,c,laPropExpression(&rb->PP,"shader_page.use_script"));{\
|
|
|
- laShowItemFull(uil,c,&rb->PP,"shader_page.script",0,0,0,0)->Extra->HeightCoeff=-2;\
|
|
|
- }laElse(uil,b3);{\
|
|
|
- laShowItemFull(uil,c,&rb->PP,"shader_page",LA_WIDGET_COLLECTION_SINGLE,0,laui_RackPage,0)->Flags|=LA_UI_FLAGS_NO_DECAL;\
|
|
|
- }laEndCondition(uil,b3);\
|
|
|
- }laElse(uil,b2);{\
|
|
|
- laShowLabel(uil,c,"Select or add a shader page.",0,0)->Flags|=LA_TEXT_ALIGN_CENTER;\
|
|
|
+ laUiItem* b=laBeginRow(uil,cr,0,0); \
|
|
|
+ laUiItem* b2=laOnConditionThat(uil,cr,laPropExpression(&rb->PP,""));{ \
|
|
|
+ laUiItem* cp=laShowInvisibleItem(uil,cr,&rb->PP,"shader_page"); \
|
|
|
+ if(SEL){ \
|
|
|
+ laShowItemFull(uil,cr,&rb->PP,"",LA_WIDGET_COLLECTION_SELECTOR,0,laui_IdentifierOnly,0) \
|
|
|
+ ->Flags|=LA_UI_COLLECTION_SIMPLE_SELECTOR; \
|
|
|
+ } \
|
|
|
+ laShowItem(uil,cr,&rb->PP,"name"); \
|
|
|
+ laShowItem(uil,cr,0,"M_new_material")->Flags|=LA_UI_FLAGS_ICON; \
|
|
|
+ laShowItem(uil,cr,&rb->PP,"remove")->Flags|=LA_UI_FLAGS_ICON; \
|
|
|
+ laShowSeparator(uil,cr)->Expand=1; \
|
|
|
+ laShowItemFull(uil,cr,&cp->PP,"use_script",0,"icon=📃;text=GLSL",0,0) \
|
|
|
+ ->Flags|=LA_UI_FLAGS_HIGHLIGHT|LA_UI_FLAGS_CYCLE; \
|
|
|
+ laShowItem(uil,cr,&rb->PP,"refresh"); \
|
|
|
+ laShowSeparator(uil,cr); \
|
|
|
+ laShowItem(uil,cr,&rb->PP,"as_library")->Flags|=LA_UI_FLAGS_HIGHLIGHT|LA_UI_FLAGS_CYCLE; \
|
|
|
+ }laElse(uil,b2);{ \
|
|
|
+ if(SEL){ \
|
|
|
+ laShowItemFull(uil,cr,&rb->PP,"",LA_WIDGET_COLLECTION_SELECTOR,"text=Select",laui_IdentifierOnly,0) \
|
|
|
+ ->Flags|=LA_UI_COLLECTION_SIMPLE_SELECTOR|LA_UI_FLAGS_EXPAND; \
|
|
|
+ laShowItem(uil,cr,0,"M_new_material")->Flags|=LA_UI_FLAGS_ICON; \
|
|
|
+ } \
|
|
|
+ }laEndCondition(uil,b2); \
|
|
|
+ laEndRow(uil,b); \
|
|
|
+ b2=laOnConditionThat(uil,c,laPropExpression(&rb->PP,"shader_page"));{ \
|
|
|
+ laUiItem* b3=laOnConditionThat(uil,c,laPropExpression(&rb->PP,"shader_page.use_script"));{ \
|
|
|
+ laShowItemFull(uil,c,&rb->PP,"shader_page.script",0,0,0,0)->Extra->HeightCoeff=-2; \
|
|
|
+ }laElse(uil,b3);{ \
|
|
|
+ laShowItemFull(uil,c,&rb->PP,"shader_page",LA_WIDGET_COLLECTION_SINGLE,0,laui_RackPage,0)->Flags|=LA_UI_FLAGS_NO_DECAL; \
|
|
|
+ }laEndCondition(uil,b3); \
|
|
|
+ }laElse(uil,b2);{ \
|
|
|
+ laShowLabel(uil,c,"Select or add a shader page.",0,0)->Flags|=LA_TEXT_ALIGN_CENTER; \
|
|
|
}laEndCondition(uil,b2);
|
|
|
|
|
|
laUiItem* b1=laOnConditionThat(uil,c,laPropExpression(Extra,"detached"));{
|
|
@@ -2064,28 +2068,28 @@ void tnsui_ObjectProperties(laUiList *uil, laPropPack *This, laPropPack *Extra,
|
|
|
laShowItemFull(uil,c,Extra,"detached",0,0,0,0)->Flags|=LA_UI_FLAGS_HIGHLIGHT|LA_UI_FLAGS_ICON;
|
|
|
|
|
|
#define ADD_PAGE1(base,path) \
|
|
|
- laUiItem* rb=laShowItemFull(uil,c,base,path,LA_WIDGET_COLLECTION_SELECTOR,0,laui_IdentifierOnly,0);\
|
|
|
- rb->Flags|=LA_UI_COLLECTION_SIMPLE_SELECTOR;\
|
|
|
- laUiItem* b2=laOnConditionThat(uil,c,laPropExpression(&rb->PP,""));{\
|
|
|
- laShowItem(uil,c,&rb->PP,"name")->Flags|=LA_UI_FLAGS_NO_DECAL;\
|
|
|
- laUiItem* b3=laOnConditionThat(uil,c,laPropExpression(&rb->PP,"active"));{\
|
|
|
- laShowLabel(uil,c,"⯈",0,0); laShowItem(uil,c,&rb->PP,"active.name")->Flags|=LA_UI_FLAGS_NO_DECAL;\
|
|
|
- }laEndCondition(uil,b3);\
|
|
|
- }laEndCondition(uil,b2);\
|
|
|
- laEndRow(uil,b);\
|
|
|
- b=laBeginRow(uil,c,0,0);\
|
|
|
- laShowItemFull(uil,c,Extra,"page",0,0,0,0)->Flags|=LA_UI_FLAGS_EXPAND;\
|
|
|
- laEndRow(uil,b);\
|
|
|
- b=laOnConditionThat(uil,c,laNot(laPropExpression(Extra,"page")));{\
|
|
|
- laShowItemFull(uil,c,base,path ".as_root_object",LA_WIDGET_COLLECTION_SINGLE,0,0,0)->Flags|=LA_UI_FLAGS_NO_DECAL;\
|
|
|
+ laUiItem* rb=laShowItemFull(uil,c,base,path,LA_WIDGET_COLLECTION_SELECTOR,0,laui_IdentifierOnly,0); \
|
|
|
+ rb->Flags|=LA_UI_COLLECTION_SIMPLE_SELECTOR; \
|
|
|
+ laUiItem* b2=laOnConditionThat(uil,c,laPropExpression(&rb->PP,""));{ \
|
|
|
+ laShowItem(uil,c,&rb->PP,"name")->Flags|=LA_UI_FLAGS_NO_DECAL; \
|
|
|
+ laUiItem* b3=laOnConditionThat(uil,c,laPropExpression(&rb->PP,"active"));{ \
|
|
|
+ laShowLabel(uil,c,"⯈",0,0); laShowItem(uil,c,&rb->PP,"active.name")->Flags|=LA_UI_FLAGS_NO_DECAL; \
|
|
|
+ }laEndCondition(uil,b3); \
|
|
|
+ }laEndCondition(uil,b2); \
|
|
|
+ laEndRow(uil,b); \
|
|
|
+ b=laBeginRow(uil,c,0,0); \
|
|
|
+ laShowItemFull(uil,c,Extra,"page",0,0,0,0)->Flags|=LA_UI_FLAGS_EXPAND; \
|
|
|
+ laEndRow(uil,b); \
|
|
|
+ b=laOnConditionThat(uil,c,laNot(laPropExpression(Extra,"page")));{ \
|
|
|
+ laShowItemFull(uil,c,base,path ".as_root_object",LA_WIDGET_COLLECTION_SINGLE,0,0,0)->Flags|=LA_UI_FLAGS_NO_DECAL; \
|
|
|
}laElse(uil,b);
|
|
|
|
|
|
#define ADD_PAGE2 \
|
|
|
- laUiItem* b3=laOnConditionThat(uil,c,laPropExpression(&actui->PP,""));{\
|
|
|
- tnsui_BaseObjectProperties(uil,&actui->PP,0,0,0);\
|
|
|
- }laElse(uil,b3);{\
|
|
|
- laShowLabel(uil,c,"No active object.",0,0)->Flags|=LA_TEXT_ALIGN_CENTER|LA_UI_FLAGS_DISABLED;;\
|
|
|
- }laEndCondition(uil,b3);\
|
|
|
+ laUiItem* b3=laOnConditionThat(uil,c,laPropExpression(&actui->PP,""));{ \
|
|
|
+ tnsui_BaseObjectProperties(uil,&actui->PP,0,0,0); \
|
|
|
+ }laElse(uil,b3);{ \
|
|
|
+ laShowLabel(uil,c,"No active object.",0,0)->Flags|=LA_TEXT_ALIGN_CENTER|LA_UI_FLAGS_DISABLED;; \
|
|
|
+ }laEndCondition(uil,b3); \
|
|
|
laEndCondition(uil,b);
|
|
|
|
|
|
laUiItem* b0=laOnConditionThat(uil,c,laPropExpression(Extra,"detached"));{
|