cui/source/inc/chardlg.hxx      |    4 -
 cui/source/tabpages/chardlg.cxx |  103 +---------------------------------------
 cui/uiconfig/ui/positionpage.ui |   66 +++----------------------
 3 files changed, 12 insertions(+), 161 deletions(-)

New commits:
commit 9a745d54a5c7470180f41494283983a3b8b84a51
Author: Samuel Mehrbrodt <samuel.mehrbr...@cib.de>
Date:   Fri Apr 22 15:22:03 2016 +0200

    tdf#89953 Character spacing: Allow to enter negative values
    
    without selecting from a condensed/expanded listbox first.
    
    Change-Id: I1111e6f1d7cdc6c0bc79d542f49c58f1022ad739
    Reviewed-on: https://gerrit.libreoffice.org/24301
    Tested-by: Jenkins <c...@libreoffice.org>
    Reviewed-by: Samuel Mehrbrodt <samuel.mehrbr...@cib.de>

diff --git a/cui/source/inc/chardlg.hxx b/cui/source/inc/chardlg.hxx
index ed2fc59..bfa100c 100644
--- a/cui/source/inc/chardlg.hxx
+++ b/cui/source/inc/chardlg.hxx
@@ -276,8 +276,6 @@ private:
 
     VclPtr<MetricField>        m_pScaleWidthMF;
 
-    VclPtr<ListBox>            m_pKerningLB;
-    VclPtr<FixedText>          m_pKerningFT;
     VclPtr<MetricField>        m_pKerningMF;
     VclPtr<CheckBox>           m_pPairKerningBtn;
 
@@ -310,11 +308,9 @@ public:
     virtual ~SvxCharPositionPage();
     virtual void dispose() override;
 
-    using SfxTabPage::ActivatePage;
     using SfxTabPage::DeactivatePage;
 
     virtual sfxpg       DeactivatePage( SfxItemSet* pSet = nullptr ) override;
-    virtual void        ActivatePage( const SfxItemSet& rSet ) override;
 
 public:
     static VclPtr<SfxTabPage>  Create( vcl::Window* pParent, const SfxItemSet* 
rSet );
diff --git a/cui/source/tabpages/chardlg.cxx b/cui/source/tabpages/chardlg.cxx
index d0d76c1..4f1cd06 100644
--- a/cui/source/tabpages/chardlg.cxx
+++ b/cui/source/tabpages/chardlg.cxx
@@ -80,10 +80,6 @@ using namespace ::com::sun::star;
 
 #define CLEARTITEM  rSet.InvalidateItem(nWhich)
 
-#define LW_NORMAL   0
-#define LW_EXPANDED 1
-#define LW_CONDENSED   2
-
 // static ----------------------------------------------------------------
 
 const sal_uInt16 SvxCharNamePage::pNameRanges[] =
@@ -2636,8 +2632,6 @@ SvxCharPositionPage::SvxCharPositionPage( vcl::Window* 
pParent, const SfxItemSet
     get(m_p270degRB, "270deg");
     get(m_pFitToLineCB, "fittoline");
     get(m_pScaleWidthMF, "scalewidthsb");
-    get(m_pKerningLB, "kerninglb");
-    get(m_pKerningFT, "kerningft");
     get(m_pKerningMF, "kerningsb");
     get(m_pPairKerningBtn, "pairkerning");
 
@@ -2669,8 +2663,6 @@ void SvxCharPositionPage::dispose()
     m_p270degRB.clear();
     m_pFitToLineCB.clear();
     m_pScaleWidthMF.clear();
-    m_pKerningLB.clear();
-    m_pKerningFT.clear();
     m_pKerningMF.clear();
     m_pPairKerningBtn.clear();
     SvxCharBasePage::dispose();
@@ -2688,8 +2680,6 @@ void SvxCharPositionPage::Initialize()
 
     m_pNormalPosBtn->Check();
     PositionHdl_Impl( m_pNormalPosBtn );
-    m_pKerningLB->SelectEntryPos( 0 );
-    KerningSelectHdl_Impl( *m_pKerningLB );
 
     Link<Button*,void> aLink2 = LINK( this, SvxCharPositionPage, 
PositionHdl_Impl );
     m_pHighPosBtn->SetClickHdl( aLink2 );
@@ -2711,7 +2701,6 @@ void SvxCharPositionPage::Initialize()
 
     m_pHighLowRB->SetClickHdl( LINK( this, SvxCharPositionPage, 
AutoPositionHdl_Impl ) );
     m_pFitToLineCB->SetClickHdl( LINK( this, SvxCharPositionPage, 
FitToLineHdl_Impl ) );
-    m_pKerningLB->SetSelectHdl( LINK( this, SvxCharPositionPage, 
KerningSelectHdl_Impl ) );
     m_pKerningMF->SetModifyHdl( LINK( this, SvxCharPositionPage, 
KerningModifyHdl_Impl ) );
     m_pScaleWidthMF->SetModifyHdl( LINK( this, SvxCharPositionPage, 
ScaleWidthModifyHdl_Impl ) );
 }
@@ -2830,48 +2819,12 @@ IMPL_LINK_TYPED( SvxCharPositionPage, 
FitToLineHdl_Impl, Button*, pBox, void )
 }
 
 
-IMPL_LINK_NOARG_TYPED(SvxCharPositionPage, KerningSelectHdl_Impl, ListBox&, 
void)
-{
-    if ( m_pKerningLB->GetSelectEntryPos() > LW_NORMAL )
-    {
-        m_pKerningFT->Enable();
-        m_pKerningMF->Enable();
-
-        if ( m_pKerningLB->GetSelectEntryPos() == LW_CONDENSED )
-        {
-            // Condensed -> max value == 1/6 of the current font height
-            SvxFont& rFont = GetPreviewFont();
-            long nMax = rFont.GetFontSize().Height() / 6;
-            m_pKerningMF->SetMax( m_pKerningMF->Normalize( nMax ), FUNIT_TWIP 
);
-            m_pKerningMF->SetLast( m_pKerningMF->GetMax( 
m_pKerningMF->GetUnit() ) );
-        }
-        else
-        {
-            m_pKerningMF->SetMax( 9999 );
-            m_pKerningMF->SetLast( 9999 );
-        }
-    }
-    else
-    {
-        m_pKerningMF->SetValue( 0 );
-        m_pKerningFT->Disable();
-        m_pKerningMF->Disable();
-    }
-
-    KerningModifyHdl_Impl( *m_pKerningMF );
-}
-
-
 IMPL_LINK_NOARG_TYPED(SvxCharPositionPage, KerningModifyHdl_Impl, Edit&, void)
 {
     long nVal = static_cast<long>(m_pKerningMF->GetValue());
     nVal = LogicToLogic( nVal, MAP_POINT, MAP_TWIP );
     long nKern = (short)m_pKerningMF->Denormalize( nVal );
 
-    // Condensed? -> then negative
-    if ( m_pKerningLB->GetSelectEntryPos() == LW_CONDENSED )
-        nKern *= -1;
-
     SvxFont& rFont = GetPreviewFont();
     SvxFont& rCJKFont = GetPreviewCJKFont();
     SvxFont& rCTLFont = GetPreviewCTLFont();
@@ -2912,25 +2865,6 @@ IMPL_LINK_NOARG_TYPED(SvxCharPositionPage, 
ScaleWidthModifyHdl_Impl, Edit&, void
     m_pPreviewWin->SetFontWidthScale( sal_uInt16( m_pScaleWidthMF->GetValue() 
) );
 }
 
-void  SvxCharPositionPage::ActivatePage( const SfxItemSet& rSet )
-{
-    //update the preview
-    SvxCharBasePage::ActivatePage( rSet );
-
-    //the only thing that has to be checked is the max. allowed value for the
-    //condense edit field
-    if ( m_pKerningLB->GetSelectEntryPos() == LW_CONDENSED )
-    {
-        // Condensed -> max value == 1/6 of the current font height
-        SvxFont& rFont = GetPreviewFont();
-        long nMax = rFont.GetFontSize().Height() / 6;
-        long nKern = (short)m_pKerningMF->Denormalize( LogicToLogic( 
static_cast<long>(m_pKerningMF->GetValue()), MAP_POINT, MAP_TWIP ) );
-        m_pKerningMF->SetMax( m_pKerningMF->Normalize( nKern > nMax ? nKern : 
nMax ), FUNIT_TWIP );
-        m_pKerningMF->SetLast( m_pKerningMF->GetMax( m_pKerningMF->GetUnit() ) 
);
-    }
-}
-
-
 SfxTabPage::sfxpg SvxCharPositionPage::DeactivatePage( SfxItemSet* _pSet )
 {
     if ( _pSet )
@@ -3077,22 +3011,6 @@ void SvxCharPositionPage::Reset( const SfxItemSet* rSet )
         rCJKFont.SetFixKerning( (short)nKern );
         rCTLFont.SetFixKerning( (short)nKern );
 
-        if ( nKerning > 0 )
-        {
-            m_pKerningLB->SelectEntryPos( LW_EXPANDED );
-        }
-        else if ( nKerning < 0 )
-        {
-            m_pKerningLB->SelectEntryPos( LW_CONDENSED );
-            nKerning = -nKerning;
-        }
-        else
-        {
-            nKerning = 0;
-            m_pKerningLB->SelectEntryPos( LW_NORMAL );
-        }
-        //enable/disable and set min/max of the Edit
-        KerningSelectHdl_Impl(*m_pKerningLB);
         //the attribute value must be displayed also if it's above the maximum 
allowed value
         long nVal = static_cast<long>(m_pKerningMF->GetMax());
         if(nVal < nKerning)
@@ -3195,7 +3113,6 @@ void SvxCharPositionPage::ChangesApplied()
     m_p270degRB->SaveValue();
     m_pFitToLineCB->SaveValue();
     m_pScaleWidthMF->SaveValue();
-    m_pKerningLB->SaveValue();
     m_pKerningMF->SaveValue();
     m_pPairKerningBtn->SaveValue();
 }
@@ -3254,19 +3171,12 @@ bool SvxCharPositionPage::FillItemSet( SfxItemSet* rSet 
)
     // Kerning
     nWhich = GetWhich( SID_ATTR_CHAR_KERNING );
     pOld = GetOldItem( *rSet, SID_ATTR_CHAR_KERNING );
-    sal_Int32 nPos = m_pKerningLB->GetSelectEntryPos();
     short nKerning = 0;
     SfxMapUnit eUnit = rSet->GetPool()->GetMetric( nWhich );
 
-    if ( nPos == LW_EXPANDED || nPos == LW_CONDENSED )
-    {
-        long nTmp = static_cast<long>(m_pKerningMF->GetValue());
-        long nVal = LogicToLogic( nTmp, MAP_POINT, (MapUnit)eUnit );
-        nKerning = (short)m_pKerningMF->Denormalize( nVal );
-
-        if ( nPos == LW_CONDENSED )
-            nKerning *= - 1;
-    }
+    long nTmp = static_cast<long>(m_pKerningMF->GetValue());
+    long nVal = LogicToLogic( nTmp, MAP_POINT, (MapUnit)eUnit );
+    nKerning = (short)m_pKerningMF->Denormalize( nVal );
 
     if ( pOld )
     {
@@ -3275,12 +3185,7 @@ bool SvxCharPositionPage::FillItemSet( SfxItemSet* rSet )
             bChanged = false;
     }
 
-    if ( !bChanged &&
-         ( m_pKerningLB->GetSavedValue() == LISTBOX_ENTRY_NOTFOUND ||
-           ( m_pKerningMF->GetSavedValue().isEmpty() && 
m_pKerningMF->IsEnabled() ) ) )
-        bChanged = true;
-
-    if ( bChanged && nPos != LISTBOX_ENTRY_NOTFOUND )
+    if ( bChanged )
     {
         rSet->Put( SvxKerningItem( nKerning, nWhich ) );
         bModified = true;
diff --git a/cui/uiconfig/ui/positionpage.ui b/cui/uiconfig/ui/positionpage.ui
index 22776ed..86ab691 100644
--- a/cui/uiconfig/ui/positionpage.ui
+++ b/cui/uiconfig/ui/positionpage.ui
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.16.1 -->
+<!-- Generated with glade 3.18.3 -->
 <interface>
-  <!-- interface-requires LibreOffice 1.0 -->
   <requires lib="gtk+" version="3.0"/>
+  <requires lib="LibreOffice" version="1.0"/>
   <object class="GtkAdjustment" id="adjustment1">
     <property name="lower">1</property>
     <property name="upper">100</property>
@@ -18,27 +18,11 @@
     <property name="page_increment">10</property>
   </object>
   <object class="GtkAdjustment" id="adjustment3">
-    <property name="upper">999.89999999999998</property>
+    <property name="lower">-2</property>
+    <property name="upper">1000</property>
     <property name="step_increment">1</property>
     <property name="page_increment">10</property>
   </object>
-  <object class="GtkListStore" id="liststore1">
-    <columns>
-      <!-- column-name gchararray1 -->
-      <column type="gchararray"/>
-    </columns>
-    <data>
-      <row>
-        <col id="0" translatable="yes">Default</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Expanded</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Condensed</col>
-      </row>
-    </data>
-  </object>
   <object class="GtkBox" id="PositionPage">
     <property name="visible">True</property>
     <property name="can_focus">False</property>
@@ -134,16 +118,14 @@
                       <object class="GtkLabel" id="raiselower">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes">Raise/lower 
by</property>
                         <property name="use_underline">True</property>
                         <property 
name="mnemonic_widget">raiselowersb:0%</property>
+                        <property name="xalign">0</property>
                       </object>
                       <packing>
                         <property name="left_attach">0</property>
                         <property name="top_attach">0</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -156,8 +138,6 @@
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="top_attach">0</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -170,8 +150,6 @@
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="top_attach">1</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -186,24 +164,20 @@
                       <packing>
                         <property name="left_attach">2</property>
                         <property name="top_attach">0</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
                       <object class="GtkLabel" id="relativefontsize">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes">Relative 
font size</property>
                         <property name="use_underline">True</property>
                         <property 
name="mnemonic_widget">fontsizesb:0%</property>
+                        <property name="xalign">0</property>
                       </object>
                       <packing>
                         <property name="left_attach">0</property>
                         <property name="top_attach">1</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                     <child>
@@ -436,30 +410,6 @@
                 <property name="can_focus">False</property>
                 <property name="spacing">12</property>
                 <child>
-                  <object class="GtkComboBox" id="kerninglb">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="model">liststore1</property>
-                  </object>
-                  <packing>
-                    <property name="expand">False</property>
-                    <property name="fill">True</property>
-                    <property name="position">0</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkLabel" id="kerningft">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="label" translatable="yes">by</property>
-                  </object>
-                  <packing>
-                    <property name="expand">False</property>
-                    <property name="fill">True</property>
-                    <property name="position">1</property>
-                  </packing>
-                </child>
-                <child>
                   <object class="GtkSpinButton" id="kerningsb:0pt">
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
@@ -470,7 +420,7 @@
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">True</property>
-                    <property name="position">2</property>
+                    <property name="position">0</property>
                   </packing>
                 </child>
                 <child>
@@ -485,7 +435,7 @@
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">True</property>
-                    <property name="position">3</property>
+                    <property name="position">1</property>
                   </packing>
                 </child>
               </object>
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to