|
@@ -131,7 +131,6 @@ void la_RootObjectDraw(laBoxedTheme *bt, tnsObject *root, laUiItem* ui){
|
|
|
|
|
|
}else if(e->OffScrShadow){ tnsDelete2DOffscreen(e->OffScrShadow); }
|
|
}else if(e->OffScrShadow){ tnsDelete2DOffscreen(e->OffScrShadow); }
|
|
|
|
|
|
-
|
|
|
|
//{
|
|
//{
|
|
// tnsDrawToOffscreen(e->OffScr, 1, 0);
|
|
// tnsDrawToOffscreen(e->OffScr, 1, 0);
|
|
// //tnsUseShader(T->TEST_MatcapShader);
|
|
// //tnsUseShader(T->TEST_MatcapShader);
|
|
@@ -155,19 +154,20 @@ void la_RootObjectDraw(laBoxedTheme *bt, tnsObject *root, laUiItem* ui){
|
|
|
|
|
|
if(root){
|
|
if(root){
|
|
tnsSetObjectTreeEvaluationArgs(root,root->Active,1,1);
|
|
tnsSetObjectTreeEvaluationArgs(root,root->Active,1,1);
|
|
- tnsEvaluateObjectTree(root);
|
|
|
|
|
|
+ tnsEvaluateObjectTree(root, 0);
|
|
|
|
|
|
glEnable(GL_DEPTH_TEST); glDisable(GL_BLEND);
|
|
glEnable(GL_DEPTH_TEST); glDisable(GL_BLEND);
|
|
|
|
|
|
- tnsUseShader(T->immShader); tnsEnableShaderv(T->immShader);
|
|
|
|
|
|
+ tnsUseShader(T->immShader); tnsEnableShaderv(T->immShader); tnsUseNoTexture();
|
|
tnsUnbindTexture(); tnsUniformUseTexture(T->immShader,0,0); tnsUseMultiplyColor(0);
|
|
tnsUnbindTexture(); tnsUniformUseTexture(T->immShader,0,0); tnsUseMultiplyColor(0);
|
|
tnsDrawObjectTree(root,TNS_EVAL_LAYER_SOLID,0);
|
|
tnsDrawObjectTree(root,TNS_EVAL_LAYER_SOLID,0);
|
|
|
|
|
|
glLineWidth(3);
|
|
glLineWidth(3);
|
|
- glEnable(GL_POLYGON_OFFSET_LINE); glPolygonOffset(-1,-1);
|
|
|
|
|
|
+ tnsUniformUseOffset(T->immShader,1);
|
|
glDepthMask(GL_FALSE); glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
|
|
glDepthMask(GL_FALSE); glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
|
|
tnsDrawObjectTree(root,TNS_EVAL_LAYER_OUTLINE,0);
|
|
tnsDrawObjectTree(root,TNS_EVAL_LAYER_OUTLINE,0);
|
|
glDepthMask(GL_TRUE); glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
|
|
glDepthMask(GL_TRUE); glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
|
|
|
|
+ tnsUniformUseOffset(T->immShader,0);
|
|
glLineWidth(1);
|
|
glLineWidth(1);
|
|
glDisable(GL_POLYGON_OFFSET_LINE);
|
|
glDisable(GL_POLYGON_OFFSET_LINE);
|
|
}
|
|
}
|
|
@@ -470,98 +470,107 @@ void la_CanvasDrawOverlay(laUiItem *ui, int h){
|
|
int la_AnimateUiListRecursive(laUiList *uil);
|
|
int la_AnimateUiListRecursive(laUiList *uil);
|
|
|
|
|
|
void laDefault3DViewOverlay(laUiItem *ui){
|
|
void laDefault3DViewOverlay(laUiItem *ui){
|
|
- laUiList *uil, *gu;
|
|
|
|
- laColumn *c, *cl, *cll, *clr, *cr, *crl, *crr, *gc, *gcl, *gcr;
|
|
|
|
|
|
+ laUiList *uil, *gu,*muil,*gu2;
|
|
|
|
+ laColumn *c, *cl, *cr, *gc, *gcl, *gcr, *mc,*gc2;
|
|
laPropPack *e = &ui->ExtraPP;
|
|
laPropPack *e = &ui->ExtraPP;
|
|
- laUiItem *b, *g, *b1;
|
|
|
|
|
|
+ laUiItem *b, *g, *b1, *b2,*g2;
|
|
|
|
|
|
if (!(uil = ui->Subs.pFirst)) uil = laAddTabPage(ui, "New Group");
|
|
if (!(uil = ui->Subs.pFirst)) uil = laAddTabPage(ui, "New Group");
|
|
|
|
|
|
c = laFirstColumn(uil);
|
|
c = laFirstColumn(uil);
|
|
- laSplitColumn(uil, c, 0.8);
|
|
|
|
- cl = laLeftColumn(c, 0);
|
|
|
|
- cr = laRightColumn(c, 0);
|
|
|
|
- laSplitColumn(uil, cl, 0.25);
|
|
|
|
- cll = laLeftColumn(cl, 0);
|
|
|
|
- clr = laRightColumn(cl, 0);
|
|
|
|
|
|
+ laSplitColumn(uil, c, 0.8); cl = laLeftColumn(c, 0); cr = laRightColumn(c, 0);
|
|
|
|
|
|
- laShowColumnAdjuster(uil, c);
|
|
|
|
|
|
+ b=laBeginRow(uil,c,0,0);
|
|
|
|
+ laUiItem* activeui=laShowInvisibleItem(uil,c,&ui->PP,"active");
|
|
|
|
|
|
- g = laMakeFoldableGroup(uil, cll, "Tools", 0, 1, 0);{
|
|
|
|
- gu = g->Page; gc = laFirstColumn(gu);
|
|
|
|
- laSplitColumn(gu, gc, 0.35); gcl = laLeftColumn(gc, 0); gcr = laRightColumn(gc, 0);
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_delete");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_make_parent");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_unparent");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_add");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_grab");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_scale");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_rotate");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_clear_transformations");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_extrude");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_make");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_knife");
|
|
|
|
- laShowItemFull(gu,gc,&ui->ExtraPP,"_this_M_knife",0,"mode=loop_cut;text=Loop Cut",0,0);
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_merge");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_subdiv");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_separate");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_combine");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_duplicate");
|
|
|
|
- laShowItem(gu,gc,&ui->ExtraPP,"_this_M_recalculate_normals");
|
|
|
|
|
|
+ muil=laMakeMenuPage(uil,c,"👁"); mc=laFirstColumn(muil);{
|
|
|
|
+ laSplitColumn(muil, mc, 0.3); gcl = laLeftColumn(mc, 0); gcr = laRightColumn(mc, 0);
|
|
|
|
+ laShowLabel(muil,gcl,"Floor:",0,0); laShowLabel(muil,gcr,"Axis:",0,0);
|
|
|
|
+ laShowItem(muil,gcl,&ui->ExtraPP,"show_floor_grid")->Flags|=LA_UI_FLAGS_ICON|LA_UI_FLAGS_CYCLE;
|
|
|
|
+ laShowItem(muil,gcr,&ui->ExtraPP,"show_axis")->Flags|=LA_UI_FLAGS_TRANSPOSE|LA_UI_FLAGS_ICON;
|
|
}
|
|
}
|
|
|
|
|
|
- g = laMakeFoldableGroup(uil, cr, "Scene Info", 0, 1, 0);{
|
|
|
|
- gu = g->Page;
|
|
|
|
- gc = laFirstColumn(gu);
|
|
|
|
- laSplitColumn(gu, gc, 0.35);
|
|
|
|
- gcl = laLeftColumn(gc, 0);
|
|
|
|
- gcr = laRightColumn(gc, 0);
|
|
|
|
- laShowItemFull(gu, gc, &ui->PP, 0, LA_WIDGET_COLLECTION_SELECTOR,0,laui_IdentifierOnly,0);
|
|
|
|
- laShowLabel(gu, gcl, "Rename:", 0, 0);
|
|
|
|
- laShowItem(gu, gcr, &ui->PP, "name");
|
|
|
|
|
|
+ muil=laMakeMenuPage(uil,c,"Transform"); mc=laFirstColumn(muil);{
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_grab");
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_scale");
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_rotate");
|
|
|
|
+ laShowSeparator(muil,mc);
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_clear_transformations");
|
|
}
|
|
}
|
|
- g = laMakeFoldableGroup(uil, cr, "Object Info", 0, 0, 0);{
|
|
|
|
- gu = g->Page;
|
|
|
|
- gc = laFirstColumn(gu);
|
|
|
|
- laSplitColumn(gu, gc, 0.5);
|
|
|
|
- gcl = laLeftColumn(gc, 6);
|
|
|
|
- gcr = laRightColumn(gc, 0);
|
|
|
|
|
|
|
|
- b1=laOnConditionThat(gu,gc,laPropExpression(&ui->PP,"active"));{
|
|
|
|
- laShowItem(gu, gc, &ui->PP, "active.name");
|
|
|
|
- b=laOnConditionThat(gu,gc,laPropExpression(&ui->ExtraPP, "delta_mode"));{
|
|
|
|
- laShowLabel(gu, gcl, "DLoc:", 0, 0);laShowItem(gu, gcr, &ui->PP, "active.dlocation")->Flags|=LA_UI_FLAGS_TRANSPOSE;
|
|
|
|
- laShowSeparator(gu,gc);
|
|
|
|
- laShowLabel(gu, gcl, "DRot:", 0, 0);laShowItem(gu, gcr, &ui->PP, "active.drotation")->Flags|=LA_UI_FLAGS_TRANSPOSE;
|
|
|
|
- laShowItem(gu, gc, &ui->PP, "active.dscale");
|
|
|
|
- }laElse(gu,b);{
|
|
|
|
- laShowLabel(gu, gcl, "Loc:", 0, 0);laShowItem(gu, gcr, &ui->PP, "active.location")->Flags|=LA_UI_FLAGS_TRANSPOSE;
|
|
|
|
- laShowSeparator(gu,gc);
|
|
|
|
- laShowLabel(gu, gcl, "Rot:", 0, 0);laShowItem(gu, gcr, &ui->PP, "active.rotation")->Flags|=LA_UI_FLAGS_TRANSPOSE;
|
|
|
|
- laShowItem(gu, gc, &ui->PP, "active.scale");
|
|
|
|
- }laEndCondition(gu,b);
|
|
|
|
- }laElse(gu,b1);{
|
|
|
|
- laShowLabel(gu, gc, "No active object.", 0, 0);
|
|
|
|
- }laEndCondition(gu,b1);
|
|
|
|
|
|
+ muil=laMakeMenuPage(uil,c,"Object"); mc=laFirstColumn(muil);{
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_add");
|
|
|
|
+ laShowSeparator(muil,mc);
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_make_parent");
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_unparent");
|
|
|
|
+ laShowSeparator(muil,mc);
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_duplicate");
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_combine");
|
|
|
|
+ laShowSeparator(muil,mc);
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_delete");
|
|
}
|
|
}
|
|
- g = laMakeFoldableGroup(uil, cr, "Display", 0, 1, 0);{
|
|
|
|
- gu = g->Page;
|
|
|
|
- gc = laFirstColumn(gu);
|
|
|
|
- laSplitColumn(gu, gc, 0.35);
|
|
|
|
- gcl = laLeftColumn(gc, 0);
|
|
|
|
- gcr = laRightColumn(gc, 0);
|
|
|
|
|
|
|
|
- laShowLabel(gu, gcl, "Axis:", 0, 0);
|
|
|
|
- laWidget w={_LA_UI_ENUM_SELECTOR, LA_UI_FLAGS_ICON|LA_UI_FLAGS_CYCLE|LA_UI_FLAGS_TRANSPOSE};
|
|
|
|
- laShowItemFull(gu, gcr, e, "show_axis",&w, "show_prefix=true;" ,0,0);
|
|
|
|
- laShowLabel(gu, gcl, "Floor Grid:", 0, 0);
|
|
|
|
- laShowItemFull(gu, gcr, e, "show_floor_grid", LA_WIDGET_ENUM_CYCLE, 0, 0, 0);
|
|
|
|
- laShowItem(gu, gc, e, "grid_size");
|
|
|
|
- laShowItem(gu, gc, e, "grid_span");
|
|
|
|
|
|
+ b1=laOnConditionThat(uil,c,laPropExpression(&activeui->PP,0));{
|
|
|
|
+ b2=laOnConditionThat(uil,c,laEqual(laPropExpression(&activeui->PP,"type"),laIntExpression(TNS_OBJECT_MESH)));{
|
|
|
|
+ muil=laMakeMenuPage(uil,c,"Mesh"); mc=laFirstColumn(muil);{
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_extrude");
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_make");
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_knife");
|
|
|
|
+ laShowItemFull(muil,mc,&ui->ExtraPP,"_this_M_knife",0,"mode=loop_cut;text=Loop Cut",0,0);
|
|
|
|
+ laShowSeparator(muil,mc);
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_duplicate");
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_merge");
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_separate");
|
|
|
|
+ laShowSeparator(muil,mc);
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_subdiv");
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_recalculate_normals");
|
|
|
|
+ laShowSeparator(muil,mc);
|
|
|
|
+ laShowItem(muil,mc,&ui->ExtraPP,"_this_M_delete");
|
|
|
|
+ }
|
|
|
|
+ laShowSeparator(uil,c);
|
|
|
|
+ laShowItem(uil,c,&ui->ExtraPP,"select_mode")->Flags|=LA_UI_FLAGS_EXPAND;
|
|
|
|
+ laShowItem(uil,c,&ui->ExtraPP,"select_through");
|
|
|
|
+ }laEndCondition(uil,b2);
|
|
|
|
+ }laEndCondition(uil,b1);
|
|
|
|
|
|
- //laShowLabel(gu, gcl, "NPR:", 0, 0);
|
|
|
|
- //laShowItemFull(gu, gcr, e, "npr_line_mode", LA_WIDGET_ENUM_CYCLE, 0, 0, 0);
|
|
|
|
- }
|
|
|
|
|
|
+
|
|
|
|
+ laShowSeparator(uil,c)->Expand=1;
|
|
|
|
+
|
|
|
|
+ laShowItem(uil,c,&ui->ExtraPP,"delta_mode")->Flags|=LA_UI_FLAGS_CYCLE|LA_UI_FLAGS_HIGHLIGHT;
|
|
|
|
+ laShowItem(uil,c,&ui->ExtraPP,"show_details")->Flags|=LA_UI_FLAGS_ICON;
|
|
|
|
+
|
|
|
|
+ laEndRow(uil,b);
|
|
|
|
+
|
|
|
|
+ b=laOnConditionThat(uil,c,laPropExpression(&ui->ExtraPP,"show_details"));{
|
|
|
|
+ laShowColumnAdjuster(uil,c);
|
|
|
|
+
|
|
|
|
+ g2 = laMakeEmptyGroup(uil, cr, "Info", 0);{
|
|
|
|
+ gu2 = g2->Page; gc2 = laFirstColumn(gu2); gu2->HeightCoeff=-1; g2->Flags|=LA_UI_FLAGS_NO_DECAL;
|
|
|
|
+ g = laMakeGroup(gu2, gc2, "Scene Info", 0);{ gu = g->Page; gc = laFirstColumn(gu);
|
|
|
|
+ laShowLabel(gu, gcl, "Name:", 0, 0);
|
|
|
|
+ laShowItem(gu, gc, &ui->PP, "name");
|
|
|
|
+ }
|
|
|
|
+ g = laMakeGroup(gu2, gc2, "Object", 0);{ gu = g->Page; gc = laFirstColumn(gu);
|
|
|
|
+ b1=laOnConditionThat(gu,gc,laPropExpression(&ui->PP,"active"));{
|
|
|
|
+ laShowLabel(gu, gc, "Name:", 0, 0);
|
|
|
|
+ laShowItem(gu, gc, &ui->PP, "active.name");
|
|
|
|
+ b=laOnConditionThat(gu,gc,laPropExpression(&ui->ExtraPP, "delta_mode"));{
|
|
|
|
+ laShowLabel(gu, gc, "DLoc:", 0, 0);laShowItem(gu, gc, &ui->PP, "active.dlocation")->Flags|=LA_UI_FLAGS_TRANSPOSE;
|
|
|
|
+ laShowSeparator(gu,gc);
|
|
|
|
+ laShowLabel(gu, gc, "DRot:", 0, 0);laShowItem(gu, gc, &ui->PP, "active.drotation")->Flags|=LA_UI_FLAGS_TRANSPOSE;
|
|
|
|
+ laShowItem(gu, gc, &ui->PP, "active.dscale");
|
|
|
|
+ }laElse(gu,b);{
|
|
|
|
+ laShowLabel(gu, gc, "Loc:", 0, 0);laShowItem(gu, gc, &ui->PP, "active.location")->Flags|=LA_UI_FLAGS_TRANSPOSE;
|
|
|
|
+ laShowSeparator(gu,gc);
|
|
|
|
+ laShowLabel(gu, gc, "Rot:", 0, 0);laShowItem(gu, gc, &ui->PP, "active.rotation")->Flags|=LA_UI_FLAGS_TRANSPOSE;
|
|
|
|
+ laShowItem(gu, gc, &ui->PP, "active.scale");
|
|
|
|
+ }laEndCondition(gu,b);
|
|
|
|
+ }laElse(gu,b1);{
|
|
|
|
+ laShowLabel(gu, gc, "No active object.", 0, 0);
|
|
|
|
+ }laEndCondition(gu,b1);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }laEndCondition(uil,b);
|
|
}
|
|
}
|
|
void la_3DViewEnsureCamera(laCanvasExtra* e){
|
|
void la_3DViewEnsureCamera(laCanvasExtra* e){
|
|
if(e->ViewingCamera) return;
|
|
if(e->ViewingCamera) return;
|
|
@@ -586,8 +595,6 @@ void la_3DViewInit(laUiItem *ui){
|
|
|
|
|
|
la_3DViewEnsureCamera(e);
|
|
la_3DViewEnsureCamera(e);
|
|
|
|
|
|
- e->GridSize = 10;
|
|
|
|
- e->GridSpan = 15;
|
|
|
|
e->ShowAxis[0] = 1;
|
|
e->ShowAxis[0] = 1;
|
|
e->ShowAxis[1] = 1;
|
|
e->ShowAxis[1] = 1;
|
|
e->ShowFloorGrid = 1;
|
|
e->ShowFloorGrid = 1;
|
|
@@ -764,6 +771,20 @@ int OPMOD_Canvas(laOperator *a, laEvent *e){
|
|
}
|
|
}
|
|
}
|
|
}
|
|
lstClearPointer(&Locals);
|
|
lstClearPointer(&Locals);
|
|
|
|
+
|
|
|
|
+ if(e->Type&LA_KEY_MOUSE_SCROLL){
|
|
|
|
+ laUiItem *pui = 0; laListHandle levels={0}; int dir=(e->Type&LA_STATE_DOWN)?1:-1;
|
|
|
|
+ laUiList *duil = la_DetectUiListRecursiveDeep(subu, e->x, e->y, 10000, &pui, 0, 0, 0, 0, &levels);
|
|
|
|
+ laUiListRecord* lip=levels.pLast; laUiList* uuil=lip->uil; laUiItem* upui=lip->Item.pPrev?((laUiListRecord*)lip->Item.pPrev)->pui:0; int ran=0;
|
|
|
|
+ while (lip && upui){
|
|
|
|
+ if((ran=laPanUiListAuto(uuil, 0, dir*MAIN.ScrollingSpeed*LA_RH,
|
|
|
|
+ uuil->L, upui->R-(uuil->ScrollerShownV?(LA_SCROLL_W+bt->RM):0),
|
|
|
|
+ uuil->U, upui->B-(*upui->Type->Theme)->BM-(uuil->ScrollerShownH?(LA_SCROLL_W+bt->BM):0)))) break;
|
|
|
|
+ lip=lip->Item.pPrev; uuil=lip->uil; upui=lip->Item.pPrev?((laUiListRecord*)lip->Item.pPrev)->pui:0;
|
|
|
|
+ }
|
|
|
|
+ if(ran)laRedrawCurrentPanel();
|
|
|
|
+ if(ran){return LA_RUNNING;}
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1039,8 +1060,6 @@ void la_RegisterUiTypesViewerWidgets(){
|
|
ct=laRegisterCanvasTemplate("la_3DView", "tns_object", 0, la_RootObjectDraw, la_RootObjectDrawOverlay, la_3DViewInit, la_3DViewDestroy);
|
|
ct=laRegisterCanvasTemplate("la_3DView", "tns_object", 0, la_RootObjectDraw, la_RootObjectDrawOverlay, la_3DViewInit, la_3DViewDestroy);
|
|
pc = laCanvasHasExtraProps(ct, sizeof(laCanvasExtra), 2);{
|
|
pc = laCanvasHasExtraProps(ct, sizeof(laCanvasExtra), 2);{
|
|
_LA_PROP_3D_EXTRA = pc;
|
|
_LA_PROP_3D_EXTRA = pc;
|
|
- laAddIntProperty(pc, "grid_size", "Grid Size", "Floor Grid Size Per Cell", 0, 0, "Unit", 100, 1, 1, 10, 0, offsetof(laCanvasExtra, GridSize), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
|
|
|
|
- laAddIntProperty(pc, "grid_span", "Grid Span", "How Many Grids Are Drawn", 0, 0, 0, 25, 1, 1, 10, 0, offsetof(laCanvasExtra, GridSpan), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
|
|
|
|
p = laAddEnumProperty(pc, "show_axis", "Show Axis", "Show Global X,Y,Z Axis", LA_WIDGET_ENUM_CYCLE, "X,Y,Z", 0, 0, 0, offsetof(laCanvasExtra, ShowAxis), 0, 0, 3, 0, 0, 0, 0, 0, 0, 0);{
|
|
p = laAddEnumProperty(pc, "show_axis", "Show Axis", "Show Global X,Y,Z Axis", LA_WIDGET_ENUM_CYCLE, "X,Y,Z", 0, 0, 0, offsetof(laCanvasExtra, ShowAxis), 0, 0, 3, 0, 0, 0, 0, 0, 0, 0);{
|
|
laAddEnumItem(p, "HIDDEN", "Hidden", "Current Axis Is Hidden", U'🌔');
|
|
laAddEnumItem(p, "HIDDEN", "Hidden", "Current Axis Is Hidden", U'🌔');
|
|
laAddEnumItem(p, "SHOWN", "Shown", "Current Axis Is Shown", U'🌑');
|
|
laAddEnumItem(p, "SHOWN", "Shown", "Current Axis Is Shown", U'🌑');
|
|
@@ -1061,6 +1080,10 @@ void la_RegisterUiTypesViewerWidgets(){
|
|
laAddEnumItemAs(p, "NONE", "None", "Regular mode",0,0);
|
|
laAddEnumItemAs(p, "NONE", "None", "Regular mode",0,0);
|
|
laAddEnumItemAs(p, "DELTA", "Delta", "Delta mode",1,0);
|
|
laAddEnumItemAs(p, "DELTA", "Delta", "Delta mode",1,0);
|
|
}
|
|
}
|
|
|
|
+ p = laAddEnumProperty(pc, "show_details", "Show Details", "Show detailed information", LA_WIDGET_ENUM_HIGHLIGHT, 0, 0, 0, 0, offsetof(laCanvasExtra, ShowDetails), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);{
|
|
|
|
+ laAddEnumItem(p, "HIDDEN", "Hidden", "Current Axis Is Hidden", U'🛈');
|
|
|
|
+ laAddEnumItem(p, "SHOWN", "Shown", "Current Axis Is Shown", U'i');
|
|
|
|
+ }
|
|
laAddIntProperty(pc, "height_coeff", "Ui Height", "Ui Height Coefficiency Entry", 0, 0, "Rows", 100, -100, 1, 0, 0, offsetof(laCanvasExtra, HeightCoeff), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
|
|
laAddIntProperty(pc, "height_coeff", "Ui Height", "Ui Height Coefficiency Entry", 0, 0, "Rows", 100, -100, 1, 0, 0, offsetof(laCanvasExtra, HeightCoeff), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
|
|
laAddOperatorProperty(pc, "zoom", "Zoom", "Zoom Viewing Camera", "LA_3d_view_camera_zoom", U'🔎', 0);
|
|
laAddOperatorProperty(pc, "zoom", "Zoom", "Zoom Viewing Camera", "LA_3d_view_camera_zoom", U'🔎', 0);
|
|
laAddOperatorProperty(pc, "rotate", "Rotate", "Rotate Viewing Camera", "LA_3d_view_camera_rotate", U'🗘', 0);
|
|
laAddOperatorProperty(pc, "rotate", "Rotate", "Rotate Viewing Camera", "LA_3d_view_camera_rotate", U'🗘', 0);
|