summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNiklas Nebel <nn@openoffice.org>2001-03-13 09:05:29 +0000
committerNiklas Nebel <nn@openoffice.org>2001-03-13 09:05:29 +0000
commit96dfacf24aefd8c5850d442d2e19d321c451d1fc (patch)
tree057ed98030f47de800db9b6ef16d3ed07e41a552
parent3b28ab42391e4c16665a1705053efd4a4f67abbf (diff)
language and algorithm in sort dialog
-rw-r--r--sc/source/ui/dbgui/tpsort.cxx282
-rw-r--r--sc/source/ui/inc/sortdlg.hrc11
-rw-r--r--sc/source/ui/inc/tpsort.hxx24
-rw-r--r--sc/source/ui/src/sortdlg.src105
4 files changed, 184 insertions, 238 deletions
diff --git a/sc/source/ui/dbgui/tpsort.cxx b/sc/source/ui/dbgui/tpsort.cxx
index d44150b16893..31684672f7d5 100644
--- a/sc/source/ui/dbgui/tpsort.cxx
+++ b/sc/source/ui/dbgui/tpsort.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: tpsort.cxx,v $
*
- * $Revision: 1.1.1.1 $
+ * $Revision: 1.2 $
*
- * last change: $Author: hr $ $Date: 2000-09-18 16:44:54 $
+ * last change: $Author: nn $ $Date: 2001-03-13 10:05:29 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -65,10 +65,12 @@
#pragma hdrstop
-#ifndef PCH
#include <vcl/msgbox.hxx>
-#include <segmentc.hxx>
-#endif
+#include <tools/isolang.hxx>
+#include <svtools/collatorres.hxx>
+#include <unotools/collatorwrapper.hxx>
+#include <unotools/localedatawrapper.hxx>
+#include <comphelper/processfactory.hxx>
#include "scitems.hxx"
#include "uiitems.hxx"
@@ -89,6 +91,8 @@
#include "tpsort.hxx"
#undef _TPSORT_CXX
+using namespace com::sun::star;
+
// STATIC DATA -----------------------------------------------------------
static USHORT pSortRanges[] =
@@ -98,8 +102,6 @@ static USHORT pSortRanges[] =
0
};
-SEG_EOFGLOBALS()
-
// -----------------------------------------------------------------------
/*
@@ -124,7 +126,6 @@ SEG_EOFGLOBALS()
//========================================================================
//========================================================================
// Sortierkriterien-Tabpage:
-#pragma SEG_FUNCDEF(tpsort_01)
ScTabPageSortFields::ScTabPageSortFields( Window* pParent,
const SfxItemSet& rArgSet )
@@ -167,14 +168,12 @@ ScTabPageSortFields::ScTabPageSortFields( Window* pParent,
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_1e)
__EXPORT ScTabPageSortFields::~ScTabPageSortFields()
{
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_02)
void ScTabPageSortFields::Init()
{
@@ -209,7 +208,6 @@ void ScTabPageSortFields::Init()
}
//------------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_1c)
USHORT* __EXPORT ScTabPageSortFields::GetRanges()
{
@@ -217,7 +215,6 @@ USHORT* __EXPORT ScTabPageSortFields::GetRanges()
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_03)
SfxTabPage* __EXPORT ScTabPageSortFields::Create( Window* pParent,
const SfxItemSet& rArgSet )
@@ -226,7 +223,6 @@ SfxTabPage* __EXPORT ScTabPageSortFields::Create( Window* pParent,
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_04)
void __EXPORT ScTabPageSortFields::Reset( const SfxItemSet& rArgSet )
{
@@ -287,7 +283,6 @@ void __EXPORT ScTabPageSortFields::Reset( const SfxItemSet& rArgSet )
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_05)
BOOL __EXPORT ScTabPageSortFields::FillItemSet( SfxItemSet& rArgSet )
{
@@ -354,7 +349,6 @@ BOOL __EXPORT ScTabPageSortFields::FillItemSet( SfxItemSet& rArgSet )
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_06)
// fuer Datenaustausch ohne Dialog-Umweg: (! noch zu tun !)
// void ScTabPageSortFields::ActivatePage( const SfxItemSet& rSet )
@@ -381,7 +375,6 @@ void __EXPORT ScTabPageSortFields::ActivatePage()
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_07)
int __EXPORT ScTabPageSortFields::DeactivatePage( SfxItemSet* pSet )
{
@@ -401,7 +394,6 @@ int __EXPORT ScTabPageSortFields::DeactivatePage( SfxItemSet* pSet )
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_08)
void ScTabPageSortFields::DisableField( USHORT nField )
{
@@ -417,7 +409,6 @@ void ScTabPageSortFields::DisableField( USHORT nField )
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_09)
void ScTabPageSortFields::EnableField( USHORT nField )
{
@@ -433,7 +424,6 @@ void ScTabPageSortFields::EnableField( USHORT nField )
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_0a)
void ScTabPageSortFields::FillFieldLists()
{
@@ -505,7 +495,6 @@ void ScTabPageSortFields::FillFieldLists()
}
//------------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_19)
USHORT ScTabPageSortFields::GetFieldSelPos( USHORT nField )
{
@@ -527,7 +516,6 @@ USHORT ScTabPageSortFields::GetFieldSelPos( USHORT nField )
// -----------------------------------------------------------------------
// Handler:
//---------
-#pragma SEG_FUNCDEF(tpsort_0b)
IMPL_LINK( ScTabPageSortFields, SelectHdl, ListBox *, pLb )
{
@@ -572,7 +560,6 @@ IMPL_LINK( ScTabPageSortFields, SelectHdl, ListBox *, pLb )
//========================================================================
// Sortieroptionen-Tabpage:
//========================================================================
-#pragma SEG_FUNCDEF(tpsort_0c)
ScTabPageSortOptions::ScTabPageSortOptions( Window* pParent,
const SfxItemSet& rArgSet )
@@ -585,15 +572,18 @@ ScTabPageSortOptions::ScTabPageSortOptions( Window* pParent,
aBtnHeader ( this, ScResId( BTN_LABEL ) ),
aBtnFormats ( this, ScResId( BTN_FORMATS ) ),
aBtnCopyResult ( this, ScResId( BTN_COPYRESULT ) ),
- aLbSortUser ( this, ScResId( LB_SORT_USER ) ),
- aBtnSortUser ( this, ScResId( BTN_SORT_USER ) ),
aLbOutPos ( this, ScResId( LB_OUTAREA ) ),
aEdOutPos ( this, ScResId( ED_OUTAREA ) ),
+ aBtnSortUser ( this, ScResId( BTN_SORT_USER ) ),
+ aLbSortUser ( this, ScResId( LB_SORT_USER ) ),
+ aLineLang ( this, ScResId( FL_LANGUAGE ) ),
+ aLbLanguage ( this, ScResId( LB_LANGUAGE ) ),
+ aLbAlgorithm ( this, ScResId( LB_ALGORITHM ) ),
+ aLineDirection ( this, ScResId( FL_DIRECTION ) ),
aBtnTopDown ( this, ScResId( BTN_TOP_DOWN ) ),
aBtnLeftRight ( this, ScResId( BTN_LEFT_RIGHT ) ),
- aGbDirection ( this, ScResId( GB_DIRECTION ) ),
aFtAreaLabel ( this, ScResId( FT_AREA_LABEL ) ),
- aFtArea ( this, ScResId( FT_AREA ) ),
+// aFtArea ( this, ScResId( FT_AREA ) ),
//
aStrColLabel ( ScResId( STR_COL_LABEL ) ),
aStrRowLabel ( ScResId( STR_ROW_LABEL ) ),
@@ -605,7 +595,9 @@ ScTabPageSortOptions::ScTabPageSortOptions( Window* pParent,
rSortData ( ((const ScSortItem&)
rArgSet.Get( nWhichSort )).GetSortData() ),
pViewData ( NULL ),
- pDoc ( NULL )
+ pDoc ( NULL ),
+ pColRes ( NULL ),
+ pColWrap ( NULL )
{
Init();
FreeResource();
@@ -613,7 +605,6 @@ ScTabPageSortOptions::ScTabPageSortOptions( Window* pParent,
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_0d)
__EXPORT ScTabPageSortOptions::~ScTabPageSortOptions()
{
@@ -621,13 +612,24 @@ __EXPORT ScTabPageSortOptions::~ScTabPageSortOptions()
for ( USHORT i=1; i<nEntries; i++ )
delete (String*)aLbOutPos.GetEntryData( i );
+
+ delete pColRes;
+ delete pColWrap; //! not if from document
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_0e)
void ScTabPageSortOptions::Init()
{
+ aStrAreaLabel = aFtAreaLabel.GetText();
+ aStrAreaLabel.Append( (sal_Unicode) ' ' );
+
+ // CollatorRessource has user-visible names for sort algorithms
+ pColRes = new CollatorRessource();
+
+ //! use CollatorWrapper from document?
+ pColWrap = new CollatorWrapper( comphelper::getProcessServiceFactory() );
+
const ScSortItem& rSortItem = (const ScSortItem&)
GetItemSet().Get( nWhichSort );
@@ -636,6 +638,7 @@ void ScTabPageSortOptions::Init()
aBtnSortUser.SetClickHdl ( LINK( this, ScTabPageSortOptions, EnableHdl ) );
aBtnTopDown.SetClickHdl ( LINK( this, ScTabPageSortOptions, SortDirHdl ) );
aBtnLeftRight.SetClickHdl ( LINK( this, ScTabPageSortOptions, SortDirHdl ) );
+ aLbLanguage.SetSelectHdl ( LINK( this, ScTabPageSortOptions, FillAlgorHdl ) );
pViewData = rSortItem.GetViewData();
pDoc = pViewData ? pViewData->GetDocument() : NULL;
@@ -696,15 +699,29 @@ void ScTabPageSortOptions::Init()
theArea += theDbName;
theArea += ')';
- aFtArea.SetText( theArea );
+ //aFtArea.SetText( theArea );
+ theArea.Insert( aStrAreaLabel, 0 );
+ aFtAreaLabel.SetText( theArea );
+
aBtnHeader.SetText( aStrColLabel );
}
FillUserSortListBox();
+
+ // get available languages
+
+ aLbLanguage.InsertLanguage( LANGUAGE_SYSTEM );
+ uno::Sequence<lang::Locale> xLoc = LocaleDataWrapper::getInstalledLocaleNames();
+ sal_Int32 nCount = xLoc.getLength();
+ for ( sal_Int32 i=0; i<nCount; i++ )
+ {
+ LanguageType eLang = ConvertIsoNamesToLanguage( xLoc[i].Language,
+ xLoc[i].Country );
+ aLbLanguage.InsertLanguage( eLang );
+ }
}
//------------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_1d)
USHORT* __EXPORT ScTabPageSortOptions::GetRanges()
{
@@ -712,7 +729,6 @@ USHORT* __EXPORT ScTabPageSortOptions::GetRanges()
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_0f)
SfxTabPage* __EXPORT ScTabPageSortOptions::Create(
Window* pParent,
@@ -722,7 +738,6 @@ SfxTabPage* __EXPORT ScTabPageSortOptions::Create(
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_10)
void __EXPORT ScTabPageSortOptions::Reset( const SfxItemSet& rArgSet )
{
@@ -754,6 +769,16 @@ void __EXPORT ScTabPageSortOptions::Reset( const SfxItemSet& rArgSet )
aBtnHeader.SetText( aStrRowLabel );
}
+ LanguageType eLang = ConvertIsoNamesToLanguage(
+ rSortData.aCollatorLocale.Language,
+ rSortData.aCollatorLocale.Country );
+ if ( eLang == LANGUAGE_DONTKNOW )
+ eLang = LANGUAGE_SYSTEM;
+ aLbLanguage.SelectLanguage( eLang );
+ FillAlgorHdl( &aLbLanguage ); // get algorithms, select default
+ if ( rSortData.aCollatorAlgorithm.Len() )
+ aLbAlgorithm.SelectEntry( pColRes->GetTranslation( rSortData.aCollatorAlgorithm ) );
+
if ( pDoc && !rSortData.bInplace )
{
String aStr;
@@ -784,7 +809,6 @@ void __EXPORT ScTabPageSortOptions::Reset( const SfxItemSet& rArgSet )
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_11)
BOOL __EXPORT ScTabPageSortOptions::FillItemSet( SfxItemSet& rArgSet )
{
@@ -810,13 +834,27 @@ BOOL __EXPORT ScTabPageSortOptions::FillItemSet( SfxItemSet& rArgSet )
? aLbSortUser.GetSelectEntryPos()
: 0;
+ // get locale
+ LanguageType eLang = aLbLanguage.GetSelectLanguage();
+ String sLangStr, sCountry;
+ ConvertLanguageToIsoNames( eLang, sLangStr, sCountry );
+ lang::Locale aLocale( sLangStr, sCountry, rtl::OUString() );
+ theSortData.aCollatorLocale = aLocale;
+
+ // get algorithm
+ String sAlg;
+ uno::Sequence<rtl::OUString> aAlgos = pColWrap->listCollatorAlgorithms( aLocale );
+ USHORT nSel = aLbAlgorithm.GetSelectEntryPos();
+ if ( nSel < aAlgos.getLength() )
+ sAlg = aAlgos[nSel];
+ theSortData.aCollatorAlgorithm = sAlg;
+
rArgSet.Put( ScSortItem( SCITEM_SORTDATA, &theSortData ) );
return TRUE;
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_12)
// fuer Datenaustausch ohne Dialog-Umweg: (! noch zu tun !)
// void ScTabPageSortOptions::ActivatePage( const SfxItemSet& rSet )
@@ -842,7 +880,6 @@ void __EXPORT ScTabPageSortOptions::ActivatePage()
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_13)
int __EXPORT ScTabPageSortOptions::DeactivatePage( SfxItemSet* pSet )
{
@@ -890,7 +927,6 @@ int __EXPORT ScTabPageSortOptions::DeactivatePage( SfxItemSet* pSet )
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_14)
void ScTabPageSortOptions::FillUserSortListBox()
{
@@ -908,7 +944,6 @@ void ScTabPageSortOptions::FillUserSortListBox()
// -----------------------------------------------------------------------
// Handler:
-#pragma SEG_FUNCDEF(tpsort_15)
IMPL_LINK( ScTabPageSortOptions, EnableHdl, CheckBox *, pBox )
{
@@ -940,7 +975,6 @@ IMPL_LINK( ScTabPageSortOptions, EnableHdl, CheckBox *, pBox )
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_16)
IMPL_LINK( ScTabPageSortOptions, SelOutPosHdl, ListBox *, pLb )
{
@@ -958,7 +992,6 @@ IMPL_LINK( ScTabPageSortOptions, SelOutPosHdl, ListBox *, pLb )
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_17)
IMPL_LINK( ScTabPageSortOptions, SortDirHdl, RadioButton *, pBtn )
{
@@ -974,7 +1007,6 @@ IMPL_LINK( ScTabPageSortOptions, SortDirHdl, RadioButton *, pBtn )
}
// -----------------------------------------------------------------------
-#pragma SEG_FUNCDEF(tpsort_1b)
void __EXPORT ScTabPageSortOptions::EdOutPosModHdl( Edit* pEd )
{
@@ -1004,156 +1036,34 @@ void __EXPORT ScTabPageSortOptions::EdOutPosModHdl( Edit* pEd )
}
}
-/*------------------------------------------------------------------------
-
- $Log: not supported by cvs2svn $
- Revision 1.44 2000/09/17 14:08:58 willem.vandorp
- OpenOffice header added.
-
- Revision 1.43 2000/08/31 16:38:21 willem.vandorp
- Header and footer replaced
-
- Revision 1.42 2000/05/23 13:41:40 nn
- FillFieldLists: CreateFromInt32
-
- Revision 1.41 2000/04/14 17:38:03 nn
- unicode changes
-
- Revision 1.40 2000/02/24 16:09:52 hr
- #43447# gcc needs temporary
-
- Revision 1.39 2000/02/11 12:24:13 hr
- #70473# changes for unicode ( patched by automated patchtool )
-
- Revision 1.38 1999/05/28 16:05:24 NN
- #66447# MAXFIELDS ist fuer Feldanzahl, nicht Spaltennummer
-
-
- Rev 1.37 28 May 1999 18:05:24 NN
- #66447# MAXFIELDS ist fuer Feldanzahl, nicht Spaltennummer
-
- Rev 1.36 05 Dec 1997 19:54:20 ANK
- Includes geaendert
-
- Rev 1.35 12 Jun 1997 13:17:16 NN
- #40646# STR_DB_NONAME statt SCSTR_NONAME fuer DB-Bereiche
-
- Rev 1.34 05 Feb 1997 21:29:10 NN
- SfxTabPage Umstellung: FillItemSet bekommt leeren Set
-
- Rev 1.33 22 Jan 1997 17:09:44 NN
- #35176# Header-Flag im FillItemSet der OptionsPage, alter Param als Default
-
- Rev 1.32 29 Oct 1996 14:04:12 NN
- ueberall ScResId statt ResId
-
- Rev 1.31 18 Jul 1996 16:52:48 NN
- DB-Bereiche als Ziel, ScAreaNameIterator benutzen
-
- Rev 1.30 29 Jan 1996 15:12:34 MO
- neuer Link
-
- Rev 1.29 17 Dec 1995 12:47:42 MD
- Semikolon in Zeile 822 entfernt
-
- Rev 1.28 28 Nov 1995 10:32:54 MO
- Tripel/Area durch Address/Range ersetzt
-
- Rev 1.27 08 Nov 1995 13:06:24 MO
- 301-Aenderungen
-
- Rev 1.26 14 Sep 1995 12:43:12 MO
- FixedInfos
-
- Rev 1.25 24 Jul 1995 14:15:54 MO
- EXPORT
-
- Rev 1.24 04 Jul 1995 18:29:00 MO
- __EXPORTs
-
- Rev 1.23 30 Jun 1995 17:50:12 HJS
- exports fuer create
-
- Rev 1.22 18 Apr 1995 10:04:12 MO
- FixedText fuer TabBereich mit Light-Font
-
- Rev 1.21 02 Mar 1995 16:20:36 MO
- InfoBoxen mit Rsc-Strings
-
- Rev 1.20 05 Feb 1995 12:17:48 MO
- * Reset() aus den Ctors entfernt
-
-
- Rev 1.19 01 Feb 1995 09:32:20 MO
- * __EXPORT vor Destruktoren
-
-
- Rev 1.18 31 Jan 1995 11:55:36 MO
- * User-Listen einlesen/auswerten
- * Activate()-Handler wird nun wieder gerufen
-
- Rev 1.17 27 Jan 1995 16:16:32 MO
- * Umstellung auf Slot-IDs
- * GetRanges()-Methode
-
- Rev 1.16 25 Jan 1995 13:42:52 MO
- Umbenennung tp_* tp*
-
- Rev 1.15 25 Jan 1995 12:59:16 MO
- * Kopierziel kann wie in den Filterdialogen ueber eine ListBox
- ausgewaehlt werden.
- * Auswertung der Zielposition im Reset()
-
- Rev 1.14 22 Jan 1995 19:38:42 NN
- Position des DB-Bereichs im Output-Item initialisieren
-
- Rev 1.13 22 Jan 1995 15:10:14 SC
- 2.37 Anpassung
-
- Rev 1.12 19 Jan 1995 16:40:10 TRI
- __EXPORT vor verschiedene LinkHandler gesetzt
-
- Rev 1.11 18 Jan 1995 13:56:24 TRI
- Pragmas zur Segementierung eingebaut
-
- Rev 1.10 13 Jan 1995 10:26:06 MO
- Erkennen von DB-Bereichen in uebergebener Selektion
- Ueberpruefung von eingegebenem Kopierbereich
-
- Rev 1.9 12 Jan 1995 14:48:00 MO
- * Verwendung von ScRangeUtil
-
- Rev 1.8 10 Jan 1995 16:43:38 MO
- ScSortParam mit Arrays
-
- Rev 1.7 09 Jan 1995 11:16:16 MO
- Umstellung auf ScSortItem mit ScSortParam als Member
-
- Rev 1.6 05 Jan 1995 16:14:50 MO
- Sortierfeld-Selektion bleibt jetzt erhalten, wenn auf Options-Page
- zwischen Zeilen-/Spalten-weise sortieren bzw. Koepfe/nicht-Koepfe
- umgeschaltet wird.
-
- Rev 1.5 04 Jan 1995 19:28:40 MO
- Verwendung von DbUiUtil
+// -----------------------------------------------------------------------
- Rev 1.4 04 Jan 1995 13:10:38 MO
- Reset(): Enable des zweiten Sortierkriteriums korrigiert
+IMPL_LINK( ScTabPageSortOptions, FillAlgorHdl, void *, EMPTYARG )
+{
+ LanguageType eLang = aLbLanguage.GetSelectLanguage();
+ String sLangStr, sCountry;
+ ConvertLanguageToIsoNames( eLang, sLangStr, sCountry );
- Rev 1.3 21 Dec 1994 18:16:12 MO
- Feld- und Optionenseiten teilen sich ihre Aenderungen ueber
- den TabDialog mit (Sortierrichtung und Koepfe ja/nein)
+ lang::Locale aLocale( sLangStr, sCountry, rtl::OUString() );
+ uno::Sequence<rtl::OUString> aAlgos = pColWrap->listCollatorAlgorithms( aLocale );
- Rev 1.2 21 Dec 1994 12:16:24 MO
- vorlaeufige Version
+ aLbAlgorithm.SetUpdateMode( FALSE );
+ aLbAlgorithm.Clear();
- Rev 1.1 14 Dec 1994 13:51:58 MO
- Globale ResIds jetzt in sc.hrc
+ long nCount = aAlgos.getLength();
+ const rtl::OUString* pArray = aAlgos.getConstArray();
+ for (long i=0; i<nCount; i++)
+ {
+ String sAlg = pArray[i];
+ String sUser = pColRes->GetTranslation( sAlg );
+ aLbAlgorithm.InsertEntry( sUser, LISTBOX_APPEND );
+ }
+ aLbAlgorithm.SelectEntryPos( 0 ); // first entry is default
- Rev 1.0 13 Dec 1994 20:51:12 MO
- Initial revision.
+ aLbAlgorithm.Enable( nCount > 1 ); // enable only if there is a choice
-------------------------------------------------------------------------*/
+ aLbAlgorithm.SetUpdateMode( TRUE );
+ return 0;
+}
-#pragma SEG_EOFMODULE
diff --git a/sc/source/ui/inc/sortdlg.hrc b/sc/source/ui/inc/sortdlg.hrc
index e3fafa2e4d03..d7490e5545b8 100644
--- a/sc/source/ui/inc/sortdlg.hrc
+++ b/sc/source/ui/inc/sortdlg.hrc
@@ -2,9 +2,9 @@
*
* $RCSfile: sortdlg.hrc,v $
*
- * $Revision: 1.1.1.1 $
+ * $Revision: 1.2 $
*
- * last change: $Author: hr $ $Date: 2000-09-18 16:45:01 $
+ * last change: $Author: nn $ $Date: 2001-03-13 10:03:17 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -91,12 +91,12 @@
#define BTN_DOWN3 12
// TP_SORT_OPTIONS:
-#define GB_DIRECTION 1
+#define FL_DIRECTION 1
#define LB_SORT_USER 2
#define LB_OUTAREA 3
#define ED_OUTAREA 4
#define FT_AREA_LABEL 5
-#define FT_AREA 6
+//#define FT_AREA 6
#define BTN_SORT_USER 7
#define BTN_CASESENSITIVE 8
#define BTN_LABEL 9
@@ -106,6 +106,9 @@
#define BTN_LEFT_RIGHT 13
#define STR_COL_LABEL 14
#define STR_ROW_LABEL 15
+#define FL_LANGUAGE 16
+#define LB_LANGUAGE 17
+#define LB_ALGORITHM 18
diff --git a/sc/source/ui/inc/tpsort.hxx b/sc/source/ui/inc/tpsort.hxx
index b2b871272cde..b62ec31433e7 100644
--- a/sc/source/ui/inc/tpsort.hxx
+++ b/sc/source/ui/inc/tpsort.hxx
@@ -2,9 +2,9 @@
*
* $RCSfile: tpsort.hxx,v $
*
- * $Revision: 1.2 $
+ * $Revision: 1.3 $
*
- * last change: $Author: er $ $Date: 2001-03-12 16:49:49 $
+ * last change: $Author: nn $ $Date: 2001-03-13 10:03:17 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -87,6 +87,10 @@
#include <svtools/stdctrl.hxx>
#endif
+#ifndef _SVX_LANGBOX_HXX
+#include <svx/langbox.hxx>
+#endif
+
#ifndef SC_SCGLOB_HXX
#include "global.hxx"
@@ -175,6 +179,8 @@ private:
class ScDocument;
class ScRangeData;
+class CollatorRessource;
+class CollatorWrapper;
class ScTabPageSortOptions : public SfxTabPage
{
@@ -208,15 +214,21 @@ private:
CheckBox aBtnSortUser;
ListBox aLbSortUser;
+ FixedLine aLineLang;
+ SvxLanguageBox aLbLanguage;
+ ListBox aLbAlgorithm;
+
+ FixedLine aLineDirection;
RadioButton aBtnTopDown;
RadioButton aBtnLeftRight;
- GroupBox aGbDirection;
+
FixedText aFtAreaLabel;
- FixedInfo aFtArea;
+// FixedInfo aFtArea;
String aStrRowLabel;
String aStrColLabel;
String aStrUndefined;
String aStrNoName;
+ String aStrAreaLabel;
const USHORT nWhichSort;
const ScSortParam& rSortData;
@@ -225,6 +237,9 @@ private:
ScSortDlg* pDlg;
ScAddress theOutPos;
+ CollatorRessource* pColRes;
+ CollatorWrapper* pColWrap;
+
#ifdef _TPSORT_CXX
private:
void Init ();
@@ -236,6 +251,7 @@ private:
DECL_LINK( SelOutPosHdl, ListBox * );
void EdOutPosModHdl ( Edit* pEd );
DECL_LINK( SortDirHdl, RadioButton * );
+ DECL_LINK( FillAlgorHdl, void * );
#endif
};
diff --git a/sc/source/ui/src/sortdlg.src b/sc/source/ui/src/sortdlg.src
index 87196110f465..9862df2eafb2 100644
--- a/sc/source/ui/src/sortdlg.src
+++ b/sc/source/ui/src/sortdlg.src
@@ -2,9 +2,9 @@
*
* $RCSfile: sortdlg.src,v $
*
- * $Revision: 1.8 $
+ * $Revision: 1.9 $
*
- * last change: $Author: kz $ $Date: 2001-03-01 21:24:31 $
+ * last change: $Author: nn $ $Date: 2001-03-13 10:04:35 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -65,7 +65,7 @@ TabPage RID_SCPAGE_SORT_FIELDS
Hide = TRUE ;
SVLook = TRUE ;
HelpId = HID_SCPAGE_SORT_FIELDS ;
- Size = MAP_APPFONT ( 208 , 170 ) ;
+ Size = MAP_APPFONT ( 208 , 185 ) ;
ListBox LB_SORT1
{
Border = TRUE ;
@@ -357,7 +357,7 @@ TabPage RID_SCPAGE_SORT_OPTIONS
SVLook = TRUE ;
HelpId = HID_SCPAGE_SORT_OPTIONS ;
Pos = MAP_APPFONT ( 0 , 0 ) ;
- Size = MAP_APPFONT ( 208 , 170 ) ;
+ Size = MAP_APPFONT ( 208 , 185 ) ;
CheckBox BTN_CASESENSITIVE
{
Pos = MAP_APPFONT ( 6 , 6 ) ;
@@ -549,7 +549,7 @@ TabPage RID_SCPAGE_SORT_OPTIONS
};
CheckBox BTN_SORT_USER
{
- Pos = MAP_APPFONT ( 6 , 72 ) ;
+ Pos = MAP_APPFONT ( 6 , 73 ) ;
Size = MAP_APPFONT ( 196 , 10 ) ;
Text = "~Benutzerdefinierte Sortierreihenfolge" ;
Text [ ENGLISH ] = "~Userdefined sort precedence" ;
@@ -580,14 +580,65 @@ TabPage RID_SCPAGE_SORT_OPTIONS
{
Disable = TRUE ;
Border = TRUE ;
- Pos = MAP_APPFONT ( 17 , 84 ) ;
+ Pos = MAP_APPFONT ( 17 , 85 ) ;
Size = MAP_APPFONT ( 184 , 90 ) ;
TabStop = TRUE ;
DropDown = TRUE ;
};
+ FixedLine FL_LANGUAGE
+ {
+ Pos = MAP_APPFONT ( 6 , 103 ) ;
+ Size = MAP_APPFONT ( 196 , 8 ) ;
+ Text = "S~prache" ;
+ Text [ ENGLISH ] = "Language Settings" ;
+ };
+ ListBox LB_LANGUAGE
+ {
+ Border = TRUE ;
+ Pos = MAP_APPFONT ( 17 , 114 ) ;
+ Size = MAP_APPFONT ( 90 , 90 ) ;
+ TabStop = TRUE ;
+ DropDown = TRUE ;
+ };
+ ListBox LB_ALGORITHM
+ {
+ Border = TRUE ;
+ Pos = MAP_APPFONT ( 111 , 114 ) ;
+ Size = MAP_APPFONT ( 90 , 90 ) ;
+ TabStop = TRUE ;
+ DropDown = TRUE ;
+ };
+ FixedLine FL_DIRECTION
+ {
+ Pos = MAP_APPFONT ( 6 , 132 ) ;
+ Size = MAP_APPFONT ( 196 , 8 ) ;
+ Text = "Richtung" ;
+ Text [ ENGLISH ] = "Direction" ;
+ Text [ norwegian ] = "Retning" ;
+ Text [ italian ] = "Direzione" ;
+ Text [ portuguese_brazilian ] = "Direo" ;
+ Text [ portuguese ] = "Direco" ;
+ Text [ finnish ] = "Suunta" ;
+ Text [ danish ] = "Retning" ;
+ Text [ french ] = "Direction" ;
+ Text [ swedish ] = "Riktning" ;
+ Text [ dutch ] = "Richting" ;
+ Text [ spanish ] = "Direccin" ;
+ Text [ english_us ] = "Direction" ;
+ Text[ chinese_simplified ] = "";
+ Text[ russian ] = "";
+ Text[ polish ] = "Kierunek";
+ Text[ japanese ] = "";
+ Text[ chinese_traditional ] = "V";
+ Text[ arabic ] = "";
+ Text[ greek ] = "";
+ Text[ korean ] = "";
+ Text[ turkish ] = "Yn";
+ Text[ language_user1 ] = " ";
+ };
RadioButton BTN_TOP_DOWN
{
- Pos = MAP_APPFONT ( 12 , 113 ) ;
+ Pos = MAP_APPFONT ( 12 , 143 ) ;
Size = MAP_APPFONT ( 184 , 10 ) ;
Text = "Von ~oben nach unten (Zeilen sortieren)" ;
Text [ ENGLISH ] = "~Top to bottom (sort rows)" ;
@@ -616,7 +667,7 @@ TabPage RID_SCPAGE_SORT_OPTIONS
};
RadioButton BTN_LEFT_RIGHT
{
- Pos = MAP_APPFONT ( 12 , 126 ) ;
+ Pos = MAP_APPFONT ( 12 , 156 ) ;
Size = MAP_APPFONT ( 184 , 10 ) ;
Text = "Von ~links nach rechts (Spalten sortieren)" ;
Text [ ENGLISH ] = "~Left to right (sort columns)" ;
@@ -643,38 +694,10 @@ TabPage RID_SCPAGE_SORT_OPTIONS
Text[ turkish ] = "S~oldan saa (stunlar srala)";
Text[ language_user1 ] = " ";
};
- GroupBox GB_DIRECTION
- {
- Pos = MAP_APPFONT ( 6 , 102 ) ;
- Size = MAP_APPFONT ( 196 , 40 ) ;
- Text = "Richtung" ;
- Text [ ENGLISH ] = "Direction" ;
- Text [ norwegian ] = "Retning" ;
- Text [ italian ] = "Direzione" ;
- Text [ portuguese_brazilian ] = "Direo" ;
- Text [ portuguese ] = "Direco" ;
- Text [ finnish ] = "Suunta" ;
- Text [ danish ] = "Retning" ;
- Text [ french ] = "Direction" ;
- Text [ swedish ] = "Riktning" ;
- Text [ dutch ] = "Richting" ;
- Text [ spanish ] = "Direccin" ;
- Text [ english_us ] = "Direction" ;
- Text[ chinese_simplified ] = "";
- Text[ russian ] = "";
- Text[ polish ] = "Kierunek";
- Text[ japanese ] = "";
- Text[ chinese_traditional ] = "V";
- Text[ arabic ] = "";
- Text[ greek ] = "";
- Text[ korean ] = "";
- Text[ turkish ] = "Yn";
- Text[ language_user1 ] = " ";
- };
FixedText FT_AREA_LABEL
{
- Pos = MAP_APPFONT ( 6 , 146 ) ;
- Size = MAP_APPFONT ( 50 , 10 ) ;
+ Pos = MAP_APPFONT ( 6 , 172 ) ;
+ Size = MAP_APPFONT ( 196 , 10 ) ;
Text = "Datenbereich:" ;
Text [ ENGLISH ] = "Source data:" ;
Text [ norwegian ] = "Kildedata:" ;
@@ -699,12 +722,6 @@ TabPage RID_SCPAGE_SORT_OPTIONS
Text[ turkish ] = "Veri alan:";
Text[ language_user1 ] = " ";
};
- FixedText FT_AREA
- {
- Pos = MAP_APPFONT ( 6 , 157 ) ;
- Size = MAP_APPFONT ( 196 , 10 ) ;
- Text = "< Bereich > (<Name>)" ;
- };
};
TabDialog RID_SCDLG_SORT
{