diff options
author | Kurt Zenker <kz@openoffice.org> | 2009-11-13 18:29:26 +0100 |
---|---|---|
committer | Kurt Zenker <kz@openoffice.org> | 2009-11-13 18:29:26 +0100 |
commit | fd9aae257e5e0333b208045a6ac42706d987c3a8 (patch) | |
tree | 1c912a46e905d1328b36b7f6d511fd5921f5e010 | |
parent | 4d6964a83c36ab317d3657328599893454ea5624 (diff) | |
parent | 053cb63bb1f321e63ac4db9a82eae685c6197218 (diff) |
CWS-TOOLING: integrate CWS vcl106
-rw-r--r-- | drawinglayer/inc/drawinglayer/processor2d/vclmetafileprocessor2d.hxx | 2 | ||||
-rw-r--r-- | drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx | 44 | ||||
-rw-r--r-- | fpicker/source/unx/kde4/KDE4FPEntry.cxx | 6 | ||||
-rw-r--r-- | fpicker/source/unx/kde4/KDE4FilePicker.cxx | 114 | ||||
-rw-r--r-- | framework/source/services/backingwindow.cxx | 7 | ||||
-rw-r--r-- | framework/source/services/backingwindow.hxx | 1 | ||||
-rw-r--r-- | officecfg/registry/data/org/openoffice/VCL.xcu | 231 | ||||
-rw-r--r-- | officecfg/registry/schema/org/openoffice/Office/Common.xcs | 7 | ||||
-rw-r--r-- | sfx2/inc/sfx2/passwd.hxx | 4 | ||||
-rw-r--r-- | sfx2/source/dialog/passwd.cxx | 28 | ||||
-rw-r--r-- | shell/source/backends/kdebe/makefile.mk | 4 |
11 files changed, 361 insertions, 87 deletions
diff --git a/drawinglayer/inc/drawinglayer/processor2d/vclmetafileprocessor2d.hxx b/drawinglayer/inc/drawinglayer/processor2d/vclmetafileprocessor2d.hxx index f0d0ff881bc5..38e7e5143b8a 100644 --- a/drawinglayer/inc/drawinglayer/processor2d/vclmetafileprocessor2d.hxx +++ b/drawinglayer/inc/drawinglayer/processor2d/vclmetafileprocessor2d.hxx @@ -97,7 +97,7 @@ namespace drawinglayer basegfx::B2DPolyPolygon maClipPolyPolygon; // the target MetaFile - GDIMetaFile& mrMetaFile; + GDIMetaFile* mpMetaFile; // do not allow embedding SvtGraphicFills into each other, // use a counter to prevent that diff --git a/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx b/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx index 1c040545eedd..d1190c2d9179 100644 --- a/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx +++ b/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx @@ -113,6 +113,7 @@ namespace drawinglayer { // Prepare VDev, MetaFile and connections OutputDevice* pLastOutputDevice = mpOutputDevice; + GDIMetaFile* pLastMetafile = mpMetaFile; basegfx::B2DRange aPrimitiveRange(primitive2d::getB2DRangeFromPrimitive2DSequence(rContent, getViewInformation2D())); // transform primitive range with current transformation (e.g shadow offset) @@ -125,6 +126,7 @@ namespace drawinglayer MapMode aNewMapMode(pLastOutputDevice->GetMapMode()); mpOutputDevice = &aContentVDev; + mpMetaFile = &o_rContentMetafile; aContentVDev.EnableOutput(false); aContentVDev.SetMapMode(pLastOutputDevice->GetMapMode()); o_rContentMetafile.Record(&aContentVDev); @@ -145,6 +147,7 @@ namespace drawinglayer o_rContentMetafile.SetPrefMapMode(aNewMapMode); o_rContentMetafile.SetPrefSize(aPrimitiveRectangle.GetSize()); mpOutputDevice = pLastOutputDevice; + mpMetaFile = pLastMetafile; return aPrimitiveRectangle; } @@ -219,7 +222,7 @@ namespace drawinglayer SvMemoryStream aMemStm; aMemStm << *pSvtGraphicFill; - mrMetaFile.AddAction(new MetaCommentAction("XPATHFILL_SEQ_BEGIN", 0, static_cast< const BYTE* >(aMemStm.GetData()), aMemStm.Seek(STREAM_SEEK_TO_END))); + mpMetaFile->AddAction(new MetaCommentAction("XPATHFILL_SEQ_BEGIN", 0, static_cast< const BYTE* >(aMemStm.GetData()), aMemStm.Seek(STREAM_SEEK_TO_END))); mnSvtGraphicFillCount++; } } @@ -229,7 +232,7 @@ namespace drawinglayer if(pSvtGraphicFill && mnSvtGraphicFillCount) { mnSvtGraphicFillCount--; - mrMetaFile.AddAction(new MetaCommentAction("XPATHFILL_SEQ_END")); + mpMetaFile->AddAction(new MetaCommentAction("XPATHFILL_SEQ_END")); delete pSvtGraphicFill; } } @@ -372,7 +375,7 @@ namespace drawinglayer SvMemoryStream aMemStm; aMemStm << *pSvtGraphicStroke; - mrMetaFile.AddAction(new MetaCommentAction("XPATHSTROKE_SEQ_BEGIN", 0, static_cast< const BYTE* >(aMemStm.GetData()), aMemStm.Seek(STREAM_SEEK_TO_END))); + mpMetaFile->AddAction(new MetaCommentAction("XPATHSTROKE_SEQ_BEGIN", 0, static_cast< const BYTE* >(aMemStm.GetData()), aMemStm.Seek(STREAM_SEEK_TO_END))); mnSvtGraphicStrokeCount++; } } @@ -382,7 +385,7 @@ namespace drawinglayer if(pSvtGraphicStroke && mnSvtGraphicStrokeCount) { mnSvtGraphicStrokeCount--; - mrMetaFile.AddAction(new MetaCommentAction("XPATHSTROKE_SEQ_END")); + mpMetaFile->AddAction(new MetaCommentAction("XPATHSTROKE_SEQ_END")); delete pSvtGraphicStroke; } } @@ -392,7 +395,7 @@ namespace drawinglayer VclMetafileProcessor2D::VclMetafileProcessor2D(const geometry::ViewInformation2D& rViewInformation, OutputDevice& rOutDev) : VclProcessor2D(rViewInformation, rOutDev), - mrMetaFile(*rOutDev.GetConnectMetaFile()), + mpMetaFile(rOutDev.GetConnectMetaFile()), mnSvtGraphicFillCount(0), mnSvtGraphicStrokeCount(0), mfCurrentUnifiedTransparence(0.0), @@ -816,19 +819,19 @@ namespace drawinglayer { default : // case drawinglayer::primitive2d::FIELD_TYPE_COMMON : { - mrMetaFile.AddAction(new MetaCommentAction(aCommentStringCommon)); + mpMetaFile->AddAction(new MetaCommentAction(aCommentStringCommon)); break; } case drawinglayer::primitive2d::FIELD_TYPE_PAGE : { - mrMetaFile.AddAction(new MetaCommentAction(aCommentStringPage)); + mpMetaFile->AddAction(new MetaCommentAction(aCommentStringPage)); break; } case drawinglayer::primitive2d::FIELD_TYPE_URL : { const rtl::OUString& rURL = rFieldPrimitive.getString(); const String aOldString(rURL); - mrMetaFile.AddAction(new MetaCommentAction(aCommentStringCommon, 0, reinterpret_cast< const BYTE* >(aOldString.GetBuffer()), 2 * aOldString.Len())); + mpMetaFile->AddAction(new MetaCommentAction(aCommentStringCommon, 0, reinterpret_cast< const BYTE* >(aOldString.GetBuffer()), 2 * aOldString.Len())); break; } } @@ -838,7 +841,7 @@ namespace drawinglayer process(rContent); // for the end comment the type is not relevant yet, they are all the same. Just add. - mrMetaFile.AddAction(new MetaCommentAction(aCommentStringEnd)); + mpMetaFile->AddAction(new MetaCommentAction(aCommentStringEnd)); if(mpPDFExtOutDevData && drawinglayer::primitive2d::FIELD_TYPE_URL == rFieldPrimitive.getType()) { @@ -863,7 +866,7 @@ namespace drawinglayer // process recursively and add MetaFile comment process(rLinePrimitive.get2DDecomposition(getViewInformation2D())); - mrMetaFile.AddAction(new MetaCommentAction(aCommentString)); + mpMetaFile->AddAction(new MetaCommentAction(aCommentString)); break; } @@ -876,7 +879,7 @@ namespace drawinglayer // process recursively and add MetaFile comment process(rBulletPrimitive.get2DDecomposition(getViewInformation2D())); - mrMetaFile.AddAction(new MetaCommentAction(aCommentString)); + mpMetaFile->AddAction(new MetaCommentAction(aCommentString)); break; } @@ -893,7 +896,7 @@ namespace drawinglayer // process recursively and add MetaFile comment process(rParagraphPrimitive.get2DDecomposition(getViewInformation2D())); - mrMetaFile.AddAction(new MetaCommentAction(aCommentString)); + mpMetaFile->AddAction(new MetaCommentAction(aCommentString)); if(mpPDFExtOutDevData) { @@ -910,9 +913,9 @@ namespace drawinglayer static const ByteString aCommentStringB("XTEXT_PAINTSHAPE_END"); // add MetaFile comment, process recursively and add MetaFile comment - mrMetaFile.AddAction(new MetaCommentAction(aCommentStringA)); + mpMetaFile->AddAction(new MetaCommentAction(aCommentStringA)); process(rBlockPrimitive.get2DDecomposition(getViewInformation2D())); - mrMetaFile.AddAction(new MetaCommentAction(aCommentStringB)); + mpMetaFile->AddAction(new MetaCommentAction(aCommentStringB)); break; } @@ -965,17 +968,17 @@ namespace drawinglayer // create the entries for the respective break positions if(i == nNextCellBreak) { - mrMetaFile.AddAction(new MetaCommentAction(aCommentStringA, i - nTextPosition)); + mpMetaFile->AddAction(new MetaCommentAction(aCommentStringA, i - nTextPosition)); nNextCellBreak = mxBreakIterator->nextCharacters(rTxt, i, rLocale, ::com::sun::star::i18n::CharacterIteratorMode::SKIPCELL, 1, nDone); } if(i == nNextWordBoundary.endPos) { - mrMetaFile.AddAction(new MetaCommentAction(aCommentStringB, i - nTextPosition)); + mpMetaFile->AddAction(new MetaCommentAction(aCommentStringB, i - nTextPosition)); nNextWordBoundary = mxBreakIterator->getWordBoundary(rTxt, i + 1, rLocale, ::com::sun::star::i18n::WordType::ANY_WORD, sal_True); } if(i == nNextSentenceBreak) { - mrMetaFile.AddAction(new MetaCommentAction(aCommentStringC, i - nTextPosition)); + mpMetaFile->AddAction(new MetaCommentAction(aCommentStringC, i - nTextPosition)); nNextSentenceBreak = mxBreakIterator->endOfSentence(rTxt, i + 1, rLocale); } } @@ -1057,7 +1060,7 @@ namespace drawinglayer { const Polygon aToolsPolygon(aCandidate); - mrMetaFile.AddAction(new MetaPolyLineAction(aToolsPolygon, aLineInfo)); + mpMetaFile->AddAction(new MetaPolyLineAction(aToolsPolygon, aLineInfo)); } } @@ -1500,7 +1503,10 @@ namespace drawinglayer // svae old mfCurrentUnifiedTransparence and set new one // so that contained SvtGraphicStroke may use the current one const double fLastCurrentUnifiedTransparence(mfCurrentUnifiedTransparence); - mfCurrentUnifiedTransparence = rUniAlphaCandidate.getAlpha(); + // #i105377# paint the content metafile opaque as the transparency gets + // split of into the gradient below + // mfCurrentUnifiedTransparence = rUniAlphaCandidate.getAlpha(); + mfCurrentUnifiedTransparence = 0; // various content, create content-metafile GDIMetaFile aContentMetafile; diff --git a/fpicker/source/unx/kde4/KDE4FPEntry.cxx b/fpicker/source/unx/kde4/KDE4FPEntry.cxx index 268c01b600b3..46e09bfe5359 100644 --- a/fpicker/source/unx/kde4/KDE4FPEntry.cxx +++ b/fpicker/source/unx/kde4/KDE4FPEntry.cxx @@ -84,12 +84,12 @@ static Reference< XInterface > SAL_CALL createInstance( const Reference< XMultiS // the three uno functions that will be exported extern "C" { - void SAL_CALL component_getImplementationEnvironment( const sal_Char ** ppEnvTypeName, uno_Environment ** ppEnv ) + void SAL_CALL component_getImplementationEnvironment( const sal_Char ** ppEnvTypeName, uno_Environment ** ) { *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME; } - sal_Bool SAL_CALL component_writeInfo( void* pServiceManager, void* pRegistryKey ) + sal_Bool SAL_CALL component_writeInfo( void*, void* pRegistryKey ) { sal_Bool bRetVal = sal_True; @@ -110,7 +110,7 @@ extern "C" return bRetVal; } - void* SAL_CALL component_getFactory( const sal_Char* pImplName, uno_Interface* pSrvManager, uno_Interface* pRegistryKey ) + void* SAL_CALL component_getFactory( const sal_Char* pImplName, uno_Interface* pSrvManager, uno_Interface* ) { void* pRet = 0; diff --git a/fpicker/source/unx/kde4/KDE4FilePicker.cxx b/fpicker/source/unx/kde4/KDE4FilePicker.cxx index 09e33a225977..96a14dbcef11 100644 --- a/fpicker/source/unx/kde4/KDE4FilePicker.cxx +++ b/fpicker/source/unx/kde4/KDE4FilePicker.cxx @@ -111,6 +111,8 @@ using namespace ::com::sun::star::uno; // helper functions ////////////////////////////////////////////////////////////////////////// +#include <QDebug> + namespace { // controling event notifications @@ -157,14 +159,15 @@ KDE4FilePicker::KDE4FilePicker( const uno::Reference<lang::XMultiServiceFactory> _resMgr( CREATEVERSIONRESMGR( fps_office ) ) { _extraControls = new QWidget(); - _layout = new QGridLayout(_extraControls); - _dialog = new KFileDialog(KUrl(""), QString(""), 0, _extraControls); + _dialog = new KFileDialog(KUrl("~"), QString(""), 0, _extraControls); _dialog->setMode(KFile::File | KFile::LocalOnly); //default mode _dialog->setOperationMode(KFileDialog::Opening); + + _dialog->setStyleSheet("color: black;"); } KDE4FilePicker::~KDE4FilePicker() @@ -207,21 +210,12 @@ sal_Int16 SAL_CALL KDE4FilePicker::execute() } } + _dialog->clearFilter(); _dialog->setFilter(_filter); - _dialog->exec(); - - //nasty hack to get a local qt event loop going to process the dialog - //otherwise the dialog returns immediately - while (_dialog->isVisible()) - { - kapp->processEvents(QEventLoop::WaitForMoreEvents); - } //block and wait for user input - if (_dialog->result() == KFileDialog::Accepted) - { + if (_dialog->exec() == KFileDialog::Accepted) return ExecutableDialogResults::OK; - } return ExecutableDialogResults::CANCEL; } @@ -230,13 +224,9 @@ void SAL_CALL KDE4FilePicker::setMultiSelectionMode( sal_Bool multiSelect ) throw( uno::RuntimeException ) { if (multiSelect) - { _dialog->setMode(KFile::Files | KFile::LocalOnly); - } else - { _dialog->setMode(KFile::File | KFile::LocalOnly); - } } void SAL_CALL KDE4FilePicker::setDefaultName( const ::rtl::OUString &name ) @@ -250,7 +240,7 @@ void SAL_CALL KDE4FilePicker::setDisplayDirectory( const rtl::OUString &dir ) throw( uno::RuntimeException ) { const QString url = toQString(dir); - _dialog->setStartDir(KUrl(url)); + _dialog->setUrl(KUrl(url)); } rtl::OUString SAL_CALL KDE4FilePicker::getDisplayDirectory() @@ -263,16 +253,63 @@ rtl::OUString SAL_CALL KDE4FilePicker::getDisplayDirectory() uno::Sequence< ::rtl::OUString > SAL_CALL KDE4FilePicker::getFiles() throw( uno::RuntimeException ) { - QStringList files = _dialog->selectedFiles(); + QStringList rawFiles = _dialog->selectedFiles(); + QStringList files; - uno::Sequence< ::rtl::OUString > seq(files.size()); + // check if we need to add an extension + QString extension = ""; + if ( _dialog->operationMode() == KFileDialog::Saving ) + { + QCheckBox *cb = dynamic_cast<QCheckBox*> ( + _customWidgets[ExtendedFilePickerElementIds::CHECKBOX_AUTOEXTENSION ]); + + if (cb->isChecked()) + { + extension = _dialog->currentFilter(); // assuming filter value is like this *.ext + extension.replace("*",""); + } + } + + // Workaround for the double click selection KDE4 bug + // kde file picker returns the file and directories for selectedFiles() + // when a file is double clicked + // make a true list of files + const QString dir = "file://" + KUrl(rawFiles[0]).directory(); - for (int i=0 ; i<files.size() ; ++i) + bool singleFile = true; + if (rawFiles.size() > 1) { - const QString fileName = "file:" + files[i]; - seq[i] = toOUString(fileName); + singleFile = false; + //for multi file sequences, oo expects the first param to be the directory + //can't treat all cases like multi file because in some instances (inserting image) + //oo WANTS only one entry in the final list + files.append(dir); } + for (USHORT i = 0; i < rawFiles.size(); ++i) + { + // if the raw file is not the base directory (see above kde bug) + // we add the file to list of avail files + if ((dir + "/") != ("file://" + rawFiles[i])) + { + QString filename = KUrl(rawFiles[i]).fileName(); + + if (singleFile) + filename.prepend(dir + "/"); + + //prevent extension append if we already have one + if (filename.endsWith(extension)) + files.append(filename); + else + files.append(filename + extension); + } + } + + // add all files and leading directory to outgoing OO sequence + uno::Sequence< ::rtl::OUString > seq(files.size()); + for (int i = 0; i < files.size(); ++i) + seq[i] = toOUString(files[i]); + return seq; } @@ -283,9 +320,7 @@ void SAL_CALL KDE4FilePicker::appendFilter( const ::rtl::OUString &title, const QString f = toQString(filter); if (!_filter.isNull()) - { _filter.append("\n"); - } //add to hash map for reverse lookup in getCurrentFilter _filters.insert(f, t); @@ -294,15 +329,18 @@ void SAL_CALL KDE4FilePicker::appendFilter( const ::rtl::OUString &title, const //see the docs t.replace("/", "\\/"); + // openoffice gives us filters separated by ';' qt dialogs just want space separated + f.replace(";", " "); + _filter.append(QString("%1|%2").arg(f).arg(t)); } void SAL_CALL KDE4FilePicker::setCurrentFilter( const rtl::OUString &title ) throw( lang::IllegalArgumentException, uno::RuntimeException ) { - QString filter = toQString(title); - filter.replace("/", "\\/"); - _dialog->filterWidget()->setCurrentFilter(filter); + QString t = toQString(title); + t.replace("/", "\\/"); + _dialog->filterWidget()->setCurrentFilter(t); } rtl::OUString SAL_CALL KDE4FilePicker::getCurrentFilter() @@ -312,17 +350,29 @@ rtl::OUString SAL_CALL KDE4FilePicker::getCurrentFilter() //default if not found if (filter.isNull()) - { filter = "ODF Text Document (.odt)"; - } return toOUString(filter); } -void SAL_CALL KDE4FilePicker::appendFilterGroup( const rtl::OUString&, const uno::Sequence<beans::StringPair>& ) +void SAL_CALL KDE4FilePicker::appendFilterGroup( const rtl::OUString& , const uno::Sequence<beans::StringPair>& filters) throw( lang::IllegalArgumentException, uno::RuntimeException ) { - //TODO + if (!_filter.isNull()) + _filter.append(QString("\n")); + + const USHORT length = filters.getLength(); + for (USHORT i = 0; i < length; ++i) + { + beans::StringPair aPair = filters[i]; + + _filter.append(QString("%1|%2").arg( + toQString(aPair.Second).replace(";", " ")).arg( + toQString(aPair.First).replace("/","\\/"))); + + if (i != length - 1) + _filter.append('\n'); + } } void SAL_CALL KDE4FilePicker::setValue( sal_Int16 controlId, sal_Int16, const uno::Any &value ) diff --git a/framework/source/services/backingwindow.cxx b/framework/source/services/backingwindow.cxx index 40e4a9f7a6b9..c5d845a9d333 100644 --- a/framework/source/services/backingwindow.cxx +++ b/framework/source/services/backingwindow.cxx @@ -231,6 +231,13 @@ BackingWindow::~BackingWindow() delete mpAccExec; } +void BackingWindow::GetFocus() +{ + if( IsVisible() ) + maWriterButton.GrabFocus(); + Window::GetFocus(); +} + class ImageContainerRes : public Resource { public: diff --git a/framework/source/services/backingwindow.hxx b/framework/source/services/backingwindow.hxx index 63cfa0742e35..0b9afa6d38de 100644 --- a/framework/source/services/backingwindow.hxx +++ b/framework/source/services/backingwindow.hxx @@ -173,6 +173,7 @@ namespace framework virtual void DataChanged( const DataChangedEvent& rDCEvt ); virtual Window* GetParentLabelFor( const Window* pLabel ) const; virtual Window* GetParentLabeledBy( const Window* pLabeled ) const; + virtual void GetFocus(); void setOwningFrame( const com::sun::star::uno::Reference< com::sun::star::frame::XFrame >& xFrame ); }; diff --git a/officecfg/registry/data/org/openoffice/VCL.xcu b/officecfg/registry/data/org/openoffice/VCL.xcu index 9d145fbcc831..b30a43202300 100644 --- a/officecfg/registry/data/org/openoffice/VCL.xcu +++ b/officecfg/registry/data/org/openoffice/VCL.xcu @@ -7,9 +7,6 @@ * * OpenOffice.org - a multi-platform office productivity suite * - * $RCSfile: VCL.xcu,v $ - * $Revision: 1.62.116.1 $ - * * This file is part of OpenOffice.org. * * OpenOffice.org is free software: you can redistribute it and/or modify @@ -825,64 +822,184 @@ <value>Lohit Nepali;Kalimati;Samanata;Sans</value> </prop> </node> + <node oor:name="as-IN" oor:op="replace"> + <prop oor:name="UI_SANS" oor:op="replace" oor:type="xs:string"> + <value>Lohit Assamese;Tahoma;Lucidasans;Lucida Sans;Supplement;Andale Sans UI;Arial Unicode MS;Lucida Sans Unicode;clearlyU</value> + </prop> + <prop oor:name="CTL_DISPLAY" oor:op="replace" oor:type="xs:string"> + <value>Lohit Assamese;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_HEADING" oor:op="replace" oor:type="xs:string"> + <value>Lohit Assamese;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_PRESENTATION" oor:op="replace" oor:type="xs:string"> + <value>Lohit Assamese;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_SPREADSHEET" oor:op="replace" oor:type="xs:string"> + <value>Lohit Assamese;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_TEXT" oor:op="replace" oor:type="xs:string"> + <value>Lohit Assamese;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + </node> + <node oor:name="bn-IN" oor:op="replace"> + <prop oor:name="UI_SANS" oor:op="replace" oor:type="xs:string"> + <value>Lohit Bengali;Vrinda;Lucidasans;Lucida Sans;Andale Sans UI;Arial Unicode MS;Lucida Sans Unicode;clearlyU</value> + </prop> + <prop oor:name="CTL_DISPLAY" oor:op="replace" oor:type="xs:string"> + <value>Lohit Bengali;Vrinda;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_HEADING" oor:op="replace" oor:type="xs:string"> + <value>Lohit Bengali;Vrinda;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_PRESENTATION" oor:op="replace" oor:type="xs:string"> + <value>Lohit Bengali;Vrinda;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_SPREADSHEET" oor:op="replace" oor:type="xs:string"> + <value>Lohit Bengali;Vrinda;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_TEXT" oor:op="replace" oor:type="xs:string"> + <value>Lohit Bengali;Vrinda;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + </node> <node oor:name="hi-IN" oor:op="replace"> <prop oor:name="UI_SANS" oor:op="replace" oor:type="xs:string"> - <value>Lohit Hindi;Tahoma;Lucidasans;Lucida Sans;Supplement;Andale Sans UI;Arial Unicode MS;Lucida Sans Unicode;clearlyU;Interface User;WarpSans;Geneva;MS Sans Serif;Helv;Dialog;Albany AMT;Albany;Lucida;Arial;Nimbus Sans L;Helvetica;Charcoal;Chicago;Helmet;Interface System;Sans Serif</value> + <value>Lohit Hindi;Mangal;Lucidasans;Lucida Sans;Andale Sans UI;Arial Unicode MS;Lucida Sans Unicode;clearlyU</value> </prop> <prop oor:name="CTL_DISPLAY" oor:op="replace" oor:type="xs:string"> - <value>Lohit Hindi;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Hindi;Mangal;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_HEADING" oor:op="replace" oor:type="xs:string"> - <value>Lohit Hindi;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Hindi;Mangal;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_PRESENTATION" oor:op="replace" oor:type="xs:string"> - <value>Lohit Hindi;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Hindi;Mangal;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_SPREADSHEET" oor:op="replace" oor:type="xs:string"> - <value>Lohit Hindi;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Hindi;Mangal;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_TEXT" oor:op="replace" oor:type="xs:string"> - <value>Lohit Hindi;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Hindi;Mangal;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> </node> <node oor:name="gu-IN" oor:op="replace"> <prop oor:name="UI_SANS" oor:op="replace" oor:type="xs:string"> - <value>Lohit Gujarati;Tahoma;Lucidasans;Lucida Sans;Supplement;Andale Sans UI;Arial Unicode MS;Lucida Sans Unicode;clearlyU;Interface User;WarpSans;Geneva;MS Sans Serif;Helv;Dialog;Albany AMT;Albany;Lucida;Arial;Nimbus Sans L;Helvetica;Charcoal;Chicago;Helmet;Interface System;Sans Serif</value> + <value>Lohit Gujarati;Shruti;Lucidasans;Lucida Sans;Arial Unicode MS;Lucida Sans Unicode;clearlyU</value> + </prop> + <prop oor:name="CTL_DISPLAY" oor:op="replace" oor:type="xs:string"> + <value>Lohit Gujarati;Shruti;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_HEADING" oor:op="replace" oor:type="xs:string"> + <value>Lohit Gujarati;Shruti;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_PRESENTATION" oor:op="replace" oor:type="xs:string"> + <value>Lohit Gujarati;Shruti;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_SPREADSHEET" oor:op="replace" oor:type="xs:string"> + <value>Lohit Gujarati;Shruti;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_TEXT" oor:op="replace" oor:type="xs:string"> + <value>Lohit Gujarati;Shruti;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + </node> + <node oor:name="kn-IN" oor:op="replace"> + <prop oor:name="UI_SANS" oor:op="replace" oor:type="xs:string"> + <value>Lohit Kannada;Tunga;Lucidasans;Lucida Sans;Arial Unicode MS;Lucida Sans Unicode;clearlyU</value> + </prop> + <prop oor:name="CTL_DISPLAY" oor:op="replace" oor:type="xs:string"> + <value>Lohit Kannada;Tunga;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_HEADING" oor:op="replace" oor:type="xs:string"> + <value>Lohit Kannada;Tunga;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_PRESENTATION" oor:op="replace" oor:type="xs:string"> + <value>Lohit Kannada;Tunga;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_SPREADSHEET" oor:op="replace" oor:type="xs:string"> + <value>Lohit Kannada;Tunga;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_TEXT" oor:op="replace" oor:type="xs:string"> + <value>Lohit Kannada;Tunga;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + </node> + <node oor:name="mai-IN" oor:op="replace"> + <prop oor:name="UI_SANS" oor:op="replace" oor:type="xs:string"> + <value>Lohit Maithili;Tahoma;Lucidasans;Lucida Sans;Supplement;Andale Sans UI;Arial Unicode MS;Lucida Sans Unicode;clearlyU</value> + </prop> + <prop oor:name="CTL_DISPLAY" oor:op="replace" oor:type="xs:string"> + <value>Lohit Maithili;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_HEADING" oor:op="replace" oor:type="xs:string"> + <value>Lohit Maithili;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_PRESENTATION" oor:op="replace" oor:type="xs:string"> + <value>Lohit Maithili;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_SPREADSHEET" oor:op="replace" oor:type="xs:string"> + <value>Lohit Maithili;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_TEXT" oor:op="replace" oor:type="xs:string"> + <value>Lohit Maithili;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + </node> + <node oor:name="ml-IN" oor:op="replace"> + <prop oor:name="UI_SANS" oor:op="replace" oor:type="xs:string"> + <value>Meera;Tahoma;Lucidasans;Lucida Sans;Supplement;Andale Sans UI;Arial Unicode MS;Lucida Sans Unicode;clearlyU</value> + </prop> + <prop oor:name="CTL_DISPLAY" oor:op="replace" oor:type="xs:string"> + <value>Meera;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_HEADING" oor:op="replace" oor:type="xs:string"> + <value>Meera;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_PRESENTATION" oor:op="replace" oor:type="xs:string"> + <value>Meera;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_SPREADSHEET" oor:op="replace" oor:type="xs:string"> + <value>Meera;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_TEXT" oor:op="replace" oor:type="xs:string"> + <value>Meera;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + </node> + <node oor:name="mr-IN" oor:op="replace"> + <prop oor:name="UI_SANS" oor:op="replace" oor:type="xs:string"> + <value>Lohit Marathi;Tahoma;Lucidasans;Lucida Sans;Andale Sans UI;Arial Unicode MS;Lucida Sans Unicode;clearlyU</value> </prop> <prop oor:name="CTL_DISPLAY" oor:op="replace" oor:type="xs:string"> - <value>Lohit Gujarati;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Marathi;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_HEADING" oor:op="replace" oor:type="xs:string"> - <value>Lohit Gujarati;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Marathi;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_PRESENTATION" oor:op="replace" oor:type="xs:string"> - <value>Lohit Gujarati;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Marathi;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_SPREADSHEET" oor:op="replace" oor:type="xs:string"> - <value>Lohit Gujarati;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Marathi;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_TEXT" oor:op="replace" oor:type="xs:string"> - <value>Lohit Gujarati;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Marathi;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> </node> <node oor:name="or-IN" oor:op="replace"> <prop oor:name="UI_SANS" oor:op="replace" oor:type="xs:string"> - <value>utkal;Tahoma;Lucidasans;Lucida Sans;Supplement;Andale Sans UI;Arial Unicode MS;Lucida Sans Unicode;clearlyU;Interface User;WarpSans;Geneva;MS Sans Serif;Helv;Dialog;Albany AMT;Albany;Lucida;Arial;Nimbus Sans L;Helvetica;Charcoal;Chicago;Helmet;Interface System;Sans Serif</value> + <value>utkal;Kalinga;Lohit Oriya;Samyak Oriya;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS;Lucida Sans Unicode;clearlyU</value> </prop> <prop oor:name="CTL_DISPLAY" oor:op="replace" oor:type="xs:string"> - <value>utkal;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>utkal;Kalinga;Lohit Oriya;Samyak Oriya;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_HEADING" oor:op="replace" oor:type="xs:string"> - <value>utkal;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>utkal;Kalinga;Lohit Oriya;Samyak Oriya;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_PRESENTATION" oor:op="replace" oor:type="xs:string"> - <value>utkal;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>utkal;Kalinga;Lohit Oriya;Samyak Oriya;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_SPREADSHEET" oor:op="replace" oor:type="xs:string"> - <value>utkal;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>utkal;Kalinga;Lohit Oriya;Samyak Oriya;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_TEXT" oor:op="replace" oor:type="xs:string"> - <value>utkal;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>utkal;Kalinga;Lohit Oriya;Samyak Oriya;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> </node> <node oor:name="pa-IN" oor:op="replace"> @@ -907,22 +1024,62 @@ </node> <node oor:name="ta-IN" oor:op="replace"> <prop oor:name="UI_SANS" oor:op="replace" oor:type="xs:string"> - <value>Lohit Tamil;Tahoma;Sans Serif</value> + <value>Lohit Tamil;Latha;Sans Serif</value> </prop> <prop oor:name="CTL_DISPLAY" oor:op="replace" oor:type="xs:string"> - <value>Lohit Tamil;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Tamil;Latha;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_HEADING" oor:op="replace" oor:type="xs:string"> - <value>Lohit Tamil;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Tamil;Latha;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_PRESENTATION" oor:op="replace" oor:type="xs:string"> - <value>Lohit Tamil;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Tamil;Latha;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_SPREADSHEET" oor:op="replace" oor:type="xs:string"> - <value>Lohit Tamil;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Tamil;Latha;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> <prop oor:name="CTL_TEXT" oor:op="replace" oor:type="xs:string"> - <value>Lohit Tamil;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + <value>Lohit Tamil;Latha;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + </node> + <node oor:name="te-IN" oor:op="replace"> + <prop oor:name="UI_SANS" oor:op="replace" oor:type="xs:string"> + <value>Lohit Telugu;Gautami;Lucidasans;Lucida Sans;Arial Unicode MS;Lucida Sans Unicode;clearlyU</value> + </prop> + <prop oor:name="CTL_DISPLAY" oor:op="replace" oor:type="xs:string"> + <value>Lohit Telugu;Gautami;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_HEADING" oor:op="replace" oor:type="xs:string"> + <value>Lohit Telugu;Gautami;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_PRESENTATION" oor:op="replace" oor:type="xs:string"> + <value>Lohit Telugu;Gautami;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_SPREADSHEET" oor:op="replace" oor:type="xs:string"> + <value>Lohit Telugu;Gautami;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_TEXT" oor:op="replace" oor:type="xs:string"> + <value>Lohit Telugu;Gautami;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + </node> + <node oor:name="ur" oor:op="replace"> + <prop oor:name="UI_SANS" oor:op="replace" oor:type="xs:string"> + <value>PakTypeNaqsh;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS;Lucida Sans Unicode;clearlyU</value> + </prop> + <prop oor:name="CTL_DISPLAY" oor:op="replace" oor:type="xs:string"> + <value>PakTypeNaqsh;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_HEADING" oor:op="replace" oor:type="xs:string"> + <value>PakTypeNaqsh;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_PRESENTATION" oor:op="replace" oor:type="xs:string"> + <value>PakTypeNaqsh;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_SPREADSHEET" oor:op="replace" oor:type="xs:string"> + <value>PakTypeNaqsh;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_TEXT" oor:op="replace" oor:type="xs:string"> + <value>PakTypeNaqsh;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> </prop> </node> @@ -1022,6 +1179,26 @@ </node> <node oor:name="rw" oor:op="replace"> </node> + <node oor:name="si" oor:op="replace"> + <prop oor:name="UI_SANS" oor:op="replace" oor:type="xs:string"> + <value>LKLUG;Iskoola Pota;Lucidasans;Lucida Sans;Andale Sans UI;Arial Unicode MS;Lucida Sans Unicode;clearlyU</value> + </prop> + <prop oor:name="CTL_DISPLAY" oor:op="replace" oor:type="xs:string"> + <value>Iskoola Pota;LKLUG;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_HEADING" oor:op="replace" oor:type="xs:string"> + <value>Iskoola Pota;LKLUG;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_PRESENTATION" oor:op="replace" oor:type="xs:string"> + <value>Iskoola Pota;LKLUG;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_SPREADSHEET" oor:op="replace" oor:type="xs:string"> + <value>Iskoola Pota;LKLUG;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + <prop oor:name="CTL_TEXT" oor:op="replace" oor:type="xs:string"> + <value>Iskoola Pota;LKLUG;Tahoma;Lucidasans;Lucida Sans;Arial Unicode MS</value> + </prop> + </node> </node> <node oor:name="FontSubstitutions"> <node oor:name="en" oor:op="replace"> diff --git a/officecfg/registry/schema/org/openoffice/Office/Common.xcs b/officecfg/registry/schema/org/openoffice/Office/Common.xcs index f816a55e93a7..246b1bcdb974 100644 --- a/officecfg/registry/schema/org/openoffice/Office/Common.xcs +++ b/officecfg/registry/schema/org/openoffice/Office/Common.xcs @@ -5356,6 +5356,13 @@ Dymamic border coloring means that when the mouse is hovered over a control, and </constraints> <value>0</value> </prop> + <prop oor:name="AllowDuplicateFieldNames" oor:type="xs:boolean"> + <info> + <author>pl</author> + <desc>Specifies whether multiple form fields exported are allowed to have the same field name.</desc> + </info> + <value>false</value> + </prop> <prop oor:name="IsSkipEmptyPages" oor:type="xs:boolean"> <info> <author>FME</author> diff --git a/sfx2/inc/sfx2/passwd.hxx b/sfx2/inc/sfx2/passwd.hxx index bb4e1b8c1561..bfe8debecca1 100644 --- a/sfx2/inc/sfx2/passwd.hxx +++ b/sfx2/inc/sfx2/passwd.hxx @@ -68,10 +68,9 @@ private: USHORT mnMinLen; USHORT mnExtras; -//#if 0 // _SOLAR__PRIVATE + bool mbAsciiOnly; DECL_DLLPRIVATE_LINK( EditModifyHdl, Edit* ); DECL_DLLPRIVATE_LINK( OKHdl, OKButton* ); -//#endif public: SfxPasswordDialog( Window* pParent, const String* pGroupText = NULL ); @@ -84,6 +83,7 @@ public: void SetMaxLen( USHORT Len ); void SetEditHelpId( ULONG nId ) { maPasswordED.SetHelpId( nId ); } void ShowExtras( USHORT nExtras ) { mnExtras = nExtras; } + void AllowAsciiOnly( bool i_bAsciiOnly = true ) { mbAsciiOnly = i_bAsciiOnly; } virtual short Execute(); }; diff --git a/sfx2/source/dialog/passwd.cxx b/sfx2/source/dialog/passwd.cxx index cbe47d39b704..981657d476fa 100644 --- a/sfx2/source/dialog/passwd.cxx +++ b/sfx2/source/dialog/passwd.cxx @@ -43,10 +43,35 @@ #include "dialog.hrc" #include "passwd.hrc" +#include "vcl/sound.hxx" + // ----------------------------------------------------------------------- IMPL_LINK_INLINE_START( SfxPasswordDialog, EditModifyHdl, Edit *, EMPTYARG ) { + if( mbAsciiOnly ) + { + rtl::OUString aTest( maPasswordED.GetText() ); + const sal_Unicode* pTest = aTest.getStr(); + sal_Int32 nLen = aTest.getLength(); + rtl::OUStringBuffer aFilter( nLen ); + bool bReset = false; + for( sal_Int32 i = 0; i < nLen; i++ ) + { + if( *pTest > 0x007f ) + bReset = true; + else + aFilter.append( *pTest ); + pTest++; + } + if( bReset ) + { + Sound::Beep( SOUND_ERROR ); + maPasswordED.SetSelection( Selection( 0, nLen ) ); + maPasswordED.ReplaceSelected( aFilter.makeStringAndClear() ); + } + + } maOKBtn.Enable( maPasswordED.GetText().Len() >= mnMinLen ); return 0; } @@ -88,7 +113,8 @@ SfxPasswordDialog::SfxPasswordDialog( Window* pParent, const String* pGroupText maConfirmStr ( SfxResId( STR_PASSWD_CONFIRM ) ), mnMinLen ( 5 ), - mnExtras ( 0 ) + mnExtras ( 0 ), + mbAsciiOnly ( false ) { FreeResource(); diff --git a/shell/source/backends/kdebe/makefile.mk b/shell/source/backends/kdebe/makefile.mk index 8bc0b475be8e..6159be6be151 100644 --- a/shell/source/backends/kdebe/makefile.mk +++ b/shell/source/backends/kdebe/makefile.mk @@ -77,11 +77,11 @@ SHL1OBJS=$(SLOFILES) SHL1DEF=$(MISC)$/$(SHL1TARGET).def SHL1IMPLIB=i$(SHL1TARGET) +SHL1LINKFLAGS+=$(KDE_LIBS) -lkio SHL1STDLIBS= \ $(CPPUHELPERLIB) \ $(CPPULIB) \ - $(SALLIB) \ - $(KDE_LIBS) -lkio + $(SALLIB) SHL1VERSIONMAP=exports.map SHL1DEF=$(MISC)$/$(SHL1TARGET).def |