diff options
-rw-r--r-- | cui/source/customize/cfgutil.cxx | 4 | ||||
-rw-r--r-- | cui/source/tabpages/macroass.cxx | 15 | ||||
-rw-r--r-- | cui/uiconfig/ui/eventassignpage.ui | 25 | ||||
-rw-r--r-- | sw/inc/swabstdlg.hxx | 2 | ||||
-rw-r--r-- | sw/source/ui/dialog/swdlgfact.cxx | 5 | ||||
-rw-r--r-- | sw/source/ui/dialog/swdlgfact.hxx | 2 | ||||
-rw-r--r-- | sw/source/ui/frmdlg/frmdlg.cxx | 73 | ||||
-rw-r--r-- | sw/source/ui/frmdlg/frmpage.cxx | 4 | ||||
-rw-r--r-- | sw/source/uibase/inc/frmdlg.hxx | 29 | ||||
-rw-r--r-- | sw/source/uibase/inc/frmpage.hxx | 2 | ||||
-rw-r--r-- | sw/source/uibase/shells/frmsh.cxx | 2 | ||||
-rw-r--r-- | sw/source/uibase/shells/grfsh.cxx | 2 | ||||
-rw-r--r-- | sw/source/uibase/shells/textsh.cxx | 2 | ||||
-rw-r--r-- | sw/uiconfig/swriter/ui/framedialog.ui | 251 | ||||
-rw-r--r-- | sw/uiconfig/swriter/ui/frmaddpage.ui | 9 | ||||
-rw-r--r-- | sw/uiconfig/swriter/ui/frmtypepage.ui | 2 | ||||
-rw-r--r-- | sw/uiconfig/swriter/ui/frmurlpage.ui | 2 | ||||
-rw-r--r-- | sw/uiconfig/swriter/ui/picturedialog.ui | 275 | ||||
-rw-r--r-- | vcl/source/app/salvtables.cxx | 2 | ||||
-rw-r--r-- | vcl/unx/gtk3/gtk3gtkinst.cxx | 18 |
20 files changed, 585 insertions, 141 deletions
diff --git a/cui/source/customize/cfgutil.cxx b/cui/source/customize/cfgutil.cxx index 4204d2c0a0d6..16e2f993ef74 100644 --- a/cui/source/customize/cfgutil.cxx +++ b/cui/source/customize/cfgutil.cxx @@ -369,6 +369,7 @@ CuiConfigFunctionListBox::CuiConfigFunctionListBox(std::unique_ptr<weld::TreeVie : m_xTreeView(std::move(xTreeView)) { m_xTreeView->make_sorted(); + m_xTreeView->set_size_request(m_xTreeView->get_approximate_digit_width() * 20, m_xTreeView->get_height_rows(9)); } CuiConfigFunctionListBox::~CuiConfigFunctionListBox() @@ -1271,6 +1272,7 @@ CuiConfigGroupListBox::CuiConfigGroupListBox(std::unique_ptr<weld::TreeView> xTr { m_xTreeView->connect_row_activated(LINK(this, CuiConfigGroupListBox, OpenCurrentHdl)); m_xTreeView->connect_expanding(LINK(this, CuiConfigGroupListBox, ExpandingHdl)); + m_xTreeView->set_size_request(m_xTreeView->get_approximate_digit_width() * 20, m_xTreeView->get_height_rows(9)); } IMPL_LINK_NOARG(CuiConfigGroupListBox, OpenCurrentHdl, weld::TreeView&, void) @@ -1541,8 +1543,8 @@ void CuiConfigGroupListBox::Init(const css::uno::Reference< css::uno::XComponent m_xTreeView->insert(nullptr, -1, sStyle, &sId, nullptr, nullptr, nullptr, true); } - m_xTreeView->scroll_to_row(0); m_xTreeView->thaw(); + m_xTreeView->scroll_to_row(0); m_xTreeView->select(0); } diff --git a/cui/source/tabpages/macroass.cxx b/cui/source/tabpages/macroass.cxx index e1a3f9060378..4788ccc404cf 100644 --- a/cui/source/tabpages/macroass.cxx +++ b/cui/source/tabpages/macroass.cxx @@ -55,12 +55,10 @@ public: Idle m_aFillGroupIdle; bool m_bGotEvents; - bool m_bDummyActivated; ///< has this tab page already been activated }; SfxMacroTabPage_Impl::SfxMacroTabPage_Impl() : m_bGotEvents(false) - , m_bDummyActivated(false) { } @@ -189,13 +187,6 @@ void SfxMacroTabPage::LaunchFillGroup() void SfxMacroTabPage::ActivatePage( const SfxItemSet& ) { - // fdo#57553 lazily init script providers, because it is annoying if done - // on dialog open (SfxTabDialog::Start_Impl activates all tab pages once!) - if (!mpImpl->m_bDummyActivated) - { - mpImpl->m_bDummyActivated = true; - return; - } LaunchFillGroup(); } @@ -396,15 +387,15 @@ void SfxMacroTabPage::FillEvents() namespace { - VclPtr<SfxMacroTabPage> CreateSfxMacroTabPage( vcl::Window* pParent, const SfxItemSet& rAttrSet ) + VclPtr<SfxMacroTabPage> CreateSfxMacroTabPage(TabPageParent pParent, const SfxItemSet& rAttrSet) { return VclPtr<SfxMacroTabPage>::Create( pParent, nullptr, rAttrSet ); } } -VclPtr<SfxTabPage> SfxMacroTabPage::Create( TabPageParent pParent, const SfxItemSet* rAttrSet ) +VclPtr<SfxTabPage> SfxMacroTabPage::Create(TabPageParent pParent, const SfxItemSet* rAttrSet) { - return CreateSfxMacroTabPage(pParent.pParent, *rAttrSet); + return CreateSfxMacroTabPage(pParent, *rAttrSet); } SfxMacroAssignDlg::SfxMacroAssignDlg(vcl::Window* pParent, diff --git a/cui/uiconfig/ui/eventassignpage.ui b/cui/uiconfig/ui/eventassignpage.ui index 3eb926ed88d6..1dc25df90b5d 100644 --- a/cui/uiconfig/ui/eventassignpage.ui +++ b/cui/uiconfig/ui/eventassignpage.ui @@ -14,6 +14,8 @@ </object> <object class="GtkTreeStore" id="liststore2"> <columns> + <!-- column-name expander --> + <column type="GdkPixbuf"/> <!-- column-name text --> <column type="gchararray"/> <!-- column-name id --> @@ -37,6 +39,7 @@ <property name="vexpand">True</property> <property name="row_spacing">12</property> <property name="column_spacing">12</property> + <property name="row_homogeneous">True</property> <child> <object class="GtkFrame" id="macroframe"> <property name="visible">True</property> @@ -77,9 +80,15 @@ <child> <object class="GtkTreeViewColumn" id="treeviewcolumn1"> <child> + <object class="GtkCellRendererPixbuf" id="cellrenderertext5"/> + <attributes> + <attribute name="pixbuf">0</attribute> + </attributes> + </child> + <child> <object class="GtkCellRendererText" id="cellrenderertext1"/> <attributes> - <attribute name="text">0</attribute> + <attribute name="text">1</attribute> </attributes> </child> </object> @@ -315,18 +324,4 @@ </packing> </child> </object> - <object class="GtkSizeGroup" id="sizegroup1"> - <widgets> - <widget name="macroframe"/> - <widget name="groupframe"/> - </widgets> - </object> - <object class="GtkSizeGroup" id="sizegroup2"> - <property name="mode">vertical</property> - <widgets> - <widget name="macros"/> - <widget name="libraries"/> - <widget name="assignments"/> - </widgets> - </object> </interface> diff --git a/sw/inc/swabstdlg.hxx b/sw/inc/swabstdlg.hxx index e8f67f2cdaa1..be930f00e327 100644 --- a/sw/inc/swabstdlg.hxx +++ b/sw/inc/swabstdlg.hxx @@ -428,7 +428,7 @@ public: virtual VclPtr<VclAbstractDialog> CreateTableMergeDialog(weld::Window* pParent, bool& rWithPrev) = 0; virtual VclPtr<SfxAbstractTabDialog> CreateFrameTabDialog(const OUString &rDialogType, - SfxViewFrame *pFrame, vcl::Window *pParent, + SfxViewFrame *pFrame, weld::Window *pParent, const SfxItemSet& rCoreSet, bool bNewFrame = true, const OString& sDefPage = OString()) = 0; diff --git a/sw/source/ui/dialog/swdlgfact.cxx b/sw/source/ui/dialog/swdlgfact.cxx index b12d3967a5a4..d50b657610a9 100644 --- a/sw/source/ui/dialog/swdlgfact.cxx +++ b/sw/source/ui/dialog/swdlgfact.cxx @@ -991,13 +991,12 @@ VclPtr<VclAbstractDialog> SwAbstractDialogFactory_Impl::CreateTableMergeDialog(w } VclPtr<SfxAbstractTabDialog> SwAbstractDialogFactory_Impl::CreateFrameTabDialog(const OUString &rDialogType, - SfxViewFrame *pFrame, vcl::Window *pParent, + SfxViewFrame *pFrame, weld::Window *pParent, const SfxItemSet& rCoreSet, bool bNewFrame, const OString& sDefPage ) { - VclPtr<SfxTabDialog> pDlg = VclPtr<SwFrameDlg>::Create(pFrame, pParent, rCoreSet, bNewFrame, rDialogType, false/*bFormat*/, sDefPage, nullptr); - return VclPtr<AbstractTabDialog_Impl>::Create(pDlg); + return VclPtr<AbstractTabController_Impl>::Create(o3tl::make_unique<SwFrameDlg>(pFrame, pParent, rCoreSet, bNewFrame, rDialogType, false/*bFormat*/, sDefPage, nullptr)); } VclPtr<SfxAbstractApplyTabDialog> SwAbstractDialogFactory_Impl::CreateTemplateDialog( diff --git a/sw/source/ui/dialog/swdlgfact.hxx b/sw/source/ui/dialog/swdlgfact.hxx index 0959581dd8b2..e536b0c91aa8 100644 --- a/sw/source/ui/dialog/swdlgfact.hxx +++ b/sw/source/ui/dialog/swdlgfact.hxx @@ -673,7 +673,7 @@ public: virtual VclPtr<VclAbstractDialog> CreateTableMergeDialog(weld::Window* pParent, bool& rWithPrev) override; virtual VclPtr<SfxAbstractTabDialog> CreateFrameTabDialog( const OUString &rDialogType, - SfxViewFrame *pFrame, vcl::Window *pParent, + SfxViewFrame *pFrame, weld::Window *pParent, const SfxItemSet& rCoreSet, bool bNewFrame = true, const OString& sDefPage = OString()) override; diff --git a/sw/source/ui/frmdlg/frmdlg.cxx b/sw/source/ui/frmdlg/frmdlg.cxx index fb8915ab7673..2deb04142e7e 100644 --- a/sw/source/ui/frmdlg/frmdlg.cxx +++ b/sw/source/ui/frmdlg/frmdlg.cxx @@ -44,46 +44,36 @@ #include <svx/xflgrit.hxx> // the dialog's carrier -SwFrameDlg::SwFrameDlg( SfxViewFrame const * pViewFrame, - vcl::Window* pParent, - const SfxItemSet& rCoreSet, - bool bNewFrame, - const OUString& sResType, - bool bFormat, - const OString& sDefPage, - const OUString* pStr) - - : SfxTabDialog(pParent, sResType, - "modules/swriter/ui/" + sResType.toAsciiLowerCase() + ".ui", - &rCoreSet, pStr != nullptr) +SwFrameDlg::SwFrameDlg(SfxViewFrame const * pViewFrame, + weld::Window* pParent, + const SfxItemSet& rCoreSet, + bool bNewFrame, + const OUString& sResType, + bool bFormat, + const OString& sDefPage, + const OUString* pStr) + + : SfxTabDialogController(pParent, "modules/swriter/ui/" + sResType.toAsciiLowerCase() + ".ui", + sResType.toUtf8(), &rCoreSet, pStr != nullptr) , m_bFormat(bFormat) , m_bNew(bNewFrame) , m_rSet(rCoreSet) , m_sDlgType(sResType) , m_pWrtShell(static_cast<SwView*>(pViewFrame->GetViewShell())->GetWrtShellPtr()) - , m_nStdId(0) - , m_nAddId(0) - , m_nWrapId(0) - , m_nColumnId(0) - //, m_nBackgroundId(0) - , m_nAreaId(0) - , m_nTransparenceId(0) - , m_nMacroId(0) - , m_nBorderId(0) { sal_uInt16 nHtmlMode = ::GetHtmlMode(m_pWrtShell->GetView().GetDocShell()); bool bHTMLMode = (nHtmlMode & HTMLMODE_ON) != 0; // example font for both example TabPages - if(pStr) + if (pStr) { - SetText(GetText() + SwResId(STR_FRMUI_COLL_HEADER) + *pStr + ")"); + m_xDialog->set_title(m_xDialog->get_title() + SwResId(STR_FRMUI_COLL_HEADER) + *pStr + ")"); } - m_nStdId = AddTabPage("type", SwFramePage::Create, nullptr); - m_nAddId = AddTabPage("options", SwFrameAddPage::Create, nullptr); - m_nWrapId = AddTabPage("wrap", SwWrapTabPage::Create, nullptr); + AddTabPage("type", SwFramePage::Create, nullptr); + AddTabPage("options", SwFrameAddPage::Create, nullptr); + AddTabPage("wrap", SwWrapTabPage::Create, nullptr); AddTabPage("hyperlink", SwFrameURLPage::Create, nullptr); if (m_sDlgType == "PictureDialog") { @@ -92,19 +82,16 @@ SwFrameDlg::SwFrameDlg( SfxViewFrame const * pViewFrame, } if (m_sDlgType == "FrameDialog") { - m_nColumnId = AddTabPage("columns", SwColumnPage::Create, nullptr); + AddTabPage("columns", SwColumnPage::Create, nullptr); } SfxAbstractDialogFactory* pFact = SfxAbstractDialogFactory::Create(); - // remove? - // m_nBackgroundId = AddTabPage("background", pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), 0); - // add Area and Transparence TabPages - m_nAreaId = AddTabPage("area", pFact->GetTabPageCreatorFunc( RID_SVXPAGE_AREA ), pFact->GetTabPageRangesFunc( RID_SVXPAGE_AREA )); - m_nTransparenceId = AddTabPage("transparence", pFact->GetTabPageCreatorFunc( RID_SVXPAGE_TRANSPARENCE ), pFact->GetTabPageRangesFunc( RID_SVXPAGE_TRANSPARENCE ) ); + AddTabPage("area", pFact->GetTabPageCreatorFunc( RID_SVXPAGE_AREA ), pFact->GetTabPageRangesFunc( RID_SVXPAGE_AREA )); + AddTabPage("transparence", pFact->GetTabPageCreatorFunc( RID_SVXPAGE_TRANSPARENCE ), pFact->GetTabPageRangesFunc( RID_SVXPAGE_TRANSPARENCE ) ); - m_nMacroId = AddTabPage("macro", pFact->GetTabPageCreatorFunc(RID_SVXPAGE_MACROASSIGN), nullptr); - m_nBorderId = AddTabPage("borders", pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BORDER ), nullptr); + AddTabPage("macro", pFact->GetTabPageCreatorFunc(RID_SVXPAGE_MACROASSIGN), nullptr); + AddTabPage("borders", pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BORDER ), nullptr); if(bHTMLMode) { @@ -136,29 +123,29 @@ SwFrameDlg::~SwFrameDlg() { } -void SwFrameDlg::PageCreated( sal_uInt16 nId, SfxTabPage &rPage ) +void SwFrameDlg::PageCreated(const OString& rId, SfxTabPage &rPage) { SfxAllItemSet aSet(*(GetInputSetImpl()->GetPool())); - if (nId == m_nStdId) + if (rId == "type") { static_cast<SwFramePage&>(rPage).SetNewFrame(m_bNew); static_cast<SwFramePage&>(rPage).SetFormatUsed(m_bFormat); static_cast<SwFramePage&>(rPage).SetFrameType(m_sDlgType); } - else if (nId == m_nAddId) + else if (rId == "options") { static_cast<SwFrameAddPage&>(rPage).SetFormatUsed(m_bFormat); static_cast<SwFrameAddPage&>(rPage).SetFrameType(m_sDlgType); static_cast<SwFrameAddPage&>(rPage).SetNewFrame(m_bNew); static_cast<SwFrameAddPage&>(rPage).SetShell(m_pWrtShell); } - else if (nId == m_nWrapId) + else if (rId == "wrap") { static_cast<SwWrapTabPage&>(rPage).SetNewFrame(m_bNew); static_cast<SwWrapTabPage&>(rPage).SetFormatUsed(m_bFormat, false); static_cast<SwWrapTabPage&>(rPage).SetShell(m_pWrtShell); } - else if (nId == m_nColumnId) + else if (rId == "columns") { static_cast<SwColumnPage&>(rPage).SetFrameMode(true); static_cast<SwColumnPage&>(rPage).SetFormatUsed(m_bFormat); @@ -166,7 +153,7 @@ void SwFrameDlg::PageCreated( sal_uInt16 nId, SfxTabPage &rPage ) const SwFormatFrameSize& rSize = m_rSet.Get( RES_FRM_SIZE ); static_cast<SwColumnPage&>(rPage).SetPageWidth( rSize.GetWidth() ); } - else if (nId == m_nMacroId) + else if (rId == "macro") { SfxAllItemSet aNewSet(*aSet.GetPool()); aNewSet.Put( SwMacroAssignDlg::AddEvents( @@ -175,7 +162,7 @@ void SwFrameDlg::PageCreated( sal_uInt16 nId, SfxTabPage &rPage ) rPage.SetFrame( m_pWrtShell->GetView().GetViewFrame()->GetFrame().GetFrameInterface() ); rPage.PageCreated(aNewSet); } - else if (nId == m_nBorderId) + else if (rId == "borders") { aSet.Put (SfxUInt16Item(SID_SWMODE_TYPE,static_cast<sal_uInt16>(SwBorderModes::FRAME))); rPage.PageCreated(aSet); @@ -186,7 +173,7 @@ void SwFrameDlg::PageCreated( sal_uInt16 nId, SfxTabPage &rPage ) // these pages find the needed attributes for fill style suggestions. // These are set in preparation to trigger this dialog (FN_FORMAT_FRAME_DLG and // FN_DRAW_WRAP_DLG), but could also be directly added from the DrawModel. - else if (nId == m_nAreaId) + else if (rId == "area") { SfxItemSet aNew(*GetInputSetImpl()->GetPool(), svl::Items<SID_COLOR_TABLE, SID_PATTERN_LIST, @@ -199,7 +186,7 @@ void SwFrameDlg::PageCreated( sal_uInt16 nId, SfxTabPage &rPage ) rPage.PageCreated(aNew); } - else if (nId == m_nTransparenceId) + else if (rId == "transparence") { rPage.PageCreated(m_rSet); } diff --git a/sw/source/ui/frmdlg/frmpage.cxx b/sw/source/ui/frmdlg/frmpage.cxx index bf1320c2a466..0c24cc563f7e 100644 --- a/sw/source/ui/frmdlg/frmpage.cxx +++ b/sw/source/ui/frmdlg/frmpage.cxx @@ -834,7 +834,7 @@ void SwFramePage::EnableGraficMode() SwWrtShell *SwFramePage::getFrameDlgParentShell() { - return static_cast<SwFrameDlg*>(GetParentDialog())->GetWrtShell(); + return static_cast<SwFrameDlg*>(GetDialogController())->GetWrtShell(); } void SwFramePage::Reset( const SfxItemSet *rSet ) @@ -2785,7 +2785,7 @@ SwFrameAddPage::SwFrameAddPage(TabPageParent pParent, const SfxItemSet &rSet) , m_xAltNameFT(m_xBuilder->weld_label("altname_label")) , m_xAltNameED(m_xBuilder->weld_entry("altname")) , m_xDescriptionFT(m_xBuilder->weld_label("description_label")) - , m_xDescriptionED(m_xBuilder->weld_entry("description")) + , m_xDescriptionED(m_xBuilder->weld_text_view("description")) , m_xPrevFT(m_xBuilder->weld_label("prev_label")) , m_xPrevLB(m_xBuilder->weld_combo_box("prev")) , m_xNextFT(m_xBuilder->weld_label("next_label")) diff --git a/sw/source/uibase/inc/frmdlg.hxx b/sw/source/uibase/inc/frmdlg.hxx index f92a39593f48..ec63b96884a2 100644 --- a/sw/source/uibase/inc/frmdlg.hxx +++ b/sw/source/uibase/inc/frmdlg.hxx @@ -22,10 +22,11 @@ #include <globals.hrc> #include <sfx2/tabdlg.hxx> + class SwWrtShell; // frame dialog -class SwFrameDlg : public SfxTabDialog +class SwFrameDlg : public SfxTabDialogController { bool const m_bFormat; bool const m_bNew; @@ -33,26 +34,16 @@ class SwFrameDlg : public SfxTabDialog OUString const m_sDlgType; SwWrtShell* m_pWrtShell; - sal_uInt16 m_nStdId; - sal_uInt16 m_nAddId; - sal_uInt16 m_nWrapId; - sal_uInt16 m_nColumnId; - //sal_uInt16 m_nBackgroundId; - sal_uInt16 m_nAreaId; - sal_uInt16 m_nTransparenceId; - sal_uInt16 m_nMacroId; - sal_uInt16 m_nBorderId; - - virtual void PageCreated( sal_uInt16 nId, SfxTabPage &rPage ) override; + virtual void PageCreated(const OString& rId, SfxTabPage &rPage) override; public: - SwFrameDlg( SfxViewFrame const *pFrame, vcl::Window *pParent, - const SfxItemSet& rCoreSet, - bool bNewFrame, - const OUString& sResType, - bool bFormat, - const OString& sDefPage = OString(), - const OUString* pFormatStr = nullptr); + SwFrameDlg(SfxViewFrame const *pFrame, weld::Window* pParent, + const SfxItemSet& rCoreSet, + bool bNewFrame, + const OUString& sResType, + bool bFormat, + const OString& sDefPage = OString(), + const OUString* pFormatStr = nullptr); virtual ~SwFrameDlg() override; diff --git a/sw/source/uibase/inc/frmpage.hxx b/sw/source/uibase/inc/frmpage.hxx index a3b9691c4230..a188ca676e38 100644 --- a/sw/source/uibase/inc/frmpage.hxx +++ b/sw/source/uibase/inc/frmpage.hxx @@ -294,7 +294,7 @@ class SwFrameAddPage : public SfxTabPage std::unique_ptr<weld::Label> m_xAltNameFT; std::unique_ptr<weld::Entry> m_xAltNameED; std::unique_ptr<weld::Label> m_xDescriptionFT; - std::unique_ptr<weld::Entry> m_xDescriptionED; + std::unique_ptr<weld::TextView> m_xDescriptionED; std::unique_ptr<weld::Label> m_xPrevFT; std::unique_ptr<weld::ComboBox> m_xPrevLB; std::unique_ptr<weld::Label> m_xNextFT; diff --git a/sw/source/uibase/shells/frmsh.cxx b/sw/source/uibase/shells/frmsh.cxx index aa509ab2bc8d..b2a6d4a0885a 100644 --- a/sw/source/uibase/shells/frmsh.cxx +++ b/sw/source/uibase/shells/frmsh.cxx @@ -480,7 +480,7 @@ void SwFrameShell::Execute(SfxRequest &rReq) nSel & SelectionType::Ole ? OUString("ObjectDialog"): OUString("FrameDialog"), GetView().GetViewFrame(), - GetView().GetWindow(), + GetView().GetFrameWeld(), aSet, false, sDefPage)); diff --git a/sw/source/uibase/shells/grfsh.cxx b/sw/source/uibase/shells/grfsh.cxx index 211b36959e83..62456d7eed1b 100644 --- a/sw/source/uibase/shells/grfsh.cxx +++ b/sw/source/uibase/shells/grfsh.cxx @@ -412,7 +412,7 @@ void SwGrfShell::Execute(SfxRequest &rReq) SwAbstractDialogFactory* pFact = SwAbstractDialogFactory::Create(); ScopedVclPtr<SfxAbstractTabDialog> pDlg(pFact->CreateFrameTabDialog("PictureDialog", GetView().GetViewFrame(), - GetView().GetWindow(), + GetView().GetFrameWeld(), aSet, false)); if (nSlot == FN_DRAW_WRAP_DLG) pDlg->SetCurPageId("wrap"); diff --git a/sw/source/uibase/shells/textsh.cxx b/sw/source/uibase/shells/textsh.cxx index b786ecb5a88d..d6016f2913fd 100644 --- a/sw/source/uibase/shells/textsh.cxx +++ b/sw/source/uibase/shells/textsh.cxx @@ -474,7 +474,7 @@ void SwTextShell::ExecInsert(SfxRequest &rReq) SwAbstractDialogFactory* pFact = SwAbstractDialogFactory::Create(); ScopedVclPtr<SfxAbstractTabDialog> pDlg(pFact->CreateFrameTabDialog("FrameDialog", GetView().GetViewFrame(), - &GetView().GetViewFrame()->GetWindow(), + GetView().GetFrameWeld(), aSet)); if(pDlg->Execute() == RET_OK && pDlg->GetOutputItemSet()) { diff --git a/sw/uiconfig/swriter/ui/framedialog.ui b/sw/uiconfig/swriter/ui/framedialog.ui index b9835e5ea7eb..337edeee5a56 100644 --- a/sw/uiconfig/swriter/ui/framedialog.ui +++ b/sw/uiconfig/swriter/ui/framedialog.ui @@ -1,13 +1,16 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- Generated with glade 3.20.0 --> +<!-- Generated with glade 3.22.1 --> <interface domain="sw"> <requires lib="gtk+" version="3.18"/> <object class="GtkDialog" id="FrameDialog"> <property name="can_focus">False</property> <property name="border_width">6</property> <property name="title" translatable="yes" context="framedialog|FrameDialog">Frame</property> - <property name="resizable">False</property> + <property name="modal">True</property> <property name="type_hint">dialog</property> + <child> + <placeholder/> + </child> <child internal-child="vbox"> <object class="GtkBox" id="dialog-vbox1"> <property name="can_focus">False</property> @@ -18,12 +21,10 @@ <property name="can_focus">False</property> <property name="layout_style">end</property> <child> - <object class="GtkButton" id="ok"> - <property name="label">gtk-ok</property> + <object class="GtkButton" id="reset"> + <property name="label">gtk-revert-to-saved</property> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="can_default">True</property> - <property name="has_default">True</property> <property name="receives_default">True</property> <property name="use_stock">True</property> </object> @@ -34,10 +35,12 @@ </packing> </child> <child> - <object class="GtkButton" id="cancel"> - <property name="label">gtk-cancel</property> + <object class="GtkButton" id="ok"> + <property name="label">gtk-ok</property> <property name="visible">True</property> <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="has_default">True</property> <property name="receives_default">True</property> <property name="use_stock">True</property> </object> @@ -48,8 +51,8 @@ </packing> </child> <child> - <object class="GtkButton" id="help"> - <property name="label">gtk-help</property> + <object class="GtkButton" id="cancel"> + <property name="label">gtk-cancel</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> @@ -58,13 +61,12 @@ <packing> <property name="expand">False</property> <property name="fill">True</property> - <property name="position">3</property> - <property name="secondary">True</property> + <property name="position">2</property> </packing> </child> <child> - <object class="GtkButton" id="reset"> - <property name="label">gtk-revert-to-saved</property> + <object class="GtkButton" id="help"> + <property name="label">gtk-help</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> @@ -73,7 +75,8 @@ <packing> <property name="expand">False</property> <property name="fill">True</property> - <property name="position">4</property> + <property name="position">3</property> + <property name="secondary">True</property> </packing> </child> </object> @@ -99,6 +102,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> </child> <child type="tab"> @@ -118,6 +145,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">1</property> @@ -141,6 +192,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">2</property> @@ -164,6 +239,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">3</property> @@ -187,6 +286,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">4</property> @@ -210,6 +333,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">5</property> @@ -233,6 +380,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">6</property> @@ -256,6 +427,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">7</property> @@ -279,6 +474,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">8</property> @@ -305,10 +524,10 @@ </object> </child> <action-widgets> + <action-widget response="101">reset</action-widget> <action-widget response="-5">ok</action-widget> <action-widget response="-6">cancel</action-widget> <action-widget response="-11">help</action-widget> - <action-widget response="0">reset</action-widget> </action-widgets> </object> </interface> diff --git a/sw/uiconfig/swriter/ui/frmaddpage.ui b/sw/uiconfig/swriter/ui/frmaddpage.ui index 31bedebd2325..e01f39cfe327 100644 --- a/sw/uiconfig/swriter/ui/frmaddpage.ui +++ b/sw/uiconfig/swriter/ui/frmaddpage.ui @@ -12,6 +12,9 @@ <object class="GtkBox" id="FrameAddPage"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="valign">start</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> <property name="border_width">6</property> <property name="orientation">vertical</property> <property name="spacing">12</property> @@ -41,7 +44,7 @@ <object class="GtkEntry" id="name"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="halign">start</property> + <property name="hexpand">True</property> <property name="activates_default">True</property> <property name="width_chars">50</property> </object> @@ -54,7 +57,7 @@ <object class="GtkEntry" id="altname"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="halign">start</property> + <property name="hexpand">True</property> <property name="activates_default">True</property> <property name="width_chars">50</property> </object> @@ -165,11 +168,13 @@ <object class="GtkScrolledWindow" id="scrolledwindow1"> <property name="visible">True</property> <property name="can_focus">True</property> + <property name="hexpand">True</property> <property name="shadow_type">in</property> <child> <object class="GtkTextView" id="description"> <property name="visible">True</property> <property name="can_focus">True</property> + <property name="hexpand">True</property> <property name="wrap_mode">word</property> <property name="buffer">textbuffer1</property> </object> diff --git a/sw/uiconfig/swriter/ui/frmtypepage.ui b/sw/uiconfig/swriter/ui/frmtypepage.ui index 29207271c8a6..6b233bd5f560 100644 --- a/sw/uiconfig/swriter/ui/frmtypepage.ui +++ b/sw/uiconfig/swriter/ui/frmtypepage.ui @@ -2,7 +2,6 @@ <!-- Generated with glade 3.22.1 --> <interface domain="sw"> <requires lib="gtk+" version="3.18"/> - <requires lib="LibreOffice" version="1.0"/> <object class="GtkAdjustment" id="adjustment1"> <property name="lower">0.050000000000000003</property> <property name="upper">99.989999999999995</property> @@ -30,6 +29,7 @@ <object class="GtkGrid" id="FrameTypePage"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="valign">start</property> <property name="hexpand">True</property> <property name="border_width">6</property> <property name="row_spacing">18</property> diff --git a/sw/uiconfig/swriter/ui/frmurlpage.ui b/sw/uiconfig/swriter/ui/frmurlpage.ui index 271844fab5c8..4e7115a13685 100644 --- a/sw/uiconfig/swriter/ui/frmurlpage.ui +++ b/sw/uiconfig/swriter/ui/frmurlpage.ui @@ -5,6 +5,8 @@ <object class="GtkBox" id="FrameURLPage"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="valign">start</property> + <property name="hexpand">True</property> <property name="border_width">6</property> <property name="orientation">vertical</property> <property name="spacing">12</property> diff --git a/sw/uiconfig/swriter/ui/picturedialog.ui b/sw/uiconfig/swriter/ui/picturedialog.ui index 46b2c5b7684c..07449a43a13b 100644 --- a/sw/uiconfig/swriter/ui/picturedialog.ui +++ b/sw/uiconfig/swriter/ui/picturedialog.ui @@ -1,13 +1,16 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- Generated with glade 3.20.0 --> +<!-- Generated with glade 3.22.1 --> <interface domain="sw"> <requires lib="gtk+" version="3.18"/> <object class="GtkDialog" id="PictureDialog"> <property name="can_focus">False</property> <property name="border_width">6</property> <property name="title" translatable="yes" context="picturedialog|PictureDialog">Image</property> - <property name="resizable">False</property> + <property name="modal">True</property> <property name="type_hint">dialog</property> + <child> + <placeholder/> + </child> <child internal-child="vbox"> <object class="GtkBox" id="dialog-vbox1"> <property name="can_focus">False</property> @@ -18,12 +21,10 @@ <property name="can_focus">False</property> <property name="layout_style">end</property> <child> - <object class="GtkButton" id="ok"> - <property name="label">gtk-ok</property> + <object class="GtkButton" id="reset"> + <property name="label">gtk-revert-to-saved</property> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="can_default">True</property> - <property name="has_default">True</property> <property name="receives_default">True</property> <property name="use_stock">True</property> </object> @@ -34,10 +35,12 @@ </packing> </child> <child> - <object class="GtkButton" id="cancel"> - <property name="label">gtk-cancel</property> + <object class="GtkButton" id="ok"> + <property name="label">gtk-ok</property> <property name="visible">True</property> <property name="can_focus">True</property> + <property name="can_default">True</property> + <property name="has_default">True</property> <property name="receives_default">True</property> <property name="use_stock">True</property> </object> @@ -48,8 +51,8 @@ </packing> </child> <child> - <object class="GtkButton" id="help"> - <property name="label">gtk-help</property> + <object class="GtkButton" id="cancel"> + <property name="label">gtk-cancel</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> @@ -58,13 +61,12 @@ <packing> <property name="expand">False</property> <property name="fill">True</property> - <property name="position">3</property> - <property name="secondary">True</property> + <property name="position">2</property> </packing> </child> <child> - <object class="GtkButton" id="reset"> - <property name="label">gtk-revert-to-saved</property> + <object class="GtkButton" id="help"> + <property name="label">gtk-help</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> @@ -73,7 +75,8 @@ <packing> <property name="expand">False</property> <property name="fill">True</property> - <property name="position">4</property> + <property name="position">3</property> + <property name="secondary">True</property> </packing> </child> </object> @@ -99,6 +102,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> </child> <child type="tab"> @@ -118,6 +145,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">1</property> @@ -141,6 +192,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">2</property> @@ -164,6 +239,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">3</property> @@ -187,6 +286,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">4</property> @@ -210,6 +333,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">5</property> @@ -233,6 +380,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">6</property> @@ -256,6 +427,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">7</property> @@ -279,6 +474,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">8</property> @@ -302,6 +521,30 @@ <child> <placeholder/> </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="position">9</property> @@ -328,10 +571,10 @@ </object> </child> <action-widgets> + <action-widget response="101">reset</action-widget> <action-widget response="-5">ok</action-widget> <action-widget response="-6">cancel</action-widget> <action-widget response="-11">help</action-widget> - <action-widget response="0">reset</action-widget> </action-widgets> </object> </interface> diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx index c260359c1cf6..ae9a9c6a5f9c 100644 --- a/vcl/source/app/salvtables.cxx +++ b/vcl/source/app/salvtables.cxx @@ -1918,6 +1918,7 @@ public: virtual void scroll_to_row(int pos) override { + assert(m_xTreeView->IsUpdateMode() && "don't select when frozen"); disable_notify_events(); SvTreeListEntry* pEntry = m_xTreeView->GetEntry(nullptr, pos); m_xTreeView->MakeVisible(pEntry); @@ -2109,6 +2110,7 @@ public: virtual void scroll_to_row(const weld::TreeIter& rIter) override { + assert(m_xTreeView->IsUpdateMode() && "don't select when frozen"); disable_notify_events(); const SalInstanceTreeIter& rVclIter = static_cast<const SalInstanceTreeIter&>(rIter); m_xTreeView->MakeVisible(rVclIter.iter); diff --git a/vcl/unx/gtk3/gtk3gtkinst.cxx b/vcl/unx/gtk3/gtk3gtkinst.cxx index b2800cf970ee..ee4ec85daaa9 100644 --- a/vcl/unx/gtk3/gtk3gtkinst.cxx +++ b/vcl/unx/gtk3/gtk3gtkinst.cxx @@ -4058,13 +4058,19 @@ namespace comphelper::string::NaturalStringSorter* pSorter = static_cast<comphelper::string::NaturalStringSorter*>(data); gchar* pName1; gchar* pName2; - gtk_tree_model_get(pModel, a, 0, &pName1, -1); - gtk_tree_model_get(pModel, b, 0, &pName2, -1); + GtkTreeSortable* pSortable = GTK_TREE_SORTABLE(pModel); + gint sort_column_id(0); + GtkSortType order(GTK_SORT_ASCENDING); + gtk_tree_sortable_get_sort_column_id(pSortable, &sort_column_id, &order); + gtk_tree_model_get(pModel, a, sort_column_id, &pName1, -1); + gtk_tree_model_get(pModel, b, sort_column_id, &pName2, -1); gint ret = pSorter->compare(OUString(pName1, strlen(pName1), RTL_TEXTENCODING_UTF8), OUString(pName2, strlen(pName2), RTL_TEXTENCODING_UTF8)); g_free(pName1); g_free(pName2); - return ret; + if (ret == 0) + return ret; + return order == GTK_SORT_ASCENDING ? ret : -ret; } } @@ -4359,8 +4365,8 @@ public: ::comphelper::getProcessComponentContext(), Application::GetSettings().GetUILanguageTag().getLocale())); GtkTreeSortable* pSortable = GTK_TREE_SORTABLE(m_pTreeStore); - gtk_tree_sortable_set_sort_func(pSortable, m_nTextCol, sort_func, m_xSorter.get(), nullptr); gtk_tree_sortable_set_sort_column_id(pSortable, m_nTextCol, GTK_SORT_ASCENDING); + gtk_tree_sortable_set_sort_func(pSortable, m_nTextCol, sort_func, m_xSorter.get(), nullptr); } virtual int n_children() const override @@ -4388,6 +4394,7 @@ public: virtual void scroll_to_row(int pos) override { + assert(gtk_tree_view_get_model(m_pTreeView) && "don't select when frozen"); disable_notify_events(); GtkTreePath* path = gtk_tree_path_new_from_indices(pos, -1); gtk_tree_view_scroll_to_cell(m_pTreeView, path, nullptr, false, 0, 0); @@ -4583,6 +4590,7 @@ public: virtual void scroll_to_row(const weld::TreeIter& rIter) override { + assert(gtk_tree_view_get_model(m_pTreeView) && "don't select when frozen"); disable_notify_events(); const GtkInstanceTreeIter& rGtkIter = static_cast<const GtkInstanceTreeIter&>(rIter); GtkTreeModel *pModel = GTK_TREE_MODEL(m_pTreeStore); @@ -6080,8 +6088,8 @@ public: ::comphelper::getProcessComponentContext(), Application::GetSettings().GetUILanguageTag().getLocale())); GtkTreeSortable* pSortable = GTK_TREE_SORTABLE(m_pTreeModel); - gtk_tree_sortable_set_sort_func(pSortable, 0, sort_func, m_xSorter.get(), nullptr); gtk_tree_sortable_set_sort_column_id(pSortable, 0, GTK_SORT_ASCENDING); + gtk_tree_sortable_set_sort_func(pSortable, 0, sort_func, m_xSorter.get(), nullptr); } virtual bool has_entry() const override |