summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/svx/langbox.hxx3
-rw-r--r--svx/source/dialog/langbox.cxx20
2 files changed, 15 insertions, 8 deletions
diff --git a/include/svx/langbox.hxx b/include/svx/langbox.hxx
index dc872d8ed772..410b2405f30d 100644
--- a/include/svx/langbox.hxx
+++ b/include/svx/langbox.hxx
@@ -101,6 +101,7 @@ protected:
SVX_DLLPRIVATE virtual void* ImplGetEntryData( sal_Int32 nPos ) const = 0;
SVX_DLLPRIVATE virtual void ImplSelectEntryPos( sal_Int32 nPos, bool bSelect ) = 0;
SVX_DLLPRIVATE virtual bool ImplIsEntryPosSelected( sal_Int32 nPos ) const = 0;
+ SVX_DLLPRIVATE virtual sal_Int32 ImplGetEntryPos( const void* pData ) const = 0;
SVX_DLLPRIVATE virtual sal_Int32 ImplGetEntryCount() const = 0;
SVX_DLLPRIVATE virtual void ImplSetNoSelection() = 0;
SVX_DLLPRIVATE virtual void ImplHide() = 0;
@@ -127,6 +128,7 @@ private:
SVX_DLLPRIVATE virtual void* ImplGetEntryData( sal_Int32 nPos ) const SAL_OVERRIDE;
SVX_DLLPRIVATE virtual void ImplSelectEntryPos( sal_Int32 nPos, bool bSelect ) SAL_OVERRIDE;
SVX_DLLPRIVATE virtual bool ImplIsEntryPosSelected( sal_Int32 nPos ) const SAL_OVERRIDE;
+ SVX_DLLPRIVATE virtual sal_Int32 ImplGetEntryPos( const void* pData ) const SAL_OVERRIDE;
SVX_DLLPRIVATE virtual sal_Int32 ImplGetEntryCount() const SAL_OVERRIDE;
SVX_DLLPRIVATE virtual void ImplSetNoSelection() SAL_OVERRIDE;
SVX_DLLPRIVATE virtual void ImplHide() SAL_OVERRIDE;
@@ -155,6 +157,7 @@ private:
SVX_DLLPRIVATE virtual void* ImplGetEntryData( sal_Int32 nPos ) const SAL_OVERRIDE;
SVX_DLLPRIVATE virtual void ImplSelectEntryPos( sal_Int32 nPos, bool bSelect ) SAL_OVERRIDE;
SVX_DLLPRIVATE virtual bool ImplIsEntryPosSelected( sal_Int32 nPos ) const SAL_OVERRIDE;
+ SVX_DLLPRIVATE virtual sal_Int32 ImplGetEntryPos( const void* pData ) const SAL_OVERRIDE;
SVX_DLLPRIVATE virtual sal_Int32 ImplGetEntryCount() const SAL_OVERRIDE;
SVX_DLLPRIVATE virtual void ImplSetNoSelection() SAL_OVERRIDE;
SVX_DLLPRIVATE virtual void ImplHide() SAL_OVERRIDE;
diff --git a/svx/source/dialog/langbox.cxx b/svx/source/dialog/langbox.cxx
index 8d934175c39c..92f5cb6b0b8d 100644
--- a/svx/source/dialog/langbox.cxx
+++ b/svx/source/dialog/langbox.cxx
@@ -448,14 +448,7 @@ bool SvxLanguageBoxBase::IsLanguageSelected( const LanguageType eLangType ) cons
sal_Int32 SvxLanguageBoxBase::ImplTypeToPos( LanguageType eType ) const
{
- sal_Int32 nPos = LISTBOX_ENTRY_NOTFOUND;
- sal_Int32 nCount = ImplGetEntryCount();
-
- for ( sal_Int32 i=0; nPos == LISTBOX_ENTRY_NOTFOUND && i<nCount; i++ )
- if ( eType == LanguageType((sal_uIntPtr)ImplGetEntryData(i)) )
- nPos = i;
-
- return nPos;
+ return ImplGetEntryPos( (void*)(sal_uIntPtr)eType);
}
@@ -627,6 +620,17 @@ bool SvxLanguageComboBox::ImplIsEntryPosSelected( sal_Int32 nPos ) const
}
+sal_Int32 SvxLanguageBox::ImplGetEntryPos( const void* pData ) const
+{
+ return GetEntryPos( pData);
+}
+
+sal_Int32 SvxLanguageComboBox::ImplGetEntryPos( const void* pData ) const
+{
+ return GetEntryPos( pData);
+}
+
+
sal_Int32 SvxLanguageBox::ImplGetEntryCount() const
{
return GetEntryCount();