summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRishabh Kumar <kris.kr296@gmail.com>2016-08-23 04:07:24 +0530
committerKatarina Behrens <Katarina.Behrens@cib.de>2016-08-26 12:12:14 +0000
commit2c2f0eaf6ae6f8b0e235e848b25959301d0941bd (patch)
treee452900ddf4d7b90c5c938df7a83ab001fd51a63
parentc73592e38a075242bc90c5cb2119f163defdad25 (diff)
[GSoC] Remove popup confirmation dialog in fill style tabs
Enable users to apply custom values without adding it to the preset list Change-Id: Ida00c6eeb06e717a8aed30f4d230ab616c5b03dd Reviewed-on: https://gerrit.libreoffice.org/28333 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Yousuf Philips <philipz85@hotmail.com> Tested-by: Yousuf Philips <philipz85@hotmail.com> Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
-rw-r--r--cui/source/inc/cuitabarea.hxx6
-rw-r--r--cui/source/tabpages/tpcolor.cxx39
-rw-r--r--cui/source/tabpages/tpgradnt.cxx95
-rw-r--r--cui/source/tabpages/tphatch.cxx76
-rw-r--r--cui/source/tabpages/tppattern.cxx50
5 files changed, 26 insertions, 240 deletions
diff --git a/cui/source/inc/cuitabarea.hxx b/cui/source/inc/cuitabarea.hxx
index 0d65c261e691..ed510c092f99 100644
--- a/cui/source/inc/cuitabarea.hxx
+++ b/cui/source/inc/cuitabarea.hxx
@@ -413,7 +413,6 @@ private:
DECL_LINK_TYPED( ModifiedSliderHdl_Impl, Slider*, void );
void ModifiedHdl_Impl(void*);
- long CheckChanges_Impl();
void SetControlState_Impl( css::awt::GradientStyle eXGS );
sal_Int32 SearchGradientList(const OUString& rGradientName);
@@ -496,7 +495,6 @@ private:
DECL_LINK_TYPED( ClickRenameHdl_Impl, SvxPresetListBox*, void );
DECL_LINK_TYPED( ClickDeleteHdl_Impl, SvxPresetListBox*, void );
- long CheckChanges_Impl();
sal_Int32 SearchHatchList(const OUString& rHatchName);
public:
@@ -667,8 +665,6 @@ private:
DECL_LINK_TYPED( ClickRenameHdl_Impl, SvxPresetListBox*, void );
DECL_LINK_TYPED( ClickDeleteHdl_Impl, SvxPresetListBox*, void );
- long CheckChanges_Impl();
-
public:
SvxPatternTabPage( vcl::Window* pParent, const SfxItemSet& rInAttrs );
virtual ~SvxPatternTabPage();
@@ -799,8 +795,6 @@ private:
static sal_Int32 SearchColorList(OUString const & aColorName);
DECL_LINK_TYPED( ModifiedHdl_Impl, Edit&, void );
- long CheckChanges_Impl();
-
void UpdateModified();
css::uno::Reference< css::uno::XComponentContext > m_context;
public:
diff --git a/cui/source/tabpages/tpcolor.cxx b/cui/source/tabpages/tpcolor.cxx
index 9571073ccfa4..696379c76564 100644
--- a/cui/source/tabpages/tpcolor.cxx
+++ b/cui/source/tabpages/tpcolor.cxx
@@ -303,9 +303,6 @@ void SvxColorTabPage::ActivatePage( const SfxItemSet& )
DeactivateRC SvxColorTabPage::DeactivatePage( SfxItemSet* _pSet )
{
- if ( CheckChanges_Impl() == -1L )
- return DeactivateRC::KeepPage;
-
if( _pSet )
FillItemSet( _pSet );
@@ -313,42 +310,6 @@ DeactivateRC SvxColorTabPage::DeactivatePage( SfxItemSet* _pSet )
}
-long SvxColorTabPage::CheckChanges_Impl()
-{
- if( ColorToPercent_Impl( aCurrentColor.GetRed() ) != ColorToPercent_Impl( aPreviousColor.GetRed() ) ||
- ColorToPercent_Impl( aCurrentColor.GetGreen() ) != ColorToPercent_Impl( aPreviousColor.GetGreen() ) ||
- ColorToPercent_Impl( aCurrentColor.GetBlue() ) != ColorToPercent_Impl( aPreviousColor.GetBlue() ) )
- {
- ResMgr& rMgr = CUI_MGR();
- Image aWarningBoxImage = WarningBox::GetStandardImage();
- ScopedVclPtrInstance<SvxMessDialog> aMessDlg( GetParentDialog(),
- SVX_RESSTR( RID_SVXSTR_COLOR ),
- ResId( RID_SVXSTR_ASK_CHANGE_COLOR, rMgr ),
- &aWarningBoxImage );
- aMessDlg->SetButtonText( SvxMessDialogButton::N1,
- ResId( RID_SVXSTR_CHANGE, rMgr ) );
- aMessDlg->SetButtonText( SvxMessDialogButton::N2,
- ResId( RID_SVXSTR_ADD, rMgr ) );
- aMessDlg->DisableButton( SvxMessDialogButton::N1 );
-
- short nRet = aMessDlg->Execute();
-
- switch( nRet )
- {
- case RET_BTN_2:
- {
- ClickAddHdl_Impl( nullptr );
- }
- break;
-
- case RET_CANCEL:
- break;
- }
- }
- return 0;
-}
-
-
bool SvxColorTabPage::FillItemSet( SfxItemSet* rSet )
{
if( ( nDlgType != 0 ) ||
diff --git a/cui/source/tabpages/tpgradnt.cxx b/cui/source/tabpages/tpgradnt.cxx
index bb62b55fe29c..12cc67df15ad 100644
--- a/cui/source/tabpages/tpgradnt.cxx
+++ b/cui/source/tabpages/tpgradnt.cxx
@@ -254,9 +254,6 @@ void SvxGradientTabPage::ActivatePage( const SfxItemSet& )
DeactivateRC SvxGradientTabPage::DeactivatePage( SfxItemSet* _pSet )
{
- if( CheckChanges_Impl() == -1L )
- return DeactivateRC::KeepPage;
-
if( _pSet )
FillItemSet( _pSet );
@@ -264,94 +261,28 @@ DeactivateRC SvxGradientTabPage::DeactivatePage( SfxItemSet* _pSet )
}
-long SvxGradientTabPage::CheckChanges_Impl()
-{
- // is used here in order to NOT lose changes
- XGradient aTmpGradient( m_pLbColorFrom->GetSelectEntryColor(),
- m_pLbColorTo->GetSelectEntryColor(),
- (css::awt::GradientStyle) m_pLbGradientType->GetSelectEntryPos(),
- static_cast<long>(m_pMtrAngle->GetValue() * 10), // should be changed in resource
- (sal_uInt16) m_pMtrCenterX->GetValue(),
- (sal_uInt16) m_pMtrCenterY->GetValue(),
- (sal_uInt16) m_pMtrBorder->GetValue(),
- (sal_uInt16) m_pMtrColorFrom->GetValue(),
- (sal_uInt16) m_pMtrColorTo->GetValue() );
-
- size_t nPos = m_pGradientLB->GetSelectItemPos();
- if( nPos != VALUESET_ITEM_NOTFOUND )
- {
- XGradient aGradient = m_pGradientList->GetGradient(nPos)->GetGradient();
-
- if( !( aTmpGradient == aGradient ) )
- {
- ResMgr& rMgr = CUI_MGR();
- Image aWarningBoxImage = WarningBox::GetStandardImage();
- ScopedVclPtrInstance<SvxMessDialog> aMessDlg( GetParentDialog(),
- SVX_RESSTR( RID_SVXSTR_GRADIENT ),
- CUI_RESSTR( RID_SVXSTR_ASK_CHANGE_GRADIENT ),
- &aWarningBoxImage );
- assert(aMessDlg && "Dialog creation failed!");
- aMessDlg->SetButtonText( SvxMessDialogButton::N1,
- OUString( ResId( RID_SVXSTR_CHANGE, rMgr ) ) );
- aMessDlg->SetButtonText( SvxMessDialogButton::N2,
- OUString( ResId( RID_SVXSTR_ADD, rMgr ) ) );
-
- short nRet = aMessDlg->Execute();
-
- switch( nRet )
- {
- case RET_BTN_1:
- {
- ClickModifyHdl_Impl( nullptr );
- }
- break;
-
- case RET_BTN_2:
- {
- ClickAddHdl_Impl( nullptr );
- }
- break;
-
- case RET_CANCEL:
- break;
- }
- }
- }
- nPos = m_pGradientLB->GetSelectItemPos();
- if( nPos != VALUESET_ITEM_NOTFOUND )
- {
- *m_pPos = static_cast<sal_Int32>(nPos);
- }
- return 0L;
-}
-
-
bool SvxGradientTabPage::FillItemSet( SfxItemSet* rSet )
{
if( m_nDlgType == 0 && *m_pPageType == PageType::Gradient && !*m_pbAreaTP )
{
- // CheckChanges(); <-- duplicate inquiry ?
-
std::unique_ptr<XGradient> pXGradient;
+ pXGradient.reset(new XGradient( m_pLbColorFrom->GetSelectEntryColor(),
+ m_pLbColorTo->GetSelectEntryColor(),
+ (css::awt::GradientStyle) m_pLbGradientType->GetSelectEntryPos(),
+ static_cast<long>(m_pMtrAngle->GetValue() * 10), // should be changed in resource
+ (sal_uInt16) m_pMtrCenterX->GetValue(),
+ (sal_uInt16) m_pMtrCenterY->GetValue(),
+ (sal_uInt16) m_pMtrBorder->GetValue(),
+ (sal_uInt16) m_pMtrColorFrom->GetValue(),
+ (sal_uInt16) m_pMtrColorTo->GetValue() ));
+
OUString aString;
size_t nPos = m_pGradientLB->GetSelectItemPos();
if( nPos != VALUESET_ITEM_NOTFOUND )
{
- pXGradient.reset(new XGradient(m_pGradientList->GetGradient(nPos)->GetGradient()));
- aString = m_pGradientLB->GetItemText( m_pGradientLB->GetSelectItemId() );
- }
- else
- // gradient was passed (unidentified)
- {
- pXGradient.reset(new XGradient( m_pLbColorFrom->GetSelectEntryColor(),
- m_pLbColorTo->GetSelectEntryColor(),
- (css::awt::GradientStyle) m_pLbGradientType->GetSelectEntryPos(),
- static_cast<long>(m_pMtrAngle->GetValue() * 10), // should be changed in resource
- (sal_uInt16) m_pMtrCenterX->GetValue(),
- (sal_uInt16) m_pMtrCenterY->GetValue(),
- (sal_uInt16) m_pMtrBorder->GetValue(),
- (sal_uInt16) m_pMtrColorFrom->GetValue(),
- (sal_uInt16) m_pMtrColorTo->GetValue() ));
+ XGradient aTmpGradient = m_pGradientList->GetGradient( static_cast<sal_uInt16>(nPos) )->GetGradient();
+ if( *pXGradient == aTmpGradient )
+ aString = m_pGradientLB->GetItemText( m_pGradientLB->GetSelectItemId() );
}
sal_uInt16 nValue = 0;
diff --git a/cui/source/tabpages/tphatch.cxx b/cui/source/tabpages/tphatch.cxx
index a536aafb27d3..32abc8ed0ad9 100644
--- a/cui/source/tabpages/tphatch.cxx
+++ b/cui/source/tabpages/tphatch.cxx
@@ -255,9 +255,6 @@ void SvxHatchTabPage::ActivatePage( const SfxItemSet& rSet )
DeactivateRC SvxHatchTabPage::DeactivatePage( SfxItemSet* _pSet )
{
- if ( CheckChanges_Impl() == -1L )
- return DeactivateRC::KeepPage;
-
if( _pSet )
FillItemSet( _pSet );
@@ -265,53 +262,6 @@ DeactivateRC SvxHatchTabPage::DeactivatePage( SfxItemSet* _pSet )
}
-long SvxHatchTabPage::CheckChanges_Impl()
-{
- if( m_pMtrDistance->IsValueChangedFromSaved() ||
- m_pMtrAngle->IsValueChangedFromSaved() ||
- m_pLbLineType->IsValueChangedFromSaved() ||
- m_pLbLineColor->IsValueChangedFromSaved() ||
- m_pHatchLB->IsValueChangedFromSaved() )
- {
- ResMgr& rMgr = CUI_MGR();
- Image aWarningBoxImage = WarningBox::GetStandardImage();
- ScopedVclPtrInstance<SvxMessDialog> aMessDlg( GetParentDialog(),
- SVX_RESSTR( RID_SVXSTR_HATCH ),
- CUI_RESSTR( RID_SVXSTR_ASK_CHANGE_HATCH ),
- &aWarningBoxImage );
- assert(aMessDlg && "Dialog creation failed!");
- aMessDlg->SetButtonText( SvxMessDialogButton::N1,
- OUString( ResId( RID_SVXSTR_CHANGE, rMgr ) ) );
- aMessDlg->SetButtonText( SvxMessDialogButton::N2,
- OUString( ResId( RID_SVXSTR_ADD, rMgr ) ) );
-
- short nRet = aMessDlg->Execute();
-
- switch( nRet )
- {
- case RET_BTN_1:
- {
- ClickModifyHdl_Impl( nullptr );
- }
- break;
-
- case RET_BTN_2:
- {
- ClickAddHdl_Impl( nullptr );
- }
- break;
-
- case RET_CANCEL:
- break;
- }
- }
-
- size_t nPos = m_pHatchLB->GetSelectItemPos();
- if( nPos != VALUESET_ITEM_NOTFOUND )
- *m_pPos = static_cast<sal_Int32>(nPos);
- return 0L;
-}
-
sal_Int32 SvxHatchTabPage::SearchHatchList(const OUString& rHatchName)
{
long nCount = m_pHatchingList->Count();
@@ -335,24 +285,22 @@ bool SvxHatchTabPage::FillItemSet( SfxItemSet* rSet )
{
if( *m_pPageType == PageType::Hatch )
{
- // CheckChanges(); <-- duplicate inquiry ?
-
std::unique_ptr<XHatch> pXHatch;
+ pXHatch.reset(new XHatch( m_pLbLineColor->GetSelectEntryColor(),
+ (css::drawing::HatchStyle) m_pLbLineType->GetSelectEntryPos(),
+ GetCoreValue( *m_pMtrDistance, m_ePoolUnit ),
+ static_cast<long>(m_pMtrAngle->GetValue() * 10) ));
+
OUString aString;
- size_t nPos = m_pHatchLB->GetSelectItemPos();
- if( nPos != VALUESET_ITEM_NOTFOUND )
- {
- pXHatch.reset(new XHatch(m_pHatchingList->GetHatch(nPos)->GetHatch()));
- aString = m_pHatchLB->GetItemText( m_pHatchLB->GetSelectItemId() );
- }
- // gradient has been (unidentifiedly) passed
- else
+ if( !( m_pMtrDistance->IsValueChangedFromSaved() ||
+ m_pMtrAngle->IsValueChangedFromSaved() ||
+ m_pLbLineType->IsValueChangedFromSaved() ||
+ m_pLbLineColor->IsValueChangedFromSaved() ||
+ m_pHatchLB->IsValueChangedFromSaved() ) )
{
- pXHatch.reset(new XHatch( m_pLbLineColor->GetSelectEntryColor(),
- (css::drawing::HatchStyle) m_pLbLineType->GetSelectEntryPos(),
- GetCoreValue( *m_pMtrDistance, m_ePoolUnit ),
- static_cast<long>(m_pMtrAngle->GetValue() * 10) ));
+ aString = m_pHatchLB->GetItemText( m_pHatchLB->GetSelectItemId() );;
}
+
assert( pXHatch && "XHatch couldn't be created" );
rSet->Put( XFillStyleItem( drawing::FillStyle_HATCH ) );
rSet->Put( XFillHatchItem( aString, *pXHatch ) );
diff --git a/cui/source/tabpages/tppattern.cxx b/cui/source/tabpages/tppattern.cxx
index f76b04a7231c..1f0b9d841c94 100644
--- a/cui/source/tabpages/tppattern.cxx
+++ b/cui/source/tabpages/tppattern.cxx
@@ -245,9 +245,6 @@ void SvxPatternTabPage::ActivatePage( const SfxItemSet& )
DeactivateRC SvxPatternTabPage::DeactivatePage( SfxItemSet* _pSet)
{
- if ( CheckChanges_Impl() == -1L )
- return DeactivateRC::KeepPage;
-
if( _pSet )
FillItemSet( _pSet );
@@ -263,7 +260,7 @@ bool SvxPatternTabPage::FillItemSet( SfxItemSet* _rOutAttrs )
{
_rOutAttrs->Put(XFillStyleItem(drawing::FillStyle_BITMAP));
size_t nPos = m_pPatternLB->GetSelectItemPos();
- if(VALUESET_ITEM_NOTFOUND != nPos)
+ if( !m_bPtrnChanged && VALUESET_ITEM_NOTFOUND != nPos)
{
const XBitmapEntry* pXBitmapEntry = m_pPatternList->GetBitmap(nPos);
const OUString aString( m_pPatternLB->GetItemText( m_pPatternLB->GetSelectItemId() ) );
@@ -423,51 +420,6 @@ IMPL_LINK_NOARG_TYPED(SvxPatternTabPage, ChangePatternHdl_Impl, ValueSet*, void)
}
-long SvxPatternTabPage::CheckChanges_Impl()
-{
- size_t nPos = m_pPatternLB->GetSelectItemPos();
- if( nPos != VALUESET_ITEM_NOTFOUND )
- {
- if( m_bPtrnChanged )
- {
- ResMgr& rMgr = CUI_MGR();
- Image aWarningBoxImage = WarningBox::GetStandardImage();
- ScopedVclPtrInstance<SvxMessDialog> aMessDlg( GetParentDialog(),
- SVX_RES( RID_SVXSTR_PATTERN ),
- CUI_RES( RID_SVXSTR_ASK_CHANGE_PATTERN ),
- &aWarningBoxImage );
- assert(aMessDlg && "Dialog creation failed!");
- aMessDlg->SetButtonText( SvxMessDialogButton::N1, ResId( RID_SVXSTR_CHANGE, rMgr ) );
- aMessDlg->SetButtonText( SvxMessDialogButton::N2, ResId( RID_SVXSTR_ADD, rMgr ) );
-
- short nRet = aMessDlg->Execute();
-
- switch( nRet )
- {
- case RET_BTN_1:
- {
- ClickModifyHdl_Impl( nullptr );
- }
- break;
-
- case RET_BTN_2:
- {
- ClickAddHdl_Impl( nullptr );
- }
- break;
-
- case RET_CANCEL:
- break;
- }
- }
- }
- nPos = m_pPatternLB->GetSelectItemPos();
- if( nPos != VALUESET_ITEM_NOTFOUND )
- *m_pPos = static_cast<sal_Int32>(nPos);
- return 0L;
-}
-
-
IMPL_LINK_NOARG_TYPED(SvxPatternTabPage, ClickAddHdl_Impl, Button*, void)
{