vcl/uiconfig/ui/printerpaperpage.ui | 40 ++++++++++++++++++++++++------------ vcl/unx/generic/print/prtsetup.cxx | 16 +++++++++++++- vcl/unx/generic/print/prtsetup.hxx | 3 ++ 3 files changed, 45 insertions(+), 14 deletions(-)
New commits: commit 75fc4934c3aafcd83d9bbee63d8d24cbddae8ea0 Author: Katarina Behrens <katarina.behr...@cib.de> Date: Fri Oct 27 18:02:35 2017 +0200 tdf#79077: copy 'paper from printer setup' toggle into printer properties dialog, it is rather badly accessible (almost invisible) in File > Print > Options tabpage Change-Id: I18d538a20dc207c359ae1e7c2c914a68daf58f31 Reviewed-on: https://gerrit.libreoffice.org/43956 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Katarina Behrens <katarina.behr...@cib.de> diff --git a/vcl/uiconfig/ui/printerpaperpage.ui b/vcl/uiconfig/ui/printerpaperpage.ui index 90d72859708d..c8d834a1e1e5 100644 --- a/vcl/uiconfig/ui/printerpaperpage.ui +++ b/vcl/uiconfig/ui/printerpaperpage.ui @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- Generated with glade 3.18.3 --> +<!-- Generated with glade 3.20.0 --> <interface domain="vcl"> <requires lib="gtk+" version="3.0"/> <object class="GtkGrid" id="PrinterPaperPage"> @@ -16,52 +16,52 @@ <object class="GtkLabel" id="paperft"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="xalign">1</property> <property name="label" translatable="yes" context="printerpaperpage|paperft">_Paper size:</property> <property name="use_underline">True</property> + <property name="xalign">1</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="GtkLabel" id="label4"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="xalign">1</property> <property name="label" translatable="yes" context="printerpaperpage|label4">_Orientation:</property> <property name="use_underline">True</property> + <property name="xalign">1</property> </object> <packing> <property name="left_attach">0</property> - <property name="top_attach">1</property> + <property name="top_attach">2</property> </packing> </child> <child> <object class="GtkLabel" id="duplexft"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="xalign">1</property> <property name="label" translatable="yes" context="printerpaperpage|duplexft">_Duplex:</property> <property name="use_underline">True</property> + <property name="xalign">1</property> </object> <packing> <property name="left_attach">0</property> - <property name="top_attach">2</property> + <property name="top_attach">3</property> </packing> </child> <child> <object class="GtkLabel" id="slotft"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="xalign">1</property> <property name="label" translatable="yes" context="printerpaperpage|slotft">Paper tray:</property> <property name="use_underline">True</property> + <property name="xalign">1</property> </object> <packing> <property name="left_attach">0</property> - <property name="top_attach">3</property> + <property name="top_attach">4</property> </packing> </child> <child> @@ -71,7 +71,7 @@ </object> <packing> <property name="left_attach">1</property> - <property name="top_attach">0</property> + <property name="top_attach">1</property> </packing> </child> <child> @@ -85,7 +85,7 @@ </object> <packing> <property name="left_attach">1</property> - <property name="top_attach">1</property> + <property name="top_attach">2</property> </packing> </child> <child> @@ -95,7 +95,7 @@ </object> <packing> <property name="left_attach">1</property> - <property name="top_attach">2</property> + <property name="top_attach">3</property> </packing> </child> <child> @@ -105,7 +105,21 @@ </object> <packing> <property name="left_attach">1</property> - <property name="top_attach">3</property> + <property name="top_attach">4</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="papersizefromsetup"> + <property name="label" translatable="yes" context="printerpaperpage|papersizefromsetup">Use only paper size from printer preferences</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">2</property> </packing> </child> </object> diff --git a/vcl/unx/generic/print/prtsetup.cxx b/vcl/unx/generic/print/prtsetup.cxx index 3faddbf3e7b8..dc667fbc9825 100644 --- a/vcl/unx/generic/print/prtsetup.cxx +++ b/vcl/unx/generic/print/prtsetup.cxx @@ -152,6 +152,7 @@ RTSPaperPage::RTSPaperPage(RTSDialog* pParent) : TabPage(pParent->m_pTabControl, "PrinterPaperPage", "vcl/ui/printerpaperpage.ui") , m_pParent( pParent ) { + get(m_pCbFromSetup, "papersizefromsetup"); get(m_pPaperText, "paperft"); get(m_pPaperBox, "paperlb"); get(m_pOrientBox, "orientlb"); @@ -164,6 +165,8 @@ RTSPaperPage::RTSPaperPage(RTSDialog* pParent) m_pOrientBox->SetSelectHdl( LINK( this, RTSPaperPage, SelectHdl ) ); m_pDuplexBox->SetSelectHdl( LINK( this, RTSPaperPage, SelectHdl ) ); m_pSlotBox->SetSelectHdl( LINK( this, RTSPaperPage, SelectHdl ) ); + m_pCbFromSetup->SetToggleHdl( LINK( this, RTSPaperPage, CheckBoxHdl ) ); + sal_Int32 nPos = 0; @@ -189,6 +192,7 @@ void RTSPaperPage::dispose() { m_pParent.clear(); m_pPaperText.clear(); + m_pCbFromSetup.clear(); m_pPaperBox.clear(); m_pOrientBox.clear(); m_pDuplexText.clear(); @@ -242,9 +246,11 @@ void RTSPaperPage::update() m_pSlotBox->Enable( false ); } + if ( m_pParent->m_aJobData.m_bPapersizeFromSetup ) + m_pCbFromSetup->Check( m_pParent->m_aJobData.m_bPapersizeFromSetup ); // disable those, unless user wants to use papersize from printer prefs // as they have no influence on what's going to be printed anyway - if (!m_pParent->m_aJobData.m_bPapersizeFromSetup) + else { m_pPaperBox->Enable( false ); m_pOrientBox->Enable( false ); @@ -283,6 +289,14 @@ IMPL_LINK( RTSPaperPage, SelectHdl, ListBox&, rBox, void ) m_pParent->SetDataModified( true ); } +IMPL_LINK( RTSPaperPage, CheckBoxHdl, CheckBox&, /*cBox*/, void ) +{ + bool bFromSetup = m_pCbFromSetup->IsChecked(); + m_pParent->m_aJobData.m_bPapersizeFromSetup = bFromSetup; + m_pPaperBox->Enable( bFromSetup ); + m_pOrientBox->Enable( bFromSetup ); + m_pParent->SetDataModified( true ); +} /* * RTSDevicePage */ diff --git a/vcl/unx/generic/print/prtsetup.hxx b/vcl/unx/generic/print/prtsetup.hxx index ff4d3fb01df7..924d4c54b27f 100644 --- a/vcl/unx/generic/print/prtsetup.hxx +++ b/vcl/unx/generic/print/prtsetup.hxx @@ -78,6 +78,8 @@ class RTSPaperPage : public TabPage { VclPtr<RTSDialog> m_pParent; + VclPtr<CheckBox> m_pCbFromSetup; + VclPtr<FixedText> m_pPaperText; VclPtr<ListBox> m_pPaperBox; @@ -90,6 +92,7 @@ class RTSPaperPage : public TabPage VclPtr<ListBox> m_pSlotBox; DECL_LINK( SelectHdl, ListBox&, void ); + DECL_LINK( CheckBoxHdl, CheckBox&, void ); public: explicit RTSPaperPage( RTSDialog* ); virtual ~RTSPaperPage() override; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits