Merge commit 'ooo/DEV300_m106' into integration/dev300_m106
Conflicts: avmedia/source/gstreamer/gstframegrabber.cxx avmedia/source/gstreamer/gstplayer.cxx avmedia/source/gstreamer/gstplayer.hxx basic/inc/basic/sbxdef.hxx basic/source/classes/sbxmod.cxx basic/source/comp/makefile.mk basic/source/comp/sbcomp.cxx basic/source/inc/namecont.hxx basic/source/inc/scriptcont.hxx basic/source/runtime/methods.cxx basic/source/runtime/runtime.cxx basic/source/runtime/stdobj.cxx basic/source/runtime/step1.cxx basic/source/uno/namecont.cxx basic/util/makefile.mk connectivity/source/commontools/predicateinput.cxx connectivity/source/drivers/dbase/DNoException.cxx connectivity/source/drivers/dbase/DTable.cxx connectivity/source/drivers/file/fcomp.cxx connectivity/source/drivers/jdbc/JConnection.cxx connectivity/source/drivers/odbcbase/OResultSet.cxx connectivity/source/drivers/odbcbase/OStatement.cxx connectivity/source/parse/sqlnode.cxx desktop/source/app/app.cxx drawinglayer/inc/drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx drawinglayer/source/processor2d/vclprocessor2d.cxx formula/inc/formula/token.hxx formula/source/core/api/token.cxx fpicker/source/win32/filepicker/VistaFilePickerImpl.hxx fpicker/source/win32/filepicker/platform_vista.h framework/source/helper/persistentwindowstate.cxx framework/source/uielement/menubarmanager.cxx oovbaapi/ooo/vba/XFoundFiles.idl oovbaapi/ooo/vba/excel/XApplication.idl oovbaapi/ooo/vba/msforms/XCheckBox.idl oovbaapi/ooo/vba/msforms/XComboBox.idl oovbaapi/ooo/vba/msforms/XControl.idl oovbaapi/ooo/vba/msforms/XGroupBox.idl oovbaapi/ooo/vba/msforms/XLabel.idl oovbaapi/ooo/vba/msforms/XListBox.idl oovbaapi/ooo/vba/msforms/XNewFont.idl oovbaapi/ooo/vba/msforms/XRadioButton.idl oovbaapi/ooo/vba/msforms/XTextBox.idl oovbaapi/ooo/vba/msforms/XToggleButton.idl scripting/source/dlgprov/dlgevtatt.cxx sfx2/source/control/unoctitm.cxx sfx2/source/doc/objstor.cxx sfx2/source/doc/objxtor.cxx svx/inc/svx/svdograf.hxx svx/source/form/fmpage.cxx svx/source/form/fmpgeimp.cxx svx/source/svdraw/svdedtv.cxx svx/source/svdraw/svdfmtf.cxx svx/source/svdraw/svdograf.cxx svx/source/svdraw/svdouno.cxx svx/source/xml/xmlgrhlp.cxx uui/source/iahndl-ssl.cxx vbahelper/Library_msforms.mk vbahelper/Library_vbahelper.mk vbahelper/inc/vbahelper/vbahelper.hxx vbahelper/prj/build.lst vbahelper/source/msforms/vbacombobox.cxx vbahelper/source/msforms/vbacontrol.cxx vbahelper/source/msforms/vbacontrols.cxx vbahelper/source/msforms/vbaframe.cxx vbahelper/source/msforms/vbaframe.hxx vbahelper/source/msforms/vbalabel.cxx vbahelper/source/msforms/vbalabel.hxx vbahelper/source/msforms/vbalistbox.cxx vbahelper/source/msforms/vbalistbox.hxx vbahelper/source/msforms/vbamultipage.cxx vbahelper/source/msforms/vbatogglebutton.cxx vbahelper/source/msforms/vbauserform.cxx vbahelper/source/vbahelper/vbacommandbar.cxx vbahelper/source/vbahelper/vbacommandbarcontrol.cxx vbahelper/source/vbahelper/vbacommandbarcontrols.hxx vbahelper/source/vbahelper/vbahelper.cxx vbahelper/source/vbahelper/vbawindowbase.cxx xmloff/source/meta/xmlmetai.cxx xmloff/source/style/PageMasterExportPropMapper.cxx xmloff/source/style/PageMasterStyleMap.cxx xmloff/source/text/txtexppr.cxx xmloff/source/text/txtprmap.cxx
This commit is contained in:
@@ -79,6 +79,7 @@ using namespace com::sun::star::lang;
|
||||
using namespace com::sun::star::ucb;
|
||||
using namespace com::sun::star::io;
|
||||
using namespace com::sun::star::script;
|
||||
using namespace com::sun::star::frame;
|
||||
|
||||
#include "stdobj.hxx"
|
||||
#include <basic/sbstdobj.hxx>
|
||||
@@ -89,6 +90,7 @@ using namespace com::sun::star::script;
|
||||
#include "iosys.hxx"
|
||||
#include "ddectrl.hxx"
|
||||
#include <sbintern.hxx>
|
||||
#include <basic/vbahelper.hxx>
|
||||
|
||||
#include <list>
|
||||
#include <math.h>
|
||||
@@ -383,22 +385,48 @@ RTLFUNC(Asc)
|
||||
}
|
||||
}
|
||||
|
||||
RTLFUNC(Chr)
|
||||
void implChr( SbxArray& rPar, bool bChrW )
|
||||
{
|
||||
(void)pBasic;
|
||||
(void)bWrite;
|
||||
|
||||
if ( rPar.Count() < 2 )
|
||||
StarBASIC::Error( SbERR_BAD_ARGUMENT );
|
||||
else
|
||||
{
|
||||
SbxVariableRef pArg = rPar.Get( 1 );
|
||||
sal_Unicode aCh = (sal_Unicode)pArg->GetUShort();
|
||||
String aStr( aCh );
|
||||
|
||||
String aStr;
|
||||
if( !bChrW && SbiRuntime::isVBAEnabled() )
|
||||
{
|
||||
sal_Char c = (sal_Char)pArg->GetByte();
|
||||
ByteString s( c );
|
||||
aStr = String( s, gsl_getSystemTextEncoding() );
|
||||
}
|
||||
else
|
||||
{
|
||||
sal_Unicode aCh = (sal_Unicode)pArg->GetUShort();
|
||||
aStr = String( aCh );
|
||||
}
|
||||
rPar.Get(0)->PutString( aStr );
|
||||
}
|
||||
}
|
||||
|
||||
RTLFUNC(Chr)
|
||||
{
|
||||
(void)pBasic;
|
||||
(void)bWrite;
|
||||
|
||||
bool bChrW = false;
|
||||
implChr( rPar, bChrW );
|
||||
}
|
||||
|
||||
RTLFUNC(ChrW)
|
||||
{
|
||||
(void)pBasic;
|
||||
(void)bWrite;
|
||||
|
||||
bool bChrW = true;
|
||||
implChr( rPar, bChrW );
|
||||
}
|
||||
|
||||
|
||||
#ifdef UNX
|
||||
#define _MAX_PATH 260
|
||||
@@ -481,11 +509,16 @@ RTLFUNC(CurDir)
|
||||
|
||||
RTLFUNC(ChDir)
|
||||
{
|
||||
(void)pBasic;
|
||||
(void)bWrite;
|
||||
|
||||
rPar.Get(0)->PutEmpty();
|
||||
if (rPar.Count() != 2)
|
||||
if (rPar.Count() == 2)
|
||||
{
|
||||
// VBA: track current directory per document type (separately for Writer, Calc, Impress, etc.)
|
||||
if( SbiRuntime::isVBAEnabled() )
|
||||
::basic::vba::registerCurrentDirectory( getDocumentModel( pBasic ), rPar.Get(1)->GetString() );
|
||||
}
|
||||
else
|
||||
StarBASIC::Error( SbERR_BAD_ARGUMENT );
|
||||
}
|
||||
|
||||
@@ -689,7 +722,7 @@ void implRemoveDirRecursive( const String& aDirPath )
|
||||
FileBase::RC nRet = DirectoryItem::get( aDirPath, aItem );
|
||||
sal_Bool bExists = (nRet == FileBase::E_None);
|
||||
|
||||
FileStatus aFileStatus( FileStatusMask_Type );
|
||||
FileStatus aFileStatus( osl_FileStatus_Mask_Type );
|
||||
nRet = aItem.getFileStatus( aFileStatus );
|
||||
FileStatus::Type aType = aFileStatus.getFileType();
|
||||
sal_Bool bFolder = isFolder( aType );
|
||||
@@ -716,7 +749,7 @@ void implRemoveDirRecursive( const String& aDirPath )
|
||||
break;
|
||||
|
||||
// Handle flags
|
||||
FileStatus aFileStatus2( FileStatusMask_Type | FileStatusMask_FileURL );
|
||||
FileStatus aFileStatus2( osl_FileStatus_Mask_Type | osl_FileStatus_Mask_FileURL );
|
||||
nRet = aItem2.getFileStatus( aFileStatus2 );
|
||||
::rtl::OUString aPath = aFileStatus2.getFileURL();
|
||||
|
||||
@@ -845,7 +878,7 @@ RTLFUNC(FileLen)
|
||||
{
|
||||
DirectoryItem aItem;
|
||||
DirectoryItem::get( getFullPathUNC( aStr ), aItem );
|
||||
FileStatus aFileStatus( FileStatusMask_FileSize );
|
||||
FileStatus aFileStatus( osl_FileStatus_Mask_FileSize );
|
||||
aItem.getFileStatus( aFileStatus );
|
||||
nLen = (sal_Int32)aFileStatus.getFileSize();
|
||||
}
|
||||
@@ -2459,7 +2492,7 @@ String getDirectoryPath( String aPathStr )
|
||||
FileBase::RC nRet = DirectoryItem::get( aPathStr, aItem );
|
||||
if( nRet == FileBase::E_None )
|
||||
{
|
||||
FileStatus aFileStatus( FileStatusMask_Type );
|
||||
FileStatus aFileStatus( osl_FileStatus_Mask_Type );
|
||||
nRet = aItem.getFileStatus( aFileStatus );
|
||||
if( nRet == FileBase::E_None )
|
||||
{
|
||||
@@ -2470,7 +2503,7 @@ String getDirectoryPath( String aPathStr )
|
||||
}
|
||||
else if( aType == FileStatus::Link )
|
||||
{
|
||||
FileStatus aFileStatus2( FileStatusMask_LinkTargetURL );
|
||||
FileStatus aFileStatus2( osl_FileStatus_Mask_LinkTargetURL );
|
||||
nRet = aItem.getFileStatus( aFileStatus2 );
|
||||
if( nRet == FileBase::E_None )
|
||||
aRetStr = getDirectoryPath( aFileStatus2.getLinkTargetURL() );
|
||||
@@ -2817,7 +2850,7 @@ RTLFUNC(Dir)
|
||||
}
|
||||
|
||||
// Handle flags
|
||||
FileStatus aFileStatus( FileStatusMask_Type | FileStatusMask_FileName );
|
||||
FileStatus aFileStatus( osl_FileStatus_Mask_Type | osl_FileStatus_Mask_FileName );
|
||||
nRet = aItem.getFileStatus( aFileStatus );
|
||||
|
||||
// Only directories?
|
||||
@@ -2917,7 +2950,7 @@ RTLFUNC(GetAttr)
|
||||
{
|
||||
DirectoryItem aItem;
|
||||
DirectoryItem::get( getFullPathUNC( rPar.Get(1)->GetString() ), aItem );
|
||||
FileStatus aFileStatus( FileStatusMask_Attributes | FileStatusMask_Type );
|
||||
FileStatus aFileStatus( osl_FileStatus_Mask_Attributes | osl_FileStatus_Mask_Type );
|
||||
aItem.getFileStatus( aFileStatus );
|
||||
sal_uInt64 nAttributes = aFileStatus.getAttributes();
|
||||
sal_Bool bReadOnly = (nAttributes & Attribute_ReadOnly) != 0;
|
||||
@@ -2969,7 +3002,7 @@ RTLFUNC(FileDateTime)
|
||||
{
|
||||
DirectoryItem aItem;
|
||||
DirectoryItem::get( getFullPathUNC( aPath ), aItem );
|
||||
FileStatus aFileStatus( FileStatusMask_ModifyTime );
|
||||
FileStatus aFileStatus( osl_FileStatus_Mask_ModifyTime );
|
||||
aItem.getFileStatus( aFileStatus );
|
||||
TimeValue aTimeVal = aFileStatus.getModifyTime();
|
||||
oslDateTime aDT;
|
||||
|
Reference in New Issue
Block a user