diff options
-rw-r--r-- | chart2/source/controller/dialogs/tp_3D_SceneIllumination.cxx | 27 | ||||
-rw-r--r-- | chart2/source/controller/dialogs/tp_3D_SceneIllumination.hxx | 24 | ||||
-rw-r--r-- | include/svx/float3d.hxx | 252 | ||||
-rw-r--r-- | include/svx/strings.hrc | 2 | ||||
-rw-r--r-- | solenv/sanitizers/ui/svx.suppr | 3 | ||||
-rw-r--r-- | svx/source/dialog/dlgctl3d.cxx | 1 | ||||
-rw-r--r-- | svx/source/engine3d/float3d.cxx | 2197 | ||||
-rw-r--r-- | svx/source/tbxctrls/tbcontrl.cxx | 3 | ||||
-rw-r--r-- | svx/uiconfig/ui/docking3deffects.ui | 3095 |
9 files changed, 2860 insertions, 2744 deletions
diff --git a/chart2/source/controller/dialogs/tp_3D_SceneIllumination.cxx b/chart2/source/controller/dialogs/tp_3D_SceneIllumination.cxx index 39000a96949a..058e0a208afc 100644 --- a/chart2/source/controller/dialogs/tp_3D_SceneIllumination.cxx +++ b/chart2/source/controller/dialogs/tp_3D_SceneIllumination.cxx @@ -23,6 +23,7 @@ #include <ControllerLockGuard.hxx> #include <svx/colorbox.hxx> +#include <svx/float3d.hxx> #include <svx/strings.hrc> #include <svx/dialmgr.hxx> #include <svtools/colrdlg.hxx> @@ -39,24 +40,6 @@ namespace chart using namespace ::com::sun::star; using namespace ::com::sun::star::chart2; -LightButton::LightButton(std::unique_ptr<weld::ToggleButton> xButton) - : m_xButton(std::move(xButton)) - , m_bLightOn(false) -{ - m_xButton->set_from_icon_name(RID_SVXBMP_LAMP_OFF); -} - -void LightButton::switchLightOn(bool bOn) -{ - if (m_bLightOn == bOn) - return; - m_bLightOn = bOn; - if (m_bLightOn) - m_xButton->set_from_icon_name(RID_SVXBMP_LAMP_ON); - else - m_xButton->set_from_icon_name(RID_SVXBMP_LAMP_OFF); -} - namespace { struct LightSource @@ -77,7 +60,6 @@ struct LightSource struct LightSourceInfo { LightButton* pButton; - bool bButtonActive; LightSource aLightSource; LightSourceInfo(); @@ -86,7 +68,6 @@ struct LightSourceInfo LightSourceInfo::LightSourceInfo() : pButton(nullptr) - , bButtonActive(false) , aLightSource() { aLightSource.nDiffuseColor = Color(0xffffff); // white @@ -448,7 +429,7 @@ IMPL_LINK(ThreeD_SceneIllumination_TabPage, ClickLightSourceButtonHdl, weld::But assert(pInfo); - bool bIsChecked = pInfo->bButtonActive; + bool bIsChecked = pInfo->pButton->get_prev_active(); ControllerLockGuardUNO aGuard( m_xChartModel ); for( nL=0; nL<8; nL++) @@ -459,12 +440,12 @@ IMPL_LINK(ThreeD_SceneIllumination_TabPage, ClickLightSourceButtonHdl, weld::But pLightButton->set_active(true); if (!pLightButton->get_widget()->has_focus()) pLightButton->get_widget()->grab_focus(); - m_pLightSourceInfoList[nL].bButtonActive = true; + m_pLightSourceInfoList[nL].pButton->set_prev_active(true); } else { pLightButton->set_active(false); - m_pLightSourceInfoList[nL].bButtonActive = false; + m_pLightSourceInfoList[nL].pButton->set_prev_active(false); } } diff --git a/chart2/source/controller/dialogs/tp_3D_SceneIllumination.hxx b/chart2/source/controller/dialogs/tp_3D_SceneIllumination.hxx index 81bb278e28eb..049680760fa7 100644 --- a/chart2/source/controller/dialogs/tp_3D_SceneIllumination.hxx +++ b/chart2/source/controller/dialogs/tp_3D_SceneIllumination.hxx @@ -26,33 +26,11 @@ namespace com { namespace sun { namespace star { namespace beans { class XPropertySet; } } } } class ColorListBox; +class LightButton; namespace chart { -class LightButton -{ -public: - explicit LightButton(std::unique_ptr<weld::ToggleButton> xButton); - - void switchLightOn(bool bOn); - bool isLightOn() const { return m_bLightOn;} - - bool get_active() const { return m_xButton->get_active(); } - void set_active(bool bActive) { m_xButton->set_active(bActive); } - - weld::ToggleButton* get_widget() const { return m_xButton.get(); } - - void connect_clicked(const Link<weld::Button&, void>& rLink) - { - m_xButton->connect_clicked(rLink); - } - -private: - std::unique_ptr<weld::ToggleButton> m_xButton; - bool m_bLightOn; -}; - struct LightSourceInfo; class ThreeD_SceneIllumination_TabPage diff --git a/include/svx/float3d.hxx b/include/svx/float3d.hxx index 2390633c9a18..d899b2d5e4fc 100644 --- a/include/svx/float3d.hxx +++ b/include/svx/float3d.hxx @@ -22,11 +22,8 @@ #include <memory> #include <sfx2/ctrlitem.hxx> -#include <vcl/fixed.hxx> -#include <vcl/field.hxx> #include <sfx2/dockwin.hxx> -#include <vcl/button.hxx> -#include <vcl/layout.hxx> +#include <vcl/weld.hxx> #include <svx/svxdllapi.h> #include <svx/dlgctl3d.hxx> @@ -44,10 +41,40 @@ enum class ViewType3D class FmFormModel; class Svx3DCtrlItem; class SvxConvertTo3DItem; -class SvxColorListBox; +class ColorListBox; struct Svx3DWinImpl; +class SVX_DLLPUBLIC LightButton final +{ +public: + explicit LightButton(std::unique_ptr<weld::ToggleButton> xButton); + + void switchLightOn(bool bOn); + bool isLightOn() const { return m_bLightOn;} + + bool get_active() const { return m_xButton->get_active(); } + void set_active(bool bActive) { m_xButton->set_active(bActive); } + + TriState get_state() const { return m_xButton->get_state(); } + void set_state(TriState eState) { m_xButton->set_state(eState); } + + weld::ToggleButton* get_widget() const { return m_xButton.get(); } + + void connect_clicked(const Link<weld::Button&, void>& rLink) + { + m_xButton->connect_clicked(rLink); + } + + bool get_prev_active() const { return m_bButtonPrevActive; } + void set_prev_active(bool bPrevActive) { m_bButtonPrevActive = bPrevActive; } + +private: + std::unique_ptr<weld::ToggleButton> m_xButton; + bool m_bLightOn; + bool m_bButtonPrevActive; +}; + class SAL_WARN_UNUSED SVX_DLLPUBLIC Svx3DWin final : public SfxDockingWindow { friend class Svx3DChildWindow; @@ -55,112 +82,118 @@ class SAL_WARN_UNUSED SVX_DLLPUBLIC Svx3DWin final : public SfxDockingWindow using Window::Update; private: - VclPtr<PushButton> m_pBtnGeo; - VclPtr<PushButton> m_pBtnRepresentation; - VclPtr<PushButton> m_pBtnLight; - VclPtr<PushButton> m_pBtnTexture; - VclPtr<PushButton> m_pBtnMaterial; - VclPtr<PushButton> m_pBtnUpdate; - VclPtr<PushButton> m_pBtnAssign; + std::unique_ptr<weld::ToggleButton> m_xBtnGeo; + std::unique_ptr<weld::ToggleButton> m_xBtnRepresentation; + std::unique_ptr<weld::ToggleButton> m_xBtnLight; + std::unique_ptr<weld::ToggleButton> m_xBtnTexture; + std::unique_ptr<weld::ToggleButton> m_xBtnMaterial; + std::unique_ptr<weld::ToggleButton> m_xBtnUpdate; + std::unique_ptr<weld::Button> m_xBtnAssign; // geometry - VclPtr<VclContainer> m_pFLGeometrie; - VclPtr<FixedText> m_pFtPercentDiagonal; - VclPtr<MetricField> m_pMtrPercentDiagonal; - VclPtr<FixedText> m_pFtBackscale; - VclPtr<MetricField> m_pMtrBackscale; - VclPtr<FixedText> m_pFtEndAngle; - VclPtr<MetricField> m_pMtrEndAngle; - VclPtr<FixedText> m_pFtDepth; - VclPtr<MetricField> m_pMtrDepth; - - VclPtr<VclContainer> m_pFLSegments; - VclPtr<NumericField> m_pNumHorizontal; - VclPtr<NumericField> m_pNumVertical; - - VclPtr<VclContainer> m_pFLNormals; - VclPtr<PushButton> m_pBtnNormalsObj; - VclPtr<PushButton> m_pBtnNormalsFlat; - VclPtr<PushButton> m_pBtnNormalsSphere; - VclPtr<PushButton> m_pBtnNormalsInvert; - VclPtr<PushButton> m_pBtnTwoSidedLighting; - VclPtr<PushButton> m_pBtnDoubleSided; + std::unique_ptr<weld::Container> m_xFLGeometrie; + std::unique_ptr<weld::Label> m_xFtPercentDiagonal; + std::unique_ptr<weld::MetricSpinButton> m_xMtrPercentDiagonal; + std::unique_ptr<weld::Label> m_xFtBackscale; + std::unique_ptr<weld::MetricSpinButton> m_xMtrBackscale; + std::unique_ptr<weld::Label> m_xFtEndAngle; + std::unique_ptr<weld::MetricSpinButton> m_xMtrEndAngle; + std::unique_ptr<weld::Label> m_xFtDepth; + std::unique_ptr<weld::MetricSpinButton> m_xMtrDepth; + + std::unique_ptr<weld::Container> m_xFLSegments; + std::unique_ptr<weld::SpinButton> m_xNumHorizontal; + std::unique_ptr<weld::SpinButton> m_xNumVertical; + + std::unique_ptr<weld::Container> m_xFLNormals; + std::unique_ptr<weld::ToggleButton> m_xBtnNormalsObj; + std::unique_ptr<weld::ToggleButton> m_xBtnNormalsFlat; + std::unique_ptr<weld::ToggleButton> m_xBtnNormalsSphere; + std::unique_ptr<weld::ToggleButton> m_xBtnNormalsInvert; + std::unique_ptr<weld::ToggleButton> m_xBtnTwoSidedLighting; + std::unique_ptr<weld::ToggleButton> m_xBtnDoubleSided; // presentation - VclPtr<VclContainer> m_pFLRepresentation; - VclPtr<ListBox> m_pLbShademode; + std::unique_ptr<weld::Container> m_xFLRepresentation; + std::unique_ptr<weld::ComboBox> m_xLbShademode; - VclPtr<VclContainer> m_pFLShadow; - VclPtr<PushButton> m_pBtnShadow3d; - VclPtr<FixedText> m_pFtSlant; - VclPtr<MetricField> m_pMtrSlant; + std::unique_ptr<weld::Container> m_xFLShadow; + std::unique_ptr<weld::ToggleButton> m_xBtnShadow3d; + std::unique_ptr<weld::Label> m_xFtSlant; + std::unique_ptr<weld::MetricSpinButton> m_xMtrSlant; - VclPtr<VclContainer> m_pFLCamera; - VclPtr<MetricField> m_pMtrDistance; - VclPtr<MetricField> m_pMtrFocalLength; + std::unique_ptr<weld::Container> m_xFLCamera; + std::unique_ptr<weld::MetricSpinButton> m_xMtrDistance; + std::unique_ptr<weld::MetricSpinButton> m_xMtrFocalLength; // lighting - VclPtr<VclContainer> m_pFLLight; - VclPtr<PushButton> m_pBtnLight1; - VclPtr<PushButton> m_pBtnLight2; - VclPtr<PushButton> m_pBtnLight3; - VclPtr<PushButton> m_pBtnLight4; - VclPtr<PushButton> m_pBtnLight5; - VclPtr<PushButton> m_pBtnLight6; - VclPtr<PushButton> m_pBtnLight7; - VclPtr<PushButton> m_pBtnLight8; - VclPtr<SvxColorListBox> m_pLbLight1; - VclPtr<SvxColorListBox> m_pLbLight2; - VclPtr<SvxColorListBox> m_pLbLight3; - VclPtr<SvxColorListBox> m_pLbLight4; - VclPtr<SvxColorListBox> m_pLbLight5; - VclPtr<SvxColorListBox> m_pLbLight6; - VclPtr<SvxColorListBox> m_pLbLight7; - VclPtr<SvxColorListBox> m_pLbLight8; - VclPtr<PushButton> m_pBtnLightColor; - VclPtr<SvxColorListBox> m_pLbAmbientlight; // ListBox - VclPtr<PushButton> m_pBtnAmbientColor; // color button + std::unique_ptr<weld::Container> m_xFLLight; + std::unique_ptr<LightButton> m_xBtnLight1; + std::unique_ptr<LightButton> m_xBtnLight2; + std::unique_ptr<LightButton> m_xBtnLight3; + std::unique_ptr<LightButton> m_xBtnLight4; + std::unique_ptr<LightButton> m_xBtnLight5; + std::unique_ptr<LightButton> m_xBtnLight6; + std::unique_ptr<LightButton> m_xBtnLight7; + std::unique_ptr<LightButton> m_xBtnLight8; + std::unique_ptr<ColorListBox> m_xLbLight1; + std::unique_ptr<ColorListBox> m_xLbLight2; + std::unique_ptr<ColorListBox> m_xLbLight3; + std::unique_ptr<ColorListBox> m_xLbLight4; + std::unique_ptr<ColorListBox> m_xLbLight5; + std::unique_ptr<ColorListBox> m_xLbLight6; + std::unique_ptr<ColorListBox> m_xLbLight7; + std::unique_ptr<ColorListBox> m_xLbLight8; + std::unique_ptr<weld::Button> m_xBtnLightColor; + std::unique_ptr<ColorListBox> m_xLbAmbientlight; // ListBox + std::unique_ptr<weld::Button> m_xBtnAmbientColor; // color button // Textures - VclPtr<VclContainer> m_pFLTexture; - VclPtr<PushButton> m_pBtnTexLuminance; - VclPtr<PushButton> m_pBtnTexColor; - VclPtr<PushButton> m_pBtnTexReplace; - VclPtr<PushButton> m_pBtnTexModulate; - VclPtr<PushButton> m_pBtnTexBlend; - VclPtr<PushButton> m_pBtnTexObjectX; - VclPtr<PushButton> m_pBtnTexParallelX; - VclPtr<PushButton> m_pBtnTexCircleX; - VclPtr<PushButton> m_pBtnTexObjectY; - VclPtr<PushButton> m_pBtnTexParallelY; - VclPtr<PushButton> m_pBtnTexCircleY; - VclPtr<PushButton> m_pBtnTexFilter; + std::unique_ptr<weld::Container> m_xFLTexture; + std::unique_ptr<weld::ToggleButton> m_xBtnTexLuminance; + std::unique_ptr<weld::ToggleButton> m_xBtnTexColor; + std::unique_ptr<weld::ToggleButton> m_xBtnTexReplace; + std::unique_ptr<weld::ToggleButton> m_xBtnTexModulate; + std::unique_ptr<weld::ToggleButton> m_xBtnTexBlend; + std::unique_ptr<weld::ToggleButton> m_xBtnTexObjectX; + std::unique_ptr<weld::ToggleButton> m_xBtnTexParallelX; + std::unique_ptr<weld::ToggleButton> m_xBtnTexCircleX; + std::unique_ptr<weld::ToggleButton> m_xBtnTexObjectY; + std::unique_ptr<weld::ToggleButton> m_xBtnTexParallelY; + std::unique_ptr<weld::ToggleButton> m_xBtnTexCircleY; + std::unique_ptr<weld::ToggleButton> m_xBtnTexFilter; // material // material editor - VclPtr<VclContainer> m_pFLMaterial; - VclPtr<ListBox> m_pLbMatFavorites; - VclPtr<SvxColorListBox> m_pLbMatColor; - VclPtr<PushButton> m_pBtnMatColor; - VclPtr<SvxColorListBox> m_pLbMatEmission; - VclPtr<PushButton> m_pBtnEmissionColor; - - VclPtr<VclContainer> m_pFLMatSpecular; - VclPtr<SvxColorListBox> m_pLbMatSpecular; - VclPtr<PushButton> m_pBtnSpecularColor; - VclPtr<MetricField> m_pMtrMatSpecularIntensity; - - VclPtr<Svx3DPreviewControl> m_pCtlPreview; - VclPtr<SvxLightCtl3D> m_pCtlLightPreview; + std::unique_ptr<weld::Container> m_xFLMaterial; + std::unique_ptr<weld::ComboBox> m_xLbMatFavorites; + std::unique_ptr<ColorListBox> m_xLbMatColor; + std::unique_ptr<weld::Button> m_xBtnMatColor; + std::unique_ptr<ColorListBox> m_xLbMatEmission; + std::unique_ptr<weld::Button> m_xBtnEmissionColor; + + std::unique_ptr<weld::Container> m_xFLMatSpecular; + std::unique_ptr<ColorListBox> m_xLbMatSpecular; + std::unique_ptr<weld::Button> m_xBtnSpecularColor; + std::unique_ptr<weld::MetricSpinButton> m_xMtrMatSpecularIntensity; + + std::unique_ptr<PreviewControl3D> m_xCtlPreview; + std::unique_ptr<weld::CustomWeld> m_xCtlPreviewWin; + + std::unique_ptr<weld::Widget> m_xLightPreviewGrid; + std::unique_ptr<weld::Scale> m_xHoriScale; + std::unique_ptr<weld::Scale> m_xVertScale; + std::unique_ptr<weld::Button> m_xBtn_Corner; + std::unique_ptr<LightControl3D> m_xLightPreview; + std::unique_ptr<weld::CustomWeld> m_xCtlLightPreviewWin; + std::unique_ptr<LightCtl3D> m_xCtlLightPreview; // bottom part - VclPtr<PushButton> m_pBtnConvertTo3D; - VclPtr<PushButton> m_pBtnLatheObject; - VclPtr<PushButton> m_pBtnPerspective; + std::unique_ptr<weld::Button> m_xBtnConvertTo3D; + std::unique_ptr<weld::Button> m_xBtnLatheObject; + std::unique_ptr<weld::ToggleButton> m_xBtnPerspective; // the rest ... - Image const aImgLightOn; - Image const aImgLightOff; bool bUpdate; ViewType3D eViewType; @@ -180,27 +213,26 @@ private: // ItemSet used to remember set 2d attributes std::unique_ptr<SfxItemSet> mpRemember2DAttributes; - DECL_LINK( ClickViewTypeHdl, Button*, void ); - DECL_LINK( ClickUpdateHdl, Button*, void ); - DECL_LINK( ClickAssignHdl, Button*, void ); - DECL_LINK( ClickHdl, Button*, void ); - DECL_LINK( ClickColorHdl, Button*, void ); - DECL_LINK( SelectHdl, ListBox&, void ); - DECL_LINK( SelectColorHdl, SvxColorListBox&, void ); - DECL_LINK( ModifyHdl, Edit&, void ); - void ClickLight(PushButton &rBtn); + DECL_LINK( ClickViewTypeHdl, weld::Button&, void ); + DECL_LINK( ClickUpdateHdl, weld::Button&, void ); + DECL_LINK( ClickAssignHdl, weld::Button&, void ); + DECL_LINK( ClickHdl, weld::Button&, void ); + DECL_LINK( ClickColorHdl, weld::Button&, void ); + DECL_LINK( SelectHdl, weld::ComboBox&, void ); + DECL_LINK( SelectColorHdl, ColorListBox&, void ); + DECL_LINK( ModifyMetricHdl, weld::MetricSpinButton&, void ); + DECL_LINK( ModifySpinHdl, weld::SpinButton&, void ); + void ClickLight(const LightButton& rBtn); - DECL_LINK( ChangeSelectionCallbackHdl, SvxLightCtl3D*, void ); + DECL_LINK( ChangeSelectionCallbackHdl, LightCtl3D*, void ); SVX_DLLPRIVATE void Construct(); SVX_DLLPRIVATE void Reset(); - SVX_DLLPRIVATE static void LBSelectColor( SvxColorListBox* pLb, const Color& rColor ); - SVX_DLLPRIVATE sal_uInt16 GetLightSource( const PushButton* pBtn ); - SVX_DLLPRIVATE SvxColorListBox* GetLbByButton( const PushButton* pBtn = nullptr ); - - SVX_DLLPRIVATE bool GetUILightState( const PushButton& rBtn ) const; - SVX_DLLPRIVATE void SetUILightState( PushButton& aBtn, bool bState ); + SVX_DLLPRIVATE static void LBSelectColor( ColorListBox* pLb, const Color& rColor ); + SVX_DLLPRIVATE sal_uInt16 GetLightSource( const LightButton* pBtn ); + SVX_DLLPRIVATE ColorListBox* GetCLbByButton( const LightButton* pBtn = nullptr ); + SVX_DLLPRIVATE LightButton* GetLbByButton( const weld::Button* pBtn ); virtual void Resize() override; diff --git a/include/svx/strings.hrc b/include/svx/strings.hrc index f3594bde95ed..dc7122a40a9a 100644 --- a/include/svx/strings.hrc +++ b/include/svx/strings.hrc @@ -1291,6 +1291,8 @@ #define RID_SVXDLG_BMPMASK_STR_PALETTE NC_("RID_SVXDLG_BMPMASK_STR_PALETTE", "Color Palette") #define RID_SVXDLG_BMPMASK_STR_TITLE NC_("RID_SVXDLG_BMPMASK_STR_TITLE", "Color Replacer") +#define RID_SVXDLG_FLOAT3D_STR_TITLE NC_("RID_SVXDLG_FLOAT3D_STR_TITLE", "3D Effects") + #define RID_SVXSTR_ERR_OLD_PASSWD NC_("RID_SVXSTR_ERR_OLD_PASSWD", "Invalid password") #define RID_SVXSTR_ERR_REPEAT_PASSWD NC_("RID_SVXSTR_ERR_REPEAT_PASSWD", "Passwords do not match") diff --git a/solenv/sanitizers/ui/svx.suppr b/solenv/sanitizers/ui/svx.suppr index 60018f52fc85..e7085e3358f8 100644 --- a/solenv/sanitizers/ui/svx.suppr +++ b/solenv/sanitizers/ui/svx.suppr @@ -13,6 +13,9 @@ svx/uiconfig/ui/compressgraphicdialog.ui://GtkLabel[@id='label16'] orphan-label svx/uiconfig/ui/crashreportdlg.ui://GtkLabel[@id='ed_pre'] orphan-label svx/uiconfig/ui/crashreportdlg.ui://GtkTextView[@id='ed_post'] no-labelled-by svx/uiconfig/ui/crashreportdlg.ui://GtkTextView[@id='ed_bugreport'] no-labelled-by +svx/uiconfig/ui/docking3deffects.ui://GtkButton[@id='corner'] button-no-label +svx/uiconfig/ui/docking3deffects.ui://GtkScale[@id='horiscale'] no-labelled-by +svx/uiconfig/ui/docking3deffects.ui://GtkScale[@id='vertscale'] no-labelled-by svx/uiconfig/ui/dockingcolorreplace.ui://GtkLabel[@id='label2'] orphan-label svx/uiconfig/ui/dockingcolorreplace.ui://GtkLabel[@id='label3'] orphan-label svx/uiconfig/ui/dockingcolorreplace.ui://GtkLabel[@id='label4'] orphan-label diff --git a/svx/source/dialog/dlgctl3d.cxx b/svx/source/dialog/dlgctl3d.cxx index 25b1ff7262d7..ce160c78e12d 100644 --- a/svx/source/dialog/dlgctl3d.cxx +++ b/svx/source/dialog/dlgctl3d.cxx @@ -434,6 +434,7 @@ void PreviewControl3D::Set3DAttributes( const SfxItemSet& rAttr ) { mp3DObj->SetMergedItemSet(rAttr, true); Resize(); + Invalidate(); } #define RADIUS_LAMP_PREVIEW_SIZE (4500.0) diff --git a/svx/source/engine3d/float3d.cxx b/svx/source/engine3d/float3d.cxx index 37d154ff22dc..2147bc152fc3 100644 --- a/svx/source/engine3d/float3d.cxx +++ b/svx/source/engine3d/float3d.cxx @@ -82,213 +82,227 @@ namespace { } Svx3DWin::Svx3DWin(SfxBindings* pInBindings, SfxChildWindow *pCW, vcl::Window* pParent) - : SfxDockingWindow (pInBindings, pCW, pParent, - "Docking3DEffects", "svx/ui/docking3deffects.ui") - , aImgLightOn(StockImage::Yes, RID_SVXBMP_LAMP_ON) - , aImgLightOff(StockImage::Yes, RID_SVXBMP_LAMP_OFF) + : SfxDockingWindow(pInBindings, pCW, pParent, + "Docking3DEffects", "svx/ui/docking3deffects.ui", true) + + , m_xBtnGeo(m_xBuilder->weld_toggle_button("geometry")) + , m_xBtnRepresentation(m_xBuilder->weld_toggle_button("representation")) + , m_xBtnLight(m_xBuilder->weld_toggle_button("light")) + , m_xBtnTexture(m_xBuilder->weld_toggle_button("texture")) + , m_xBtnMaterial(m_xBuilder->weld_toggle_button("material")) + , m_xBtnUpdate(m_xBuilder->weld_toggle_button("update")) + , m_xBtnAssign(m_xBuilder->weld_button("assign")) + + , m_xFLGeometrie(m_xBuilder->weld_container("geoframe")) + , m_xFtPercentDiagonal(m_xBuilder->weld_label("diagonalft")) + , m_xMtrPercentDiagonal(m_xBuilder->weld_metric_spin_button("diagonal", FieldUnit::PERCENT)) + , m_xFtBackscale(m_xBuilder->weld_label("scaleddepthft")) + , m_xMtrBackscale(m_xBuilder->weld_metric_spin_button("scaleddepth", FieldUnit::PERCENT)) + , m_xFtEndAngle(m_xBuilder->weld_label("angleft")) + , m_xMtrEndAngle(m_xBuilder->weld_metric_spin_button("angle", FieldUnit::DEGREE)) + , m_xFtDepth(m_xBuilder->weld_label("depthft")) + , m_xMtrDepth(m_xBuilder->weld_metric_spin_button("depth", FieldUnit::CM)) + + , m_xFLSegments(m_xBuilder->weld_container("segmentsframe")) + , m_xNumHorizontal(m_xBuilder->weld_spin_button("hori")) + , m_xNumVertical(m_xBuilder->weld_spin_button("veri")) + + , m_xFLNormals(m_xBuilder->weld_container("normals")) + , m_xBtnNormalsObj(m_xBuilder->weld_toggle_button("objspecific")) + , m_xBtnNormalsFlat(m_xBuilder->weld_toggle_button("flat")) + , m_xBtnNormalsSphere(m_xBuilder->weld_toggle_button("spherical")) + , m_xBtnNormalsInvert(m_xBuilder->weld_toggle_button("invertnormals")) + , m_xBtnTwoSidedLighting(m_xBuilder->weld_toggle_button("doublesidedillum")) + , m_xBtnDoubleSided(m_xBuilder->weld_toggle_button("doublesided")) + + , m_xFLRepresentation(m_xBuilder->weld_container("shadingframe")) + , m_xLbShademode(m_xBuilder->weld_combo_box("mode")) + + , m_xFLShadow(m_xBuilder->weld_container("shadowframe")) + , m_xBtnShadow3d(m_xBuilder->weld_toggle_button("shadow")) + , m_xFtSlant(m_xBuilder->weld_label("slantft")) + , m_xMtrSlant(m_xBuilder->weld_metric_spin_button("slant", FieldUnit::DEGREE)) + + , m_xFLCamera(m_xBuilder->weld_container("cameraframe")) + , m_xMtrDistance(m_xBuilder->weld_metric_spin_button("distance", FieldUnit::CM)) + , m_xMtrFocalLength(m_xBuilder->weld_metric_spin_button("focal", FieldUnit::CM)) + + , m_xFLLight(m_xBuilder->weld_container("illumframe")) + , m_xBtnLight1(new LightButton(m_xBuilder->weld_toggle_button("light1"))) + , m_xBtnLight2(new LightButton(m_xBuilder->weld_toggle_button("light2"))) + , m_xBtnLight3(new LightButton(m_xBuilder->weld_toggle_button("light3"))) + , m_xBtnLight4(new LightButton(m_xBuilder->weld_toggle_button("light4"))) + , m_xBtnLight5(new LightButton(m_xBuilder->weld_toggle_button("light5"))) + , m_xBtnLight6(new LightButton(m_xBuilder->weld_toggle_button("light6"))) + , m_xBtnLight7(new LightButton(m_xBuilder->weld_toggle_button("light7"))) + , m_xBtnLight8(new LightButton(m_xBuilder->weld_toggle_button("light8"))) + , m_xLbLight1(new ColorListBox(m_xBuilder->weld_menu_button("lightcolor1"), GetFrameWeld())) + , m_xLbLight2(new ColorListBox(m_xBuilder->weld_menu_button("lightcolor2"), GetFrameWeld())) + , m_xLbLight3(new ColorListBox(m_xBuilder->weld_menu_button("lightcolor3"), GetFrameWeld())) + , m_xLbLight4(new ColorListBox(m_xBuilder->weld_menu_button("lightcolor4"), GetFrameWeld())) + , m_xLbLight5(new ColorListBox(m_xBuilder->weld_menu_button("lightcolor5"), GetFrameWeld())) + , m_xLbLight6(new ColorListBox(m_xBuilder->weld_menu_button("lightcolor6"), GetFrameWeld())) + , m_xLbLight7(new ColorListBox(m_xBuilder->weld_menu_button("lightcolor7"), GetFrameWeld())) + , m_xLbLight8(new ColorListBox(m_xBuilder->weld_menu_button("lightcolor8"), GetFrameWeld())) + , m_xBtnLightColor(m_xBuilder->weld_button("colorbutton1")) + , m_xLbAmbientlight(new ColorListBox(m_xBuilder->weld_menu_button("ambientcolor"), GetFrameWeld())) + , m_xBtnAmbientColor(m_xBuilder->weld_button("colorbutton2")) + + , m_xFLTexture(m_xBuilder->weld_container("textureframe")) + , m_xBtnTexLuminance(m_xBuilder->weld_toggle_button("textype")) + , m_xBtnTexColor(m_xBuilder->weld_toggle_button("texcolor")) + , m_xBtnTexReplace(m_xBuilder->weld_toggle_button("texreplace")) + , m_xBtnTexModulate(m_xBuilder->weld_toggle_button("texmodulate")) + , m_xBtnTexBlend(m_xBuilder->weld_toggle_button("texblend")) + , m_xBtnTexObjectX(m_xBuilder->weld_toggle_button("texobjx")) + , m_xBtnTexParallelX(m_xBuilder->weld_toggle_button("texparallelx")) + , m_xBtnTexCircleX(m_xBuilder->weld_toggle_button("texcirclex")) + , m_xBtnTexObjectY(m_xBuilder->weld_toggle_button("texobjy")) + , m_xBtnTexParallelY(m_xBuilder->weld_toggle_button("texparallely")) + , m_xBtnTexCircleY(m_xBuilder->weld_toggle_button("texcircley")) + , m_xBtnTexFilter(m_xBuilder->weld_toggle_button("texfilter")) + + , m_xFLMaterial(m_xBuilder->weld_container("materialframe")) + , m_xLbMatFavorites(m_xBuilder->weld_combo_box("favorites")) + , m_xLbMatColor(new ColorListBox(m_xBuilder->weld_menu_button("objcolor"), GetFrameWeld())) + , m_xBtnMatColor(m_xBuilder->weld_button("colorbutton3")) + , m_xLbMatEmission(new ColorListBox(m_xBuilder->weld_menu_button("illumcolor"), GetFrameWeld())) + , m_xBtnEmissionColor(m_xBuilder->weld_button("colorbutton4")) + + , m_xFLMatSpecular(m_xBuilder->weld_container("specframe")) + , m_xLbMatSpecular(new ColorListBox(m_xBuilder->weld_menu_button("speccolor"), GetFrameWeld())) + , m_xBtnSpecularColor(m_xBuilder->weld_button("colorbutton5")) + , m_xMtrMatSpecularIntensity(m_xBuilder->weld_metric_spin_button("intensity", FieldUnit::PERCENT)) + + , m_xCtlPreview(new PreviewControl3D) + , m_xCtlPreviewWin(new weld::CustomWeld(*m_xBuilder, "preview", *m_xCtlPreview)) + + , m_xLightPreviewGrid(m_xBuilder->weld_container("lightpreviewgrid")) + , m_xHoriScale(m_xBuilder->weld_scale("horiscale")) + , m_xVertScale(m_xBuilder->weld_scale("vertscale")) + , m_xBtn_Corner(m_xBuilder->weld_button("corner")) + , m_xLightPreview(new LightControl3D) + , m_xCtlLightPreviewWin(new weld::CustomWeld(*m_xBuilder, "lightpreview", *m_xLightPreview)) + , m_xCtlLightPreview(new LightCtl3D(*m_xLightPreview, *m_xHoriScale, *m_xVertScale, *m_xBtn_Corner)) // TODO might be other body widget as arg 1 + + , m_xBtnConvertTo3D(m_xBuilder->weld_button("to3d")) + , m_xBtnLatheObject(m_xBuilder->weld_button("tolathe")) + , m_xBtnPerspective(m_xBuilder->weld_toggle_button("perspective")) + , bUpdate(false) , eViewType(ViewType3D::Geo) , pBindings(pInBindings) , mpImpl(new Svx3DWinImpl) , ePoolUnit(MapUnit::MapMM) { - get(m_pBtnGeo, "geometry"); - get(m_pBtnRepresentation, "representation"); - get(m_pBtnLight, "light"); - get(m_pBtnTexture, "texture"); - get(m_pBtnMaterial, "material"); - get(m_pBtnUpdate, "update"); - get(m_pBtnAssign, "assign"); - - get(m_pFLGeometrie, "geoframe"); - get(m_pFtPercentDiagonal, "diagonalft"); - get(m_pMtrPercentDiagonal, "diagonal"); - get(m_pFtBackscale, "scaleddepthft"); - get(m_pMtrBackscale, "scaleddepth"); - get(m_pFtEndAngle, "angleft"); - get(m_pMtrEndAngle, "angle"); - get(m_pFtDepth, "depthft"); - get(m_pMtrDepth, "depth"); - - get(m_pFLSegments, "segmentsframe"); - get(m_pNumHorizontal, "hori"); - get(m_pNumVertical, "veri"); - - get(m_pFLNormals, "normals"); - get(m_pBtnNormalsObj, "objspecific"); - get(m_pBtnNormalsFlat, "flat"); - get(m_pBtnNormalsSphere, "spherical"); - get(m_pBtnNormalsInvert, "invertnormals"); - get(m_pBtnTwoSidedLighting, "doublesidedillum"); - get(m_pBtnDoubleSided, "doublesided"); - - get(m_pFLRepresentation, "shadingframe"); - get(m_pLbShademode, "mode"); - - get(m_pFLShadow, "shadowframe"); - get(m_pBtnShadow3d, "shadow"); - get(m_pFtSlant, "slantft"); - get(m_pMtrSlant, "slant"); - - get(m_pFLCamera, "cameraframe"); - get(m_pMtrDistance, "distance"); - get(m_pMtrFocalLength, "focal"); - - get(m_pFLLight, "illumframe"); - get(m_pBtnLight1, "light1"); - get(m_pBtnLight2, "light2"); - get(m_pBtnLight3, "light3"); - get(m_pBtnLight4, "light4"); - get(m_pBtnLight5, "light5"); - get(m_pBtnLight6, "light6"); - get(m_pBtnLight7, "light7"); - get(m_pBtnLight8, "light8"); - get(m_pLbLight1, "lightcolor1"); - get(m_pLbLight2, "lightcolor2"); - get(m_pLbLight3, "lightcolor3"); - get(m_pLbLight4, "lightcolor4"); - get(m_pLbLight5, "lightcolor5"); - get(m_pLbLight6, "lightcolor6"); - get(m_pLbLight7, "lightcolor7"); - get(m_pLbLight8, "lightcolor8"); - get(m_pBtnLightColor, "colorbutton1"); - get(m_pLbAmbientlight, "ambientcolor"); - get(m_pBtnAmbientColor, "colorbutton2"); - - get(m_pFLTexture, "textureframe"); - get(m_pBtnTexLuminance, "textype"); - get(m_pBtnTexColor, "texcolor"); - get(m_pBtnTexReplace, "texreplace"); - get(m_pBtnTexModulate, "texmodulate"); - get(m_pBtnTexBlend, "texblend"); - get(m_pBtnTexObjectX, "texobjx"); - get(m_pBtnTexParallelX, "texparallelx"); - get(m_pBtnTexCircleX, "texcirclex"); - get(m_pBtnTexObjectY, "texobjy"); - get(m_pBtnTexParallelY, "texparallely"); - get(m_pBtnTexCircleY, "texcircley"); - get(m_pBtnTexFilter, "texfilter"); - - get(m_pFLMaterial, "materialframe"); - get(m_pLbMatFavorites, "favorites"); - get(m_pLbMatColor, "objcolor"); - get(m_pBtnMatColor, "colorbutton3"); - get(m_pLbMatEmission, "illumcolor"); - get(m_pBtnEmissionColor, "colorbutton4"); - - get(m_pFLMatSpecular, "specframe"); - get(m_pLbMatSpecular, "speccolor"); - get(m_pBtnSpecularColor, "colorbutton5"); - get(m_pMtrMatSpecularIntensity, "intensity"); - - get(m_pCtlPreview, "preview"); - get(m_pCtlLightPreview, "lightpreview"); - Size aSize(LogicToPixel(Size(83, 76), MapMode(MapUnit::MapAppFont))); - m_pCtlPreview->set_width_request(aSize.Width()); - m_pCtlLightPreview->set_width_request(aSize.Width()); - m_pCtlPreview->set_height_request(aSize.Height()); - m_pCtlLightPreview->set_height_request(aSize.Height()); - - get(m_pBtnConvertTo3D, "to3d"); - get(m_pBtnLatheObject, "tolathe"); - get(m_pBtnPerspective, "perspective"); + SetText(SvxResId(RID_SVXDLG_FLOAT3D_STR_TITLE)); + + weld::DrawingArea* pDrawingArea = m_xCtlPreview->GetDrawingArea(); + Size aSize(pDrawingArea->get_ref_device().LogicToPixel(Size(83, 76), MapMode(MapUnit::MapAppFont))); + pDrawingArea->set_size_request(aSize.Width(), aSize.Height()); + m_xCtlPreview->SetOutputSizePixel(aSize); + + m_xLightPreviewGrid->set_size_request(aSize.Width(), aSize.Height()); + pDrawingArea = m_xLightPreview->GetDrawingArea(); + pDrawingArea->set_size_request(42, 42); // small to fit to m_xLightPreviewGrid mpImpl->pPool = nullptr; // Set Metric eFUnit = pInBindings->GetDispatcher()->GetModule()->GetFieldUnit(); - m_pMtrDepth->SetUnit( eFUnit ); - m_pMtrDistance->SetUnit( eFUnit ); - m_pMtrFocalLength->SetUnit( eFUnit ); + m_xMtrDepth->set_unit( eFUnit ); + m_xMtrDistance->set_unit( eFUnit ); + m_xMtrFocalLength->set_unit( eFUnit ); pControllerItem.reset( new Svx3DCtrlItem(SID_3D_STATE, pBindings) ); pConvertTo3DItem.reset( new SvxConvertTo3DItem(SID_CONVERT_TO_3D, pBindings) ); pConvertTo3DLatheItem.reset( new SvxConvertTo3DItem(SID_CONVERT_TO_3D_LATHE_FAST, pBindings) ); - m_pBtnAssign->SetClickHdl( LINK( this, Svx3DWin, ClickAssignHdl ) ); - m_pBtnUpdate->SetClickHdl( LINK( this, Svx3DWin, ClickUpdateHdl ) ); + m_xBtnAssign->connect_clicked( LINK( this, Svx3DWin, ClickAssignHdl ) ); + m_xBtnUpdate->connect_clicked( LINK( this, Svx3DWin, ClickUpdateHdl ) ); - Link<Button*,void> aLink( LINK( this, Svx3DWin, ClickViewTypeHdl ) ); - m_pBtnGeo->SetClickHdl( aLink ); - m_pBtnRepresentation->SetClickHdl( aLink ); - m_pBtnLight->SetClickHdl( aLink ); - m_pBtnTexture->SetClickHdl( aLink ); - m_pBtnMaterial->SetClickHdl( aLink ); + Link<weld::Button&,void> aLink( LINK( this, Svx3DWin, ClickViewTypeHdl ) ); + m_xBtnGeo->connect_clicked( aLink ); + m_xBtnRepresentation->connect_clicked( aLink ); + m_xBtnLight->connect_clicked( aLink ); + m_xBtnTexture->connect_clicked( aLink ); + m_xBtnMaterial->connect_clicked( aLink ); aLink = LINK( this, Svx3DWin, ClickHdl ); - m_pBtnPerspective->SetClickHdl( aLink ); - m_pBtnConvertTo3D->SetClickHdl( aLink ); - m_pBtnLatheObject->SetClickHdl( aLink ); + m_xBtnPerspective->connect_clicked( aLink ); + m_xBtnConvertTo3D->connect_clicked( aLink ); + m_xBtnLatheObject->connect_clicked( aLink ); // Geometry - m_pBtnNormalsObj->SetClickHdl( aLink ); - m_pBtnNormalsFlat->SetClickHdl( aLink ); - m_pBtnNormalsSphere->SetClickHdl( aLink ); - m_pBtnTwoSidedLighting->SetClickHdl( aLink ); - m_pBtnNormalsInvert->SetClickHdl( aLink ); - m_pBtnDoubleSided->SetClickHdl( aLink ); + m_xBtnNormalsObj->connect_clicked( aLink ); + m_xBtnNormalsFlat->connect_clicked( aLink ); + m_xBtnNormalsSphere->connect_clicked( aLink ); + m_xBtnTwoSidedLighting->connect_clicked( aLink ); + m_xBtnNormalsInvert->connect_clicked( aLink ); + m_xBtnDoubleSided->connect_clicked( aLink ); // Representation - m_pBtnShadow3d->SetClickHdl( aLink ); + m_xBtnShadow3d->connect_clicked( aLink ); // Lighting - m_pBtnLight1->SetClickHdl( aLink ); - m_pBtnLight2->SetClickHdl( aLink ); - m_pBtnLight3->SetClickHdl( aLink ); - m_pBtnLight4->SetClickHdl( aLink ); - m_pBtnLight5->SetClickHdl( aLink ); - m_pBtnLight6->SetClickHdl( aLink ); - m_pBtnLight7->SetClickHdl( aLink ); - m_pBtnLight8->SetClickHdl( aLink ); + m_xBtnLight1->connect_clicked( aLink ); + m_xBtnLight2->connect_clicked( aLink ); + m_xBtnLight3->connect_clicked( aLink ); + m_xBtnLight4->connect_clicked( aLink ); + m_xBtnLight5->connect_clicked( aLink ); + m_xBtnLight6->connect_clicked( aLink ); + m_xBtnLight7->connect_clicked( aLink ); + m_xBtnLight8->connect_clicked( aLink ); // Textures - m_pBtnTexLuminance->SetClickHdl( aLink ); - m_pBtnTexColor->SetClickHdl( aLink ); - m_pBtnTexReplace->SetClickHdl( aLink ); - m_pBtnTexModulate->SetClickHdl( aLink ); - m_pBtnTexParallelX->SetClickHdl( aLink ); - m_pBtnTexCircleX->SetClickHdl( aLink ); - m_pBtnTexObjectX->SetClickHdl( aLink ); - m_pBtnTexParallelY->SetClickHdl( aLink ); - m_pBtnTexCircleY->SetClickHdl( aLink ); - m_pBtnTexObjectY->SetClickHdl( aLink ); - m_pBtnTexFilter->SetClickHdl( aLink ); + m_xBtnTexLuminance->connect_clicked( aLink ); + m_xBtnTexColor->connect_clicked( aLink ); + m_xBtnTexReplace->connect_clicked( aLink ); + m_xBtnTexModulate->connect_clicked( aLink ); + m_xBtnTexParallelX->connect_clicked( aLink ); + m_xBtnTexCircleX->connect_clicked( aLink ); + m_xBtnTexObjectX->connect_clicked( aLink ); + m_xBtnTexParallelY->connect_clicked( aLink ); + m_xBtnTexCircleY->connect_clicked( aLink ); + m_xBtnTexObjectY->connect_clicked( aLink ); + m_xBtnTexFilter->connect_clicked( aLink ); // Material aLink = LINK( this, Svx3DWin, ClickColorHdl ); - m_pBtnLightColor->SetClickHdl( aLink ); - m_pBtnAmbientColor->SetClickHdl( aLink ); - m_pBtnMatColor->SetClickHdl( aLink ); - m_pBtnEmissionColor->SetClickHdl( aLink ); - m_pBtnSpecularColor->SetClickHdl( aLink ); - - - Link<ListBox&,void> aLink2 = LINK( this, Svx3DWin, SelectHdl ); - Link<SvxColorListBox&,void> aLink4 = LINK( this, Svx3DWin, SelectColorHdl ); - m_pLbMatFavorites->SetSelectHdl( aLink2 ); - m_pLbMatColor->SetSelectHdl( aLink4 ); - m_pLbMatEmission->SetSelectHdl( aLink4 ); - m_pLbMatSpecular->SetSelectHdl( aLink4 ); - m_pLbLight1->SetSelectHdl( aLink4 ); - m_pLbLight2->SetSelectHdl( aLink4 ); - m_pLbLight3->SetSelectHdl( aLink4 ); - m_pLbLight4->SetSelectHdl( aLink4 ); - m_pLbLight5->SetSelectHdl( aLink4 ); - m_pLbLight6->SetSelectHdl( aLink4 ); - m_pLbLight7->SetSelectHdl( aLink4 ); - m_pLbLight8->SetSelectHdl( aLink4 ); - m_pLbAmbientlight->SetSelectHdl( aLink4 ); - m_pLbShademode->SetSelectHdl( aLink2 ); - - Link<Edit&,void> aLink3 = LINK( this, Svx3DWin, ModifyHdl ); - m_pMtrMatSpecularIntensity->SetModifyHdl( aLink3 ); - m_pNumHorizontal->SetModifyHdl( aLink3 ); - m_pNumVertical->SetModifyHdl( aLink3 ); - m_pMtrSlant->SetModifyHdl( aLink3 ); + m_xBtnLightColor->connect_clicked( aLink ); + m_xBtnAmbientColor->connect_clicked( aLink ); + m_xBtnMatColor->connect_clicked( aLink ); + m_xBtnEmissionColor->connect_clicked( aLink ); + m_xBtnSpecularColor->connect_clicked( aLink ); + + + Link<weld::ComboBox&,void> aLink2 = LINK( this, Svx3DWin, SelectHdl ); + Link<ColorListBox&,void> aLink4 = LINK( this, Svx3DWin, SelectColorHdl ); + m_xLbMatFavorites->connect_changed( aLink2 ); + m_xLbMatColor->SetSelectHdl( aLink4 ); + m_xLbMatEmission->SetSelectHdl( aLink4 ); + m_xLbMatSpecular->SetSelectHdl( aLink4 ); + m_xLbLight1->SetSelectHdl( aLink4 ); + m_xLbLight2->SetSelectHdl( aLink4 ); + m_xLbLight3->SetSelectHdl( aLink4 ); + m_xLbLight4->SetSelectHdl( aLink4 ); + m_xLbLight5->SetSelectHdl( aLink4 ); + m_xLbLight6->SetSelectHdl( aLink4 ); + m_xLbLight7->SetSelectHdl( aLink4 ); + m_xLbLight8->SetSelectHdl( aLink4 ); + m_xLbAmbientlight->SetSelectHdl( aLink4 ); + m_xLbShademode->connect_changed( aLink2 ); + + Link<weld::MetricSpinButton&,void> aLink3 = LINK( this, Svx3DWin, ModifyMetricHdl ); + Link<weld::SpinButton&,void> aLink5 = LINK( this, Svx3DWin, ModifySpinHdl ); + m_xMtrMatSpecularIntensity->connect_value_changed( aLink3 ); + m_xNumHorizontal->connect_value_changed( aLink5 ); + m_xNumVertical->connect_value_changed( aLink5 ); + m_xMtrSlant->connect_value_changed( aLink3 ); // Preview callback - m_pCtlLightPreview->SetUserSelectionChangeCallback(LINK( this, Svx3DWin, ChangeSelectionCallbackHdl )); + m_xCtlLightPreview->SetUserSelectionChangeCallback(LINK( this, Svx3DWin, ChangeSelectionCallbackHdl )); aSize = GetOutputSizePixel(); SetMinOutputSizePixel( aSize ); @@ -327,125 +341,114 @@ void Svx3DWin::dispose() mpImpl.reset(); - m_pBtnGeo.clear(); - m_pBtnRepresentation.clear(); - m_pBtnLight.clear(); - m_pBtnTexture.clear(); - m_pBtnMaterial.clear(); - m_pBtnUpdate.clear(); - m_pBtnAssign.clear(); - m_pFLGeometrie.clear(); - m_pFtPercentDiagonal.clear(); - m_pMtrPercentDiagonal.clear(); - m_pFtBackscale.clear(); - m_pMtrBackscale.clear(); - m_pFtEndAngle.clear(); - m_pMtrEndAngle.clear(); - m_pFtDepth.clear(); - m_pMtrDepth.clear(); - m_pFLSegments.clear(); - m_pNumHorizontal.clear(); - m_pNumVertical.clear(); - m_pFLNormals.clear(); - m_pBtnNormalsObj.clear(); - m_pBtnNormalsFlat.clear(); - m_pBtnNormalsSphere.clear(); - m_pBtnNormalsInvert.clear(); - m_pBtnTwoSidedLighting.clear(); - m_pBtnDoubleSided.clear(); - m_pFLRepresentation.clear(); - m_pLbShademode.clear(); - m_pFLShadow.clear(); - m_pBtnShadow3d.clear(); - m_pFtSlant.clear(); - m_pMtrSlant.clear(); - m_pFLCamera.clear(); - m_pMtrDistance.clear(); - m_pMtrFocalLength.clear(); - m_pFLLight.clear(); - m_pBtnLight1.clear(); - m_pBtnLight2.clear(); - m_pBtnLight3.clear(); - m_pBtnLight4.clear(); - m_pBtnLight5.clear(); - m_pBtnLight6.clear(); - m_pBtnLight7.clear(); - m_pBtnLight8.clear(); - m_pLbLight1.clear(); - m_pLbLight2.clear(); - m_pLbLight3.clear(); - m_pLbLight4.clear(); - m_pLbLight5.clear(); - m_pLbLight6.clear(); - m_pLbLight7.clear(); - m_pLbLight8.clear(); - m_pBtnLightColor.clear(); - m_pLbAmbientlight.clear(); - m_pBtnAmbientColor.clear(); - m_pFLTexture.clear(); - m_pBtnTexLuminance.clear(); - m_pBtnTexColor.clear(); - m_pBtnTexReplace.clear(); - m_pBtnTexModulate.clear(); - m_pBtnTexBlend.clear(); - m_pBtnTexObjectX.clear(); - m_pBtnTexParallelX.clear(); - m_pBtnTexCircleX.clear(); - m_pBtnTexObjectY.clear(); - m_pBtnTexParallelY.clear(); - m_pBtnTexCircleY.clear(); - m_pBtnTexFilter.clear(); - m_pFLMaterial.clear(); - m_pLbMatFavorites.clear(); - m_pLbMatColor.clear(); - m_pBtnMatColor.clear(); - m_pLbMatEmission.clear(); - m_pBtnEmissionColor.clear(); - m_pFLMatSpecular.clear(); - m_pLbMatSpecular.clear(); - m_pBtnSpecularColor.clear(); - m_pMtrMatSpecularIntensity.clear(); - m_pCtlPreview.clear(); - m_pCtlLightPreview.clear(); - m_pBtnConvertTo3D.clear(); - m_pBtnLatheObject.clear(); - m_pBtnPerspective.clear(); + m_xBtnGeo.reset(); + m_xBtnRepresentation.reset(); + m_xBtnLight.reset(); + m_xBtnTexture.reset(); + m_xBtnMaterial.reset(); + m_xBtnUpdate.reset(); + m_xBtnAssign.reset(); + m_xFLGeometrie.reset(); + m_xFtPercentDiagonal.reset(); + m_xMtrPercentDiagonal.reset(); + m_xFtBackscale.reset(); + m_xMtrBackscale.reset(); + m_xFtEndAngle.reset(); + m_xMtrEndAngle.reset(); + m_xFtDepth.reset(); + m_xMtrDepth.reset(); + m_xFLSegments.reset(); + m_xNumHorizontal.reset(); + m_xNumVertical.reset(); + m_xFLNormals.reset(); + m_xBtnNormalsObj.reset(); + m_xBtnNormalsFlat.reset(); + m_xBtnNormalsSphere.reset(); + m_xBtnNormalsInvert.reset(); + m_xBtnTwoSidedLighting.reset(); + m_xBtnDoubleSided.reset(); + m_xFLRepresentation.reset(); + m_xLbShademode.reset(); + m_xFLShadow.reset(); + m_xBtnShadow3d.reset(); + m_xFtSlant.reset(); + m_xMtrSlant.reset(); + m_xFLCamera.reset(); + m_xMtrDistance.reset(); + m_xMtrFocalLength.reset(); + m_xFLLight.reset(); + m_xBtnLight1.reset(); + m_xBtnLight2.reset(); + m_xBtnLight3.reset(); + m_xBtnLight4.reset(); + m_xBtnLight5.reset(); + m_xBtnLight6.reset(); + m_xBtnLight7.reset(); + m_xBtnLight8.reset(); + m_xLbLight1.reset(); + m_xLbLight2.reset(); + m_xLbLight3.reset(); + m_xLbLight4.reset(); + m_xLbLight5.reset(); + m_xLbLight6.reset(); + m_xLbLight7.reset(); + m_xLbLight8.reset(); + m_xBtnLightColor.reset(); + m_xLbAmbientlight.reset(); + m_xBtnAmbientColor.reset(); + m_xFLTexture.reset(); + m_xBtnTexLuminance.reset(); + m_xBtnTexColor.reset(); + m_xBtnTexReplace.reset(); + m_xBtnTexModulate.reset(); + m_xBtnTexBlend.reset(); + m_xBtnTexObjectX.reset(); + m_xBtnTexParallelX.reset(); + m_xBtnTexCircleX.reset(); + m_xBtnTexObjectY.reset(); + m_xBtnTexParallelY.reset(); + m_xBtnTexCircleY.reset(); + m_xBtnTexFilter.reset(); + m_xFLMaterial.reset(); + m_xLbMatFavorites.reset(); + m_xLbMatColor.reset(); + m_xBtnMatColor.reset(); + m_xLbMatEmission.reset(); + m_xBtnEmissionColor.reset(); + m_xFLMatSpecular.reset(); + m_xLbMatSpecular.reset(); + m_xBtnSpecularColor.reset(); + m_xMtrMatSpecularIntensity.reset(); + m_xCtlPreviewWin.reset(); + m_xCtlPreview.reset(); + m_xCtlLightPreviewWin.reset(); + m_xCtlLightPreview.reset(); + m_xBtnConvertTo3D.reset(); + m_xBtnLatheObject.reset(); + m_xBtnPerspective.reset(); SfxDockingWindow::dispose(); } - void Svx3DWin::Construct() { - m_pBtnGeo->Check(); - Link<Button*,void> aLink( LINK( this, Svx3DWin, ClickViewTypeHdl ) ); - aLink.Call(m_pBtnGeo); - m_pCtlLightPreview->Hide(); + m_xBtnGeo->set_active(true); + ClickViewTypeHdl(*m_xBtnGeo); + m_xLightPreviewGrid->hide(); } - void Svx3DWin::Reset() { // Various initializations, default is AllAttributes - m_pLbShademode->SelectEntryPos( 0 ); - m_pMtrMatSpecularIntensity->SetValue( 50 ); + m_xLbShademode->set_active( 0 ); + m_xMtrMatSpecularIntensity->set_value( 50, FieldUnit::PERCENT ); - m_pBtnLight1->Check(); - ClickUpdateHdl( nullptr ); + m_xBtnLight1->set_active(true); + ClickUpdateHdl(*m_xBtnUpdate); // Select nothing, to avoid errors when selecting the first - m_pCtlLightPreview->GetSvx3DLightControl().SelectLight(0); - m_pCtlLightPreview->CheckSelection(); -} - -bool Svx3DWin::GetUILightState(const PushButton& rBtn) const -{ - return (rBtn.GetModeImage() == aImgLightOn); -} - -void Svx3DWin::SetUILightState(PushButton& rBtn, bool bState) -{ - rBtn.SetModeImage( bState ? aImgLightOn : aImgLightOff ); + m_xCtlLightPreview->GetSvx3DLightControl().SelectLight(0); + m_xCtlLightPreview->CheckSelection(); } void Svx3DWin::Update( SfxItemSet const & rAttrs ) @@ -499,55 +502,55 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( !bChart ) { // For cube objects are no segments set - m_pFLSegments->Enable(!bCube); - - m_pFtPercentDiagonal->Enable( !bCube && !bSphere ); - m_pMtrPercentDiagonal->Enable( !bCube && !bSphere ); - m_pFtBackscale->Enable( !bCube && !bSphere ); - m_pMtrBackscale->Enable( !bCube && !bSphere ); - m_pFtDepth->Enable( !bCube && !bSphere ); - m_pMtrDepth->Enable( !bCube && !bSphere ); + m_xFLSegments->set_sensitive(!bCube); + + m_xFtPercentDiagonal->set_sensitive( !bCube && !bSphere ); + m_xMtrPercentDiagonal->set_sensitive( !bCube && !bSphere ); + m_xFtBackscale->set_sensitive( !bCube && !bSphere ); + m_xMtrBackscale->set_sensitive( !bCube && !bSphere ); + m_xFtDepth->set_sensitive( !bCube && !bSphere ); + m_xMtrDepth->set_sensitive( !bCube && !bSphere ); if( bCube ) { - m_pNumHorizontal->SetEmptyFieldValue(); - m_pNumVertical->SetEmptyFieldValue(); + m_xNumHorizontal->set_text(""); + m_xNumVertical->set_text(""); } if( bCube || bSphere ) { - m_pMtrPercentDiagonal->SetEmptyFieldValue(); - m_pMtrBackscale->SetEmptyFieldValue(); - m_pMtrDepth->SetEmptyFieldValue(); + m_xMtrPercentDiagonal->set_text(""); + m_xMtrBackscale->set_text(""); + m_xMtrDepth->set_text(""); } // There is a final angle only for Lathe objects. - m_pFtEndAngle->Enable( !bExtrude && !bCube && !bSphere ); - m_pMtrEndAngle->Enable( !bExtrude && !bCube && !bSphere ); + m_xFtEndAngle->set_sensitive( !bExtrude && !bCube && !bSphere ); + m_xMtrEndAngle->set_sensitive( !bExtrude && !bCube && !bSphere ); if( bExtrude || bCube || bSphere ) - m_pMtrEndAngle->SetEmptyFieldValue(); + m_xMtrEndAngle->set_text(""); } else { // Geometry - m_pNumHorizontal->SetEmptyFieldValue(); - m_pNumVertical->SetEmptyFieldValue(); - m_pFLSegments->Enable( false ); - m_pFtEndAngle->Enable( false ); - m_pMtrEndAngle->Enable( false ); - m_pMtrEndAngle->SetEmptyFieldValue(); - m_pFtDepth->Enable( false ); - m_pMtrDepth->Enable( false ); - m_pMtrDepth->SetEmptyFieldValue(); + m_xNumHorizontal->set_text(""); + m_xNumVertical->set_text(""); + m_xFLSegments->set_sensitive( false ); + m_xFtEndAngle->set_sensitive( false ); + m_xMtrEndAngle->set_sensitive( false ); + m_xMtrEndAngle->set_text(""); + m_xFtDepth->set_sensitive( false ); + m_xMtrDepth->set_sensitive( false ); + m_xMtrDepth->set_text(""); // Representation - m_pFLShadow->Enable(false); + m_xFLShadow->set_sensitive(false); - m_pMtrDistance->SetEmptyFieldValue(); - m_pMtrFocalLength->SetEmptyFieldValue(); - m_pFLCamera->Enable( false ); + m_xMtrDistance->set_text(""); + m_xMtrFocalLength->set_text(""); + m_xFLCamera->set_sensitive( false ); //Lower Range - m_pBtnConvertTo3D->Enable( false ); - m_pBtnLatheObject->Enable( false ); + m_xBtnConvertTo3D->set_sensitive( false ); + m_xBtnLatheObject->set_sensitive( false ); } } // Bitmap fill ? -> Status @@ -559,83 +562,83 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) bBitmap = (eXFS == drawing::FillStyle_BITMAP || eXFS == drawing::FillStyle_GRADIENT || eXFS == drawing::FillStyle_HATCH); } - m_pFLTexture->Enable(bBitmap); + m_xFLTexture->set_sensitive(bBitmap); // Geometry // Number of segments (horizontal) - if( m_pNumHorizontal->IsEnabled() ) + if( m_xNumHorizontal->get_sensitive() ) { eState = rAttrs.GetItemState(SDRATTR_3DOBJ_HORZ_SEGS); if(eState != SfxItemState::DONTCARE) { sal_uInt32 nValue = rAttrs.Get(SDRATTR_3DOBJ_HORZ_SEGS).GetValue(); - if(nValue != static_cast<sal_uInt32>(m_pNumHorizontal->GetValue())) + if (nValue != static_cast<sal_uInt32>(m_xNumHorizontal->get_value())) { - m_pNumHorizontal->SetValue( nValue ); + m_xNumHorizontal->set_value( nValue ); bUpdate = true; } - else if( m_pNumHorizontal->IsEmptyFieldValue() ) - m_pNumHorizontal->SetValue( nValue ); + else if( m_xNumHorizontal->get_text().isEmpty() ) + m_xNumHorizontal->set_value( nValue ); } else { - if( !m_pNumHorizontal->IsEmptyFieldValue() ) + if( !m_xNumHorizontal->get_text().isEmpty() ) { - m_pNumHorizontal->SetEmptyFieldValue(); + m_xNumHorizontal->set_text(""); bUpdate = true; } } } //Number of segments (vertical) - if( m_pNumVertical->IsEnabled() ) + if( m_xNumVertical->get_sensitive() ) { eState = rAttrs.GetItemState(SDRATTR_3DOBJ_VERT_SEGS); if( eState != SfxItemState::DONTCARE ) { sal_uInt32 nValue = rAttrs.Get(SDRATTR_3DOBJ_VERT_SEGS).GetValue(); - if( nValue != static_cast<sal_uInt32>(m_pNumVertical->GetValue()) ) + if( nValue != static_cast<sal_uInt32>(m_xNumVertical->get_value()) ) { - m_pNumVertical->SetValue( nValue ); + m_xNumVertical->set_value( nValue ); bUpdate = true; } - else if( m_pNumVertical->IsEmptyFieldValue() ) - m_pNumVertical->SetValue( nValue ); + else if( m_xNumVertical->get_text().isEmpty() ) + m_xNumVertical->set_value( nValue ); } else { - if( !m_pNumVertical->IsEmptyFieldValue() ) + if( !m_xNumVertical->get_text().isEmpty() ) { - m_pNumVertical->SetEmptyFieldValue(); + m_xNumVertical->set_text(""); bUpdate = true; } } } // Depth - if( m_pMtrDepth->IsEnabled() ) + if( m_xMtrDepth->get_sensitive() ) { eState = rAttrs.GetItemState(SDRATTR_3DOBJ_DEPTH); if( eState != SfxItemState::DONTCARE ) { sal_uInt32 nValue = rAttrs.Get(SDRATTR_3DOBJ_DEPTH).GetValue(); - sal_uInt32 nValue2 = GetCoreValue(*m_pMtrDepth, ePoolUnit); + sal_uInt32 nValue2 = GetCoreValue(*m_xMtrDepth, ePoolUnit); if( nValue != nValue2 ) { - if( eFUnit != m_pMtrDepth->GetUnit() ) - SetFieldUnit(*m_pMtrDepth, eFUnit); + if( eFUnit != m_xMtrDepth->get_unit() ) + SetFieldUnit(*m_xMtrDepth, eFUnit); - SetMetricValue(*m_pMtrDepth, nValue, ePoolUnit); + SetMetricValue(*m_xMtrDepth, nValue, ePoolUnit); bUpdate = true; } - else if( m_pMtrDepth->IsEmptyFieldValue() ) - m_pMtrDepth->SetValue( m_pMtrDepth->GetValue() ); + else if( m_xMtrDepth->get_text().isEmpty() ) + m_xMtrDepth->set_value(m_xMtrDepth->get_value(FieldUnit::NONE), FieldUnit::NONE); } else { - if( !m_pMtrDepth->IsEmptyFieldValue() ) + if( !m_xMtrDepth->get_text().isEmpty() ) { - m_pMtrDepth->SetEmptyFieldValue(); + m_xMtrDepth->set_text(""); bUpdate = true; } } @@ -646,91 +649,91 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { bool bValue = rAttrs.Get(SDRATTR_3DOBJ_DOUBLE_SIDED).GetValue(); - if( bValue != m_pBtnDoubleSided->IsChecked() ) + if( bValue != m_xBtnDoubleSided->get_active() ) { - m_pBtnDoubleSided->Check( bValue ); + m_xBtnDoubleSided->set_active( bValue ); bUpdate = true; } - else if( m_pBtnDoubleSided->GetState() == TRISTATE_INDET ) - m_pBtnDoubleSided->Check( bValue ); + else if( m_xBtnDoubleSided->get_state() == TRISTATE_INDET ) + m_xBtnDoubleSided->set_active( bValue ); } else { - if( m_pBtnDoubleSided->GetState() != TRISTATE_INDET ) + if( m_xBtnDoubleSided->get_state() != TRISTATE_INDET ) { - m_pBtnDoubleSided->SetState( TRISTATE_INDET ); + m_xBtnDoubleSided->set_state( TRISTATE_INDET ); bUpdate = true; } } // Edge rounding - if( m_pMtrPercentDiagonal->IsEnabled() ) + if( m_xMtrPercentDiagonal->get_sensitive() ) { eState = rAttrs.GetItemState(SDRATTR_3DOBJ_PERCENT_DIAGONAL); if( eState != SfxItemState::DONTCARE ) { sal_uInt16 nValue = rAttrs.Get(SDRATTR_3DOBJ_PERCENT_DIAGONAL).GetValue(); - if( nValue != m_pMtrPercentDiagonal->GetValue() ) + if( nValue != m_xMtrPercentDiagonal->get_value(FieldUnit::PERCENT) ) { - m_pMtrPercentDiagonal->SetValue( nValue ); + m_xMtrPercentDiagonal->set_value(nValue, FieldUnit::PERCENT); bUpdate = true; } - else if( m_pMtrPercentDiagonal->IsEmptyFieldValue() ) - m_pMtrPercentDiagonal->SetValue( nValue ); + else if( m_xMtrPercentDiagonal->get_text().isEmpty() ) + m_xMtrPercentDiagonal->set_value(nValue, FieldUnit::PERCENT); } else { - if( !m_pMtrPercentDiagonal->IsEmptyFieldValue() ) + if( !m_xMtrPercentDiagonal->get_text().isEmpty() ) { - m_pMtrPercentDiagonal->SetEmptyFieldValue(); + m_xMtrPercentDiagonal->set_text(""); bUpdate = true; } } } // Depth scaling - if( m_pMtrBackscale->IsEnabled() ) + if( m_xMtrBackscale->get_sensitive() ) { eState = rAttrs.GetItemState(SDRATTR_3DOBJ_BACKSCALE); if( eState != SfxItemState::DONTCARE ) { sal_uInt16 nValue = rAttrs.Get(SDRATTR_3DOBJ_BACKSCALE).GetValue(); - if( nValue != m_pMtrBackscale->GetValue() ) + if( nValue != m_xMtrBackscale->get_value(FieldUnit::PERCENT) ) { - m_pMtrBackscale->SetValue( nValue ); + m_xMtrBackscale->set_value(nValue, FieldUnit::PERCENT); bUpdate = true; } - else if( m_pMtrBackscale->IsEmptyFieldValue() ) - m_pMtrBackscale->SetValue( nValue ); + else if( m_xMtrBackscale->get_text().isEmpty() ) + m_xMtrBackscale->set_value(nValue, FieldUnit::PERCENT); } else { - if( !m_pMtrBackscale->IsEmptyFieldValue() ) + if( !m_xMtrBackscale->get_text().isEmpty() ) { - m_pMtrBackscale->SetEmptyFieldValue(); + m_xMtrBackscale->set_text(""); bUpdate = true; } } } // End angle - if( m_pMtrEndAngle->IsEnabled() ) + if( m_xMtrEndAngle->get_sensitive() ) { eState = rAttrs.GetItemState(SDRATTR_3DOBJ_END_ANGLE); if( eState != SfxItemState::DONTCARE ) { sal_Int32 nValue = rAttrs.Get(SDRATTR_3DOBJ_END_ANGLE).GetValue(); - if( nValue != m_pMtrEndAngle->GetValue() ) + if( nValue != m_xMtrEndAngle->get_value(FieldUnit::DEGREE) ) { - m_pMtrEndAngle->SetValue( nValue ); + m_xMtrEndAngle->set_value(nValue, FieldUnit::DEGREE); bUpdate = true; } } else { - if( !m_pMtrEndAngle->IsEmptyFieldValue() ) + if( !m_xMtrEndAngle->get_text().isEmpty() ) { - m_pMtrEndAngle->SetEmptyFieldValue(); + m_xMtrEndAngle->set_text(""); bUpdate = true; } } @@ -742,25 +745,25 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) { sal_uInt16 nValue = rAttrs.Get(SDRATTR_3DOBJ_NORMALS_KIND).GetValue(); - if( ( !m_pBtnNormalsObj->IsChecked() && nValue == 0 ) || - ( !m_pBtnNormalsFlat->IsChecked() && nValue == 1 ) || - ( !m_pBtnNormalsSphere->IsChecked() && nValue == 2 ) ) + if( ( !m_xBtnNormalsObj->get_active() && nValue == 0 ) || + ( !m_xBtnNormalsFlat->get_active() && nValue == 1 ) || + ( !m_xBtnNormalsSphere->get_active() && nValue == 2 ) ) { - m_pBtnNormalsObj->Check( nValue == 0 ); - m_pBtnNormalsFlat->Check( nValue == 1 ); - m_pBtnNormalsSphere->Check( nValue == 2 ); + m_xBtnNormalsObj->set_active( nValue == 0 ); + m_xBtnNormalsFlat->set_active( nValue == 1 ); + m_xBtnNormalsSphere->set_active( nValue == 2 ); bUpdate = true; } } else { - if( m_pBtnNormalsObj->IsChecked() || - m_pBtnNormalsFlat->IsChecked() || - m_pBtnNormalsSphere->IsChecked() ) + if( m_xBtnNormalsObj->get_active() || + m_xBtnNormalsFlat->get_active() || + m_xBtnNormalsSphere->get_active() ) { - m_pBtnNormalsObj->Check( false ); - m_pBtnNormalsFlat->Check( false ); - m_pBtnNormalsSphere->Check( false ); + m_xBtnNormalsObj->set_active( false ); + m_xBtnNormalsFlat->set_active( false ); + m_xBtnNormalsSphere->set_active( false ); bUpdate = true; } } @@ -770,19 +773,19 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { bool bValue = rAttrs.Get(SDRATTR_3DOBJ_NORMALS_INVERT).GetValue(); - if( bValue != m_pBtnNormalsInvert->IsChecked() ) + if( bValue != m_xBtnNormalsInvert->get_active() ) { - m_pBtnNormalsInvert->Check( bValue ); + m_xBtnNormalsInvert->set_active( bValue ); bUpdate = true; } - else if( m_pBtnNormalsInvert->GetState() == TRISTATE_INDET ) - m_pBtnNormalsInvert->Check( bValue ); + else if( m_xBtnNormalsInvert->get_state() == TRISTATE_INDET ) + m_xBtnNormalsInvert->set_active( bValue ); } else { - if( m_pBtnNormalsInvert->GetState() != TRISTATE_INDET ) + if( m_xBtnNormalsInvert->get_state() != TRISTATE_INDET ) { - m_pBtnNormalsInvert->SetState( TRISTATE_INDET ); + m_xBtnNormalsInvert->set_state( TRISTATE_INDET ); bUpdate = true; } } @@ -792,19 +795,19 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { bool bValue = rAttrs.Get(SDRATTR_3DSCENE_TWO_SIDED_LIGHTING).GetValue(); - if( bValue != m_pBtnTwoSidedLighting->IsChecked() ) + if( bValue != m_xBtnTwoSidedLighting->get_active() ) { - m_pBtnTwoSidedLighting->Check( bValue ); + m_xBtnTwoSidedLighting->set_active( bValue ); bUpdate = true; } - else if( m_pBtnTwoSidedLighting->GetState() == TRISTATE_INDET ) - m_pBtnTwoSidedLighting->Check( bValue ); + else if( m_xBtnTwoSidedLighting->get_state() == TRISTATE_INDET ) + m_xBtnTwoSidedLighting->set_active( bValue ); } else { - if( m_pBtnTwoSidedLighting->GetState() != TRISTATE_INDET ) + if( m_xBtnTwoSidedLighting->get_state() != TRISTATE_INDET ) { - m_pBtnTwoSidedLighting->SetState( TRISTATE_INDET ); + m_xBtnTwoSidedLighting->set_state( TRISTATE_INDET ); bUpdate = true; } } @@ -815,17 +818,17 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { sal_uInt16 nValue = rAttrs.Get(SDRATTR_3DSCENE_SHADE_MODE).GetValue(); - if( nValue != m_pLbShademode->GetSelectedEntryPos() ) + if( nValue != m_xLbShademode->get_active() ) { - m_pLbShademode->SelectEntryPos( nValue ); + m_xLbShademode->set_active( nValue ); bUpdate = true; } } else { - if( m_pLbShademode->GetSelectedEntryCount() != 0 ) + if( m_xLbShademode->get_active() != 0 ) { - m_pLbShademode->SetNoSelection(); + m_xLbShademode->set_active(-1); bUpdate = true; } } @@ -835,21 +838,21 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { bool bValue = rAttrs.Get(SDRATTR_3DOBJ_SHADOW_3D).GetValue(); - if( bValue != m_pBtnShadow3d->IsChecked() ) + if( bValue != m_xBtnShadow3d->get_active() ) { - m_pBtnShadow3d->Check( bValue ); - m_pFtSlant->Enable( bValue ); - m_pMtrSlant->Enable( bValue ); + m_xBtnShadow3d->set_active( bValue ); + m_xFtSlant->set_sensitive( bValue ); + m_xMtrSlant->set_sensitive( bValue ); bUpdate = true; } - else if( m_pBtnShadow3d->GetState() == TRISTATE_INDET ) - m_pBtnShadow3d->Check( bValue ); + else if( m_xBtnShadow3d->get_state() == TRISTATE_INDET ) + m_xBtnShadow3d->set_active( bValue ); } else { - if( m_pBtnShadow3d->GetState() != TRISTATE_INDET ) + if( m_xBtnShadow3d->get_state() != TRISTATE_INDET ) { - m_pBtnShadow3d->SetState( TRISTATE_INDET ); + m_xBtnShadow3d->set_state( TRISTATE_INDET ); bUpdate = true; } } @@ -859,17 +862,17 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { sal_uInt16 nValue = rAttrs.Get(SDRATTR_3DSCENE_SHADOW_SLANT).GetValue(); - if( nValue != m_pMtrSlant->GetValue() ) + if( nValue != m_xMtrSlant->get_value(FieldUnit::DEGREE) ) { - m_pMtrSlant->SetValue( nValue ); + m_xMtrSlant->set_value(nValue, FieldUnit::DEGREE); bUpdate = true; } } else { - if( !m_pMtrSlant->IsEmptyFieldValue() ) + if( !m_xMtrSlant->get_text().isEmpty() ) { - m_pMtrSlant->SetEmptyFieldValue(); + m_xMtrSlant->set_text(""); bUpdate = true; } } @@ -879,21 +882,21 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { sal_uInt32 nValue = rAttrs.Get(SDRATTR_3DSCENE_DISTANCE).GetValue(); - sal_uInt32 nValue2 = GetCoreValue(*m_pMtrDistance, ePoolUnit); + sal_uInt32 nValue2 = GetCoreValue(*m_xMtrDistance, ePoolUnit); if( nValue != nValue2 ) { - if( eFUnit != m_pMtrDistance->GetUnit() ) - SetFieldUnit(*m_pMtrDistance, eFUnit); + if( eFUnit != m_xMtrDistance->get_unit() ) + SetFieldUnit(*m_xMtrDistance, eFUnit); - SetMetricValue(*m_pMtrDistance, nValue, ePoolUnit); + SetMetricValue(*m_xMtrDistance, nValue, ePoolUnit); bUpdate = true; } } else { - if( !m_pMtrDepth->IsEmptyFieldValue() ) + if( !m_xMtrDepth->get_text().isEmpty() ) { - m_pMtrDepth->SetEmptyFieldValue(); + m_xMtrDepth->set_text(""); bUpdate = true; } } @@ -903,21 +906,21 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { sal_uInt32 nValue = rAttrs.Get(SDRATTR_3DSCENE_FOCAL_LENGTH).GetValue(); - sal_uInt32 nValue2 = GetCoreValue(*m_pMtrFocalLength, ePoolUnit); + sal_uInt32 nValue2 = GetCoreValue(*m_xMtrFocalLength, ePoolUnit); if( nValue != nValue2 ) { - if( eFUnit != m_pMtrFocalLength->GetUnit() ) - SetFieldUnit(*m_pMtrFocalLength, eFUnit); + if( eFUnit != m_xMtrFocalLength->get_unit() ) + SetFieldUnit(*m_xMtrFocalLength, eFUnit); - SetMetricValue(*m_pMtrFocalLength, nValue, ePoolUnit); + SetMetricValue(*m_xMtrFocalLength, nValue, ePoolUnit); bUpdate = true; } } else { - if( !m_pMtrFocalLength->IsEmptyFieldValue() ) + if( !m_xMtrFocalLength->get_text().isEmpty() ) { - m_pMtrFocalLength->SetEmptyFieldValue(); + m_xMtrFocalLength->set_text(""); bUpdate = true; } } @@ -929,7 +932,7 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { aColor = rAttrs.Get(SDRATTR_3DSCENE_LIGHTCOLOR_1).GetValue(); - SvxColorListBox* pLb = m_pLbLight1; + ColorListBox* pLb = m_xLbLight1.get(); if( aColor != pLb->GetSelectEntryColor() ) { LBSelectColor( pLb, aColor ); @@ -938,9 +941,9 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) } else { - if (!m_pLbLight1->IsNoSelection()) + if (!m_xLbLight1->IsNoSelection()) { - m_pLbLight1->SetNoSelection(); + m_xLbLight1->SetNoSelection(); bUpdate = true; } } @@ -949,19 +952,19 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { bool bOn = rAttrs.Get(SDRATTR_3DSCENE_LIGHTON_1).GetValue(); - if (bOn != GetUILightState(*m_pBtnLight1)) + if (bOn != m_xBtnLight1->isLightOn()) { - SetUILightState(*m_pBtnLight1, bOn); + m_xBtnLight1->switchLightOn(bOn); bUpdate = true; } - if( m_pBtnLight1->GetState() == TRISTATE_INDET ) - m_pBtnLight1->Check( m_pBtnLight1->IsChecked() ); + if( m_xBtnLight1->get_state() == TRISTATE_INDET ) + m_xBtnLight1->set_active( m_xBtnLight1->get_active() ); } else { - if( m_pBtnLight1->GetState() != TRISTATE_INDET ) + if( m_xBtnLight1->get_state() != TRISTATE_INDET ) { - m_pBtnLight1->SetState( TRISTATE_INDET ); + m_xBtnLight1->set_state( TRISTATE_INDET ); bUpdate = true; } } @@ -977,7 +980,7 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { aColor = rAttrs.Get(SDRATTR_3DSCENE_LIGHTCOLOR_2).GetValue(); - SvxColorListBox* pLb = m_pLbLight2; + ColorListBox* pLb = m_xLbLight2.get(); if( aColor != pLb->GetSelectEntryColor() ) { LBSelectColor( pLb, aColor ); @@ -986,9 +989,9 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) } else { - if (!m_pLbLight2->IsNoSelection()) + if (!m_xLbLight2->IsNoSelection()) { - m_pLbLight2->SetNoSelection(); + m_xLbLight2->SetNoSelection(); bUpdate = true; } } @@ -997,19 +1000,19 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { bool bOn = rAttrs.Get(SDRATTR_3DSCENE_LIGHTON_2).GetValue(); - if (bOn != GetUILightState(*m_pBtnLight2)) + if (bOn != m_xBtnLight2->isLightOn()) { - SetUILightState(*m_pBtnLight2, bOn); + m_xBtnLight2->switchLightOn(bOn); bUpdate = true; } - if( m_pBtnLight2->GetState() == TRISTATE_INDET ) - m_pBtnLight2->Check( m_pBtnLight2->IsChecked() ); + if( m_xBtnLight2->get_state() == TRISTATE_INDET ) + m_xBtnLight2->set_active( m_xBtnLight2->get_active() ); } else { - if( m_pBtnLight2->GetState() != TRISTATE_INDET ) + if( m_xBtnLight2->get_state() != TRISTATE_INDET ) { - m_pBtnLight2->SetState( TRISTATE_INDET ); + m_xBtnLight2->set_state( TRISTATE_INDET ); bUpdate = true; } } @@ -1025,7 +1028,7 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { aColor = rAttrs.Get(SDRATTR_3DSCENE_LIGHTCOLOR_3).GetValue(); - SvxColorListBox* pLb = m_pLbLight3; + ColorListBox* pLb = m_xLbLight3.get(); if( aColor != pLb->GetSelectEntryColor() ) { LBSelectColor( pLb, aColor ); @@ -1034,9 +1037,9 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) } else { - if (!m_pLbLight3->IsNoSelection()) + if (!m_xLbLight3->IsNoSelection()) { - m_pLbLight3->SetNoSelection(); + m_xLbLight3->SetNoSelection(); bUpdate = true; } } @@ -1045,19 +1048,19 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { bool bOn = rAttrs.Get(SDRATTR_3DSCENE_LIGHTON_3).GetValue(); - if (bOn != GetUILightState(*m_pBtnLight3)) + if (bOn != m_xBtnLight3->isLightOn()) { - SetUILightState(*m_pBtnLight3, bOn); + m_xBtnLight3->switchLightOn(bOn); bUpdate = true; } - if( m_pBtnLight3->GetState() == TRISTATE_INDET ) - m_pBtnLight3->Check( m_pBtnLight3->IsChecked() ); + if( m_xBtnLight3->get_state() == TRISTATE_INDET ) + m_xBtnLight3->set_active( m_xBtnLight3->get_active() ); } else { - if( m_pBtnLight3->GetState() != TRISTATE_INDET ) + if( m_xBtnLight3->get_state() != TRISTATE_INDET ) { - m_pBtnLight3->SetState( TRISTATE_INDET ); + m_xBtnLight3->set_state( TRISTATE_INDET ); bUpdate = true; } } @@ -1073,7 +1076,7 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { aColor = rAttrs.Get(SDRATTR_3DSCENE_LIGHTCOLOR_4).GetValue(); - SvxColorListBox* pLb = m_pLbLight4; + ColorListBox* pLb = m_xLbLight4.get(); if( aColor != pLb->GetSelectEntryColor() ) { LBSelectColor( pLb, aColor ); @@ -1082,9 +1085,9 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) } else { - if (!m_pLbLight4->IsNoSelection()) + if (!m_xLbLight4->IsNoSelection()) { - m_pLbLight4->SetNoSelection(); + m_xLbLight4->SetNoSelection(); bUpdate = true; } } @@ -1093,19 +1096,19 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { bool bOn = rAttrs.Get(SDRATTR_3DSCENE_LIGHTON_4).GetValue(); - if (bOn != GetUILightState(*m_pBtnLight4)) + if (bOn != m_xBtnLight4->isLightOn()) { - SetUILightState(*m_pBtnLight4, bOn); + m_xBtnLight4->switchLightOn(bOn); bUpdate = true; } - if( m_pBtnLight4->GetState() == TRISTATE_INDET ) - m_pBtnLight4->Check( m_pBtnLight4->IsChecked() ); + if( m_xBtnLight4->get_state() == TRISTATE_INDET ) + m_xBtnLight4->set_active( m_xBtnLight4->get_active() ); } else { - if( m_pBtnLight4->GetState() != TRISTATE_INDET ) + if( m_xBtnLight4->get_state() != TRISTATE_INDET ) { - m_pBtnLight4->SetState( TRISTATE_INDET ); + m_xBtnLight4->set_state( TRISTATE_INDET ); bUpdate = true; } } @@ -1121,7 +1124,7 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { aColor = rAttrs.Get(SDRATTR_3DSCENE_LIGHTCOLOR_5).GetValue(); - SvxColorListBox* pLb = m_pLbLight5; + ColorListBox* pLb = m_xLbLight5.get(); if( aColor != pLb->GetSelectEntryColor() ) { LBSelectColor( pLb, aColor ); @@ -1130,9 +1133,9 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) } else { - if (!m_pLbLight5->IsNoSelection()) + if (!m_xLbLight5->IsNoSelection()) { - m_pLbLight5->SetNoSelection(); + m_xLbLight5->SetNoSelection(); bUpdate = true; } } @@ -1141,19 +1144,19 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { bool bOn = rAttrs.Get(SDRATTR_3DSCENE_LIGHTON_5).GetValue(); - if (bOn != GetUILightState(*m_pBtnLight5)) + if (bOn != m_xBtnLight5->isLightOn()) { - SetUILightState(*m_pBtnLight5, bOn); + m_xBtnLight5->switchLightOn(bOn); bUpdate = true; } - if( m_pBtnLight5->GetState() == TRISTATE_INDET ) - m_pBtnLight5->Check( m_pBtnLight5->IsChecked() ); + if( m_xBtnLight5->get_state() == TRISTATE_INDET ) + m_xBtnLight5->set_active( m_xBtnLight5->get_active() ); } else { - if( m_pBtnLight5->GetState() != TRISTATE_INDET ) + if( m_xBtnLight5->get_state() != TRISTATE_INDET ) { - m_pBtnLight5->SetState( TRISTATE_INDET ); + m_xBtnLight5->set_state( TRISTATE_INDET ); bUpdate = true; } } @@ -1169,7 +1172,7 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { aColor = rAttrs.Get(SDRATTR_3DSCENE_LIGHTCOLOR_6).GetValue(); - SvxColorListBox* pLb = m_pLbLight6; + ColorListBox* pLb = m_xLbLight6.get(); if( aColor != pLb->GetSelectEntryColor() ) { LBSelectColor( pLb, aColor ); @@ -1178,9 +1181,9 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) } else { - if (!m_pLbLight6->IsNoSelection()) + if (!m_xLbLight6->IsNoSelection()) { - m_pLbLight6->SetNoSelection(); + m_xLbLight6->SetNoSelection(); bUpdate = true; } } @@ -1189,19 +1192,19 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { bool bOn = rAttrs.Get(SDRATTR_3DSCENE_LIGHTON_6).GetValue(); - if (bOn != GetUILightState(*m_pBtnLight6)) + if (bOn != m_xBtnLight6->isLightOn()) { - SetUILightState(*m_pBtnLight6, bOn); + m_xBtnLight6->switchLightOn(bOn); bUpdate = true; } - if( m_pBtnLight6->GetState() == TRISTATE_INDET ) - m_pBtnLight6->Check( m_pBtnLight6->IsChecked() ); + if( m_xBtnLight6->get_state() == TRISTATE_INDET ) + m_xBtnLight6->set_active( m_xBtnLight6->get_active() ); } else { - if( m_pBtnLight6->GetState() != TRISTATE_INDET ) + if( m_xBtnLight6->get_state() != TRISTATE_INDET ) { - m_pBtnLight6->SetState( TRISTATE_INDET ); + m_xBtnLight6->set_state( TRISTATE_INDET ); bUpdate = true; } } @@ -1217,7 +1220,7 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { aColor = rAttrs.Get(SDRATTR_3DSCENE_LIGHTCOLOR_7).GetValue(); - SvxColorListBox* pLb = m_pLbLight7; + ColorListBox* pLb = m_xLbLight7.get(); if( aColor != pLb->GetSelectEntryColor() ) { LBSelectColor( pLb, aColor ); @@ -1226,9 +1229,9 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) } else { - if (!m_pLbLight7->IsNoSelection()) + if (!m_xLbLight7->IsNoSelection()) { - m_pLbLight7->SetNoSelection(); + m_xLbLight7->SetNoSelection(); bUpdate = true; } } @@ -1237,19 +1240,19 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { bool bOn = rAttrs.Get(SDRATTR_3DSCENE_LIGHTON_7).GetValue(); - if (bOn != GetUILightState(*m_pBtnLight7)) + if (bOn != m_xBtnLight7->isLightOn()) { - SetUILightState(*m_pBtnLight7 , bOn); + m_xBtnLight7->switchLightOn(bOn); bUpdate = true; } - if( m_pBtnLight7->GetState() == TRISTATE_INDET ) - m_pBtnLight7->Check( m_pBtnLight7->IsChecked() ); + if( m_xBtnLight7->get_state() == TRISTATE_INDET ) + m_xBtnLight7->set_active( m_xBtnLight7->get_active() ); } else { - if( m_pBtnLight7->GetState() != TRISTATE_INDET ) + if( m_xBtnLight7->get_state() != TRISTATE_INDET ) { - m_pBtnLight7->SetState( TRISTATE_INDET ); + m_xBtnLight7->set_state( TRISTATE_INDET ); bUpdate = true; } } @@ -1265,7 +1268,7 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { aColor = rAttrs.Get(SDRATTR_3DSCENE_LIGHTCOLOR_8).GetValue(); - SvxColorListBox* pLb = m_pLbLight8; + ColorListBox* pLb = m_xLbLight8.get(); if( aColor != pLb->GetSelectEntryColor() ) { LBSelectColor( pLb, aColor ); @@ -1274,9 +1277,9 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) } else { - if (!m_pLbLight8->IsNoSelection()) + if (!m_xLbLight8->IsNoSelection()) { - m_pLbLight8->SetNoSelection(); + m_xLbLight8->SetNoSelection(); bUpdate = true; } } @@ -1285,19 +1288,19 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { bool bOn = rAttrs.Get(SDRATTR_3DSCENE_LIGHTON_8).GetValue(); - if (bOn != GetUILightState(*m_pBtnLight8)) + if (bOn != m_xBtnLight8->isLightOn()) { - SetUILightState(*m_pBtnLight8, bOn); + m_xBtnLight8->switchLightOn(bOn); bUpdate = true; } - if( m_pBtnLight8->GetState() == TRISTATE_INDET ) - m_pBtnLight8->Check( m_pBtnLight8->IsChecked() ); + if( m_xBtnLight8->get_state() == TRISTATE_INDET ) + m_xBtnLight8->set_active( m_xBtnLight8->get_active() ); } else { - if( m_pBtnLight8->GetState() != TRISTATE_INDET ) + if( m_xBtnLight8->get_state() != TRISTATE_INDET ) { - m_pBtnLight8->SetState( TRISTATE_INDET ); + m_xBtnLight8->set_state( TRISTATE_INDET ); bUpdate = true; } } @@ -1313,7 +1316,7 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { aColor = rAttrs.Get(SDRATTR_3DSCENE_AMBIENTCOLOR).GetValue(); - SvxColorListBox* pLb = m_pLbAmbientlight; + ColorListBox* pLb = m_xLbAmbientlight.get(); if( aColor != pLb->GetSelectEntryColor() ) { LBSelectColor( pLb, aColor ); @@ -1322,9 +1325,9 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) } else { - if (!m_pLbAmbientlight->IsNoSelection()) + if (!m_xLbAmbientlight->IsNoSelection()) { - m_pLbAmbientlight->SetNoSelection(); + m_xLbAmbientlight->SetNoSelection(); bUpdate = true; } } @@ -1339,21 +1342,21 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) { sal_uInt16 nValue = rAttrs.Get(SDRATTR_3DOBJ_TEXTURE_KIND).GetValue(); - if( ( !m_pBtnTexLuminance->IsChecked() && nValue == 1 ) || - ( !m_pBtnTexColor->IsChecked() && nValue == 3 ) ) + if( ( !m_xBtnTexLuminance->get_active() && nValue == 1 ) || + ( !m_xBtnTexColor->get_active() && nValue == 3 ) ) { - m_pBtnTexLuminance->Check( nValue == 1 ); - m_pBtnTexColor->Check( nValue == 3 ); + m_xBtnTexLuminance->set_active( nValue == 1 ); + m_xBtnTexColor->set_active( nValue == 3 ); bUpdate = true; } } else { - if( m_pBtnTexLuminance->IsChecked() || - m_pBtnTexColor->IsChecked() ) + if( m_xBtnTexLuminance->get_active() || + m_xBtnTexColor->get_active() ) { - m_pBtnTexLuminance->Check( false ); - m_pBtnTexColor->Check( false ); + m_xBtnTexLuminance->set_active( false ); + m_xBtnTexColor->set_active( false ); bUpdate = true; } } @@ -1364,21 +1367,21 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) { sal_uInt16 nValue = rAttrs.Get(SDRATTR_3DOBJ_TEXTURE_MODE).GetValue(); - if( ( !m_pBtnTexReplace->IsChecked() && nValue == 1 ) || - ( !m_pBtnTexModulate->IsChecked() && nValue == 2 ) ) + if( ( !m_xBtnTexReplace->get_active() && nValue == 1 ) || + ( !m_xBtnTexModulate->get_active() && nValue == 2 ) ) { - m_pBtnTexReplace->Check( nValue == 1 ); - m_pBtnTexModulate->Check( nValue == 2 ); + m_xBtnTexReplace->set_active( nValue == 1 ); + m_xBtnTexModulate->set_active( nValue == 2 ); bUpdate = true; } } else { - if( m_pBtnTexReplace->IsChecked() || - m_pBtnTexModulate->IsChecked() ) + if( m_xBtnTexReplace->get_active() || + m_xBtnTexModulate->get_active() ) { - m_pBtnTexReplace->Check( false ); - m_pBtnTexModulate->Check( false ); + m_xBtnTexReplace->set_active( false ); + m_xBtnTexModulate->set_active( false ); bUpdate = true; } } @@ -1389,25 +1392,25 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) { sal_uInt16 nValue = rAttrs.Get(SDRATTR_3DOBJ_TEXTURE_PROJ_X).GetValue(); - if( ( !m_pBtnTexObjectX->IsChecked() && nValue == 0 ) || - ( !m_pBtnTexParallelX->IsChecked() && nValue == 1 ) || - ( !m_pBtnTexCircleX->IsChecked() && nValue == 2 ) ) + if( ( !m_xBtnTexObjectX->get_active() && nValue == 0 ) || + ( !m_xBtnTexParallelX->get_active() && nValue == 1 ) || + ( !m_xBtnTexCircleX->get_active() && nValue == 2 ) ) { - m_pBtnTexObjectX->Check( nValue == 0 ); - m_pBtnTexParallelX->Check( nValue == 1 ); - m_pBtnTexCircleX->Check( nValue == 2 ); + m_xBtnTexObjectX->set_active( nValue == 0 ); + m_xBtnTexParallelX->set_active( nValue == 1 ); + m_xBtnTexCircleX->set_active( nValue == 2 ); bUpdate = true; } } else { - if( m_pBtnTexObjectX->IsChecked() || - m_pBtnTexParallelX->IsChecked() || - m_pBtnTexCircleX->IsChecked() ) + if( m_xBtnTexObjectX->get_active() || + m_xBtnTexParallelX->get_active() || + m_xBtnTexCircleX->get_active() ) { - m_pBtnTexObjectX->Check( false ); - m_pBtnTexParallelX->Check( false ); - m_pBtnTexCircleX->Check( false ); + m_xBtnTexObjectX->set_active( false ); + m_xBtnTexParallelX->set_active( false ); + m_xBtnTexCircleX->set_active( false ); bUpdate = true; } } @@ -1418,25 +1421,25 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) { sal_uInt16 nValue = rAttrs.Get(SDRATTR_3DOBJ_TEXTURE_PROJ_Y).GetValue(); - if( ( !m_pBtnTexObjectY->IsChecked() && nValue == 0 ) || - ( !m_pBtnTexParallelY->IsChecked() && nValue == 1 ) || - ( !m_pBtnTexCircleY->IsChecked() && nValue == 2 ) ) + if( ( !m_xBtnTexObjectY->get_active() && nValue == 0 ) || + ( !m_xBtnTexParallelY->get_active() && nValue == 1 ) || + ( !m_xBtnTexCircleY->get_active() && nValue == 2 ) ) { - m_pBtnTexObjectY->Check( nValue == 0 ); - m_pBtnTexParallelY->Check( nValue == 1 ); - m_pBtnTexCircleY->Check( nValue == 2 ); + m_xBtnTexObjectY->set_active( nValue == 0 ); + m_xBtnTexParallelY->set_active( nValue == 1 ); + m_xBtnTexCircleY->set_active( nValue == 2 ); bUpdate = true; } } else { - if( m_pBtnTexObjectY->IsChecked() || - m_pBtnTexParallelY->IsChecked() || - m_pBtnTexCircleY->IsChecked() ) + if( m_xBtnTexObjectY->get_active() || + m_xBtnTexParallelY->get_active() || + m_xBtnTexCircleY->get_active() ) { - m_pBtnTexObjectY->Check( false ); - m_pBtnTexParallelY->Check( false ); - m_pBtnTexCircleY->Check( false ); + m_xBtnTexObjectY->set_active( false ); + m_xBtnTexParallelY->set_active( false ); + m_xBtnTexCircleY->set_active( false ); bUpdate = true; } } @@ -1446,19 +1449,19 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { bool bValue = rAttrs.Get(SDRATTR_3DOBJ_TEXTURE_FILTER).GetValue(); - if( bValue != m_pBtnTexFilter->IsChecked() ) + if( bValue != m_xBtnTexFilter->get_active() ) { - m_pBtnTexFilter->Check( bValue ); + m_xBtnTexFilter->set_active( bValue ); bUpdate = true; } - if( m_pBtnTexFilter->GetState() == TRISTATE_INDET ) - m_pBtnTexFilter->Check( bValue ); + if( m_xBtnTexFilter->get_state() == TRISTATE_INDET ) + m_xBtnTexFilter->set_active( bValue ); } else { - if( m_pBtnTexFilter->GetState() != TRISTATE_INDET ) + if( m_xBtnTexFilter->get_state() != TRISTATE_INDET ) { - m_pBtnTexFilter->SetState( TRISTATE_INDET ); + m_xBtnTexFilter->set_state( TRISTATE_INDET ); bUpdate = true; } } @@ -1466,14 +1469,14 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) // Material Favorites - m_pLbMatFavorites->SelectEntryPos( 0 ); + m_xLbMatFavorites->set_active( 0 ); // Object color eState = rAttrs.GetItemState(XATTR_FILLCOLOR); if( eState != SfxItemState::DONTCARE ) { aColor = rAttrs.Get(XATTR_FILLCOLOR).GetColorValue(); - SvxColorListBox* pLb = m_pLbMatColor; + ColorListBox* pLb = m_xLbMatColor.get(); if( aColor != pLb->GetSelectEntryColor() ) { LBSelectColor( pLb, aColor ); @@ -1482,9 +1485,9 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) } else { - if (!m_pLbMatColor->IsNoSelection()) + if (!m_xLbMatColor->IsNoSelection()) { - m_pLbMatColor->SetNoSelection(); + m_xLbMatColor->SetNoSelection(); bUpdate = true; } } @@ -1494,7 +1497,7 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { aColor = rAttrs.Get(SDRATTR_3DOBJ_MAT_EMISSION).GetValue(); - SvxColorListBox* pLb = m_pLbMatEmission; + ColorListBox* pLb = m_xLbMatEmission.get(); if( aColor != pLb->GetSelectEntryColor() ) { LBSelectColor( pLb, aColor ); @@ -1503,9 +1506,9 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) } else { - if (!m_pLbMatEmission->IsNoSelection()) + if (!m_xLbMatEmission->IsNoSelection()) { - m_pLbMatEmission->SetNoSelection(); + m_xLbMatEmission->SetNoSelection(); bUpdate = true; } } @@ -1515,7 +1518,7 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { aColor = rAttrs.Get(SDRATTR_3DOBJ_MAT_SPECULAR).GetValue(); - SvxColorListBox* pLb = m_pLbMatSpecular; + ColorListBox* pLb = m_xLbMatSpecular.get(); if( aColor != pLb->GetSelectEntryColor() ) { LBSelectColor( pLb, aColor ); @@ -1524,9 +1527,9 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) } else { - if (!m_pLbMatSpecular->IsNoSelection()) + if (!m_xLbMatSpecular->IsNoSelection()) { - m_pLbMatSpecular->SetNoSelection(); + m_xLbMatSpecular->SetNoSelection(); bUpdate = true; } } @@ -1536,17 +1539,17 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { sal_uInt16 nValue = rAttrs.Get(SDRATTR_3DOBJ_MAT_SPECULAR_INTENSITY).GetValue(); - if( nValue != m_pMtrMatSpecularIntensity->GetValue() ) + if( nValue != m_xMtrMatSpecularIntensity->get_value(FieldUnit::PERCENT) ) { - m_pMtrMatSpecularIntensity->SetValue( nValue ); + m_xMtrMatSpecularIntensity->set_value(nValue, FieldUnit::PERCENT); bUpdate = true; } } else { - if( !m_pMtrMatSpecularIntensity->IsEmptyFieldValue() ) + if( !m_xMtrMatSpecularIntensity->get_text().isEmpty() ) { - m_pMtrMatSpecularIntensity->SetEmptyFieldValue(); + m_xMtrMatSpecularIntensity->set_text(""); bUpdate = true; } } @@ -1558,20 +1561,20 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if( eState != SfxItemState::DONTCARE ) { ProjectionType ePT = static_cast<ProjectionType>(rAttrs.Get(SDRATTR_3DSCENE_PERSPECTIVE).GetValue()); - if( ( !m_pBtnPerspective->IsChecked() && ePT == ProjectionType::Perspective ) || - ( m_pBtnPerspective->IsChecked() && ePT == ProjectionType::Parallel ) ) + if( ( !m_xBtnPerspective->get_active() && ePT == ProjectionType::Perspective ) || + ( m_xBtnPerspective->get_active() && ePT == ProjectionType::Parallel ) ) { - m_pBtnPerspective->Check( ePT == ProjectionType::Perspective ); + m_xBtnPerspective->set_active( ePT == ProjectionType::Perspective ); bUpdate = true; } - if( m_pBtnPerspective->GetState() == TRISTATE_INDET ) - m_pBtnPerspective->Check( ePT == ProjectionType::Perspective ); + if( m_xBtnPerspective->get_state() == TRISTATE_INDET ) + m_xBtnPerspective->set_active( ePT == ProjectionType::Perspective ); } else { - if( m_pBtnPerspective->GetState() != TRISTATE_INDET ) + if( m_xBtnPerspective->get_state() != TRISTATE_INDET ) { - m_pBtnPerspective->SetState( TRISTATE_INDET ); + m_xBtnPerspective->set_state( TRISTATE_INDET ); bUpdate = true; } } @@ -1596,37 +1599,37 @@ void Svx3DWin::Update( SfxItemSet const & rAttrs ) if(SfxItemState::DONTCARE == aSet.GetItemState(XATTR_FILLCOLOR, false)) aSet.Put(XFillColorItem(OUString(), COL_WHITE)); - m_pCtlPreview->Set3DAttributes(aSet); - m_pCtlLightPreview->GetSvx3DLightControl().Set3DAttributes(aSet); + m_xCtlPreview->Set3DAttributes(aSet); + m_xCtlLightPreview->GetSvx3DLightControl().Set3DAttributes(aSet); // try to select light corresponding to active button sal_uInt32 nNumber(0xffffffff); - if(m_pBtnLight1->IsChecked()) + if(m_xBtnLight1->get_active()) nNumber = 0; - else if(m_pBtnLight2->IsChecked()) + else if(m_xBtnLight2->get_active()) nNumber = 1; - else if(m_pBtnLight3->IsChecked()) + else if(m_xBtnLight3->get_active()) nNumber = 2; - else if(m_pBtnLight4->IsChecked()) + else if(m_xBtnLight4->get_active()) nNumber = 3; - else if(m_pBtnLight5->IsChecked()) + else if(m_xBtnLight5->get_active()) nNumber = 4; - else if(m_pBtnLight6->IsChecked()) + else if(m_xBtnLight6->get_active()) nNumber = 5; - else if(m_pBtnLight7->IsChecked()) + else if(m_xBtnLight7->get_active()) nNumber = 6; - else if(m_pBtnLight8->IsChecked()) + else if(m_xBtnLight8->get_active()) nNumber = 7; if(nNumber != 0xffffffff) { - m_pCtlLightPreview->GetSvx3DLightControl().SelectLight(nNumber); + m_xCtlLightPreview->GetSvx3DLightControl().SelectLight(nNumber); } // handle state of converts possible - m_pBtnConvertTo3D->Enable(pConvertTo3DItem->GetState()); - m_pBtnLatheObject->Enable(pConvertTo3DLatheItem->GetState()); + m_xBtnConvertTo3D->set_sensitive(pConvertTo3DItem->GetState()); + m_xBtnLatheObject->set_sensitive(pConvertTo3DLatheItem->GetState()); } @@ -1652,10 +1655,10 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) //Others must stand as the front on all sides // Perspective - if( m_pBtnPerspective->GetState() != TRISTATE_INDET ) + if( m_xBtnPerspective->get_state() != TRISTATE_INDET ) { ProjectionType nValue; - if( m_pBtnPerspective->IsChecked() ) + if( m_xBtnPerspective->get_active() ) nValue = ProjectionType::Perspective; else nValue = ProjectionType::Parallel; @@ -1677,34 +1680,34 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) } // Number of segments (horizontal) - if( !m_pNumHorizontal->IsEmptyFieldValue() ) + if( !m_xNumHorizontal->get_text().isEmpty() ) { - sal_uInt32 nValue = static_cast<sal_uInt32>(m_pNumHorizontal->GetValue()); + sal_uInt32 nValue = static_cast<sal_uInt32>(m_xNumHorizontal->get_value()); rAttrs.Put(makeSvx3DHorizontalSegmentsItem(nValue)); } else rAttrs.InvalidateItem(SDRATTR_3DOBJ_HORZ_SEGS); // Number of segments (vertical) - if( !m_pNumVertical->IsEmptyFieldValue() ) + if( !m_xNumVertical->get_text().isEmpty() ) { - sal_uInt32 nValue = static_cast<sal_uInt32>(m_pNumVertical->GetValue()); + sal_uInt32 nValue = static_cast<sal_uInt32>(m_xNumVertical->get_value()); rAttrs.Put(makeSvx3DVerticalSegmentsItem(nValue)); } else rAttrs.InvalidateItem(SDRATTR_3DOBJ_VERT_SEGS); // Depth - if( !m_pMtrDepth->IsEmptyFieldValue() ) + if( !m_xMtrDepth->get_text().isEmpty() ) { - sal_uInt32 nValue = GetCoreValue(*m_pMtrDepth, ePoolUnit); + sal_uInt32 nValue = GetCoreValue(*m_xMtrDepth, ePoolUnit); rAttrs.Put(makeSvx3DDepthItem(nValue)); } else rAttrs.InvalidateItem(SDRATTR_3DOBJ_DEPTH); // Double-sided - TriState eState = m_pBtnDoubleSided->GetState(); + TriState eState = m_xBtnDoubleSided->get_state(); if( eState != TRISTATE_INDET ) { bool bValue = TRISTATE_TRUE == eState; @@ -1714,27 +1717,27 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) rAttrs.InvalidateItem(SDRATTR_3DOBJ_DOUBLE_SIDED); // Edge rounding - if( !m_pMtrPercentDiagonal->IsEmptyFieldValue() ) + if( !m_xMtrPercentDiagonal->get_text().isEmpty() ) { - sal_uInt16 nValue = static_cast<sal_uInt16>(m_pMtrPercentDiagonal->GetValue()); + sal_uInt16 nValue = static_cast<sal_uInt16>(m_xMtrPercentDiagonal->get_value(FieldUnit::PERCENT)); rAttrs.Put(makeSvx3DPercentDiagonalItem(nValue)); } else rAttrs.InvalidateItem(SDRATTR_3DOBJ_PERCENT_DIAGONAL); // Depth scale - if( !m_pMtrBackscale->IsEmptyFieldValue() ) + if( !m_xMtrBackscale->get_text().isEmpty() ) { - sal_uInt16 nValue = static_cast<sal_uInt16>(m_pMtrBackscale->GetValue()); + sal_uInt16 nValue = static_cast<sal_uInt16>(m_xMtrBackscale->get_value(FieldUnit::PERCENT)); rAttrs.Put(makeSvx3DBackscaleItem(nValue)); } else rAttrs.InvalidateItem(SDRATTR_3DOBJ_BACKSCALE); // End angle - if( !m_pMtrEndAngle->IsEmptyFieldValue() ) + if( !m_xMtrEndAngle->get_text().isEmpty() ) { - sal_uInt16 nValue = static_cast<sal_uInt16>(m_pMtrEndAngle->GetValue()); + sal_uInt16 nValue = static_cast<sal_uInt16>(m_xMtrEndAngle->get_value(FieldUnit::DEGREE)); rAttrs.Put(makeSvx3DEndAngleItem(nValue)); } else @@ -1742,11 +1745,11 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) // Normal type sal_uInt16 nValue = 99; - if( m_pBtnNormalsObj->IsChecked() ) + if( m_xBtnNormalsObj->get_active() ) nValue = 0; - else if( m_pBtnNormalsFlat->IsChecked() ) + else if( m_xBtnNormalsFlat->get_active() ) nValue = 1; - else if( m_pBtnNormalsSphere->IsChecked() ) + else if( m_xBtnNormalsSphere->get_active() ) nValue = 2; if( nValue <= 2 ) @@ -1755,7 +1758,7 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) rAttrs.InvalidateItem(SDRATTR_3DOBJ_NORMALS_KIND); // Normal inverted - eState = m_pBtnNormalsInvert->GetState(); + eState = m_xBtnNormalsInvert->get_state(); if( eState != TRISTATE_INDET ) { bool bValue = TRISTATE_TRUE == eState; @@ -1765,7 +1768,7 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) rAttrs.InvalidateItem(SDRATTR_3DOBJ_NORMALS_INVERT); // 2-sided lighting - eState = m_pBtnTwoSidedLighting->GetState(); + eState = m_xBtnTwoSidedLighting->get_state(); if( eState != TRISTATE_INDET ) { bool bValue = TRISTATE_TRUE == eState; @@ -1776,16 +1779,16 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) // Representation // Shade mode - if( m_pLbShademode->GetSelectedEntryCount() ) + if( m_xLbShademode->get_active() ) { - nValue = m_pLbShademode->GetSelectedEntryPos(); + nValue = m_xLbShademode->get_active(); rAttrs.Put(Svx3DShadeModeItem(nValue)); } else rAttrs.InvalidateItem(SDRATTR_3DSCENE_SHADE_MODE); // 3D-Shadow - eState = m_pBtnShadow3d->GetState(); + eState = m_xBtnShadow3d->get_state(); if( eState != TRISTATE_INDET ) { bool bValue = TRISTATE_TRUE == eState; @@ -1799,27 +1802,27 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) } // Slant (Shadow) - if( !m_pMtrSlant->IsEmptyFieldValue() ) + if( !m_xMtrSlant->get_text().isEmpty() ) { - sal_uInt16 nValue2 = static_cast<sal_uInt16>(m_pMtrSlant->GetValue()); + sal_uInt16 nValue2 = static_cast<sal_uInt16>(m_xMtrSlant->get_value(FieldUnit::DEGREE)); rAttrs.Put(makeSvx3DShadowSlantItem(nValue2)); } else rAttrs.InvalidateItem(SDRATTR_3DSCENE_SHADOW_SLANT); // Distance - if( !m_pMtrDistance->IsEmptyFieldValue() ) + if( !m_xMtrDistance->get_text().isEmpty() ) { - sal_uInt32 nValue2 = GetCoreValue(*m_pMtrDistance, ePoolUnit); + sal_uInt32 nValue2 = GetCoreValue(*m_xMtrDistance, ePoolUnit); rAttrs.Put(makeSvx3DDistanceItem(nValue2)); } else rAttrs.InvalidateItem(SDRATTR_3DSCENE_DISTANCE); // Focal length - if( !m_pMtrFocalLength->IsEmptyFieldValue() ) + if( !m_xMtrFocalLength->get_text().isEmpty() ) { - sal_uInt32 nValue2 = GetCoreValue(*m_pMtrFocalLength, ePoolUnit); + sal_uInt32 nValue2 = GetCoreValue(*m_xMtrFocalLength, ePoolUnit); rAttrs.Put(makeSvx3DFocalLengthItem(nValue2)); } else @@ -1827,21 +1830,21 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) // Lighting Color aColor; - const SfxItemSet aLightItemSet(m_pCtlLightPreview->GetSvx3DLightControl().Get3DAttributes()); + const SfxItemSet aLightItemSet(m_xCtlLightPreview->GetSvx3DLightControl().Get3DAttributes()); // Light 1 color - if (!m_pLbLight1->IsNoSelection()) + if (!m_xLbLight1->IsNoSelection()) { - aColor = m_pLbLight1->GetSelectEntryColor(); + aColor = m_xLbLight1->GetSelectEntryColor(); rAttrs.Put(makeSvx3DLightcolor1Item(aColor)); } else rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTCOLOR_1); // Light 1 (on/off) - eState = m_pBtnLight1->GetState(); + eState = m_xBtnLight1->get_state(); if( eState != TRISTATE_INDET ) { - bool bValue = GetUILightState(*m_pBtnLight1); + bool bValue = m_xBtnLight1->isLightOn(); rAttrs.Put(makeSvx3DLightOnOff1Item(bValue)); // Light 1 (direction) @@ -1855,18 +1858,18 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) // Light 2 color - if (!m_pLbLight2->IsNoSelection()) + if (!m_xLbLight2->IsNoSelection()) { - aColor = m_pLbLight2->GetSelectEntryColor(); + aColor = m_xLbLight2->GetSelectEntryColor(); rAttrs.Put(makeSvx3DLightcolor2Item(aColor)); } else rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTCOLOR_2); // Light 2 (on/off) - eState = m_pBtnLight2->GetState(); + eState = m_xBtnLight2->get_state(); if( eState != TRISTATE_INDET ) { - bool bValue = GetUILightState(*m_pBtnLight2); + bool bValue = m_xBtnLight2->isLightOn(); rAttrs.Put(makeSvx3DLightOnOff2Item(bValue)); // Light 2 (direction) @@ -1879,18 +1882,18 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTON_2); // Light 3 color - if (!m_pLbLight3->IsNoSelection()) + if (!m_xLbLight3->IsNoSelection()) { - aColor = m_pLbLight3->GetSelectEntryColor(); + aColor = m_xLbLight3->GetSelectEntryColor(); rAttrs.Put(makeSvx3DLightcolor3Item(aColor)); } else rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTCOLOR_3); // Light 3 (on/off) - eState = m_pBtnLight3->GetState(); + eState = m_xBtnLight3->get_state(); if( eState != TRISTATE_INDET ) { - bool bValue = GetUILightState(*m_pBtnLight3); + bool bValue = m_xBtnLight3->isLightOn(); rAttrs.Put(makeSvx3DLightOnOff3Item(bValue)); // Light 3 (direction) @@ -1903,18 +1906,18 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTON_3); // Light 4 color - if (!m_pLbLight4->IsNoSelection()) + if (!m_xLbLight4->IsNoSelection()) { - aColor = m_pLbLight4->GetSelectEntryColor(); + aColor = m_xLbLight4->GetSelectEntryColor(); rAttrs.Put(makeSvx3DLightcolor4Item(aColor)); } else rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTCOLOR_4); // Light 4 (on/off) - eState = m_pBtnLight4->GetState(); + eState = m_xBtnLight4->get_state(); if( eState != TRISTATE_INDET ) { - bool bValue = GetUILightState(*m_pBtnLight4); + bool bValue = m_xBtnLight4->isLightOn(); rAttrs.Put(makeSvx3DLightOnOff4Item(bValue)); // Light 4 (direction) @@ -1927,18 +1930,18 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTON_4); // Light 5 color - if (!m_pLbLight5->IsNoSelection()) + if (!m_xLbLight5->IsNoSelection()) { - aColor = m_pLbLight5->GetSelectEntryColor(); + aColor = m_xLbLight5->GetSelectEntryColor(); rAttrs.Put(makeSvx3DLightcolor5Item(aColor)); } else rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTCOLOR_5); // Light 5 (on/off) - eState = m_pBtnLight5->GetState(); + eState = m_xBtnLight5->get_state(); if( eState != TRISTATE_INDET ) { - bool bValue = GetUILightState(*m_pBtnLight5); + bool bValue = m_xBtnLight5->isLightOn(); rAttrs.Put(makeSvx3DLightOnOff5Item(bValue)); // Light 5 (direction) @@ -1951,18 +1954,18 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTON_5); // Light 6 color - if (!m_pLbLight6->IsNoSelection()) + if (!m_xLbLight6->IsNoSelection()) { - aColor = m_pLbLight6->GetSelectEntryColor(); + aColor = m_xLbLight6->GetSelectEntryColor(); rAttrs.Put(makeSvx3DLightcolor6Item(aColor)); } else rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTCOLOR_6); // Light 6 (on/off) - eState = m_pBtnLight6->GetState(); + eState = m_xBtnLight6->get_state(); if( eState != TRISTATE_INDET ) { - bool bValue = GetUILightState(*m_pBtnLight6); + bool bValue = m_xBtnLight6->isLightOn(); rAttrs.Put(makeSvx3DLightOnOff6Item(bValue)); // Light 6 (direction) @@ -1975,18 +1978,18 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTON_6); // Light 7 color - if (!m_pLbLight7->IsNoSelection()) + if (!m_xLbLight7->IsNoSelection()) { - aColor = m_pLbLight7->GetSelectEntryColor(); + aColor = m_xLbLight7->GetSelectEntryColor(); rAttrs.Put(makeSvx3DLightcolor7Item(aColor)); } else rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTCOLOR_7); // Light 7 (on/off) - eState = m_pBtnLight7->GetState(); + eState = m_xBtnLight7->get_state(); if( eState != TRISTATE_INDET ) { - bool bValue = GetUILightState(*m_pBtnLight7); + bool bValue = m_xBtnLight7->isLightOn(); rAttrs.Put(makeSvx3DLightOnOff7Item(bValue)); // Light 7 (direction) @@ -1999,18 +2002,18 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTON_7); // Light 8 color - if (!m_pLbLight8->IsNoSelection()) + if (!m_xLbLight8->IsNoSelection()) { - aColor = m_pLbLight8->GetSelectEntryColor(); + aColor = m_xLbLight8->GetSelectEntryColor(); rAttrs.Put(makeSvx3DLightcolor8Item(aColor)); } else rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTCOLOR_8); // Light 8 (on/off) - eState = m_pBtnLight8->GetState(); + eState = m_xBtnLight8->get_state(); if( eState != TRISTATE_INDET ) { - bool bValue = GetUILightState(*m_pBtnLight8); + bool bValue = m_xBtnLight8->isLightOn(); rAttrs.Put(makeSvx3DLightOnOff8Item(bValue)); // Light 8 (direction) @@ -2023,9 +2026,9 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) rAttrs.InvalidateItem(SDRATTR_3DSCENE_LIGHTON_8); // Ambient light - if (!m_pLbAmbientlight->IsNoSelection()) + if (!m_xLbAmbientlight->IsNoSelection()) { - aColor = m_pLbAmbientlight->GetSelectEntryColor(); + aColor = m_xLbAmbientlight->GetSelectEntryColor(); rAttrs.Put(makeSvx3DAmbientcolorItem(aColor)); } else @@ -2034,9 +2037,9 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) // Textures // Art nValue = 99; - if( m_pBtnTexLuminance->IsChecked() ) + if( m_xBtnTexLuminance->get_active() ) nValue = 1; - else if( m_pBtnTexColor->IsChecked() ) + else if( m_xBtnTexColor->get_active() ) nValue = 3; if( nValue == 1 || nValue == 3 ) @@ -2047,9 +2050,9 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) // Mode nValue = 99; - if( m_pBtnTexReplace->IsChecked() ) + if( m_xBtnTexReplace->get_active() ) nValue = 1; - else if( m_pBtnTexModulate->IsChecked() ) + else if( m_xBtnTexModulate->get_active() ) nValue = 2; if( nValue == 1 || nValue == 2 ) @@ -2059,11 +2062,11 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) // X projection nValue = 99; - if( m_pBtnTexObjectX->IsChecked() ) + if( m_xBtnTexObjectX->get_active() ) nValue = 0; - else if( m_pBtnTexParallelX->IsChecked() ) + else if( m_xBtnTexParallelX->get_active() ) nValue = 1; - else if( m_pBtnTexCircleX->IsChecked() ) + else if( m_xBtnTexCircleX->get_active() ) nValue = 2; if( nValue <= 2 ) @@ -2073,11 +2076,11 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) // Y projection nValue = 99; - if( m_pBtnTexObjectY->IsChecked() ) + if( m_xBtnTexObjectY->get_active() ) nValue = 0; - else if( m_pBtnTexParallelY->IsChecked() ) + else if( m_xBtnTexParallelY->get_active() ) nValue = 1; - else if( m_pBtnTexCircleY->IsChecked() ) + else if( m_xBtnTexCircleY->get_active() ) nValue = 2; if( nValue <= 2 ) @@ -2087,7 +2090,7 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) // Filter - eState = m_pBtnTexFilter->GetState(); + eState = m_xBtnTexFilter->get_state(); if( eState != TRISTATE_INDET ) { bool bValue = TRISTATE_TRUE == eState; @@ -2099,9 +2102,9 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) // Material // Object color - if (!m_pLbMatColor->IsNoSelection()) + if (!m_xLbMatColor->IsNoSelection()) { - aColor = m_pLbMatColor->GetSelectEntryColor(); + aColor = m_xLbMatColor->GetSelectEntryColor(); rAttrs.Put( XFillColorItem( "", aColor) ); } else @@ -2110,27 +2113,27 @@ void Svx3DWin::GetAttr( SfxItemSet& rAttrs ) } // luminous color - if (!m_pLbMatEmission->IsNoSelection()) + if (!m_xLbMatEmission->IsNoSelection()) { - aColor = m_pLbMatEmission->GetSelectEntryColor(); + aColor = m_xLbMatEmission->GetSelectEntryColor(); rAttrs.Put(makeSvx3DMaterialEmissionItem(aColor)); } else rAttrs.InvalidateItem(SDRATTR_3DOBJ_MAT_EMISSION); // Specular - if (!m_pLbMatSpecular->IsNoSelection()) + if (!m_xLbMatSpecular->IsNoSelection()) { - aColor = m_pLbMatSpecular->GetSelectEntryColor(); + aColor = m_xLbMatSpecular->GetSelectEntryColor(); rAttrs.Put(makeSvx3DMaterialSpecularItem(aColor)); } else rAttrs.InvalidateItem(SDRATTR_3DOBJ_MAT_SPECULAR); // Specular intensity - if( !m_pMtrMatSpecularIntensity->IsEmptyFieldValue() ) + if( !m_xMtrMatSpecularIntensity->get_text().isEmpty() ) { - sal_uInt16 nValue2 = static_cast<sal_uInt16>(m_pMtrMatSpecularIntensity->GetValue()); + sal_uInt16 nValue2 = static_cast<sal_uInt16>(m_xMtrMatSpecularIntensity->get_value(FieldUnit::PERCENT)); rAttrs.Put(makeSvx3DMaterialSpecularIntensityItem(nValue2)); } else @@ -2148,50 +2151,49 @@ void Svx3DWin::Resize() aWinSize.Width() >= GetMinOutputSizePixel().Width() ) { // Hide - m_pBtnUpdate->Hide(); - m_pBtnAssign->Hide(); + m_xBtnUpdate->hide(); + m_xBtnAssign->hide(); - m_pBtnConvertTo3D->Hide(); - m_pBtnLatheObject->Hide(); - m_pBtnPerspective->Hide(); + m_xBtnConvertTo3D->hide(); + m_xBtnLatheObject->hide(); + m_xBtnPerspective->hide(); - m_pCtlPreview->Hide(); - m_pCtlLightPreview->Hide(); + m_xCtlPreview->Hide(); + m_xLightPreviewGrid->hide(); - m_pFLGeometrie->Hide(); - m_pFLRepresentation->Hide(); - m_pFLLight->Hide(); - m_pFLTexture->Hide(); - m_pFLMaterial->Hide(); + m_xFLGeometrie->hide(); + m_xFLRepresentation->hide(); + m_xFLLight->hide(); + m_xFLTexture->hide(); + m_xFLMaterial->hide(); // Show - m_pBtnUpdate->Show(); - m_pBtnAssign->Show(); + m_xBtnUpdate->show(); + m_xBtnAssign->show(); - m_pBtnConvertTo3D->Show(); - m_pBtnLatheObject->Show(); - m_pBtnPerspective->Show(); + m_xBtnConvertTo3D->show(); + m_xBtnLatheObject->show(); + m_xBtnPerspective->show(); - if( m_pBtnGeo->IsChecked() ) - ClickViewTypeHdl(m_pBtnGeo); - if( m_pBtnRepresentation->IsChecked() ) - ClickViewTypeHdl(m_pBtnRepresentation); - if( m_pBtnLight->IsChecked() ) - ClickViewTypeHdl(m_pBtnLight); - if( m_pBtnTexture->IsChecked() ) - ClickViewTypeHdl(m_pBtnTexture); - if( m_pBtnMaterial->IsChecked() ) - ClickViewTypeHdl(m_pBtnMaterial); + if( m_xBtnGeo->get_active() ) + ClickViewTypeHdl(*m_xBtnGeo); + if( m_xBtnRepresentation->get_active() ) + ClickViewTypeHdl(*m_xBtnRepresentation); + if( m_xBtnLight->get_active() ) + ClickViewTypeHdl(*m_xBtnLight); + if( m_xBtnTexture->get_active() ) + ClickViewTypeHdl(*m_xBtnTexture); + if( m_xBtnMaterial->get_active() ) + ClickViewTypeHdl(*m_xBtnMaterial); } } SfxDockingWindow::Resize(); } -IMPL_LINK_NOARG(Svx3DWin, ClickUpdateHdl, Button*, void) +IMPL_LINK_NOARG(Svx3DWin, ClickUpdateHdl, weld::Button&, void) { - bUpdate = !m_pBtnUpdate->IsChecked(); - m_pBtnUpdate->Check( bUpdate ); + bUpdate = !m_xBtnUpdate->get_active(); if( bUpdate ) { @@ -2209,8 +2211,7 @@ IMPL_LINK_NOARG(Svx3DWin, ClickUpdateHdl, Button*, void) } } - -IMPL_LINK_NOARG(Svx3DWin, ClickAssignHdl, Button*, void) +IMPL_LINK_NOARG(Svx3DWin, ClickAssignHdl, weld::Button&, void) { SfxDispatcher* pDispatcher = LocalGetDispatcher(pBindings); if (pDispatcher != nullptr) @@ -2221,287 +2222,276 @@ IMPL_LINK_NOARG(Svx3DWin, ClickAssignHdl, Button*, void) } } - -IMPL_LINK( Svx3DWin, ClickViewTypeHdl, Button*, pBtn, void ) +IMPL_LINK( Svx3DWin, ClickViewTypeHdl, weld::Button&, rBtn, void ) { + // Since the permanent updating of the preview would be too expensive + bool bUpdatePreview = m_xBtnLight->get_active(); + + m_xBtnGeo->set_active(m_xBtnGeo.get() == &rBtn); + m_xBtnRepresentation->set_active(m_xBtnRepresentation.get() == &rBtn); + m_xBtnLight->set_active(m_xBtnLight.get() == &rBtn); + m_xBtnTexture->set_active(m_xBtnTexture.get() == &rBtn); + m_xBtnMaterial->set_active(m_xBtnMaterial.get() == &rBtn); + + if( m_xBtnGeo->get_active() ) + eViewType = ViewType3D::Geo; + if( m_xBtnRepresentation->get_active() ) + eViewType = ViewType3D::Representation; + if( m_xBtnLight->get_active() ) + eViewType = ViewType3D::Light; + if( m_xBtnTexture->get_active() ) + eViewType = ViewType3D::Texture; + if( m_xBtnMaterial->get_active() ) + eViewType = ViewType3D::Material; - if( pBtn ) + // Geometry + if( eViewType == ViewType3D::Geo ) { - // Since the permanent updating of the preview would be too expensive - bool bUpdatePreview = m_pBtnLight->IsChecked(); - - m_pBtnGeo->Check(m_pBtnGeo == pBtn); - m_pBtnRepresentation->Check(m_pBtnRepresentation == pBtn); - m_pBtnLight->Check(m_pBtnLight == pBtn); - m_pBtnTexture->Check(m_pBtnTexture == pBtn); - m_pBtnMaterial->Check(m_pBtnMaterial == pBtn); - - if( m_pBtnGeo->IsChecked() ) - eViewType = ViewType3D::Geo; - if( m_pBtnRepresentation->IsChecked() ) - eViewType = ViewType3D::Representation; - if( m_pBtnLight->IsChecked() ) - eViewType = ViewType3D::Light; - if( m_pBtnTexture->IsChecked() ) - eViewType = ViewType3D::Texture; - if( m_pBtnMaterial->IsChecked() ) - eViewType = ViewType3D::Material; + m_xFLSegments->show(); + m_xFLGeometrie->show(); + m_xFLNormals->show(); + } + else + { + m_xFLSegments->hide(); + m_xFLGeometrie->hide(); + m_xFLNormals->hide(); + } - // Geometry - if( eViewType == ViewType3D::Geo ) - { - m_pFLSegments->Show(); - m_pFLGeometrie->Show(); - m_pFLNormals->Show(); - } - else - { - m_pFLSegments->Hide(); - m_pFLGeometrie->Hide(); - m_pFLNormals->Hide(); - } + // Representation + if( eViewType == ViewType3D::Representation ) + { + m_xFLShadow->show(); + m_xFLCamera->show(); + m_xFLRepresentation->show(); + } + else + { + m_xFLShadow->hide(); + m_xFLCamera->hide(); + m_xFLRepresentation->hide(); + } - // Representation - if( eViewType == ViewType3D::Representation ) - { - m_pFLShadow->Show(); - m_pFLCamera->Show(); - m_pFLRepresentation->Show(); - } - else - { - m_pFLShadow->Hide(); - m_pFLCamera->Hide(); - m_pFLRepresentation->Hide(); - } + // Lighting + if( eViewType == ViewType3D::Light ) + { + m_xFLLight->show(); - // Lighting - if( eViewType == ViewType3D::Light ) - { - m_pFLLight->Show(); + ColorListBox* pLb = GetCLbByButton(); + if( pLb ) + pLb->show(); - SvxColorListBox* pLb = GetLbByButton(); - if( pLb ) - pLb->Show(); + m_xLightPreviewGrid->show(); + m_xCtlPreview->Hide(); + } + else + { + m_xFLLight->hide(); - m_pCtlLightPreview->Show(); - m_pCtlPreview->Hide(); - } - else + if( !m_xCtlPreview->IsVisible() ) { - m_pFLLight->Hide(); - - if( !m_pCtlPreview->IsVisible() ) - { - m_pCtlPreview->Show(); - m_pCtlLightPreview->Hide(); - } + m_xCtlPreview->Show(); + m_xLightPreviewGrid->hide(); } + } - // Textures - if (eViewType == ViewType3D::Texture) - m_pFLTexture->Show(); - else - m_pFLTexture->Hide(); - - // Material - if( eViewType == ViewType3D::Material ) - { - m_pFLMatSpecular->Show(); - m_pFLMaterial->Show(); - } - else - { - m_pFLMatSpecular->Hide(); - m_pFLMaterial->Hide(); - } - if( bUpdatePreview && !m_pBtnLight->IsChecked() ) - UpdatePreview(); + // Textures + if (eViewType == ViewType3D::Texture) + m_xFLTexture->show(); + else + m_xFLTexture->hide(); + // Material + if( eViewType == ViewType3D::Material ) + { + m_xFLMatSpecular->show(); + m_xFLMaterial->show(); } else { - m_pBtnGeo->Check( eViewType == ViewType3D::Geo ); - m_pBtnRepresentation->Check( eViewType == ViewType3D::Representation ); - m_pBtnLight->Check( eViewType == ViewType3D::Light ); - m_pBtnTexture->Check( eViewType == ViewType3D::Texture ); - m_pBtnMaterial->Check( eViewType == ViewType3D::Material ); - } + m_xFLMatSpecular->hide(); + m_xFLMaterial->hide(); + } + if( bUpdatePreview && !m_xBtnLight->get_active() ) + UpdatePreview(); } - -IMPL_LINK( Svx3DWin, ClickHdl, Button *, pButton, void ) +IMPL_LINK( Svx3DWin, ClickHdl, weld::Button&, rBtn, void ) { - PushButton* pBtn = static_cast<PushButton*>(pButton); - if( pBtn ) + bool bUpdatePreview = false; + sal_uInt16 nSId = 0; + + if( &rBtn == m_xBtnConvertTo3D.get() ) + { + nSId = SID_CONVERT_TO_3D; + } + else if( &rBtn == m_xBtnLatheObject.get() ) + { + nSId = SID_CONVERT_TO_3D_LATHE_FAST; + } + // Geometry + else if( &rBtn == m_xBtnNormalsObj.get() || + &rBtn == m_xBtnNormalsFlat.get() || + &rBtn == m_xBtnNormalsSphere.get() ) { - bool bUpdatePreview = false; - sal_uInt16 nSId = 0; + m_xBtnNormalsObj->set_active( &rBtn == m_xBtnNormalsObj.get() ); + m_xBtnNormalsFlat->set_active( &rBtn == m_xBtnNormalsFlat.get() ); + m_xBtnNormalsSphere->set_active( &rBtn == m_xBtnNormalsSphere.get() ); + bUpdatePreview = true; + } + else if( &rBtn == m_xBtnLight1->get_widget() || + &rBtn == m_xBtnLight2->get_widget() || + &rBtn == m_xBtnLight3->get_widget() || + &rBtn == m_xBtnLight4->get_widget() || + &rBtn == m_xBtnLight5->get_widget() || + &rBtn == m_xBtnLight6->get_widget() || + &rBtn == m_xBtnLight7->get_widget() || + &rBtn == m_xBtnLight8->get_widget() ) + { + // Lighting + LightButton* pToggleBtn = GetLbByButton(&rBtn); - if( pBtn == m_pBtnConvertTo3D ) - { - nSId = SID_CONVERT_TO_3D; - } - else if( pBtn == m_pBtnLatheObject ) - { - nSId = SID_CONVERT_TO_3D_LATHE_FAST; - } - // Geometry - else if( pBtn == m_pBtnNormalsObj || - pBtn == m_pBtnNormalsFlat || - pBtn == m_pBtnNormalsSphere ) + ColorListBox* pLb = GetCLbByButton(pToggleBtn); + pLb->show(); + + bool bIsChecked = pToggleBtn->get_prev_active(); + + if (pToggleBtn != m_xBtnLight1.get() && m_xBtnLight1->get_active()) { - m_pBtnNormalsObj->Check( pBtn == m_pBtnNormalsObj ); - m_pBtnNormalsFlat->Check( pBtn == m_pBtnNormalsFlat ); - m_pBtnNormalsSphere->Check( pBtn == m_pBtnNormalsSphere ); - bUpdatePreview = true; + m_xBtnLight1->set_active( false ); + m_xBtnLight1->set_prev_active(false); + m_xLbLight1->hide(); } - else if( pBtn == m_pBtnLight1 || - pBtn == m_pBtnLight2 || - pBtn == m_pBtnLight3 || - pBtn == m_pBtnLight4 || - pBtn == m_pBtnLight5 || - pBtn == m_pBtnLight6 || - pBtn == m_pBtnLight7 || - pBtn == m_pBtnLight8 ) + if (pToggleBtn != m_xBtnLight2.get() && m_xBtnLight2->get_active()) { - // Lighting - SvxColorListBox* pLb = GetLbByButton( pBtn ); - pLb->Show(); - - if( pBtn->IsChecked() ) - { - SetUILightState( *static_cast<ImageButton*>(pBtn), !GetUILightState( *static_cast<ImageButton*>(pBtn) ) ); - } - else - { - pBtn->Check(); - - if (pBtn != m_pBtnLight1 && m_pBtnLight1->IsChecked()) - { - m_pBtnLight1->Check( false ); - m_pLbLight1->Hide(); - } - if (pBtn != m_pBtnLight2 && m_pBtnLight2->IsChecked()) - { - m_pBtnLight2->Check( false ); - m_pLbLight2->Hide(); - } - if( pBtn != m_pBtnLight3 && m_pBtnLight3->IsChecked() ) - { - m_pBtnLight3->Check( false ); - m_pLbLight3->Hide(); - } - if( pBtn != m_pBtnLight4 && m_pBtnLight4->IsChecked() ) - { - m_pBtnLight4->Check( false ); - m_pLbLight4->Hide(); - } - if( pBtn != m_pBtnLight5 && m_pBtnLight5->IsChecked() ) - { - m_pBtnLight5->Check( false ); - m_pLbLight5->Hide(); - } - if( pBtn != m_pBtnLight6 && m_pBtnLight6->IsChecked() ) - { - m_pBtnLight6->Check( false ); - m_pLbLight6->Hide(); - } - if( pBtn != m_pBtnLight7 && m_pBtnLight7->IsChecked() ) - { - m_pBtnLight7->Check( false ); - m_pLbLight7->Hide(); - } - if( pBtn != m_pBtnLight8 && m_pBtnLight8->IsChecked() ) - { - m_pBtnLight8->Check( false ); - m_pLbLight8->Hide(); - } - } - bool bEnable = GetUILightState( *static_cast<ImageButton*>(pBtn) ); - m_pBtnLightColor->Enable( bEnable ); - pLb->Enable( bEnable ); - - ClickLight(*pBtn); - bUpdatePreview = true; + m_xBtnLight2->set_active( false ); + m_xBtnLight2->set_prev_active(false); + m_xLbLight2->hide(); } - // Textures - else if( pBtn == m_pBtnTexLuminance || - pBtn == m_pBtnTexColor ) + if( pToggleBtn != m_xBtnLight3.get() && m_xBtnLight3->get_active() ) { - m_pBtnTexLuminance->Check( pBtn == m_pBtnTexLuminance ); - m_pBtnTexColor->Check( pBtn == m_pBtnTexColor ); - bUpdatePreview = true; + m_xBtnLight3->set_active( false ); + m_xBtnLight3->set_prev_active(false); + m_xLbLight3->hide(); } - else if( pBtn == m_pBtnTexReplace || - pBtn == m_pBtnTexModulate ) + if( pToggleBtn != m_xBtnLight4.get() && m_xBtnLight4->get_active() ) { - m_pBtnTexReplace->Check( pBtn == m_pBtnTexReplace ); - m_pBtnTexModulate->Check( pBtn == m_pBtnTexModulate ); - bUpdatePreview = true; + m_xBtnLight4->set_active( false ); + m_xBtnLight4->set_prev_active(false); + m_xLbLight4->hide(); } - else if( pBtn == m_pBtnTexParallelX || - pBtn == m_pBtnTexCircleX || - pBtn == m_pBtnTexObjectX ) + if( pToggleBtn != m_xBtnLight5.get() && m_xBtnLight5->get_active() ) { - m_pBtnTexParallelX->Check( pBtn == m_pBtnTexParallelX ); - m_pBtnTexCircleX->Check( pBtn == m_pBtnTexCircleX ); - m_pBtnTexObjectX->Check( pBtn == m_pBtnTexObjectX ); - bUpdatePreview = true; + m_xBtnLight5->set_active( false ); + m_xBtnLight5->set_prev_active(false); + m_xLbLight5->hide(); } - else if( pBtn == m_pBtnTexParallelY || - pBtn == m_pBtnTexCircleY || - pBtn == m_pBtnTexObjectY ) + if( pToggleBtn != m_xBtnLight6.get() && m_xBtnLight6->get_active() ) { - m_pBtnTexParallelY->Check( pBtn == m_pBtnTexParallelY ); - m_pBtnTexCircleY->Check( pBtn == m_pBtnTexCircleY ); - m_pBtnTexObjectY->Check( pBtn == m_pBtnTexObjectY ); - bUpdatePreview = true; + m_xBtnLight6->set_active( false ); + m_xBtnLight6->set_prev_active(false); + m_xLbLight6->hide(); } - else if (pBtn == m_pBtnShadow3d) + if( pToggleBtn != m_xBtnLight7.get() && m_xBtnLight7->get_active() ) { - pBtn->Check( !pBtn->IsChecked() ); - m_pFtSlant->Enable( pBtn->IsChecked() ); - m_pMtrSlant->Enable( pBtn->IsChecked() ); - bUpdatePreview = true; + m_xBtnLight7->set_active( false ); + m_xBtnLight7->set_prev_active(false); + m_xLbLight7->hide(); } - // Other (no groups) - else if( pBtn != nullptr ) + if( pToggleBtn != m_xBtnLight8.get() && m_xBtnLight8->get_active() ) { - pBtn->Check( !pBtn->IsChecked() ); - bUpdatePreview = true; + m_xBtnLight8->set_active( false ); + m_xBtnLight8->set_prev_active(false); + m_xLbLight8->hide(); } - if( nSId > 0 ) + //update light button + pToggleBtn->set_active(true); + pToggleBtn->set_prev_active(true); + if (bIsChecked) + pToggleBtn->switchLightOn(!pToggleBtn->isLightOn()); + + bool bEnable = pToggleBtn->isLightOn(); + m_xBtnLightColor->set_sensitive( bEnable ); + pLb->set_sensitive( bEnable ); + + ClickLight(*pToggleBtn); + bUpdatePreview = true; + } + // Textures + else if( &rBtn == m_xBtnTexLuminance.get() || + &rBtn == m_xBtnTexColor.get() ) + { + m_xBtnTexLuminance->set_active( &rBtn == m_xBtnTexLuminance.get() ); + m_xBtnTexColor->set_active( &rBtn == m_xBtnTexColor.get() ); + bUpdatePreview = true; + } + else if( &rBtn == m_xBtnTexReplace.get() || + &rBtn == m_xBtnTexModulate.get() ) + { + m_xBtnTexReplace->set_active( &rBtn == m_xBtnTexReplace.get() ); + m_xBtnTexModulate->set_active( &rBtn == m_xBtnTexModulate.get() ); + bUpdatePreview = true; + } + else if( &rBtn == m_xBtnTexParallelX.get() || + &rBtn == m_xBtnTexCircleX.get() || + &rBtn == m_xBtnTexObjectX.get() ) + { + m_xBtnTexParallelX->set_active( &rBtn == m_xBtnTexParallelX.get() ); + m_xBtnTexCircleX->set_active( &rBtn == m_xBtnTexCircleX.get() ); + m_xBtnTexObjectX->set_active( &rBtn == m_xBtnTexObjectX.get() ); + bUpdatePreview = true; + } + else if( &rBtn == m_xBtnTexParallelY.get() || + &rBtn == m_xBtnTexCircleY.get() || + &rBtn == m_xBtnTexObjectY.get() ) + { + m_xBtnTexParallelY->set_active( &rBtn == m_xBtnTexParallelY.get() ); + m_xBtnTexCircleY->set_active( &rBtn == m_xBtnTexCircleY.get() ); + m_xBtnTexObjectY->set_active( &rBtn == m_xBtnTexObjectY.get() ); + bUpdatePreview = true; + } + else if (&rBtn == m_xBtnShadow3d.get()) + { + m_xFtSlant->set_sensitive( m_xBtnShadow3d->get_active() ); + m_xMtrSlant->set_sensitive( m_xBtnShadow3d->get_active() ); + bUpdatePreview = true; + } + // Other (no groups) + else + { + bUpdatePreview = true; + } + + if( nSId > 0 ) + { + SfxDispatcher* pDispatcher = LocalGetDispatcher(pBindings); + if (pDispatcher != nullptr) { - SfxDispatcher* pDispatcher = LocalGetDispatcher(pBindings); - if (pDispatcher != nullptr) - { - SfxBoolItem aItem( nSId, true ); - pDispatcher->ExecuteList(nSId, - SfxCallMode::ASYNCHRON | SfxCallMode::RECORD, { &aItem }); - } + SfxBoolItem aItem( nSId, true ); + pDispatcher->ExecuteList(nSId, + SfxCallMode::ASYNCHRON | SfxCallMode::RECORD, { &aItem }); } - else if( bUpdatePreview ) - UpdatePreview(); } + else if( bUpdatePreview ) + UpdatePreview(); } -IMPL_LINK( Svx3DWin, ClickColorHdl, Button *, pBtn, void) +IMPL_LINK( Svx3DWin, ClickColorHdl, weld::Button&, rBtn, void) { SvColorDialog aColorDlg; - SvxColorListBox* pLb; - - if( pBtn == m_pBtnLightColor ) - pLb = GetLbByButton(); - else if( pBtn == m_pBtnAmbientColor ) - pLb = m_pLbAmbientlight; - else if( pBtn == m_pBtnMatColor ) - pLb = m_pLbMatColor; - else if( pBtn == m_pBtnEmissionColor ) - pLb = m_pLbMatEmission; - else // if( pBtn == m_pBtnSpecularColor ) - pLb = m_pLbMatSpecular; + ColorListBox* pLb; + + if( &rBtn == m_xBtnLightColor.get() ) + pLb = GetCLbByButton(); + else if( &rBtn == m_xBtnAmbientColor.get() ) + pLb = m_xLbAmbientlight.get(); + else if( &rBtn == m_xBtnMatColor.get() ) + pLb = m_xLbMatColor.get(); + else if( &rBtn == m_xBtnEmissionColor.get() ) + pLb = m_xLbMatEmission.get(); + else // if( &rBtn == m_xBtnSpecularColor.get() ) + pLb = m_xLbMatSpecular.get(); Color aColor = pLb->GetSelectEntryColor(); @@ -2514,19 +2504,19 @@ IMPL_LINK( Svx3DWin, ClickColorHdl, Button *, pBtn, void) } } -IMPL_LINK( Svx3DWin, SelectHdl, ListBox&, rListBox, void ) +IMPL_LINK( Svx3DWin, SelectHdl, weld::ComboBox&, rListBox, void ) { bool bUpdatePreview = false; // Material - if (&rListBox == m_pLbMatFavorites) + if (&rListBox == m_xLbMatFavorites.get()) { Color aColObj( COL_WHITE ); Color aColEmis( COL_BLACK ); Color aColSpec( COL_WHITE ); sal_uInt16 nSpecIntens = 20; - switch( m_pLbMatFavorites->GetSelectedEntryPos() ) + switch( m_xLbMatFavorites->get_active() ) { case 1: // Metall { @@ -2573,44 +2563,44 @@ IMPL_LINK( Svx3DWin, SelectHdl, ListBox&, rListBox, void ) } break; } - LBSelectColor( m_pLbMatColor, aColObj ); - LBSelectColor( m_pLbMatEmission, aColEmis ); - LBSelectColor( m_pLbMatSpecular, aColSpec ); - m_pMtrMatSpecularIntensity->SetValue( nSpecIntens ); + LBSelectColor( m_xLbMatColor.get(), aColObj ); + LBSelectColor( m_xLbMatEmission.get(), aColEmis ); + LBSelectColor( m_xLbMatSpecular.get(), aColSpec ); + m_xMtrMatSpecularIntensity->set_value(nSpecIntens, FieldUnit::PERCENT); bUpdatePreview = true; } - else if (&rListBox == m_pLbShademode) + else if (&rListBox == m_xLbShademode.get()) bUpdatePreview = true; if( bUpdatePreview ) UpdatePreview(); } -IMPL_LINK( Svx3DWin, SelectColorHdl, SvxColorListBox&, rListBox, void ) +IMPL_LINK( Svx3DWin, SelectColorHdl, ColorListBox&, rListBox, void ) { bool bUpdatePreview = false; - if( &rListBox == m_pLbMatColor || - &rListBox == m_pLbMatEmission || - &rListBox == m_pLbMatSpecular ) + if( &rListBox == m_xLbMatColor.get() || + &rListBox == m_xLbMatEmission.get() || + &rListBox == m_xLbMatSpecular.get() ) { - m_pLbMatFavorites->SelectEntryPos( 0 ); + m_xLbMatFavorites->set_active( 0 ); bUpdatePreview = true; } // Lighting - else if( &rListBox == m_pLbAmbientlight ) + else if( &rListBox == m_xLbAmbientlight.get() ) { bUpdatePreview = true; } - else if( &rListBox == m_pLbLight1 || - &rListBox == m_pLbLight2 || - &rListBox == m_pLbLight3 || - &rListBox == m_pLbLight4 || - &rListBox == m_pLbLight5 || - &rListBox == m_pLbLight6 || - &rListBox == m_pLbLight7 || - &rListBox == m_pLbLight8 ) + else if( &rListBox == m_xLbLight1.get() || + &rListBox == m_xLbLight2.get() || + &rListBox == m_xLbLight3.get() || + &rListBox == m_xLbLight4.get() || + &rListBox == m_xLbLight5.get() || + &rListBox == m_xLbLight6.get() || + &rListBox == m_xLbLight7.get() || + &rListBox == m_xLbLight8.get() ) { bUpdatePreview = true; } @@ -2619,41 +2609,23 @@ IMPL_LINK( Svx3DWin, SelectColorHdl, SvxColorListBox&, rListBox, void ) UpdatePreview(); } - -IMPL_LINK( Svx3DWin, ModifyHdl, Edit&, rField, void ) +IMPL_LINK_NOARG( Svx3DWin, ModifyMetricHdl, weld::MetricSpinButton&, void ) { - bool bUpdatePreview = false; - - // Material - if( &rField == m_pMtrMatSpecularIntensity ) - { - bUpdatePreview = true; - } - else if (&rField == m_pNumHorizontal) - { - bUpdatePreview = true; - } - else if (&rField == m_pNumVertical) - { - bUpdatePreview = true; - } - else if (&rField == m_pMtrSlant) - { - bUpdatePreview = true; - } - - if( bUpdatePreview ) - UpdatePreview(); + UpdatePreview(); } +IMPL_LINK_NOARG( Svx3DWin, ModifySpinHdl, weld::SpinButton&, void ) +{ + UpdatePreview(); +} -void Svx3DWin::ClickLight(PushButton& rBtn) +void Svx3DWin::ClickLight(const LightButton& rBtn) { sal_uInt16 nLightSource = GetLightSource( &rBtn ); - SvxColorListBox* pLb = GetLbByButton( &rBtn ); + ColorListBox* pLb = GetCLbByButton( &rBtn ); Color aColor( pLb->GetSelectEntryColor() ); - SfxItemSet aLightItemSet(m_pCtlLightPreview->GetSvx3DLightControl().Get3DAttributes()); - const bool bOnOff(GetUILightState( static_cast<const ImageButton&>(rBtn) )); + SfxItemSet aLightItemSet(m_xCtlLightPreview->GetSvx3DLightControl().Get3DAttributes()); + const bool bOnOff(rBtn.isLightOn()); switch(nLightSource) { @@ -2668,76 +2640,75 @@ void Svx3DWin::ClickLight(PushButton& rBtn) case 7: aLightItemSet.Put(makeSvx3DLightcolor8Item(aColor)); aLightItemSet.Put(makeSvx3DLightOnOff8Item(bOnOff)); break; } - m_pCtlLightPreview->GetSvx3DLightControl().Set3DAttributes(aLightItemSet); - m_pCtlLightPreview->GetSvx3DLightControl().SelectLight(nLightSource); - m_pCtlLightPreview->CheckSelection(); + m_xCtlLightPreview->GetSvx3DLightControl().Set3DAttributes(aLightItemSet); + m_xCtlLightPreview->GetSvx3DLightControl().SelectLight(nLightSource); + m_xCtlLightPreview->CheckSelection(); } - -IMPL_LINK_NOARG(Svx3DWin, ChangeSelectionCallbackHdl, SvxLightCtl3D*, void) +IMPL_LINK_NOARG(Svx3DWin, ChangeSelectionCallbackHdl, LightCtl3D*, void) { - const sal_uInt32 nLight(m_pCtlLightPreview->GetSvx3DLightControl().GetSelectedLight()); - PushButton* pBtn = nullptr; + const sal_uInt32 nLight(m_xCtlLightPreview->GetSvx3DLightControl().GetSelectedLight()); + weld::Button* pBtn = nullptr; switch( nLight ) { - case 0: pBtn = m_pBtnLight1; break; - case 1: pBtn = m_pBtnLight2; break; - case 2: pBtn = m_pBtnLight3; break; - case 3: pBtn = m_pBtnLight4; break; - case 4: pBtn = m_pBtnLight5; break; - case 5: pBtn = m_pBtnLight6; break; - case 6: pBtn = m_pBtnLight7; break; - case 7: pBtn = m_pBtnLight8; break; + case 0: pBtn = m_xBtnLight1->get_widget(); break; + case 1: pBtn = m_xBtnLight2->get_widget(); break; + case 2: pBtn = m_xBtnLight3->get_widget(); break; + case 3: pBtn = m_xBtnLight4->get_widget(); break; + case 4: pBtn = m_xBtnLight5->get_widget(); break; + case 5: pBtn = m_xBtnLight6->get_widget(); break; + case 6: pBtn = m_xBtnLight7->get_widget(); break; + case 7: pBtn = m_xBtnLight8->get_widget(); break; default: break; } - if( pBtn ) - ClickHdl( pBtn ); + if (pBtn) + ClickHdl(*pBtn); else { // Status: No lamp selected - if( m_pBtnLight1->IsChecked() ) + if( m_xBtnLight1->get_active() ) { - m_pBtnLight1->Check( false ); - m_pLbLight1->Enable( false ); + m_xBtnLight1->set_active( false ); + m_xLbLight1->set_sensitive( false ); } - else if( m_pBtnLight2->IsChecked() ) + else if( m_xBtnLight2->get_active() ) { - m_pBtnLight2->Check( false ); - m_pLbLight2->Enable( false ); + m_xBtnLight2->set_active( false ); + m_xLbLight2->set_sensitive( false ); } - else if( m_pBtnLight3->IsChecked() ) + else if( m_xBtnLight3->get_active() ) { - m_pBtnLight3->Check( false ); - m_pLbLight3->Enable( false ); + m_xBtnLight3->set_active( false ); + m_xLbLight3->set_sensitive( false ); } - else if( m_pBtnLight4->IsChecked() ) + else if( m_xBtnLight4->get_active() ) { - m_pBtnLight4->Check( false ); - m_pLbLight4->Enable( false ); + m_xBtnLight4->set_active( false ); + m_xLbLight4->set_sensitive( false ); } - else if( m_pBtnLight5->IsChecked() ) + else if( m_xBtnLight5->get_active() ) { - m_pBtnLight5->Check( false ); - m_pLbLight5->Enable( false ); + m_xBtnLight5->set_active( false ); + m_xLbLight5->set_sensitive( false ); } - else if( m_pBtnLight6->IsChecked() ) + else if( m_xBtnLight6->get_active() ) { - m_pBtnLight6->Check( false ); - m_pLbLight6->Enable( false ); + m_xBtnLight6->set_active( false ); + m_xLbLight6->set_sensitive( false ); } - else if( m_pBtnLight7->IsChecked() ) + else if( m_xBtnLight7->get_active() ) { - m_pBtnLight7->Check( false ); - m_pLbLight7->Enable( false ); + m_xBtnLight7->set_active( false ); + m_xLbLight7->set_sensitive( false ); } - else if( m_pBtnLight8->IsChecked() ) + else if( m_xBtnLight8->get_active() ) { - m_pBtnLight8->Check( false ); - m_pLbLight8->Enable( false ); + m_xBtnLight8->set_active( false ); + m_xLbLight8->set_sensitive( false ); } - m_pBtnLightColor->Enable( false ); + m_xBtnLightColor->set_sensitive( false ); } } @@ -2758,7 +2729,7 @@ namespace } // Method to ensure that the LB is also associated with a color -void Svx3DWin::LBSelectColor( SvxColorListBox* pLb, const Color& rColor ) +void Svx3DWin::LBSelectColor( ColorListBox* pLb, const Color& rColor ) { pLb->SetNoSelection(); pLb->SelectEntry(std::make_pair(rColor, lcl_makeColorName(rColor))); @@ -2776,8 +2747,8 @@ void Svx3DWin::UpdatePreview() // Get Attributes and set the preview GetAttr( aSet ); - m_pCtlPreview->Set3DAttributes( aSet ); - m_pCtlLightPreview->GetSvx3DLightControl().Set3DAttributes( aSet ); + m_xCtlPreview->Set3DAttributes( aSet ); + m_xCtlLightPreview->GetSvx3DLightControl().Set3DAttributes( aSet ); } @@ -2792,114 +2763,114 @@ void Svx3DWin::InitColorLB() // First... Color aColWhite( COL_WHITE ); Color aColBlack( COL_BLACK ); - m_pLbLight1->SelectEntry( aColWhite ); - m_pLbLight2->SelectEntry( aColWhite ); - m_pLbLight3->SelectEntry( aColWhite ); - m_pLbLight4->SelectEntry( aColWhite ); - m_pLbLight5->SelectEntry( aColWhite ); - m_pLbLight6->SelectEntry( aColWhite ); - m_pLbLight7->SelectEntry( aColWhite ); - m_pLbLight8->SelectEntry( aColWhite ); - m_pLbAmbientlight->SelectEntry( aColBlack ); - m_pLbMatColor->SelectEntry( aColWhite ); - m_pLbMatEmission->SelectEntry( aColBlack ); - m_pLbMatSpecular->SelectEntry( aColWhite ); + m_xLbLight1->SelectEntry( aColWhite ); + m_xLbLight2->SelectEntry( aColWhite ); + m_xLbLight3->SelectEntry( aColWhite ); + m_xLbLight4->SelectEntry( aColWhite ); + m_xLbLight5->SelectEntry( aColWhite ); + m_xLbLight6->SelectEntry( aColWhite ); + m_xLbLight7->SelectEntry( aColWhite ); + m_xLbLight8->SelectEntry( aColWhite ); + m_xLbAmbientlight->SelectEntry( aColBlack ); + m_xLbMatColor->SelectEntry( aColWhite ); + m_xLbMatEmission->SelectEntry( aColBlack ); + m_xLbMatSpecular->SelectEntry( aColWhite ); } - -sal_uInt16 Svx3DWin::GetLightSource( const PushButton* pBtn ) +sal_uInt16 Svx3DWin::GetLightSource( const LightButton* pBtn ) { sal_uInt16 nLight = 8; - if( pBtn == nullptr ) - { - if( m_pBtnLight1->IsChecked() ) - nLight = 0; - else if( m_pBtnLight2->IsChecked() ) - nLight = 1; - else if( m_pBtnLight3->IsChecked() ) - nLight = 2; - else if( m_pBtnLight4->IsChecked() ) - nLight = 3; - else if( m_pBtnLight5->IsChecked() ) - nLight = 4; - else if( m_pBtnLight6->IsChecked() ) - nLight = 5; - else if( m_pBtnLight7->IsChecked() ) - nLight = 6; - else if( m_pBtnLight8->IsChecked() ) - nLight = 7; - } - else - { - if (pBtn == m_pBtnLight1) - nLight = 0; - else if (pBtn == m_pBtnLight2) - nLight = 1; - else if( pBtn == m_pBtnLight3 ) - nLight = 2; - else if( pBtn == m_pBtnLight4 ) - nLight = 3; - else if( pBtn == m_pBtnLight5 ) - nLight = 4; - else if( pBtn == m_pBtnLight6 ) - nLight = 5; - else if( pBtn == m_pBtnLight7 ) - nLight = 6; - else if( pBtn == m_pBtnLight8 ) - nLight = 7; - } + if (pBtn == m_xBtnLight1.get()) + nLight = 0; + else if (pBtn == m_xBtnLight2.get()) + nLight = 1; + else if( pBtn == m_xBtnLight3.get() ) + nLight = 2; + else if( pBtn == m_xBtnLight4.get() ) + nLight = 3; + else if( pBtn == m_xBtnLight5.get() ) + nLight = 4; + else if( pBtn == m_xBtnLight6.get() ) + nLight = 5; + else if( pBtn == m_xBtnLight7.get() ) + nLight = 6; + else if( pBtn == m_xBtnLight8.get() ) + nLight = 7; + return nLight; }; - -SvxColorListBox* Svx3DWin::GetLbByButton( const PushButton* pBtn ) +ColorListBox* Svx3DWin::GetCLbByButton( const LightButton* pBtn ) { - SvxColorListBox* pLb = nullptr; + ColorListBox* pLb = nullptr; if( pBtn == nullptr ) { - if( m_pBtnLight1->IsChecked() ) - pLb = m_pLbLight1; - else if( m_pBtnLight2->IsChecked() ) - pLb = m_pLbLight2; - else if( m_pBtnLight3->IsChecked() ) - pLb = m_pLbLight3; - else if( m_pBtnLight4->IsChecked() ) - pLb = m_pLbLight4; - else if( m_pBtnLight5->IsChecked() ) - pLb = m_pLbLight5; - else if( m_pBtnLight6->IsChecked() ) - pLb = m_pLbLight6; - else if( m_pBtnLight7->IsChecked() ) - pLb = m_pLbLight7; - else if( m_pBtnLight8->IsChecked() ) - pLb = m_pLbLight8; - } - else - { - if( pBtn == m_pBtnLight1 ) - pLb = m_pLbLight1; - else if (pBtn == m_pBtnLight2) - pLb = m_pLbLight2; - else if( pBtn == m_pBtnLight3 ) - pLb = m_pLbLight3; - else if( pBtn == m_pBtnLight4 ) - pLb = m_pLbLight4; - else if( pBtn == m_pBtnLight5 ) - pLb = m_pLbLight5; - else if( pBtn == m_pBtnLight6 ) - pLb = m_pLbLight6; - else if( pBtn == m_pBtnLight7 ) - pLb = m_pLbLight7; - else if( pBtn == m_pBtnLight8 ) - pLb = m_pLbLight8; + if( m_xBtnLight1->get_active() ) + pLb = m_xLbLight1.get(); + else if( m_xBtnLight2->get_active() ) + pLb = m_xLbLight2.get(); + else if( m_xBtnLight3->get_active() ) + pLb = m_xLbLight3.get(); + else if( m_xBtnLight4->get_active() ) + pLb = m_xLbLight4.get(); + else if( m_xBtnLight5->get_active() ) + pLb = m_xLbLight5.get(); + else if( m_xBtnLight6->get_active() ) + pLb = m_xLbLight6.get(); + else if( m_xBtnLight7->get_active() ) + pLb = m_xLbLight7.get(); + else if( m_xBtnLight8->get_active() ) + pLb = m_xLbLight8.get(); + } + else + { + if( pBtn == m_xBtnLight1.get() ) + pLb = m_xLbLight1.get(); + else if (pBtn == m_xBtnLight2.get()) + pLb = m_xLbLight2.get(); + else if( pBtn == m_xBtnLight3.get() ) + pLb = m_xLbLight3.get(); + else if( pBtn == m_xBtnLight4.get() ) + pLb = m_xLbLight4.get(); + else if( pBtn == m_xBtnLight5.get() ) + pLb = m_xLbLight5.get(); + else if( pBtn == m_xBtnLight6.get() ) + pLb = m_xLbLight6.get(); + else if( pBtn == m_xBtnLight7.get() ) + pLb = m_xLbLight7.get(); + else if( pBtn == m_xBtnLight8.get() ) + pLb = m_xLbLight8.get(); } return pLb; }; -// Derivation from SfxChildWindow as "containers" for effects +LightButton* Svx3DWin::GetLbByButton( const weld::Button* pBtn ) +{ + LightButton* pLb = nullptr; + + if( pBtn == m_xBtnLight1->get_widget() ) + pLb = m_xBtnLight1.get(); + else if (pBtn == m_xBtnLight2->get_widget() ) + pLb = m_xBtnLight2.get(); + else if( pBtn == m_xBtnLight3->get_widget() ) + pLb = m_xBtnLight3.get(); + else if( pBtn == m_xBtnLight4->get_widget() ) + pLb = m_xBtnLight4.get(); + else if( pBtn == m_xBtnLight5->get_widget() ) + pLb = m_xBtnLight5.get(); + else if( pBtn == m_xBtnLight6->get_widget() ) + pLb = m_xBtnLight6.get(); + else if( pBtn == m_xBtnLight7->get_widget() ) + pLb = m_xBtnLight7.get(); + else if( pBtn == m_xBtnLight8->get_widget() ) + pLb = m_xBtnLight8.get(); + return pLb; +}; + +// Derivation from SfxChildWindow as "containers" for effects Svx3DChildWindow::Svx3DChildWindow( vcl::Window* _pParent, sal_uInt16 nId, SfxBindings* pBindings, @@ -2948,5 +2919,23 @@ void SvxConvertTo3DItem::StateChanged(sal_uInt16 /*_nId*/, SfxItemState eState, } } +LightButton::LightButton(std::unique_ptr<weld::ToggleButton> xButton) + : m_xButton(std::move(xButton)) + , m_bLightOn(false) + , m_bButtonPrevActive(false) +{ + m_xButton->set_from_icon_name(RID_SVXBMP_LAMP_OFF); +} + +void LightButton::switchLightOn(bool bOn) +{ + if (m_bLightOn == bOn) + return; + m_bLightOn = bOn; + if (m_bLightOn) + m_xButton->set_from_icon_name(RID_SVXBMP_LAMP_ON); + else + m_xButton->set_from_icon_name(RID_SVXBMP_LAMP_OFF); +} /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/svx/source/tbxctrls/tbcontrl.cxx b/svx/source/tbxctrls/tbcontrl.cxx index fcd99c90d8fc..cb718f018be6 100644 --- a/svx/source/tbxctrls/tbcontrl.cxx +++ b/svx/source/tbxctrls/tbcontrl.cxx @@ -52,7 +52,6 @@ #include <sfx2/viewfrm.hxx> #include <sfx2/weldutils.hxx> #include <unotools/fontoptions.hxx> -#include <vcl/builderfactory.hxx> #include <vcl/mnemonic.hxx> #include <vcl/svapp.hxx> #include <vcl/settings.hxx> @@ -4160,8 +4159,6 @@ void SvxColorListBox::Selected(const NamedColor& rColor) m_aSelectedLink.Call(*this); } -VCL_BUILDER_FACTORY(SvxColorListBox) - SvxColorListBox::~SvxColorListBox() { disposeOnce(); diff --git a/svx/uiconfig/ui/docking3deffects.ui b/svx/uiconfig/ui/docking3deffects.ui index 32691a53a020..d08c981ac984 100644 --- a/svx/uiconfig/ui/docking3deffects.ui +++ b/svx/uiconfig/ui/docking3deffects.ui @@ -1,13 +1,17 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- Generated with glade 3.18.3 --> +<!-- Generated with glade 3.22.1 --> <interface domain="svx"> <requires lib="gtk+" version="3.18"/> - <requires lib="LibreOffice" version="1.0"/> <object class="GtkAdjustment" id="adjustment1"> <property name="upper">100</property> <property name="step_increment">5</property> <property name="page_increment">10</property> </object> + <object class="GtkAdjustment" id="adjustment10"> + <property name="upper">100</property> + <property name="step_increment">1</property> + <property name="page_increment">10</property> + </object> <object class="GtkAdjustment" id="adjustment2"> <property name="upper">10000</property> <property name="step_increment">5</property> @@ -45,254 +49,402 @@ <property name="step_increment">1</property> <property name="page_increment">10</property> </object> + <object class="GtkAdjustment" id="adjustment9"> + <property name="lower">2</property> + <property name="upper">256</property> + <property name="step_increment">1</property> + <property name="page_increment">10</property> + </object> <object class="GtkImage" id="image1"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/3dgeo.png</property> + <property name="icon_name">svx/res/3dgeo.png</property> </object> <object class="GtkImage" id="image10"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/normsphe.png</property> + <property name="icon_name">svx/res/normsphe.png</property> </object> <object class="GtkImage" id="image11"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/invert3d.png</property> + <property name="icon_name">svx/res/invert3d.png</property> </object> <object class="GtkImage" id="image12"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/lght2sid.png</property> + <property name="icon_name">svx/res/lght2sid.png</property> </object> <object class="GtkImage" id="image13"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/doublesi.png</property> + <property name="icon_name">svx/res/doublesi.png</property> </object> <object class="GtkImage" id="image14"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/convrt3d.png</property> + <property name="icon_name">svx/res/convrt3d.png</property> </object> <object class="GtkImage" id="image15"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/rotate3d.png</property> + <property name="icon_name">svx/res/rotate3d.png</property> </object> <object class="GtkImage" id="image16"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/persp3d.png</property> + <property name="icon_name">svx/res/persp3d.png</property> </object> <object class="GtkImage" id="image17"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/shadow3d.png</property> + <property name="icon_name">svx/res/shadow3d.png</property> </object> <object class="GtkImage" id="image18"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/colordlg.png</property> + <property name="icon_name">svx/res/colordlg.png</property> </object> <object class="GtkImage" id="image19"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/colordlg.png</property> + <property name="icon_name">svx/res/colordlg.png</property> </object> <object class="GtkImage" id="image2"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/3drepres.png</property> + <property name="icon_name">svx/res/3drepres.png</property> </object> <object class="GtkImage" id="image20"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/light.png</property> + <property name="icon_name">svx/res/light.png</property> </object> <object class="GtkImage" id="image21"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/light.png</property> + <property name="icon_name">svx/res/light.png</property> </object> <object class="GtkImage" id="image22"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/light.png</property> + <property name="icon_name">svx/res/light.png</property> </object> <object class="GtkImage" id="image23"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/light.png</property> + <property name="icon_name">svx/res/light.png</property> </object> <object class="GtkImage" id="image24"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/light.png</property> + <property name="icon_name">svx/res/light.png</property> </object> <object class="GtkImage" id="image25"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/light.png</property> + <property name="icon_name">svx/res/light.png</property> </object> <object class="GtkImage" id="image26"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/light.png</property> + <property name="icon_name">svx/res/light.png</property> </object> <object class="GtkImage" id="image27"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/light.png</property> + <property name="icon_name">svx/res/light.png</property> </object> <object class="GtkImage" id="image28"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/luminanc.png</property> + <property name="icon_name">svx/res/luminanc.png</property> </object> <object class="GtkImage" id="image29"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/color.png</property> + <property name="icon_name">svx/res/color.png</property> </object> <object class="GtkImage" id="image3"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/3dlight.png</property> + <property name="icon_name">svx/res/3dlight.png</property> </object> <object class="GtkImage" id="image30"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/replac3d.png</property> + <property name="icon_name">svx/res/replac3d.png</property> </object> <object class="GtkImage" id="image31"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/modula3d.png</property> + <property name="icon_name">svx/res/modula3d.png</property> </object> <object class="GtkImage" id="image32"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/objspc3d.png</property> + <property name="icon_name">svx/res/objspc3d.png</property> </object> <object class="GtkImage" id="image33"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/parallel.png</property> + <property name="icon_name">svx/res/parallel.png</property> </object> <object class="GtkImage" id="image34"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/sphere3d.png</property> + <property name="icon_name">svx/res/sphere3d.png</property> </object> <object class="GtkImage" id="image35"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/objspc3d.png</property> + <property name="icon_name">svx/res/objspc3d.png</property> </object> <object class="GtkImage" id="image36"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/parallel.png</property> + <property name="icon_name">svx/res/parallel.png</property> </object> <object class="GtkImage" id="image37"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/sphere3d.png</property> + <property name="icon_name">svx/res/sphere3d.png</property> </object> <object class="GtkImage" id="image38"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/filter3d.png</property> + <property name="icon_name">svx/res/filter3d.png</property> </object> <object class="GtkImage" id="image39"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/colordlg.png</property> + <property name="icon_name">svx/res/colordlg.png</property> </object> <object class="GtkImage" id="image4"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/3dtextur.png</property> + <property name="icon_name">svx/res/3dtextur.png</property> </object> <object class="GtkImage" id="image40"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/colordlg.png</property> + <property name="icon_name">svx/res/colordlg.png</property> </object> <object class="GtkImage" id="image41"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/colordlg.png</property> + <property name="icon_name">svx/res/colordlg.png</property> </object> <object class="GtkImage" id="image42"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/blend3d.png</property> + <property name="icon_name">svx/res/blend3d.png</property> </object> <object class="GtkImage" id="image5"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/material.png</property> + <property name="icon_name">svx/res/material.png</property> </object> <object class="GtkImage" id="image6"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">res/sc10350.png</property> + <property name="icon_name">res/sc10350.png</property> </object> <object class="GtkImage" id="image7"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/apply.png</property> + <property name="icon_name">svx/res/apply.png</property> </object> <object class="GtkImage" id="image8"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/normobjs.png</property> + <property name="icon_name">svx/res/normobjs.png</property> </object> <object class="GtkImage" id="image9"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="pixbuf">svx/res/normflat.png</property> + <property name="icon_name">svx/res/normflat.png</property> </object> - <object class="GtkWindow" id="Docking3DEffects"> + <object class="GtkGrid" id="Docking3DEffects"> + <property name="visible">True</property> <property name="can_focus">False</property> - <property name="hexpand">True</property> - <property name="vexpand">True</property> - <property name="border_width">6</property> - <property name="title" translatable="yes" context="docking3deffects|Docking3DEffects">3D Effects</property> - <property name="type_hint">dock</property> + <property name="row_spacing">24</property> <child> - <object class="GtkGrid" id="grid1"> + <object class="GtkFrame" id="geoframe"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="row_spacing">24</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> <child> - <object class="GtkFrame" id="geoframe"> + <object class="GtkAlignment" id="alignment1"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="label_xalign">0</property> - <property name="shadow_type">none</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> <child> - <object class="GtkAlignment" id="alignment1"> + <object class="GtkGrid" id="grid2"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="top_padding">6</property> - <property name="left_padding">12</property> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> + <child> + <object class="GtkLabel" id="diagonalft"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|diagonalft">R_ounded edges</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">diagonal</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> <child> - <object class="GtkGrid" id="grid2"> + <object class="GtkLabel" id="scaleddepthft"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|scaleddepthft">_Scaled depth</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">scaleddepth</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="angleft"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|angleft">_Rotation angle</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">angle</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="depthft"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|depthft">_Depth</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">depth</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">3</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="diagonal"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="adjustment">adjustment1</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="scaleddepth"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="text">0</property> + <property name="adjustment">adjustment2</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="angle"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="text">0</property> + <property name="adjustment">adjustment3</property> + <property name="digits">1</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="depth"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="text">0</property> + <property name="adjustment">adjustment4</property> + <property name="digits">2</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">3</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label1">Geometry</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="segmentsframe"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> + <child> + <object class="GtkGrid" id="grid3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="column_spacing">24</property> + <child> + <object class="GtkGrid" id="grid4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> <property name="row_spacing">6</property> <property name="column_spacing">12</property> <child> - <object class="GtkLabel" id="diagonalft"> + <object class="GtkLabel" id="label6"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|diagonalft">R_ounded edges</property> + <property name="label" translatable="yes" context="docking3deffects|label6">_Horizontal</property> <property name="use_underline">True</property> - <property name="mnemonic_widget">diagonal:0%</property> + <property name="mnemonic_widget">hori</property> + <property name="xalign">0</property> </object> <packing> <property name="left_attach">0</property> @@ -300,149 +452,125 @@ </packing> </child> <child> - <object class="GtkLabel" id="scaleddepthft"> + <object class="GtkSpinButton" id="hori"> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|scaleddepthft">_Scaled depth</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">scaleddepth:0%</property> + <property name="can_focus">True</property> + <property name="text">0</property> + <property name="adjustment">adjustment5</property> </object> <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> + <property name="left_attach">1</property> + <property name="top_attach">0</property> </packing> </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkGrid" id="grid5"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> <child> - <object class="GtkLabel" id="angleft"> + <object class="GtkLabel" id="label7"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|angleft">_Rotation angle</property> + <property name="label" translatable="yes" context="docking3deffects|label7">_Vertical</property> <property name="use_underline">True</property> - <property name="mnemonic_widget">angle:0.0°</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">2</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="depthft"> - <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="mnemonic_widget">veri</property> <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|depthft">_Depth</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">depth:0.00cm</property> </object> <packing> <property name="left_attach">0</property> - <property name="top_attach">3</property> - </packing> - </child> - <child> - <object class="GtkSpinButton" id="diagonal:0%"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="adjustment">adjustment1</property> - </object> - <packing> - <property name="left_attach">1</property> <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkSpinButton" id="scaleddepth:0%"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="text" translatable="no">0</property> - <property name="adjustment">adjustment2</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="GtkSpinButton" id="angle:0.0°"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="text" translatable="no">0</property> - <property name="adjustment">adjustment3</property> - <property name="digits">1</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">2</property> - </packing> - </child> - <child> - <object class="GtkSpinButton" id="depth:0.00cm"> + <object class="GtkSpinButton" id="veri"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="text" translatable="no">0</property> - <property name="adjustment">adjustment4</property> - <property name="digits">2</property> + <property name="text">0</property> + <property name="adjustment">adjustment9</property> </object> <packing> <property name="left_attach">1</property> - <property name="top_attach">3</property> + <property name="top_attach">0</property> </packing> </child> </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> </child> </object> </child> - <child type="label"> - <object class="GtkLabel" id="label1"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes" context="docking3deffects|label1">Geometry</property> - <attributes> - <attribute name="weight" value="bold"/> - </attributes> - </object> - </child> </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> - </packing> </child> + <child type="label"> + <object class="GtkLabel" id="label10"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label10">Segments</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkGrid" id="grid6"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_right">12</property> + <property name="margin_bottom">12</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="column_spacing">12</property> <child> - <object class="GtkFrame" id="segmentsframe"> + <object class="GtkGrid" id="grid7"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="label_xalign">0</property> - <property name="shadow_type">none</property> + <property name="row_spacing">12</property> <child> - <object class="GtkAlignment" id="alignment2"> + <object class="GtkFrame" id="normals"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="top_padding">6</property> - <property name="left_padding">12</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> <child> - <object class="GtkGrid" id="grid3"> + <object class="GtkAlignment" id="alignment3"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="hexpand">True</property> - <property name="column_spacing">24</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> <child> - <object class="GtkGrid" id="grid4"> + <object class="GtkGrid" id="grid8"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="hexpand">True</property> + <property name="valign">start</property> <property name="row_spacing">6</property> - <property name="column_spacing">12</property> + <property name="column_spacing">6</property> + <property name="row_homogeneous">True</property> + <property name="column_homogeneous">True</property> <child> - <object class="GtkLabel" id="label6"> + <object class="GtkToggleButton" id="objspecific"> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label6">_Horizontal</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">hori</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|objspecific|tooltip_text">Object-Specific</property> + <property name="valign">center</property> + <property name="image">image8</property> </object> <packing> <property name="left_attach">0</property> @@ -450,384 +578,126 @@ </packing> </child> <child> - <object class="GtkSpinButton" id="hori"> + <object class="GtkToggleButton" id="flat"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="text" translatable="no">0</property> - <property name="adjustment">adjustment5</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|flat|tooltip_text">Flat</property> + <property name="valign">center</property> + <property name="image">image9</property> </object> <packing> <property name="left_attach">1</property> <property name="top_attach">0</property> </packing> </child> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkGrid" id="grid5"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="hexpand">True</property> - <property name="row_spacing">6</property> - <property name="column_spacing">12</property> <child> - <object class="GtkLabel" id="label7"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label7">_Vertical</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">veri</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkSpinButton" id="veri"> + <object class="GtkToggleButton" id="spherical"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="text" translatable="no">0</property> - <property name="adjustment">adjustment5</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|spherical|tooltip_text">Spherical</property> + <property name="valign">center</property> + <property name="image">image10</property> </object> <packing> - <property name="left_attach">1</property> + <property name="left_attach">2</property> <property name="top_attach">0</property> </packing> </child> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">0</property> - </packing> - </child> - </object> - </child> - </object> - </child> - <child type="label"> - <object class="GtkLabel" id="label10"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes" context="docking3deffects|label10">Segments</property> - <attributes> - <attribute name="weight" value="bold"/> - </attributes> - </object> - </child> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">2</property> - </packing> - </child> - <child> - <object class="GtkGrid" id="grid6"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="margin_right">12</property> - <property name="margin_bottom">12</property> - <property name="hexpand">True</property> - <property name="vexpand">True</property> - <property name="column_spacing">12</property> - <child> - <object class="GtkGrid" id="grid7"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="row_spacing">12</property> - <child> - <object class="GtkFrame" id="normals"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label_xalign">0</property> - <property name="shadow_type">none</property> - <child> - <object class="GtkAlignment" id="alignment3"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="top_padding">6</property> - <property name="left_padding">12</property> - <child> - <object class="GtkGrid" id="grid8"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="valign">start</property> - <property name="row_spacing">6</property> - <property name="column_spacing">6</property> - <property name="row_homogeneous">True</property> - <property name="column_homogeneous">True</property> - <child> - <object class="GtkButton" id="objspecific"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|objspecific|tooltip_text">Object-Specific</property> - <property name="valign">center</property> - <property name="image">image8</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkButton" id="flat"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|flat|tooltip_text">Flat</property> - <property name="valign">center</property> - <property name="image">image9</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkButton" id="spherical"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|spherical|tooltip_text">Spherical</property> - <property name="valign">center</property> - <property name="image">image10</property> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkButton" id="invertnormals"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|invertnormals|tooltip_text">Invert Normals</property> - <property name="valign">center</property> - <property name="image">image11</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="GtkButton" id="doublesidedillum"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|doublesidedillum|tooltip_text">Double-Sided Illumination</property> - <property name="valign">center</property> - <property name="image">image12</property> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="GtkButton" id="doublesided"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|doublesided|tooltip_text">Double-Sided</property> - <property name="valign">center</property> - <property name="image">image13</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">2</property> - </packing> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - </object> - </child> - </object> - </child> - <child type="label"> - <object class="GtkLabel" id="label11"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes" context="docking3deffects|label11">Normals</property> - <attributes> - <attribute name="weight" value="bold"/> - </attributes> - </object> - </child> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkAlignment" id="alignment4"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="vexpand">True</property> - <property name="left_padding">12</property> - <child> - <object class="GtkGrid" id="grid10"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="valign">end</property> - <property name="row_spacing">6</property> - <property name="column_spacing">6</property> - <property name="row_homogeneous">True</property> - <property name="column_homogeneous">True</property> <child> - <object class="GtkButton" id="to3d"> + <object class="GtkToggleButton" id="invertnormals"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|to3d|tooltip_text">Convert to 3D</property> - <property name="image">image14</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|invertnormals|tooltip_text">Invert Normals</property> + <property name="valign">center</property> + <property name="image">image11</property> </object> <packing> <property name="left_attach">0</property> - <property name="top_attach">0</property> + <property name="top_attach">1</property> </packing> </child> <child> - <object class="GtkButton" id="tolathe"> + <object class="GtkToggleButton" id="doublesidedillum"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|tolathe|tooltip_text">Convert to Rotation Object</property> - <property name="image">image15</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|doublesidedillum|tooltip_text">Double-Sided Illumination</property> + <property name="valign">center</property> + <property name="image">image12</property> </object> <packing> - <property name="left_attach">1</property> - <property name="top_attach">0</property> + <property name="left_attach">2</property> + <property name="top_attach">1</property> </packing> </child> <child> - <object class="GtkButton" id="perspective"> + <object class="GtkToggleButton" id="doublesided"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|perspective|tooltip_text">Perspective On/Off</property> - <property name="image">image16</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|doublesided|tooltip_text">Double-Sided</property> + <property name="valign">center</property> + <property name="image">image13</property> </object> <packing> - <property name="left_attach">2</property> - <property name="top_attach">0</property> + <property name="left_attach">0</property> + <property name="top_attach">2</property> </packing> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> </child> </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> - </packing> - </child> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkBox" id="box2"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="hexpand">True</property> - <property name="vexpand">True</property> - <property name="orientation">vertical</property> - <child> - <object class="svxlo-Svx3DPreviewControl" id="preview"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="halign">end</property> - <property name="valign">end</property> - <property name="hexpand">True</property> - <property name="vexpand">True</property> - <child internal-child="accessible"> - <object class="AtkObject" id="preview-atkobject"> - <property name="AtkObject::accessible-name" translatable="yes" context="docking3deffects|preview-atkobject">3D Preview</property> - </object> - </child> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> </child> - <child> - <object class="svxlo-SvxLightCtl3D" id="lightpreview"> + <child type="label"> + <object class="GtkLabel" id="label11"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="halign">end</property> - <property name="valign">end</property> - <property name="hexpand">True</property> - <property name="vexpand">True</property> - <child internal-child="accessible"> - <object class="AtkObject" id="lightpreview-atkobject"> - <property name="AtkObject::accessible-name" translatable="yes" context="docking3deffects|lightpreview-atkobject">Color Light Preview</property> - </object> - </child> + <property name="label" translatable="yes" context="docking3deffects|label11">Normals</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> - </packing> </child> </object> <packing> - <property name="left_attach">1</property> + <property name="left_attach">0</property> <property name="top_attach">0</property> </packing> </child> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">10</property> - </packing> - </child> - <child> - <object class="GtkFrame" id="shadingframe"> - <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="label_xalign">0</property> - <property name="shadow_type">none</property> <child> - <object class="GtkAlignment" id="alignment5"> + <object class="GtkAlignment" id="alignment4"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="top_padding">6</property> + <property name="vexpand">True</property> <property name="left_padding">12</property> <child> - <object class="GtkGrid" id="grid11"> + <object class="GtkGrid" id="grid10"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="hexpand">True</property> + <property name="valign">end</property> <property name="row_spacing">6</property> - <property name="column_spacing">12</property> + <property name="column_spacing">6</property> + <property name="row_homogeneous">True</property> + <property name="column_homogeneous">True</property> <child> - <object class="GtkLabel" id="label8"> + <object class="GtkButton" id="to3d"> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label8">_Mode</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">mode</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|to3d|tooltip_text">Convert to 3D</property> + <property name="image">image14</property> </object> <packing> <property name="left_attach">0</property> @@ -835,324 +705,103 @@ </packing> </child> <child> - <object class="GtkComboBoxText" id="mode"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <items> - <item translatable="yes" context="docking3deffects|mode">Flat</item> - <item translatable="yes" context="docking3deffects|mode">Phong</item> - <item translatable="yes" context="docking3deffects|mode">Gouraud</item> - </items> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">0</property> - </packing> - </child> - </object> - </child> - </object> - </child> - <child type="label"> - <object class="GtkLabel" id="label12"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes" context="docking3deffects|label12">Shading</property> - <attributes> - <attribute name="weight" value="bold"/> - </attributes> - </object> - </child> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">3</property> - </packing> - </child> - <child> - <object class="GtkFrame" id="shadowframe"> - <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="label_xalign">0</property> - <property name="shadow_type">none</property> - <child> - <object class="GtkAlignment" id="alignment6"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="top_padding">6</property> - <property name="left_padding">12</property> - <child> - <object class="GtkGrid" id="grid9"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="hexpand">True</property> - <property name="row_spacing">6</property> - <property name="column_spacing">12</property> - <child> - <object class="GtkLabel" id="slantft"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="halign">end</property> - <property name="xalign">1</property> - <property name="label" translatable="yes" context="docking3deffects|slantft">S_urface angle</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">slant:0°</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkSpinButton" id="slant:0°"> + <object class="GtkButton" id="tolathe"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="text" translatable="no">0.0</property> - <property name="adjustment">adjustment6</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|tolathe|tooltip_text">Convert to Rotation Object</property> + <property name="image">image15</property> </object> <packing> - <property name="left_attach">2</property> + <property name="left_attach">1</property> <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkButton" id="shadow"> + <object class="GtkToggleButton" id="perspective"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|shadow|tooltip_text">3D Shadowing On/Off</property> - <property name="image">image17</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|perspective|tooltip_text">Perspective On/Off</property> + <property name="image">image16</property> </object> <packing> - <property name="left_attach">0</property> + <property name="left_attach">2</property> <property name="top_attach">0</property> </packing> </child> </object> </child> </object> - </child> - <child type="label"> - <object class="GtkLabel" id="label13"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes" context="docking3deffects|label13">Shadow</property> - <attributes> - <attribute name="weight" value="bold"/> - </attributes> - </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> </child> </object> <packing> <property name="left_attach">0</property> - <property name="top_attach">4</property> + <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkFrame" id="cameraframe"> + <object class="GtkBox" id="box2"> + <property name="visible">True</property> <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="label_xalign">0</property> - <property name="shadow_type">none</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="orientation">vertical</property> <child> - <object class="GtkAlignment" id="alignment7"> + <object class="GtkDrawingArea" id="preview"> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="top_padding">6</property> - <property name="left_padding">12</property> - <child> - <object class="GtkGrid" id="grid12"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="hexpand">True</property> - <property name="row_spacing">6</property> - <property name="column_spacing">12</property> - <child> - <object class="GtkSpinButton" id="focal:0.00cm"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="text" translatable="no">2</property> - <property name="adjustment">adjustment7</property> - <property name="digits">2</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="GtkSpinButton" id="distance:0.00cm"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="text" translatable="no">2</property> - <property name="adjustment">adjustment7</property> - <property name="digits">2</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label15"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label15">_Focal length</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">focal:0.00cm</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label14"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label14">_Distance</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">distance:0.00cm</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </packing> - </child> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_STRUCTURE_MASK</property> + <property name="halign">end</property> + <property name="valign">end</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <child internal-child="accessible"> + <object class="AtkObject" id="preview-atkobject"> + <property name="AtkObject::accessible-name" translatable="yes" context="docking3deffects|preview-atkobject">3D Preview</property> </object> </child> </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> </child> - <child type="label"> - <object class="GtkLabel" id="label16"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes" context="docking3deffects|label16">Camera</property> - <attributes> - <attribute name="weight" value="bold"/> - </attributes> - </object> - </child> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">5</property> - </packing> - </child> - <child> - <object class="GtkFrame" id="illumframe"> - <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="label_xalign">0</property> - <property name="shadow_type">none</property> <child> - <object class="GtkAlignment" id="alignment8"> + <object class="GtkScrolledWindow" id="lightpreviewgrid"> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="top_padding">6</property> - <property name="left_padding">12</property> + <property name="can_focus">True</property> + <property name="halign">end</property> + <property name="valign">end</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="shadow_type">in</property> <child> - <object class="GtkGrid" id="grid13"> + <object class="GtkViewport"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="row_spacing">6</property> - <property name="column_spacing">12</property> - <child> - <object class="GtkLabel" id="label17"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label17">_Light source</property> - <property name="use_underline">True</property> - <accessibility> - <relation type="label-for" target="light1"/> - <relation type="label-for" target="light2"/> - <relation type="label-for" target="light3"/> - <relation type="label-for" target="light4"/> - <relation type="label-for" target="light5"/> - <relation type="label-for" target="light6"/> - <relation type="label-for" target="light7"/> - <relation type="label-for" target="light8"/> - </accessibility> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - <property name="width">3</property> - </packing> - </child> - <child> - <object class="GtkButton" id="colorbutton1"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|colorbutton1|tooltip_text">Colors Dialog</property> - <property name="valign">start</property> - <property name="image">image19</property> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="svxcorelo-SvxColorListBox" id="ambientcolor"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="valign">center</property> - <property name="hexpand">True</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">2</property> - </packing> - </child> - <child> - <object class="GtkButton" id="colorbutton2"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|colorbutton2|tooltip_text">Colors Dialog</property> - <property name="valign">center</property> - <property name="image">image18</property> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">2</property> - </packing> - </child> <child> - <object class="GtkLabel" id="label18"> + <object class="GtkGrid"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label18">_Ambient light</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">ambientcolor</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">2</property> - </packing> - </child> - <child> - <object class="GtkGrid" id="grid14"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="row_spacing">6</property> - <property name="column_spacing">6</property> <child> - <object class="GtkButton" id="light1"> + <object class="GtkDrawingArea" id="lightpreview"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|light1|tooltip_text">Light Source 1</property> - <property name="image">image20</property> - <accessibility> - <relation type="labelled-by" target="label17"/> - </accessibility> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_STRUCTURE_MASK</property> + <property name="tooltip_text" translatable="yes" context="tp_3D_SceneIllumination|CTL_LIGHT_PREVIEW|tooltip_text">Light Preview</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <child internal-child="accessible"> + <object class="AtkObject" id="lightpreview-atkobject"> + <property name="AtkObject::accessible-name" translatable="yes" context="docking3deffects|lightpreview-atkobject">Color Light Preview</property> + </object> + </child> </object> <packing> <property name="left_attach">0</property> @@ -1160,63 +809,22 @@ </packing> </child> <child> - <object class="GtkButton" id="light2"> + <object class="GtkButton" id="corner"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|light2|tooltip_text">Light Source 2</property> - <property name="image">image21</property> - <accessibility> - <relation type="labelled-by" target="label17"/> - </accessibility> </object> <packing> <property name="left_attach">1</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkButton" id="light3"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|light3|tooltip_text">Light Source 3</property> - <property name="image">image22</property> - <accessibility> - <relation type="labelled-by" target="label17"/> - </accessibility> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkButton" id="light4"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|light4|tooltip_text">Light Source 4</property> - <property name="image">image23</property> - <accessibility> - <relation type="labelled-by" target="label17"/> - </accessibility> - </object> - <packing> - <property name="left_attach">3</property> - <property name="top_attach">0</property> + <property name="top_attach">1</property> </packing> </child> <child> - <object class="GtkButton" id="light5"> + <object class="GtkScale" id="horiscale"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|light5|tooltip_text">Light Source 5</property> - <property name="image">image24</property> - <accessibility> - <relation type="labelled-by" target="label17"/> - </accessibility> + <property name="round_digits">1</property> + <property name="draw_value">False</property> </object> <packing> <property name="left_attach">0</property> @@ -1224,351 +832,475 @@ </packing> </child> <child> - <object class="GtkButton" id="light6"> + <object class="GtkScale" id="vertscale"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|light6|tooltip_text">Light Source 6</property> - <property name="image">image25</property> - <accessibility> - <relation type="labelled-by" target="label17"/> - </accessibility> + <property name="orientation">vertical</property> + <property name="round_digits">1</property> + <property name="draw_value">False</property> </object> <packing> <property name="left_attach">1</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="GtkButton" id="light7"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|light7|tooltip_text">Light Source 7</property> - <property name="image">image26</property> - <accessibility> - <relation type="labelled-by" target="label17"/> - </accessibility> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="GtkButton" id="light8"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|light8|tooltip_text">Light Source 8</property> - <property name="image">image27</property> - <accessibility> - <relation type="labelled-by" target="label17"/> - </accessibility> - </object> - <packing> - <property name="left_attach">3</property> - <property name="top_attach">1</property> - </packing> - </child> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="GtkBox" id="box1"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="orientation">vertical</property> - <child> - <object class="svxcorelo-SvxColorListBox" id="lightcolor1"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="valign">start</property> - <property name="hexpand">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor1|tooltip_text">Light 1 color</property> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> - </child> - <child> - <object class="svxcorelo-SvxColorListBox" id="lightcolor2"> - <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="valign">start</property> - <property name="hexpand">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor1|tooltip_text">Light 2 color</property> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> - </packing> - </child> - <child> - <object class="svxcorelo-SvxColorListBox" id="lightcolor3"> - <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="valign">start</property> - <property name="hexpand">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor1|tooltip_text">Light 3 color</property> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">2</property> - </packing> - </child> - <child> - <object class="svxcorelo-SvxColorListBox" id="lightcolor4"> - <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="valign">start</property> - <property name="hexpand">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor1|tooltip_text">Light 4 color</property> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">3</property> - </packing> - </child> - <child> - <object class="svxcorelo-SvxColorListBox" id="lightcolor5"> - <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="valign">start</property> - <property name="hexpand">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor1|tooltip_text">Light 5 color</property> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">4</property> - </packing> - </child> - <child> - <object class="svxcorelo-SvxColorListBox" id="lightcolor6"> - <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="valign">start</property> - <property name="hexpand">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor1|tooltip_text">Light 6 color</property> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">5</property> - </packing> - </child> - <child> - <object class="svxcorelo-SvxColorListBox" id="lightcolor7"> - <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="valign">start</property> - <property name="hexpand">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor1|tooltip_text">Light 7 color</property> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">6</property> - </packing> - </child> - <child> - <object class="svxcorelo-SvxColorListBox" id="lightcolor8"> - <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="valign">start</property> - <property name="hexpand">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor1|tooltip_text">Light 8 color</property> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">7</property> + <property name="top_attach">0</property> </packing> </child> </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">1</property> - </packing> </child> </object> </child> </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> </child> - <child type="label"> - <object class="GtkLabel" id="label19"> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">10</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="shadingframe"> + <property name="can_focus">False</property> + <property name="no_show_all">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment5"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> + <child> + <object class="GtkGrid" id="grid11"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="label" translatable="yes" context="docking3deffects|label19">Illumination</property> - <attributes> - <attribute name="weight" value="bold"/> - </attributes> + <property name="hexpand">True</property> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> + <child> + <object class="GtkLabel" id="label8"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label8">_Mode</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">mode</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="mode"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <items> + <item translatable="yes" context="docking3deffects|mode">Flat</item> + <item translatable="yes" context="docking3deffects|mode">Phong</item> + <item translatable="yes" context="docking3deffects|mode">Gouraud</item> + </items> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> </object> </child> </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">6</property> - </packing> </child> + <child type="label"> + <object class="GtkLabel" id="label12"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label12">Shading</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">3</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="shadowframe"> + <property name="can_focus">False</property> + <property name="no_show_all">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> <child> - <object class="GtkFrame" id="textureframe"> + <object class="GtkAlignment" id="alignment6"> + <property name="visible">True</property> <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="label_xalign">0</property> - <property name="shadow_type">none</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> <child> - <object class="GtkAlignment" id="alignment9"> + <object class="GtkGrid" id="grid9"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="top_padding">6</property> - <property name="left_padding">12</property> + <property name="hexpand">True</property> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> <child> - <object class="GtkGrid" id="grid15"> + <object class="GtkLabel" id="slantft"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="row_spacing">6</property> - <property name="column_spacing">12</property> - <child> - <object class="GtkLabel" id="label20"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label20">_Type</property> - <property name="use_underline">True</property> - <accessibility> - <relation type="label-for" target="textype"/> - <relation type="label-for" target="texcolor"/> - </accessibility> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </packing> - </child> + <property name="halign">end</property> + <property name="label" translatable="yes" context="docking3deffects|slantft">S_urface angle</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">slant</property> + <property name="xalign">1</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="slant"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="adjustment">adjustment6</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="shadow"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|shadow|tooltip_text">3D Shadowing On/Off</property> + <property name="image">image17</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label13"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label13">Shadow</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">4</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="cameraframe"> + <property name="can_focus">False</property> + <property name="no_show_all">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment7"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> + <child> + <object class="GtkGrid" id="grid12"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="hexpand">True</property> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> + <child> + <object class="GtkSpinButton" id="focal"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="adjustment">adjustment10</property> + <property name="digits">2</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="distance"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="adjustment">adjustment7</property> + <property name="digits">2</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label15"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label15">_Focal length</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">focal</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label14"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label14">_Distance</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">distance</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label16"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label16">Camera</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">5</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="illumframe"> + <property name="can_focus">False</property> + <property name="no_show_all">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment8"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> + <child> + <object class="GtkGrid" id="grid13"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> + <child> + <object class="GtkLabel" id="label17"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label17">_Light source</property> + <property name="use_underline">True</property> + <property name="xalign">0</property> + <accessibility> + <relation type="label-for" target="light1"/> + <relation type="label-for" target="light2"/> + <relation type="label-for" target="light3"/> + <relation type="label-for" target="light4"/> + <relation type="label-for" target="light5"/> + <relation type="label-for" target="light6"/> + <relation type="label-for" target="light7"/> + <relation type="label-for" target="light8"/> + </accessibility> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="colorbutton1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|colorbutton1|tooltip_text">Colors Dialog</property> + <property name="valign">start</property> + <property name="image">image19</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="ambientcolor"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="valign">center</property> + <property name="hexpand">True</property> + <property name="draw_indicator">True</property> + <property name="label" translatable="no"></property> <child> - <object class="GtkLabel" id="label22"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label22">_Mode</property> - <property name="use_underline">True</property> - <accessibility> - <relation type="label-for" target="texreplace"/> - <relation type="label-for" target="texmodulate"/> - <relation type="label-for" target="texblend"/> - </accessibility> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> - </packing> + <placeholder/> </child> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="colorbutton2"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|colorbutton2|tooltip_text">Colors Dialog</property> + <property name="valign">center</property> + <property name="image">image18</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label18"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label18">_Ambient light</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">ambientcolor</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkGrid" id="grid14"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="row_spacing">6</property> + <property name="column_spacing">6</property> <child> - <object class="GtkLabel" id="label23"> + <object class="GtkToggleButton" id="light1"> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label23">_Projection X</property> - <property name="use_underline">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|light1|tooltip_text">Light Source 1</property> + <property name="image">image20</property> <accessibility> - <relation type="label-for" target="texobjx"/> - <relation type="label-for" target="texparallelx"/> - <relation type="label-for" target="texcirclex"/> + <relation type="labelled-by" target="label17"/> </accessibility> </object> <packing> <property name="left_attach">0</property> - <property name="top_attach">2</property> + <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkLabel" id="label24"> + <object class="GtkToggleButton" id="light2"> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label24">P_rojection Y</property> - <property name="use_underline">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|light2|tooltip_text">Light Source 2</property> + <property name="image">image21</property> <accessibility> - <relation type="label-for" target="texobjy"/> - <relation type="label-for" target="texparallely"/> - <relation type="label-for" target="texcircley"/> + <relation type="labelled-by" target="label17"/> </accessibility> </object> <packing> - <property name="left_attach">0</property> - <property name="top_attach">3</property> + <property name="left_attach">1</property> + <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkLabel" id="label25"> + <object class="GtkToggleButton" id="light3"> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label25">_Filtering</property> - <property name="use_underline">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|light3|tooltip_text">Light Source 3</property> + <property name="image">image22</property> <accessibility> - <relation type="label-for" target="texfilter"/> + <relation type="labelled-by" target="label17"/> </accessibility> </object> <packing> - <property name="left_attach">0</property> - <property name="top_attach">4</property> + <property name="left_attach">2</property> + <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkButton" id="textype"> + <object class="GtkToggleButton" id="light4"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|textype|tooltip_text">Black & White</property> - <property name="halign">center</property> - <property name="image">image28</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|light4|tooltip_text">Light Source 4</property> + <property name="image">image23</property> <accessibility> - <relation type="labelled-by" target="label20"/> + <relation type="labelled-by" target="label17"/> </accessibility> </object> <packing> - <property name="left_attach">1</property> + <property name="left_attach">3</property> <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkButton" id="texcolor"> + <object class="GtkToggleButton" id="light5"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|texcolor|tooltip_text">Color</property> - <property name="halign">center</property> - <property name="image">image29</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|light5|tooltip_text">Light Source 5</property> + <property name="image">image24</property> <accessibility> - <relation type="labelled-by" target="label20"/> + <relation type="labelled-by" target="label17"/> </accessibility> </object> <packing> - <property name="left_attach">2</property> - <property name="top_attach">0</property> + <property name="left_attach">0</property> + <property name="top_attach">1</property> </packing> </child> <child> - <object class="GtkButton" id="texreplace"> + <object class="GtkToggleButton" id="light6"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|texreplace|tooltip_text">Only Texture</property> - <property name="halign">center</property> - <property name="image">image30</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|light6|tooltip_text">Light Source 6</property> + <property name="image">image25</property> <accessibility> - <relation type="labelled-by" target="label22"/> + <relation type="labelled-by" target="label17"/> </accessibility> </object> <packing> @@ -1577,15 +1309,14 @@ </packing> </child> <child> - <object class="GtkButton" id="texmodulate"> + <object class="GtkToggleButton" id="light7"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|texmodulate|tooltip_text">Texture and Shading</property> - <property name="halign">center</property> - <property name="image">image31</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|light7|tooltip_text">Light Source 7</property> + <property name="image">image26</property> <accessibility> - <relation type="labelled-by" target="label22"/> + <relation type="labelled-by" target="label17"/> </accessibility> </object> <packing> @@ -1594,16 +1325,14 @@ </packing> </child> <child> - <object class="GtkButton" id="texblend"> + <object class="GtkToggleButton" id="light8"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|texblend|tooltip_text">Texture, Shadow and Color</property> - <property name="halign">start</property> - <property name="hexpand">True</property> - <property name="image">image42</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|light8|tooltip_text">Light Source 8</property> + <property name="image">image27</property> <accessibility> - <relation type="labelled-by" target="label22"/> + <relation type="labelled-by" target="label17"/> </accessibility> </object> <packing> @@ -1611,510 +1340,910 @@ <property name="top_attach">1</property> </packing> </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkBox" id="box1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> <child> - <object class="GtkButton" id="texobjx"> + <object class="GtkMenuButton" id="lightcolor1"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|texobjx|tooltip_text">Object-Specific</property> - <property name="halign">center</property> - <property name="image">image32</property> - <accessibility> - <relation type="labelled-by" target="label23"/> - </accessibility> + <property name="receives_default">False</property> + <property name="hexpand">True</property> + <property name="valign">start</property> + <property name="draw_indicator">True</property> + <property name="label" translatable="no"></property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor1|tooltip_text">Light 1 color</property> + <child> + <placeholder/> + </child> </object> <packing> - <property name="left_attach">1</property> - <property name="top_attach">2</property> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> </packing> </child> <child> - <object class="GtkButton" id="texparallelx"> - <property name="visible">True</property> + <object class="GtkMenuButton" id="lightcolor2"> + <property name="visible">False</property> <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|texparallelx|tooltip_text">Parallel</property> - <property name="halign">center</property> - <property name="image">image33</property> - <accessibility> - <relation type="labelled-by" target="label23"/> - </accessibility> + <property name="receives_default">False</property> + <property name="hexpand">True</property> + <property name="valign">start</property> + <property name="draw_indicator">True</property> + <property name="label" translatable="no"></property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor2|tooltip_text">Light 2 color</property> + <child> + <placeholder/> + </child> </object> <packing> - <property name="left_attach">2</property> - <property name="top_attach">2</property> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> </packing> </child> <child> - <object class="GtkButton" id="texcirclex"> - <property name="visible">True</property> + <object class="GtkMenuButton" id="lightcolor3"> + <property name="visible">False</property> <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|texcirclex|tooltip_text">Circular</property> - <property name="halign">start</property> + <property name="receives_default">False</property> <property name="hexpand">True</property> - <property name="image">image34</property> - <accessibility> - <relation type="labelled-by" target="label23"/> - </accessibility> + <property name="valign">start</property> + <property name="draw_indicator">True</property> + <property name="label" translatable="no"></property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor3|tooltip_text">Light 3 color</property> + <child> + <placeholder/> + </child> </object> <packing> - <property name="left_attach">3</property> - <property name="top_attach">2</property> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> </packing> </child> <child> - <object class="GtkButton" id="texobjy"> - <property name="visible">True</property> + <object class="GtkMenuButton" id="lightcolor4"> + <property name="visible">False</property> <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|texobjy|tooltip_text">Object-Specific</property> - <property name="halign">center</property> - <property name="image">image35</property> - <accessibility> - <relation type="labelled-by" target="label24"/> - </accessibility> + <property name="receives_default">False</property> + <property name="hexpand">True</property> + <property name="valign">start</property> + <property name="draw_indicator">True</property> + <property name="label" translatable="no"></property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor4|tooltip_text">Light 4 color</property> + <child> + <placeholder/> + </child> </object> <packing> - <property name="left_attach">1</property> - <property name="top_attach">3</property> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> </packing> </child> <child> - <object class="GtkButton" id="texparallely"> - <property name="visible">True</property> + <object class="GtkMenuButton" id="lightcolor5"> + <property name="visible">False</property> <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|texparallely|tooltip_text">Parallel</property> - <property name="halign">center</property> - <property name="image">image36</property> - <accessibility> - <relation type="labelled-by" target="label24"/> - </accessibility> + <property name="receives_default">False</property> + <property name="hexpand">True</property> + <property name="valign">start</property> + <property name="draw_indicator">True</property> + <property name="label" translatable="no"></property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor5|tooltip_text">Light 5 color</property> + <child> + <placeholder/> + </child> </object> <packing> - <property name="left_attach">2</property> - <property name="top_attach">3</property> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> </packing> </child> <child> - <object class="GtkButton" id="texcircley"> - <property name="visible">True</property> + <object class="GtkMenuButton" id="lightcolor6"> + <property name="visible">False</property> <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|texcircley|tooltip_text">Circular</property> - <property name="halign">start</property> - <property name="image">image37</property> - <accessibility> - <relation type="labelled-by" target="label24"/> - </accessibility> + <property name="receives_default">False</property> + <property name="hexpand">True</property> + <property name="valign">start</property> + <property name="draw_indicator">True</property> + <property name="label" translatable="no"></property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor6|tooltip_text">Light 6 color</property> + <child> + <placeholder/> + </child> </object> <packing> - <property name="left_attach">3</property> - <property name="top_attach">3</property> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">5</property> </packing> </child> <child> - <object class="GtkButton" id="texfilter"> - <property name="visible">True</property> + <object class="GtkMenuButton" id="lightcolor7"> + <property name="visible">False</property> <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|texfilter|tooltip_text">Filtering On/Off</property> - <property name="halign">center</property> - <property name="image">image38</property> - <accessibility> - <relation type="labelled-by" target="label25"/> - </accessibility> + <property name="receives_default">False</property> + <property name="hexpand">True</property> + <property name="valign">start</property> + <property name="draw_indicator">True</property> + <property name="label" translatable="no"></property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor7|tooltip_text">Light 7 color</property> + <child> + <placeholder/> + </child> </object> <packing> - <property name="left_attach">1</property> - <property name="top_attach">4</property> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">6</property> </packing> </child> <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> + <object class="GtkMenuButton" id="lightcolor8"> + <property name="visible">False</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="hexpand">True</property> + <property name="valign">start</property> + <property name="draw_indicator">True</property> + <property name="label" translatable="no"></property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|lightcolor8|tooltip_text">Light 8 color</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">7</property> + </packing> </child> </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + </packing> </child> </object> </child> - <child type="label"> - <object class="GtkLabel" id="label21"> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label19"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label19">Illumination</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">6</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="textureframe"> + <property name="can_focus">False</property> + <property name="no_show_all">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment9"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> + <child> + <object class="GtkGrid" id="grid15"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="label" translatable="yes" context="docking3deffects|label21">Textures</property> - <attributes> - <attribute name="weight" value="bold"/> - </attributes> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> + <child> + <object class="GtkLabel" id="label20"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label20">_Type</property> + <property name="use_underline">True</property> + <property name="xalign">0</property> + <accessibility> + <relation type="label-for" target="textype"/> + <relation type="label-for" target="texcolor"/> + </accessibility> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label22"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label22">_Mode</property> + <property name="use_underline">True</property> + <property name="xalign">0</property> + <accessibility> + <relation type="label-for" target="texreplace"/> + <relation type="label-for" target="texmodulate"/> + <relation type="label-for" target="texblend"/> + </accessibility> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label23"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label23">_Projection X</property> + <property name="use_underline">True</property> + <property name="xalign">0</property> + <accessibility> + <relation type="label-for" target="texobjx"/> + <relation type="label-for" target="texparallelx"/> + <relation type="label-for" target="texcirclex"/> + </accessibility> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label24"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label24">P_rojection Y</property> + <property name="use_underline">True</property> + <property name="xalign">0</property> + <accessibility> + <relation type="label-for" target="texobjy"/> + <relation type="label-for" target="texparallely"/> + <relation type="label-for" target="texcircley"/> + </accessibility> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">3</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label25"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label25">_Filtering</property> + <property name="use_underline">True</property> + <property name="xalign">0</property> + <accessibility> + <relation type="label-for" target="texfilter"/> + </accessibility> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">4</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="textype"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|textype|tooltip_text">Black & White</property> + <property name="halign">center</property> + <property name="image">image28</property> + <accessibility> + <relation type="labelled-by" target="label20"/> + </accessibility> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="texcolor"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|texcolor|tooltip_text">Color</property> + <property name="halign">center</property> + <property name="image">image29</property> + <accessibility> + <relation type="labelled-by" target="label20"/> + </accessibility> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="texreplace"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|texreplace|tooltip_text">Only Texture</property> + <property name="halign">center</property> + <property name="image">image30</property> + <accessibility> + <relation type="labelled-by" target="label22"/> + </accessibility> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="texmodulate"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|texmodulate|tooltip_text">Texture and Shading</property> + <property name="halign">center</property> + <property name="image">image31</property> + <accessibility> + <relation type="labelled-by" target="label22"/> + </accessibility> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="texblend"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|texblend|tooltip_text">Texture, Shadow and Color</property> + <property name="halign">start</property> + <property name="hexpand">True</property> + <property name="image">image42</property> + <accessibility> + <relation type="labelled-by" target="label22"/> + </accessibility> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="texobjx"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|texobjx|tooltip_text">Object-Specific</property> + <property name="halign">center</property> + <property name="image">image32</property> + <accessibility> + <relation type="labelled-by" target="label23"/> + </accessibility> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="texparallelx"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|texparallelx|tooltip_text">Parallel</property> + <property name="halign">center</property> + <property name="image">image33</property> + <accessibility> + <relation type="labelled-by" target="label23"/> + </accessibility> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="texcirclex"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|texcirclex|tooltip_text">Circular</property> + <property name="halign">start</property> + <property name="hexpand">True</property> + <property name="image">image34</property> + <accessibility> + <relation type="labelled-by" target="label23"/> + </accessibility> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="texobjy"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|texobjy|tooltip_text">Object-Specific</property> + <property name="halign">center</property> + <property name="image">image35</property> + <accessibility> + <relation type="labelled-by" target="label24"/> + </accessibility> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">3</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="texparallely"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|texparallely|tooltip_text">Parallel</property> + <property name="halign">center</property> + <property name="image">image36</property> + <accessibility> + <relation type="labelled-by" target="label24"/> + </accessibility> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">3</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="texcircley"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|texcircley|tooltip_text">Circular</property> + <property name="halign">start</property> + <property name="image">image37</property> + <accessibility> + <relation type="labelled-by" target="label24"/> + </accessibility> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">3</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="texfilter"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|texfilter|tooltip_text">Filtering On/Off</property> + <property name="halign">center</property> + <property name="image">image38</property> + <accessibility> + <relation type="labelled-by" target="label25"/> + </accessibility> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">4</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> </child> </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">7</property> - </packing> </child> + <child type="label"> + <object class="GtkLabel" id="label21"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label21">Textures</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">7</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="materialframe"> + <property name="can_focus">False</property> + <property name="no_show_all">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> <child> - <object class="GtkFrame" id="materialframe"> + <object class="GtkAlignment" id="alignment10"> + <property name="visible">True</property> <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="label_xalign">0</property> - <property name="shadow_type">none</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> <child> - <object class="GtkAlignment" id="alignment10"> + <object class="GtkGrid" id="grid16"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="top_padding">6</property> - <property name="left_padding">12</property> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> <child> - <object class="GtkGrid" id="grid16"> + <object class="GtkLabel" id="label26"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="row_spacing">6</property> - <property name="column_spacing">12</property> - <child> - <object class="GtkLabel" id="label26"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label26">_Favorites</property> - <property name="use_underline">True</property> - <accessibility> - <relation type="label-for" target="favorites"/> - </accessibility> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label27"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label27">_Object color</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">objcolor</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label29"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label29">_Illumination color</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">illumcolor</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">2</property> - </packing> - </child> - <child> - <object class="svxcorelo-SvxColorListBox" id="objcolor"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="valign">center</property> - <property name="hexpand">True</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="svxcorelo-SvxColorListBox" id="illumcolor"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="valign">center</property> - <property name="hexpand">True</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">2</property> - </packing> - </child> - <child> - <object class="GtkComboBoxText" id="favorites"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <accessibility> - <relation type="labelled-by" target="label26"/> - </accessibility> - <items> - <item translatable="yes" context="docking3deffects|favorites">User-defined</item> - <item translatable="yes" context="docking3deffects|favorites">Metal</item> - <item translatable="yes" context="docking3deffects|favorites">Gold</item> - <item translatable="yes" context="docking3deffects|favorites">Chrome</item> - <item translatable="yes" context="docking3deffects|favorites">Plastic</item> - <item translatable="yes" context="docking3deffects|favorites">Wood</item> - </items> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">0</property> - <property name="width">2</property> - </packing> - </child> + <property name="label" translatable="yes" context="docking3deffects|label26">_Favorites</property> + <property name="use_underline">True</property> + <property name="xalign">0</property> + <accessibility> + <relation type="label-for" target="favorites"/> + </accessibility> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label27"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label27">_Object color</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">objcolor</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label29"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label29">_Illumination color</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">illumcolor</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="objcolor"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="hexpand">True</property> + <property name="valign">center</property> + <property name="draw_indicator">True</property> + <property name="label" translatable="no"></property> <child> - <object class="GtkButton" id="colorbutton3"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|colorbutton3|tooltip_text">Colors Dialog</property> - <property name="image">image39</property> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">1</property> - </packing> + <placeholder/> </child> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="illumcolor"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="hexpand">True</property> + <property name="valign">center</property> + <property name="draw_indicator">True</property> + <property name="label" translatable="no"></property> <child> - <object class="GtkButton" id="colorbutton4"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|colorbutton4|tooltip_text">Colors Dialog</property> - <property name="image">image40</property> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">2</property> - </packing> + <placeholder/> </child> </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="favorites"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <items> + <item translatable="yes" context="docking3deffects|favorites">User-defined</item> + <item translatable="yes" context="docking3deffects|favorites">Metal</item> + <item translatable="yes" context="docking3deffects|favorites">Gold</item> + <item translatable="yes" context="docking3deffects|favorites">Chrome</item> + <item translatable="yes" context="docking3deffects|favorites">Plastic</item> + <item translatable="yes" context="docking3deffects|favorites">Wood</item> + </items> + <accessibility> + <relation type="labelled-by" target="label26"/> + </accessibility> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="colorbutton3"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|colorbutton3|tooltip_text">Colors Dialog</property> + <property name="image">image39</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="colorbutton4"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|colorbutton4|tooltip_text">Colors Dialog</property> + <property name="image">image40</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">2</property> + </packing> </child> - </object> - </child> - <child type="label"> - <object class="GtkLabel" id="label28"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes" context="docking3deffects|label28">Material</property> - <attributes> - <attribute name="weight" value="bold"/> - </attributes> </object> </child> </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">8</property> - </packing> </child> + <child type="label"> + <object class="GtkLabel" id="label28"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label28">Material</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">8</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="specframe"> + <property name="can_focus">False</property> + <property name="no_show_all">True</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> <child> - <object class="GtkFrame" id="specframe"> + <object class="GtkAlignment" id="alignment11"> + <property name="visible">True</property> <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="label_xalign">0</property> - <property name="shadow_type">none</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> <child> - <object class="GtkAlignment" id="alignment11"> + <object class="GtkGrid" id="grid17"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="top_padding">6</property> - <property name="left_padding">12</property> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> <child> - <object class="GtkGrid" id="grid17"> + <object class="GtkLabel" id="label30"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="row_spacing">6</property> - <property name="column_spacing">12</property> - <child> - <object class="GtkLabel" id="label30"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label30">_Color</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">speccolor</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label31"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label" translatable="yes" context="docking3deffects|label31">I_ntensity</property> - <property name="use_underline">True</property> - <property name="mnemonic_widget">intensity:0%</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="svxcorelo-SvxColorListBox" id="speccolor"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="valign">center</property> - <property name="hexpand">True</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkButton" id="colorbutton5"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|colorbutton5|tooltip_text">Colors Dialog</property> - <property name="image">image41</property> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">0</property> - </packing> - </child> + <property name="label" translatable="yes" context="docking3deffects|label30">_Color</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">speccolor</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label31"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label31">I_ntensity</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">intensity</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="speccolor"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="hexpand">True</property> + <property name="valign">center</property> + <property name="draw_indicator">True</property> + <property name="label" translatable="no"></property> <child> - <object class="GtkSpinButton" id="intensity:0%"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="adjustment">adjustment8</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">1</property> - <property name="width">2</property> - </packing> + <placeholder/> </child> </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="colorbutton5"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|colorbutton5|tooltip_text">Colors Dialog</property> + <property name="image">image41</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="intensity"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="adjustment">adjustment8</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + <property name="width">2</property> + </packing> </child> </object> </child> - <child type="label"> - <object class="GtkLabel" id="label32"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes" context="docking3deffects|label32">Specular</property> - <attributes> - <attribute name="weight" value="bold"/> - </attributes> - </object> - </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label32"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="docking3deffects|label32">Specular</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">9</property> + </packing> + </child> + <child> + <object class="GtkGrid" id="grid18"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="column_spacing">6</property> + <child> + <object class="GtkButton" id="assign"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|assign|tooltip_text">Assign</property> + <property name="image">image7</property> </object> <packing> - <property name="left_attach">0</property> - <property name="top_attach">9</property> + <property name="left_attach">6</property> + <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkGrid" id="grid18"> + <object class="GtkToggleButton" id="update"> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="column_spacing">6</property> - <child> - <object class="GtkButton" id="assign"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|assign|tooltip_text">Assign</property> - <property name="image">image7</property> - </object> - <packing> - <property name="left_attach">6</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkButton" id="update"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|update|tooltip_text">Update</property> - <property name="halign">end</property> - <property name="hexpand">True</property> - <property name="image">image6</property> - </object> - <packing> - <property name="left_attach">5</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkButton" id="material"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|material|tooltip_text">Material</property> - <property name="image">image5</property> - </object> - <packing> - <property name="left_attach">4</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkButton" id="texture"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|texture|tooltip_text">Textures</property> - <property name="image">image4</property> - </object> - <packing> - <property name="left_attach">3</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkButton" id="light"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|light|tooltip_text">Illumination</property> - <property name="image">image3</property> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkButton" id="representation"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|representation|tooltip_text">Shading</property> - <property name="image">image2</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkButton" id="geometry"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="tooltip_text" translatable="yes" context="docking3deffects|geometry|tooltip_text">Geometry</property> - <property name="image">image1</property> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </packing> - </child> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|update|tooltip_text">Update</property> + <property name="halign">end</property> + <property name="hexpand">True</property> + <property name="image">image6</property> + </object> + <packing> + <property name="left_attach">5</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="material"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|material|tooltip_text">Material</property> + <property name="image">image5</property> + </object> + <packing> + <property name="left_attach">4</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="texture"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|texture|tooltip_text">Textures</property> + <property name="image">image4</property> + </object> + <packing> + <property name="left_attach">3</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="light"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|light|tooltip_text">Illumination</property> + <property name="image">image3</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="representation"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|representation|tooltip_text">Shading</property> + <property name="image">image2</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="geometry"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes" context="docking3deffects|geometry|tooltip_text">Geometry</property> + <property name="image">image1</property> </object> <packing> <property name="left_attach">0</property> @@ -2122,6 +2251,10 @@ </packing> </child> </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> </child> </object> <object class="GtkSizeGroup" id="sizegroup1"> |