43#include <svx/svxids.hrc>
44#include <svx/strings.hrc>
47#include <osl/diagnose.h>
54#include <bitmaps.hlst>
78 pDispatcher = pViewFrame->GetDispatcher();
79 else if (pBindings !=
nullptr)
88 "Docking3DEffects",
"svx/ui/docking3deffects.ui")
90 , m_xBtnGeo(m_xBuilder->weld_toggle_button(
"geometry"))
91 , m_xBtnRepresentation(m_xBuilder->weld_toggle_button(
"representation"))
92 , m_xBtnLight(m_xBuilder->weld_toggle_button(
"light"))
93 , m_xBtnTexture(m_xBuilder->weld_toggle_button(
"texture"))
94 , m_xBtnMaterial(m_xBuilder->weld_toggle_button(
"material"))
95 , m_xBtnUpdate(m_xBuilder->weld_toggle_button(
"update"))
96 , m_xBtnAssign(m_xBuilder->weld_button(
"assign"))
98 , m_xFLGeometrie(m_xBuilder->weld_container(
"geoframe"))
99 , m_xFtPercentDiagonal(m_xBuilder->weld_label(
"diagonalft"))
100 , m_xMtrPercentDiagonal(m_xBuilder->weld_metric_spin_button(
"diagonal",
FieldUnit::
PERCENT))
101 , m_xFtBackscale(m_xBuilder->weld_label(
"scaleddepthft"))
102 , m_xMtrBackscale(m_xBuilder->weld_metric_spin_button(
"scaleddepth",
FieldUnit::
PERCENT))
103 , m_xFtEndAngle(m_xBuilder->weld_label(
"angleft"))
104 , m_xMtrEndAngle(m_xBuilder->weld_metric_spin_button(
"angle",
FieldUnit::
DEGREE))
105 , m_xFtDepth(m_xBuilder->weld_label(
"depthft"))
106 , m_xMtrDepth(m_xBuilder->weld_metric_spin_button(
"depth",
FieldUnit::
CM))
108 , m_xFLSegments(m_xBuilder->weld_container(
"segmentsframe"))
109 , m_xNumHorizontal(m_xBuilder->weld_spin_button(
"hori"))
110 , m_xNumVertical(m_xBuilder->weld_spin_button(
"veri"))
112 , m_xFLNormals(m_xBuilder->weld_container(
"normals"))
113 , m_xBtnNormalsObj(m_xBuilder->weld_toggle_button(
"objspecific"))
114 , m_xBtnNormalsFlat(m_xBuilder->weld_toggle_button(
"flat"))
115 , m_xBtnNormalsSphere(m_xBuilder->weld_toggle_button(
"spherical"))
116 , m_xBtnNormalsInvert(m_xBuilder->weld_toggle_button(
"invertnormals"))
117 , m_xBtnTwoSidedLighting(m_xBuilder->weld_toggle_button(
"doublesidedillum"))
118 , m_xBtnDoubleSided(m_xBuilder->weld_toggle_button(
"doublesided"))
120 , m_xFLRepresentation(m_xBuilder->weld_container(
"shadingframe"))
121 , m_xLbShademode(m_xBuilder->weld_combo_box(
"mode"))
123 , m_xFLShadow(m_xBuilder->weld_container(
"shadowframe"))
124 , m_xBtnShadow3d(m_xBuilder->weld_toggle_button(
"shadow"))
125 , m_xFtSlant(m_xBuilder->weld_label(
"slantft"))
126 , m_xMtrSlant(m_xBuilder->weld_metric_spin_button(
"slant",
FieldUnit::
DEGREE))
128 , m_xFLCamera(m_xBuilder->weld_container(
"cameraframe"))
129 , m_xMtrDistance(m_xBuilder->weld_metric_spin_button(
"distance",
FieldUnit::
CM))
130 , m_xMtrFocalLength(m_xBuilder->weld_metric_spin_button(
"focal",
FieldUnit::
CM))
132 , m_xFLLight(m_xBuilder->weld_container(
"illumframe"))
133 , m_xBtnLight1(new
LightButton(m_xBuilder->weld_toggle_button(
"light1")))
134 , m_xBtnLight2(new
LightButton(m_xBuilder->weld_toggle_button(
"light2")))
135 , m_xBtnLight3(new
LightButton(m_xBuilder->weld_toggle_button(
"light3")))
136 , m_xBtnLight4(new
LightButton(m_xBuilder->weld_toggle_button(
"light4")))
137 , m_xBtnLight5(new
LightButton(m_xBuilder->weld_toggle_button(
"light5")))
138 , m_xBtnLight6(new
LightButton(m_xBuilder->weld_toggle_button(
"light6")))
139 , m_xBtnLight7(new
LightButton(m_xBuilder->weld_toggle_button(
"light7")))
140 , m_xBtnLight8(new
LightButton(m_xBuilder->weld_toggle_button(
"light8")))
142 , m_xLbLight2(
new ColorListBox(m_xBuilder->weld_menu_button(
"lightcolor2"), [
this]{ return GetFrameWeld(); }))
143 , m_xLbLight3(
new ColorListBox(m_xBuilder->weld_menu_button(
"lightcolor3"), [
this]{ return GetFrameWeld(); }))
144 , m_xLbLight4(
new ColorListBox(m_xBuilder->weld_menu_button(
"lightcolor4"), [
this]{ return GetFrameWeld(); }))
145 , m_xLbLight5(
new ColorListBox(m_xBuilder->weld_menu_button(
"lightcolor5"), [
this]{ return GetFrameWeld(); }))
146 , m_xLbLight6(
new ColorListBox(m_xBuilder->weld_menu_button(
"lightcolor6"), [
this]{ return GetFrameWeld(); }))
147 , m_xLbLight7(
new ColorListBox(m_xBuilder->weld_menu_button(
"lightcolor7"), [
this]{ return GetFrameWeld(); }))
148 , m_xLbLight8(
new ColorListBox(m_xBuilder->weld_menu_button(
"lightcolor8"), [
this]{ return GetFrameWeld(); }))
149 , m_xBtnLightColor(m_xBuilder->weld_button(
"colorbutton1"))
150 , m_xLbAmbientlight(
new ColorListBox(m_xBuilder->weld_menu_button(
"ambientcolor"), [
this]{ return GetFrameWeld(); }))
151 , m_xBtnAmbientColor(m_xBuilder->weld_button(
"colorbutton2"))
153 , m_xFLTexture(m_xBuilder->weld_container(
"textureframe"))
154 , m_xBtnTexLuminance(m_xBuilder->weld_toggle_button(
"textype"))
155 , m_xBtnTexColor(m_xBuilder->weld_toggle_button(
"texcolor"))
156 , m_xBtnTexReplace(m_xBuilder->weld_toggle_button(
"texreplace"))
157 , m_xBtnTexModulate(m_xBuilder->weld_toggle_button(
"texmodulate"))
158 , m_xBtnTexObjectX(m_xBuilder->weld_toggle_button(
"texobjx"))
159 , m_xBtnTexParallelX(m_xBuilder->weld_toggle_button(
"texparallelx"))
160 , m_xBtnTexCircleX(m_xBuilder->weld_toggle_button(
"texcirclex"))
161 , m_xBtnTexObjectY(m_xBuilder->weld_toggle_button(
"texobjy"))
162 , m_xBtnTexParallelY(m_xBuilder->weld_toggle_button(
"texparallely"))
163 , m_xBtnTexCircleY(m_xBuilder->weld_toggle_button(
"texcircley"))
164 , m_xBtnTexFilter(m_xBuilder->weld_toggle_button(
"texfilter"))
166 , m_xFLMaterial(m_xBuilder->weld_container(
"materialframe"))
167 , m_xLbMatFavorites(m_xBuilder->weld_combo_box(
"favorites"))
168 , m_xLbMatColor(
new ColorListBox(m_xBuilder->weld_menu_button(
"objcolor"), [
this]{ return GetFrameWeld(); }))
169 , m_xBtnMatColor(m_xBuilder->weld_button(
"colorbutton3"))
170 , m_xLbMatEmission(
new ColorListBox(m_xBuilder->weld_menu_button(
"illumcolor"), [
this]{ return GetFrameWeld(); }))
171 , m_xBtnEmissionColor(m_xBuilder->weld_button(
"colorbutton4"))
173 , m_xFLMatSpecular(m_xBuilder->weld_container(
"specframe"))
174 , m_xLbMatSpecular(
new ColorListBox(m_xBuilder->weld_menu_button(
"speccolor"), [
this]{ return GetFrameWeld(); }))
175 , m_xBtnSpecularColor(m_xBuilder->weld_button(
"colorbutton5"))
176 , m_xMtrMatSpecularIntensity(m_xBuilder->weld_metric_spin_button(
"intensity", FieldUnit::PERCENT))
179 , m_xCtlPreviewWin(
new weld::CustomWeld(*m_xBuilder,
"preview", *m_xCtlPreview))
181 , m_xLightPreviewGrid(m_xBuilder->weld_container(
"lightpreviewgrid"))
182 , m_xHoriScale(m_xBuilder->weld_scale(
"horiscale"))
183 , m_xVertScale(m_xBuilder->weld_scale(
"vertscale"))
184 , m_xBtn_Corner(m_xBuilder->weld_button(
"corner"))
186 , m_xCtlLightPreviewWin(
new weld::CustomWeld(*m_xBuilder,
"lightpreview", *m_xLightPreview))
187 , m_xCtlLightPreview(
new SvxLightCtl3D(*m_xLightPreview, *m_xHoriScale, *m_xVertScale, *m_xBtn_Corner))
189 , m_xBtnConvertTo3D(m_xBuilder->weld_button(
"to3d"))
190 , m_xBtnLatheObject(m_xBuilder->weld_button(
"tolathe"))
191 , m_xBtnPerspective(m_xBuilder->weld_toggle_button(
"perspective"))
195 , pBindings(pInBindings)
197 , ePoolUnit(MapUnit::MapMM)
204 m_xCtlPreview->SetOutputSizePixel(aSize);
206 m_xLightPreviewGrid->set_size_request(aSize.Width(), aSize.Height());
207 pDrawingArea = m_xLightPreview->GetDrawingArea();
210 mpImpl->pPool =
nullptr;
213 eFUnit = pInBindings->GetDispatcher()->GetModule()->GetFieldUnit();
215 m_xMtrDepth->set_unit( eFUnit );
216 m_xMtrDistance->set_unit( eFUnit );
217 m_xMtrFocalLength->set_unit( eFUnit );
219 pControllerItem.reset(
new Svx3DCtrlItem(SID_3D_STATE, pBindings) );
221 pConvertTo3DLatheItem.reset(
new SvxConvertTo3DItem(SID_CONVERT_TO_3D_LATHE_FAST, pBindings) );
223 m_xBtnAssign->connect_clicked(
LINK(
this,
Svx3DWin, ClickAssignHdl ) );
224 m_xBtnUpdate->connect_toggled(
LINK(
this,
Svx3DWin, ClickUpdateHdl ) );
227 m_xBtnGeo->connect_clicked( aLink );
228 m_xBtnRepresentation->connect_clicked( aLink );
229 m_xBtnLight->connect_clicked( aLink );
230 m_xBtnTexture->connect_clicked( aLink );
231 m_xBtnMaterial->connect_clicked( aLink );
234 m_xBtnPerspective->connect_clicked( aLink );
235 m_xBtnConvertTo3D->connect_clicked( aLink );
236 m_xBtnLatheObject->connect_clicked( aLink );
239 m_xBtnNormalsObj->connect_clicked( aLink );
240 m_xBtnNormalsFlat->connect_clicked( aLink );
241 m_xBtnNormalsSphere->connect_clicked( aLink );
242 m_xBtnTwoSidedLighting->connect_clicked( aLink );
243 m_xBtnNormalsInvert->connect_clicked( aLink );
244 m_xBtnDoubleSided->connect_clicked( aLink );
247 m_xBtnShadow3d->connect_clicked( aLink );
250 m_xBtnLight1->connect_clicked( aLink );
251 m_xBtnLight2->connect_clicked( aLink );
252 m_xBtnLight3->connect_clicked( aLink );
253 m_xBtnLight4->connect_clicked( aLink );
254 m_xBtnLight5->connect_clicked( aLink );
255 m_xBtnLight6->connect_clicked( aLink );
256 m_xBtnLight7->connect_clicked( aLink );
257 m_xBtnLight8->connect_clicked( aLink );
260 m_xBtnTexLuminance->connect_clicked( aLink );
261 m_xBtnTexColor->connect_clicked( aLink );
262 m_xBtnTexReplace->connect_clicked( aLink );
263 m_xBtnTexModulate->connect_clicked( aLink );
264 m_xBtnTexParallelX->connect_clicked( aLink );
265 m_xBtnTexCircleX->connect_clicked( aLink );
266 m_xBtnTexObjectX->connect_clicked( aLink );
267 m_xBtnTexParallelY->connect_clicked( aLink );
268 m_xBtnTexCircleY->connect_clicked( aLink );
269 m_xBtnTexObjectY->connect_clicked( aLink );
270 m_xBtnTexFilter->connect_clicked( aLink );
274 m_xBtnLightColor->connect_clicked( aLink );
275 m_xBtnAmbientColor->connect_clicked( aLink );
276 m_xBtnMatColor->connect_clicked( aLink );
277 m_xBtnEmissionColor->connect_clicked( aLink );
278 m_xBtnSpecularColor->connect_clicked( aLink );
283 m_xLbMatFavorites->connect_changed( aLink2 );
284 m_xLbMatColor->SetSelectHdl( aLink4 );
285 m_xLbMatEmission->SetSelectHdl( aLink4 );
286 m_xLbMatSpecular->SetSelectHdl( aLink4 );
287 m_xLbLight1->SetSelectHdl( aLink4 );
288 m_xLbLight2->SetSelectHdl( aLink4 );
289 m_xLbLight3->SetSelectHdl( aLink4 );
290 m_xLbLight4->SetSelectHdl( aLink4 );
291 m_xLbLight5->SetSelectHdl( aLink4 );
292 m_xLbLight6->SetSelectHdl( aLink4 );
293 m_xLbLight7->SetSelectHdl( aLink4 );
294 m_xLbLight8->SetSelectHdl( aLink4 );
295 m_xLbAmbientlight->SetSelectHdl( aLink4 );
296 m_xLbShademode->connect_changed( aLink2 );
300 m_xMtrMatSpecularIntensity->connect_value_changed( aLink3 );
301 m_xNumHorizontal->connect_value_changed( aLink5 );
302 m_xNumVertical->connect_value_changed( aLink5 );
303 m_xMtrSlant->connect_value_changed( aLink3 );
306 m_xCtlLightPreview->SetUserSelectionChangeCallback(
LINK(
this,
Svx3DWin, ChangeSelectionCallbackHdl ));
308 aSize = GetOutputSizePixel();
309 SetMinOutputSizePixel( aSize );
315 if (pDispatcher !=
nullptr)
319 SfxCallMode::ASYNCHRON | SfxCallMode::RECORD, { &aItem });
325 aSize = get_preferred_size();
326 set_width_request(aSize.Width());
327 set_height_request(aSize.Height());
473 sal_uInt16 nWhich(aIter.FirstWhich());
478 if(SfxItemState::DONTCARE == eState)
480 else if(SfxItemState::SET == eState)
483 nWhich = aIter.NextWhich();
501 if( SfxItemState::SET == eState )
504 bool bExtrude = (
nState & 2 );
505 bool bSphere = (
nState & 4 );
506 bool bCube = (
nState & 8 );
508 bool bChart = (
nState & 32 );
519 m_xFtDepth->set_sensitive( !bCube && !bSphere );
526 if( bCube || bSphere )
534 m_xFtEndAngle->set_sensitive( !bExtrude && !bCube && !bSphere );
536 if( bExtrude || bCube || bSphere )
567 if(eState != SfxItemState::DONTCARE)
570 bBitmap = (eXFS == drawing::FillStyle_BITMAP || eXFS == drawing::FillStyle_GRADIENT || eXFS == drawing::FillStyle_HATCH);
580 if(eState != SfxItemState::DONTCARE)
605 if( eState != SfxItemState::DONTCARE )
630 if( eState != SfxItemState::DONTCARE )
657 if( eState != SfxItemState::DONTCARE )
681 if( eState != SfxItemState::DONTCARE )
706 if( eState != SfxItemState::DONTCARE )
731 if( eState != SfxItemState::DONTCARE )
752 if( eState != SfxItemState::DONTCARE )
781 if( eState != SfxItemState::DONTCARE )
803 if( eState != SfxItemState::DONTCARE )
826 if( eState != SfxItemState::DONTCARE )
846 if( eState != SfxItemState::DONTCARE )
870 if( eState != SfxItemState::DONTCARE )
890 if( eState != SfxItemState::DONTCARE )
914 if( eState != SfxItemState::DONTCARE )
940 if( eState != SfxItemState::DONTCARE )
960 if( eState != SfxItemState::DONTCARE )
981 if( eState != SfxItemState::DONTCARE )
988 if( eState != SfxItemState::DONTCARE )
1008 if( eState != SfxItemState::DONTCARE )
1029 if( eState != SfxItemState::DONTCARE )
1036 if( eState != SfxItemState::DONTCARE )
1056 if( eState != SfxItemState::DONTCARE )
1077 if( eState != SfxItemState::DONTCARE )
1084 if( eState != SfxItemState::DONTCARE )
1104 if( eState != SfxItemState::DONTCARE )
1125 if( eState != SfxItemState::DONTCARE )
1132 if( eState != SfxItemState::DONTCARE )
1152 if( eState != SfxItemState::DONTCARE )
1173 if( eState != SfxItemState::DONTCARE )
1180 if( eState != SfxItemState::DONTCARE )
1200 if( eState != SfxItemState::DONTCARE )
1221 if( eState != SfxItemState::DONTCARE )
1228 if( eState != SfxItemState::DONTCARE )
1248 if( eState != SfxItemState::DONTCARE )
1269 if( eState != SfxItemState::DONTCARE )
1276 if( eState != SfxItemState::DONTCARE )
1296 if( eState != SfxItemState::DONTCARE )
1317 if( eState != SfxItemState::DONTCARE )
1324 if( eState != SfxItemState::DONTCARE )
1349 if( eState != SfxItemState::DONTCARE )
1374 if( eState != SfxItemState::DONTCARE )
1399 if( eState != SfxItemState::DONTCARE )
1428 if( eState != SfxItemState::DONTCARE )
1457 if( eState != SfxItemState::DONTCARE )
1484 if( eState != SfxItemState::DONTCARE )
1505 if( eState != SfxItemState::DONTCARE )
1526 if( eState != SfxItemState::DONTCARE )
1547 if( eState != SfxItemState::DONTCARE )
1569 if( eState != SfxItemState::DONTCARE )
1614 sal_uInt32 nNumber(0xffffffff);
1633 if(nNumber != 0xffffffff)
1655 if(SfxItemState::DONTCARE == eState)
1657 else if(SfxItemState::SET == eState)
1673 rAttrs.
Put(Svx3DPerspectiveItem(
nValue));
1682 OSL_FAIL(
"No Pool in GetAttr()! May be incompatible to drviewsi.cxx ?" );
1764 rAttrs.
Put(Svx3DNormalsKindItem(
nValue));
1815 sal_uInt16 nValue2 =
static_cast<sal_uInt16
>(
m_xMtrSlant->get_value(FieldUnit::DEGREE));
2054 rAttrs.
Put(Svx3DTextureKindItem(
nValue));
2067 rAttrs.
Put(Svx3DTextureModeItem(
nValue));
2081 rAttrs.
Put(Svx3DTextureProjectionXItem(
nValue));
2095 rAttrs.
Put(Svx3DTextureProjectionYItem(
nValue));
2153 Size aWinSize( GetOutputSizePixel() );
2200 bUpdate = m_xBtnUpdate->get_active();
2205 if (pDispatcher !=
nullptr)
2209 SfxCallMode::ASYNCHRON | SfxCallMode::RECORD, { &aItem });
2221 if (pDispatcher !=
nullptr)
2225 SfxCallMode::ASYNCHRON | SfxCallMode::RECORD, { &aItem });
2232 bool bUpdatePreview = m_xBtnLight->get_active();
2234 m_xBtnGeo->set_active(m_xBtnGeo.get() == &rBtn);
2235 m_xBtnRepresentation->set_active(m_xBtnRepresentation.get() == &rBtn);
2236 m_xBtnLight->set_active(m_xBtnLight.get() == &rBtn);
2237 m_xBtnTexture->set_active(m_xBtnTexture.get() == &rBtn);
2238 m_xBtnMaterial->set_active(m_xBtnMaterial.get() == &rBtn);
2240 if( m_xBtnGeo->get_active() )
2242 if( m_xBtnRepresentation->get_active() )
2244 if( m_xBtnLight->get_active() )
2246 if( m_xBtnTexture->get_active() )
2248 if( m_xBtnMaterial->get_active() )
2254 m_xFLSegments->show();
2255 m_xFLGeometrie->show();
2256 m_xFLNormals->show();
2260 m_xFLSegments->hide();
2261 m_xFLGeometrie->hide();
2262 m_xFLNormals->hide();
2268 m_xFLShadow->show();
2269 m_xFLCamera->show();
2270 m_xFLRepresentation->show();
2274 m_xFLShadow->hide();
2275 m_xFLCamera->hide();
2276 m_xFLRepresentation->hide();
2288 m_xLightPreviewGrid->show();
2289 m_xCtlPreview->Hide();
2295 if( !m_xCtlPreview->IsVisible() )
2297 m_xCtlPreview->Show();
2298 m_xLightPreviewGrid->hide();
2304 m_xFLTexture->show();
2306 m_xFLTexture->hide();
2311 m_xFLMatSpecular->show();
2312 m_xFLMaterial->show();
2316 m_xFLMatSpecular->hide();
2317 m_xFLMaterial->hide();
2319 if( bUpdatePreview && !m_xBtnLight->get_active() )
2325 bool bUpdatePreview =
false;
2326 sal_uInt16 nSId = 0;
2328 if( &rBtn == m_xBtnConvertTo3D.get() )
2330 nSId = SID_CONVERT_TO_3D;
2332 else if( &rBtn == m_xBtnLatheObject.get() )
2334 nSId = SID_CONVERT_TO_3D_LATHE_FAST;
2337 else if( &rBtn == m_xBtnNormalsObj.get() ||
2338 &rBtn == m_xBtnNormalsFlat.get() ||
2339 &rBtn == m_xBtnNormalsSphere.get() )
2341 m_xBtnNormalsObj->set_active( &rBtn == m_xBtnNormalsObj.get() );
2342 m_xBtnNormalsFlat->set_active( &rBtn == m_xBtnNormalsFlat.get() );
2343 m_xBtnNormalsSphere->set_active( &rBtn == m_xBtnNormalsSphere.get() );
2344 bUpdatePreview =
true;
2346 else if( &rBtn == m_xBtnLight1->get_widget() ||
2347 &rBtn == m_xBtnLight2->get_widget() ||
2348 &rBtn == m_xBtnLight3->get_widget() ||
2349 &rBtn == m_xBtnLight4->get_widget() ||
2350 &rBtn == m_xBtnLight5->get_widget() ||
2351 &rBtn == m_xBtnLight6->get_widget() ||
2352 &rBtn == m_xBtnLight7->get_widget() ||
2353 &rBtn == m_xBtnLight8->get_widget() )
2363 if (pToggleBtn != m_xBtnLight1.get() && m_xBtnLight1->
get_active())
2365 m_xBtnLight1->set_active(
false );
2366 m_xBtnLight1->set_prev_active(
false);
2367 m_xLbLight1->hide();
2369 if (pToggleBtn != m_xBtnLight2.get() && m_xBtnLight2->
get_active())
2371 m_xBtnLight2->set_active(
false );
2372 m_xBtnLight2->set_prev_active(
false);
2373 m_xLbLight2->hide();
2375 if( pToggleBtn != m_xBtnLight3.get() && m_xBtnLight3->
get_active() )
2377 m_xBtnLight3->set_active(
false );
2378 m_xBtnLight3->set_prev_active(
false);
2379 m_xLbLight3->hide();
2381 if( pToggleBtn != m_xBtnLight4.get() && m_xBtnLight4->
get_active() )
2383 m_xBtnLight4->set_active(
false );
2384 m_xBtnLight4->set_prev_active(
false);
2385 m_xLbLight4->hide();
2387 if( pToggleBtn != m_xBtnLight5.get() && m_xBtnLight5->
get_active() )
2389 m_xBtnLight5->set_active(
false );
2390 m_xBtnLight5->set_prev_active(
false);
2391 m_xLbLight5->hide();
2393 if( pToggleBtn != m_xBtnLight6.get() && m_xBtnLight6->
get_active() )
2395 m_xBtnLight6->set_active(
false );
2396 m_xBtnLight6->set_prev_active(
false);
2397 m_xLbLight6->hide();
2399 if( pToggleBtn != m_xBtnLight7.get() && m_xBtnLight7->
get_active() )
2401 m_xBtnLight7->set_active(
false );
2402 m_xBtnLight7->set_prev_active(
false);
2403 m_xLbLight7->hide();
2405 if( pToggleBtn != m_xBtnLight8.get() && m_xBtnLight8->
get_active() )
2407 m_xBtnLight8->set_active(
false );
2408 m_xBtnLight8->set_prev_active(
false);
2409 m_xLbLight8->hide();
2419 m_xBtnLightColor->set_sensitive( bEnable );
2422 ClickLight(*pToggleBtn);
2423 bUpdatePreview =
true;
2426 else if( &rBtn == m_xBtnTexLuminance.get() ||
2427 &rBtn == m_xBtnTexColor.get() )
2429 m_xBtnTexLuminance->set_active( &rBtn == m_xBtnTexLuminance.get() );
2430 m_xBtnTexColor->set_active( &rBtn == m_xBtnTexColor.get() );
2431 bUpdatePreview =
true;
2433 else if( &rBtn == m_xBtnTexReplace.get() ||
2434 &rBtn == m_xBtnTexModulate.get() )
2436 m_xBtnTexReplace->set_active( &rBtn == m_xBtnTexReplace.get() );
2437 m_xBtnTexModulate->set_active( &rBtn == m_xBtnTexModulate.get() );
2438 bUpdatePreview =
true;
2440 else if( &rBtn == m_xBtnTexParallelX.get() ||
2441 &rBtn == m_xBtnTexCircleX.get() ||
2442 &rBtn == m_xBtnTexObjectX.get() )
2444 m_xBtnTexParallelX->set_active( &rBtn == m_xBtnTexParallelX.get() );
2445 m_xBtnTexCircleX->set_active( &rBtn == m_xBtnTexCircleX.get() );
2446 m_xBtnTexObjectX->set_active( &rBtn == m_xBtnTexObjectX.get() );
2447 bUpdatePreview =
true;
2449 else if( &rBtn == m_xBtnTexParallelY.get() ||
2450 &rBtn == m_xBtnTexCircleY.get() ||
2451 &rBtn == m_xBtnTexObjectY.get() )
2453 m_xBtnTexParallelY->set_active( &rBtn == m_xBtnTexParallelY.get() );
2454 m_xBtnTexCircleY->set_active( &rBtn == m_xBtnTexCircleY.get() );
2455 m_xBtnTexObjectY->set_active( &rBtn == m_xBtnTexObjectY.get() );
2456 bUpdatePreview =
true;
2458 else if (&rBtn == m_xBtnShadow3d.get())
2460 m_xFtSlant->set_sensitive( m_xBtnShadow3d->get_active() );
2461 m_xMtrSlant->set_sensitive( m_xBtnShadow3d->get_active() );
2462 bUpdatePreview =
true;
2467 bUpdatePreview =
true;
2473 if (pDispatcher !=
nullptr)
2477 SfxCallMode::ASYNCHRON | SfxCallMode::RECORD, { &aItem });
2480 else if( bUpdatePreview )
2489 if( &rBtn == m_xBtnLightColor.get() )
2490 pLb = GetCLbByButton();
2491 else if( &rBtn == m_xBtnAmbientColor.get() )
2492 pLb = m_xLbAmbientlight.get();
2493 else if( &rBtn == m_xBtnMatColor.get() )
2494 pLb = m_xLbMatColor.get();
2495 else if( &rBtn == m_xBtnEmissionColor.get() )
2496 pLb = m_xLbMatEmission.get();
2498 pLb = m_xLbMatSpecular.get();
2506 LBSelectColor(pLb, aColor);
2507 SelectColorHdl(*pLb);
2513 bool bUpdatePreview =
false;
2516 if (&rListBox == m_xLbMatFavorites.get())
2521 sal_uInt16 nSpecIntens = 20;
2523 switch( m_xLbMatFavorites->get_active() )
2527 aColObj =
Color(230,230,255);
2528 aColEmis =
Color(10,10,30);
2529 aColSpec =
Color(200,200,200);
2536 aColObj =
Color(230,255,0);
2537 aColEmis =
Color(51,0,0);
2538 aColSpec =
Color(255,255,240);
2545 aColObj =
Color(36,117,153);
2546 aColEmis =
Color(18,30,51);
2547 aColSpec =
Color(230,230,255);
2554 aColObj =
Color(255,48,57);
2555 aColEmis =
Color(35,0,0);
2556 aColSpec =
Color(179,202,204);
2563 aColObj =
Color(153,71,1);
2564 aColEmis =
Color(21,22,0);
2565 aColSpec =
Color(255,255,153);
2570 LBSelectColor( m_xLbMatColor.get(), aColObj );
2571 LBSelectColor( m_xLbMatEmission.get(), aColEmis );
2572 LBSelectColor( m_xLbMatSpecular.get(), aColSpec );
2573 m_xMtrMatSpecularIntensity->set_value(nSpecIntens, FieldUnit::PERCENT);
2575 bUpdatePreview =
true;
2577 else if (&rListBox == m_xLbShademode.get())
2578 bUpdatePreview =
true;
2580 if( bUpdatePreview )
2586 bool bUpdatePreview =
false;
2588 if( &rListBox == m_xLbMatColor.get() ||
2589 &rListBox == m_xLbMatEmission.get() ||
2590 &rListBox == m_xLbMatSpecular.get() )
2592 m_xLbMatFavorites->set_active( 0 );
2593 bUpdatePreview =
true;
2596 else if( &rListBox == m_xLbAmbientlight.get() )
2598 bUpdatePreview =
true;
2600 else if( &rListBox == m_xLbLight1.get() ||
2601 &rListBox == m_xLbLight2.get() ||
2602 &rListBox == m_xLbLight3.get() ||
2603 &rListBox == m_xLbLight4.get() ||
2604 &rListBox == m_xLbLight5.get() ||
2605 &rListBox == m_xLbLight6.get() ||
2606 &rListBox == m_xLbLight7.get() ||
2607 &rListBox == m_xLbLight8.get() )
2609 bUpdatePreview =
true;
2612 if( bUpdatePreview )
2634 switch(nLightSource)
2654 const sal_uInt32 nLight(m_xCtlLightPreview->GetSvx3DLightControl().GetSelectedLight());
2659 case 0: pBtn = m_xBtnLight1->get_widget();
break;
2660 case 1: pBtn = m_xBtnLight2->get_widget();
break;
2661 case 2: pBtn = m_xBtnLight3->get_widget();
break;
2662 case 3: pBtn = m_xBtnLight4->get_widget();
break;
2663 case 4: pBtn = m_xBtnLight5->get_widget();
break;
2664 case 5: pBtn = m_xBtnLight6->get_widget();
break;
2665 case 6: pBtn = m_xBtnLight7->get_widget();
break;
2666 case 7: pBtn = m_xBtnLight8->get_widget();
break;
2675 if( m_xBtnLight1->get_active() )
2677 m_xBtnLight1->set_active(
false );
2678 m_xLbLight1->set_sensitive(
false );
2680 else if( m_xBtnLight2->get_active() )
2682 m_xBtnLight2->set_active(
false );
2683 m_xLbLight2->set_sensitive(
false );
2685 else if( m_xBtnLight3->get_active() )
2687 m_xBtnLight3->set_active(
false );
2688 m_xLbLight3->set_sensitive(
false );
2690 else if( m_xBtnLight4->get_active() )
2692 m_xBtnLight4->set_active(
false );
2693 m_xLbLight4->set_sensitive(
false );
2695 else if( m_xBtnLight5->get_active() )
2697 m_xBtnLight5->set_active(
false );
2698 m_xLbLight5->set_sensitive(
false );
2700 else if( m_xBtnLight6->get_active() )
2702 m_xBtnLight6->set_active(
false );
2703 m_xLbLight6->set_sensitive(
false );
2705 else if( m_xBtnLight7->get_active() )
2707 m_xBtnLight7->set_active(
false );
2708 m_xLbLight7->set_sensitive(
false );
2710 else if( m_xBtnLight8->get_active() )
2712 m_xBtnLight8->set_active(
false );
2713 m_xLbLight8->set_sensitive(
false );
2715 m_xBtnLightColor->set_sensitive(
false );
2721 OUString lcl_makeColorName(
const Color& rColor)
2724 OUString::number(rColor.
GetRed()) +
2727 OUString::number(rColor.
GetGreen()) +
2730 OUString::number(rColor.
GetBlue());
2739 pLb->
SelectEntry({rColor, lcl_makeColorName(rColor)});
2786 sal_uInt16 nLight = 8;
2812 if( pBtn ==
nullptr )
2887 pWin->Initialize( pInfo );
2912 bool bNewState = (eState != SfxItemState::DISABLED);
2917 if (pDispatcher !=
nullptr)
2921 SfxCallMode::ASYNCHRON|SfxCallMode::RECORD, { &aItem });
2927 : m_xButton(
std::move(xButton))
2929 , m_bButtonPrevActive(false)
2931 m_xButton->set_from_icon_name(RID_SVXBMP_LAMP_OFF);
2940 m_xButton->set_from_icon_name(RID_SVXBMP_LAMP_ON);
2942 m_xButton->set_from_icon_name(RID_SVXBMP_LAMP_OFF);
Color const & GetSelectEntryColor() const
void SelectEntry(const NamedColor &rColor)
void set_sensitive(bool sensitive)
sal_uInt8 GetBlue() const
sal_uInt8 GetGreen() const
SAL_WARN_UNUSED_RESULT Point LogicToPixel(const Point &rLogicPt) const
SfxDispatcher * GetDispatcher() const
void SetWindow(const VclPtr< vcl::Window > &p)
SfxBindings & GetBindings()
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 * >())
const Size & GetMinOutputSizePixel() const
virtual void Resize() override
virtual void dispose() override
SfxItemPool * GetPool() const
SfxItemState GetItemState(sal_uInt16 nWhich, bool bSrchInParent=true, const SfxPoolItem **ppItem=nullptr) const
const SfxPoolItem * Put(const SfxPoolItem &rItem, sal_uInt16 nWhich)
const SfxPoolItem & Get(sal_uInt16 nWhich, bool bSrchInParent=true) const
void InvalidateItem(sal_uInt16 nWhich)
static SAL_WARN_UNUSED_RESULT SfxViewFrame * Current()
SfxItemState GetItemState(bool bSrchInParent=true, const SfxPoolItem **ppItem=nullptr) const
constexpr tools::Long Height() const
constexpr tools::Long Width() const
const Color & GetColor() const
short Execute(weld::Window *pParent)
void SetColor(const Color &rColor)
Svx3DChildWindow(vcl::Window *, sal_uInt16, SfxBindings *, SfxChildWinInfo *)
Svx3DCtrlItem(sal_uInt16, SfxBindings *)
virtual void StateChangedAtToolBoxControl(sal_uInt16 nSId, SfxItemState eState, const SfxPoolItem *pState) override
std::unique_ptr< weld::Button > m_xBtnLightColor
std::unique_ptr< weld::MetricSpinButton > m_xMtrSlant
std::unique_ptr< SvxLightCtl3D > m_xCtlLightPreview
std::unique_ptr< weld::ToggleButton > m_xBtnTexColor
std::unique_ptr< weld::MetricSpinButton > m_xMtrDepth
std::unique_ptr< LightButton > m_xBtnLight8
std::unique_ptr< ColorListBox > m_xLbMatColor
std::unique_ptr< weld::ToggleButton > m_xBtnTexParallelY
std::unique_ptr< ColorListBox > m_xLbLight1
std::unique_ptr< weld::ToggleButton > m_xBtnMaterial
SVX_DLLPRIVATE sal_uInt16 GetLightSource(const LightButton *pBtn) const
std::unique_ptr< weld::CustomWeld > m_xCtlPreviewWin
std::unique_ptr< weld::CustomWeld > m_xCtlLightPreviewWin
std::unique_ptr< weld::ToggleButton > m_xBtnNormalsSphere
std::unique_ptr< weld::ToggleButton > m_xBtnTexture
std::unique_ptr< weld::Container > m_xFLSegments
std::unique_ptr< weld::Label > m_xFtSlant
std::unique_ptr< weld::Button > m_xBtnConvertTo3D
std::unique_ptr< weld::ToggleButton > m_xBtnTexParallelX
std::unique_ptr< weld::ToggleButton > m_xBtnPerspective
std::unique_ptr< weld::ToggleButton > m_xBtnTexModulate
std::unique_ptr< weld::Container > m_xFLGeometrie
std::unique_ptr< weld::Button > m_xBtnMatColor
std::unique_ptr< Svx3DCtrlItem > pControllerItem
std::unique_ptr< weld::Container > m_xFLCamera
std::unique_ptr< weld::MetricSpinButton > m_xMtrBackscale
std::unique_ptr< weld::ToggleButton > m_xBtnShadow3d
virtual ~Svx3DWin() override
virtual void Resize() override
std::unique_ptr< weld::SpinButton > m_xNumVertical
std::unique_ptr< weld::ToggleButton > m_xBtnNormalsObj
std::unique_ptr< weld::ToggleButton > m_xBtnLight
std::unique_ptr< ColorListBox > m_xLbLight5
static SVX_DLLPRIVATE void LBSelectColor(ColorListBox *pLb, const Color &rColor)
std::unique_ptr< weld::MetricSpinButton > m_xMtrEndAngle
std::unique_ptr< weld::ComboBox > m_xLbMatFavorites
std::unique_ptr< weld::Container > m_xFLNormals
std::unique_ptr< weld::ToggleButton > m_xBtnTexLuminance
std::unique_ptr< ColorListBox > m_xLbLight4
std::unique_ptr< LightButton > m_xBtnLight5
std::unique_ptr< weld::Label > m_xFtPercentDiagonal
std::unique_ptr< weld::Button > m_xBtnSpecularColor
SVX_DLLPRIVATE ColorListBox * GetCLbByButton(const LightButton *pBtn=nullptr)
std::unique_ptr< weld::Scale > m_xHoriScale
std::unique_ptr< weld::ToggleButton > m_xBtnTexObjectY
SVX_DLLPRIVATE LightButton * GetLbByButton(const weld::Button *pBtn)
std::unique_ptr< weld::MetricSpinButton > m_xMtrPercentDiagonal
std::unique_ptr< weld::ToggleButton > m_xBtnDoubleSided
std::unique_ptr< Svx3DPreviewControl > m_xCtlPreview
std::unique_ptr< SfxItemSet > mpRemember2DAttributes
std::unique_ptr< weld::Container > m_xFLMatSpecular
std::unique_ptr< weld::ToggleButton > m_xBtnRepresentation
std::unique_ptr< weld::MetricSpinButton > m_xMtrMatSpecularIntensity
virtual void dispose() override
std::unique_ptr< weld::ToggleButton > m_xBtnTexCircleX
std::unique_ptr< weld::Button > m_xBtnLatheObject
Svx3DWin(SfxBindings *pBindings, SfxChildWindow *pCW, vcl::Window *pParent)
std::unique_ptr< weld::Container > m_xFLTexture
std::unique_ptr< weld::ToggleButton > m_xBtnTwoSidedLighting
std::unique_ptr< ColorListBox > m_xLbMatSpecular
std::unique_ptr< ColorListBox > m_xLbLight7
std::unique_ptr< weld::Button > m_xBtnEmissionColor
std::unique_ptr< weld::MetricSpinButton > m_xMtrDistance
std::unique_ptr< weld::Button > m_xBtnAssign
std::unique_ptr< weld::Container > m_xFLMaterial
std::unique_ptr< weld::ToggleButton > m_xBtnTexReplace
void Update(SfxItemSet const &rSet)
std::unique_ptr< LightButton > m_xBtnLight1
std::unique_ptr< Svx3DLightControl > m_xLightPreview
std::unique_ptr< LightButton > m_xBtnLight7
std::unique_ptr< FmFormModel > pModel
std::unique_ptr< weld::ToggleButton > m_xBtnUpdate
std::unique_ptr< weld::Button > m_xBtn_Corner
std::unique_ptr< weld::ToggleButton > m_xBtnTexCircleY
std::unique_ptr< weld::ToggleButton > m_xBtnTexObjectX
std::unique_ptr< weld::ToggleButton > m_xBtnNormalsFlat
std::unique_ptr< weld::Widget > m_xLightPreviewGrid
SVX_DLLPRIVATE void Reset()
void GetAttr(SfxItemSet &rSet)
std::unique_ptr< ColorListBox > m_xLbLight6
std::unique_ptr< Svx3DWinImpl > mpImpl
std::unique_ptr< weld::Button > m_xBtnAmbientColor
std::unique_ptr< LightButton > m_xBtnLight3
std::unique_ptr< weld::ToggleButton > m_xBtnTexFilter
std::unique_ptr< ColorListBox > m_xLbLight8
std::unique_ptr< weld::Container > m_xFLRepresentation
std::unique_ptr< LightButton > m_xBtnLight2
std::unique_ptr< weld::ComboBox > m_xLbShademode
std::unique_ptr< weld::SpinButton > m_xNumHorizontal
std::unique_ptr< weld::Container > m_xFLLight
std::unique_ptr< LightButton > m_xBtnLight6
void ClickLight(const LightButton &rBtn)
std::unique_ptr< weld::Label > m_xFtEndAngle
std::unique_ptr< weld::Container > m_xFLShadow
std::unique_ptr< ColorListBox > m_xLbMatEmission
std::unique_ptr< weld::MetricSpinButton > m_xMtrFocalLength
std::unique_ptr< SvxConvertTo3DItem > pConvertTo3DItem
std::unique_ptr< weld::ToggleButton > m_xBtnNormalsInvert
std::unique_ptr< ColorListBox > m_xLbAmbientlight
std::unique_ptr< weld::Scale > m_xVertScale
std::unique_ptr< weld::ToggleButton > m_xBtnGeo
std::unique_ptr< ColorListBox > m_xLbLight2
std::unique_ptr< ColorListBox > m_xLbLight3
std::unique_ptr< weld::Label > m_xFtDepth
std::unique_ptr< SvxConvertTo3DItem > pConvertTo3DLatheItem
std::unique_ptr< weld::Label > m_xFtBackscale
std::unique_ptr< LightButton > m_xBtnLight4
SVX_DLLPRIVATE void Construct()
virtual void StateChangedAtToolBoxControl(sal_uInt16 nSId, SfxItemState eState, const SfxPoolItem *pState) override
SvxConvertTo3DItem(sal_uInt16 nId, SfxBindings *pBindings)
static VclPtr< reference_type > Create(Arg &&... arg)
virtual OutputDevice & get_ref_device()=0
constexpr ::Color COL_WHITE(0xFF, 0xFF, 0xFF)
constexpr ::Color COL_BLACK(0x00, 0x00, 0x00)
#define DBG_ASSERT(sCon, aError)
OUString SvxResId(TranslateId aId)
weld::Window * GetFrameWeld(const SfxFrame *pFrame)
virtual void SetText(const OUString &rStr) override
FieldUnit GetModuleFieldUnit(const SfxItemSet &rSet)
IMPL_LINK_NOARG(Svx3DWin, ClickUpdateHdl, weld::Toggleable &, void)
IMPL_LINK(Svx3DWin, ClickViewTypeHdl, weld::Button &, rBtn, void)
SFX_IMPL_DOCKINGWINDOW_WITHID(SvxFontWorkChildWindow, SID_FONTWORK)
#define LINK(Instance, Class, Member)
SdrOnOffItem makeSdrShadowItem(bool bShadow)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_8(SDRATTR_3DSCENE_FIRST+20)
constexpr TypedWhichId< Svx3DNormalsKindItem > SDRATTR_3DOBJ_NORMALS_KIND(SDRATTR_3DOBJ_FIRST+7)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_4(SDRATTR_3DSCENE_FIRST+16)
constexpr TypedWhichId< SdrOnOffItem > SDRATTR_SHADOW(SDRATTR_SHADOW_FIRST+0)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_1(SDRATTR_3DSCENE_FIRST+21)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_3(SDRATTR_3DSCENE_FIRST+23)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_1(SDRATTR_3DSCENE_FIRST+13)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_2(SDRATTR_3DSCENE_FIRST+22)
constexpr TypedWhichId< SfxUInt32Item > SDRATTR_3DOBJ_DEPTH(SDRATTR_3DOBJ_FIRST+2)
constexpr TypedWhichId< Svx3DPerspectiveItem > SDRATTR_3DSCENE_PERSPECTIVE(SDRATTR_3DSCENE_FIRST+0)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_TWO_SIDED_LIGHTING(SDRATTR_3DSCENE_FIRST+3)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_1(SDRATTR_3DSCENE_FIRST+4)
constexpr sal_uInt16 SDRATTR_START(XATTR_START)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_3(SDRATTR_3DSCENE_FIRST+15)
constexpr TypedWhichId< Svx3DTextureModeItem > SDRATTR_3DOBJ_TEXTURE_MODE(SDRATTR_3DOBJ_FIRST+17)
constexpr sal_uInt16 SDRATTR_3D_FIRST(SDRATTR_GRAF_LAST+1)
constexpr sal_uInt16 SDRATTR_3D_LAST(SDRATTR_3DSCENE_LAST)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DOBJ_TEXTURE_FILTER(SDRATTR_3DOBJ_FIRST+18)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_5(SDRATTR_3DSCENE_FIRST+8)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DOBJ_DOUBLE_SIDED(SDRATTR_3DOBJ_FIRST+6)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_5(SDRATTR_3DSCENE_FIRST+17)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_7(SDRATTR_3DSCENE_FIRST+27)
constexpr TypedWhichId< SfxUInt32Item > SDRATTR_3DSCENE_FOCAL_LENGTH(SDRATTR_3DSCENE_FIRST+2)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_6(SDRATTR_3DSCENE_FIRST+26)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_6(SDRATTR_3DSCENE_FIRST+9)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_4(SDRATTR_3DSCENE_FIRST+7)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_7(SDRATTR_3DSCENE_FIRST+10)
constexpr TypedWhichId< Svx3DShadeModeItem > SDRATTR_3DSCENE_SHADE_MODE(SDRATTR_3DSCENE_FIRST+30)
constexpr TypedWhichId< Svx3DTextureKindItem > SDRATTR_3DOBJ_TEXTURE_KIND(SDRATTR_3DOBJ_FIRST+16)
constexpr TypedWhichId< SfxUInt16Item > SDRATTR_3DOBJ_BACKSCALE(SDRATTR_3DOBJ_FIRST+1)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_6(SDRATTR_3DSCENE_FIRST+18)
constexpr TypedWhichId< SfxUInt16Item > SDRATTR_3DSCENE_SHADOW_SLANT(SDRATTR_3DSCENE_FIRST+29)
constexpr TypedWhichId< SfxUInt32Item > SDRATTR_3DOBJ_VERT_SEGS(SDRATTR_3DOBJ_FIRST+4)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DOBJ_MAT_SPECULAR(SDRATTR_3DOBJ_FIRST+14)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_AMBIENTCOLOR(SDRATTR_3DSCENE_FIRST+12)
constexpr TypedWhichId< SfxUInt32Item > SDRATTR_3DSCENE_DISTANCE(SDRATTR_3DSCENE_FIRST+1)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_2(SDRATTR_3DSCENE_FIRST+14)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DOBJ_SHADOW_3D(SDRATTR_3DOBJ_FIRST+11)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DOBJ_NORMALS_INVERT(SDRATTR_3DOBJ_FIRST+8)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_8(SDRATTR_3DSCENE_FIRST+11)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_8(SDRATTR_3DSCENE_FIRST+28)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_4(SDRATTR_3DSCENE_FIRST+24)
constexpr TypedWhichId< SvxB3DVectorItem > SDRATTR_3DSCENE_LIGHTDIRECTION_5(SDRATTR_3DSCENE_FIRST+25)
constexpr sal_uInt16 SDRATTR_SHADOW_LAST(SDRATTR_SHADOWALIGNMENT)
constexpr TypedWhichId< SfxUInt16Item > SDRATTR_3DOBJ_PERCENT_DIAGONAL(SDRATTR_3DOBJ_FIRST+0)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DOBJ_MAT_EMISSION(SDRATTR_3DOBJ_FIRST+13)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_2(SDRATTR_3DSCENE_FIRST+5)
constexpr TypedWhichId< Svx3DTextureProjectionYItem > SDRATTR_3DOBJ_TEXTURE_PROJ_Y(SDRATTR_3DOBJ_FIRST+10)
constexpr TypedWhichId< Svx3DTextureProjectionXItem > SDRATTR_3DOBJ_TEXTURE_PROJ_X(SDRATTR_3DOBJ_FIRST+9)
constexpr TypedWhichId< SfxUInt32Item > SDRATTR_3DOBJ_END_ANGLE(SDRATTR_3DOBJ_FIRST+5)
constexpr TypedWhichId< SfxUInt32Item > SDRATTR_3DOBJ_HORZ_SEGS(SDRATTR_3DOBJ_FIRST+3)
constexpr TypedWhichId< SvxColorItem > SDRATTR_3DSCENE_LIGHTCOLOR_3(SDRATTR_3DSCENE_FIRST+6)
constexpr TypedWhichId< SfxUInt16Item > SDRATTR_3DOBJ_MAT_SPECULAR_INTENSITY(SDRATTR_3DOBJ_FIRST+15)
constexpr TypedWhichId< SfxBoolItem > SDRATTR_3DSCENE_LIGHTON_7(SDRATTR_3DSCENE_FIRST+19)
SfxUInt16Item makeSvx3DBackscaleItem(sal_uInt16 nVal)
SfxBoolItem makeSvx3DLightOnOff2Item(bool bVal)
SvxColorItem makeSvx3DMaterialEmissionItem(const Color &rCol)
class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DTextureKindItem final class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DTextureModeItem final SfxBoolItem makeSvx3DTextureFilterItem(bool bVal)
SvxColorItem makeSvx3DLightcolor1Item(const Color &rCol)
SfxUInt32Item makeSvx3DVerticalSegmentsItem(sal_uInt32 nVal)
SfxBoolItem makeSvx3DTwoSidedLightingItem(bool bVal)
SfxUInt16Item makeSvx3DMaterialSpecularIntensityItem(sal_uInt16 nVal)
SvxColorItem makeSvx3DLightcolor8Item(const Color &rCol)
SfxBoolItem makeSvx3DLightOnOff5Item(bool bVal)
SfxUInt16Item makeSvx3DPercentDiagonalItem(sal_uInt16 nVal)
SvxColorItem makeSvx3DLightcolor2Item(const Color &rCol)
SfxBoolItem makeSvx3DDoubleSidedItem(bool bVal)
SvxColorItem makeSvx3DLightcolor6Item(const Color &rCol)
SfxUInt32Item makeSvx3DEndAngleItem(sal_uInt32 nVal)
SfxUInt16Item makeSvx3DShadowSlantItem(sal_uInt16 nVal)
SvxColorItem makeSvx3DLightcolor5Item(const Color &rCol)
SvxColorItem makeSvx3DMaterialSpecularItem(const Color &rCol)
SfxUInt32Item makeSvx3DDepthItem(sal_uInt32 nVal)
SvxColorItem makeSvx3DAmbientcolorItem(const Color &rCol)
class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DNormalsKindItem final SfxBoolItem makeSvx3DNormalsInvertItem(bool bVal)
SfxBoolItem makeSvx3DLightOnOff7Item(bool bVal)
class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DPerspectiveItem final SfxUInt32Item makeSvx3DDistanceItem(sal_uInt32 nVal)
SfxBoolItem makeSvx3DLightOnOff1Item(bool bVal)
SvxColorItem makeSvx3DLightcolor3Item(const Color &rCol)
SfxBoolItem makeSvx3DLightOnOff3Item(bool bVal)
SfxUInt32Item makeSvx3DFocalLengthItem(sal_uInt32 nVal)
SvxColorItem makeSvx3DLightcolor4Item(const Color &rCol)
SfxBoolItem makeSvx3DLightOnOff4Item(bool bVal)
SfxBoolItem makeSvx3DLightOnOff8Item(bool bVal)
class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DTextureProjectionXItem final class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DTextureProjectionYItem final SfxBoolItem makeSvx3DShadow3DItem(bool bVal)
SfxBoolItem makeSvx3DLightOnOff6Item(bool bVal)
SfxUInt32Item makeSvx3DHorizontalSegmentsItem(sal_uInt32 nVal)
SvxColorItem makeSvx3DLightcolor7Item(const Color &rCol)
SVT_DLLPUBLIC sal_Int64 GetCoreValue(const weld::MetricSpinButton &rField, MapUnit eUnit)
SVT_DLLPUBLIC void SetMetricValue(weld::MetricSpinButton &rField, sal_Int64 nCoreValue, MapUnit eUnit)
SVT_DLLPUBLIC void SetFieldUnit(weld::MetricSpinButton &rCtrl, FieldUnit eUnit, bool bAll=false)
constexpr OUStringLiteral PERCENT(u"Percent")
constexpr TypedWhichId< XFillColorItem > XATTR_FILLCOLOR(XATTR_FILL_FIRST+1)
constexpr TypedWhichId< XLineStyleItem > XATTR_LINESTYLE(XATTR_LINE_FIRST)
constexpr TypedWhichId< XFillStyleItem > XATTR_FILLSTYLE(XATTR_FILL_FIRST)