[Libreoffice-commits] core.git: 7 commits - chart2/AllLangResTarget_chartcontroller.mk chart2/source chart2/uiconfig chart2/UIConfig_chart2.mk cui/source cui/uiconfig cui/UIConfig_cui.mk dbaccess/AllLangResTarget_dbu.mk dbaccess/inc dbaccess/source dbaccess/uiconfig dbaccess/UIConfig_dbaccess.mk extras/source include/svtools sc/inc scp2/source sc/source sc/uiconfig sc/UIConfig_scalc.mk svtools/source svx/AllLangResTarget_textconversiondlgs.mk svx/inc svx/Library_textconversiondlgs.mk svx/Module_svx.mk svx/source svx/uiconfig svx/UIConfig_svx.mk

Caolán McNamara caolanm at redhat.com
Tue Feb 4 01:21:36 PST 2014


 chart2/AllLangResTarget_chartcontroller.mk                             |    1 
 chart2/UIConfig_chart2.mk                                              |    1 
 chart2/source/controller/dialogs/ResourceIds.hrc                       |    1 
 chart2/source/controller/dialogs/dlg_ChartType.cxx                     |   21 
 chart2/source/controller/dialogs/dlg_ChartType.src                     |   50 -
 chart2/source/controller/dialogs/tp_ChartType.src                      |    1 
 chart2/source/controller/inc/HelpIds.hrc                               |    1 
 chart2/source/controller/inc/dlg_ChartType.hxx                         |    5 
 chart2/uiconfig/ui/charttypedialog.ui                                  |   82 +
 cui/UIConfig_cui.mk                                                    |    1 
 cui/source/inc/cuires.hrc                                              |    1 
 cui/source/options/dbregister.cxx                                      |    4 
 cui/source/options/doclinkdialog.cxx                                   |   77 -
 cui/source/options/doclinkdialog.hrc                                   |   43 -
 cui/source/options/doclinkdialog.hxx                                   |   18 
 cui/source/options/doclinkdialog.src                                   |  103 --
 cui/uiconfig/ui/databaselinkdialog.ui                                  |  215 +++++
 dbaccess/AllLangResTarget_dbu.mk                                       |    1 
 dbaccess/UIConfig_dbaccess.mk                                          |    1 
 dbaccess/inc/dbaccess_helpid.hrc                                       |    2 
 dbaccess/source/ui/dlg/queryfilter.cxx                                 |  415 ++++-----
 dbaccess/source/ui/dlg/queryfilter.hrc                                 |   53 -
 dbaccess/source/ui/dlg/queryfilter.src                                 |  212 ----
 dbaccess/source/ui/inc/dbu_resource.hrc                                |    1 
 dbaccess/source/ui/inc/queryfilter.hxx                                 |   36 
 dbaccess/uiconfig/ui/queryfilterdialog.ui                              |  348 ++++++++
 extras/source/glade/libreoffice-catalog.xml.in                         |    4 
 include/svtools/simptabl.hxx                                           |   25 
 include/svtools/urlcontrol.hxx                                         |    1 
 sc/UIConfig_scalc.mk                                                   |    1 
 sc/inc/helpids.h                                                       |    1 
 sc/inc/sc.hrc                                                          |    3 
 sc/inc/scabstdlg.hxx                                                   |    2 
 sc/source/ui/attrdlg/scdlgfact.cxx                                     |   18 
 sc/source/ui/attrdlg/scdlgfact.hxx                                     |    2 
 sc/source/ui/dbgui/dapidata.cxx                                        |   46 -
 sc/source/ui/dbgui/dapitype.hrc                                        |    6 
 sc/source/ui/dbgui/dapitype.src                                        |   96 --
 sc/source/ui/dbgui/scuiimoptdlg.cxx                                    |    1 
 sc/source/ui/inc/dapidata.hxx                                          |   22 
 sc/source/ui/view/cellsh1.cxx                                          |    2 
 sc/uiconfig/scalc/ui/selectdatasource.ui                               |  221 +++++
 scp2/source/ooo/file_resource_ooo.scp                                  |    1 
 scp2/source/ooo/module_lang_template.scp                               |    1 
 svtools/source/control/urlcontrol.cxx                                  |   20 
 svx/AllLangResTarget_textconversiondlgs.mk                             |   34 
 svx/Library_textconversiondlgs.mk                                      |    1 
 svx/Module_svx.mk                                                      |    1 
 svx/UIConfig_svx.mk                                                    |    1 
 svx/inc/helpid.hrc                                                     |    7 
 svx/source/unodialogs/textconversiondlgs/buttongroup.hrc               |    2 
 svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.cxx  |  428 ++++------
 svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.hrc  |   47 -
 svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.hxx  |   78 -
 svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.src  |  197 ----
 svx/source/unodialogs/textconversiondlgs/chinese_translationdialog.cxx |    4 
 svx/source/unodialogs/textconversiondlgs/resid.cxx                     |   44 -
 svx/source/unodialogs/textconversiondlgs/resid.hxx                     |   44 -
 svx/source/unodialogs/textconversiondlgs/resids.hrc                    |   26 
 svx/uiconfig/ui/chinesedictionary.ui                                   |  408 +++++++++
 60 files changed, 1834 insertions(+), 1655 deletions(-)

New commits:
commit 3a9d2f27f3dee4d674966979c68a747b954fdc50
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Mon Feb 3 15:02:02 2014 +0000

    convert chinese dictionary dialog to .ui
    
    Change-Id: I2c239c1e7115d26f7b1dba00b08256b650cc183e

diff --git a/scp2/source/ooo/file_resource_ooo.scp b/scp2/source/ooo/file_resource_ooo.scp
index fc74d3d..68293d1 100644
--- a/scp2/source/ooo/file_resource_ooo.scp
+++ b/scp2/source/ooo/file_resource_ooo.scp
@@ -83,7 +83,6 @@ STD_RES_FILE( gid_File_Res_Svt, svt )
 
 STD_RES_FILE( gid_File_Res_Svx, svx )
 STD_RES_FILE( gid_File_Res_Editeng, editeng )
-STD_RES_FILE( gid_File_Res_TextConversionDlgs, textconversiondlgs )
 
 STD_RES_FILE( gid_File_Res_Cui, cui )
 
diff --git a/scp2/source/ooo/module_lang_template.scp b/scp2/source/ooo/module_lang_template.scp
index a694d14..08b7f74 100644
--- a/scp2/source/ooo/module_lang_template.scp
+++ b/scp2/source/ooo/module_lang_template.scp
@@ -93,7 +93,6 @@ Module gid_Module_Langpack_Resource_Template
              gid_File_Res_Svt,
              gid_File_Res_Svx,
              gid_File_Res_Cui,
-             gid_File_Res_TextConversionDlgs,
              gid_File_Res_Sw,
              gid_File_Res_Tk,
              gid_File_Res_Acc,
diff --git a/svx/AllLangResTarget_textconversiondlgs.mk b/svx/AllLangResTarget_textconversiondlgs.mk
deleted file mode 100644
index c47443f..0000000
--- a/svx/AllLangResTarget_textconversiondlgs.mk
+++ /dev/null
@@ -1,34 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-# This file incorporates work covered by the following license notice:
-#
-#   Licensed to the Apache Software Foundation (ASF) under one or more
-#   contributor license agreements. See the NOTICE file distributed
-#   with this work for additional information regarding copyright
-#   ownership. The ASF licenses this file to you under the Apache
-#   License, Version 2.0 (the "License"); you may not use this file
-#   except in compliance with the License. You may obtain a copy of
-#   the License at http://www.apache.org/licenses/LICENSE-2.0 .
-#
-
-$(eval $(call gb_AllLangResTarget_AllLangResTarget,textconversiondlgs))
-
-$(eval $(call gb_AllLangResTarget_set_reslocation,textconversiondlgs,svx))
-
-$(eval $(call gb_AllLangResTarget_add_srs,textconversiondlgs,\
-    svx/textconversiondlgs \
-))
-
-$(eval $(call gb_SrsTarget_SrsTarget,svx/textconversiondlgs))
-
-$(eval $(call gb_SrsTarget_add_files,svx/textconversiondlgs,\
-    svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.src \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/svx/Library_textconversiondlgs.mk b/svx/Library_textconversiondlgs.mk
index 6b4a4b3..a2071d8 100644
--- a/svx/Library_textconversiondlgs.mk
+++ b/svx/Library_textconversiondlgs.mk
@@ -50,7 +50,6 @@ $(eval $(call gb_Library_add_exception_objects,textconversiondlgs,\
     svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog \
     svx/source/unodialogs/textconversiondlgs/chinese_translationdialog \
     svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog \
-    svx/source/unodialogs/textconversiondlgs/resid \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/svx/Module_svx.mk b/svx/Module_svx.mk
index 80f2bd7..e304ed9 100644
--- a/svx/Module_svx.mk
+++ b/svx/Module_svx.mk
@@ -29,7 +29,6 @@ $(eval $(call gb_Module_add_l10n_targets,svx,\
     AllLangResTarget_svx \
     AllLangResTarget_ofa \
     AllLangResTarget_gal \
-    AllLangResTarget_textconversiondlgs \
     UIConfig_svx \
 ))
 
diff --git a/svx/UIConfig_svx.mk b/svx/UIConfig_svx.mk
index a59c252..7311698 100644
--- a/svx/UIConfig_svx.mk
+++ b/svx/UIConfig_svx.mk
@@ -19,6 +19,7 @@ $(eval $(call gb_UIConfig_add_uifiles,svx,\
 	svx/uiconfig/ui/addsubmissiondialog \
 	svx/uiconfig/ui/asianphoneticguidedialog \
 	svx/uiconfig/ui/chineseconversiondialog \
+	svx/uiconfig/ui/chinesedictionary \
 	svx/uiconfig/ui/compressgraphicdialog \
 	svx/uiconfig/ui/deleteheaderdialog \
 	svx/uiconfig/ui/deletefooterdialog \
diff --git a/svx/inc/helpid.hrc b/svx/inc/helpid.hrc
index 2e41991..0c1f040 100644
--- a/svx/inc/helpid.hrc
+++ b/svx/inc/helpid.hrc
@@ -154,14 +154,7 @@
 #define HID_REDLINING_TABCONTROL                              "SVX_HID_REDLINING_TABCONTROL"
 #define HID_STYLE_LISTBOX                                     "SVX_HID_STYLE_LISTBOX"
 #define HID_SVXTBX_UNDO_REDO_CTRL                             "SVX_HID_SVXTBX_UNDO_REDO_CTRL"
-#define HID_SVX_CHINESE_DICTIONARY_CB_REVERSE                 "SVX_HID_SVX_CHINESE_DICTIONARY_CB_REVERSE"
 #define HID_SVX_CHINESE_DICTIONARY_LB_HEADER                  "SVX_HID_SVX_CHINESE_DICTIONARY_LB_HEADER"
-#define HID_SVX_CHINESE_DICTIONARY_LB_TO_SIMPLIFIED           "SVX_HID_SVX_CHINESE_DICTIONARY_LB_TO_SIMPLIFIED"
-#define HID_SVX_CHINESE_DICTIONARY_LB_TO_TRADITIONAL          "SVX_HID_SVX_CHINESE_DICTIONARY_LB_TO_TRADITIONAL"
-#define HID_SVX_CHINESE_DICTIONARY_RB_CONVERSION_TO_SIMPLIFIED "SVX_HID_SVX_CHINESE_DICTIONARY_RB_CONVERSION_TO_SIMPLIFIED"
-#define HID_SVX_CHINESE_DICTIONARY_RB_CONVERSION_TO_TRADITIONAL "SVX_HID_SVX_CHINESE_DICTIONARY_RB_CONVERSION_TO_TRADITIONAL"
-#define HID_SVX_CHINESE_TRANSLATION_RB_CONVERSION_TO_SIMPLIFIED "SVX_HID_SVX_CHINESE_TRANSLATION_RB_CONVERSION_TO_SIMPLIFIED"
-#define HID_SVX_CHINESE_TRANSLATION_RB_CONVERSION_TO_TRADITIONAL "SVX_HID_SVX_CHINESE_TRANSLATION_RB_CONVERSION_TO_TRADITIONAL"
 #define HID_SVX_MDLG_DOCRECOVERY_BROKEN                       "SVX_HID_SVX_MDLG_DOCRECOVERY_BROKEN"
 #define HID_SVX_MDLG_DOCRECOVERY_PROGR                        "SVX_HID_SVX_MDLG_DOCRECOVERY_PROGR"
 #define HID_SVX_MDLG_ERR_REP_OPTIONS                          "SVX_HID_SVX_MDLG_ERR_REP_OPTIONS"
diff --git a/svx/source/unodialogs/textconversiondlgs/buttongroup.hrc b/svx/source/unodialogs/textconversiondlgs/buttongroup.hrc
index 4bee217a..5250700 100644
--- a/svx/source/unodialogs/textconversiondlgs/buttongroup.hrc
+++ b/svx/source/unodialogs/textconversiondlgs/buttongroup.hrc
@@ -19,8 +19,6 @@
 #ifndef _UNODIALOGS_BUTTONGROUP_HRC
 #define _UNODIALOGS_BUTTONGROUP_HRC
 
-#include "resids.hrc"
-
 #define PB_OK       1
 #define PB_CANCEL   1
 #define PB_HELP     1
diff --git a/svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.cxx b/svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.cxx
index 5b9d90a..9c95e19 100644
--- a/svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.cxx
+++ b/svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.cxx
@@ -19,8 +19,6 @@
 
 
 #include "chinese_dictionarydialog.hxx"
-#include "chinese_dictionarydialog.hrc"
-#include "resid.hxx"
 #include <cppuhelper/bootstrap.hxx>
 #include <com/sun/star/i18n/TextConversionOption.hpp>
 #include <com/sun/star/linguistic2/ConversionDictionaryType.hpp>
@@ -55,21 +53,12 @@ using namespace ::com::sun::star::uno;
 
 #define HEADER_BAR_BITS ( HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_FIXED | HIB_FIXEDPOS )
 
-DictionaryList::DictionaryList( Window* pParent, const ResId& rResId)
-    : SvHeaderTabListBox( pParent, rResId )
+DictionaryList::DictionaryList(SvSimpleTableContainer& rParent, WinBits nBits)
+    : SvSimpleTable(rParent, nBits)
     , m_xDictionary(0)
-    , m_pHeaderBar(0)
-    , m_pPropertyTypeNameListBox(0)
-    , m_aToBeDeleted()
-    , m_nSortColumnIndex(0)
-{
-}
-
-DictionaryList::DictionaryList( Window* pParent )
-    : SvHeaderTabListBox( pParent, 0 )
-    , m_xDictionary(0)
-    , m_pHeaderBar(0)
-    , m_pPropertyTypeNameListBox(0)
+    , m_pED_Term(0)
+    , m_pED_Mapping(0)
+    , m_pLB_Property(0)
     , m_aToBeDeleted()
     , m_nSortColumnIndex(0)
 {
@@ -77,13 +66,13 @@ DictionaryList::DictionaryList( Window* pParent )
 
 OUString DictionaryList::getPropertyTypeName( sal_Int16 nConversionPropertyType ) const
 {
-    if(!m_pPropertyTypeNameListBox || !m_pPropertyTypeNameListBox->GetEntryCount())
+    if(!m_pLB_Property || !m_pLB_Property->GetEntryCount())
         return OUString();
 
     sal_uInt16 nPos = static_cast<sal_uInt16>( nConversionPropertyType )-1;
-    if(nPos<m_pPropertyTypeNameListBox->GetEntryCount())
-        return m_pPropertyTypeNameListBox->GetEntry(nPos);
-    return m_pPropertyTypeNameListBox->GetEntry(0);
+    if(nPos<m_pLB_Property->GetEntryCount())
+        return m_pLB_Property->GetEntry(nPos);
+    return m_pLB_Property->GetEntry(0);
 }
 
 OUString DictionaryList::makeTabString( const DictionaryEntry& rEntry ) const
@@ -96,21 +85,6 @@ OUString DictionaryList::makeTabString( const DictionaryEntry& rEntry ) const
     return aStr;
 }
 
-void DictionaryList::initDictionaryControl( const Reference< linguistic2::XConversionDictionary>& xDictionary
-                                           , ListBox* pPropertyTypeNameListBox )
-{
-    SetStyle( WB_VSCROLL | WB_TABSTOP );
-    SetSelectionMode( SINGLE_SELECTION );
-    SetBorderStyle( WINDOW_BORDER_MONO );
-    SetHighlightRange();
-
-    if(m_xDictionary.is())
-        return;
-
-    m_xDictionary = xDictionary;
-    m_pPropertyTypeNameListBox = pPropertyTypeNameListBox;
-}
-
 void DictionaryList::save()
 {
     if( !m_xDictionary.is() )
@@ -289,55 +263,6 @@ sal_uIntPtr DictionaryList::deleteEntries( const OUString& rTerm )
     return nPos;
 }
 
-DictionaryList::~DictionaryList()
-{
-}
-
-void DictionaryList::activate( HeaderBar* pHeaderBar )
-{
-    if(!m_pHeaderBar)
-    {
-        m_pHeaderBar = pHeaderBar;
-
-        Point aPos = GetPosPixel();
-        Size  aSize = GetSizePixel();
-        Size aHeadSize = pHeaderBar->GetSizePixel();
-
-        aPos.Y() += aHeadSize.Height();
-        SetPosSizePixel( aPos, Size( aSize.Width(), aSize.Height() - aHeadSize.Height() ) );
-        InitHeaderBar( pHeaderBar );
-    }
-    Show();
-}
-
-HeaderBar* DictionaryList::createHeaderBar( const OUString& rColumn1, const OUString& rColumn2, const OUString& rColumn3
-                  , long nWidth1, long nWidth2, long nWidth3 )
-{
-    HeaderBar* pHeaderBar = new HeaderBar( Control::GetParent(), WB_BUTTONSTYLE | WB_BOTTOMBORDER );
-    pHeaderBar->SetPosSizePixel( GetPosPixel(), pHeaderBar->CalcWindowSizePixel() );
-
-    HeaderBarItemBits nBits = HEADER_BAR_BITS;
-    pHeaderBar->InsertItem( 1, rColumn1, nWidth1, nBits | HIB_UPARROW );
-    pHeaderBar->InsertItem( 2, rColumn2, nWidth2, nBits );
-    pHeaderBar->InsertItem( 3, rColumn3, nWidth3, nBits );
-
-    pHeaderBar->Show();
-    return pHeaderBar;
-}
-
-void DictionaryList::Resize()
-{
-    SvHeaderTabListBox::Resize();
-    Size aBoxSize = GetOutputSizePixel();
-
-    if ( !aBoxSize.Width() )
-        return;
-
-       Size aBarSize = m_pHeaderBar->GetSizePixel();
-    aBarSize.Width() = GetSizePixel().Width();
-    m_pHeaderBar->SetSizePixel( aBarSize );
-}
-
 void DictionaryList::sortByColumn( sal_uInt16 nSortColumnIndex, bool bSortAtoZ )
 {
     m_nSortColumnIndex=nSortColumnIndex;
@@ -437,52 +362,115 @@ bool DictionaryEntry::operator==( const DictionaryEntry& rE ) const
             && m_nConversionPropertyType == rE.m_nConversionPropertyType;
 }
 
-//-----------------------------------------------------------------------------
-//-----------------------------------------------------------------------------
-//-----------------------------------------------------------------------------
+void DictionaryList::setColSizes()
+{
+    HeaderBar &rBar = GetTheHeaderBar();
+    if (rBar.GetItemCount() < 3)
+        return;
+
+    long nWidth1 = m_pED_Term->get_preferred_size().Width();
+    long nWidth2 = m_pED_Mapping->get_preferred_size().Width();
+    long nWidth3 = m_pLB_Property->get_preferred_size().Width();
+
+    long nWidth = GetSizePixel().Width();
+    long nPos3 = nWidth - nWidth3;
+    long nRemainder = nWidth - (nWidth1 + nWidth2 + nWidth3);
+
+    long aStaticTabs[] = { 3, 0, nWidth1 + (nRemainder/2), nPos3 };
+    SvSimpleTable::SetTabs(aStaticTabs, MAP_PIXEL);
+}
+
+void DictionaryList::Resize()
+{
+    SvSimpleTable::Resize();
+    setColSizes();
+}
+
+void DictionaryList::init(const Reference< linguistic2::XConversionDictionary>& xDictionary,
+    Window *pED_Term, Window *pED_Mapping, ListBox *pLB_Property,
+    Window *pFT_Term, Window *pFT_Mapping, Window *pFT_Property)
+{
+    SetStyle( WB_VSCROLL | WB_TABSTOP );
+    SetSelectionMode( SINGLE_SELECTION );
+    SetBorderStyle( WINDOW_BORDER_MONO );
+    SetHighlightRange();
+
+    if (m_xDictionary.is())
+        return;
+
+    m_xDictionary = xDictionary;
+
+    m_pED_Term = pED_Term;
+    m_pED_Mapping = pED_Mapping;
+    m_pLB_Property = pLB_Property;
+
+    HeaderBar& rHeaderBar = GetTheHeaderBar();
+
+    OUString aColumn1( OutputDevice::GetNonMnemonicString( pFT_Term->GetText() ) );
+    OUString aColumn2( OutputDevice::GetNonMnemonicString( pFT_Mapping->GetText() ) );
+    OUString aColumn3( OutputDevice::GetNonMnemonicString( pFT_Property->GetText() ) );
+
+    long nWidth1 = m_pED_Term->get_preferred_size().Width();
+    long nWidth2 = m_pED_Mapping->get_preferred_size().Width();
+    long nWidth3 = m_pLB_Property->get_preferred_size().Width();
+
+    HeaderBarItemBits nBits = HEADER_BAR_BITS;
+    rHeaderBar.InsertItem( 1, aColumn1, nWidth1, nBits | HIB_UPARROW );
+    rHeaderBar.InsertItem( 2, aColumn2, nWidth2, nBits );
+    rHeaderBar.InsertItem( 3, aColumn3, nWidth3, nBits );
+
+    long pTabs[] = { 3, 0, nWidth1, nWidth1 + nWidth2 };
+    SetTabs( &pTabs[0], MAP_PIXEL );
+}
+
+void ChineseDictionaryDialog::initDictionaryControl(DictionaryList *pList,
+    const Reference< linguistic2::XConversionDictionary>& xDictionary)
+{
+    //init HeaderBar and set tabs
+    HeaderBar& rHeaderBar = pList->GetTheHeaderBar();
+    //set hdl
+    rHeaderBar.SetSelectHdl( LINK( this, ChineseDictionaryDialog, HeaderBarClick ) );
+    //set widgets to track the width of for columns
+    pList->init(xDictionary,
+        m_pED_Term, m_pED_Mapping, m_pLB_Property,
+        m_pFT_Term, m_pFT_Mapping, m_pFT_Property);
+}
 
 ChineseDictionaryDialog::ChineseDictionaryDialog( Window* pParent )
-    : ModalDialog( pParent, TextConversionDlgs_ResId( DLG_CHINESEDICTIONARY ) )
-    , m_nTextConversionOptions( i18n::TextConversionOption::NONE )
-    , m_aRB_To_Simplified( this, TextConversionDlgs_ResId( RB_TO_SIMPLIFIED ) )
-    , m_aRB_To_Traditional( this, TextConversionDlgs_ResId( RB_TO_TRADITIONAL ) )
-    , m_aCB_Reverse( this, TextConversionDlgs_ResId( CB_REVERSE ) )
-    , m_aFT_Term( this, TextConversionDlgs_ResId( FT_TERM ) )
-    , m_aED_Term( this, TextConversionDlgs_ResId( ED_TERM ) )
-    , m_aFT_Mapping( this, TextConversionDlgs_ResId( FT_MAPPING ) )
-    , m_aED_Mapping( this, TextConversionDlgs_ResId( ED_MAPPING ) )
-    , m_aFT_Property( this, TextConversionDlgs_ResId( FT_PROPERTY ) )
-    , m_aLB_Property( this, TextConversionDlgs_ResId( LB_PROPERTY ) )
-    , m_pHeaderBar( 0 )
-    , m_aCT_DictionaryToSimplified( this, TextConversionDlgs_ResId( CT_MAPPINGLIST ) )
-    , m_aCT_DictionaryToTraditional( this )
-    , m_aPB_Add( this, TextConversionDlgs_ResId( PB_ADD ) )
-    , m_aPB_Modify( this, TextConversionDlgs_ResId( PB_MODIFY ) )
-    , m_aPB_Delete( this, TextConversionDlgs_ResId( PB_DELETE ) )
-    , m_aFL_Bottomline( this, TextConversionDlgs_ResId( FL_BOTTOMLINE ) )
-    , m_aBP_OK( this, TextConversionDlgs_ResId( PB_OK ) )
-    , m_aBP_Cancel( this, TextConversionDlgs_ResId( PB_CANCEL ) )
-    , m_aBP_Help( this, TextConversionDlgs_ResId( PB_HELP ) )
-    , m_xContext( 0 )
-{
-    FreeResource();
-
-    m_aRB_To_Simplified.SetHelpId( HID_SVX_CHINESE_DICTIONARY_RB_CONVERSION_TO_SIMPLIFIED );
-    m_aRB_To_Traditional.SetHelpId( HID_SVX_CHINESE_DICTIONARY_RB_CONVERSION_TO_TRADITIONAL );
-
-    m_aCB_Reverse.SetHelpId( HID_SVX_CHINESE_DICTIONARY_CB_REVERSE );
-
-    m_aCT_DictionaryToSimplified.SetHelpId( HID_SVX_CHINESE_DICTIONARY_LB_TO_SIMPLIFIED );
-    m_aCT_DictionaryToTraditional.SetHelpId( HID_SVX_CHINESE_DICTIONARY_LB_TO_TRADITIONAL );
+    : ModalDialog(pParent, "ChineseDictionaryDialog",
+         "svx/ui/chinesedictionary.ui")
+    , m_nTextConversionOptions(i18n::TextConversionOption::NONE)
+    , m_xContext(0)
+{
+    get(m_pRB_To_Simplified, "tradtosimple");
+    get(m_pRB_To_Traditional, "simpletotrad");
+    get(m_pCB_Reverse, "reverse");
+    get(m_pFT_Term, "termft");
+    get(m_pED_Term, "term");
+    get(m_pFT_Mapping, "mappingft");
+    get(m_pED_Mapping, "mapping");
+    get(m_pFT_Property, "propertyft");
+    get(m_pLB_Property, "property");
+
+    get(m_pPB_Add, "add");
+    get(m_pPB_Modify, "modify");
+    get(m_pPB_Delete, "delete");
+
+    get(mpToSimplifiedContainer, "tradtosimpleview");
+    mpToSimplifiedContainer->set_height_request(mpToSimplifiedContainer->GetTextHeight() * 8);
+    m_pCT_DictionaryToSimplified = new DictionaryList(*mpToSimplifiedContainer, 0);
+    get(mpToTraditionalContainer, "simpletotradview");
+    mpToTraditionalContainer->set_height_request(mpToTraditionalContainer->GetTextHeight() * 8);
+    m_pCT_DictionaryToTraditional = new DictionaryList(*mpToTraditionalContainer, 0);
 
     SvtLinguConfig  aLngCfg;
     sal_Bool bValue = sal_Bool();
     Any aAny( aLngCfg.GetProperty( OUString( UPN_IS_REVERSE_MAPPING ) ) );
     if( aAny >>= bValue )
-        m_aCB_Reverse.Check( bValue );
+        m_pCB_Reverse->Check( bValue );
 
-    m_aLB_Property.SetDropDownLineCount( m_aLB_Property.GetEntryCount() );
-    m_aLB_Property.SelectEntryPos(0);
+    m_pLB_Property->SetDropDownLineCount( m_pLB_Property->GetEntryCount() );
+    m_pLB_Property->SelectEntryPos(0);
 
     Reference< linguistic2::XConversionDictionary > xDictionary_To_Simplified(0);
     Reference< linguistic2::XConversionDictionary > xDictionary_To_Traditional(0);
@@ -533,79 +521,53 @@ ChineseDictionaryDialog::ChineseDictionaryDialog( Window* pParent )
                         xDictionary_To_Traditional->setActive( sal_True );
 
                 }
-                catch( uno::Exception& )
+                catch(const uno::Exception& )
                 {
                 }
             }
         }
     }
 
-    //init HeaderBar and set tabs
-    {
-        OUString aColumn1( OutputDevice::GetNonMnemonicString( m_aFT_Term.GetText() ) );
-        OUString aColumn2( OutputDevice::GetNonMnemonicString( m_aFT_Mapping.GetText() ) );
-        OUString aColumn3( OutputDevice::GetNonMnemonicString( m_aFT_Property.GetText() ) );
-
-        long nWidth1 = m_aED_Mapping.GetPosPixel().X() - m_aED_Term.GetPosPixel().X();
-        long nWidth2 = m_aLB_Property.GetPosPixel().X() - m_aED_Mapping.GetPosPixel().X();
-        long nWidth3 = m_aLB_Property.GetSizePixel().Width();
-
-        m_pHeaderBar = m_aCT_DictionaryToSimplified.createHeaderBar( aColumn1, aColumn2, aColumn3, nWidth1, nWidth2, nWidth3 );
-        if(m_pHeaderBar)
-            m_pHeaderBar->SetHelpId( HID_SVX_CHINESE_DICTIONARY_LB_HEADER );
-
-        long pTabs[] = { 3, 0, nWidth1, nWidth1 + nWidth2 };
-        m_aCT_DictionaryToSimplified.SetTabs( &pTabs[0], MAP_PIXEL );
-        m_aCT_DictionaryToTraditional.SetTabs( &pTabs[0], MAP_PIXEL );
-    }
-
     //init dictionary controls
-    m_aCT_DictionaryToTraditional.SetPosPixel( m_aCT_DictionaryToSimplified.GetPosPixel() );
-    m_aCT_DictionaryToTraditional.SetSizePixel( m_aCT_DictionaryToSimplified.GetSizePixel() );
+    initDictionaryControl(m_pCT_DictionaryToSimplified, xDictionary_To_Simplified);
+    initDictionaryControl(m_pCT_DictionaryToTraditional, xDictionary_To_Traditional);
 
-    m_aCT_DictionaryToSimplified.initDictionaryControl( xDictionary_To_Simplified, &m_aLB_Property );
-    m_aCT_DictionaryToTraditional.initDictionaryControl( xDictionary_To_Traditional, &m_aLB_Property );
-
-    //
     updateAfterDirectionChange();
 
-    //set hdl
-    if(m_pHeaderBar)
-        m_pHeaderBar->SetSelectHdl( LINK( this, ChineseDictionaryDialog, HeaderBarClick ) );
-
-    m_aED_Term.SetModifyHdl( LINK( this, ChineseDictionaryDialog, EditFieldsHdl ) );
-    m_aED_Mapping.SetModifyHdl( LINK( this, ChineseDictionaryDialog, EditFieldsHdl ) );
-    m_aLB_Property.SetSelectHdl( LINK( this, ChineseDictionaryDialog, EditFieldsHdl ) );
+    m_pED_Term->SetModifyHdl( LINK( this, ChineseDictionaryDialog, EditFieldsHdl ) );
+    m_pED_Mapping->SetModifyHdl( LINK( this, ChineseDictionaryDialog, EditFieldsHdl ) );
+    m_pLB_Property->SetSelectHdl( LINK( this, ChineseDictionaryDialog, EditFieldsHdl ) );
 
-    m_aRB_To_Simplified.SetClickHdl( LINK( this, ChineseDictionaryDialog, DirectionHdl ) );
-    m_aRB_To_Traditional.SetClickHdl( LINK( this, ChineseDictionaryDialog, DirectionHdl ) );
+    m_pRB_To_Simplified->SetClickHdl( LINK( this, ChineseDictionaryDialog, DirectionHdl ) );
+    m_pRB_To_Traditional->SetClickHdl( LINK( this, ChineseDictionaryDialog, DirectionHdl ) );
 
-    m_aCT_DictionaryToSimplified.SetSelectHdl( LINK( this, ChineseDictionaryDialog, MappingSelectHdl ));
-    m_aCT_DictionaryToTraditional.SetSelectHdl( LINK( this, ChineseDictionaryDialog, MappingSelectHdl ));
+    m_pCT_DictionaryToSimplified->SetSelectHdl( LINK( this, ChineseDictionaryDialog, MappingSelectHdl ));
+    m_pCT_DictionaryToTraditional->SetSelectHdl( LINK( this, ChineseDictionaryDialog, MappingSelectHdl ));
 
-    m_aPB_Add.SetClickHdl( LINK( this, ChineseDictionaryDialog, AddHdl ) );
-    m_aPB_Modify.SetClickHdl( LINK( this, ChineseDictionaryDialog, ModifyHdl ) );
-    m_aPB_Delete.SetClickHdl( LINK( this, ChineseDictionaryDialog, DeleteHdl ) );
+    m_pPB_Add->SetClickHdl( LINK( this, ChineseDictionaryDialog, AddHdl ) );
+    m_pPB_Modify->SetClickHdl( LINK( this, ChineseDictionaryDialog, ModifyHdl ) );
+    m_pPB_Delete->SetClickHdl( LINK( this, ChineseDictionaryDialog, DeleteHdl ) );
 }
 
 ChineseDictionaryDialog::~ChineseDictionaryDialog()
 {
     m_xContext=0;
-    delete m_pHeaderBar;
+    delete m_pCT_DictionaryToSimplified;
+    delete m_pCT_DictionaryToTraditional;
 }
 
 void ChineseDictionaryDialog::setDirectionAndTextConversionOptions( bool bDirectionToSimplified, sal_Int32 nTextConversionOptions /*i18n::TextConversionOption*/ )
 {
-    if( bDirectionToSimplified == bool(m_aRB_To_Simplified.IsChecked())
+    if( bDirectionToSimplified == bool(m_pRB_To_Simplified->IsChecked())
         && nTextConversionOptions == m_nTextConversionOptions )
         return;
 
     m_nTextConversionOptions = nTextConversionOptions;
 
     if( bDirectionToSimplified )
-        m_aRB_To_Simplified.Check();
+        m_pRB_To_Simplified->Check();
     else
-        m_aRB_To_Traditional.Check();
+        m_pRB_To_Traditional->Check();
     updateAfterDirectionChange();
 }
 
@@ -619,17 +581,17 @@ void ChineseDictionaryDialog::updateAfterDirectionChange()
 {
     Reference< linguistic2::XConversionDictionary > xDictionary(0);
 
-    if( m_aRB_To_Simplified.IsChecked() )
+    if( m_pRB_To_Simplified->IsChecked() )
     {
-        m_aCT_DictionaryToSimplified.activate( m_pHeaderBar );
-        m_aCT_DictionaryToTraditional.Hide();
-        xDictionary = m_aCT_DictionaryToSimplified.m_xDictionary;
+        mpToTraditionalContainer->Hide();
+        mpToSimplifiedContainer->Show();
+        xDictionary = m_pCT_DictionaryToSimplified->m_xDictionary;
     }
     else
     {
-        m_aCT_DictionaryToTraditional.activate( m_pHeaderBar );
-        m_aCT_DictionaryToSimplified.Hide();
-        xDictionary = m_aCT_DictionaryToTraditional.m_xDictionary;
+        mpToSimplifiedContainer->Hide();
+        mpToTraditionalContainer->Show();
+        xDictionary = m_pCT_DictionaryToTraditional->m_xDictionary;
     }
 
     updateButtons();
@@ -645,13 +607,13 @@ IMPL_LINK_NOARG(ChineseDictionaryDialog, MappingSelectHdl)
     DictionaryEntry* pE = getActiveDictionary().getFirstSelectedEntry();
     if(pE)
     {
-        m_aED_Term.SetText( pE->m_aTerm );
-        m_aED_Mapping.SetText( pE->m_aMapping );
+        m_pED_Term->SetText( pE->m_aTerm );
+        m_pED_Mapping->SetText( pE->m_aMapping );
         sal_Int16 nPos = pE->m_nConversionPropertyType-1;
-        if( nPos<0 || nPos>=m_aLB_Property.GetEntryCount() )
+        if( nPos<0 || nPos>=m_pLB_Property->GetEntryCount() )
             nPos=0;
-        if( m_aLB_Property.GetEntryCount() )
-            m_aLB_Property.SelectEntryPos(nPos);
+        if( m_pLB_Property->GetEntryCount() )
+            m_pLB_Property->SelectEntryPos(nPos);
     }
 
     updateButtons();
@@ -660,7 +622,7 @@ IMPL_LINK_NOARG(ChineseDictionaryDialog, MappingSelectHdl)
 
 bool ChineseDictionaryDialog::isEditFieldsHaveContent() const
 {
-    return !m_aED_Term.GetText().isEmpty() && !m_aED_Mapping.GetText().isEmpty();
+    return !m_pED_Term->GetText().isEmpty() && !m_pED_Mapping->GetText().isEmpty();
 }
 
 bool ChineseDictionaryDialog::isEditFieldsContentEqualsSelectedListContent() const
@@ -668,11 +630,11 @@ bool ChineseDictionaryDialog::isEditFieldsContentEqualsSelectedListContent() con
     DictionaryEntry* pE = getActiveDictionary().getFirstSelectedEntry();
     if( pE )
     {
-        if( pE->m_aTerm != OUString( m_aED_Term.GetText() ) )
+        if( pE->m_aTerm != OUString( m_pED_Term->GetText() ) )
             return false;
-        if( pE->m_aMapping != OUString( m_aED_Mapping.GetText() ) )
+        if( pE->m_aMapping != OUString( m_pED_Mapping->GetText() ) )
             return false;
-        if( pE->m_nConversionPropertyType != m_aLB_Property.GetSelectEntryPos()+1 )
+        if( pE->m_nConversionPropertyType != m_pLB_Property->GetSelectEntryPos()+1 )
             return false;
         return true;
     }
@@ -681,38 +643,38 @@ bool ChineseDictionaryDialog::isEditFieldsContentEqualsSelectedListContent() con
 
 const DictionaryList& ChineseDictionaryDialog::getActiveDictionary() const
 {
-    if( m_aRB_To_Traditional.IsChecked() )
-        return m_aCT_DictionaryToTraditional;
-    return m_aCT_DictionaryToSimplified;
+    if( m_pRB_To_Traditional->IsChecked() )
+        return *m_pCT_DictionaryToTraditional;
+    return *m_pCT_DictionaryToSimplified;
 }
 
 DictionaryList& ChineseDictionaryDialog::getActiveDictionary()
 {
-    if( m_aRB_To_Traditional.IsChecked() )
-        return m_aCT_DictionaryToTraditional;
-    return m_aCT_DictionaryToSimplified;
+    if( m_pRB_To_Traditional->IsChecked() )
+        return *m_pCT_DictionaryToTraditional;
+    return *m_pCT_DictionaryToSimplified;
 }
 
 const DictionaryList& ChineseDictionaryDialog::getReverseDictionary() const
 {
-    if( m_aRB_To_Traditional.IsChecked() )
-        return m_aCT_DictionaryToSimplified;
-    return m_aCT_DictionaryToTraditional;
+    if( m_pRB_To_Traditional->IsChecked() )
+        return *m_pCT_DictionaryToSimplified;
+    return *m_pCT_DictionaryToTraditional;
 }
 
 DictionaryList& ChineseDictionaryDialog::getReverseDictionary()
 {
-    if( m_aRB_To_Traditional.IsChecked() )
-        return m_aCT_DictionaryToSimplified;
-    return m_aCT_DictionaryToTraditional;
+    if( m_pRB_To_Traditional->IsChecked() )
+        return *m_pCT_DictionaryToSimplified;
+    return *m_pCT_DictionaryToTraditional;
 }
 
 void ChineseDictionaryDialog::updateButtons()
 {
-    bool bAdd = isEditFieldsHaveContent() && !getActiveDictionary().hasTerm( m_aED_Term.GetText() );
-    m_aPB_Add.Enable( bAdd );
+    bool bAdd = isEditFieldsHaveContent() && !getActiveDictionary().hasTerm( m_pED_Term->GetText() );
+    m_pPB_Add->Enable( bAdd );
 
-    m_aPB_Delete.Enable( !bAdd && getActiveDictionary().GetSelectedRowCount()>0 );
+    m_pPB_Delete->Enable( !bAdd && getActiveDictionary().GetSelectedRowCount()>0 );
 
 //    DictionaryEntry* pFirstSelectedEntry = getActiveDictionary().getFirstSelectedEntry();
 
@@ -720,11 +682,11 @@ void ChineseDictionaryDialog::updateButtons()
     {
         DictionaryEntry* pFirstSelectedEntry = getActiveDictionary().getFirstSelectedEntry();
         bModify = !bAdd && getActiveDictionary().GetSelectedRowCount()==1
-                        && pFirstSelectedEntry && pFirstSelectedEntry->m_aTerm.equals( m_aED_Term.GetText() );
+                        && pFirstSelectedEntry && pFirstSelectedEntry->m_aTerm.equals( m_pED_Term->GetText() );
         if( bModify && isEditFieldsContentEqualsSelectedListContent() )
             bModify = false;
     }
-    m_aPB_Modify.Enable( bModify );
+    m_pPB_Modify->Enable( bModify );
 }
 
 IMPL_LINK_NOARG(ChineseDictionaryDialog, AddHdl)
@@ -732,14 +694,14 @@ IMPL_LINK_NOARG(ChineseDictionaryDialog, AddHdl)
     if( !isEditFieldsHaveContent() )
         return 0;
 
-    sal_Int16 nConversionPropertyType = m_aLB_Property.GetSelectEntryPos()+1;
+    sal_Int16 nConversionPropertyType = m_pLB_Property->GetSelectEntryPos()+1;
 
-    getActiveDictionary().addEntry( m_aED_Term.GetText(), m_aED_Mapping.GetText(), nConversionPropertyType );
+    getActiveDictionary().addEntry( m_pED_Term->GetText(), m_pED_Mapping->GetText(), nConversionPropertyType );
 
-    if( m_aCB_Reverse.IsChecked() )
+    if( m_pCB_Reverse->IsChecked() )
     {
-        getReverseDictionary().deleteEntries( m_aED_Mapping.GetText() );
-        getReverseDictionary().addEntry( m_aED_Mapping.GetText(), m_aED_Term.GetText(), nConversionPropertyType );
+        getReverseDictionary().deleteEntries( m_pED_Mapping->GetText() );
+        getReverseDictionary().addEntry( m_pED_Mapping->GetText(), m_pED_Term->GetText(), nConversionPropertyType );
     }
 
     updateButtons();
@@ -747,9 +709,9 @@ IMPL_LINK_NOARG(ChineseDictionaryDialog, AddHdl)
 }
 IMPL_LINK_NOARG(ChineseDictionaryDialog, ModifyHdl)
 {
-    OUString aTerm( m_aED_Term.GetText() );
-    OUString aMapping( m_aED_Mapping.GetText() );
-    sal_Int16 nConversionPropertyType = m_aLB_Property.GetSelectEntryPos()+1;
+    OUString aTerm( m_pED_Term->GetText() );
+    OUString aMapping( m_pED_Mapping->GetText() );
+    sal_Int16 nConversionPropertyType = m_pLB_Property->GetSelectEntryPos()+1;
 
     DictionaryList& rActive  = getActiveDictionary();
     DictionaryList& rReverse = getReverseDictionary();
@@ -762,7 +724,7 @@ IMPL_LINK_NOARG(ChineseDictionaryDialog, ModifyHdl)
     {
         if( pE->m_aMapping != aMapping || pE->m_nConversionPropertyType != nConversionPropertyType )
         {
-            if( m_aCB_Reverse.IsChecked() )
+            if( m_pCB_Reverse->IsChecked() )
             {
                 sal_uIntPtr nPos = rReverse.deleteEntries( pE->m_aMapping );
                 nPos = rReverse.deleteEntries( aMapping );
@@ -797,7 +759,7 @@ IMPL_LINK_NOARG(ChineseDictionaryDialog, DeleteHdl)
                 {
                     aMapping = pEntry->m_aMapping;
                     rActive.deleteEntryOnPos( nN );
-                    if( m_aCB_Reverse.IsChecked() )
+                    if( m_pCB_Reverse->IsChecked() )
                         rReverse.deleteEntries( aMapping  );
                 }
                 break;
@@ -815,8 +777,8 @@ short ChineseDictionaryDialog::Execute()
     if(m_nTextConversionOptions & i18n::TextConversionOption::USE_CHARACTER_VARIANTS )
         nTextConversionOptions = nTextConversionOptions^i18n::TextConversionOption::USE_CHARACTER_VARIANTS ;
 
-    m_aCT_DictionaryToSimplified.refillFromDictionary( nTextConversionOptions );
-    m_aCT_DictionaryToTraditional.refillFromDictionary( m_nTextConversionOptions );
+    m_pCT_DictionaryToSimplified->refillFromDictionary( nTextConversionOptions );
+    m_pCT_DictionaryToTraditional->refillFromDictionary( m_nTextConversionOptions );
 
     short nRet = ModalDialog::Execute();
 
@@ -825,41 +787,39 @@ short ChineseDictionaryDialog::Execute()
         //save settings to configuration
         SvtLinguConfig  aLngCfg;
         Any aAny;
-        aAny <<= sal_Bool( !!m_aCB_Reverse.IsChecked() );
+        aAny <<= sal_Bool( !!m_pCB_Reverse->IsChecked() );
         aLngCfg.SetProperty( OUString( UPN_IS_REVERSE_MAPPING ), aAny );
 
-        m_aCT_DictionaryToSimplified.save();
-        m_aCT_DictionaryToTraditional.save();
+        m_pCT_DictionaryToSimplified->save();
+        m_pCT_DictionaryToTraditional->save();
     }
 
-    m_aCT_DictionaryToSimplified.deleteAll();
-    m_aCT_DictionaryToTraditional.deleteAll();
+    m_pCT_DictionaryToSimplified->deleteAll();
+    m_pCT_DictionaryToTraditional->deleteAll();
 
     return nRet;
 }
 
-IMPL_LINK_NOARG(ChineseDictionaryDialog, HeaderBarClick)
+IMPL_LINK(ChineseDictionaryDialog, HeaderBarClick, HeaderBar*, pHeaderBar)
 {
-    if(m_pHeaderBar)
+    sal_uInt16 nId = pHeaderBar->GetCurItemId();
+    HeaderBarItemBits nBits = pHeaderBar->GetItemBits(nId);
+    if( nBits & HIB_CLICKABLE )
     {
-        sal_uInt16 nId = m_pHeaderBar->GetCurItemId();
-        HeaderBarItemBits nBits = m_pHeaderBar->GetItemBits(nId);
-        if( nBits & HIB_CLICKABLE )
-        {
-            //set new arrow positions in headerbar
-            m_pHeaderBar->SetItemBits( getActiveDictionary().getSortColumn()+1, HEADER_BAR_BITS );
-            if( nBits & HIB_UPARROW )
-                m_pHeaderBar->SetItemBits( nId, HEADER_BAR_BITS | HIB_DOWNARROW );
-            else
-                m_pHeaderBar->SetItemBits( nId, HEADER_BAR_BITS | HIB_UPARROW );
+        //set new arrow positions in headerbar
+        pHeaderBar->SetItemBits( getActiveDictionary().getSortColumn()+1, HEADER_BAR_BITS );
+        if( nBits & HIB_UPARROW )
+            pHeaderBar->SetItemBits( nId, HEADER_BAR_BITS | HIB_DOWNARROW );
+        else
+            pHeaderBar->SetItemBits( nId, HEADER_BAR_BITS | HIB_UPARROW );
 
-            //sort lists
-            nBits = m_pHeaderBar->GetItemBits(nId);
-            bool bSortAtoZ = nBits & HIB_UPARROW;
-            getActiveDictionary().sortByColumn(nId-1,bSortAtoZ);
-            getReverseDictionary().sortByColumn(nId-1,bSortAtoZ);
-        }
+        //sort lists
+        nBits = pHeaderBar->GetItemBits(nId);
+        bool bSortAtoZ = nBits & HIB_UPARROW;
+        getActiveDictionary().sortByColumn(nId-1,bSortAtoZ);
+        getReverseDictionary().sortByColumn(nId-1,bSortAtoZ);
     }
+
     return 0;
 }
 
diff --git a/svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.hrc b/svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.hrc
deleted file mode 100644
index 9b601ec..0000000
--- a/svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.hrc
+++ /dev/null
@@ -1,47 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-#ifndef _TEXTCONVERSIONDLGS_CHINESE_DICTIONARYDLG_HRC
-#define _TEXTCONVERSIONDLGS_CHINESE_DICTIONARYDLG_HRC
-
-#include "resids.hrc"
-#include "buttongroup.hrc"
-#include "chinese_direction_ids.hrc"
-
-#define ED_TERM             1
-#define ED_MAPPING          2
-
-#define LB_PROPERTY         1
-
-#define CB_REVERSE          1
-
-#define FT_TERM             1
-#define FT_MAPPING          2
-#define FT_PROPERTY         3
-
-#define CT_MAPPINGLIST     1
-
-#define PB_ADD      1
-#define PB_MODIFY   2
-#define PB_DELETE   3
-
-#define FL_BOTTOMLINE       1
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.hxx b/svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.hxx
index 268f8a9..6ec4d86 100644
--- a/svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.hxx
+++ b/svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.hxx
@@ -29,8 +29,7 @@
 #include <vcl/edit.hxx>
 // header for class ListBox
 #include <vcl/lstbox.hxx>
-// header for class SvHeaderTabListBox
-#include <svtools/svtabbx.hxx>
+#include <svtools/simptabl.hxx>
 #include <com/sun/star/uno/XComponentContext.hpp>
 #include <com/sun/star/linguistic2/XConversionDictionary.hpp>
 
@@ -62,19 +61,15 @@ struct DictionaryEntry
     bool     m_bNewEntry;
 };
 
-class DictionaryList : public SvHeaderTabListBox
+class DictionaryList : public SvSimpleTable
 {
 public:
-    DictionaryList( Window* pParent, const ResId& );
-    DictionaryList( Window* pParent );
-    virtual ~DictionaryList();
+    DictionaryList(SvSimpleTableContainer& rParent, WinBits nBits);
 
-    HeaderBar* createHeaderBar( const OUString& rColumn1, const OUString& rColumn2, const OUString& rColumn3
-                  , long nWidth1, long nWidth2, long nWidth3 );
+    void init(const css::uno::Reference< css::linguistic2::XConversionDictionary>& xDictionary,
+        Window *pED_Term, Window *pED_Mapping, ListBox *pLB_Property,
+        Window *pFT_Term, Window *pFT_Mapping, Window *pFT_Property);
 
-    void initDictionaryControl( const ::com::sun::star::uno::Reference< ::com::sun::star::linguistic2::XConversionDictionary>& xDictionary
-                            , ListBox* pPropertyTypeNameListBox );
-    void activate( HeaderBar* pHeaderBar );
     void deleteAll();
     void refillFromDictionary( sal_Int32 nTextConversionOptions /*i18n::TextConversionOption*/ );
     void save();
@@ -92,8 +87,6 @@ public:
     void sortByColumn( sal_uInt16 nSortColumnIndex, bool bSortAtoZ );
     sal_uInt16 getSortColumn() const;
 
-    virtual void Resize();
-
 private:
     OUString getPropertyTypeName( sal_Int16 nConversionPropertyType /*linguistic2::ConversionPropertyType*/ ) const;
     OUString makeTabString( const DictionaryEntry& rEntry ) const;
@@ -102,13 +95,17 @@ private:
     sal_Int32 ColumnCompare( SvTreeListEntry* pLeft, SvTreeListEntry* pRight );
     SvLBoxItem* getItemAtColumn( SvTreeListEntry* pEntry, sal_uInt16 nColumn ) const;
 
+    void setColSizes();
+
+    virtual void Resize();
+
 public:
-    ::com::sun::star::uno::Reference<
-        ::com::sun::star::linguistic2::XConversionDictionary>   m_xDictionary;
+    css::uno::Reference<css::linguistic2::XConversionDictionary>  m_xDictionary;
 
 private:
-    HeaderBar*  m_pHeaderBar;
-    ListBox*    m_pPropertyTypeNameListBox;
+    Window*     m_pED_Term;
+    Window*     m_pED_Mapping;
+    ListBox*    m_pLB_Property;
 
     std::vector< DictionaryEntry* > m_aToBeDeleted;
 
@@ -133,7 +130,10 @@ private:
     DECL_LINK( AddHdl, void* );
     DECL_LINK( ModifyHdl, void* );
     DECL_LINK( DeleteHdl, void* );
-    DECL_LINK( HeaderBarClick, void* );
+    DECL_LINK( HeaderBarClick, HeaderBar* );
+
+    void initDictionaryControl(DictionaryList *pList,
+        const css::uno::Reference< css::linguistic2::XConversionDictionary>& xDictionary);
 
     void updateAfterDirectionChange();
     void updateButtons();
@@ -148,38 +148,32 @@ private:
     const DictionaryList& getReverseDictionary() const;
 
 private:
-    sal_Int32   m_nTextConversionOptions; //i18n::TextConversionOption
-
-    RadioButton m_aRB_To_Simplified;
-    RadioButton m_aRB_To_Traditional;
-
-    CheckBox    m_aCB_Reverse;
+    sal_Int32    m_nTextConversionOptions; //i18n::TextConversionOption
 
-    FixedText   m_aFT_Term;
-    Edit        m_aED_Term;
+    RadioButton* m_pRB_To_Simplified;
+    RadioButton* m_pRB_To_Traditional;
 
-    FixedText   m_aFT_Mapping;
-    Edit        m_aED_Mapping;
+    CheckBox*    m_pCB_Reverse;
 
-    FixedText   m_aFT_Property;
-    ListBox     m_aLB_Property;
+    FixedText*   m_pFT_Term;
+    Edit*        m_pED_Term;
 
-    HeaderBar*      m_pHeaderBar;
-    DictionaryList  m_aCT_DictionaryToSimplified;
-    DictionaryList  m_aCT_DictionaryToTraditional;
+    FixedText*   m_pFT_Mapping;
+    Edit*        m_pED_Mapping;
 
-    PushButton  m_aPB_Add;
-    PushButton  m_aPB_Modify;
-    PushButton  m_aPB_Delete;
+    FixedText*   m_pFT_Property;
+    ListBox*     m_pLB_Property;
 
-    FixedLine   m_aFL_Bottomline;
+    SvSimpleTableContainer* mpToSimplifiedContainer;
+    DictionaryList* m_pCT_DictionaryToSimplified;
+    SvSimpleTableContainer* mpToTraditionalContainer;
+    DictionaryList* m_pCT_DictionaryToTraditional;
 
-    OKButton        m_aBP_OK;
-    CancelButton    m_aBP_Cancel;
-    HelpButton      m_aBP_Help;
+    PushButton*  m_pPB_Add;
+    PushButton*  m_pPB_Modify;
+    PushButton*  m_pPB_Delete;
 
-    ::com::sun::star::uno::Reference<
-        ::com::sun::star::uno::XComponentContext >              m_xContext;
+    css::uno::Reference<css::uno::XComponentContext> m_xContext;
 };
 
 //.............................................................................
diff --git a/svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.src b/svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.src
deleted file mode 100644
index f52afb0..0000000
--- a/svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.src
+++ /dev/null
@@ -1,197 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include "chinese_dictionarydialog.hrc"
-
-#include <svtools/controldims.hrc>
-
-#define DIRECTION_RADIOBUTTONS( D_XPOS, D_YPOS, D_FULLWIDTH ) \
-RadioButton RB_TO_SIMPLIFIED \
-{ \
-    Pos = MAP_APPFONT( D_XPOS, D_YPOS ); \
-    Size = MAP_APPFONT ( D_FULLWIDTH, RSC_CD_RADIOBUTTON_HEIGHT ) ; \
-    Text [ en-US ] = "~Traditional Chinese to simplified Chinese"; \
-}; \
-RadioButton RB_TO_TRADITIONAL \
-{ \
-    Pos = MAP_APPFONT( D_XPOS, D_YPOS + RSC_CD_RADIOBUTTON_HEIGHT+RSC_SP_CTRL_GROUP_Y ); \
-    Size = MAP_APPFONT ( D_FULLWIDTH, RSC_CD_RADIOBUTTON_HEIGHT ) ; \
-    Text [ en-US ] = "~Simplified Chinese to traditional Chinese"; \
-};
-
-//-----------------------------------------------------------------------------
-//defines for positions and sizes:
-
-#define FULL_WIDTH (245)
-#define FULL_HEIGHT (165)
-
-#define ROW_1 (RSC_SP_DLG_INNERBORDER_TOP)
-#define ROW_2 (ROW_1+RSC_CD_RADIOBUTTON_HEIGHT+RSC_SP_CTRL_GROUP_Y)
-#define ROW_3 (ROW_2+RSC_CD_RADIOBUTTON_HEIGHT+RSC_SP_CTRL_GROUP_Y)
-#define ROW_4 (ROW_3+RSC_CD_CHECKBOX_HEIGHT+RSC_SP_CTRL_GROUP_Y)
-#define ROW_5 (ROW_4+RSC_CD_FIXEDTEXT_HEIGHT+RSC_SP_CTRL_DESC_Y)
-#define ROW_6 (ROW_5+RSC_CD_TEXTBOX_HEIGHT+RSC_SP_CTRL_DESC_Y)
-
-#define ROW_5a (ROW_5+RSC_CD_PUSHBUTTON_HEIGHT+RSC_SP_CTRL_DESC_Y)
-#define ROW_5b (ROW_5a+RSC_CD_PUSHBUTTON_HEIGHT+RSC_SP_CTRL_DESC_Y)
-
-#define ROW_8 (FULL_HEIGHT-RSC_SP_DLG_INNERBORDER_BOTTOM-RSC_CD_PUSHBUTTON_HEIGHT)
-#define ROW_7 (ROW_8-RSC_CD_FIXEDLINE_HEIGHT-2)
-
-#define LIST_HEIGHT (ROW_7-RSC_SP_CTRL_Y-ROW_6)
-
-#define COL_WIDTH 60
-#define BUTTONCOL_WIDTH 40
-#define COL_1 (RSC_SP_DLG_INNERBORDER_LEFT+RSC_SP_FLGR_SPACE_X)
-#define COL_2 (COL_1+COL_WIDTH+1)
-#define COL_3 (COL_2+COL_WIDTH+1)
-#define COL_4 (FULL_WIDTH-RSC_SP_DLG_INNERBORDER_RIGHT-BUTTONCOL_WIDTH)
-
-#define REST_COL_WIDTH (COL_4-COL_3-RSC_SP_CTRL_GROUP_X)
-
-//-----------------------------------------------------------------------------
-
-ModalDialog DLG_CHINESEDICTIONARY
-{
-    HelpID = "svx:ModalDialog:DLG_CHINESEDICTIONARY";
-    //HelpId = ;
-    Size = MAP_APPFONT( FULL_WIDTH, FULL_HEIGHT );
-    OutputSize = TRUE;
-    Closeable = TRUE ;
-    Moveable = TRUE ;
-    SVLook = TRUE;
-
-    Text [ en-US ] = "Edit Dictionary";
-
-    DIRECTION_RADIOBUTTONS( COL_1, ROW_1, FULL_WIDTH - COL_1 - RSC_SP_DLG_INNERBORDER_RIGHT )
-
-    CheckBox CB_REVERSE
-    {
-        HelpID = "svx:CheckBox:DLG_CHINESEDICTIONARY:CB_REVERSE";
-        Pos = MAP_APPFONT ( COL_1, ROW_3 ) ;
-        Size = MAP_APPFONT ( FULL_WIDTH - COL_1 - RSC_SP_DLG_INNERBORDER_RIGHT , RSC_CD_CHECKBOX_HEIGHT ) ;
-
-        Text [ en-US ] = "Reverse mapping";
-    };
-
-    FixedText FT_TERM
-    {
-        Pos = MAP_APPFONT ( COL_1 , ROW_4 ) ;
-        Size = MAP_APPFONT ( COL_WIDTH, RSC_CD_FIXEDTEXT_HEIGHT ) ;
-        Text [ en-US ] = "Term";
-    };
-    Edit ED_TERM
-    {
-        HelpID = "svx:Edit:DLG_CHINESEDICTIONARY:ED_TERM";
-        Border = TRUE ;
-        Pos = MAP_APPFONT ( COL_1 , ROW_5 ) ;
-        Size = MAP_APPFONT ( COL_WIDTH , RSC_CD_TEXTBOX_HEIGHT ) ;
-    };
-
-
-    FixedText FT_MAPPING
-    {
-        Pos = MAP_APPFONT ( COL_2 , ROW_4 ) ;
-        Size = MAP_APPFONT ( COL_WIDTH, RSC_CD_FIXEDTEXT_HEIGHT ) ;
-        Text [ en-US ] = "Mapping";
-    };
-    Edit ED_MAPPING
-    {
-        HelpID = "svx:Edit:DLG_CHINESEDICTIONARY:ED_MAPPING";
-        Border = TRUE ;
-        Pos = MAP_APPFONT ( COL_2 , ROW_5 ) ;
-        Size = MAP_APPFONT ( COL_WIDTH , RSC_CD_TEXTBOX_HEIGHT ) ;
-    };
-
-    FixedText FT_PROPERTY
-    {
-        Pos = MAP_APPFONT ( COL_3 , ROW_4 ) ;
-        Size = MAP_APPFONT ( REST_COL_WIDTH, RSC_CD_FIXEDTEXT_HEIGHT ) ;
-        Text [ en-US ] = "Property";
-    };
-    ListBox LB_PROPERTY
-    {
-        HelpID = "svx:ListBox:DLG_CHINESEDICTIONARY:LB_PROPERTY";
-        Border = TRUE ;
-        Pos = MAP_APPFONT ( COL_3 , ROW_5 ) ;
-        Size = MAP_APPFONT ( REST_COL_WIDTH , RSC_CD_TEXTBOX_HEIGHT ) ;
-        DropDown = TRUE ;
-
-        stringlist [ en-US ] =
-        {
-            < "Other" ; Default ; > ;
-            < "Foreign" ; > ;
-            < "First name" ; > ;
-            < "Last name" ; > ;
-            < "Title" ; > ;
-            < "Status" ; > ;
-            < "Place name" ; > ;
-            < "Business" ; > ;
-            < "Adjective" ; > ;
-            < "Idiom" ; > ;
-            < "Abbreviation" ; > ;
-            < "Numerical" ; > ;
-            < "Noun" ; > ;
-            < "Verb" ; > ;
-            < "Brand name" ; > ;
-        };
-    };
-
-    Control CT_MAPPINGLIST
-    {
-        Pos = MAP_APPFONT ( COL_1, ROW_6 ) ;
-        Size = MAP_APPFONT ( COL_4 - COL_1 - RSC_SP_CTRL_GROUP_X, LIST_HEIGHT ) ;
-        TabStop = TRUE ;
-    };
-
-    PushButton PB_ADD
-    {
-        HelpID = "svx:PushButton:DLG_CHINESEDICTIONARY:PB_ADD";
-        Pos = MAP_APPFONT( COL_4, ROW_5 );
-        Size = MAP_APPFONT( BUTTONCOL_WIDTH , RSC_CD_PUSHBUTTON_HEIGHT );
-
-        Text [ en-US ] = "~Add";
-    };
-    PushButton PB_MODIFY
-    {
-        HelpID = "svx:PushButton:DLG_CHINESEDICTIONARY:PB_MODIFY";
-        Pos = MAP_APPFONT( COL_4, ROW_5a );
-        Size = MAP_APPFONT( BUTTONCOL_WIDTH , RSC_CD_PUSHBUTTON_HEIGHT );
-
-        Text [ en-US ] = "~Modify";
-    };
-    PushButton PB_DELETE
-    {
-        HelpID = "svx:PushButton:DLG_CHINESEDICTIONARY:PB_DELETE";
-        Pos = MAP_APPFONT( COL_4, ROW_5b );
-        Size = MAP_APPFONT( BUTTONCOL_WIDTH , RSC_CD_PUSHBUTTON_HEIGHT );
-
-        Text [ en-US ] = "~Delete";
-    };
-
-    FixedLine FL_BOTTOMLINE
-    {
-        Pos = MAP_APPFONT ( 0 , ROW_7 ) ;
-        Size = MAP_APPFONT ( FULL_WIDTH, RSC_CD_FIXEDLINE_HEIGHT ) ;
-    };
-
-    BUTTONS_OK_CANCEL_HELP_ABREAST( FULL_WIDTH - RSC_SP_DLG_INNERBORDER_RIGHT, ROW_8 )
-};
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svx/source/unodialogs/textconversiondlgs/chinese_translationdialog.cxx b/svx/source/unodialogs/textconversiondlgs/chinese_translationdialog.cxx
index b7d3272..37b53f1 100644
--- a/svx/source/unodialogs/textconversiondlgs/chinese_translationdialog.cxx
+++ b/svx/source/unodialogs/textconversiondlgs/chinese_translationdialog.cxx
@@ -19,7 +19,6 @@
 
 
 #include "chinese_translationdialog.hxx"
-#include "resid.hxx"
 #include "chinese_dictionarydialog.hxx"
 #include <com/sun/star/i18n/TextConversionOption.hpp>
 // header for define RET_OK
@@ -47,9 +46,6 @@ ChineseTranslationDialog::ChineseTranslationDialog( Window* pParent )
     get(m_pRB_To_Traditional, "totraditional");
     get(m_pCB_Translate_Commonterms, "commonterms");
 
-    m_pRB_To_Simplified->SetHelpId( HID_SVX_CHINESE_TRANSLATION_RB_CONVERSION_TO_SIMPLIFIED );
-    m_pRB_To_Traditional->SetHelpId( HID_SVX_CHINESE_TRANSLATION_RB_CONVERSION_TO_TRADITIONAL );
-
     SvtLinguConfig  aLngCfg;
     sal_Bool bValue = sal_Bool();
     Any aAny( aLngCfg.GetProperty( OUString( UPN_IS_DIRECTION_TO_SIMPLIFIED ) ) );
diff --git a/svx/source/unodialogs/textconversiondlgs/resid.cxx b/svx/source/unodialogs/textconversiondlgs/resid.cxx
deleted file mode 100644
index 5b6dfa7..0000000
--- a/svx/source/unodialogs/textconversiondlgs/resid.cxx
+++ /dev/null
@@ -1,44 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include "resid.hxx"
-#include <tools/resmgr.hxx>
-
-//.............................................................................
-namespace textconversiondlgs
-{
-//.............................................................................
-
-static ResMgr* getTextConversionResMgr()
-{
-    static ResMgr* pMgr = NULL;
-    if( ! pMgr )
-        pMgr = ResMgr::CreateResMgr( "textconversiondlgs" );
-    return pMgr;
-}
-TextConversionDlgs_ResId::TextConversionDlgs_ResId(sal_uInt16 nId)
-         : ResId( nId, *getTextConversionResMgr() )
-{
-}
-
-//.............................................................................
-} //end namespace
-//.............................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svx/source/unodialogs/textconversiondlgs/resid.hxx b/svx/source/unodialogs/textconversiondlgs/resid.hxx
deleted file mode 100644
index 389f4342..0000000
--- a/svx/source/unodialogs/textconversiondlgs/resid.hxx
+++ /dev/null
@@ -1,44 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-#ifndef INCLUDED_SVX_SOURCE_UNODIALOGS_TEXTCONVERSIONDLGS_RESID_HXX
-#define INCLUDED_SVX_SOURCE_UNODIALOGS_TEXTCONVERSIONDLGS_RESID_HXX
-
-#include <tools/resid.hxx>
-
-//.............................................................................
-namespace textconversiondlgs
-{
-//.............................................................................
-
-//-----------------------------------------------------------------------------
-/**
-*/
-
-class TextConversionDlgs_ResId : public ResId
-{
- public:
-    TextConversionDlgs_ResId(sal_uInt16 nId);
-};
-
-//.............................................................................
-} //end namespace
-//.............................................................................
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svx/source/unodialogs/textconversiondlgs/resids.hrc b/svx/source/unodialogs/textconversiondlgs/resids.hrc
deleted file mode 100644
index d637e6e..0000000
--- a/svx/source/unodialogs/textconversiondlgs/resids.hrc
+++ /dev/null
@@ -1,26 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-#ifndef _TEXTCONVERSIONDLGS_RESID_HRC
-#define _TEXTCONVERSIONDLGS_RESID_HRC
-
-#define DLG_CHINESEDICTIONARY   301
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svx/uiconfig/ui/chinesedictionary.ui b/svx/uiconfig/ui/chinesedictionary.ui
new file mode 100644
index 0000000..38cfbc5
--- /dev/null
+++ b/svx/uiconfig/ui/chinesedictionary.ui
@@ -0,0 +1,408 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.16.1 -->
+<interface>
+  <requires lib="gtk+" version="3.0"/>
+  <!-- interface-requires LibreOffice 1.0 -->
+  <object class="GtkDialog" id="ChineseDictionaryDialog">
+    <property name="can_focus">False</property>
+    <property name="border_width">6</property>
+    <property name="title" translatable="yes">Edit Dictionary</property>
+    <property name="type_hint">dialog</property>
+    <child internal-child="vbox">
+      <object class="GtkBox" id="dialog-vbox1">
+        <property name="can_focus">False</property>
+        <property name="orientation">vertical</property>
+        <property name="spacing">12</property>
+        <child internal-child="action_area">
+          <object class="GtkButtonBox" id="dialog-action_area1">
+            <property name="can_focus">False</property>
+            <property name="layout_style">end</property>
+            <child>
+              <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>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <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>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+            <child>
+              <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>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">2</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkGrid" id="grid1">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="hexpand">True</property>
+            <property name="vexpand">True</property>
+            <property name="row_spacing">12</property>
+            <child>
+              <object class="GtkGrid" id="grid2">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="row_spacing">6</property>
+                <child>
+                  <object class="GtkRadioButton" id="tradtosimple">
+                    <property name="label" translatable="yes">_Traditional Chinese to simplified Chinese</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="active">True</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">simpletotrad</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>
+                  <object class="GtkRadioButton" id="simpletotrad">
+                    <property name="label" translatable="yes">_Simplified Chinese to traditional Chinese</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">tradtosimple</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>
+                  <object class="GtkCheckButton" id="reverse">
+                    <property name="label" translatable="yes">Reverse mapping</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="xalign">0</property>
+                    <property name="draw_indicator">True</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">2</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+              </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>
+              <object class="GtkGrid" id="grid5">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="hexpand">True</property>
+                <property name="vexpand">True</property>
+                <property name="row_spacing">6</property>
+                <property name="column_spacing">12</property>
+                <child>
+                  <object class="GtkLabel" id="termft">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">Term</property>
+                    <property name="use_underline">True</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>
+                  <object class="GtkEntry" id="term">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="hexpand">True</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>
+                  <object class="GtkLabel" id="mappingft">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">Mapping</property>
+                    <property name="use_underline">True</property>
+                  </object>
+                  <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>
+                  <object class="GtkEntry" id="mapping">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="hexpand">True</property>
+                  </object>
+                  <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>
+                  <object class="GtkLabel" id="propertyft">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">Property</property>
+                    <property name="use_underline">True</property>
+                  </object>
+                  <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="GtkComboBoxText" id="property">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <items>
+                      <item translatable="yes">Other</item>
+                      <item translatable="yes">Foreign</item>
+                      <item translatable="yes">First name</item>
+                      <item translatable="yes">Last name</item>
+                      <item translatable="yes">Title</item>
+                      <item translatable="yes">Status</item>
+                      <item translatable="yes">Place name</item>
+                      <item translatable="yes">Business</item>
+                      <item translatable="yes">Adjective</item>
+                      <item translatable="yes">Idiom</item>
+                      <item translatable="yes">Abbreviation</item>
+                      <item translatable="yes">Numerical</item>
+                      <item translatable="yes">Noun</item>
+                      <item translatable="yes">Verb</item>
+                      <item translatable="yes">Brand name</item>
+                    </items>
+                  </object>
+                  <packing>
+                    <property name="left_attach">2</property>
+                    <property name="top_attach">1</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkButtonBox" id="buttonbox1">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="orientation">vertical</property>
+                    <property name="spacing">6</property>
+                    <property name="layout_style">start</property>
+                    <child>
+                      <object class="GtkButton" id="add">
+                        <property name="label">gtk-add</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">True</property>
+                        <property name="use_stock">True</property>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">True</property>
+                        <property name="position">0</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="modify">
+                        <property name="label" translatable="yes">_Modify</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">True</property>
+                        <property name="use_underline">True</property>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">True</property>
+                        <property name="position">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="delete">
+                        <property name="label">gtk-delete</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">True</property>
+                        <property name="use_stock">True</property>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">True</property>
+                        <property name="position">2</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="left_attach">3</property>
+                    <property name="top_attach">1</property>
+                    <property name="width">1</property>
+                    <property name="height">2</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkGrid" id="grid3">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="vexpand">True</property>
+                    <child>
+                      <object class="svtlo-SvSimpleTableContainer" id="tradtosimpleview:border">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="hexpand">True</property>
+                        <property name="vexpand">True</property>
+                        <child internal-child="selection">
+                          <object class="GtkTreeSelection" id="Simple Table Container-selection"/>
+                        </child>
+                      </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>
+                      <object class="svtlo-SvSimpleTableContainer" id="simpletotradview:border">
+                        <property name="can_focus">True</property>
+                        <property name="no_show_all">True</property>
+                        <property name="hexpand">True</property>
+                        <property name="vexpand">True</property>
+                        <child internal-child="selection">
+                          <object class="GtkTreeSelection" id="Simple Table Container-selection1"/>
+                        </child>
+                      </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>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">2</property>
+                    <property name="width">3</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <placeholder/>
+                </child>
+              </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>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">1</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="0">ok</action-widget>
+      <action-widget response="0">cancel</action-widget>
+      <action-widget response="0">help</action-widget>
+    </action-widgets>
+  </object>
+  <object class="GtkSizeGroup" id="sizegroup2">
+    <widgets>
+      <widget name="termft"/>
+      <widget name="term"/>
+    </widgets>
+  </object>
+  <object class="GtkSizeGroup" id="sizegroup3">
+    <widgets>
+      <widget name="mappingft"/>
+      <widget name="mapping"/>
+    </widgets>
+  </object>
+  <object class="GtkSizeGroup" id="sizegroup4">
+    <widgets>
+      <widget name="propertyft"/>
+      <widget name="property"/>
+    </widgets>
+  </object>
+  <object class="GtkSizeGroup" id="sizegroup1">
+    <property name="mode">both</property>
+    <widgets>
+      <widget name="tradtosimpleview:border"/>
+      <widget name="simpletotradview:border"/>
+    </widgets>
+  </object>
+</interface>
commit 98c94047387179ae3445a4ab56a169b46987b9b5
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Mon Feb 3 16:57:34 2014 +0000

    all the related methods are redirected to *Table() methods
    
    Change-Id: I9a45b7b023d7b01d8b5c35dab0cde07d7b5fc3a3

diff --git a/include/svtools/simptabl.hxx b/include/svtools/simptabl.hxx
index 7c5368a..765d0bf 100644
--- a/include/svtools/simptabl.hxx
+++ b/include/svtools/simptabl.hxx
@@ -99,33 +99,18 @@ public:
 
     void            ClearHeader();
 
-    // to be removed all calls of the related methods are redirected to *Table() methods
-    using Window::Show;
-    using Window::Hide;
-    using Window::Enable;
-    using Window::Disable;
-    using Window::ToTop;
-
-    void            Show();
-    void            Hide();
-    void            Enable();
-    void            Disable();
-    void            ToTop();
-
-    // remove until this line
-
     void            ShowTable();
     void            HideTable();
-    sal_Bool            IsVisible() const;
+    sal_Bool        IsVisible() const;
 
     void            EnableTable();
     void            DisableTable();
-    sal_Bool            IsEnabled() const;
+    sal_Bool        IsEnabled() const;
 
-    sal_uInt16          GetSelectedCol();
+    sal_uInt16      GetSelectedCol();
     void            SortByCol(sal_uInt16,sal_Bool bDir=sal_True);
-    sal_Bool            GetSortDirection(){ return bSortDirection;}
-    sal_uInt16          GetSortedCol(){ return nSortCol;}
+    sal_Bool        GetSortDirection(){ return bSortDirection;}
+    sal_uInt16      GetSortedCol(){ return nSortCol;}
     SvLBoxItem*     GetEntryAtPos( SvTreeListEntry* pEntry, sal_uInt16 nPos ) const;
 
     CommandEvent    GetCommandEvent()const;
commit 8f028bc6f184c7148d6b817864bfa9e533b6e813
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Mon Feb 3 12:14:31 2014 +0000

    convert select data source dialog to .ui
    
    Change-Id: Iecca542c2c425a34184ba2c3ae0e34d093fa6a06

diff --git a/sc/UIConfig_scalc.mk b/sc/UIConfig_scalc.mk
index 6430d5e..e0cd107 100644
--- a/sc/UIConfig_scalc.mk
+++ b/sc/UIConfig_scalc.mk
@@ -135,6 +135,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/scalc,\
 	sc/uiconfig/scalc/ui/standardfilterdialog \
 	sc/uiconfig/scalc/ui/scgeneralpage \
 	sc/uiconfig/scalc/ui/searchresults \
+	sc/uiconfig/scalc/ui/selectdatasource \
 	sc/uiconfig/scalc/ui/selectrange \
 	sc/uiconfig/scalc/ui/selectsource \
 	sc/uiconfig/scalc/ui/sheetprintpage \
diff --git a/sc/inc/helpids.h b/sc/inc/helpids.h
index bf847c6..48193dc 100644
--- a/sc/inc/helpids.h
+++ b/sc/inc/helpids.h
@@ -134,7 +134,6 @@
 #define HID_PASSWD_TABLE                                        "SC_HID_PASSWD_TABLE"
 #define HID_PASSWD_DOC                                          "SC_HID_PASSWD_DOC"
 
-#define HID_DATAPILOT_DATABASE                                  "SC_HID_DATAPILOT_DATABASE"
 #define HID_DATAPILOT_SERVICE                                   "SC_HID_DATAPILOT_SERVICE"
 
 // Other help IDs (max.70) ---------------------------------------------------
diff --git a/sc/inc/sc.hrc b/sc/inc/sc.hrc
index e2def35..3bdad83 100644
--- a/sc/inc/sc.hrc
+++ b/sc/inc/sc.hrc
@@ -1070,10 +1070,7 @@
 #define WID_SIMPLE_REF                  (SC_DIALOGS_START + 126)
 #define RID_POPUP_CHANGES               (SC_DIALOGS_START + 127)
 
-
 #define RID_SCDLG_DAPISERVICE           (SC_DIALOGS_START + 130)
-#define RID_SCDLG_DAPIDATA              (SC_DIALOGS_START + 131)
-
 
 #define RID_SCDLG_DPSUBTOTAL_OPT        (SC_DIALOGS_START + 134)
 #define RID_SCDLG_DPNUMGROUP            (SC_DIALOGS_START + 135)
diff --git a/sc/inc/scabstdlg.hxx b/sc/inc/scabstdlg.hxx
index 9b4491c..0861d60 100644
--- a/sc/inc/scabstdlg.hxx
+++ b/sc/inc/scabstdlg.hxx
@@ -347,7 +347,7 @@ public:
     virtual AbstractScCondFormatManagerDlg* CreateScCondFormatMgrDlg(Window* pParent, ScDocument* pDoc, const ScConditionalFormatList* pFormatList,
                                                                 const ScAddress& rPos, int nId ) = 0;
 
-    virtual AbstractScDataPilotDatabaseDlg * CreateScDataPilotDatabaseDlg (Window* pParent ,int nId ) = 0;
+    virtual AbstractScDataPilotDatabaseDlg * CreateScDataPilotDatabaseDlg(Window* pParent) = 0;
 
     virtual AbstractScDataPilotSourceTypeDlg * CreateScDataPilotSourceTypeDlg(Window* pParent,
         bool bEnableExternal) = 0;
diff --git a/sc/source/ui/attrdlg/scdlgfact.cxx b/sc/source/ui/attrdlg/scdlgfact.cxx
index 84162cf..f9e146c 100644
--- a/sc/source/ui/attrdlg/scdlgfact.cxx
+++ b/sc/source/ui/attrdlg/scdlgfact.cxx
@@ -681,22 +681,10 @@ AbstractScCondFormatManagerDlg* ScAbstractDialogFactory_Impl::CreateScCondFormat
     return NULL;
 }
 
-AbstractScDataPilotDatabaseDlg *  ScAbstractDialogFactory_Impl::CreateScDataPilotDatabaseDlg (Window* pParent ,
-                                                                                              int nId )
+AbstractScDataPilotDatabaseDlg *  ScAbstractDialogFactory_Impl::CreateScDataPilotDatabaseDlg(Window* pParent)
 {
-    ScDataPilotDatabaseDlg * pDlg=NULL;
-    switch ( nId )
-    {
-        case RID_SCDLG_DAPIDATA :
-            pDlg = new ScDataPilotDatabaseDlg( pParent );
-            break;
-        default:
-            break;
-    }
-
-    if ( pDlg )
-        return new AbstractScDataPilotDatabaseDlg_Impl( pDlg );
-    return 0;
+    ScDataPilotDatabaseDlg * pDlg = new ScDataPilotDatabaseDlg( pParent );
+    return new AbstractScDataPilotDatabaseDlg_Impl( pDlg );
 }
 
 AbstractScDataPilotSourceTypeDlg* ScAbstractDialogFactory_Impl::CreateScDataPilotSourceTypeDlg(
diff --git a/sc/source/ui/attrdlg/scdlgfact.hxx b/sc/source/ui/attrdlg/scdlgfact.hxx
index f0176dd..c414cbe 100644
--- a/sc/source/ui/attrdlg/scdlgfact.hxx
+++ b/sc/source/ui/attrdlg/scdlgfact.hxx
@@ -416,7 +416,7 @@ public:
     virtual AbstractScCondFormatManagerDlg* CreateScCondFormatMgrDlg(Window* pParent, ScDocument* pDoc, const ScConditionalFormatList* pFormatList,
                                                                 const ScAddress& rPos, int nId );
 
-    virtual AbstractScDataPilotDatabaseDlg * CreateScDataPilotDatabaseDlg (Window* pParent ,int nId );
+    virtual AbstractScDataPilotDatabaseDlg * CreateScDataPilotDatabaseDlg(Window* pParent);
 
     virtual AbstractScDataPilotSourceTypeDlg* CreateScDataPilotSourceTypeDlg(Window* pParent,
         bool bEnableExternal);
diff --git a/sc/source/ui/dbgui/dapidata.cxx b/sc/source/ui/dbgui/dapidata.cxx
index 09b40af..f3eaad9 100644
--- a/sc/source/ui/dbgui/dapidata.cxx
+++ b/sc/source/ui/dbgui/dapidata.cxx
@@ -55,20 +55,12 @@ using namespace com::sun::star;
 //-------------------------------------------------------------------------
 
 ScDataPilotDatabaseDlg::ScDataPilotDatabaseDlg( Window* pParent ) :
-    ModalDialog     ( pParent, ScResId( RID_SCDLG_DAPIDATA ) ),
-    //
-    aFlFrame        ( this, ScResId( FL_FRAME ) ),
-    aFtDatabase     ( this, ScResId( FT_DATABASE ) ),
-    aLbDatabase     ( this, ScResId( LB_DATABASE ) ),
-    aFtObject       ( this, ScResId( FT_OBJECT ) ),
-    aCbObject       ( this, ScResId( CB_OBJECT ) ),
-    aFtType         ( this, ScResId( FT_OBJTYPE ) ),
-    aLbType         ( this, ScResId( LB_OBJTYPE ) ),
-    aBtnOk          ( this, ScResId( BTN_OK ) ),
-    aBtnCancel      ( this, ScResId( BTN_CANCEL ) ),
-    aBtnHelp        ( this, ScResId( BTN_HELP ) )
+    ModalDialog(pParent, "SelectDataSourceDialog",
+        "modules/scalc/ui/selectdatasource.ui")
 {
-    FreeResource();
+    get(m_pLbDatabase, "database");
+    get(m_pCbObject, "datasource");
+    get(m_pLbType, "type");
 
     WaitObject aWait( this );       // initializing the database service the first time takes a while
 
@@ -84,7 +76,7 @@ ScDataPilotDatabaseDlg::ScDataPilotDatabaseDlg( Window* pParent ) :
         for (long nPos = 0; nPos < nCount; nPos++)
         {
             OUString aName = pArray[nPos];
-            aLbDatabase.InsertEntry( aName );
+            m_pLbDatabase->InsertEntry( aName );
         }
     }
     catch(uno::Exception&)
@@ -92,25 +84,21 @@ ScDataPilotDatabaseDlg::ScDataPilotDatabaseDlg( Window* pParent ) :
         OSL_FAIL("exception in database");
     }
 
-    aLbDatabase.SelectEntryPos( 0 );
-    aLbType.SelectEntryPos( 0 );
+    m_pLbDatabase->SelectEntryPos( 0 );
+    m_pLbType->SelectEntryPos( 0 );
 
     FillObjects();
 
-    aLbDatabase.SetSelectHdl( LINK( this, ScDataPilotDatabaseDlg, SelectHdl ) );
-    aLbType.SetSelectHdl( LINK( this, ScDataPilotDatabaseDlg, SelectHdl ) );
-}
-
-ScDataPilotDatabaseDlg::~ScDataPilotDatabaseDlg()
-{
+    m_pLbDatabase->SetSelectHdl( LINK( this, ScDataPilotDatabaseDlg, SelectHdl ) );
+    m_pLbType->SetSelectHdl( LINK( this, ScDataPilotDatabaseDlg, SelectHdl ) );
 }
 
 void ScDataPilotDatabaseDlg::GetValues( ScImportSourceDesc& rDesc )
 {
-    sal_uInt16 nSelect = aLbType.GetSelectEntryPos();
+    sal_uInt16 nSelect = m_pLbType->GetSelectEntryPos();
 
-    rDesc.aDBName = aLbDatabase.GetSelectEntry();
-    rDesc.aObject = aCbObject.GetText();
+    rDesc.aDBName = m_pLbDatabase->GetSelectEntry();
+    rDesc.aObject = m_pCbObject->GetText();
 
     if (rDesc.aDBName.isEmpty() || rDesc.aObject.isEmpty())
         rDesc.nType = sheet::DataImportMode_NONE;
@@ -132,13 +120,13 @@ IMPL_LINK_NOARG(ScDataPilotDatabaseDlg, SelectHdl)
 
 void ScDataPilotDatabaseDlg::FillObjects()
 {
-    aCbObject.Clear();
+    m_pCbObject->Clear();
 
-    OUString aDatabaseName = aLbDatabase.GetSelectEntry();
+    OUString aDatabaseName = m_pLbDatabase->GetSelectEntry();
     if (aDatabaseName.isEmpty())
         return;
 
-    sal_uInt16 nSelect = aLbType.GetSelectEntryPos();
+    sal_uInt16 nSelect = m_pLbType->GetSelectEntryPos();
     if ( nSelect > DP_TYPELIST_QUERY )
         return;                                 // only tables and queries
 
@@ -193,7 +181,7 @@ void ScDataPilotDatabaseDlg::FillObjects()
         for( long nPos=0; nPos<nCount; nPos++ )
         {
             OUString aName = pArray[nPos];
-            aCbObject.InsertEntry( aName );
+            m_pCbObject->InsertEntry( aName );
         }
     }
     catch(uno::Exception&)
diff --git a/sc/source/ui/dbgui/dapitype.hrc b/sc/source/ui/dbgui/dapitype.hrc
index 0ed7e85..424a222 100644
--- a/sc/source/ui/dbgui/dapitype.hrc
+++ b/sc/source/ui/dbgui/dapitype.hrc
@@ -32,11 +32,5 @@
 #define ED_USER         16
 #define FT_PASSWD       17
 #define ED_PASSWD       18
-#define FT_DATABASE     19
-#define LB_DATABASE     20
-#define FT_OBJECT       21
-#define CB_OBJECT       22
-#define FT_OBJTYPE      23
-#define LB_OBJTYPE      24
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/ui/dbgui/dapitype.src b/sc/source/ui/dbgui/dapitype.src
index 39f34a8..3160935 100644
--- a/sc/source/ui/dbgui/dapitype.src
+++ b/sc/source/ui/dbgui/dapitype.src
@@ -128,100 +128,4 @@ ModalDialog RID_SCDLG_DAPISERVICE
     Text [ en-US ] = "External Source";
 };
 
-
-//------------------------------------------------------------------------
-
-
-ModalDialog RID_SCDLG_DAPIDATA
-{
-    OutputSize = TRUE ;
-    HelpId = HID_DATAPILOT_DATABASE ;
-    SVLook = TRUE ;
-    Size = MAP_APPFONT ( 241 , 63 ) ;
-    Moveable = TRUE ;
-    Closeable = FALSE ;
-    OKButton BTN_OK
-    {
-        Pos = MAP_APPFONT ( 185 , 6 ) ;
-        Size = MAP_APPFONT ( 50 , 14 ) ;
-        TabStop = TRUE ;
-        DefButton = TRUE ;
-    };
-    CancelButton BTN_CANCEL
-    {
-        Pos = MAP_APPFONT ( 185 , 23 ) ;
-        Size = MAP_APPFONT ( 50 , 14 ) ;
-        TabStop = TRUE ;
-    };
-    HelpButton BTN_HELP
-    {
-        Pos = MAP_APPFONT ( 185 , 43 ) ;
-        Size = MAP_APPFONT ( 50 , 14 ) ;
-        TabStop = TRUE ;
-    };
-
-    FixedText FT_DATABASE
-    {
-        Pos = MAP_APPFONT ( 12 , 14 ) ;
-        Size = MAP_APPFONT ( 52 , 8 ) ;
-        Text [ en-US ] = "~Database";
-    };
-    ListBox LB_DATABASE
-    {
-        HelpID = "sc:ListBox:RID_SCDLG_DAPIDATA:LB_DATABASE";
-        Border = TRUE ;
-        Pos = MAP_APPFONT ( 66 , 12 ) ;
-        Size = MAP_APPFONT ( 110 , 80 ) ;
-        TabStop = TRUE ;
-        DropDown = TRUE ;
-    };
-
-    FixedText FT_OBJECT
-    {
-        Pos = MAP_APPFONT ( 12 , 30 ) ;
-        Size = MAP_APPFONT ( 52 , 8 ) ;
-        Text [ en-US ] = "Data so~urce";
-    };
-    ComboBox CB_OBJECT
-    {
-        HelpID = "sc:ComboBox:RID_SCDLG_DAPIDATA:CB_OBJECT";
-        Border = TRUE ;
-        Pos = MAP_APPFONT ( 66 , 28 ) ;
-        Size = MAP_APPFONT ( 110 , 80 ) ;
-        TabStop = TRUE ;
-        DropDown = TRUE ;
-    };
-
-    FixedText FT_OBJTYPE
-    {
-        Pos = MAP_APPFONT ( 12 , 46 ) ;
-        Size = MAP_APPFONT ( 52 , 8 ) ;
-        Text [ en-US ] = "~Type";
-    };
-    ListBox LB_OBJTYPE
-    {
-        HelpID = "sc:ListBox:RID_SCDLG_DAPIDATA:LB_OBJTYPE";
-        Border = TRUE ;
-        Pos = MAP_APPFONT ( 66 , 44 ) ;
-        Size = MAP_APPFONT ( 110 , 80 ) ;
-        TabStop = TRUE ;
-        DropDown = TRUE ;
-    StringList [ en-US ] =
-    {
-            < "Sheet" ; Default ; > ;
-        < "Query" ; Default ; > ;
-        < "Sql" ; Default ; > ;
-        < "Sql [Native]" ; Default ; > ;
-    };
-    };
-
-    FixedLine FL_FRAME
-    {
-        Pos = MAP_APPFONT ( 6 , 3 ) ;
-        Size = MAP_APPFONT ( 173 , 8 ) ;
-        Text [ en-US ] = "Selection";
-    };
-    Text [ en-US ] = "Select Data Source";
-};
-
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/ui/inc/dapidata.hxx b/sc/source/ui/inc/dapidata.hxx
index 85fa4be..5d1c989 100644
--- a/sc/source/ui/inc/dapidata.hxx
+++ b/sc/source/ui/inc/dapidata.hxx
@@ -22,42 +22,28 @@
 
 #include <vcl/button.hxx>
 #include <vcl/dialog.hxx>
-#include <vcl/fixed.hxx>
 #include <vcl/lstbox.hxx>
 #include <vcl/combobox.hxx>
 
-//------------------------------------------------------------------------
-
 struct ScImportSourceDesc;
 
-
 class ScDataPilotDatabaseDlg : public ModalDialog
 {
 private:
-    FixedLine       aFlFrame;
-    FixedText       aFtDatabase;
-    ListBox         aLbDatabase;
-    FixedText       aFtObject;
-    ComboBox        aCbObject;
-    FixedText       aFtType;
-    ListBox         aLbType;
-    OKButton        aBtnOk;
-    CancelButton    aBtnCancel;
-    HelpButton      aBtnHelp;
+    ListBox*  m_pLbDatabase;
+    ComboBox* m_pCbObject;
+    ListBox*  m_pLbType;
 
     void    FillObjects();
 
     DECL_LINK( SelectHdl, void* );
 
 public:
-            ScDataPilotDatabaseDlg( Window* pParent );
-            ~ScDataPilotDatabaseDlg();
+    ScDataPilotDatabaseDlg(Window* pParent);
 
     void    GetValues( ScImportSourceDesc& rDesc );
 };
 
-
 #endif
 
-
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/ui/view/cellsh1.cxx b/sc/source/ui/view/cellsh1.cxx
index 1c4450d..aeba2ea 100644
--- a/sc/source/ui/view/cellsh1.cxx
+++ b/sc/source/ui/view/cellsh1.cxx
@@ -2576,7 +2576,7 @@ void ScCellShell::ExecuteDataPilotDialog()
 
                 ::boost::scoped_ptr<AbstractScDataPilotDatabaseDlg> pDataDlg(
                     pFact->CreateScDataPilotDatabaseDlg(
-                        pTabViewShell->GetDialogParent(), RID_SCDLG_DAPIDATA));
+                        pTabViewShell->GetDialogParent()));
 
                 OSL_ENSURE(pDataDlg, "Dialog create fail!");
                 if ( pDataDlg->Execute() == RET_OK )
diff --git a/sc/uiconfig/scalc/ui/selectdatasource.ui b/sc/uiconfig/scalc/ui/selectdatasource.ui
new file mode 100644
index 0000000..e886c8c
--- /dev/null
+++ b/sc/uiconfig/scalc/ui/selectdatasource.ui
@@ -0,0 +1,221 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.16.1 -->
+<interface>
+  <requires lib="gtk+" version="3.0"/>
+  <object class="GtkDialog" id="SelectDataSourceDialog">
+    <property name="can_focus">False</property>
+    <property name="border_width">6</property>
+    <property name="title" translatable="yes">Select Data Source</property>
+    <property name="type_hint">dialog</property>
+    <child internal-child="vbox">
+      <object class="GtkBox" id="dialog-vbox3">
+        <property name="can_focus">False</property>
+        <property name="orientation">vertical</property>
+        <property name="spacing">12</property>
+        <child internal-child="action_area">
+          <object class="GtkButtonBox" id="dialog-action_area3">
+            <property name="can_focus">False</property>
+            <property name="layout_style">end</property>
+            <child>
+              <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>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <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>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+            <child>
+              <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>
+                <property name="use_stock">True</property>
+                <property name="image_position">top</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">2</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkFrame" id="Selection">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="hexpand">True</property>
+            <property name="label_xalign">0</property>
+            <property name="shadow_type">none</property>
+            <child>
+              <object class="GtkAlignment" id="alignment3">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="hexpand">True</property>
+                <property name="top_padding">6</property>
+                <property name="left_padding">12</property>
+                <child>
+                  <object class="GtkGrid" id="grid1">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="hexpand">True</property>
+                    <property name="row_spacing">6</property>
+                    <property name="column_spacing">12</property>
+                    <child>
+                      <object class="GtkLabel" id="label2">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">_Database</property>
+                        <property name="use_underline">True</property>
+                        <property name="mnemonic_widget">database</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>
+                      <object class="GtkLabel" id="label3">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">Data so_urce</property>
+                        <property name="use_underline">True</property>
+                        <property name="mnemonic_widget">datasource</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>
+                      <object class="GtkLabel" id="label4">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">_Type</property>
+                        <property name="use_underline">True</property>
+                        <property name="mnemonic_widget">type</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">0</property>
+                        <property name="top_attach">2</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkComboBoxText" id="database">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="hexpand">True</property>
+                      </object>
+                      <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>
+                      <object class="GtkComboBoxText" id="type">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="hexpand">True</property>
+                        <items>
+                          <item translatable="yes">Sheet</item>
+                          <item translatable="yes">Query</item>
+                          <item translatable="yes">Sql</item>
+                          <item translatable="yes">Sql [Native]</item>
+                        </items>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="top_attach">2</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkComboBoxText" id="datasource">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="hexpand">True</property>
+                        <property name="has_entry">True</property>
+                        <child internal-child="entry">
+                          <object class="GtkEntry" id="comboboxtext-entry">
+                            <property name="can_focus">False</property>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="top_attach">1</property>

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list