42 #include <svx/svxids.hrc>
43 #include <svx/strings.hrc>
46 #include <osl/diagnose.h>
52 #include <bitmaps.hlst>
77 else if (pBindings !=
nullptr)
86 "Docking3DEffects",
"svx/ui/docking3deffects.ui")
88 , m_xBtnGeo(m_xBuilder->weld_toggle_button(
"geometry"))
89 , m_xBtnRepresentation(m_xBuilder->weld_toggle_button(
"representation"))
90 , m_xBtnLight(m_xBuilder->weld_toggle_button(
"light"))
91 , m_xBtnTexture(m_xBuilder->weld_toggle_button(
"texture"))
92 , m_xBtnMaterial(m_xBuilder->weld_toggle_button(
"material"))
93 , m_xBtnUpdate(m_xBuilder->weld_toggle_button(
"update"))
94 , m_xBtnAssign(m_xBuilder->weld_button(
"assign"))
96 , m_xFLGeometrie(m_xBuilder->weld_container(
"geoframe"))
97 , m_xFtPercentDiagonal(m_xBuilder->weld_label(
"diagonalft"))
98 , m_xMtrPercentDiagonal(m_xBuilder->weld_metric_spin_button(
"diagonal",
FieldUnit::
PERCENT))
99 , m_xFtBackscale(m_xBuilder->weld_label(
"scaleddepthft"))
100 , m_xMtrBackscale(m_xBuilder->weld_metric_spin_button(
"scaleddepth",
FieldUnit::
PERCENT))
101 , m_xFtEndAngle(m_xBuilder->weld_label(
"angleft"))
102 , m_xMtrEndAngle(m_xBuilder->weld_metric_spin_button(
"angle",
FieldUnit::
DEGREE))
103 , m_xFtDepth(m_xBuilder->weld_label(
"depthft"))
104 , m_xMtrDepth(m_xBuilder->weld_metric_spin_button(
"depth",
FieldUnit::
CM))
106 , m_xFLSegments(m_xBuilder->weld_container(
"segmentsframe"))
107 , m_xNumHorizontal(m_xBuilder->weld_spin_button(
"hori"))
108 , m_xNumVertical(m_xBuilder->weld_spin_button(
"veri"))
110 , m_xFLNormals(m_xBuilder->weld_container(
"normals"))
111 , m_xBtnNormalsObj(m_xBuilder->weld_toggle_button(
"objspecific"))
112 , m_xBtnNormalsFlat(m_xBuilder->weld_toggle_button(
"flat"))
113 , m_xBtnNormalsSphere(m_xBuilder->weld_toggle_button(
"spherical"))
114 , m_xBtnNormalsInvert(m_xBuilder->weld_toggle_button(
"invertnormals"))
115 , m_xBtnTwoSidedLighting(m_xBuilder->weld_toggle_button(
"doublesidedillum"))
116 , m_xBtnDoubleSided(m_xBuilder->weld_toggle_button(
"doublesided"))
118 , m_xFLRepresentation(m_xBuilder->weld_container(
"shadingframe"))
119 , m_xLbShademode(m_xBuilder->weld_combo_box(
"mode"))
121 , m_xFLShadow(m_xBuilder->weld_container(
"shadowframe"))
122 , m_xBtnShadow3d(m_xBuilder->weld_toggle_button(
"shadow"))
123 , m_xFtSlant(m_xBuilder->weld_label(
"slantft"))
124 , m_xMtrSlant(m_xBuilder->weld_metric_spin_button(
"slant",
FieldUnit::
DEGREE))
126 , m_xFLCamera(m_xBuilder->weld_container(
"cameraframe"))
127 , m_xMtrDistance(m_xBuilder->weld_metric_spin_button(
"distance",
FieldUnit::
CM))
128 , m_xMtrFocalLength(m_xBuilder->weld_metric_spin_button(
"focal",
FieldUnit::
CM))
130 , m_xFLLight(m_xBuilder->weld_container(
"illumframe"))
131 , m_xBtnLight1(new
LightButton(m_xBuilder->weld_toggle_button(
"light1")))
132 , m_xBtnLight2(new
LightButton(m_xBuilder->weld_toggle_button(
"light2")))
133 , m_xBtnLight3(new
LightButton(m_xBuilder->weld_toggle_button(
"light3")))
134 , m_xBtnLight4(new
LightButton(m_xBuilder->weld_toggle_button(
"light4")))
135 , m_xBtnLight5(new
LightButton(m_xBuilder->weld_toggle_button(
"light5")))
136 , m_xBtnLight6(new
LightButton(m_xBuilder->weld_toggle_button(
"light6")))
137 , m_xBtnLight7(new
LightButton(m_xBuilder->weld_toggle_button(
"light7")))
138 , m_xBtnLight8(new
LightButton(m_xBuilder->weld_toggle_button(
"light8")))
147 , m_xBtnLightColor(m_xBuilder->weld_button(
"colorbutton1"))
149 , m_xBtnAmbientColor(m_xBuilder->weld_button(
"colorbutton2"))
151 , m_xFLTexture(m_xBuilder->weld_container(
"textureframe"))
152 , m_xBtnTexLuminance(m_xBuilder->weld_toggle_button(
"textype"))
153 , m_xBtnTexColor(m_xBuilder->weld_toggle_button(
"texcolor"))
154 , m_xBtnTexReplace(m_xBuilder->weld_toggle_button(
"texreplace"))
155 , m_xBtnTexModulate(m_xBuilder->weld_toggle_button(
"texmodulate"))
156 , m_xBtnTexObjectX(m_xBuilder->weld_toggle_button(
"texobjx"))
157 , m_xBtnTexParallelX(m_xBuilder->weld_toggle_button(
"texparallelx"))
158 , m_xBtnTexCircleX(m_xBuilder->weld_toggle_button(
"texcirclex"))
159 , m_xBtnTexObjectY(m_xBuilder->weld_toggle_button(
"texobjy"))
160 , m_xBtnTexParallelY(m_xBuilder->weld_toggle_button(
"texparallely"))
161 , m_xBtnTexCircleY(m_xBuilder->weld_toggle_button(
"texcircley"))
162 , m_xBtnTexFilter(m_xBuilder->weld_toggle_button(
"texfilter"))
164 , m_xFLMaterial(m_xBuilder->weld_container(
"materialframe"))
165 , m_xLbMatFavorites(m_xBuilder->weld_combo_box(
"favorites"))
167 , m_xBtnMatColor(m_xBuilder->weld_button(
"colorbutton3"))
169 , m_xBtnEmissionColor(m_xBuilder->weld_button(
"colorbutton4"))
171 , m_xFLMatSpecular(m_xBuilder->weld_container(
"specframe"))
173 , m_xBtnSpecularColor(m_xBuilder->weld_button(
"colorbutton5"))
174 , m_xMtrMatSpecularIntensity(m_xBuilder->weld_metric_spin_button(
"intensity",
FieldUnit::
PERCENT))
177 , m_xCtlPreviewWin(new
weld::CustomWeld(*m_xBuilder,
"preview", *m_xCtlPreview))
179 , m_xLightPreviewGrid(m_xBuilder->weld_container(
"lightpreviewgrid"))
180 , m_xHoriScale(m_xBuilder->weld_scale(
"horiscale"))
181 , m_xVertScale(m_xBuilder->weld_scale(
"vertscale"))
182 , m_xBtn_Corner(m_xBuilder->weld_button(
"corner"))
184 , m_xCtlLightPreviewWin(new
weld::CustomWeld(*m_xBuilder,
"lightpreview", *m_xLightPreview))
185 , m_xCtlLightPreview(new
SvxLightCtl3D(*m_xLightPreview, *m_xHoriScale, *m_xVertScale, *m_xBtn_Corner))
187 , m_xBtnConvertTo3D(m_xBuilder->weld_button(
"to3d"))
188 , m_xBtnLatheObject(m_xBuilder->weld_button(
"tolathe"))
189 , m_xBtnPerspective(m_xBuilder->weld_toggle_button(
"perspective"))
193 , pBindings(pInBindings)
197 SetText(
SvxResId(RID_SVXDLG_FLOAT3D_STR_TITLE));
306 aSize = GetOutputSizePixel();
313 if (pDispatcher !=
nullptr)
317 SfxCallMode::ASYNCHRON | SfxCallMode::RECORD, { &aItem });
323 aSize = get_preferred_size();
324 set_width_request(aSize.Width());
325 set_height_request(aSize.Height());
471 sal_uInt16 nWhich(aIter.FirstWhich());
476 if(SfxItemState::DONTCARE == eState)
478 else if(SfxItemState::SET == eState)
481 nWhich = aIter.NextWhich();
499 if( SfxItemState::SET == eState )
502 bool bExtrude = ( nState & 2 );
503 bool bSphere = ( nState & 4 );
504 bool bCube = ( nState & 8 );
506 bool bChart = ( nState & 32 );
517 m_xFtDepth->set_sensitive( !bCube && !bSphere );
524 if( bCube || bSphere )
532 m_xFtEndAngle->set_sensitive( !bExtrude && !bCube && !bSphere );
534 if( bExtrude || bCube || bSphere )
565 if(eState != SfxItemState::DONTCARE)
568 bBitmap = (eXFS == drawing::FillStyle_BITMAP || eXFS == drawing::FillStyle_GRADIENT || eXFS == drawing::FillStyle_HATCH);
578 if(eState != SfxItemState::DONTCARE)
603 if( eState != SfxItemState::DONTCARE )
606 if( nValue != static_cast<sal_uInt32>(
m_xNumVertical->get_value()) )
628 if( eState != SfxItemState::DONTCARE )
632 if( nValue != nValue2 )
655 if( eState != SfxItemState::DONTCARE )
679 if( eState != SfxItemState::DONTCARE )
704 if( eState != SfxItemState::DONTCARE )
729 if( eState != SfxItemState::DONTCARE )
750 if( eState != SfxItemState::DONTCARE )
779 if( eState != SfxItemState::DONTCARE )
801 if( eState != SfxItemState::DONTCARE )
824 if( eState != SfxItemState::DONTCARE )
844 if( eState != SfxItemState::DONTCARE )
868 if( eState != SfxItemState::DONTCARE )
871 if( nValue !=
m_xMtrSlant->get_value(FieldUnit::DEGREE) )
888 if( eState != SfxItemState::DONTCARE )
892 if( nValue != nValue2 )
912 if( eState != SfxItemState::DONTCARE )
916 if( nValue != nValue2 )
938 if( eState != SfxItemState::DONTCARE )
958 if( eState != SfxItemState::DONTCARE )
979 if( eState != SfxItemState::DONTCARE )
986 if( eState != SfxItemState::DONTCARE )
1006 if( eState != SfxItemState::DONTCARE )
1027 if( eState != SfxItemState::DONTCARE )
1034 if( eState != SfxItemState::DONTCARE )
1054 if( eState != SfxItemState::DONTCARE )
1075 if( eState != SfxItemState::DONTCARE )
1082 if( eState != SfxItemState::DONTCARE )
1102 if( eState != SfxItemState::DONTCARE )
1123 if( eState != SfxItemState::DONTCARE )
1130 if( eState != SfxItemState::DONTCARE )
1150 if( eState != SfxItemState::DONTCARE )
1171 if( eState != SfxItemState::DONTCARE )
1178 if( eState != SfxItemState::DONTCARE )
1198 if( eState != SfxItemState::DONTCARE )
1219 if( eState != SfxItemState::DONTCARE )
1226 if( eState != SfxItemState::DONTCARE )
1246 if( eState != SfxItemState::DONTCARE )
1267 if( eState != SfxItemState::DONTCARE )
1274 if( eState != SfxItemState::DONTCARE )
1294 if( eState != SfxItemState::DONTCARE )
1315 if( eState != SfxItemState::DONTCARE )
1322 if( eState != SfxItemState::DONTCARE )
1347 if( eState != SfxItemState::DONTCARE )
1372 if( eState != SfxItemState::DONTCARE )
1397 if( eState != SfxItemState::DONTCARE )
1426 if( eState != SfxItemState::DONTCARE )
1455 if( eState != SfxItemState::DONTCARE )
1482 if( eState != SfxItemState::DONTCARE )
1503 if( eState != SfxItemState::DONTCARE )
1524 if( eState != SfxItemState::DONTCARE )
1545 if( eState != SfxItemState::DONTCARE )
1567 if( eState != SfxItemState::DONTCARE )
1612 sal_uInt32 nNumber(0xffffffff);
1631 if(nNumber != 0xffffffff)
1653 if(SfxItemState::DONTCARE == eState)
1655 else if(SfxItemState::SET == eState)
1671 rAttrs.
Put(Svx3DPerspectiveItem(nValue));
1680 OSL_FAIL(
"No Pool in GetAttr()! May be incompatible to drviewsi.cxx ?" );
1762 rAttrs.
Put(Svx3DNormalsKindItem(nValue));
1791 rAttrs.
Put(Svx3DShadeModeItem(nValue));
1813 sal_uInt16 nValue2 =
static_cast<sal_uInt16
>(
m_xMtrSlant->get_value(FieldUnit::DEGREE));
2051 if( nValue == 1 || nValue == 3 )
2052 rAttrs.
Put(Svx3DTextureKindItem(nValue));
2064 if( nValue == 1 || nValue == 2 )
2065 rAttrs.
Put(Svx3DTextureModeItem(nValue));
2079 rAttrs.
Put(Svx3DTextureProjectionXItem(nValue));
2093 rAttrs.
Put(Svx3DTextureProjectionYItem(nValue));
2151 if ( !IsFloatingMode() ||
2152 !GetFloatingWindow()->IsRollUp() )
2154 Size aWinSize( GetOutputSizePixel() );
2202 bUpdate = m_xBtnUpdate->get_active();
2207 if (pDispatcher !=
nullptr)
2211 SfxCallMode::ASYNCHRON | SfxCallMode::RECORD, { &aItem });
2223 if (pDispatcher !=
nullptr)
2227 SfxCallMode::ASYNCHRON | SfxCallMode::RECORD, { &aItem });
2234 bool bUpdatePreview = m_xBtnLight->get_active();
2236 m_xBtnGeo->set_active(m_xBtnGeo.get() == &rBtn);
2237 m_xBtnRepresentation->set_active(m_xBtnRepresentation.get() == &rBtn);
2238 m_xBtnLight->set_active(m_xBtnLight.get() == &rBtn);
2239 m_xBtnTexture->set_active(m_xBtnTexture.get() == &rBtn);
2240 m_xBtnMaterial->set_active(m_xBtnMaterial.get() == &rBtn);
2242 if( m_xBtnGeo->get_active() )
2244 if( m_xBtnRepresentation->get_active() )
2246 if( m_xBtnLight->get_active() )
2248 if( m_xBtnTexture->get_active() )
2250 if( m_xBtnMaterial->get_active() )
2256 m_xFLSegments->show();
2257 m_xFLGeometrie->show();
2258 m_xFLNormals->show();
2262 m_xFLSegments->hide();
2263 m_xFLGeometrie->hide();
2264 m_xFLNormals->hide();
2270 m_xFLShadow->show();
2271 m_xFLCamera->show();
2272 m_xFLRepresentation->show();
2276 m_xFLShadow->hide();
2277 m_xFLCamera->hide();
2278 m_xFLRepresentation->hide();
2290 m_xLightPreviewGrid->show();
2291 m_xCtlPreview->Hide();
2297 if( !m_xCtlPreview->IsVisible() )
2299 m_xCtlPreview->Show();
2300 m_xLightPreviewGrid->hide();
2306 m_xFLTexture->show();
2308 m_xFLTexture->hide();
2313 m_xFLMatSpecular->show();
2314 m_xFLMaterial->show();
2318 m_xFLMatSpecular->hide();
2319 m_xFLMaterial->hide();
2321 if( bUpdatePreview && !m_xBtnLight->get_active() )
2327 bool bUpdatePreview =
false;
2328 sal_uInt16 nSId = 0;
2330 if( &rBtn == m_xBtnConvertTo3D.get() )
2332 nSId = SID_CONVERT_TO_3D;
2334 else if( &rBtn == m_xBtnLatheObject.get() )
2336 nSId = SID_CONVERT_TO_3D_LATHE_FAST;
2339 else if( &rBtn == m_xBtnNormalsObj.get() ||
2340 &rBtn == m_xBtnNormalsFlat.get() ||
2341 &rBtn == m_xBtnNormalsSphere.get() )
2343 m_xBtnNormalsObj->set_active( &rBtn == m_xBtnNormalsObj.get() );
2344 m_xBtnNormalsFlat->set_active( &rBtn == m_xBtnNormalsFlat.get() );
2345 m_xBtnNormalsSphere->set_active( &rBtn == m_xBtnNormalsSphere.get() );
2346 bUpdatePreview =
true;
2348 else if( &rBtn == m_xBtnLight1->get_widget() ||
2349 &rBtn == m_xBtnLight2->get_widget() ||
2350 &rBtn == m_xBtnLight3->get_widget() ||
2351 &rBtn == m_xBtnLight4->get_widget() ||
2352 &rBtn == m_xBtnLight5->get_widget() ||
2353 &rBtn == m_xBtnLight6->get_widget() ||
2354 &rBtn == m_xBtnLight7->get_widget() ||
2355 &rBtn == m_xBtnLight8->get_widget() )
2365 if (pToggleBtn != m_xBtnLight1.get() && m_xBtnLight1->
get_active())
2367 m_xBtnLight1->set_active(
false );
2368 m_xBtnLight1->set_prev_active(
false);
2369 m_xLbLight1->hide();
2371 if (pToggleBtn != m_xBtnLight2.get() && m_xBtnLight2->
get_active())
2373 m_xBtnLight2->set_active(
false );
2374 m_xBtnLight2->set_prev_active(
false);
2375 m_xLbLight2->hide();
2377 if( pToggleBtn != m_xBtnLight3.get() && m_xBtnLight3->
get_active() )
2379 m_xBtnLight3->set_active(
false );
2380 m_xBtnLight3->set_prev_active(
false);
2381 m_xLbLight3->hide();
2383 if( pToggleBtn != m_xBtnLight4.get() && m_xBtnLight4->
get_active() )
2385 m_xBtnLight4->set_active(
false );
2386 m_xBtnLight4->set_prev_active(
false);
2387 m_xLbLight4->hide();
2389 if( pToggleBtn != m_xBtnLight5.get() && m_xBtnLight5->
get_active() )
2391 m_xBtnLight5->set_active(
false );
2392 m_xBtnLight5->set_prev_active(
false);
2393 m_xLbLight5->hide();
2395 if( pToggleBtn != m_xBtnLight6.get() && m_xBtnLight6->
get_active() )
2397 m_xBtnLight6->set_active(
false );
2398 m_xBtnLight6->set_prev_active(
false);
2399 m_xLbLight6->hide();
2401 if( pToggleBtn != m_xBtnLight7.get() && m_xBtnLight7->
get_active() )
2403 m_xBtnLight7->set_active(
false );
2404 m_xBtnLight7->set_prev_active(
false);
2405 m_xLbLight7->hide();
2407 if( pToggleBtn != m_xBtnLight8.get() && m_xBtnLight8->
get_active() )
2409 m_xBtnLight8->set_active(
false );
2410 m_xBtnLight8->set_prev_active(
false);
2411 m_xLbLight8->hide();
2421 m_xBtnLightColor->set_sensitive( bEnable );
2424 ClickLight(*pToggleBtn);
2425 bUpdatePreview =
true;
2428 else if( &rBtn == m_xBtnTexLuminance.get() ||
2429 &rBtn == m_xBtnTexColor.get() )
2431 m_xBtnTexLuminance->set_active( &rBtn == m_xBtnTexLuminance.get() );
2432 m_xBtnTexColor->set_active( &rBtn == m_xBtnTexColor.get() );
2433 bUpdatePreview =
true;
2435 else if( &rBtn == m_xBtnTexReplace.get() ||
2436 &rBtn == m_xBtnTexModulate.get() )
2438 m_xBtnTexReplace->set_active( &rBtn == m_xBtnTexReplace.get() );
2439 m_xBtnTexModulate->set_active( &rBtn == m_xBtnTexModulate.get() );
2440 bUpdatePreview =
true;
2442 else if( &rBtn == m_xBtnTexParallelX.get() ||
2443 &rBtn == m_xBtnTexCircleX.get() ||
2444 &rBtn == m_xBtnTexObjectX.get() )
2446 m_xBtnTexParallelX->set_active( &rBtn == m_xBtnTexParallelX.get() );
2447 m_xBtnTexCircleX->set_active( &rBtn == m_xBtnTexCircleX.get() );
2448 m_xBtnTexObjectX->set_active( &rBtn == m_xBtnTexObjectX.get() );
2449 bUpdatePreview =
true;
2451 else if( &rBtn == m_xBtnTexParallelY.get() ||
2452 &rBtn == m_xBtnTexCircleY.get() ||
2453 &rBtn == m_xBtnTexObjectY.get() )
2455 m_xBtnTexParallelY->set_active( &rBtn == m_xBtnTexParallelY.get() );
2456 m_xBtnTexCircleY->set_active( &rBtn == m_xBtnTexCircleY.get() );
2457 m_xBtnTexObjectY->set_active( &rBtn == m_xBtnTexObjectY.get() );
2458 bUpdatePreview =
true;
2460 else if (&rBtn == m_xBtnShadow3d.get())
2462 m_xFtSlant->set_sensitive( m_xBtnShadow3d->get_active() );
2463 m_xMtrSlant->set_sensitive( m_xBtnShadow3d->get_active() );
2464 bUpdatePreview =
true;
2469 bUpdatePreview =
true;
2475 if (pDispatcher !=
nullptr)
2479 SfxCallMode::ASYNCHRON | SfxCallMode::RECORD, { &aItem });
2482 else if( bUpdatePreview )
2491 if( &rBtn == m_xBtnLightColor.get() )
2492 pLb = GetCLbByButton();
2493 else if( &rBtn == m_xBtnAmbientColor.get() )
2494 pLb = m_xLbAmbientlight.get();
2495 else if( &rBtn == m_xBtnMatColor.get() )
2496 pLb = m_xLbMatColor.get();
2497 else if( &rBtn == m_xBtnEmissionColor.get() )
2498 pLb = m_xLbMatEmission.get();
2500 pLb = m_xLbMatSpecular.get();
2508 LBSelectColor(pLb, aColor);
2509 SelectColorHdl(*pLb);
2515 bool bUpdatePreview =
false;
2518 if (&rListBox == m_xLbMatFavorites.get())
2523 sal_uInt16 nSpecIntens = 20;
2525 switch( m_xLbMatFavorites->get_active() )
2529 aColObj =
Color(230,230,255);
2530 aColEmis =
Color(10,10,30);
2531 aColSpec =
Color(200,200,200);
2538 aColObj =
Color(230,255,0);
2539 aColEmis =
Color(51,0,0);
2540 aColSpec =
Color(255,255,240);
2547 aColObj =
Color(36,117,153);
2548 aColEmis =
Color(18,30,51);
2549 aColSpec =
Color(230,230,255);
2556 aColObj =
Color(255,48,57);
2557 aColEmis =
Color(35,0,0);
2558 aColSpec =
Color(179,202,204);
2565 aColObj =
Color(153,71,1);
2566 aColEmis =
Color(21,22,0);
2567 aColSpec =
Color(255,255,153);
2572 LBSelectColor( m_xLbMatColor.get(), aColObj );
2573 LBSelectColor( m_xLbMatEmission.get(), aColEmis );
2574 LBSelectColor( m_xLbMatSpecular.get(), aColSpec );
2575 m_xMtrMatSpecularIntensity->set_value(nSpecIntens, FieldUnit::PERCENT);
2577 bUpdatePreview =
true;
2579 else if (&rListBox == m_xLbShademode.get())
2580 bUpdatePreview =
true;
2582 if( bUpdatePreview )
2588 bool bUpdatePreview =
false;
2590 if( &rListBox == m_xLbMatColor.get() ||
2591 &rListBox == m_xLbMatEmission.get() ||
2592 &rListBox == m_xLbMatSpecular.get() )
2594 m_xLbMatFavorites->set_active( 0 );
2595 bUpdatePreview =
true;
2598 else if( &rListBox == m_xLbAmbientlight.get() )
2600 bUpdatePreview =
true;
2602 else if( &rListBox == m_xLbLight1.get() ||
2603 &rListBox == m_xLbLight2.get() ||
2604 &rListBox == m_xLbLight3.get() ||
2605 &rListBox == m_xLbLight4.get() ||
2606 &rListBox == m_xLbLight5.get() ||
2607 &rListBox == m_xLbLight6.get() ||
2608 &rListBox == m_xLbLight7.get() ||
2609 &rListBox == m_xLbLight8.get() )
2611 bUpdatePreview =
true;
2614 if( bUpdatePreview )
2636 switch(nLightSource)
2656 const sal_uInt32 nLight(m_xCtlLightPreview->GetSvx3DLightControl().GetSelectedLight());
2661 case 0: pBtn = m_xBtnLight1->get_widget();
break;
2662 case 1: pBtn = m_xBtnLight2->get_widget();
break;
2663 case 2: pBtn = m_xBtnLight3->get_widget();
break;
2664 case 3: pBtn = m_xBtnLight4->get_widget();
break;
2665 case 4: pBtn = m_xBtnLight5->get_widget();
break;
2666 case 5: pBtn = m_xBtnLight6->get_widget();
break;
2667 case 6: pBtn = m_xBtnLight7->get_widget();
break;
2668 case 7: pBtn = m_xBtnLight8->get_widget();
break;
2677 if( m_xBtnLight1->get_active() )
2679 m_xBtnLight1->set_active(
false );
2680 m_xLbLight1->set_sensitive(
false );
2682 else if( m_xBtnLight2->get_active() )
2684 m_xBtnLight2->set_active(
false );
2685 m_xLbLight2->set_sensitive(
false );
2687 else if( m_xBtnLight3->get_active() )
2689 m_xBtnLight3->set_active(
false );
2690 m_xLbLight3->set_sensitive(
false );
2692 else if( m_xBtnLight4->get_active() )
2694 m_xBtnLight4->set_active(
false );
2695 m_xLbLight4->set_sensitive(
false );
2697 else if( m_xBtnLight5->get_active() )
2699 m_xBtnLight5->set_active(
false );
2700 m_xLbLight5->set_sensitive(
false );
2702 else if( m_xBtnLight6->get_active() )
2704 m_xBtnLight6->set_active(
false );
2705 m_xLbLight6->set_sensitive(
false );
2707 else if( m_xBtnLight7->get_active() )
2709 m_xBtnLight7->set_active(
false );
2710 m_xLbLight7->set_sensitive(
false );
2712 else if( m_xBtnLight8->get_active() )
2714 m_xBtnLight8->set_active(
false );
2715 m_xLbLight8->set_sensitive(
false );
2717 m_xBtnLightColor->set_sensitive(
false );
2723 OUString lcl_makeColorName(
const Color& rColor)
2726 OUString::number(rColor.
GetRed()) +
2729 OUString::number(rColor.
GetGreen()) +
2732 OUString::number(rColor.
GetBlue());
2741 pLb->
SelectEntry(std::make_pair(rColor, lcl_makeColorName(rColor)));
2788 sal_uInt16 nLight = 8;
2814 if( pBtn ==
nullptr )
2914 bool bNewState = (eState != SfxItemState::DISABLED);
2919 if (pDispatcher !=
nullptr)
2923 SfxCallMode::ASYNCHRON|SfxCallMode::RECORD, { &aItem });
2929 : m_xButton(
std::move(xButton))
2931 , m_bButtonPrevActive(false)
2933 m_xButton->set_from_icon_name(RID_SVXBMP_LAMP_OFF);
2942 m_xButton->set_from_icon_name(RID_SVXBMP_LAMP_ON);
2944 m_xButton->set_from_icon_name(RID_SVXBMP_LAMP_OFF);
#define LINK(Instance, Class, Member)
std::unique_ptr< SfxItemSet > mpRemember2DAttributes
SvxColorItem makeSvx3DLightcolor7Item(const Color &rCol)
void SetFieldUnit(weld::MetricSpinButton &rField, FieldUnit eUnit, bool bAll)
std::unique_ptr< weld::ToggleButton > m_xBtnTexModulate
std::unique_ptr< weld::Container > m_xFLShadow
const SfxPoolItem * ExecuteList(sal_uInt16 nSlot, SfxCallMode nCall, std::initializer_list< SfxPoolItem const * > args, std::initializer_list< SfxPoolItem const * > internalargs=std::initializer_list< SfxPoolItem const * >())
std::unique_ptr< weld::ToggleButton > m_xBtnTexFilter
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_4(SDRATTR_3DSCENE_FIRST+16)
SfxBoolItem makeSvx3DLightOnOff2Item(bool bVal)
SfxBoolItem makeSvx3DDoubleSidedItem(bool bVal)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_5(SDRATTR_3DSCENE_FIRST+25)
constexpr TypedWhichId< Svx3DTextureKindItem > SDRATTR_3DOBJ_TEXTURE_KIND(SDRATTR_3DOBJ_FIRST+16)
SVX_DLLPRIVATE ColorListBox * GetCLbByButton(const LightButton *pBtn=nullptr)
constexpr TypedWhichId< Svx3DTextureProjectionXItem > SDRATTR_3DOBJ_TEXTURE_PROJ_X(SDRATTR_3DOBJ_FIRST+9)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DOBJ_MAT_SPECULAR(SDRATTR_3DOBJ_FIRST+14)
std::unique_ptr< weld::ToggleButton > m_xBtnUpdate
IMPL_LINK_NOARG(Svx3DWin, ClickUpdateHdl, weld::ToggleButton &, void)
Svx3DWin(SfxBindings *pBindings, SfxChildWindow *pCW, vcl::Window *pParent)
void SetMinOutputSizePixel(const Size &rSize)
constexpr TypedWhichId< SfxUInt32Item > SDRATTR_3DOBJ_VERT_SEGS(SDRATTR_3DOBJ_FIRST+4)
std::unique_ptr< LightButton > m_xBtnLight6
std::unique_ptr< weld::ToggleButton > m_xBtnShadow3d
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_2(SDRATTR_3DSCENE_FIRST+22)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DOBJ_NORMALS_INVERT(SDRATTR_3DOBJ_FIRST+8)
std::unique_ptr< weld::Container > m_xFLNormals
virtual void StateChanged(sal_uInt16 nSId, SfxItemState eState, const SfxPoolItem *pState) override
std::unique_ptr< weld::ToggleButton > m_xBtnNormalsSphere
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_5(SDRATTR_3DSCENE_FIRST+8)
std::unique_ptr< weld::ToggleButton > m_xBtnMaterial
std::unique_ptr< weld::Label > m_xFtBackscale
SfxDispatcher * GetDispatcher()
std::unique_ptr< weld::SpinButton > m_xNumVertical
constexpr TypedWhichId< XFillStyleItem > XATTR_FILLSTYLE(XATTR_FILL_FIRST)
virtual void StateChanged(sal_uInt16 nSId, SfxItemState eState, const SfxPoolItem *pState) override
std::unique_ptr< weld::Label > m_xFtEndAngle
std::unique_ptr< FmFormModel > pModel
constexpr OUStringLiteral PERCENT(u"Percent")
void InvalidateItem(sal_uInt16 nWhich)
constexpr TypedWhichId< SfxUInt16Item > SDRATTR_3DOBJ_MAT_SPECULAR_INTENSITY(SDRATTR_3DOBJ_FIRST+15)
std::unique_ptr< weld::ToggleButton > m_xBtnDoubleSided
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DOBJ_DOUBLE_SIDED(SDRATTR_3DOBJ_FIRST+6)
std::unique_ptr< ColorListBox > m_xLbAmbientlight
void SetWindow(const VclPtr< vcl::Window > &p)
constexpr TypedWhichId< XLineStyleItem > XATTR_LINESTYLE(XATTR_LINE_FIRST)
constexpr TypedWhichId< SfxUInt32Item > SDRATTR_3DOBJ_DEPTH(SDRATTR_3DOBJ_FIRST+2)
std::unique_ptr< weld::ToggleButton > m_xBtnLight
std::unique_ptr< weld::Button > m_xBtn_Corner
SVX_DLLPRIVATE void Construct()
SvxColorItem makeSvx3DLightcolor2Item(const Color &rCol)
SfxUInt32Item makeSvx3DVerticalSegmentsItem(sal_uInt32 nVal)
void ClickLight(const LightButton &rBtn)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_7(SDRATTR_3DSCENE_FIRST+19)
static SVX_DLLPRIVATE void LBSelectColor(ColorListBox *pLb, const Color &rColor)
std::unique_ptr< ColorListBox > m_xLbMatSpecular
SfxUInt16Item makeSvx3DMaterialSpecularIntensityItem(sal_uInt16 nVal)
class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DNormalsKindItem SfxBoolItem makeSvx3DNormalsInvertItem(bool bVal)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_2(SDRATTR_3DSCENE_FIRST+14)
constexpr sal_uInt16 SDRATTR_START(XATTR_START)
std::unique_ptr< weld::MetricSpinButton > m_xMtrPercentDiagonal
constexpr TypedWhichId< Svx3DTextureModeItem > SDRATTR_3DOBJ_TEXTURE_MODE(SDRATTR_3DOBJ_FIRST+17)
Svx3DCtrlItem(sal_uInt16, SfxBindings *)
std::unique_ptr< weld::Button > m_xBtnAssign
FieldUnit GetModuleFieldUnit(const SfxItemSet &rSet)
std::unique_ptr< weld::Label > m_xFtDepth
SfxBoolItem makeSvx3DLightOnOff7Item(bool bVal)
SfxUInt16Item makeSvx3DPercentDiagonalItem(sal_uInt16 nVal)
constexpr TypedWhichId< SfxUInt32Item > SDRATTR_3DSCENE_DISTANCE(SDRATTR_3DSCENE_FIRST+1)
SfxModule * GetModule() const
constexpr TypedWhichId< SfxUInt16Item > SDRATTR_3DSCENE_SHADOW_SLANT(SDRATTR_3DSCENE_FIRST+29)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_3(SDRATTR_3DSCENE_FIRST+6)
friend class Svx3DCtrlItem
std::unique_ptr< weld::MetricSpinButton > m_xMtrDistance
std::unique_ptr< weld::ToggleButton > m_xBtnTexCircleY
OUString SvxResId(const char *pId)
short Execute(weld::Window *pParent)
std::unique_ptr< weld::Container > m_xFLSegments
SVX_DLLPRIVATE sal_uInt16 GetLightSource(const LightButton *pBtn)
std::unique_ptr< weld::ToggleButton > m_xBtnTwoSidedLighting
SfxBoolItem makeSvx3DLightOnOff1Item(bool bVal)
class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DTextureKindItem final class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DTextureModeItem final SfxBoolItem makeSvx3DTextureFilterItem(bool bVal)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_7(SDRATTR_3DSCENE_FIRST+27)
std::unique_ptr< Svx3DWinImpl > mpImpl
std::unique_ptr< weld::Button > m_xBtnAmbientColor
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_6(SDRATTR_3DSCENE_FIRST+26)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_6(SDRATTR_3DSCENE_FIRST+18)
Svx3DChildWindow(vcl::Window *, sal_uInt16, SfxBindings *, SfxChildWinInfo *)
std::unique_ptr< weld::Button > m_xBtnConvertTo3D
virtual OutputDevice & get_ref_device()=0
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_1(SDRATTR_3DSCENE_FIRST+13)
constexpr TypedWhichId< SdrOnOffItem > SDRATTR_SHADOW(SDRATTR_SHADOW_FIRST+0)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_1(SDRATTR_3DSCENE_FIRST+4)
std::unique_ptr< weld::ToggleButton > m_xBtnTexObjectY
sal_uInt8 GetBlue() const
SvxColorItem makeSvx3DMaterialSpecularItem(const Color &rCol)
constexpr TypedWhichId< SfxUInt32Item > SDRATTR_3DOBJ_HORZ_SEGS(SDRATTR_3DOBJ_FIRST+3)
std::unique_ptr< weld::CustomWeld > m_xCtlLightPreviewWin
std::unique_ptr< SvxConvertTo3DItem > pConvertTo3DLatheItem
void SetColor(const Color &rColor)
std::unique_ptr< weld::ToggleButton > m_xBtnPerspective
std::unique_ptr< weld::ToggleButton > m_xBtnTexCircleX
std::unique_ptr< ColorListBox > m_xLbLight3
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DOBJ_TEXTURE_FILTER(SDRATTR_3DOBJ_FIRST+18)
std::unique_ptr< weld::ToggleButton > m_xBtnTexParallelX
void SelectEntry(const NamedColor &rColor)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_3(SDRATTR_3DSCENE_FIRST+15)
std::unique_ptr< ColorListBox > m_xLbMatEmission
std::unique_ptr< weld::MetricSpinButton > m_xMtrEndAngle
std::unique_ptr< Svx3DCtrlItem > pControllerItem
SfxUInt32Item makeSvx3DFocalLengthItem(sal_uInt32 nVal)
SvxConvertTo3DItem(sal_uInt16 nId, SfxBindings *pBindings)
FieldUnit GetFieldUnit() const
SfxItemState GetItemState(sal_uInt16 nWhich, bool bSrchInParent=true, const SfxPoolItem **ppItem=nullptr) const
#define DBG_ASSERT(sCon, aError)
std::unique_ptr< LightButton > m_xBtnLight8
std::unique_ptr< LightButton > m_xBtnLight3
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_7(SDRATTR_3DSCENE_FIRST+10)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_1(SDRATTR_3DSCENE_FIRST+21)
std::unique_ptr< weld::Container > m_xFLMatSpecular
std::unique_ptr< weld::Container > m_xFLLight
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_5(SDRATTR_3DSCENE_FIRST+17)
class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DPerspectiveItem SfxUInt32Item makeSvx3DDistanceItem(sal_uInt32 nVal)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_TWO_SIDED_LIGHTING(SDRATTR_3DSCENE_FIRST+3)
SVX_DLLPRIVATE LightButton * GetLbByButton(const weld::Button *pBtn)
std::unique_ptr< weld::Label > m_xFtPercentDiagonal
std::unique_ptr< LightButton > m_xBtnLight2
std::unique_ptr< LightButton > m_xBtnLight4
int GetCoreValue(const weld::MetricSpinButton &rField, MapUnit eUnit)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_AMBIENTCOLOR(SDRATTR_3DSCENE_FIRST+12)
tools::Long Width() const
std::unique_ptr< LightButton > m_xBtnLight1
std::unique_ptr< LightButton > m_xBtnLight7
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_8(SDRATTR_3DSCENE_FIRST+20)
std::unique_ptr< ColorListBox > m_xLbLight4
SfxUInt16Item makeSvx3DBackscaleItem(sal_uInt16 nVal)
std::unique_ptr< ColorListBox > m_xLbLight5
SfxBindings & GetBindings()
constexpr sal_uInt16 SDRATTR_3D_LAST(SDRATTR_3DSCENE_LAST)
std::unique_ptr< weld::ToggleButton > m_xBtnGeo
const Size & GetMinOutputSizePixel() const
SVX_DLLPRIVATE void Reset()
std::unique_ptr< weld::ToggleButton > m_xBtnNormalsObj
std::unique_ptr< ColorListBox > m_xLbLight8
IMPL_LINK(Svx3DWin, ClickViewTypeHdl, weld::Button &, rBtn, void)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_8(SDRATTR_3DSCENE_FIRST+28)
virtual void Resize() override
SfxUInt32Item makeSvx3DHorizontalSegmentsItem(sal_uInt32 nVal)
constexpr TypedWhichId< Svx3DPerspectiveItem > SDRATTR_3DSCENE_PERSPECTIVE(SDRATTR_3DSCENE_FIRST+0)
std::unique_ptr< weld::MetricSpinButton > m_xMtrMatSpecularIntensity
virtual ~Svx3DWin() override
std::unique_ptr< ColorListBox > m_xLbLight7
void SetMetricValue(weld::MetricSpinButton &rField, int nCoreValue, MapUnit eUnit)
std::unique_ptr< weld::Container > m_xFLMaterial
SfxItemPool * GetPool() const
SvxColorItem makeSvx3DLightcolor1Item(const Color &rCol)
const Color & GetColor() const
std::unique_ptr< weld::MetricSpinButton > m_xMtrSlant
std::unique_ptr< weld::ToggleButton > m_xBtnRepresentation
std::unique_ptr< ColorListBox > m_xLbMatColor
Point LogicToPixel(const Point &rLogicPt) const
std::unique_ptr< weld::ToggleButton > m_xBtnTexLuminance
sal_uInt8 GetGreen() const
SfxUInt32Item makeSvx3DDepthItem(sal_uInt32 nVal)
SvxColorItem makeSvx3DLightcolor4Item(const Color &rCol)
void Update(SfxItemSet const &rSet)
SvxColorItem makeSvx3DLightcolor8Item(const Color &rCol)
SvxColorItem makeSvx3DMaterialEmissionItem(const Color &rCol)
std::unique_ptr< Svx3DPreviewControl > m_xCtlPreview
SvxColorItem makeSvx3DAmbientcolorItem(const Color &rCol)
void GetAttr(SfxItemSet &rSet)
virtual void dispose() override
constexpr TypedWhichId< XFillColorItem > XATTR_FILLCOLOR(XATTR_FILL_FIRST+1)
const SfxPoolItem * Put(const SfxPoolItem &rItem, sal_uInt16 nWhich)
constexpr sal_uInt16 SDRATTR_SHADOW_LAST(SDRATTR_SHADOWBLUR)
std::unique_ptr< weld::MetricSpinButton > m_xMtrBackscale
std::unique_ptr< weld::MetricSpinButton > m_xMtrFocalLength
void Initialize(SfxChildWinInfo *pInfo)
std::unique_ptr< weld::ToggleButton > m_xBtnTexParallelY
std::unique_ptr< weld::Button > m_xBtnMatColor
static SfxViewFrame * Current()
std::unique_ptr< weld::ComboBox > m_xLbShademode
Color const & GetSelectEntryColor() const
SfxBoolItem makeSvx3DLightOnOff4Item(bool bVal)
std::unique_ptr< Svx3DLightControl > m_xLightPreview
const SfxPoolItem & Get(sal_uInt16 nWhich, bool bSrchInParent=true) const
constexpr TypedWhichId< SfxUInt32Item > SDRATTR_3DSCENE_FOCAL_LENGTH(SDRATTR_3DSCENE_FIRST+2)
std::unique_ptr< SvxConvertTo3DItem > pConvertTo3DItem
constexpr TypedWhichId< SfxUInt16Item > SDRATTR_3DOBJ_BACKSCALE(SDRATTR_3DOBJ_FIRST+1)
std::unique_ptr< weld::Scale > m_xVertScale
std::unique_ptr< weld::CustomWeld > m_xCtlPreviewWin
class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DTextureProjectionXItem class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DTextureProjectionYItem SfxBoolItem makeSvx3DShadow3DItem(bool bVal)
std::unique_ptr< weld::Widget > m_xLightPreviewGrid
const ::std::vector< Color > ImpSvNumberformatScan::StandardColor COL_WHITE
SfxUInt32Item makeSvx3DEndAngleItem(sal_uInt32 nVal)
SfxBoolItem makeSvx3DLightOnOff8Item(bool bVal)
static VclPtr< reference_type > Create(Arg &&...arg)
std::unique_ptr< weld::Container > m_xFLRepresentation
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_3(SDRATTR_3DSCENE_FIRST+23)
std::unique_ptr< ColorListBox > m_xLbLight1
std::unique_ptr< weld::MetricSpinButton > m_xMtrDepth
SfxBoolItem makeSvx3DLightOnOff3Item(bool bVal)
std::unique_ptr< weld::ToggleButton > m_xBtnTexObjectX
tools::Long Height() const
constexpr TypedWhichId< SfxUInt16Item > SDRATTR_3DOBJ_PERCENT_DIAGONAL(SDRATTR_3DOBJ_FIRST+0)
void set_sensitive(bool sensitive)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_8(SDRATTR_3DSCENE_FIRST+11)
std::unique_ptr< weld::ToggleButton > m_xBtnTexColor
const ::std::vector< Color > ImpSvNumberformatScan::StandardColor COL_BLACK
SdrOnOffItem makeSdrShadowItem(bool bShadow)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_6(SDRATTR_3DSCENE_FIRST+9)
std::unique_ptr< weld::Label > m_xFtSlant
std::unique_ptr< weld::Button > m_xBtnLightColor
std::unique_ptr< weld::ToggleButton > m_xBtnNormalsFlat
std::unique_ptr< SvxLightCtl3D > m_xCtlLightPreview
std::unique_ptr< weld::Container > m_xFLGeometrie
std::unique_ptr< weld::ToggleButton > m_xBtnTexture
constexpr sal_uInt16 SDRATTR_3D_FIRST(SDRATTR_GRAF_LAST+1)
SfxBoolItem makeSvx3DTwoSidedLightingItem(bool bVal)
std::unique_ptr< ColorListBox > m_xLbLight2
SfxDispatcher * GetDispatcher() const
SvxColorItem makeSvx3DLightcolor3Item(const Color &rCol)
SfxBoolItem makeSvx3DLightOnOff5Item(bool bVal)
constexpr TypedWhichId< Svx3DShadeModeItem > SDRATTR_3DSCENE_SHADE_MODE(SDRATTR_3DSCENE_FIRST+30)
virtual void Resize() override
constexpr TypedWhichId< SfxUInt32Item > SDRATTR_3DOBJ_END_ANGLE(SDRATTR_3DOBJ_FIRST+5)
std::unique_ptr< weld::Button > m_xBtnEmissionColor
std::unique_ptr< weld::ToggleButton > m_xBtnTexReplace
std::unique_ptr< LightButton > m_xBtnLight5
SfxUInt16Item makeSvx3DShadowSlantItem(sal_uInt16 nVal)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_2(SDRATTR_3DSCENE_FIRST+5)
SvxColorItem makeSvx3DLightcolor6Item(const Color &rCol)
virtual void dispose() override
constexpr TypedWhichId< Svx3DNormalsKindItem > SDRATTR_3DOBJ_NORMALS_KIND(SDRATTR_3DOBJ_FIRST+7)
std::unique_ptr< weld::SpinButton > m_xNumHorizontal
weld::Window * GetFrameWeld(const SfxFrame *pFrame)
std::unique_ptr< weld::Button > m_xBtnLatheObject
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DOBJ_MAT_EMISSION(SDRATTR_3DOBJ_FIRST+13)
SvxColorItem makeSvx3DLightcolor5Item(const Color &rCol)
std::unique_ptr< ColorListBox > m_xLbLight6
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_4(SDRATTR_3DSCENE_FIRST+7)
std::unique_ptr< weld::Scale > m_xHoriScale
SfxBoolItem makeSvx3DLightOnOff6Item(bool bVal)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_4(SDRATTR_3DSCENE_FIRST+24)
std::unique_ptr< weld::Container > m_xFLTexture
std::unique_ptr< weld::ComboBox > m_xLbMatFavorites
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DOBJ_SHADOW_3D(SDRATTR_3DOBJ_FIRST+11)
std::unique_ptr< weld::ToggleButton > m_xBtnNormalsInvert
std::unique_ptr< weld::Container > m_xFLCamera
std::unique_ptr< weld::Button > m_xBtnSpecularColor
constexpr TypedWhichId< Svx3DTextureProjectionYItem > SDRATTR_3DOBJ_TEXTURE_PROJ_Y(SDRATTR_3DOBJ_FIRST+10)