merge to m67
This commit is contained in:
commit
e1593452b2
305 changed files with 5826 additions and 11163 deletions
|
@ -152,8 +152,10 @@ public:
|
|||
namespace ooo
|
||||
{
|
||||
namespace vba {
|
||||
namespace excel {
|
||||
class ScVbaCellRangeAccess; // Vba Helper class
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class SC_DLLPUBLIC ScCellRangesBase : public com::sun::star::beans::XPropertySet,
|
||||
|
@ -175,7 +177,7 @@ class SC_DLLPUBLIC ScCellRangesBase : public com::sun::star::beans::XPropertySet
|
|||
{
|
||||
friend class ScTabViewObj; // fuer select()
|
||||
friend class ScTableSheetObj; // fuer createCursorByRange()
|
||||
friend class ooo::vba::ScVbaCellRangeAccess;
|
||||
friend class ooo::vba::excel::ScVbaCellRangeAccess;
|
||||
|
||||
private:
|
||||
const SfxItemPropertySet* pPropSet;
|
||||
|
|
|
@ -662,7 +662,9 @@
|
|||
//#define SID_OPENDLG_MODCHART (SC_MESSAGE_START + 58)
|
||||
#define SID_OPENDLG_CONDFRMT (SC_MESSAGE_START + 59)
|
||||
#define SID_OPENDLG_OPTSOLVER (SC_MESSAGE_START + 60)
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
#define SID_VALIDITY_REFERENCE (SC_MESSAGE_START + 61)
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
#define SC_HINT_NAVIGATOR_UPDATEALL (SC_MESSAGE_START + 65)
|
||||
|
||||
// Funktionen ------------------------------------------------------------
|
||||
|
|
|
@ -55,6 +55,9 @@ class SfxStyleSheetBase;
|
|||
class ScDPObject;
|
||||
struct ScDPFuncData;
|
||||
struct ScDPNumGroupInfo;
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
class ScTabViewShell;
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
||||
namespace com { namespace sun { namespace star { namespace sheet {
|
||||
struct DataPilotFieldReference;
|
||||
|
@ -459,8 +462,13 @@ public:
|
|||
virtual SfxAbstractTabDialog * CreateScParagraphDlg( Window* pParent, const SfxItemSet* pAttr ,//add for ScParagraphDlg
|
||||
int nId ) = 0;
|
||||
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//virtual SfxAbstractTabDialog * CreateScValidationDlg( Window* pParent, //add for ScValidationDlg
|
||||
// const SfxItemSet* pArgSet,int nId ) = 0;
|
||||
|
||||
virtual SfxAbstractTabDialog * CreateScValidationDlg( Window* pParent, //add for ScValidationDlg
|
||||
const SfxItemSet* pArgSet,int nId ) = 0;
|
||||
const SfxItemSet* pArgSet,int nId, ScTabViewShell *pTabVwSh ) = 0;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
virtual SfxAbstractTabDialog * CreateScSortDlg( Window* pParent, //add for ScSortDlg
|
||||
const SfxItemSet* pArgSet,int nId ) = 0;
|
||||
// for tabpage
|
||||
|
|
|
@ -41,6 +41,12 @@
|
|||
#include <unotools/options.hxx>
|
||||
#include <tools/shl.hxx>
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
#include <map>
|
||||
#include <list>
|
||||
#include <algorithm>
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
||||
|
||||
class KeyEvent;
|
||||
class SdrModel;
|
||||
|
@ -145,6 +151,9 @@ class ScModule: public SfxModule, public SfxListener, utl::ConfigurationListener
|
|||
bool mbIsInSharedDocLoading;
|
||||
bool mbIsInSharedDocSaving;
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
std::map<USHORT, std::list<Window*> > m_mapRefWindow;
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
public:
|
||||
SFX_DECL_INTERFACE(SCID_APP)
|
||||
|
||||
|
@ -254,7 +263,10 @@ SC_DLLPUBLIC void SetAppOptions ( const ScAppOptions& rO
|
|||
ScFormEditData* GetFormEditData() { return pFormEditData; }
|
||||
|
||||
// Referenzeingabe:
|
||||
void SetRefDialog( USHORT nId, BOOL bVis, SfxViewFrame* pViewFrm = NULL );
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
//void SetRefDialog( USHORT nId, BOOL bVis, SfxViewFrame* pViewFrm = NULL );
|
||||
SC_DLLPUBLIC void SetRefDialog( USHORT nId, BOOL bVis, SfxViewFrame* pViewFrm = NULL );
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
BOOL IsModalMode(SfxObjectShell* pDocSh = NULL);
|
||||
BOOL IsFormulaMode();
|
||||
BOOL IsRefDialogOpen();
|
||||
|
@ -277,6 +289,14 @@ SC_DLLPUBLIC void SetAppOptions ( const ScAppOptions& rO
|
|||
bool IsInSharedDocLoading() const { return mbIsInSharedDocLoading; }
|
||||
void SetInSharedDocSaving( bool bNew ) { mbIsInSharedDocSaving = bNew; }
|
||||
bool IsInSharedDocSaving() const { return mbIsInSharedDocSaving; }
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
SC_DLLPUBLIC BOOL RegisterRefWindow( USHORT nSlotId, Window *pWnd );
|
||||
SC_DLLPUBLIC BOOL UnregisterRefWindow( USHORT nSlotId, Window *pWnd );
|
||||
SC_DLLPUBLIC BOOL IsAliveRefDlg( USHORT nSlotId, Window *pWnd );
|
||||
SC_DLLPUBLIC Window * Find1RefWindow( USHORT nSlotId, Window *pWndAncestor );
|
||||
SC_DLLPUBLIC Window * Find1RefWindow( Window *pWndAncestor );
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
};
|
||||
|
||||
#define SC_MOD() ( *(ScModule**) GetAppData(SHL_CALC) )
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
sc sc : filter l10n oovbaapi svx stoc BOOST:boost formula oox NULL
|
||||
sc sc : filter l10n vbahelper oovbaapi svx uui stoc BOOST:boost formula oox NULL
|
||||
sc sc usr1 - all sc_mkout NULL
|
||||
sc sc\inc nmake - all sc_inc NULL
|
||||
sc sc\prj get - all sc_prj NULL
|
||||
|
|
|
@ -52,6 +52,9 @@ interface CellSelection
|
|||
SID_OPENDLG_FUNCTION [ ExecMethod = Execute; StateMethod = GetCellState; ]
|
||||
SID_INS_FUNCTION [ ExecMethod = ExecuteEdit; StateMethod = GetState; ]
|
||||
|
||||
// no Exec/StateMethod needed, but SfxDispatcher complains if the slot is not included in the shell
|
||||
SID_VALIDITY_REFERENCE []
|
||||
|
||||
// Datenbank-Operationen {
|
||||
SID_SORT_ASCENDING [ ExecMethod = ExecuteDB; StateMethod = GetDBState; ]
|
||||
SID_SORT_DESCENDING [ ExecMethod = ExecuteDB; StateMethod = GetDBState; ]
|
||||
|
|
|
@ -2779,6 +2779,33 @@ SfxVoidItem SolverDialog SID_OPENDLG_OPTSOLVER
|
|||
GroupId = GID_OPTIONS;
|
||||
]
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
SfxVoidItem ValidityReference SID_VALIDITY_REFERENCE
|
||||
()
|
||||
[
|
||||
/* flags: */
|
||||
AutoUpdate = FALSE,
|
||||
Cachable = Cachable,
|
||||
FastCall = FALSE,
|
||||
HasCoreId = FALSE,
|
||||
HasDialog = TRUE,
|
||||
ReadOnlyDoc = TRUE,
|
||||
Toggle = FALSE,
|
||||
Container = FALSE,
|
||||
RecordAbsolute = FALSE,
|
||||
RecordPerSet;
|
||||
Synchron;
|
||||
|
||||
/* config: */
|
||||
AccelConfig = TRUE,
|
||||
MenuConfig = TRUE,
|
||||
StatusBarConfig = FALSE,
|
||||
ToolBoxConfig = TRUE,
|
||||
GroupId = GID_OPTIONS;
|
||||
]
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
SfxVoidItem GoDownToEndOfData SID_CURSORBLKDOWN
|
||||
(SfxInt16Item By FN_PARAM_1,SfxBoolItem Sel FN_PARAM_2)
|
||||
|
|
|
@ -102,6 +102,10 @@
|
|||
|
||||
#include <com/sun/star/document/XDocumentProperties.hpp>
|
||||
#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
|
||||
#include <basic/basmgr.hxx>
|
||||
#include <cppuhelper/component_context.hxx>
|
||||
#include <com/sun/star/container/XNameContainer.hpp>
|
||||
#include <sfx2/app.hxx>
|
||||
|
||||
|
||||
using namespace com::sun::star;
|
||||
|
@ -248,16 +252,6 @@ void ImportExcel8::SheetProtection( void )
|
|||
GetSheetProtectBuffer().ReadOptions( aIn, GetCurrScTab() );
|
||||
}
|
||||
|
||||
bool lcl_hasVBAEnabled()
|
||||
{
|
||||
uno::Reference< beans::XPropertySet > xProps( ::comphelper::getProcessServiceFactory(), uno::UNO_QUERY);
|
||||
// test if vba service is present
|
||||
uno::Reference< uno::XComponentContext > xCtx( xProps->getPropertyValue( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "DefaultContext" ))), uno::UNO_QUERY );
|
||||
uno::Reference< uno::XInterface > xGlobals( xCtx->getValueByName( ::rtl::OUString::createFromAscii( "/singletons/ooo.vba.theGlobals") ), uno::UNO_QUERY );
|
||||
|
||||
return xGlobals.is();
|
||||
}
|
||||
|
||||
void ImportExcel8::ReadBasic( void )
|
||||
{
|
||||
bHasBasic = TRUE;
|
||||
|
@ -273,7 +267,7 @@ void ImportExcel8::ReadBasic( void )
|
|||
if( bLoadCode || bLoadStrg )
|
||||
{
|
||||
SvxImportMSVBasic aBasicImport( *pShell, *xRootStrg, bLoadCode, bLoadStrg );
|
||||
bool bAsComment = !bLoadExecutable || !lcl_hasVBAEnabled();
|
||||
bool bAsComment = !bLoadExecutable;
|
||||
aBasicImport.Import( EXC_STORAGE_VBA_PROJECT, EXC_STORAGE_VBA, bAsComment );
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1181,7 +1181,7 @@ ScAccessibleEditLineTextData::ScAccessibleEditLineTextData(EditView* pEditView,
|
|||
ScTextWnd* pTxtWnd = (ScTextWnd*)pWin;
|
||||
|
||||
if (pTxtWnd)
|
||||
pTxtWnd->SetAccessibleTextData(this);
|
||||
pTxtWnd->InsertAccessibleTextData( *this );
|
||||
}
|
||||
|
||||
ScAccessibleEditLineTextData::~ScAccessibleEditLineTextData()
|
||||
|
@ -1189,7 +1189,7 @@ ScAccessibleEditLineTextData::~ScAccessibleEditLineTextData()
|
|||
ScTextWnd* pTxtWnd = (ScTextWnd*)mpWindow;
|
||||
|
||||
if (pTxtWnd)
|
||||
pTxtWnd->SetAccessibleTextData(NULL);
|
||||
pTxtWnd->RemoveAccessibleTextData( *this );
|
||||
|
||||
if (mbEditEngineCreated && mpEditEngine)
|
||||
{
|
||||
|
@ -1210,7 +1210,7 @@ void ScAccessibleEditLineTextData::Dispose()
|
|||
ScTextWnd* pTxtWnd = (ScTextWnd*)mpWindow;
|
||||
|
||||
if (pTxtWnd)
|
||||
pTxtWnd->SetAccessibleTextData(NULL);
|
||||
pTxtWnd->RemoveAccessibleTextData( *this );
|
||||
|
||||
ResetEditMode();
|
||||
mpWindow = NULL;
|
||||
|
|
|
@ -31,9 +31,7 @@
|
|||
// MARKER(update_precomp.py): autogen include statement, do not remove
|
||||
#include "precompiled_sc.hxx"
|
||||
|
||||
|
||||
|
||||
//------------------------------------------------------------------
|
||||
#include <algorithm>
|
||||
|
||||
#include "scitems.hxx"
|
||||
#include <svx/eeitem.hxx>
|
||||
|
@ -738,7 +736,6 @@ ScTextWnd::ScTextWnd( Window* pParent )
|
|||
DragSourceHelper( this ),
|
||||
pEditEngine ( NULL ),
|
||||
pEditView ( NULL ),
|
||||
pAccTextData ( NULL ),
|
||||
bIsInsertMode( TRUE ),
|
||||
bFormulaMode ( FALSE ),
|
||||
bInputMode ( FALSE )
|
||||
|
@ -774,8 +771,8 @@ __EXPORT ScTextWnd::~ScTextWnd()
|
|||
{
|
||||
delete pEditView;
|
||||
delete pEditEngine;
|
||||
if (pAccTextData)
|
||||
pAccTextData->Dispose();
|
||||
for( AccTextDataVector::reverse_iterator aIt = maAccTextDatas.rbegin(), aEnd = maAccTextDatas.rend(); aIt != aEnd; ++aIt )
|
||||
(*aIt)->Dispose();
|
||||
}
|
||||
|
||||
void __EXPORT ScTextWnd::Paint( const Rectangle& rRec )
|
||||
|
@ -1112,8 +1109,8 @@ void ScTextWnd::StartEditEngine()
|
|||
|
||||
pEditEngine->SetModifyHdl(LINK(this, ScTextWnd, NotifyHdl));
|
||||
|
||||
if (pAccTextData)
|
||||
pAccTextData->StartEdit();
|
||||
if (!maAccTextDatas.empty())
|
||||
maAccTextDatas.back()->StartEdit();
|
||||
|
||||
// as long as EditEngine and DrawText sometimes differ for CTL text,
|
||||
// repaint now to have the EditEngine's version visible
|
||||
|
@ -1154,8 +1151,8 @@ void ScTextWnd::StopEditEngine( BOOL bAll )
|
|||
{
|
||||
if (pEditView)
|
||||
{
|
||||
if (pAccTextData)
|
||||
pAccTextData->EndEdit();
|
||||
if (!maAccTextDatas.empty())
|
||||
maAccTextDatas.back()->EndEdit();
|
||||
|
||||
ScModule* pScMod = SC_MOD();
|
||||
|
||||
|
@ -1259,8 +1256,8 @@ void ScTextWnd::SetTextString( const String& rNewString )
|
|||
|
||||
aString = rNewString;
|
||||
|
||||
if (pAccTextData)
|
||||
pAccTextData->TextChanged();
|
||||
if (!maAccTextDatas.empty())
|
||||
maAccTextDatas.back()->TextChanged();
|
||||
|
||||
bInputMode = FALSE;
|
||||
}
|
||||
|
@ -1317,8 +1314,8 @@ void ScTextWnd::MakeDialogEditView()
|
|||
if ( bIsRTL )
|
||||
lcl_ModifyRTLVisArea( pEditView );
|
||||
|
||||
if (pAccTextData)
|
||||
pAccTextData->StartEdit();
|
||||
if (!maAccTextDatas.empty())
|
||||
maAccTextDatas.back()->StartEdit();
|
||||
}
|
||||
|
||||
void ScTextWnd::ImplInitSettings()
|
||||
|
@ -1343,6 +1340,22 @@ void ScTextWnd::ImplInitSettings()
|
|||
rtl::OUString(String(ScResId(STR_ACC_EDITLINE_DESCR))), EditLine);
|
||||
}
|
||||
|
||||
void ScTextWnd::InsertAccessibleTextData( ScAccessibleEditLineTextData& rTextData )
|
||||
{
|
||||
OSL_ENSURE( ::std::find( maAccTextDatas.begin(), maAccTextDatas.end(), &rTextData ) == maAccTextDatas.end(),
|
||||
"ScTextWnd::InsertAccessibleTextData - passed object already registered" );
|
||||
maAccTextDatas.push_back( &rTextData );
|
||||
}
|
||||
|
||||
void ScTextWnd::RemoveAccessibleTextData( ScAccessibleEditLineTextData& rTextData )
|
||||
{
|
||||
AccTextDataVector::iterator aEnd = maAccTextDatas.end();
|
||||
AccTextDataVector::iterator aIt = ::std::find( maAccTextDatas.begin(), aEnd, &rTextData );
|
||||
OSL_ENSURE( aIt != aEnd, "ScTextWnd::RemoveAccessibleTextData - passed object not registered" );
|
||||
if( aIt != aEnd )
|
||||
maAccTextDatas.erase( aIt );
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
void ScTextWnd::DataChanged( const DataChangedEvent& rDCEvt )
|
||||
|
|
|
@ -63,7 +63,8 @@ EXCEPTIONSFILES= \
|
|||
$(SLO)$/drwtrans.obj \
|
||||
$(SLO)$/scmod2.obj \
|
||||
$(SLO)$/scmod.obj \
|
||||
$(SLO)$/client.obj
|
||||
$(SLO)$/client.obj \
|
||||
$(SLO)$/inputwin.obj
|
||||
|
||||
#LIB3TARGET=$(SLB)$/ysclib.lib
|
||||
#LIB3OBJFILES=$(SLO)$/sclib.obj
|
||||
|
|
|
@ -328,6 +328,10 @@ void ScDLL::Init()
|
|||
ScSpellDialogChildWindow ::RegisterChildWindow(FALSE, pMod);
|
||||
::avmedia::MediaPlayer ::RegisterChildWindow(FALSE, pMod);
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
ScValidityRefChildWin::RegisterChildWindow(FALSE, pMod);
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
||||
// Edit-Engine-Felder, soweit nicht schon in OfficeApplication::Init
|
||||
|
||||
SvClassManager& rClassManager = SvxFieldItem::GetClassManager();
|
||||
|
|
|
@ -2219,4 +2219,82 @@ IMPL_LINK( ScModule, CalcFieldValueHdl, EditFieldInfo*, pInfo )
|
|||
|
||||
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
BOOL ScModule::RegisterRefWindow( USHORT nSlotId, Window *pWnd )
|
||||
{
|
||||
std::list<Window*> & rlRefWindow = m_mapRefWindow[nSlotId];
|
||||
|
||||
if( std::find( rlRefWindow.begin(), rlRefWindow.end(), pWnd ) == rlRefWindow.end() )
|
||||
{
|
||||
rlRefWindow.push_back( pWnd );
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
BOOL ScModule::UnregisterRefWindow( USHORT nSlotId, Window *pWnd )
|
||||
{
|
||||
std::map<USHORT, std::list<Window*> >::iterator iSlot = m_mapRefWindow.find( nSlotId );
|
||||
|
||||
if( iSlot == m_mapRefWindow.end() )
|
||||
return FALSE;
|
||||
|
||||
std::list<Window*> & rlRefWindow = iSlot->second;
|
||||
|
||||
std::list<Window*>::iterator i = std::find( rlRefWindow.begin(), rlRefWindow.end(), pWnd );
|
||||
|
||||
if( i == rlRefWindow.end() )
|
||||
return FALSE;
|
||||
|
||||
rlRefWindow.erase( i );
|
||||
|
||||
if( !rlRefWindow.size() )
|
||||
m_mapRefWindow.erase( nSlotId );
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL ScModule::IsAliveRefDlg( USHORT nSlotId, Window *pWnd )
|
||||
{
|
||||
std::map<USHORT, std::list<Window*> >::iterator iSlot = m_mapRefWindow.find( nSlotId );
|
||||
|
||||
if( iSlot == m_mapRefWindow.end() )
|
||||
return FALSE;
|
||||
|
||||
std::list<Window*> & rlRefWindow = iSlot->second;
|
||||
|
||||
return rlRefWindow.end() != std::find( rlRefWindow.begin(), rlRefWindow.end(), pWnd );
|
||||
}
|
||||
|
||||
Window * ScModule::Find1RefWindow( USHORT nSlotId, Window *pWndAncestor )
|
||||
{
|
||||
std::map<USHORT, std::list<Window*> >::iterator iSlot = m_mapRefWindow.find( nSlotId );
|
||||
|
||||
if( iSlot == m_mapRefWindow.end() )
|
||||
return FALSE;
|
||||
|
||||
std::list<Window*> & rlRefWindow = iSlot->second;
|
||||
|
||||
while( Window *pParent = pWndAncestor->GetParent() ) pWndAncestor = pParent;
|
||||
|
||||
for( std::list<Window*>::iterator i = rlRefWindow.begin(); i!=rlRefWindow.end(); i++ )
|
||||
if ( pWndAncestor->IsWindowOrChild( *i, (*i)->IsSystemWindow() ) )
|
||||
return *i;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
Window * ScModule::Find1RefWindow( Window *pWndAncestor )
|
||||
{
|
||||
while( Window *pParent = pWndAncestor->GetParent() ) pWndAncestor = pParent;
|
||||
|
||||
for( std::map<USHORT, std::list<Window*> >::iterator i = m_mapRefWindow.begin();
|
||||
i!=m_mapRefWindow.end(); i++ )
|
||||
for( std::list<Window*>::iterator j = i->second.begin(); j!=i->second.end(); j++ )
|
||||
if ( pWndAncestor->IsWindowOrChild( *j, (*j)->IsSystemWindow() ) )
|
||||
return *j;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
|
|
@ -1425,13 +1425,19 @@ SfxAbstractTabDialog * ScAbstractDialogFactory_Impl::CreateScParagraphDlg( Windo
|
|||
|
||||
//add for ScValidationDlg begin
|
||||
SfxAbstractTabDialog * ScAbstractDialogFactory_Impl::CreateScValidationDlg( Window* pParent,
|
||||
const SfxItemSet* pArgSet,int nId )
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
// const SfxItemSet* pArgSet,int nId )
|
||||
const SfxItemSet* pArgSet,int nId, ScTabViewShell *pTabVwSh )
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picke
|
||||
{
|
||||
SfxTabDialog* pDlg=NULL;
|
||||
switch ( nId )
|
||||
{
|
||||
case TAB_DLG_VALIDATION :
|
||||
pDlg = new ScValidationDlg( pParent, pArgSet );
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//pDlg = new ScValidationDlg( pParent, pArgSet );
|
||||
pDlg = new ScValidationDlg( pParent, pArgSet, pTabVwSh );
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
|
|
@ -546,7 +546,10 @@ public:
|
|||
int nId );
|
||||
|
||||
virtual SfxAbstractTabDialog * CreateScValidationDlg( Window* pParent, //add for ScValidationDlg
|
||||
const SfxItemSet* pArgSet,int nId );
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
// const SfxItemSet* pArgSet,int nId );
|
||||
const SfxItemSet* pArgSet,int nId, ScTabViewShell *pTabVwSh );
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
|
||||
virtual SfxAbstractTabDialog * CreateScSortDlg( Window* pParent, //add for ScSortDlg
|
||||
const SfxItemSet* pArgSet,int nId );
|
||||
|
|
|
@ -81,7 +81,8 @@ EXCEPTIONSFILES= \
|
|||
$(SLO)$/csvtablebox.obj \
|
||||
$(SLO)$/fieldwnd.obj \
|
||||
$(SLO)$/pvlaydlg.obj \
|
||||
$(SLO)$/dapidata.obj
|
||||
$(SLO)$/dapidata.obj \
|
||||
$(SLO)$/validate.obj
|
||||
|
||||
SRS1NAME=$(TARGET)
|
||||
SRC1FILES = \
|
||||
|
|
|
@ -53,6 +53,12 @@
|
|||
#include "validate.hxx"
|
||||
#include "compiler.hxx"
|
||||
#include "formula/opcode.hxx" //CHINA001
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
#include "tabvwsh.hxx"
|
||||
#include <sfx2/viewfrm.hxx>
|
||||
#include <sfx2/childwin.hxx>
|
||||
#include "reffact.hxx"
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
||||
// ============================================================================
|
||||
|
||||
|
@ -66,8 +72,19 @@ static USHORT pValueRanges[] =
|
|||
|
||||
// ============================================================================
|
||||
|
||||
ScValidationDlg::ScValidationDlg( Window* pParent, const SfxItemSet* pArgSet ) :
|
||||
SfxTabDialog( pParent, ScResId( TAB_DLG_VALIDATION ), pArgSet )
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//ScValidationDlg::ScValidationDlg( Window* pParent, const SfxItemSet* pArgSet ) :
|
||||
// SfxTabDialog( pParent, ScResId( TAB_DLG_VALIDATION ), pArgSet )
|
||||
ScValidationDlg::ScValidationDlg( Window* pParent,
|
||||
const SfxItemSet* pArgSet,
|
||||
ScTabViewShell *pTabViewSh,
|
||||
SfxBindings *pB /*= NULL*/
|
||||
) :
|
||||
ScValidationDlgBase( pParent ? pParent : SFX_APP()->GetTopWindow(), TAB_DLG_VALIDATION, pArgSet, pB ),
|
||||
m_bOwnRefHdlr( false ),
|
||||
m_pTabVwSh( pTabViewSh ),
|
||||
m_bRefInputting( false )
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
{
|
||||
AddTabPage( TP_VALIDATION_VALUES, ScTPValidationValue::Create, 0 );
|
||||
AddTabPage( TP_VALIDATION_INPUTHELP, ScTPValidationHelp::Create, 0 );
|
||||
|
@ -75,8 +92,100 @@ ScValidationDlg::ScValidationDlg( Window* pParent, const SfxItemSet* pArgSet ) :
|
|||
FreeResource();
|
||||
}
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
void ScTPValidationValue::SetReferenceHdl( const ScRange&rRange , ScDocument* pDoc )
|
||||
{
|
||||
if ( rRange.aStart != rRange.aEnd )
|
||||
if ( ScValidationDlg *pValidationDlg = GetValidationDlg() )
|
||||
if( m_pRefEdit )
|
||||
pValidationDlg/*->GetRefHandler()*/->RefInputStart( m_pRefEdit );
|
||||
|
||||
if ( m_pRefEdit )
|
||||
{
|
||||
String aStr;
|
||||
rRange.Format( aStr, SCR_ABS_3D, pDoc );
|
||||
m_pRefEdit->SetRefString( aStr );
|
||||
//m_pRefEdit->SetRefString( rRange.aStart != rRange.aEnd ? aStr : String::CreateFromAscii("=").Append( aStr ) );
|
||||
}
|
||||
}
|
||||
|
||||
void ScTPValidationValue:: SetActiveHdl()
|
||||
{
|
||||
if ( m_pRefEdit ) m_pRefEdit->GrabFocus();
|
||||
|
||||
if ( ScValidationDlg *pValidationDlg = GetValidationDlg() )
|
||||
if( m_pRefEdit )
|
||||
{
|
||||
pValidationDlg/*->GetRefHandler()*/->RefInputDone();
|
||||
}
|
||||
}
|
||||
|
||||
void ScTPValidationValue::RefInputStartPreHdl( ScRefEdit* pEdit, ScRefButton* pButton )
|
||||
{
|
||||
if ( ScValidationDlg *pValidationDlg = GetValidationDlg() )
|
||||
{
|
||||
if( pEdit == m_pRefEdit )
|
||||
{
|
||||
if( Window *pPreWnd = pEdit==&maEdMax?&maFtMax:(pEdit==&maEdMin?&maFtMin:NULL) )
|
||||
{
|
||||
pPreWnd->SetParent( pValidationDlg );
|
||||
pPreWnd->Hide();
|
||||
}
|
||||
|
||||
m_pRefEdit->SetParent( pValidationDlg );
|
||||
}
|
||||
|
||||
if( pButton == &m_btnRef )m_btnRef.SetParent( pValidationDlg );
|
||||
}
|
||||
}
|
||||
|
||||
void ScTPValidationValue::RefInputDonePreHdl()
|
||||
{
|
||||
|
||||
if( m_pRefEdit && m_pRefEdit->GetParent()!= this )
|
||||
{
|
||||
if( Window *pPreWnd = m_pRefEdit==&maEdMax?&maFtMax:(m_pRefEdit==&maEdMin?&maFtMin:NULL) )
|
||||
{
|
||||
pPreWnd->SetParent( this );
|
||||
pPreWnd->Show();
|
||||
}
|
||||
|
||||
m_pRefEdit->SetParent( this );
|
||||
|
||||
m_btnRef.SetParent( m_pRefEdit ); //if Edit SetParent but button not, the tab order will be incorrect, need button to setparent to anthor window and restore parent later in order to restore the tab order
|
||||
// aExample1.SetParent( m_pRefEdit ); // the aExample1's child order will affect acc key
|
||||
}
|
||||
|
||||
if( m_btnRef.GetParent()!=this ) m_btnRef.SetParent( this );
|
||||
// if( aExample1.GetParent()!=this ) aExample1.SetParent( this );
|
||||
}
|
||||
|
||||
void ScTPValidationValue::RefInputDonePostHdl()
|
||||
{
|
||||
|
||||
|
||||
if( m_pRefEdit && !m_pRefEdit->HasFocus() )
|
||||
m_pRefEdit->GrabFocus();
|
||||
|
||||
}
|
||||
|
||||
|
||||
BOOL ScValidationDlg::Close()
|
||||
{
|
||||
if( m_bOwnRefHdlr )
|
||||
if( SfxTabPage* pPage = GetTabPage( TP_VALIDATION_VALUES ) )
|
||||
static_cast<ScTPValidationValue*>(pPage)->RemoveRefDlg();
|
||||
|
||||
return ScValidationDlgBase::Close();
|
||||
}
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
||||
ScValidationDlg::~ScValidationDlg()
|
||||
{
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
if( m_bOwnRefHdlr )
|
||||
RemoveRefDlg( FALSE );
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
}
|
||||
|
||||
|
||||
|
@ -236,7 +345,10 @@ ScTPValidationValue::ScTPValidationValue( Window* pParent, const SfxItemSet& rAr
|
|||
maStrMax ( ScResId( SCSTR_VALID_MAXIMUM ) ),
|
||||
maStrValue( ScResId( SCSTR_VALID_VALUE ) ),
|
||||
maStrRange( ScResId( SCSTR_VALID_RANGE ) ),
|
||||
maStrList ( ScResId( SCSTR_VALID_LIST ) )
|
||||
maStrList ( ScResId( SCSTR_VALID_LIST ) ),
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
m_btnRef( this, ScResId( RB_VALIDITY_REF ) )
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
{
|
||||
Init();
|
||||
FreeResource();
|
||||
|
@ -246,6 +358,9 @@ ScTPValidationValue::ScTPValidationValue( Window* pParent, const SfxItemSet& rAr
|
|||
String aListSep = ::GetScCompilerNativeSymbol( ocSep ); //CHINA001
|
||||
DBG_ASSERT( aListSep.Len() == 1, "ScTPValidationValue::ScTPValidationValue - list separator error" );
|
||||
mcFmlaSep = aListSep.Len() ? aListSep.GetChar( 0 ) : ';';
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
m_btnRef.Hide();
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
}
|
||||
|
||||
ScTPValidationValue::~ScTPValidationValue()
|
||||
|
@ -257,6 +372,13 @@ void ScTPValidationValue::Init()
|
|||
maLbAllow.SetSelectHdl( LINK( this, ScTPValidationValue, SelectHdl ) );
|
||||
maLbValue.SetSelectHdl( LINK( this, ScTPValidationValue, SelectHdl ) );
|
||||
maCbShow.SetClickHdl( LINK( this, ScTPValidationValue, CheckHdl ) );
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
maEdMin.SetGetFocusHdl( LINK( this, ScTPValidationValue, EditSetFocusHdl ) );
|
||||
maEdMin.SetLoseFocusHdl( LINK( this, ScTPValidationValue, KillFocusHdl ) );
|
||||
maEdMax.SetGetFocusHdl( LINK( this, ScTPValidationValue, EditSetFocusHdl ) );
|
||||
m_btnRef.SetLoseFocusHdl( LINK( this, ScTPValidationValue, KillFocusHdl ) );
|
||||
maEdMax.SetLoseFocusHdl( LINK( this, ScTPValidationValue, KillFocusHdl ) );
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
||||
maLbAllow.SelectEntryPos( SC_VALIDDLG_ALLOW_ANY );
|
||||
maLbValue.SelectEntryPos( SC_VALIDDLG_DATA_EQUAL );
|
||||
|
@ -374,6 +496,133 @@ void ScTPValidationValue::SetSecondFormula( const String& rFmlaStr )
|
|||
maEdMax.SetText( rFmlaStr );
|
||||
}
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
ScValidationDlg * ScTPValidationValue::GetValidationDlg()
|
||||
{
|
||||
if( Window *pParent = GetParent() )
|
||||
do{
|
||||
if ( dynamic_cast<ScValidationDlg*>( pParent ) )
|
||||
return static_cast< ScValidationDlg * >( pParent );
|
||||
}while ( NULL != ( pParent = pParent->GetParent() ) );
|
||||
return NULL;
|
||||
}
|
||||
void ScTPValidationValue::SetupRefDlg()
|
||||
{
|
||||
if( ScValidationDlg *pValidationDlg = GetValidationDlg() )
|
||||
if( pValidationDlg->SetupRefDlg() )
|
||||
{
|
||||
pValidationDlg->SetHandler( this );
|
||||
pValidationDlg->SetSetRefHdl( (ScRefHandlerHelper::PFUNCSETREFHDLTYPE)( &ScTPValidationValue::SetReferenceHdl ) );
|
||||
pValidationDlg->SetSetActHdl( (ScRefHandlerHelper::PCOMMONHDLTYPE)( &ScTPValidationValue::SetActiveHdl ) );
|
||||
pValidationDlg->SetRefInputStartPreHdl( (ScRefHandlerHelper::PINPUTSTARTDLTYPE)( &ScTPValidationValue::RefInputStartPreHdl ) );
|
||||
pValidationDlg->SetRefInputDonePreHdl( (ScRefHandlerHelper::PCOMMONHDLTYPE)( &ScTPValidationValue::RefInputDonePreHdl ) );
|
||||
pValidationDlg->SetRefInputDonePostHdl( (ScRefHandlerHelper::PCOMMONHDLTYPE)( &ScTPValidationValue::RefInputDonePostHdl ) );
|
||||
|
||||
if ( maEdMax.IsVisible() ) { m_pRefEdit = &maEdMax; }
|
||||
else if ( maEdMin.IsVisible() ) { m_pRefEdit = &maEdMin; }
|
||||
|
||||
if( m_pRefEdit && !m_pRefEdit->HasFocus() ) m_pRefEdit->GrabFocus();
|
||||
|
||||
if( m_pRefEdit ) m_pRefEdit->SetRefDialog( pValidationDlg );
|
||||
m_btnRef.SetReferences( pValidationDlg, m_pRefEdit );
|
||||
}
|
||||
}
|
||||
|
||||
void ScTPValidationValue::RemoveRefDlg()
|
||||
{
|
||||
if( ScValidationDlg *pValidationDlg = GetValidationDlg() )
|
||||
if( pValidationDlg->RemoveRefDlg() )
|
||||
{
|
||||
pValidationDlg->SetHandler( NULL );
|
||||
pValidationDlg->SetSetRefHdl( NULL );
|
||||
pValidationDlg->SetSetActHdl( NULL );
|
||||
pValidationDlg->SetRefInputStartPreHdl( NULL );
|
||||
pValidationDlg->SetRefInputDonePreHdl( NULL );
|
||||
pValidationDlg->SetRefInputDonePostHdl( NULL );
|
||||
|
||||
if( m_pRefEdit ) m_pRefEdit->SetRefDialog( NULL );
|
||||
m_pRefEdit = NULL;
|
||||
|
||||
m_btnRef.SetReferences( NULL, NULL );
|
||||
|
||||
#if ! defined( WNT ) && !defined( _MSC_VER )
|
||||
TidyListBoxes();
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
void ScTPValidationValue::TidyListBoxes()
|
||||
{
|
||||
if ( Window *pWnd = GetChild( 0 ) )
|
||||
{
|
||||
bool bFindLst = false;
|
||||
std::list<Window*> alstOrder;
|
||||
|
||||
do{
|
||||
if( pWnd->GetParent() == this )
|
||||
{
|
||||
if ( !bFindLst )
|
||||
{
|
||||
try{
|
||||
if( dynamic_cast<ListBox*>(pWnd)||dynamic_cast<ListBox*>(pWnd->GetWindow(WINDOW_CLIENT) ) )
|
||||
bFindLst = true;
|
||||
}
|
||||
catch( ... )
|
||||
{
|
||||
if ( *(void**)pWnd == *(void**)&maLbValue )
|
||||
bFindLst = true;
|
||||
else if ( Window *pClient = pWnd->GetWindow( WINDOW_CLIENT ) )
|
||||
if ( *(void**)pClient == *(void**)&maLbValue )
|
||||
bFindLst = true;
|
||||
}
|
||||
}
|
||||
|
||||
if ( bFindLst )
|
||||
alstOrder.push_back( pWnd->GetWindow( WINDOW_CLIENT ) );
|
||||
}
|
||||
}while( NULL != ( pWnd = pWnd->GetWindow( WINDOW_NEXT ) ) );
|
||||
|
||||
pWnd = GetChild(0);
|
||||
|
||||
while( std::find( alstOrder.begin(), alstOrder.end(), pWnd ) != alstOrder.end() && NULL != ( pWnd = pWnd->GetWindow( WINDOW_NEXT) ) );
|
||||
|
||||
if ( pWnd )
|
||||
{
|
||||
for ( std::list<Window*>::iterator i = alstOrder.begin(); i!=alstOrder.end(); i++ )
|
||||
{
|
||||
Window *pParent = (*i)->GetParent();
|
||||
(*i)->SetParent( pWnd );
|
||||
(*i)->SetParent( pParent );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
IMPL_LINK( ScTPValidationValue, EditSetFocusHdl, Edit *, /*pEdit*/ )
|
||||
{
|
||||
USHORT nPos=maLbAllow.GetSelectEntryPos();
|
||||
|
||||
if ( nPos == SC_VALIDDLG_ALLOW_RANGE )
|
||||
{
|
||||
SetupRefDlg();
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
IMPL_LINK( ScTPValidationValue, KillFocusHdl, Window *, pWnd )
|
||||
{
|
||||
if( pWnd == m_pRefEdit || pWnd == &m_btnRef )
|
||||
if( ScValidationDlg *pValidationDlg = GetValidationDlg() )
|
||||
if ( (pValidationDlg->IsActive() || pValidationDlg->IsChildFocus() ) && !pValidationDlg->IsRefInputting() )
|
||||
if( ( !m_pRefEdit || !m_pRefEdit->HasFocus()) && !m_btnRef.HasFocus() )
|
||||
{
|
||||
RemoveRefDlg();
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
|
@ -427,7 +676,9 @@ IMPL_LINK( ScTPValidationValue, SelectHdl, ListBox*, EMPTYARG )
|
|||
maFtMax.Show( bShowMax );
|
||||
maEdMax.Show( bShowMax );
|
||||
maFtHint.Show( bRange );
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
m_btnRef.Show( bRange );
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -660,3 +911,114 @@ IMPL_LINK( ScTPValidationError, ClickSearchHdl, PushButton*, EMPTYARG )
|
|||
return( 0L );
|
||||
}
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
bool ScValidationDlg::EnterRefStatus()
|
||||
{
|
||||
ScTabViewShell *pTabViewShell = GetTabViewShell();
|
||||
|
||||
if( !pTabViewShell ) return false;
|
||||
|
||||
USHORT nId = SLOTID;
|
||||
SfxViewFrame* pViewFrm = pTabViewShell->GetViewFrame();
|
||||
SfxChildWindow* pWnd = pViewFrm->GetChildWindow( nId );
|
||||
|
||||
if ( pWnd && pWnd->GetWindow()!= this ) pWnd = NULL;
|
||||
|
||||
SC_MOD()->SetRefDialog( nId, pWnd ? FALSE : TRUE );
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ScValidationDlg::LeaveRefStatus()
|
||||
{
|
||||
ScTabViewShell *pTabViewShell = GetTabViewShell();
|
||||
|
||||
if( !pTabViewShell ) return false;
|
||||
|
||||
USHORT nId = SLOTID;
|
||||
SfxViewFrame* pViewFrm = pTabViewShell->GetViewFrame();
|
||||
//SfxChildWindow* pWnd = pViewFrm->GetChildWindow( nId );
|
||||
if ( pViewFrm->GetChildWindow( nId ) )
|
||||
{
|
||||
DoClose( nId );
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ScValidationDlg::SetupRefDlg()
|
||||
{
|
||||
if ( m_bOwnRefHdlr ) return false;
|
||||
if( EnterRefMode() )
|
||||
{
|
||||
SetModal( FALSE );
|
||||
return /*SetChkShell( GetDocShell() ),*/ m_bOwnRefHdlr = true && EnterRefStatus();
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
bool ScValidationDlg::RemoveRefDlg( BOOL bRestoreModal /* = TRUE */ )
|
||||
{
|
||||
bool bVisLock = false;
|
||||
bool bFreeWindowLock = false;
|
||||
|
||||
ScTabViewShell *pTabVwSh = GetTabViewShell();
|
||||
|
||||
if( !pTabVwSh ) return false;
|
||||
|
||||
if ( SfxChildWindow* pWnd = pTabVwSh->GetViewFrame()->GetChildWindow( SID_VALIDITY_REFERENCE ) )
|
||||
{
|
||||
bVisLock = static_cast<ScValidityRefChildWin*>(pWnd)->LockVisible( true );
|
||||
bFreeWindowLock = static_cast<ScValidityRefChildWin*>(pWnd)->LockFreeWindow( true );
|
||||
}
|
||||
|
||||
if ( !m_bOwnRefHdlr ) return false;
|
||||
if( LeaveRefStatus() && LeaveRefMode() )
|
||||
{
|
||||
m_bOwnRefHdlr = false;
|
||||
|
||||
if( bRestoreModal )
|
||||
SetModal( TRUE );
|
||||
}
|
||||
|
||||
if ( SfxChildWindow* pWnd = pTabVwSh->GetViewFrame()->GetChildWindow( SID_VALIDITY_REFERENCE ) )
|
||||
{
|
||||
static_cast<ScValidityRefChildWin*>(pWnd)->LockVisible( bVisLock );
|
||||
static_cast<ScValidityRefChildWin*>(pWnd)->LockFreeWindow( bFreeWindowLock );
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
//TYPEINIT1( ScTPValidationValue, SfxTabPage )
|
||||
|
||||
void ScTPValidationValue::ScRefButtonEx::Click()
|
||||
{
|
||||
if( ScTPValidationValue *pParent = dynamic_cast< ScTPValidationValue*>( GetParent() ) )
|
||||
pParent->OnClick( this );
|
||||
|
||||
ScRefButton::Click();
|
||||
}
|
||||
|
||||
void ScTPValidationValue::OnClick( Button *pBtn )
|
||||
{
|
||||
if( pBtn == &m_btnRef )
|
||||
SetupRefDlg();
|
||||
}
|
||||
|
||||
BOOL ScValidationDlg::IsChildFocus()
|
||||
{
|
||||
if ( const Window *pWin = Application::GetFocusWindow() )
|
||||
while( NULL != ( pWin = pWin->GetParent() ) )
|
||||
if( pWin == this )
|
||||
return TRUE;
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
bool ScValidationDlg::IsAlive()
|
||||
{
|
||||
return SC_MOD()->IsAliveRefDlg( SLOTID, this );
|
||||
}
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
|
|
@ -65,7 +65,9 @@ TabDialog TAB_DLG_VALIDATION
|
|||
};
|
||||
Text [ en-US ] = "Validity" ;
|
||||
};
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
#define OFFSET_X 30
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
TabPage TP_VALIDATION_VALUES
|
||||
{
|
||||
Hide = TRUE ;
|
||||
|
@ -75,13 +77,19 @@ TabPage TP_VALIDATION_VALUES
|
|||
FixedText FT_ALLOW
|
||||
{
|
||||
Pos = MAP_APPFONT ( 6 , 16 ) ;
|
||||
Size = MAP_APPFONT ( 70 , 8 ) ;
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//Size = MAP_APPFONT ( 70 , 8 ) ;
|
||||
Size = MAP_APPFONT ( 70 - OFFSET_X , 8 ) ;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
Text [ en-US ] = "~Allow" ;
|
||||
};
|
||||
ListBox LB_ALLOW
|
||||
{
|
||||
Border = TRUE ;
|
||||
Pos = MAP_APPFONT ( 80 , 14 ) ;
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//Pos = MAP_APPFONT ( 80 , 14 ) ;
|
||||
Pos = MAP_APPFONT ( 80 - OFFSET_X , 14 ) ;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
Size = MAP_APPFONT ( 90 , 80 ) ;
|
||||
TabStop = TRUE ;
|
||||
DropDown = TRUE ;
|
||||
|
@ -100,13 +108,19 @@ TabPage TP_VALIDATION_VALUES
|
|||
FixedText FT_VALUE
|
||||
{
|
||||
Pos = MAP_APPFONT ( 6 , 58 ) ;
|
||||
Size = MAP_APPFONT ( 70 , 8 ) ;
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//Size = MAP_APPFONT ( 70 , 8 ) ;
|
||||
Size = MAP_APPFONT ( 70 - OFFSET_X , 8 ) ;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
Text [ en-US ] = "~Data" ;
|
||||
};
|
||||
ListBox LB_VALUE
|
||||
{
|
||||
Border = TRUE ;
|
||||
Pos = MAP_APPFONT ( 80 , 56 ) ;
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//Pos = MAP_APPFONT ( 80 , 56 ) ;
|
||||
Pos = MAP_APPFONT ( 80 - OFFSET_X , 56 ) ;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
Size = MAP_APPFONT ( 90 , 90 ) ;
|
||||
TabStop = TRUE ;
|
||||
DropDown = TRUE ;
|
||||
|
@ -126,54 +140,81 @@ TabPage TP_VALIDATION_VALUES
|
|||
FixedText FT_MIN
|
||||
{
|
||||
Pos = MAP_APPFONT ( 6 , 76 ) ;
|
||||
Size = MAP_APPFONT ( 70 , 8 ) ;
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//Size = MAP_APPFONT ( 70 , 8 ) ;
|
||||
Size = MAP_APPFONT ( 70 - OFFSET_X , 8 ) ;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
Text [ en-US ] = "~Minimum" ;
|
||||
};
|
||||
Edit EDT_MIN
|
||||
{
|
||||
Border = TRUE ;
|
||||
Pos = MAP_APPFONT ( 80 , 74 ) ;
|
||||
Size = MAP_APPFONT ( 174 , 12 ) ;
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//Pos = MAP_APPFONT ( 80 , 74 ) ;
|
||||
//Size = MAP_APPFONT ( 174 , 12 ) ;
|
||||
Pos = MAP_APPFONT ( 80 - OFFSET_X , 74 ) ;
|
||||
Size = MAP_APPFONT ( 90 , 12 ) ;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
TabStop = TRUE ;
|
||||
};
|
||||
MultiLineEdit EDT_LIST
|
||||
{
|
||||
Border = TRUE ;
|
||||
Pos = MAP_APPFONT ( 80 , 74 ) ;
|
||||
Size = MAP_APPFONT ( 174 , 105 ) ;
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//Pos = MAP_APPFONT ( 80 , 74 ) ;
|
||||
//Size = MAP_APPFONT ( 174 , 105 ) ;
|
||||
Pos = MAP_APPFONT ( 80 - OFFSET_X , 74 ) ;
|
||||
Size = MAP_APPFONT ( 174 + OFFSET_X , 105 ) ;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
VScroll = TRUE ;
|
||||
IgnoreTab = TRUE ;
|
||||
};
|
||||
FixedText FT_MAX
|
||||
{
|
||||
Pos = MAP_APPFONT ( 6 , 92 ) ;
|
||||
Size = MAP_APPFONT ( 70 , 8 ) ;
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//Size = MAP_APPFONT ( 70 , 8 ) ;
|
||||
Size = MAP_APPFONT ( 70 - OFFSET_X , 8 ) ;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
Text [ en-US ] = "Ma~ximum" ;
|
||||
};
|
||||
Edit EDT_MAX
|
||||
{
|
||||
Border = TRUE ;
|
||||
Pos = MAP_APPFONT ( 80 , 90 ) ;
|
||||
Size = MAP_APPFONT ( 174 , 12 ) ;
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//Pos = MAP_APPFONT ( 80 , 90 ) ;
|
||||
//Size = MAP_APPFONT ( 174 , 12 ) ;
|
||||
Pos = MAP_APPFONT ( 80 - OFFSET_X , 90 ) ;
|
||||
Size = MAP_APPFONT ( 90 , 12 ) ;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
TabStop = TRUE ;
|
||||
};
|
||||
CheckBox TSB_ALLOW_BLANKS
|
||||
{
|
||||
Pos = MAP_APPFONT ( 80 , 30 ) ;
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//Pos = MAP_APPFONT ( 80 , 30 ) ;
|
||||
Pos = MAP_APPFONT ( 80 - OFFSET_X , 30 ) ;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
Size = MAP_APPFONT ( 174 , 10 ) ;
|
||||
TabStop = TRUE ;
|
||||
Text [ en-US ] = "Allow ~blank cells" ;
|
||||
};
|
||||
CheckBox CB_SHOWLIST
|
||||
{
|
||||
Pos = MAP_APPFONT ( 80 , 44 ) ;
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//Pos = MAP_APPFONT ( 80 , 44 ) ;
|
||||
Pos = MAP_APPFONT ( 80 - OFFSET_X , 44 ) ;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
Size = MAP_APPFONT ( 174 , 10 ) ;
|
||||
TabStop = TRUE ;
|
||||
Text [ en-US ] = "Show selection ~list" ;
|
||||
};
|
||||
CheckBox CB_SORTLIST
|
||||
{
|
||||
Pos = MAP_APPFONT ( 90 , 58 ) ;
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//Pos = MAP_APPFONT ( 90 , 58 ) ;
|
||||
Pos = MAP_APPFONT ( 90 - OFFSET_X , 58 ) ;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
Size = MAP_APPFONT ( 164 , 10 ) ;
|
||||
TabStop = TRUE ;
|
||||
Text [ en-US ] = "Sor~t entries ascending" ;
|
||||
|
@ -185,6 +226,15 @@ TabPage TP_VALIDATION_VALUES
|
|||
WordBreak = TRUE ;
|
||||
Text [ en-US ] = "A valid source can only consist of a contiguous selection of rows and columns, or a formula that results in an area or array.";
|
||||
};
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
ImageButton RB_VALIDITY_REF
|
||||
{
|
||||
Pos = MAP_APPFONT ( 142 , 73 ) ;
|
||||
Size = MAP_APPFONT ( 13 , 14 ) ;
|
||||
TabStop = TRUE ;
|
||||
QuickHelpText [ en-US ] = "Shrink" ;
|
||||
};
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
};
|
||||
|
||||
TabPage TP_VALIDATION_INPUTHELP
|
||||
|
|
|
@ -127,7 +127,8 @@
|
|||
#include <rtl/logfile.hxx>
|
||||
|
||||
#include <comphelper/processfactory.hxx>
|
||||
|
||||
#include <basic/sbstar.hxx>
|
||||
#include <basic/basmgr.hxx>
|
||||
using namespace com::sun::star;
|
||||
|
||||
// STATIC DATA -----------------------------------------------------------
|
||||
|
@ -357,6 +358,26 @@ void ScDocShell::AfterXMLLoading(sal_Bool bRet)
|
|||
}
|
||||
else
|
||||
aDocument.SetInsertingFromOtherDoc( FALSE );
|
||||
// add vba globals ( if they are availabl )
|
||||
uno::Any aGlobs;
|
||||
uno::Sequence< uno::Any > aArgs(1);
|
||||
aArgs[ 0 ] <<= GetModel();
|
||||
aGlobs <<= ::comphelper::getProcessServiceFactory()->createInstanceWithArguments( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "ooo.vba.excel.Globals" ) ), aArgs );
|
||||
GetBasicManager()->SetGlobalUNOConstant( "VBAGlobals", aGlobs );
|
||||
// Fake ThisComponent being setup by Activate ( which is a view
|
||||
// related thing ),
|
||||
// a) if another document is opened then in theory ThisComponent
|
||||
// will be reset as before,
|
||||
// b) when this document is 'really' Activated then ThisComponent
|
||||
// again will be set as before
|
||||
// The only wrinkle seems if this document is loaded 'InVisible'
|
||||
// but.. I don't see that this is possible from the vba API
|
||||
// I could be wrong though
|
||||
// There may be implications setting the current component
|
||||
// too early :-/ so I will just manually set the Basic Variables
|
||||
BasicManager* pAppMgr = SFX_APP()->GetBasicManager();
|
||||
if ( pAppMgr )
|
||||
pAppMgr->SetGlobalUNOConstant( "ThisExcelDoc", aArgs[ 0 ] );
|
||||
|
||||
aDocument.SetImportingXML( FALSE );
|
||||
aDocument.EnableExecuteLink( true );
|
||||
|
@ -2558,3 +2579,16 @@ void ScDocShellModificator::SetDocumentModified()
|
|||
pDoc->BroadcastUno( SfxSimpleHint( SFX_HINT_DATACHANGED ) );
|
||||
}
|
||||
}
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
sal_Bool ScDocShell::AcceptStateUpdate() const
|
||||
{
|
||||
if( SfxObjectShell::AcceptStateUpdate() )
|
||||
return sal_True;
|
||||
|
||||
if( SC_MOD()->Find1RefWindow( SFX_APP()->GetTopWindow() ) )
|
||||
return sal_True;
|
||||
|
||||
return sal_False;
|
||||
}
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
|
|
@ -53,7 +53,10 @@
|
|||
#include <svx/unolingu.hxx>
|
||||
#include <rtl/logfile.hxx>
|
||||
|
||||
|
||||
#include <comphelper/processfactory.hxx>
|
||||
#include <basic/sbstar.hxx>
|
||||
#include <basic/basmgr.hxx>
|
||||
#include <sfx2/app.hxx>
|
||||
|
||||
// INCLUDE ---------------------------------------------------------------
|
||||
/*
|
||||
|
@ -102,6 +105,25 @@ BOOL __EXPORT ScDocShell::InitNew( const uno::Reference < embed::XStorage >& xSt
|
|||
|
||||
InitItems();
|
||||
CalcOutputFactor();
|
||||
uno::Any aGlobs;
|
||||
uno::Sequence< uno::Any > aArgs(1);
|
||||
aArgs[ 0 ] <<= GetModel();
|
||||
aGlobs <<= ::comphelper::getProcessServiceFactory()->createInstanceWithArguments( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "ooo.vba.excel.Globals" ) ), aArgs );
|
||||
GetBasicManager()->SetGlobalUNOConstant( "VBAGlobals", aGlobs );
|
||||
// Fake ThisComponent being setup by Activate ( which is a view
|
||||
// related thing ),
|
||||
// a) if another document is opened then in theory ThisComponent
|
||||
// will be reset as before,
|
||||
// b) when this document is 'really' Activated then ThisComponent
|
||||
// again will be set as before
|
||||
// The only wrinkle seems if this document is loaded 'InVisible'
|
||||
// but.. I don't see that this is possible from the vba API
|
||||
// I could be wrong though
|
||||
// There may be implications setting the current component
|
||||
// too early :-/ so I will just manually set the Basic Variables
|
||||
BasicManager* pAppMgr = SFX_APP()->GetBasicManager();
|
||||
if ( pAppMgr )
|
||||
pAppMgr->SetGlobalUNOConstant( "ThisExcelDoc", aArgs[ 0 ] );
|
||||
|
||||
return bRet;
|
||||
}
|
||||
|
|
|
@ -42,19 +42,28 @@
|
|||
#endif
|
||||
#include <sfx2/basedlgs.hxx>
|
||||
#include "address.hxx"
|
||||
#include "cell.hxx"
|
||||
#include "compiler.hxx"
|
||||
#include "formula/funcutl.hxx"
|
||||
#include "IAnyRefDialog.hxx"
|
||||
#include "scresid.hxx"
|
||||
#include <memory>
|
||||
|
||||
class SfxObjectShell;
|
||||
class ScRange;
|
||||
class ScDocument;
|
||||
class ScTabViewShell;
|
||||
class ScAnyRefDlg;
|
||||
class ScFormulaCell;
|
||||
class ScCompiler;
|
||||
//The class of ScAnyRefDlg is rewritten by PengYunQuan for Validity Cell Range Picker
|
||||
//class ScAnyRefDlg;
|
||||
class ScRefHandler;
|
||||
class ScRangeList;
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
class SfxShell;
|
||||
#include "scmod.hxx"
|
||||
|
||||
typedef formula::RefButton ScRefButton;
|
||||
typedef formula::RefEdit ScRefEdit;
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
class ScFormulaReferenceHelper
|
||||
{
|
||||
IAnyRefDialog* m_pDlg;
|
||||
|
@ -104,12 +113,28 @@ public:
|
|||
void ViewShellChanged( ScTabViewShell* pScViewShell );
|
||||
|
||||
static void enableInput(BOOL _bInput);
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
protected:
|
||||
Window * GetWindow(){ return m_pWindow; }
|
||||
public:
|
||||
bool CanInputStart( const ScRefEdit *pEdit ){ return !!pEdit; }
|
||||
bool CanInputDone( BOOL bForced ){ return pRefEdit && (bForced || !pRefBtn); }
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
};
|
||||
//============================================================================
|
||||
|
||||
class ScAnyRefDlg : public SfxModelessDialog,
|
||||
//The class of ScAnyRefDlg is rewritten by PengYunQuan for Validity Cell Range Picker
|
||||
class SC_DLLPUBLIC ScRefHandler : //public SfxModelessDialog,
|
||||
public IAnyRefDialog
|
||||
{
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
Window & m_rWindow;
|
||||
bool m_bInRefMode;
|
||||
public:
|
||||
operator Window *(){ return &m_rWindow; }
|
||||
Window * operator ->() { return static_cast<Window *>(*this); }
|
||||
template<class,bool> friend class ScRefHdlrImplBase;
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
friend class formula::RefButton;
|
||||
friend class formula::RefEdit;
|
||||
|
||||
|
@ -130,7 +155,8 @@ protected:
|
|||
|
||||
void SetDispatcherLock( BOOL bLock );
|
||||
|
||||
virtual long PreNotify( NotifyEvent& rNEvt );
|
||||
//Overwrite TWindow will implemented by ScRefHdlrImplBase
|
||||
//virtual long PreNotify( NotifyEvent& rNEvt );
|
||||
|
||||
virtual void RefInputStart( formula::RefEdit* pEdit, formula::RefButton* pButton = NULL );
|
||||
virtual void RefInputDone( BOOL bForced = FALSE );
|
||||
|
@ -140,9 +166,9 @@ protected:
|
|||
bool ParseWithNames( ScRangeList& rRanges, const String& rStr, ScDocument* pDoc );
|
||||
|
||||
public:
|
||||
ScAnyRefDlg( SfxBindings* pB, SfxChildWindow* pCW,
|
||||
Window* pParent, USHORT nResId);
|
||||
virtual ~ScAnyRefDlg();
|
||||
ScRefHandler( Window &rWindow, SfxBindings* pB/*, SfxChildWindow* pCW,
|
||||
Window* pParent, USHORT nResId*/, bool bBindRef );
|
||||
virtual ~ScRefHandler();
|
||||
|
||||
virtual void SetReference( const ScRange& rRef, ScDocument* pDoc ) = 0;
|
||||
virtual void AddRefEntry();
|
||||
|
@ -159,15 +185,100 @@ public:
|
|||
|
||||
virtual void ViewShellChanged( ScTabViewShell* pScViewShell );
|
||||
void SwitchToDocument();
|
||||
SfxBindings& GetBindings();
|
||||
//SfxBindings& GetBindings();
|
||||
|
||||
virtual void SetActive() = 0;
|
||||
// virtual BOOL Close();
|
||||
virtual void StateChanged( StateChangedType nStateChange );
|
||||
//Overwrite TWindow will implemented by ScRefHdlrImplBase
|
||||
//virtual void StateChanged( StateChangedType nStateChange );
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
public:
|
||||
bool EnterRefMode();
|
||||
bool LeaveRefMode();
|
||||
inline bool CanInputStart( const ScRefEdit *pEdit );
|
||||
inline bool CanInputDone( BOOL bForced );
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
};
|
||||
|
||||
|
||||
//============================================================================
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
template< class TWindow, bool bBindRef = true >
|
||||
class ScRefHdlrImplBase:public TWindow, public ScRefHandler
|
||||
{
|
||||
public:
|
||||
//Overwrite TWindow
|
||||
virtual long PreNotify( NotifyEvent& rNEvt );
|
||||
virtual void StateChanged( StateChangedType nStateChange );
|
||||
|
||||
private:
|
||||
template<class TBindings, class TChildWindow, class TParentWindow, class TResId>
|
||||
ScRefHdlrImplBase( TBindings* pB, TChildWindow* pCW,
|
||||
TParentWindow* pParent, TResId nResId);
|
||||
|
||||
template<class TParentWindow, class TResId, class TArg>
|
||||
ScRefHdlrImplBase( TParentWindow* pParent, TResId nResId, const TArg &rArg, SfxBindings *pB = NULL );
|
||||
|
||||
~ScRefHdlrImplBase();
|
||||
|
||||
template<class, class, bool> friend struct ScRefHdlrImpl;
|
||||
};
|
||||
|
||||
template<class TWindow, bool bBindRef>
|
||||
template<class TBindings, class TChildWindow, class TParentWindow, class TResId>
|
||||
ScRefHdlrImplBase<TWindow, bBindRef>::ScRefHdlrImplBase( TBindings* pB, TChildWindow* pCW,
|
||||
TParentWindow* pParent, TResId nResId):TWindow(pB, pCW, pParent, ScResId(static_cast<USHORT>( nResId ) ) ), ScRefHandler( *static_cast<TWindow*>(this), pB, bBindRef ){}
|
||||
|
||||
template<class TWindow, bool bBindRef >
|
||||
template<class TParentWindow, class TResId, class TArg>
|
||||
ScRefHdlrImplBase<TWindow,bBindRef>::ScRefHdlrImplBase( TParentWindow* pParent, TResId nResIdP, const TArg &rArg, SfxBindings *pB /*= NULL*/ )
|
||||
:TWindow( pParent, ScResId(static_cast<USHORT>( nResIdP )), rArg ), ScRefHandler( *static_cast<TWindow*>(this), pB, bBindRef ){}
|
||||
|
||||
template<class TWindow, bool bBindRef >
|
||||
ScRefHdlrImplBase<TWindow,bBindRef>::~ScRefHdlrImplBase(){}
|
||||
|
||||
//============================================================================
|
||||
template<class TDerived, class TBase, bool bBindRef = true>
|
||||
struct ScRefHdlrImpl: ScRefHdlrImplBase<TBase, bBindRef >
|
||||
{
|
||||
enum { UNKNOWN_SLOTID = 0U, SLOTID = UNKNOWN_SLOTID };
|
||||
|
||||
template<class T1, class T2, class T3, class T4>
|
||||
ScRefHdlrImpl( const T1 & rt1, const T2 & rt2, const T3 & rt3, const T4 & rt4 ):ScRefHdlrImplBase<TBase, bBindRef >(rt1, rt2, rt3, rt4 )
|
||||
{
|
||||
SC_MOD()->RegisterRefWindow( static_cast<USHORT>( static_cast<TDerived*>(this)->SLOTID ), this );
|
||||
}
|
||||
|
||||
~ScRefHdlrImpl()
|
||||
{
|
||||
SC_MOD()->UnregisterRefWindow( static_cast<USHORT>( static_cast<TDerived*>(this)->SLOTID ), this );
|
||||
}
|
||||
};
|
||||
//============================================================================
|
||||
struct ScAnyRefDlg : ::ScRefHdlrImpl< ScAnyRefDlg, SfxModelessDialog>
|
||||
{
|
||||
template<class T1, class T2, class T3, class T4>
|
||||
ScAnyRefDlg( const T1 & rt1, const T2 & rt2, const T3 & rt3, const T4 & rt4 ):ScRefHdlrImpl< ScAnyRefDlg, SfxModelessDialog>(rt1, rt2, rt3, rt4){}
|
||||
};
|
||||
//============================================================================
|
||||
|
||||
inline bool ScRefHandler::CanInputStart( const ScRefEdit *pEdit )
|
||||
{
|
||||
return m_aHelper.CanInputStart( pEdit );
|
||||
}
|
||||
|
||||
inline bool ScRefHandler::CanInputDone( BOOL bForced )
|
||||
{
|
||||
return m_aHelper.CanInputDone( bForced );
|
||||
}
|
||||
|
||||
template <> SC_DLLPUBLIC void ScRefHdlrImplBase<SfxModelessDialog,true>::StateChanged( StateChangedType nStateChange );
|
||||
template <> SC_DLLPUBLIC long ScRefHdlrImplBase<SfxModelessDialog,true>::PreNotify( NotifyEvent& rNEvt );
|
||||
#include <sfx2/tabdlg.hxx>
|
||||
template <> SC_DLLPUBLIC void ScRefHdlrImplBase<SfxTabDialog,false>::StateChanged( StateChangedType nStateChange );
|
||||
template <> SC_DLLPUBLIC long ScRefHdlrImplBase<SfxTabDialog,false>::PreNotify( NotifyEvent& rNEvt );
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
#endif // SC_ANYREFDG_HXX
|
||||
|
||||
|
|
|
@ -418,7 +418,9 @@ public:
|
|||
|
||||
const ScOptSolverSave* GetSolverSaveData() const { return pSolverSaveData; } // may be null
|
||||
void SetSolverSaveData( const ScOptSolverSave& rData );
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
sal_Bool AcceptStateUpdate() const;
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
ScSheetSaveData* GetSheetSaveData();
|
||||
};
|
||||
|
||||
|
|
|
@ -31,15 +31,11 @@
|
|||
#ifndef SC_INPUTWIN_HXX
|
||||
#define SC_INPUTWIN_HXX
|
||||
|
||||
|
||||
#ifndef _TOOLBOX_HXX //autogen
|
||||
#include <vector>
|
||||
#include <vcl/toolbox.hxx>
|
||||
#endif
|
||||
#include <sfx2/childwin.hxx>
|
||||
#include <svl/lstner.hxx>
|
||||
#ifndef _COMBOBOX_HXX //autogen
|
||||
#include <vcl/combobox.hxx>
|
||||
#endif
|
||||
#include <vcl/window.hxx>
|
||||
#include <svtools/transfer.hxx>
|
||||
|
||||
|
@ -77,7 +73,8 @@ public:
|
|||
|
||||
virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > CreateAccessible();
|
||||
|
||||
void SetAccessibleTextData(ScAccessibleEditLineTextData* pTextData) {pAccTextData = pTextData;}
|
||||
void InsertAccessibleTextData( ScAccessibleEditLineTextData& rTextData );
|
||||
void RemoveAccessibleTextData( ScAccessibleEditLineTextData& rTextData );
|
||||
|
||||
DECL_LINK( NotifyHdl, EENotify* );
|
||||
|
||||
|
@ -102,11 +99,13 @@ private:
|
|||
void UpdateAutoCorrFlag();
|
||||
|
||||
private:
|
||||
typedef ::std::vector< ScAccessibleEditLineTextData* > AccTextDataVector;
|
||||
|
||||
String aString;
|
||||
Font aTextFont;
|
||||
ScEditEngineDefaulter* pEditEngine; // erst bei Bedarf angelegt
|
||||
EditView* pEditView;
|
||||
ScAccessibleEditLineTextData* pAccTextData;
|
||||
AccTextDataVector maAccTextDatas; // #i105267# text datas may be cloned, remember all copies
|
||||
BOOL bIsRTL;
|
||||
BOOL bIsInsertMode;
|
||||
BOOL bFormulaMode;
|
||||
|
|
|
@ -102,6 +102,22 @@ class ScSimpleRefDlgWrapper: public SfxChildWindow
|
|||
void StartRefInput();
|
||||
};
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
class SC_DLLPUBLIC ScValidityRefChildWin : public SfxChildWindow
|
||||
{
|
||||
bool m_bVisibleLock:1;
|
||||
bool m_bFreeWindowLock:1;
|
||||
Window * m_pSavedWndParent;
|
||||
public:
|
||||
ScValidityRefChildWin( Window*, USHORT, SfxBindings*, SfxChildWinInfo* );
|
||||
SFX_DECL_CHILDWINDOW(ScValidityRefChildWin);
|
||||
~ScValidityRefChildWin();
|
||||
bool LockVisible( bool bLock ){ bool bVis = m_bVisibleLock; m_bVisibleLock = bLock; return bVis; }
|
||||
bool LockFreeWindow( bool bLock ){ bool bFreeWindow = m_bFreeWindowLock; m_bFreeWindowLock = bLock; return bFreeWindow; }
|
||||
void Hide(){ if( !m_bVisibleLock) SfxChildWindow::Hide(); }
|
||||
void Show( USHORT nFlags ){ if( !m_bVisibleLock ) SfxChildWindow::Show( nFlags ); }
|
||||
};
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
||||
//==================================================================
|
||||
|
||||
|
|
|
@ -292,7 +292,7 @@ public:
|
|||
|
||||
void TabChanged();
|
||||
void SetZoom( const Fraction& rNewX, const Fraction& rNewY, BOOL bAll );
|
||||
void RefreshZoom();
|
||||
SC_DLLPUBLIC void RefreshZoom();
|
||||
void SetPagebreakMode( BOOL bSet );
|
||||
|
||||
void UpdateLayerLocks();
|
||||
|
@ -390,7 +390,10 @@ public:
|
|||
|
||||
void SetNewStartIfMarking();
|
||||
|
||||
void SetTabNo( SCTAB nTab, BOOL bNew = FALSE, BOOL bExtendSelection = FALSE );
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
//void SetTabNo( SCTAB nTab, BOOL bNew = FALSE, BOOL bExtendSelection = FALSE );
|
||||
SC_DLLPUBLIC void SetTabNo( SCTAB nTab, BOOL bNew = FALSE, BOOL bExtendSelection = FALSE );
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
void SelectNextTab( short nDir, BOOL bExtendSelection = FALSE );
|
||||
|
||||
void ActivateView( BOOL bActivate, BOOL bFirst );
|
||||
|
|
|
@ -61,6 +61,9 @@
|
|||
#define CB_SORTLIST 28
|
||||
#define EDT_LIST 29
|
||||
#define FT_SOURCEHINT 30
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
#define RB_VALIDITY_REF 88
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
||||
/* Position indexes for "Allow" list box.
|
||||
They do not map directly to ScValidationMode and can safely be modified to
|
||||
|
|
|
@ -36,23 +36,164 @@
|
|||
#include <vcl/fixed.hxx>
|
||||
#include <vcl/lstbox.hxx>
|
||||
#include <svtools/svmedit.hxx>
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
#include "anyrefdg.hxx"
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
||||
// ============================================================================
|
||||
|
||||
/** The "Validity" tab dialog. */
|
||||
class ScValidationDlg : public SfxTabDialog
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
struct ScRefHandlerCaller{
|
||||
virtual ~ScRefHandlerCaller(){}
|
||||
};
|
||||
class ScRefHandlerHelper
|
||||
{
|
||||
protected:
|
||||
ScRefHandlerCaller *m_pHandler;
|
||||
void (ScRefHandlerCaller::*m_pSetReferenceHdl)( const ScRange& , ScDocument* );
|
||||
void (ScRefHandlerCaller::*m_pSetActiveHdl)();
|
||||
void (ScRefHandlerCaller::*m_pRefInputStartPreHdl)( ScRefEdit* pEdit, ScRefButton* pButton );
|
||||
void (ScRefHandlerCaller::*m_pRefInputStartPostHdl)( ScRefEdit* pEdit, ScRefButton* pButton );
|
||||
void (ScRefHandlerCaller::*m_pRefInputDonePreHdl)();
|
||||
void (ScRefHandlerCaller::*m_pRefInputDonePostHdl)();
|
||||
|
||||
public:
|
||||
explicit ScValidationDlg( Window* pParent, const SfxItemSet* pArgSet );
|
||||
typedef void (ScRefHandlerCaller::*PFUNCSETREFHDLTYPE)( const ScRange& , ScDocument* );
|
||||
typedef void (ScRefHandlerCaller::*PCOMMONHDLTYPE)();
|
||||
typedef void (ScRefHandlerCaller::*PINPUTSTARTDLTYPE)( ScRefEdit* pEdit, ScRefButton* pButton );
|
||||
|
||||
PFUNCSETREFHDLTYPE SetSetRefHdl( PFUNCSETREFHDLTYPE pNewHdl )
|
||||
{
|
||||
PFUNCSETREFHDLTYPE pOldHdl = m_pSetReferenceHdl;
|
||||
m_pSetReferenceHdl = pNewHdl;
|
||||
return pOldHdl;
|
||||
}
|
||||
|
||||
PCOMMONHDLTYPE SetSetActHdl( PCOMMONHDLTYPE pNewHdl )
|
||||
{
|
||||
PCOMMONHDLTYPE pOldHdl = m_pSetActiveHdl;
|
||||
m_pSetActiveHdl = pNewHdl;
|
||||
return pOldHdl;
|
||||
}
|
||||
|
||||
ScRefHandlerCaller *SetHandler( ScRefHandlerCaller *pNewHandler )
|
||||
{
|
||||
ScRefHandlerCaller *pOldHandler = m_pHandler;
|
||||
m_pHandler = pNewHandler;
|
||||
return pOldHandler;
|
||||
}
|
||||
void SetRefInputStartPreHdl( PINPUTSTARTDLTYPE pNewHdl ){ m_pRefInputStartPreHdl = pNewHdl; }
|
||||
void SetRefInputDonePostHdl( void (ScRefHandlerCaller::*pNewHdl)() ){ m_pRefInputDonePostHdl = pNewHdl; }
|
||||
void SetRefInputStartPostHdl( PINPUTSTARTDLTYPE pNewHdl ){ m_pRefInputStartPostHdl = pNewHdl; }
|
||||
void SetRefInputDonePreHdl( void (ScRefHandlerCaller::*pNewHdl)() ){ m_pRefInputDonePreHdl = pNewHdl; }
|
||||
|
||||
ScRefHandlerHelper():m_pHandler(NULL), m_pSetReferenceHdl( NULL ), m_pSetActiveHdl(NULL), m_pRefInputStartPreHdl( NULL ), m_pRefInputStartPostHdl( NULL ), m_pRefInputDonePreHdl( NULL ), m_pRefInputDonePostHdl( NULL ){}
|
||||
};
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
|
||||
/** The "Validity" tab dialog. */
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//class ScValidationDlg : public SfxTabDialog
|
||||
class ScValidationDlg :public ScRefHdlrImpl<ScValidationDlg, SfxTabDialog, false>, public ScRefHandlerHelper
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
{
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
typedef ScRefHdlrImpl<ScValidationDlg, SfxTabDialog, false> ScValidationDlgBase;
|
||||
|
||||
//Start_Moddify by liliang 03/26/2008 SODC_13677_2
|
||||
DECL_LINK( OkHdl, Button * );
|
||||
//End_Moddify by liliang 03/26/2008 SODC_13677_2
|
||||
bool m_bOwnRefHdlr:1;
|
||||
|
||||
ScTabViewShell *m_pTabVwSh;
|
||||
bool m_bRefInputting:1;
|
||||
bool EnterRefStatus();
|
||||
bool LeaveRefStatus();
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
public:
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//explicit ScValidationDlg( Window* pParent, const SfxItemSet* pArgSet );
|
||||
explicit ScValidationDlg( Window* pParent, const SfxItemSet* pArgSet, ScTabViewShell * pTabViewSh, SfxBindings *pB = NULL );
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
virtual ~ScValidationDlg();
|
||||
inline static ScValidationDlg * Find1AliveObject( Window *pAncestor );
|
||||
bool IsAlive();
|
||||
inline ScTabViewShell * GetTabViewShell();
|
||||
|
||||
bool SetupRefDlg();
|
||||
bool RemoveRefDlg( BOOL bRestoreModal = TRUE );
|
||||
|
||||
virtual void SetModal( BOOL bModal ){ ScValidationDlgBase::SetModalInputMode( bModal ); }
|
||||
|
||||
virtual void SetReference( const ScRange& rRef, ScDocument* pDoc )
|
||||
{
|
||||
if ( m_pHandler && m_pSetReferenceHdl )
|
||||
(m_pHandler->*m_pSetReferenceHdl)( rRef, pDoc );
|
||||
}
|
||||
|
||||
virtual void SetActive()
|
||||
{
|
||||
if ( m_pHandler && m_pSetActiveHdl )
|
||||
(m_pHandler->*m_pSetActiveHdl)();
|
||||
}
|
||||
|
||||
void CloseRefDialog()
|
||||
{
|
||||
DBG_ASSERT( false, "should not execute here!!!when the edit kill focus, should remove refhandler.\r\n" );
|
||||
|
||||
if ( IsInExecute() )
|
||||
EndDialog( FALSE );
|
||||
else if ( GetStyle() & WB_CLOSEABLE )
|
||||
Close();
|
||||
}
|
||||
|
||||
bool IsRefInputting(){ return m_bRefInputting; }
|
||||
|
||||
virtual void RefInputStart( ScRefEdit* pEdit, ScRefButton* pButton = NULL )
|
||||
{
|
||||
if( !CanInputStart( pEdit ) )
|
||||
return;
|
||||
|
||||
if ( m_pHandler && m_pRefInputStartPreHdl )
|
||||
(m_pHandler->*m_pRefInputStartPreHdl)( pEdit, pButton );
|
||||
m_bRefInputting = true;
|
||||
ScValidationDlgBase::RefInputStart( pEdit, pButton );
|
||||
if ( m_pHandler && m_pRefInputStartPostHdl )
|
||||
(m_pHandler->*m_pRefInputStartPostHdl)( pEdit, pButton );
|
||||
}
|
||||
|
||||
virtual void RefInputDone( BOOL bForced = FALSE )
|
||||
{
|
||||
if( !CanInputDone( bForced ) )
|
||||
return;
|
||||
|
||||
if ( m_pHandler && m_pRefInputDonePreHdl )
|
||||
(m_pHandler->*m_pRefInputDonePreHdl)();
|
||||
|
||||
ScValidationDlgBase::RefInputDone( bForced );
|
||||
m_bRefInputting = false;
|
||||
|
||||
if ( m_pHandler && m_pRefInputDonePostHdl )
|
||||
(m_pHandler->*m_pRefInputDonePostHdl)();
|
||||
}
|
||||
|
||||
BOOL IsChildFocus();
|
||||
|
||||
enum { SLOTID = SID_VALIDITY_REFERENCE };
|
||||
|
||||
BOOL Close();
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
};
|
||||
|
||||
|
||||
// ============================================================================
|
||||
|
||||
/** The tab page "Criteria" from the Validation dialog. */
|
||||
class ScTPValidationValue : public SfxTabPage
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//class ScTPValidationValue : public SfxTabPage
|
||||
class ScTPValidationValue : public ScRefHandlerCaller, public SfxTabPage
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
{
|
||||
public:
|
||||
explicit ScTPValidationValue( Window* pParent, const SfxItemSet& rArgSet );
|
||||
|
@ -84,10 +225,16 @@ private:
|
|||
FixedText maFtValue;
|
||||
ListBox maLbValue;
|
||||
FixedText maFtMin;
|
||||
Edit maEdMin;
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//Edit maEdMin;
|
||||
ScRefEdit maEdMin;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
MultiLineEdit maEdList; /// Entries for explicit list
|
||||
FixedText maFtMax;
|
||||
Edit maEdMax;
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//Edit maEdMax;
|
||||
ScRefEdit maEdMax;
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
FixedText maFtHint; /// Hint text for cell range validity.
|
||||
|
||||
String maStrMin;
|
||||
|
@ -96,6 +243,33 @@ private:
|
|||
String maStrRange;
|
||||
String maStrList;
|
||||
sal_Unicode mcFmlaSep; /// List separator in formulas.
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
DECL_LINK( EditSetFocusHdl, Edit *);
|
||||
DECL_LINK( KillFocusHdl, Window *);
|
||||
void OnClick( Button *pBtn );
|
||||
ScRefEdit *m_pRefEdit;
|
||||
class ScRefButtonEx:public ::ScRefButton
|
||||
{
|
||||
void Click();
|
||||
public:
|
||||
ScRefButtonEx( Window* pParent, const ResId& rResId, ScRefEdit* pEdit = NULL, ScRefHandler *pRefHdlr = NULL ): ::ScRefButton( pParent, rResId, pEdit, pRefHdlr ){}
|
||||
}m_btnRef;
|
||||
friend class ScRefButtonEx;
|
||||
void SetReferenceHdl( const ScRange& , ScDocument* );
|
||||
void SetActiveHdl();
|
||||
void RefInputStartPreHdl( ScRefEdit* pEdit, ScRefButton* pButton );
|
||||
void RefInputDonePreHdl();
|
||||
void RefInputDonePostHdl();
|
||||
ScValidationDlg * GetValidationDlg();
|
||||
|
||||
//TYPEINFO();
|
||||
void TidyListBoxes();
|
||||
public:
|
||||
USHORT GetAllowEntryPos();
|
||||
String GetMinText();
|
||||
void SetupRefDlg();
|
||||
void RemoveRefDlg();
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
};
|
||||
|
||||
|
||||
|
@ -161,6 +335,16 @@ public:
|
|||
virtual void Reset ( const SfxItemSet& rArgSet );
|
||||
};
|
||||
|
||||
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
||||
inline ScTabViewShell *ScValidationDlg::GetTabViewShell()
|
||||
{
|
||||
return m_pTabVwSh;
|
||||
}
|
||||
|
||||
inline ScValidationDlg * ScValidationDlg::Find1AliveObject( Window *pAncestor )
|
||||
{
|
||||
return static_cast<ScValidationDlg *>( SC_MOD()->Find1RefWindow( SLOTID, pAncestor ) );
|
||||
}
|
||||
//-->Added by PengYunQuan for Validity Cell Range Picker
|
||||
#endif // SC_VALIDATE_HXX
|
||||
|
||||
|
|
|
@ -225,6 +225,7 @@ private:
|
|||
|
||||
SC_DLLPRIVATE void CalcPPT();
|
||||
SC_DLLPRIVATE void CreateTabData( SCTAB nNewTab );
|
||||
SC_DLLPRIVATE void CreateTabData( std::vector< SCTAB >& rvTabs );
|
||||
SC_DLLPRIVATE void CreateSelectedTabData();
|
||||
|
||||
public:
|
||||
|
@ -311,6 +312,8 @@ public:
|
|||
void SetPagebreakMode( BOOL bSet );
|
||||
|
||||
void SetZoomType( SvxZoomType eNew, BOOL bAll );
|
||||
void SetZoomType( SvxZoomType eNew, std::vector< SCTAB >& tabs );
|
||||
void SetZoom( const Fraction& rNewX, const Fraction& rNewY, std::vector< SCTAB >& tabs );
|
||||
void SetZoom( const Fraction& rNewX, const Fraction& rNewY, BOOL bAll );
|
||||
void RefreshZoom();
|
||||
|
||||
|
|
|
@ -377,7 +377,10 @@ IMPL_LINK( ScFormulaReferenceHelper, AccelSelectHdl, Accelerator *, pSelAccel )
|
|||
//----------------------------------------------------------------------------
|
||||
void ScFormulaReferenceHelper::RefInputDone( BOOL bForced )
|
||||
{
|
||||
if (pRefEdit && (bForced || !pRefBtn))
|
||||
//<!--Modified by PengYunQuan for Validity Cell Range Picker
|
||||
//if (pRefEdit && (bForced || !pRefBtn))
|
||||
if ( CanInputDone( bForced ) )//if (pRefEdit && (bForced || !pRefBtn))
|
||||
//-->Modified by PengYunQuan for Validity Cell Range Picker
|
||||
{
|
||||
if (bAccInserted) // Accelerator wieder abschalten
|
||||
{
|
||||
|
@ -677,23 +680,33 @@ void lcl_HideAllReferences()
|
|||
}
|
||||
|
||||
//============================================================================
|
||||
// class ScAnyRefDlg
|
||||
//The class of ScAnyRefDlg is rewritten by PengYunQuan for Validity Cell Range Picker
|
||||
// class ScRefHandler
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
ScAnyRefDlg::ScAnyRefDlg( SfxBindings* pB, SfxChildWindow* pCW,
|
||||
Window* pParent, USHORT nResId)
|
||||
: SfxModelessDialog ( pB, pCW, pParent, ScResId( nResId ) ),
|
||||
ScRefHandler::ScRefHandler( Window &rWindow, SfxBindings* pB/*, SfxChildWindow* pCW,
|
||||
Window* pParent, USHORT nResId*/, bool bBindRef )
|
||||
: //SfxModelessDialog ( pB, pCW, pParent, ScResId( nResId ) ),
|
||||
m_rWindow( rWindow ),
|
||||
m_bInRefMode( false ),
|
||||
m_aHelper(this,pB),
|
||||
pMyBindings( pB ),
|
||||
pActiveWin(NULL)
|
||||
{
|
||||
m_aHelper.SetWindow(this);
|
||||
if(GetHelpId()==0) //Hack, da im SfxModelessDialog die HelpId
|
||||
SetHelpId(GetUniqueId()); //fuer einen ModelessDialog entfernt und
|
||||
m_aHelper.SetWindow(/*this*/&m_rWindow);
|
||||
if(m_rWindow.GetHelpId()==0) //Hack, da im SfxModelessDialog die HelpId
|
||||
m_rWindow.SetHelpId(m_rWindow.GetUniqueId()); //fuer einen ModelessDialog entfernt und
|
||||
//in eine UniqueId gewandelt wird, machen
|
||||
//wir das an dieser Stelle rueckgaengig.
|
||||
aTimer.SetTimeout(200);
|
||||
aTimer.SetTimeoutHdl(LINK( this, ScAnyRefDlg, UpdateFocusHdl));
|
||||
aTimer.SetTimeoutHdl(LINK( this, ScRefHandler, UpdateFocusHdl));
|
||||
|
||||
if( bBindRef ) EnterRefMode();
|
||||
}
|
||||
|
||||
bool ScRefHandler::EnterRefMode()
|
||||
{
|
||||
if( m_bInRefMode ) return false;
|
||||
|
||||
SC_MOD()->InputEnterHandler();
|
||||
// ScTabViewShell* pScViewShell = ScTabViewShell::GetActiveViewShell();
|
||||
|
@ -740,15 +753,25 @@ ScAnyRefDlg::ScAnyRefDlg( SfxBindings* pB, SfxChildWindow* pCW,
|
|||
m_aHelper.SetDispatcherLock( TRUE );
|
||||
//@Test
|
||||
//SFX_APPWINDOW->Disable(TRUE); //@BugID 54702
|
||||
|
||||
return m_bInRefMode = true;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
ScAnyRefDlg::~ScAnyRefDlg()
|
||||
ScRefHandler::~ScRefHandler()
|
||||
{
|
||||
LeaveRefMode();
|
||||
}
|
||||
|
||||
bool ScRefHandler::LeaveRefMode()
|
||||
{
|
||||
if( !m_bInRefMode ) return false;
|
||||
|
||||
lcl_HideAllReferences();
|
||||
|
||||
SetModalInputMode(FALSE);
|
||||
if( Dialog *pDlg = dynamic_cast<Dialog*>( static_cast<Window*>(*this) ) )
|
||||
pDlg->SetModalInputMode(FALSE);
|
||||
SetDispatcherLock( FALSE ); //! here and in DoClose ?
|
||||
|
||||
ScTabViewShell* pScViewShell = ScTabViewShell::GetActiveViewShell();
|
||||
|
@ -757,20 +780,23 @@ ScAnyRefDlg::~ScAnyRefDlg()
|
|||
|
||||
//SFX_APPWINDOW->Enable(TRUE,TRUE);
|
||||
lcl_InvalidateWindows();
|
||||
|
||||
m_bInRefMode = false;
|
||||
return true;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
SfxBindings& ScAnyRefDlg::GetBindings()
|
||||
{
|
||||
//! SfxModelessDialog should allow access to pBindings pointer
|
||||
|
||||
return *pMyBindings;
|
||||
}
|
||||
//SfxBindings& ScRefHandler::GetBindings()
|
||||
//{
|
||||
// //! SfxModelessDialog should allow access to pBindings pointer
|
||||
//
|
||||
// return *pMyBindings;
|
||||
//}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
void ScAnyRefDlg::SwitchToDocument()
|
||||
void ScRefHandler::SwitchToDocument()
|
||||
{
|
||||
ScTabViewShell* pCurrent = ScTabViewShell::GetActiveViewShell();
|
||||
if (pCurrent)
|
||||
|
@ -800,7 +826,7 @@ void ScAnyRefDlg::SwitchToDocument()
|
|||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
BOOL ScAnyRefDlg::IsDocAllowed(SfxObjectShell* pDocSh) const // pDocSh may be 0
|
||||
BOOL ScRefHandler::IsDocAllowed(SfxObjectShell* pDocSh) const // pDocSh may be 0
|
||||
{
|
||||
// default: allow only same document (overridden in function dialog)
|
||||
String aCmpName;
|
||||
|
@ -813,41 +839,41 @@ BOOL ScAnyRefDlg::IsDocAllowed(SfxObjectShell* pDocSh) const // pDocSh may be
|
|||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
BOOL __EXPORT ScAnyRefDlg::IsRefInputMode() const
|
||||
BOOL __EXPORT ScRefHandler::IsRefInputMode() const
|
||||
{
|
||||
return IsVisible(); // nur wer sichtbar ist kann auch Referenzen bekommen
|
||||
return m_rWindow.IsVisible(); // nur wer sichtbar ist kann auch Referenzen bekommen
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
BOOL __EXPORT ScAnyRefDlg::DoClose( USHORT nId )
|
||||
BOOL __EXPORT ScRefHandler::DoClose( USHORT nId )
|
||||
{
|
||||
m_aHelper.DoClose(nId);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void ScAnyRefDlg::SetDispatcherLock( BOOL bLock )
|
||||
void ScRefHandler::SetDispatcherLock( BOOL bLock )
|
||||
{
|
||||
m_aHelper.SetDispatcherLock( bLock );
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
void ScAnyRefDlg::ViewShellChanged(ScTabViewShell* pScViewShell )
|
||||
void ScRefHandler::ViewShellChanged(ScTabViewShell* pScViewShell )
|
||||
{
|
||||
m_aHelper.ViewShellChanged(pScViewShell);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
void ScAnyRefDlg::AddRefEntry()
|
||||
void ScRefHandler::AddRefEntry()
|
||||
{
|
||||
// wenn nicht ueberladen, gibt es keine Mehrfach-Referenzen
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
BOOL __EXPORT ScAnyRefDlg::IsTableLocked() const
|
||||
BOOL __EXPORT ScRefHandler::IsTableLocked() const
|
||||
{
|
||||
// per Default kann bei Referenzeingabe auch die Tabelle umgeschaltet werden
|
||||
|
||||
|
@ -861,48 +887,99 @@ BOOL __EXPORT ScAnyRefDlg::IsTableLocked() const
|
|||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
void ScAnyRefDlg::RefInputStart( formula::RefEdit* pEdit, formula::RefButton* pButton )
|
||||
void ScRefHandler::RefInputStart( formula::RefEdit* pEdit, formula::RefButton* pButton )
|
||||
{
|
||||
m_aHelper.RefInputStart( pEdit, pButton );
|
||||
}
|
||||
|
||||
|
||||
void ScAnyRefDlg::ToggleCollapsed( formula::RefEdit* pEdit, formula::RefButton* pButton )
|
||||
void ScRefHandler::ToggleCollapsed( formula::RefEdit* pEdit, formula::RefButton* pButton )
|
||||
{
|
||||
m_aHelper.ToggleCollapsed( pEdit, pButton );
|
||||
}
|
||||
long ScAnyRefDlg::PreNotify( NotifyEvent& rNEvt )
|
||||
{
|
||||
USHORT nSwitch=rNEvt.GetType();
|
||||
if(nSwitch==EVENT_GETFOCUS)
|
||||
{
|
||||
pActiveWin=rNEvt.GetWindow();
|
||||
}
|
||||
return SfxModelessDialog::PreNotify(rNEvt);
|
||||
|
||||
//The two following function is commentted out by PengYunQuan for Validity Cell Range Picker
|
||||
//long ScAnyRefDlg::PreNotify( NotifyEvent& rNEvt )
|
||||
//{
|
||||
// USHORT nSwitch=rNEvt.GetType();
|
||||
// if(nSwitch==EVENT_GETFOCUS)
|
||||
// {
|
||||
// pActiveWin=rNEvt.GetWindow();
|
||||
// }
|
||||
// return SfxModelessDialog::PreNotify(rNEvt);
|
||||
//}
|
||||
//
|
||||
//void ScAnyRefDlg::StateChanged( StateChangedType nStateChange )
|
||||
//{
|
||||
// SfxModelessDialog::StateChanged( nStateChange );
|
||||
//
|
||||
// if(nStateChange == STATE_CHANGE_VISIBLE)
|
||||
// {
|
||||
// if(IsVisible())
|
||||
// {
|
||||
// m_aHelper.enableInput( FALSE );
|
||||
// m_aHelper.EnableSpreadsheets();
|
||||
// m_aHelper.SetDispatcherLock( TRUE );
|
||||
// aTimer.Start();
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// m_aHelper.enableInput( TRUE );
|
||||
// m_aHelper.SetDispatcherLock( FALSE ); //! here and in DoClose ?
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
|
||||
#if defined( _MSC_VER )
|
||||
#define INTRODUCE_TEMPLATE
|
||||
#else
|
||||
#define INTRODUCE_TEMPLATE template <>
|
||||
#endif
|
||||
|
||||
#define IMPL_TWINDOW_PRENOTIFY( TWindow,bBindRef ) \
|
||||
INTRODUCE_TEMPLATE long ScRefHdlrImplBase<TWindow,bBindRef>::PreNotify( NotifyEvent& rNEvt )\
|
||||
{\
|
||||
if( bBindRef || m_bInRefMode )\
|
||||
{\
|
||||
USHORT nSwitch=rNEvt.GetType();\
|
||||
if(nSwitch==EVENT_GETFOCUS)\
|
||||
{\
|
||||
pActiveWin=rNEvt.GetWindow();\
|
||||
}\
|
||||
}\
|
||||
return TWindow::PreNotify(rNEvt);\
|
||||
}
|
||||
|
||||
void ScAnyRefDlg::StateChanged( StateChangedType nStateChange )
|
||||
{
|
||||
SfxModelessDialog::StateChanged( nStateChange );
|
||||
|
||||
if(nStateChange == STATE_CHANGE_VISIBLE)
|
||||
{
|
||||
if(IsVisible())
|
||||
{
|
||||
m_aHelper.enableInput( FALSE );
|
||||
m_aHelper.EnableSpreadsheets();
|
||||
m_aHelper.SetDispatcherLock( TRUE );
|
||||
aTimer.Start();
|
||||
}
|
||||
else
|
||||
{
|
||||
m_aHelper.enableInput( TRUE );
|
||||
m_aHelper.SetDispatcherLock( FALSE ); //! here and in DoClose ?
|
||||
}
|
||||
}
|
||||
#define IMPL_TWINDOW_STATECHANGED( TWindow,bBindRef ) \
|
||||
INTRODUCE_TEMPLATE void ScRefHdlrImplBase<TWindow,bBindRef>::StateChanged( StateChangedType nStateChange )\
|
||||
{\
|
||||
TWindow::StateChanged( nStateChange );\
|
||||
\
|
||||
if( !bBindRef && !m_bInRefMode ) return;\
|
||||
\
|
||||
if(nStateChange == STATE_CHANGE_VISIBLE)\
|
||||
{\
|
||||
if(m_rWindow.IsVisible())\
|
||||
{\
|
||||
m_aHelper.enableInput( FALSE );\
|
||||
m_aHelper.EnableSpreadsheets();\
|
||||
m_aHelper.SetDispatcherLock( TRUE );\
|
||||
aTimer.Start();\
|
||||
}\
|
||||
else\
|
||||
{\
|
||||
m_aHelper.enableInput( TRUE );\
|
||||
m_aHelper.SetDispatcherLock( FALSE ); /*//! here and in DoClose ?*/\
|
||||
}\
|
||||
}\
|
||||
}
|
||||
|
||||
IMPL_LINK( ScAnyRefDlg, UpdateFocusHdl, Timer*, EMPTYARG )
|
||||
IMPL_TWINDOW_PRENOTIFY( SfxModelessDialog, true )
|
||||
IMPL_TWINDOW_PRENOTIFY( SfxTabDialog, false )
|
||||
IMPL_TWINDOW_STATECHANGED( SfxModelessDialog, true )
|
||||
IMPL_TWINDOW_STATECHANGED( SfxTabDialog, false )
|
||||
|
||||
IMPL_LINK( ScRefHandler, UpdateFocusHdl, Timer*, EMPTYARG )
|
||||
{
|
||||
if (pActiveWin)
|
||||
{
|
||||
|
@ -911,27 +988,27 @@ IMPL_LINK( ScAnyRefDlg, UpdateFocusHdl, Timer*, EMPTYARG )
|
|||
return 0;
|
||||
}
|
||||
// -----------------------------------------------------------------------------
|
||||
bool ScAnyRefDlg::ParseWithNames( ScRangeList& rRanges, const String& rStr, ScDocument* pDoc )
|
||||
bool ScRefHandler::ParseWithNames( ScRangeList& rRanges, const String& rStr, ScDocument* pDoc )
|
||||
{
|
||||
return m_aHelper.ParseWithNames( rRanges, rStr, pDoc );
|
||||
}
|
||||
// -----------------------------------------------------------------------------
|
||||
void ScAnyRefDlg::HideReference( BOOL bDoneRefMode )
|
||||
void ScRefHandler::HideReference( BOOL bDoneRefMode )
|
||||
{
|
||||
m_aHelper.HideReference( bDoneRefMode );
|
||||
}
|
||||
// -----------------------------------------------------------------------------
|
||||
void ScAnyRefDlg::ShowReference( const XubString& rStr )
|
||||
void ScRefHandler::ShowReference( const XubString& rStr )
|
||||
{
|
||||
m_aHelper.ShowReference( rStr );
|
||||
}
|
||||
// -----------------------------------------------------------------------------
|
||||
void ScAnyRefDlg::ReleaseFocus( formula::RefEdit* pEdit, formula::RefButton* pButton )
|
||||
void ScRefHandler::ReleaseFocus( formula::RefEdit* pEdit, formula::RefButton* pButton )
|
||||
{
|
||||
m_aHelper.ReleaseFocus( pEdit,pButton );
|
||||
}
|
||||
//----------------------------------------------------------------------------
|
||||
void ScAnyRefDlg::RefInputDone( BOOL bForced )
|
||||
void ScRefHandler::RefInputDone( BOOL bForced )
|
||||
{
|
||||
m_aHelper.RefInputDone( bForced );
|
||||
}
|
||||
|
|
|
@ -244,7 +244,8 @@ ScModelObj::~ScModelObj()
|
|||
|
||||
uno::Reference< uno::XAggregation> ScModelObj::GetFormatter()
|
||||
{
|
||||
if ( !xNumberAgg.is() )
|
||||
// pDocShell may be NULL if this is the base of a ScDocOptionsObj
|
||||
if ( !xNumberAgg.is() && pDocShell )
|
||||
{
|
||||
// setDelegator veraendert den RefCount, darum eine Referenz selber halten
|
||||
// (direkt am m_refCount, um sich beim release nicht selbst zu loeschen)
|
||||
|
|
222
sc/source/ui/vba/excelvbahelper.cxx
Normal file
222
sc/source/ui/vba/excelvbahelper.cxx
Normal file
|
@ -0,0 +1,222 @@
|
|||
/*************************************************************************
|
||||
*
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* Copyright 2008 by Sun Microsystems, Inc.
|
||||
*
|
||||
* OpenOffice.org - a multi-platform office productivity suite
|
||||
*
|
||||
* $RCSfile: vbahelper.cxx,v $
|
||||
* $Revision: 1.5.32.1 $
|
||||
*
|
||||
* This file is part of OpenOffice.org.
|
||||
*
|
||||
* OpenOffice.org is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License version 3
|
||||
* only, as published by the Free Software Foundation.
|
||||
*
|
||||
* OpenOffice.org is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Lesser General Public License version 3 for more details
|
||||
* (a copy is included in the LICENSE file that accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* version 3 along with OpenOffice.org. If not, see
|
||||
* <http://www.openoffice.org/license.html>
|
||||
* for a copy of the LGPLv3 License.
|
||||
*
|
||||
************************************************************************/
|
||||
#include <docuno.hxx>
|
||||
#include "excelvbahelper.hxx"
|
||||
#include "tabvwsh.hxx"
|
||||
#include "transobj.hxx"
|
||||
#include "scmod.hxx"
|
||||
#include "cellsuno.hxx"
|
||||
#include <comphelper/processfactory.hxx>
|
||||
|
||||
using namespace ::com::sun::star;
|
||||
using namespace ::ooo::vba;
|
||||
|
||||
namespace ooo
|
||||
{
|
||||
namespace vba
|
||||
{
|
||||
namespace excel
|
||||
{
|
||||
void implSetZoom( const uno::Reference< frame::XModel >& xModel, sal_Int16 nZoom, std::vector< SCTAB >& nTabs )
|
||||
{
|
||||
ScTabViewShell* pViewSh = excel::getBestViewShell( xModel );
|
||||
Fraction aFract( nZoom, 100 );
|
||||
pViewSh->GetViewData()->SetZoom( aFract, aFract, nTabs );
|
||||
pViewSh->RefreshZoom();
|
||||
}
|
||||
bool isInPrintPreview( SfxViewFrame* pView )
|
||||
{
|
||||
sal_uInt16 nViewNo = SID_VIEWSHELL1 - SID_VIEWSHELL0;
|
||||
if ( pView->GetObjectShell()->GetFactory().GetViewFactoryCount() >
|
||||
nViewNo && !pView->GetObjectShell()->IsInPlaceActive() )
|
||||
{
|
||||
SfxViewFactory &rViewFactory =
|
||||
pView->GetObjectShell()->GetFactory().GetViewFactory(nViewNo);
|
||||
if ( pView->GetCurViewId() == rViewFactory.GetOrdinal() )
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
const ::rtl::OUString REPLACE_CELLS_WARNING( RTL_CONSTASCII_USTRINGPARAM( "ReplaceCellsWarning"));
|
||||
|
||||
class PasteCellsWarningReseter
|
||||
{
|
||||
private:
|
||||
bool bInitialWarningState;
|
||||
static uno::Reference< beans::XPropertySet > getGlobalSheetSettings() throw ( uno::RuntimeException )
|
||||
{
|
||||
static uno::Reference< beans::XPropertySet > xTmpProps( ::comphelper::getProcessServiceFactory(), uno::UNO_QUERY_THROW );
|
||||
static uno::Reference<uno::XComponentContext > xContext( xTmpProps->getPropertyValue( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "DefaultContext" ))), uno::UNO_QUERY_THROW );
|
||||
static uno::Reference<lang::XMultiComponentFactory > xServiceManager(
|
||||
xContext->getServiceManager(), uno::UNO_QUERY_THROW );
|
||||
static uno::Reference< beans::XPropertySet > xProps( xServiceManager->createInstanceWithContext( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.sheet.GlobalSheetSettings" ) ) ,xContext ), uno::UNO_QUERY_THROW );
|
||||
return xProps;
|
||||
}
|
||||
|
||||
bool getReplaceCellsWarning() throw ( uno::RuntimeException )
|
||||
{
|
||||
sal_Bool res = sal_False;
|
||||
getGlobalSheetSettings()->getPropertyValue( REPLACE_CELLS_WARNING ) >>= res;
|
||||
return ( res == sal_True );
|
||||
}
|
||||
|
||||
void setReplaceCellsWarning( bool bState ) throw ( uno::RuntimeException )
|
||||
{
|
||||
getGlobalSheetSettings()->setPropertyValue( REPLACE_CELLS_WARNING, uno::makeAny( bState ) );
|
||||
}
|
||||
public:
|
||||
PasteCellsWarningReseter() throw ( uno::RuntimeException )
|
||||
{
|
||||
bInitialWarningState = getReplaceCellsWarning();
|
||||
if ( bInitialWarningState )
|
||||
setReplaceCellsWarning( false );
|
||||
}
|
||||
~PasteCellsWarningReseter()
|
||||
{
|
||||
if ( bInitialWarningState )
|
||||
{
|
||||
// don't allow dtor to throw
|
||||
try
|
||||
{
|
||||
setReplaceCellsWarning( true );
|
||||
}
|
||||
catch ( uno::Exception& /*e*/ ){}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
void
|
||||
implnPaste( const uno::Reference< frame::XModel>& xModel )
|
||||
{
|
||||
PasteCellsWarningReseter resetWarningBox;
|
||||
ScTabViewShell* pViewShell = getBestViewShell( xModel );
|
||||
if ( pViewShell )
|
||||
{
|
||||
pViewShell->PasteFromSystem();
|
||||
pViewShell->CellContentChanged();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
implnCopy( const uno::Reference< frame::XModel>& xModel )
|
||||
{
|
||||
ScTabViewShell* pViewShell = getBestViewShell( xModel );
|
||||
if ( pViewShell )
|
||||
pViewShell->CopyToClip(NULL,false,false,true);
|
||||
}
|
||||
|
||||
void
|
||||
implnCut( const uno::Reference< frame::XModel>& xModel )
|
||||
{
|
||||
ScTabViewShell* pViewShell = getBestViewShell( xModel );
|
||||
if ( pViewShell )
|
||||
pViewShell->CutToClip( NULL, TRUE );
|
||||
}
|
||||
|
||||
void implnPasteSpecial( const uno::Reference< frame::XModel>& xModel, USHORT nFlags,USHORT nFunction,sal_Bool bSkipEmpty, sal_Bool bTranspose)
|
||||
{
|
||||
PasteCellsWarningReseter resetWarningBox;
|
||||
sal_Bool bAsLink(sal_False), bOtherDoc(sal_False);
|
||||
InsCellCmd eMoveMode = INS_NONE;
|
||||
|
||||
ScTabViewShell* pTabViewShell = getBestViewShell( xModel );
|
||||
if ( pTabViewShell )
|
||||
{
|
||||
ScViewData* pView = pTabViewShell->GetViewData();
|
||||
Window* pWin = ( pView != NULL ) ? pView->GetActiveWin() : NULL;
|
||||
if ( pView && pWin )
|
||||
{
|
||||
if ( bAsLink && bOtherDoc )
|
||||
pTabViewShell->PasteFromSystem(0);//SOT_FORMATSTR_ID_LINK
|
||||
else
|
||||
{
|
||||
ScTransferObj* pOwnClip = ScTransferObj::GetOwnClipboard( pWin );
|
||||
ScDocument* pDoc = NULL;
|
||||
if ( pOwnClip )
|
||||
pDoc = pOwnClip->GetDocument();
|
||||
pTabViewShell->PasteFromClip( nFlags, pDoc,
|
||||
nFunction, bSkipEmpty, bTranspose, bAsLink,
|
||||
eMoveMode, IDF_NONE, TRUE );
|
||||
pTabViewShell->CellContentChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ScDocShell*
|
||||
getDocShell( const css::uno::Reference< css::frame::XModel>& xModel )
|
||||
{
|
||||
uno::Reference< uno::XInterface > xIf( xModel, uno::UNO_QUERY_THROW );
|
||||
ScModelObj* pModel = dynamic_cast< ScModelObj* >( xIf.get() );
|
||||
ScDocShell* pDocShell = NULL;
|
||||
if ( pModel )
|
||||
pDocShell = (ScDocShell*)pModel->GetEmbeddedObject();
|
||||
return pDocShell;
|
||||
|
||||
}
|
||||
|
||||
ScTabViewShell*
|
||||
getBestViewShell( const css::uno::Reference< css::frame::XModel>& xModel )
|
||||
{
|
||||
ScDocShell* pDocShell = getDocShell( xModel );
|
||||
if ( pDocShell )
|
||||
return pDocShell->GetBestViewShell();
|
||||
return NULL;
|
||||
}
|
||||
|
||||
ScTabViewShell*
|
||||
getCurrentBestViewShell( const uno::Reference< uno::XComponentContext >& xContext )
|
||||
{
|
||||
uno::Reference< frame::XModel > xModel = getCurrentExcelDoc( xContext );
|
||||
return getBestViewShell( xModel );
|
||||
}
|
||||
|
||||
SfxViewFrame*
|
||||
getViewFrame( const uno::Reference< frame::XModel >& xModel )
|
||||
{
|
||||
ScTabViewShell* pViewShell = getBestViewShell( xModel );
|
||||
if ( pViewShell )
|
||||
return pViewShell->GetViewFrame();
|
||||
return NULL;
|
||||
}
|
||||
|
||||
SfxItemSet*
|
||||
ScVbaCellRangeAccess::GetDataSet( ScCellRangeObj* pRangeObj )
|
||||
{
|
||||
SfxItemSet* pDataSet = pRangeObj ? pRangeObj->GetCurrentDataSet( true ) : NULL ;
|
||||
return pDataSet;
|
||||
|
||||
}
|
||||
} //excel
|
||||
} //vba
|
||||
} //ooo
|
62
sc/source/ui/vba/excelvbahelper.hxx
Normal file
62
sc/source/ui/vba/excelvbahelper.hxx
Normal file
|
@ -0,0 +1,62 @@
|
|||
/*************************************************************************
|
||||
*
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* Copyright 2008 by Sun Microsystems, Inc.
|
||||
*
|
||||
* OpenOffice.org - a multi-platform office productivity suite
|
||||
*
|
||||
* $RCSfile: vbahelper.hxx,v $
|
||||
* $Revision: 1.5.32.1 $
|
||||
*
|
||||
* This file is part of OpenOffice.org.
|
||||
*
|
||||
* OpenOffice.org is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License version 3
|
||||
* only, as published by the Free Software Foundation.
|
||||
*
|
||||
* OpenOffice.org is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Lesser General Public License version 3 for more details
|
||||
* (a copy is included in the LICENSE file that accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* version 3 along with OpenOffice.org. If not, see
|
||||
* <http://www.openoffice.org/license.html>
|
||||
* for a copy of the LGPLv3 License.
|
||||
*
|
||||
************************************************************************/
|
||||
#ifndef SC_EXCEL_VBA_HELPER_HXX
|
||||
#define SC_EXCEL_VBA_HELPER_HXX
|
||||
|
||||
#include<vbahelper/vbahelper.hxx>
|
||||
#include <docsh.hxx>
|
||||
|
||||
class ScCellRangeObj;
|
||||
|
||||
namespace ooo
|
||||
{
|
||||
namespace vba
|
||||
{
|
||||
namespace excel
|
||||
{
|
||||
// nTabs empty means apply zoom to all sheets
|
||||
void implSetZoom( const css::uno::Reference< css::frame::XModel >& xModel, sal_Int16 nZoom, std::vector< SCTAB >& nTabs );
|
||||
void implnCopy( const css::uno::Reference< css::frame::XModel>& xModel );
|
||||
void implnPaste ( const css::uno::Reference< css::frame::XModel>& xModel );
|
||||
void implnCut( const css::uno::Reference< css::frame::XModel>& xModel );
|
||||
void implnPasteSpecial( const css::uno::Reference< css::frame::XModel>& xModel, sal_uInt16 nFlags,sal_uInt16 nFunction,sal_Bool bSkipEmpty, sal_Bool bTranspose);
|
||||
ScTabViewShell* getBestViewShell( const css::uno::Reference< css::frame::XModel>& xModel ) ;
|
||||
ScDocShell* getDocShell( const css::uno::Reference< css::frame::XModel>& xModel ) ;
|
||||
ScTabViewShell* getCurrentBestViewShell( const css::uno::Reference< css::uno::XComponentContext >& xContext );
|
||||
SfxViewFrame* getViewFrame( const css::uno::Reference< css::frame::XModel >& xModel );
|
||||
class ScVbaCellRangeAccess
|
||||
{
|
||||
public:
|
||||
static SfxItemSet* GetDataSet( ScCellRangeObj* pRangeObj );
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
|
@ -32,107 +32,25 @@
|
|||
|
||||
namespace comphelper {
|
||||
namespace service_decl {
|
||||
|
||||
namespace detail {
|
||||
namespace css = ::com::sun::star;
|
||||
template <typename ImplT>
|
||||
class OwnServiceImpl
|
||||
: public ImplT,
|
||||
private ::boost::noncopyable
|
||||
{
|
||||
typedef ImplT BaseT;
|
||||
|
||||
public:
|
||||
OwnServiceImpl(
|
||||
ServiceDecl const& rServiceDecl,
|
||||
css::uno::Sequence<css::uno::Any> const& args,
|
||||
css::uno::Reference<css::uno::XComponentContext> const& xContext )
|
||||
:BaseT(args, xContext), m_rServiceDecl(rServiceDecl) {}
|
||||
OwnServiceImpl(
|
||||
ServiceDecl const& rServiceDecl,
|
||||
css::uno::Reference<css::uno::XComponentContext> const& xContext )
|
||||
: BaseT(xContext), m_rServiceDecl(rServiceDecl) {}
|
||||
|
||||
// XServiceInfo
|
||||
virtual ::rtl::OUString SAL_CALL getImplementationName()
|
||||
throw (css::uno::RuntimeException) {
|
||||
return m_rServiceDecl.getImplementationName();
|
||||
}
|
||||
virtual sal_Bool SAL_CALL supportsService( ::rtl::OUString const& name )
|
||||
throw (css::uno::RuntimeException) {
|
||||
return m_rServiceDecl.supportsService(name);
|
||||
}
|
||||
virtual css::uno::Sequence< ::rtl::OUString>
|
||||
SAL_CALL getSupportedServiceNames() throw (css::uno::RuntimeException) {
|
||||
return m_rServiceDecl.getSupportedServiceNames();
|
||||
}
|
||||
|
||||
private:
|
||||
ServiceDecl const& m_rServiceDecl;
|
||||
};
|
||||
|
||||
|
||||
template <typename ImplT, typename WithArgsT>
|
||||
struct OwnCreateFunc;
|
||||
|
||||
template <typename ImplT>
|
||||
struct OwnCreateFunc<ImplT, with_args<false> > {
|
||||
explicit OwnCreateFunc( )
|
||||
{}
|
||||
|
||||
css::uno::Reference<css::uno::XInterface>
|
||||
operator()( ServiceDecl const& rServiceDecl,
|
||||
css::uno::Sequence<css::uno::Any> const&,
|
||||
css::uno::Reference<css::uno::XComponentContext>
|
||||
const& xContext ) const
|
||||
{
|
||||
return css::uno::Reference< ooo::vba::XHelperInterface >(new OwnServiceImpl<ImplT>( rServiceDecl, xContext ));
|
||||
}
|
||||
};
|
||||
|
||||
template <typename ImplT>
|
||||
struct OwnCreateFunc<ImplT, with_args<true> > {
|
||||
explicit OwnCreateFunc( )
|
||||
{}
|
||||
|
||||
css::uno::Reference<css::uno::XInterface>
|
||||
operator()( ServiceDecl const& rServiceDecl,
|
||||
css::uno::Sequence<css::uno::Any> const& args,
|
||||
css::uno::Reference<css::uno::XComponentContext>
|
||||
const& xContext ) const
|
||||
{
|
||||
css::uno::Reference< ooo::vba::XHelperInterface > xHelp(
|
||||
new OwnServiceImpl<ImplT>( rServiceDecl, args, xContext ) );
|
||||
css::uno::Reference< css::uno::XInterface > xIf( xHelp, css::uno::UNO_QUERY ) ;
|
||||
return xIf;
|
||||
}
|
||||
};
|
||||
|
||||
} // namespace detail
|
||||
|
||||
/** Defines a service implementation class.
|
||||
|
||||
@tpl ImplT_ service implementation class
|
||||
@WithArgsT whether the implementation class ctor expects arguments
|
||||
(uno::Sequence<uno::Any>, uno::Reference<uno::XComponentContext>)
|
||||
or just (uno::Reference<uno::XComponentContext>)
|
||||
*/
|
||||
template <typename ImplT_, typename WithArgsT = with_args<false> >
|
||||
struct vba_service_class_ {
|
||||
typedef ImplT_ ImplT;
|
||||
typedef detail::OwnServiceImpl<ImplT_ > ServiceImplT;
|
||||
|
||||
detail::CreateFuncF const m_createFunc;
|
||||
|
||||
struct vba_service_class_ : public serviceimpl_base< detail::OwnServiceImpl<ImplT_>, WithArgsT >
|
||||
{
|
||||
typedef serviceimpl_base< detail::OwnServiceImpl<ImplT_>, WithArgsT > baseT;
|
||||
/** Default ctor. Implementation class without args, expecting
|
||||
component context as single argument.
|
||||
*/
|
||||
vba_service_class_() : m_createFunc(
|
||||
detail::OwnCreateFunc<ImplT, WithArgsT>() ) {}
|
||||
vba_service_class_() : baseT() {}
|
||||
template <typename PostProcessFuncT>
|
||||
/** Ctor to pass a post processing function/functor.
|
||||
|
||||
@tpl PostProcessDefaultT let your compiler deduce this
|
||||
@param postProcessFunc function/functor that gets the yet unacquired
|
||||
ImplT_ pointer returning a
|
||||
uno::Reference<uno::XInterface>
|
||||
*/
|
||||
explicit vba_service_class_( PostProcessFuncT const& postProcessFunc ) : baseT( postProcessFunc ) {}
|
||||
};
|
||||
|
||||
|
||||
} // namespace service_decl
|
||||
} // namespace comphelper
|
||||
|
||||
|
|
|
@ -64,7 +64,7 @@ SLOFILES= \
|
|||
$(SLO)$/vbaworksheet.obj \
|
||||
$(SLO)$/vbaoutline.obj \
|
||||
$(SLO)$/vbafont.obj\
|
||||
$(SLO)$/vbahelper.obj\
|
||||
$(SLO)$/excelvbahelper.obj\
|
||||
$(SLO)$/vbainterior.obj\
|
||||
$(SLO)$/vbawsfunction.obj\
|
||||
$(SLO)$/vbawindow.obj\
|
||||
|
@ -81,28 +81,11 @@ SLOFILES= \
|
|||
$(SLO)$/vbapalette.obj \
|
||||
$(SLO)$/vbaborders.obj \
|
||||
$(SLO)$/vbacharacters.obj \
|
||||
$(SLO)$/vbacombobox.obj \
|
||||
$(SLO)$/vbavalidation.obj \
|
||||
$(SLO)$/vbacontrol.obj \
|
||||
$(SLO)$/vbacontrols.obj \
|
||||
$(SLO)$/vbaoleobject.obj \
|
||||
$(SLO)$/vbaoleobjects.obj \
|
||||
$(SLO)$/vbabutton.obj \
|
||||
$(SLO)$/vbalabel.obj \
|
||||
$(SLO)$/vbatextbox.obj \
|
||||
$(SLO)$/vbatextboxshape.obj \
|
||||
$(SLO)$/vbaradiobutton.obj \
|
||||
$(SLO)$/vbalistbox.obj \
|
||||
$(SLO)$/vbalistcontrolhelper.obj \
|
||||
$(SLO)$/vbapropvalue.obj \
|
||||
$(SLO)$/vbapane.obj \
|
||||
$(SLO)$/vbashape.obj \
|
||||
$(SLO)$/vbacolorformat.obj \
|
||||
$(SLO)$/vbashapes.obj \
|
||||
$(SLO)$/vbalineformat.obj \
|
||||
$(SLO)$/vbafillformat.obj \
|
||||
$(SLO)$/vbapictureformat.obj \
|
||||
$(SLO)$/vbashaperange.obj \
|
||||
$(SLO)$/vbatextframe.obj \
|
||||
$(SLO)$/vbacharttitle.obj \
|
||||
$(SLO)$/vbacharts.obj \
|
||||
|
@ -116,24 +99,10 @@ SLOFILES= \
|
|||
$(SLO)$/vbastyle.obj \
|
||||
$(SLO)$/vbastyles.obj \
|
||||
$(SLO)$/vbaassistant.obj \
|
||||
$(SLO)$/vbauserform.obj \
|
||||
$(SLO)$/vbacheckbox.obj \
|
||||
$(SLO)$/vbatogglebutton.obj \
|
||||
$(SLO)$/vbaframe.obj \
|
||||
$(SLO)$/vbascrollbar.obj \
|
||||
$(SLO)$/vbaprogressbar.obj \
|
||||
$(SLO)$/vbamultipage.obj \
|
||||
$(SLO)$/vbapages.obj \
|
||||
$(SLO)$/vbacommandbarcontrol.obj \
|
||||
$(SLO)$/vbacommandbarcontrols.obj \
|
||||
$(SLO)$/vbacommandbar.obj \
|
||||
$(SLO)$/vbacommandbars.obj \
|
||||
$(SLO)$/vbahyperlink.obj \
|
||||
$(SLO)$/vbapagesetup.obj \
|
||||
$(SLO)$/vbapagebreak.obj \
|
||||
$(SLO)$/vbapagebreaks.obj \
|
||||
$(SLO)$/vbaspinbutton.obj \
|
||||
$(SLO)$/vbaimage.obj \
|
||||
$(SLO)$/service.obj
|
||||
.ENDIF
|
||||
# --- Targets ------------------------------------------------------
|
||||
|
|
|
@ -61,11 +61,15 @@ namespace globals
|
|||
{
|
||||
extern sdecl::ServiceDecl const serviceDecl;
|
||||
}
|
||||
namespace userform
|
||||
namespace hyperlink
|
||||
{
|
||||
extern sdecl::ServiceDecl const serviceDecl;
|
||||
}
|
||||
namespace hyperlink
|
||||
namespace application
|
||||
{
|
||||
extern sdecl::ServiceDecl const serviceDecl;
|
||||
}
|
||||
namespace textframe
|
||||
{
|
||||
extern sdecl::ServiceDecl const serviceDecl;
|
||||
}
|
||||
|
@ -83,10 +87,10 @@ extern "C"
|
|||
lang::XMultiServiceFactory * pServiceManager, registry::XRegistryKey * pRegistryKey )
|
||||
{
|
||||
OSL_TRACE("In component_writeInfo");
|
||||
|
||||
#if 0
|
||||
// Component registration
|
||||
if ( component_writeInfoHelper( pServiceManager, pRegistryKey,
|
||||
range::serviceDecl, workbook::serviceDecl, worksheet::serviceDecl, globals::serviceDecl, userform::serviceDecl, window::serviceDecl, hyperlink::serviceDecl ) )
|
||||
range::serviceDecl, workbook::serviceDecl, worksheet::serviceDecl, globals::serviceDecl, window::serviceDecl, hyperlink::serviceDecl, application::serviceDecl ) )
|
||||
{
|
||||
// Singleton registration
|
||||
try
|
||||
|
@ -106,6 +110,12 @@ extern "C"
|
|||
}
|
||||
}
|
||||
return sal_False;
|
||||
#else
|
||||
// Component registration
|
||||
return component_writeInfoHelper( pServiceManager, pRegistryKey,
|
||||
range::serviceDecl, workbook::serviceDecl, worksheet::serviceDecl, globals::serviceDecl, window::serviceDecl, hyperlink::serviceDecl, application::serviceDecl ) && component_writeInfoHelper( pServiceManager, pRegistryKey, textframe::serviceDecl );
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
SAL_DLLPUBLIC_EXPORT void * SAL_CALL component_getFactory(
|
||||
|
@ -114,7 +124,9 @@ extern "C"
|
|||
{
|
||||
OSL_TRACE("In component_getFactory for %s", pImplName );
|
||||
void* pRet = component_getFactoryHelper(
|
||||
pImplName, pServiceManager, pRegistryKey, range::serviceDecl, workbook::serviceDecl, worksheet::serviceDecl, globals::serviceDecl, userform::serviceDecl, window::serviceDecl, hyperlink::serviceDecl );
|
||||
pImplName, pServiceManager, pRegistryKey, range::serviceDecl, workbook::serviceDecl, worksheet::serviceDecl, globals::serviceDecl, window::serviceDecl, hyperlink::serviceDecl, application::serviceDecl );
|
||||
if( !pRet )
|
||||
pRet = component_getFactoryHelper( pImplName, pServiceManager, pRegistryKey, textframe::serviceDecl );
|
||||
OSL_TRACE("Ret is 0x%x", pRet);
|
||||
return pRet;
|
||||
}
|
||||
|
|
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/AutoFilter.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/AutoFilter.xls
Normal file
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/CalcFont.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/CalcFont.xls
Normal file
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/CalcZoom.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/CalcZoom.xls
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/PageBreaks.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/PageBreaks.xls
Normal file
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/Ranges-2.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/Ranges-2.xls
Normal file
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/Ranges-3.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/Ranges-3.xls
Normal file
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/Ranges.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/Ranges.xls
Normal file
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/Shapes.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/Shapes.xls
Normal file
Binary file not shown.
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/Template.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/Template.xls
Normal file
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/TestAddress.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/TestAddress.xls
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/TestUnion.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/TestUnion.xls
Normal file
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/VariantTest.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/VariantTest.xls
Normal file
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/Window.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/Window.xls
Normal file
Binary file not shown.
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/dateserial.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/dateserial.xls
Normal file
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/datevalue.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/datevalue.xls
Normal file
Binary file not shown.
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/format.xls
Normal file
BIN
sc/source/ui/vba/testvba/TestDocuments-ooo-build/format.xls
Normal file
Binary file not shown.
|
@ -0,0 +1,20 @@
|
|||
Test run started : 17/07/2007 17:36:22
|
||||
----------------------------------------------------------------
|
||||
TestAddress
|
||||
TEST START : TestAddress
|
||||
ITEM Assertion OK : test1 'starts with' string criteria
|
||||
ITEM Assertion OK : test2 'not equal to' string criteria
|
||||
ITEM Assertion OK : test3 'ends with' string criteria
|
||||
ITEM Assertion OK : test4 field 'all'
|
||||
ITEM Assertion OK : test5 numeric '<15'
|
||||
ITEM Assertion OK : test6 numeric '>=15'
|
||||
ITEM Assertion OK : test7 numeric '<=12'
|
||||
Test Results
|
||||
============
|
||||
|
||||
Tests passed: 7
|
||||
Tests failed: 0
|
||||
|
||||
END 'TestAddress
|
||||
TEST OK : TestAddress
|
||||
Test run finished : 17/07/2007 17:36:23
|
|
@ -0,0 +1,45 @@
|
|||
Test run started : 17/07/2007 15:01:37
|
||||
----------------------------------------------------------------
|
||||
MiscRangeTests
|
||||
TEST START : MiscRangeTests
|
||||
ITEM Assertion OK : test 1
|
||||
ITEM Assertion OK : test 2
|
||||
ITEM Assertion OK : test 3
|
||||
ITEM Assertion OK : test 4
|
||||
ITEM Assertion OK : test 5
|
||||
ITEM Assertion OK : test 6
|
||||
ITEM Assertion OK : test 7
|
||||
ITEM Assertion OK : test 8
|
||||
ITEM Assertion OK : test 9
|
||||
ITEM Assertion OK : test 10
|
||||
ITEM Assertion OK : test 11
|
||||
ITEM Assertion OK : test 12
|
||||
ITEM Assertion OK : test 13
|
||||
ITEM Assertion OK : test 14
|
||||
ITEM Assertion OK : test 15
|
||||
ITEM Assertion OK : test 16
|
||||
ITEM Assertion OK : test 17
|
||||
ITEM Assertion OK : test 18
|
||||
ITEM Assertion OK : test 19
|
||||
ITEM Assertion OK : test 20
|
||||
ITEM Assertion OK : test 21
|
||||
ITEM Assertion OK : test 22
|
||||
ITEM Assertion OK : test 23
|
||||
ITEM Assertion OK : test 24
|
||||
ITEM Assertion OK : test 25
|
||||
ITEM Assertion OK : test 26
|
||||
ITEM Assertion OK : test 27
|
||||
ITEM Assertion OK : test 28
|
||||
ITEM Assertion OK : test 29
|
||||
ITEM Assertion OK : test 30
|
||||
ITEM Assertion OK : test 31
|
||||
No. tests: 31
|
||||
Summary
|
||||
=======
|
||||
Run: 31
|
||||
Passed: 31
|
||||
Failed: 0
|
||||
|
||||
END 'MiscRangeTests
|
||||
TEST OK : MiscRangeTests
|
||||
Test run finished : 17/07/2007 15:01:39
|
|
@ -0,0 +1,68 @@
|
|||
Test run started : 18/06/2007 17:50:04
|
||||
----------------------------------------------------------------
|
||||
ClearFormtsIssue
|
||||
TEST START : ClearFormtsIssue
|
||||
ITEM Assertion OK : Range.Font.Bold is: True
|
||||
ITEM Assertion OK : Range.Font.Bold is: False
|
||||
END 'ClearFormtsIssue' Symbol
|
||||
TEST OK : ClearFormtsIssue
|
||||
----------------------------------------------------------------
|
||||
VerticalAlignment-Issue
|
||||
TEST START : VerticalAlignment-Issue
|
||||
ITEM Assertion OK : - Range.VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range.VerticalAlignment (set)
|
||||
ITEM Assertion OK : - Range.VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range.VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range.VerticalAlignment (set)
|
||||
ITEM Assertion OK : - Range.VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range.VerticalAlignment (set)
|
||||
ITEM Assertion OK : Range.VeritcalAlignment is Null
|
||||
END 'VerticalAlignment-Issue' Symbol
|
||||
TEST OK : VerticalAlignment-Issue
|
||||
----------------------------------------------------------------
|
||||
HorizontalAlignment-Issue
|
||||
TEST START : HorizontalAlignment-Issue
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (set)
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (set)
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (set)
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (set)
|
||||
ITEM Assertion OK : Range.HorizontalAlignment is Null
|
||||
END 'HorizontalAlignment-Issue' Symbol
|
||||
TEST OK : HorizontalAlignment-Issue
|
||||
----------------------------------------------------------------
|
||||
WrapText-Issue
|
||||
TEST START : WrapText-Issue
|
||||
ITEM Assertion OK : - Range.WrapText (get)
|
||||
ITEM Assertion OK : - Range.WrapText (get)
|
||||
ITEM Assertion OK : Range.WrapText is Null
|
||||
END 'WrapText-Issue' Symbol
|
||||
TEST OK : WrapText-Issue
|
||||
----------------------------------------------------------------
|
||||
FontBorderIssues
|
||||
TEST START : FontBorderIssues
|
||||
ITEM Assertion OK : - = Borders.Color (getColor)
|
||||
ITEM Assertion OK : - = Font.Color (getColor)
|
||||
END 'FontBorderIssues' Symbol
|
||||
TEST OK : FontBorderIssues
|
||||
----------------------------------------------------------------
|
||||
RangeSizeIssues
|
||||
TEST START : RangeSizeIssues
|
||||
ITEM Assertion OK : Range.Left is: 114
|
||||
ITEM Assertion OK : Range.Top is: 95.25
|
||||
ITEM Assertion OK : Range.Width is: 216
|
||||
ITEM Assertion OK : Range.Height is: 271.5
|
||||
END 'RangeSizeIssues' Symbol
|
||||
TEST OK : RangeSizeIssues
|
||||
----------------------------------------------------------------
|
||||
ApplicationIssues
|
||||
TEST START : ApplicationIssues
|
||||
ITEM Assertion OK : Range.Address is: $E$8:$G$13,$G$13:$K$19
|
||||
ITEM Assertion OK : Range.Address is: $E$8:$G$13,$G$13:$K$19
|
||||
ITEM Assertion OK : Application.ActiveSheet.Name: Sheet1
|
||||
END 'ApplicationIssues' Symbol
|
||||
TEST OK : ApplicationIssues
|
||||
Test run finished : 18/06/2007 17:50:04
|
|
@ -0,0 +1,8 @@
|
|||
Test run started : 19/06/2007 11:21:42
|
||||
----------------------------------------------------------------
|
||||
MyGoalseek-Issue
|
||||
TEST START : MyGoalseek-Issue
|
||||
ITEM Assertion OK : Variable Range value: 15
|
||||
END 'MyGoalseek-Issue' Symbol
|
||||
TEST OK : MyGoalseek-Issue
|
||||
Test run finished : 19/06/2007 11:21:42
|
|
@ -0,0 +1,280 @@
|
|||
Test run started : 01/06/2007 11:28:58
|
||||
----------------------------------------------------------------
|
||||
ApplicationMethods
|
||||
TEST START : ApplicationMethods
|
||||
ITEM Assertion OK : Name of Workbook is: Ranges.xls
|
||||
ITEM Assertion OK : Address of Application.Columns is: $A:$A
|
||||
ITEM Assertion OK : Address of Application.Rows is: $1:$1
|
||||
ITEM Assertion OK : Address of Application.Range is: $1:$1,$5:$7
|
||||
ITEM Assertion OK : Please check manually: DefaultFilePath is: C:\Documents and Settings\vituosity\My Documents
|
||||
ITEM Assertion OK : Please check manually: Library Path is: C:\Program Files\Microsoft Office\OFFICE11\LIBRARY
|
||||
ITEM Assertion OK : Please check manually: Template Path is: C:\Documents and Settings\vituosity\Application Data\Microsoft\Templates\
|
||||
ITEM Assertion OK : FileSeparator is \
|
||||
ITEM Assertion OK : Name of ActiveWorkbook is: Ranges.xls
|
||||
END 'ApplicationMethods' Symbol
|
||||
TEST OK : ApplicationMethods
|
||||
----------------------------------------------------------------
|
||||
Insert-Issue
|
||||
TEST START : Insert-Issue
|
||||
ITEM Assertion OK : Insert with xlShiftToRight: 10
|
||||
END 'Insert-Issue' Symbol
|
||||
TEST OK : Insert-Issue
|
||||
----------------------------------------------------------------
|
||||
MergeCells-Issue
|
||||
TEST START : MergeCells-Issue
|
||||
ITEM Assertion OK : Range.MergeCells is True
|
||||
ITEM Assertion OK : MergeCells is null: True
|
||||
ITEM Assertion OK : RowCount after Merge: 6
|
||||
ITEM Assertion OK : Range.MergeCells is False
|
||||
ITEM Assertion OK : MergeCells is null: False
|
||||
ITEM Assertion OK : MergeCells of Second Area is null : True
|
||||
ITEM Assertion OK : MergeCells of Ranges is Null: True
|
||||
ITEM Assertion OK : RowCount after Merge: 7
|
||||
ITEM Assertion OK : Range.MergeCells is False
|
||||
ITEM Assertion OK : MergeCells is null: False
|
||||
ITEM Assertion OK : RowCount after Merge: 7
|
||||
END 'MergeCells-Issue' Symbol
|
||||
TEST OK : MergeCells-Issue
|
||||
----------------------------------------------------------------
|
||||
Areas-Issue
|
||||
TEST START : Areas-Issue
|
||||
ITEM Assertion OK : Range Areas Count is2
|
||||
ITEM Assertion OK : First Range Address is: $E$8:$G$13
|
||||
ITEM Assertion OK : First Row is: 8
|
||||
ITEM Assertion OK : First Column is: 5
|
||||
ITEM Assertion OK : EntireRow Address is: $8:$13,$13:$19
|
||||
ITEM Assertion OK : EntireColumn Address is: $E:$G,$G:$K
|
||||
ITEM Assertion OK : Range Count:53
|
||||
END 'Areas-Issue' Symbol
|
||||
TEST OK : Areas-Issue
|
||||
----------------------------------------------------------------
|
||||
Fill-Methods-Issue
|
||||
TEST START : Fill-Methods-Issue
|
||||
ITEM Assertion OK : Range Value after FillDown: MyFillValue
|
||||
ITEM Assertion OK : Range Value after FillDown: MyFillValue
|
||||
ITEM Assertion OK : Range Value after FillDown: MyRightFillValue
|
||||
ITEM Assertion OK : Range Value after FillDown: MyBottomFillValue
|
||||
END 'Fill-Methods-Issue' Symbol
|
||||
TEST OK : Fill-Methods-Issue
|
||||
----------------------------------------------------------------
|
||||
Range/Item-Method-Issue
|
||||
TEST START : Range/Item-Method-Issue
|
||||
ITEM Assertion OK : Range of multiple columns is: $A:$A,$C:$C
|
||||
ITEM Assertion OK : Range of multiple rows is: $1:$1,$5:$7
|
||||
ITEM Assertion OK : Range of several columns is: $C:$E,$D:$D
|
||||
ITEM Assertion OK : Range of several rows is: $5:$8,$6:$10
|
||||
ITEM Assertion OK : Range of several single cells is: $C$5,$E$8
|
||||
ITEM Assertion OK : Range of several named ranges is: $L$1:$M$6,$E$8:$G$13,$G$13:$K$19
|
||||
ITEM Assertion OK : Range of a single Item Cell is: $E$21
|
||||
ITEM Assertion OK : Range of a single Item Cell is: $F$21
|
||||
ITEM Assertion OK : Range of a single Item Cell is: $F$10
|
||||
END 'Range/Item-Method-Issue' Symbol
|
||||
TEST OK : Range/Item-Method-Issue
|
||||
----------------------------------------------------------------
|
||||
R1C1-Formulas-Issue
|
||||
TEST START : R1C1-Formulas-Issue
|
||||
ITEM Assertion OK : R1C1 Range.Formula is: =IF(OR(R[-2]C[1]=0,RC[2]="YES"),"")
|
||||
ITEM Assertion OK : Range.Formula is: =IF(OR(J8=0,K10="YES"),"")
|
||||
END 'R1C1-Formulas-Issue' Symbol
|
||||
TEST OK : R1C1-Formulas-Issue
|
||||
----------------------------------------------------------------
|
||||
Verify_Delete
|
||||
TEST START : Verify_Delete
|
||||
ITEM Assertion OK : Ranges are intersecting: $G$13
|
||||
ITEM Assertion OK : Delete with Default: $AJ$4
|
||||
ITEM Assertion OK : Delete with ShifttoLeft: $AJ$4
|
||||
ITEM Assertion OK : Delete with ShiftUp: $M$22
|
||||
END 'Verify_Delete' Symbol
|
||||
TEST OK : Verify_Delete
|
||||
----------------------------------------------------------------
|
||||
Value-Issue
|
||||
TEST START : Value-Issue
|
||||
ITEM Assertion OK : Value of Range is: 12.3
|
||||
ITEM Assertion OK : Text of Range is: 12.3
|
||||
ITEM Assertion OK : Range has Formula: False
|
||||
ITEM Assertion OK : Cell has Formula: False
|
||||
ITEM Assertion OK : Text of Range is null: True
|
||||
ITEM Assertion OK : Range has Formula: True
|
||||
ITEM Assertion OK : Cell has Formula: True
|
||||
ITEM Assertion OK : Value of Cell is: 12
|
||||
ITEM Assertion OK : Application.Calculation is : -4135
|
||||
ITEM Assertion OK : Calculation is automated: True
|
||||
ITEM Assertion OK : Range has Formula: True
|
||||
ITEM Assertion OK : Value of Cell is: 16
|
||||
ITEM Assertion OK : Text of Cell is: 16
|
||||
ITEM Assertion OK : Text of Cell is: 16
|
||||
ITEM Assertion OK : Range has Formula after 'ClearContents: False
|
||||
ITEM Assertion OK : Text of Cell is:
|
||||
ITEM Assertion OK : Text of Cell is:
|
||||
END 'Value-Issue' Symbol
|
||||
TEST OK : Value-Issue
|
||||
----------------------------------------------------------------
|
||||
AutoFit issue
|
||||
TEST START : AutoFit issue
|
||||
ITEM Assertion OK : Columns.AutoFit: CurrentWidth is 673
|
||||
ITEM Assertion OK : Rows.AutoFit: CurrentHeight is 612
|
||||
END 'AutoFit issue' Symbol
|
||||
TEST OK : AutoFit issue
|
||||
----------------------------------------------------------------
|
||||
Selections
|
||||
TEST START : Selections
|
||||
ITEM Assertion OK : ActiveCell is : $E$8
|
||||
ITEM Assertion OK : Active Cell is : $E$8
|
||||
ITEM Assertion OK : Number of Cells in Range: 53
|
||||
ITEM Assertion OK : Number of Cells in Range: 53
|
||||
ITEM Assertion OK : Number of Cells in Range: 53
|
||||
END 'Selections' Symbol
|
||||
TEST OK : Selections
|
||||
----------------------------------------------------------------
|
||||
Offset-Resize
|
||||
TEST START : Offset-Resize
|
||||
ITEM Assertion OK : Offset is : $G$10:$I$15,$I$15:$M$21
|
||||
ITEM Assertion OK : Offset is : $G$7:$I$12,$I$12:$M$18
|
||||
ITEM Assertion OK : Resized Range is : $A$20:$D$23
|
||||
END 'Offset-Resize' Symbol
|
||||
TEST OK : Offset-Resize
|
||||
----------------------------------------------------------------
|
||||
Ranges-Address
|
||||
TEST START : Ranges-Address
|
||||
ITEM Assertion OK : Range Address is: $E$8:$G$13,$G$13:$K$19
|
||||
ITEM Assertion OK : Range Address is: $E8:$G13,$G13:$K19
|
||||
ITEM Assertion OK : Range Address is: E$8:G$13,G$13:K$19
|
||||
ITEM Assertion OK : Range Address is: R8C5:R13C7,R13C7:R19C11
|
||||
ITEM Assertion OK : Range Address is: $E$8:$G$13,$G$13:$K$19
|
||||
ITEM Assertion OK : Range Address is: R8C5:R13C7,R13C7:R19C11
|
||||
ITEM Assertion OK : Range Address is: R[6]C[3]:R[11]C[5],R[11]C[5]:R[17]C[9]
|
||||
ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$E$8:$G$13,$G$13:$K$19
|
||||
END 'Ranges-Address' Symbol
|
||||
TEST OK : Ranges-Address
|
||||
----------------------------------------------------------------
|
||||
Range-Address
|
||||
TEST START : Range-Address
|
||||
ITEM Assertion OK : Range Address is: $E$8:$G$13
|
||||
ITEM Assertion OK : Range Address is: $E8:$G13
|
||||
ITEM Assertion OK : Range Address is: E$8:G$13
|
||||
ITEM Assertion OK : Range Address is: R8C5:R13C7
|
||||
ITEM Assertion OK : Range Address is: $E$8:$G$13
|
||||
ITEM Assertion OK : Range Address is: R8C5:R13C7
|
||||
ITEM Assertion OK : Range Address is: R[6]C[3]:R[11]C[5]
|
||||
ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$E$8:$G$13
|
||||
END 'Range-Address' Symbol
|
||||
TEST OK : Range-Address
|
||||
----------------------------------------------------------------
|
||||
Column-Address
|
||||
TEST START : Column-Address
|
||||
ITEM Assertion OK : Range Address is: $F$8:$F$13
|
||||
ITEM Assertion OK : Range Address is: $F8:$F13
|
||||
ITEM Assertion OK : Range Address is: F$8:F$13
|
||||
ITEM Assertion OK : Range Address is: R8C6:R13C6
|
||||
ITEM Assertion OK : Range Address is: $F$8:$F$13
|
||||
ITEM Assertion OK : Range Address is: R8C6:R13C6
|
||||
ITEM Assertion OK : Range Address is: R[6]C[4]:R[11]C[4]
|
||||
ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$F$8:$F$13
|
||||
END 'Column-Address' Symbol
|
||||
TEST OK : Column-Address
|
||||
----------------------------------------------------------------
|
||||
Row-Address
|
||||
TEST START : Row-Address
|
||||
ITEM Assertion OK : Range Address is: $E$9:$G$9
|
||||
ITEM Assertion OK : Range Address is: $E9:$G9
|
||||
ITEM Assertion OK : Range Address is: E$9:G$9
|
||||
ITEM Assertion OK : Range Address is: R9C5:R9C7
|
||||
ITEM Assertion OK : Range Address is: $E$9:$G$9
|
||||
ITEM Assertion OK : Range Address is: R9C5:R9C7
|
||||
ITEM Assertion OK : Range Address is: R[7]C[3]:R[7]C[5]
|
||||
ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$E$9:$G$9
|
||||
END 'Row-Address' Symbol
|
||||
TEST OK : Row-Address
|
||||
----------------------------------------------------------------
|
||||
SingleCell-Address
|
||||
TEST START : SingleCell-Address
|
||||
ITEM Assertion OK : Range Address is: $F$9
|
||||
ITEM Assertion OK : Range Address is: $F9
|
||||
ITEM Assertion OK : Range Address is: F$9
|
||||
ITEM Assertion OK : Range Address is: R9C6
|
||||
ITEM Assertion OK : Range Address is: $F$9
|
||||
ITEM Assertion OK : Range Address is: R9C6
|
||||
ITEM Assertion OK : Range Address is: R[7]C[4]
|
||||
ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$F$9
|
||||
END 'SingleCell-Address' Symbol
|
||||
TEST OK : SingleCell-Address
|
||||
----------------------------------------------------------------
|
||||
Heights and Widths
|
||||
TEST START : Heights and Widths
|
||||
ITEM Assertion OK : Range RowHeight is 40
|
||||
ITEM Assertion OK : Range ColumnWidth is 50
|
||||
ITEM Assertion OK : Range Height is 238
|
||||
ITEM Assertion OK : Range Width is 798.75
|
||||
ITEM Assertion OK : Range RowHeight is 50
|
||||
ITEM Assertion OK : Range ColumnWidth is 50
|
||||
ITEM Assertion OK : Range Height is 297
|
||||
ITEM Assertion OK : Range Width is 798.75
|
||||
ITEM Assertion OK : RowHeight is null: True
|
||||
ITEM Assertion OK : ColumnWidth is null: True
|
||||
END 'Heights and Widths' Symbol
|
||||
TEST OK : Heights and Widths
|
||||
----------------------------------------------------------------
|
||||
RangeRowColumn-Issue
|
||||
TEST START : RangeRowColumn-Issue
|
||||
ITEM Assertion OK : Row is: 8
|
||||
ITEM Assertion OK : Column is: 5
|
||||
ITEM Assertion OK : EntireRow.Columns.Count = 256
|
||||
ITEM Assertion OK : EntireColumn.Rows.Count = 65536
|
||||
END 'RangeRowColumn-Issue' Symbol
|
||||
TEST OK : RangeRowColumn-Issue
|
||||
----------------------------------------------------------------
|
||||
Replace-Issue
|
||||
TEST START : Replace-Issue
|
||||
ITEM Assertion OK : Value after Replace: YourValue
|
||||
ITEM Assertion OK : Value after Replace: YourValue
|
||||
ITEM Assertion OK : Value after Replace: ReplaceValue
|
||||
ITEM Assertion OK : Value after Replace: New ReplaceValue
|
||||
ITEM Assertion OK : Value after Replace: New ReplaceValue
|
||||
ITEM Assertion OK : Value after Replace: New Replace
|
||||
ITEM Assertion OK : Value after Replace:
|
||||
END 'Replace-Issue' Symbol
|
||||
TEST OK : Replace-Issue
|
||||
----------------------------------------------------------------
|
||||
Hidden-Issue
|
||||
TEST START : Hidden-Issue
|
||||
ITEM Assertion OK : - Range.Rows.Hidden (set)
|
||||
ITEM Assertion OK : - Range.Rows.Hidden (get)
|
||||
ITEM Assertion OK : - Range.Rows.Item(1).Hidden (set)
|
||||
ITEM Assertion OK : - Range.Rows.Item(1).Hidden (get)
|
||||
ITEM Assertion OK : - Range.Columns.Hidden (set)
|
||||
ITEM Assertion OK : - Range.Columns.Hidden (get)
|
||||
ITEM Assertion OK : - Range.Columns.Item(1).Hidden (set)
|
||||
ITEM Assertion OK : - Range.Columns.Item(1).Hidden (get)
|
||||
END 'Hidden-Issue' Symbol
|
||||
TEST OK : Hidden-Issue
|
||||
----------------------------------------------------------------
|
||||
End issue
|
||||
TEST START : End issue
|
||||
ITEM Assertion OK : - = $E$48
|
||||
ITEM Assertion OK : - = $E$1
|
||||
ITEM Assertion OK : - = $E$3
|
||||
ITEM Assertion OK : - = $A$8
|
||||
ITEM Assertion OK : - = $B$8
|
||||
ITEM Assertion OK : - = $IV$8
|
||||
ITEM Assertion OK : - = $Z$8
|
||||
END 'End issue' Symbol
|
||||
TEST OK : End issue
|
||||
----------------------------------------------------------------
|
||||
Outline issue
|
||||
TEST START : Outline issue
|
||||
ITEM Assertion OK : - Range.clearOutline - please check visually
|
||||
ITEM Assertion OK : - Range.AutoOutline - please check visually
|
||||
ITEM Assertion OK : - Range.AutoOutline - please check visually
|
||||
END 'Outline issue' Symbol
|
||||
TEST OK : Outline issue
|
||||
----------------------------------------------------------------
|
||||
Validation
|
||||
TEST START : Validation
|
||||
ITEM Assertion OK : Validation Input Message is : Attention!
|
||||
ITEM Assertion OK : Validation Input Message is : Enter an integer from five to ten
|
||||
ITEM Assertion OK : Validation Error Title is : You must enter a number from five to ten
|
||||
ITEM Assertion OK : Validation Error Message is : An Error occured
|
||||
ITEM Assertion OK : Validation Error Title is : Microsoft Excel
|
||||
END 'Validation' Symbol
|
||||
TEST OK : Validation
|
||||
Test run finished : 01/06/2007 11:29:00
|
|
@ -0,0 +1,62 @@
|
|||
Test run started : 17/07/2007 15:25:17
|
||||
----------------------------------------------------------------
|
||||
TestAddress
|
||||
TEST START : TestAddress
|
||||
ITEM Assertion OK : test1 Range('e3:f3') A1 style addressing
|
||||
ITEM Assertion OK : test2 Range('e3:f3') R1C1 style addressing
|
||||
ITEM Assertion OK : test3 Range ('e:f') A1 style addressing
|
||||
ITEM Assertion OK : test4 Range ('e:f') R1C1 style addressing
|
||||
ITEM Assertion OK : test5 Columns A1 style addressing
|
||||
ITEM Assertion OK : test6 Columns R1C1 style addressing
|
||||
ITEM Assertion OK : test7 Columns(3) A1 style addressing
|
||||
ITEM Assertion OK : test8 Columns(3) R1C1 style addressing
|
||||
ITEM Assertion OK : test9 Columns('e') A1 style addressing
|
||||
ITEM Assertion OK : test10 Columns('e') R1C1 style addressing
|
||||
ITEM Assertion OK : test11 Columns('b:d') A1 style addressing
|
||||
ITEM Assertion OK : test12 Columns('b:d') R1C1 style addressing
|
||||
ITEM Assertion OK : test13 Range('c1:g10').Columns A1 style addressing
|
||||
ITEM Assertion OK : test14 Range('c1:g10').Columns R1C1 style addressing
|
||||
ITEM Assertion OK : test15 Range('c1:g10').Columns(1) A1 style addressing
|
||||
ITEM Assertion OK : test16 Range('c1:g10').Columns(1) R1C1 style addressing
|
||||
ITEM Assertion OK : test17 Range('c1:g10').Columns('a') A1 style addressing
|
||||
ITEM Assertion OK : test18 Range('c1:g10').Columns('a') R1C1 style addressing
|
||||
ITEM Assertion OK : test19 Range('c1:g10').Columns('c') A1 style addressing
|
||||
ITEM Assertion OK : test20 Range('c1:g10').Columns('c') R1C1 style addressing
|
||||
ITEM Assertion OK : test21 Range('c1:g10').Columns('x:z') A1 style addressing
|
||||
ITEM Assertion OK : test22 Range('c1:g10').Columns('x:z') R1C1 style addressing
|
||||
ITEM Assertion OK : test23 Range('c1:g10').Columns(30) A1 style addressing
|
||||
ITEM Assertion OK : test24 Range('c1:g10').Columns(30) R1C1 style addressing
|
||||
ITEM Assertion OK : test25 Worksheets('Sheet2').Cells(1, 1) A1 style addressing
|
||||
ITEM Assertion OK : test26 Worksheets('Sheet2').Cells(1, 1) A1 style addressing, RowAddressAbsolute is false
|
||||
ITEM Assertion OK : test27 Worksheets('Sheet2').Cells(1, 1) A1 style addressing, ColAddressAbsolute is false
|
||||
ITEM Assertion OK : test28 Worksheets('Sheet2').Cells(1, 1) R1C1 style addressing
|
||||
ITEM Assertion OK : test29 Worksheets('Sheet2').Range('A1:E5').EntireColumn A1 style addressing
|
||||
ITEM Assertion OK : test30 Worksheets('Sheet2').Range('A1').EntireColumn A1 style addressing
|
||||
ITEM Assertion OK : test31 Worksheets('Sheet2').Range('A1:E5').EntireRow A1 style addressing
|
||||
ITEM Assertion OK : test32 Worksheets('Sheet2').Range('A1') A1 style addressing
|
||||
ITEM Assertion OK : test33 Worksheets('Sheet2').Range('IV65536').EntireRow A1 style addressing
|
||||
ITEM Assertion OK : test34 Worksheets('Sheet2').Range('IU2:IV65536') A1 style addressing
|
||||
ITEM Assertion OK : test35 Range('c1:g10').Columns('x:z') R1C1 style addressing
|
||||
ITEM Assertion OK : test36 Worksheets('Sheet2').Range('A1') A1 style addressing
|
||||
ITEM Assertion OK : test37 Worksheets('Sheet2').Range('A1:E5').EntireColumn A1 style addressing
|
||||
ITEM Assertion OK : test38 Worksheets('Sheet2').Range('10:12') A1 style addressing
|
||||
ITEM Assertion OK : test39 Worksheets('Sheet2').Range('10:12') R1C1 style addressing
|
||||
ITEM Assertion OK : test40 Range('Sheet3!A1:B4') A1 style addressing
|
||||
ITEM Assertion OK : test41 Range('Sheet3!A1,B1,D4:F20') A1 style addressing
|
||||
ITEM Assertion OK : test42 Range('g20:h40').Columns('c:c')
|
||||
ITEM Assertion OK : test43 Range('g20:h40').Columns('c:f')
|
||||
ITEM Assertion OK : test44 Range('g20:h40').Columns(-1)
|
||||
ITEM Assertion OK : test45 Range('c4:g10').Rows(-1)
|
||||
ITEM Assertion OK : test46 Range('a2:b4').Rows('1:1')
|
||||
ITEM Assertion OK : test47 Range('a2:b4').Rows('1:2')
|
||||
ITEM Assertion OK : test48 Range('a2:b4').Rows('2:2')
|
||||
ITEM Assertion OK : test49 Range('a2:b4').Rows('2:3')
|
||||
Test Results
|
||||
============
|
||||
|
||||
Tests passed: 49
|
||||
Tests failed: 0
|
||||
|
||||
END 'TestAddress
|
||||
TEST OK : TestAddress
|
||||
Test run finished : 17/07/2007 15:25:19
|
|
@ -0,0 +1,60 @@
|
|||
Test run started : 30/05/2007 11:33:13
|
||||
BEGIN TestCalc
|
||||
TEST START : RangeTest2
|
||||
ITEM Assertion OK : - Range("D15").Row
|
||||
ITEM Assertion OK : - WorkSheet("D15").Range.Row
|
||||
ITEM Assertion OK : - Range("D15").Column
|
||||
ITEM Assertion OK : - Worksheet.Range("D15").Column
|
||||
ITEM Assertion OK : - Range("D1").EntireRow.Valuer
|
||||
ITEM Assertion OK : - Range("D1").EntireRow.Valuer
|
||||
ITEM Assertion OK : - Range("D1").EntireRow.Columns.Count
|
||||
ITEM Assertion OK : - Range("D1").EntireColumn.Rows.Count
|
||||
ITEM Assertion OK : - Range("D15").ClearContent
|
||||
ITEM Assertion OK : - Range("M1:N2").Rows.Hidden (set)
|
||||
ITEM Assertion OK : - Range("M1:N2").Rows.Hidden (get)
|
||||
ITEM Assertion OK : - Range("M1:N2").Rows(1).Hidden (set)
|
||||
ITEM Assertion OK : - Range("M1:N2").Rows(1).Hidden (get)
|
||||
ITEM Assertion OK : - Range("M1:N2").Columns.Hidden (set)
|
||||
ITEM Assertion OK : - Range("M1:N2").Columns.Hidden (get)
|
||||
ITEM Assertion OK : - Range("M1:N2").Columns(1).Hidden (set)
|
||||
ITEM Assertion OK : - Range("M1:N2").Columns(1).Hidden (get)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (get)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set = xlDownward)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set = xlUpward)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set = xlVertical)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set = xlVertical)
|
||||
ITEM Assertion OK : - Range("B39").WrapText (get)
|
||||
ITEM Assertion OK : - Range("B39").WrapText (set)
|
||||
ITEM Assertion OK : - Range("B39").WrapText (set)
|
||||
ITEM Assertion OK : - Range("E39").MergeCells (get)
|
||||
ITEM Assertion OK : - Range("F39").MergeCells (get)
|
||||
ITEM Assertion OK : - Range("E39").MergeCells (set)
|
||||
ITEM Assertion OK : - Range("F39").MergeCells (set)
|
||||
ITEM Assertion OK : - Range("E39").MergeCells (set)
|
||||
ITEM Assertion OK : - Range("F39").MergeCells (set)
|
||||
ITEM Assertion OK : - Range("C41:C42").Replace MatchCase:=True
|
||||
ITEM Assertion OK : - Range("C41:C42").Replace MatchCase:=True
|
||||
ITEM Assertion OK : - Range("D41:D42").Replace MatchCase:=False
|
||||
ITEM Assertion OK : - Range("B39").VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").VerticalAlignment (set)
|
||||
ITEM Assertion OK : - Range("B39").VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").VerticalAlignment (set)
|
||||
ITEM Assertion OK : - Range("B39").VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").VerticalAlignment (set)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (set)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (set)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (set)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (set)
|
||||
ITEM OK (RangeTest2)
|
||||
TEST succesfully completed : RangeTest2
|
||||
END TestCalc
|
||||
Test run finished : 30/05/2007 11:33:14
|
|
@ -0,0 +1,64 @@
|
|||
Test run started : 31/05/2007 11:02:10
|
||||
BEGIN TestCalc
|
||||
TEST START : RangeTest3
|
||||
ITEM Assertion OK : - setFormulaR1C1
|
||||
ITEM Assertion OK : - getFormulaR1C1
|
||||
ITEM Assertion OK : - Range.Copy() and Range.PasteSpecial()
|
||||
ITEM Assertion OK : - Range.Copy(Range("I10"))
|
||||
ITEM Assertion OK : PasteSpecial Paste:=xlPasteValues
|
||||
ITEM Assertion OK : PasteSpecial Paste:=xlPasteFormulas
|
||||
ITEM Assertion OK : PasteSpecial Paste:=xlPasteFormats
|
||||
ITEM Assertion OK : PasteSpecial
|
||||
ITEM Assertion OK : PasteSpecial SkipBlanks:=True
|
||||
ITEM Assertion OK : PasteSpecial Operation:=xlPasteSpecialOperationAdd
|
||||
ITEM Assertion OK : PasteSpecial Operation:=xlPasteSpecialOperationSubtract
|
||||
ITEM Assertion OK : PasteSpecial Operation:=xlPasteSpecialOperationMultiply
|
||||
ITEM Assertion OK : PasteSpecial Operation:=xlPasteSpecialOperationDivide
|
||||
ITEM Assertion OK : PasteSpecial Transpose:=True
|
||||
ITEM Assertion OK : ActiveWorkbook.Name
|
||||
ITEM Assertion OK : ActiveWorkbook.FullName und ActiveWorkbook.Path
|
||||
ITEM Assertion OK : - = Range("K22").End (xlDown)
|
||||
ITEM Assertion OK : - = Range("K22").End (xlUo)
|
||||
ITEM Assertion OK : - = Range("K22").End (xlToLeft)
|
||||
ITEM Assertion OK : - = Range("K22").End (xlRight)
|
||||
ITEM Assertion OK : - ActiveSpreadsheet.Next
|
||||
ITEM Assertion OK : - ActiveSpreadsheet.Next
|
||||
ITEM Assertion OK : - ActiveSpreadsheet.Previous
|
||||
ITEM Assertion OK : - ActiveSpreadsheet.Previous
|
||||
ITEM Assertion OK : - Range("J4:J11").AutoFilter field:=1, Criteria1:="x"
|
||||
ITEM Assertion OK : - Range("J4:J11").AutoFilter field:=1, Criteria1:="<>"
|
||||
ITEM Assertion OK : - Range("J4:J11").AutoFilter field:=1, Criteria1:="="
|
||||
ITEM Assertion OK : - Range("J4:J11").AutoFilter
|
||||
ITEM Assertion OK : - ActiveSheet.Resize.Select
|
||||
ITEM Assertion OK : - Application.GoTo Reference:="R8C2"
|
||||
ITEM Assertion OK : - Application.GoTo Reference:="R[8]C[2]"
|
||||
ITEM Assertion OK : - Application.GoTo Reference:="R8C2"
|
||||
ITEM Assertion OK : - Range.Group - please check visually
|
||||
ITEM Assertion OK : - Range.Group - please check visually
|
||||
ITEM Assertion OK : - Range.Ungroup- please check visually
|
||||
ITEM Assertion OK : - Range.Ungroup - please check visually
|
||||
ITEM Assertion OK : - Range.Group - please check visually
|
||||
ITEM Assertion OK : - Range.Group - please check visually
|
||||
ITEM Assertion OK : - Range.clearOutline - please check visually
|
||||
ITEM Assertion OK : - Range.AutoOutline - please check visually
|
||||
ITEM Assertion OK : - Range.AutoOutline - please check visually
|
||||
ITEM Assertion OK : - ActiveSheet.UsedRange.Select
|
||||
ITEM Assertion FAIL : - Range("A13").AddIndent
|
||||
ITEM Assertion OK : - Range("A13").IndentLevel set
|
||||
ITEM Assertion OK : - Range("A13").IndentLevel get
|
||||
ITEM Assertion OK : - Range("A13").IndentLevel get
|
||||
ITEM Assertion OK : - Range.Copy() and Range.PasteSpecial()
|
||||
ITEM Assertion OK : - Range.Copy() and Range.PasteSpecial()
|
||||
ITEM Assertion OK : - Range.Copy() and Range.PasteSpecial()
|
||||
ITEM Assertion OK : - Range.Calculate
|
||||
ITEM Assertion OK : Worksheet.Calculate
|
||||
ITEM Assertion OK : - Application.Calculate
|
||||
ITEM Assertion OK : Global.Calculate
|
||||
ITEM Assertion OK : Calculation set
|
||||
ITEM Assertion OK : - = ActiveWorkbook.Colors(3) set
|
||||
ITEM Assertion OK : - = ActiveWorkbook.ResetColors
|
||||
ITEM Assertion OK : - = ActiveWorkbook.Colors(3) get
|
||||
ITEM FAIL (RangeTest3)
|
||||
TEST Not succesfully completed : RangeTest3
|
||||
END TestCalc
|
||||
Test run finished : 31/05/2007 11:02:12
|
|
@ -0,0 +1,36 @@
|
|||
Test run started : 08/10/2008 13:08:40
|
||||
BEGIN Format
|
||||
TEST START : Test Predefined_Number_Format_Sample function
|
||||
ITEM Assertion OK : General Number: 562486.2356
|
||||
ITEM Assertion OK : Fixed: 0.20
|
||||
ITEM Assertion OK : Standard: 562,486.24
|
||||
ITEM Assertion OK : Percent: 75.21%
|
||||
ITEM Assertion OK : Scientific: 5.62E+05
|
||||
ITEM Assertion OK : Scientific: -3.46E+03
|
||||
ITEM Assertion OK : Yes/No: No
|
||||
ITEM Assertion OK : Yes/No: Yes
|
||||
ITEM Assertion OK : True/False: False
|
||||
ITEM Assertion OK : True/False: True
|
||||
ITEM Assertion OK : On/Off: Off
|
||||
ITEM Assertion OK : On/Off: On
|
||||
TEST OK : Test Predefined_Number_Format_Sample function
|
||||
TEST START : Test Custom_Number_Format_Sample function
|
||||
ITEM Assertion OK : 00.0000: 23.6750
|
||||
ITEM Assertion OK : 00.00: 23.68
|
||||
ITEM Assertion OK : 00000: 02658
|
||||
ITEM Assertion OK : 00.00: 2658.00
|
||||
ITEM Assertion OK : ##.####: 23.675
|
||||
ITEM Assertion OK : ##.##: 23.68
|
||||
ITEM Assertion OK : #,###.##: 12,345.25
|
||||
ITEM Assertion OK : ##.00%: 25.00%
|
||||
ITEM Assertion OK : #,###: 1,000,000
|
||||
ITEM Assertion OK : ######E-###: 109838E-5
|
||||
ITEM Assertion OK : $#,###.##: $2,345.25
|
||||
ITEM Assertion OK : ##.###\%: .25%
|
||||
TEST OK : Test Custom_Number_Format_Sample function
|
||||
TEST START : Test Custom_Text_Format_Sample function
|
||||
ITEM Assertion OK : <: vba
|
||||
ITEM Assertion OK : >: VBA
|
||||
TEST OK : Test Custom_Text_Format_Sample function
|
||||
END Format
|
||||
Test run finished : 08/10/2008 13:08:40
|
|
@ -0,0 +1,20 @@
|
|||
Test run started : 18/07/2007 10:56:38
|
||||
----------------------------------------------------------------
|
||||
TestAddress
|
||||
TEST START : TestAddress
|
||||
ITEM Assertion OK : test1 'starts with' string criteria
|
||||
ITEM Assertion OK : test2 'not equal to' string criteria
|
||||
ITEM Assertion OK : test3 'ends with' string criteria
|
||||
ITEM Assertion OK : test4 field 'all'
|
||||
ITEM Assertion OK : test5 numeric '<15'
|
||||
ITEM Assertion OK : test6 numeric '>=15'
|
||||
ITEM Assertion OK : test7 numeric '<=12'
|
||||
Test Results
|
||||
============
|
||||
|
||||
Tests passed: 7
|
||||
Tests failed: 0
|
||||
|
||||
END 'TestAddress
|
||||
TEST OK : TestAddress
|
||||
Test run finished : 18/07/2007 10:56:44
|
|
@ -0,0 +1,17 @@
|
|||
Test run started : 10/09/2008 02:40:17 PM
|
||||
CalcFont_Format
|
||||
TEST START : Font_Format
|
||||
ITEM Assertion OK : correctly set font to Bold
|
||||
ITEM Assertion OK : correctly set font to Italic
|
||||
ITEM Assertion OK : correctly read FontStyle
|
||||
ITEM Assertion OK : correctly set font to Shadow
|
||||
ITEM Assertion OK : correctly set font color
|
||||
ITEM Assertion OK : correctly set font color index
|
||||
ITEM Assertion OK : correctly set font name
|
||||
ITEM Assertion OK : correctly set font outline
|
||||
ITEM Assertion OK : correctly set font size
|
||||
ITEM Assertion OK : correctly set font strikethrough
|
||||
ITEM Assertion OK : correctly set font underline
|
||||
TEST Success. : Font_Format
|
||||
CalcFont_Format
|
||||
Test run finished : 10/09/2008 02:40:17 PM
|
|
@ -0,0 +1,18 @@
|
|||
Test run started : 15/06/2009 12:49:35
|
||||
CalcZoom
|
||||
TEST START : CalcZoom
|
||||
ITEM Assertion OK : test1 read window.zoom activesheet = sheet1
|
||||
ITEM Assertion OK : test2 read window.zoom activesheet = sheet2
|
||||
ITEM Assertion OK : test3 read window.zoom activesheet = sheet3
|
||||
ITEM Assertion OK : test4 read window.zoom activesheet = sheet3
|
||||
ITEM Assertion OK : test4 read window.zoom activesheet = sheet2
|
||||
ITEM Assertion OK : test4 read window.zoom activesheet = sheet1
|
||||
TEST Success. : CalcZoom
|
||||
CalcZoom
|
||||
Test Results
|
||||
============
|
||||
|
||||
Tests passed: 6
|
||||
Tests failed: 0
|
||||
|
||||
Test run finished : 15/06/2009 12:49:37
|
|
@ -0,0 +1,31 @@
|
|||
Test run started : 04/08/2009 12:42:26
|
||||
----------------------------------------------------------------
|
||||
FinancialFuncs
|
||||
TEST START : FinancialFuncs
|
||||
ITEM Assertion OK : DDB test
|
||||
ITEM Assertion OK : FV test
|
||||
ITEM Assertion OK : IPmt test
|
||||
ITEM Assertion FAIL : IRR test
|
||||
ITEM Assertion OK : MIRR test
|
||||
ITEM Assertion FAIL : NPer test
|
||||
ITEM Assertion FAIL : NPV test
|
||||
ITEM Assertion FAIL : Pmt test
|
||||
ITEM Assertion OK : PPmt test
|
||||
ITEM Assertion OK : PV test
|
||||
ITEM Assertion FAIL : Rate test
|
||||
ITEM Assertion OK : SLN test
|
||||
ITEM Assertion OK : SYD test
|
||||
Test Results
|
||||
============
|
||||
|
||||
IRR test Failed: expected 35.8625323270733 got 35.8625323273411
|
||||
NPer test Failed: expected 21.5365977313406 got 21.5365977313408
|
||||
NPV test Failed: expected 3874.42183648785 got 3874.42183648784
|
||||
Pmt test Failed: expected 20276.3942884139 got 20276.3942884138
|
||||
Rate test Failed: expected 4.67819164224935E-02 got 4.67819164225E-02
|
||||
Tests passed: 8
|
||||
Tests failed: 5
|
||||
|
||||
END 'FinancialFuncs
|
||||
TEST OK : FinancialFuncs
|
||||
Test run finished : 04/08/2009 12:42:36
|
|
@ -0,0 +1,30 @@
|
|||
Test run started : 12/05/2009 12:36:15
|
||||
----------------------------------------------------------------
|
||||
TestAddress
|
||||
TEST START : TestAddress
|
||||
ITEM Assertion OK : test1: res = Not ( A > B )
|
||||
ITEM Assertion OK : test2: res = Not ( B > A )
|
||||
ITEM Assertion OK : test3: res = Not ( D )
|
||||
ITEM Assertion OK : test4: res = Not A
|
||||
ITEM Assertion OK : test5: res = ( A > D )
|
||||
ITEM Assertion OK : test6: res = ( D > A )
|
||||
ITEM Assertion OK : test7: res = ( A < D )
|
||||
ITEM Assertion OK : test8: res = ( D < A )
|
||||
ITEM Assertion OK : test9: res = ( A >= D )
|
||||
ITEM Assertion OK : test10: res = ( D >= A )
|
||||
ITEM Assertion OK : test11: res = ( A <= D )
|
||||
ITEM Assertion OK : test12: res = ( D <= A )
|
||||
ITEM Assertion OK : test13: res = ( D = A )
|
||||
ITEM Assertion OK : test14: res = ( A = D )
|
||||
ITEM Assertion OK : test15: res = ( D <> A )
|
||||
ITEM Assertion OK : test16: res = ( A <> D )
|
||||
ITEM Assertion OK : test17: ( A = D ) = True
|
||||
Test Results
|
||||
============
|
||||
|
||||
Tests passed: 17
|
||||
Tests failed: 0
|
||||
|
||||
END 'TestAddress
|
||||
TEST OK : TestAddress
|
||||
Test run finished : 12/05/2009 12:36:15
|
|
@ -0,0 +1,45 @@
|
|||
Test run started : 17/07/2007 20:54:56
|
||||
----------------------------------------------------------------
|
||||
MiscRangeTests
|
||||
TEST START : MiscRangeTests
|
||||
ITEM Assertion OK : test 1
|
||||
ITEM Assertion OK : test 2
|
||||
ITEM Assertion OK : test 3
|
||||
ITEM Assertion OK : test 4
|
||||
ITEM Assertion OK : test 5
|
||||
ITEM Assertion OK : test 6
|
||||
ITEM Assertion OK : test 7
|
||||
ITEM Assertion OK : test 8
|
||||
ITEM Assertion OK : test 9
|
||||
ITEM Assertion OK : test 10
|
||||
ITEM Assertion OK : test 11
|
||||
ITEM Assertion OK : test 12
|
||||
ITEM Assertion OK : test 13
|
||||
ITEM Assertion OK : test 14
|
||||
ITEM Assertion OK : test 15
|
||||
ITEM Assertion OK : test 16
|
||||
ITEM Assertion OK : test 17
|
||||
ITEM Assertion OK : test 18
|
||||
ITEM Assertion OK : test 19
|
||||
ITEM Assertion OK : test 20
|
||||
ITEM Assertion OK : test 21
|
||||
ITEM Assertion OK : test 22
|
||||
ITEM Assertion OK : test 23
|
||||
ITEM Assertion OK : test 24
|
||||
ITEM Assertion OK : test 25
|
||||
ITEM Assertion OK : test 26
|
||||
ITEM Assertion OK : test 27
|
||||
ITEM Assertion OK : test 28
|
||||
ITEM Assertion OK : test 29
|
||||
ITEM Assertion OK : test 30
|
||||
ITEM Assertion OK : test 31
|
||||
No. tests: 31
|
||||
Summary
|
||||
=======
|
||||
Run: 31
|
||||
Passed: 31
|
||||
Failed: 0
|
||||
|
||||
END 'MiscRangeTests
|
||||
TEST OK : MiscRangeTests
|
||||
Test run finished : 17/07/2007 20:55:03
|
|
@ -0,0 +1,10 @@
|
|||
Test run started : 07/24/2008 05:06:12 PM
|
||||
----------------------------------------------------------------
|
||||
TEST START : PageBreaks-Issue
|
||||
ITEM Assertion OK : HPageBreaks.Count is 3
|
||||
ITEM Assertion OK : HPageBreak.Type is -4135
|
||||
ITEM Assertion OK : HPageBreak.Location: Range.Row is 5
|
||||
ITEM Assertion OK : HPageBreak.Delete: HPageBreaks.Count is 2
|
||||
END 'PageBreaks-Issue' Symbol
|
||||
TEST OK : PageBreaks-Issue
|
||||
Test run finished : 07/24/2008 05:06:13 PM
|
|
@ -0,0 +1,68 @@
|
|||
Test run started : 19/06/2007 11:14:01
|
||||
----------------------------------------------------------------
|
||||
ClearFormtsIssue
|
||||
TEST START : ClearFormtsIssue
|
||||
ITEM Assertion OK : Range.Font.Bold is: True
|
||||
ITEM Assertion OK : Range.Font.Bold is: False
|
||||
END 'ClearFormtsIssue' Symbol
|
||||
TEST OK : ClearFormtsIssue
|
||||
----------------------------------------------------------------
|
||||
VerticalAlignment-Issue
|
||||
TEST START : VerticalAlignment-Issue
|
||||
ITEM Assertion OK : - Range.VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range.VerticalAlignment (set)
|
||||
ITEM Assertion OK : - Range.VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range.VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range.VerticalAlignment (set)
|
||||
ITEM Assertion OK : - Range.VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range.VerticalAlignment (set)
|
||||
ITEM Assertion OK : Range.VeritcalAlignment is Null
|
||||
END 'VerticalAlignment-Issue' Symbol
|
||||
TEST OK : VerticalAlignment-Issue
|
||||
----------------------------------------------------------------
|
||||
HorizontalAlignment-Issue
|
||||
TEST START : HorizontalAlignment-Issue
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (set)
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (set)
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (set)
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range.HorizontalAlignment (set)
|
||||
ITEM Assertion OK : Range.HorizontalAlignment is Null
|
||||
END 'HorizontalAlignment-Issue' Symbol
|
||||
TEST OK : HorizontalAlignment-Issue
|
||||
----------------------------------------------------------------
|
||||
WrapText-Issue
|
||||
TEST START : WrapText-Issue
|
||||
ITEM Assertion OK : - Range.WrapText (get)
|
||||
ITEM Assertion OK : - Range.WrapText (get)
|
||||
ITEM Assertion OK : Range.WrapText is Null
|
||||
END 'WrapText-Issue' Symbol
|
||||
TEST OK : WrapText-Issue
|
||||
----------------------------------------------------------------
|
||||
FontBorderIssues
|
||||
TEST START : FontBorderIssues
|
||||
ITEM Assertion OK : - = Borders.Color (getColor)
|
||||
ITEM Assertion OK : - = Font.Color (getColor)
|
||||
END 'FontBorderIssues' Symbol
|
||||
TEST OK : FontBorderIssues
|
||||
----------------------------------------------------------------
|
||||
RangeSizeIssues
|
||||
TEST START : RangeSizeIssues
|
||||
ITEM Assertion OK : Range.Left is: 118.8432
|
||||
ITEM Assertion OK : Range.Top is: 92.16585
|
||||
ITEM Assertion OK : Range.Width is: 226.2
|
||||
ITEM Assertion OK : Range.Height is: 271.5
|
||||
END 'RangeSizeIssues' Symbol
|
||||
TEST OK : RangeSizeIssues
|
||||
----------------------------------------------------------------
|
||||
ApplicationIssues
|
||||
TEST START : ApplicationIssues
|
||||
ITEM Assertion OK : Range.Address is: $E$8:$G$13,$G$13:$K$19
|
||||
ITEM Assertion OK : Range.Address is: $E$8:$G$13,$G$13:$K$19
|
||||
ITEM Assertion OK : Application.ActiveSheet.Name: Sheet1
|
||||
END 'ApplicationIssues' Symbol
|
||||
TEST OK : ApplicationIssues
|
||||
Test run finished : 19/06/2007 11:14:02
|
|
@ -0,0 +1,8 @@
|
|||
Test run started : 19/06/2007 11:26:09
|
||||
----------------------------------------------------------------
|
||||
MyGoalseek-Issue
|
||||
TEST START : MyGoalseek-Issue
|
||||
ITEM Assertion OK : Variable Range value: 15
|
||||
END 'MyGoalseek-Issue' Symbol
|
||||
TEST OK : MyGoalseek-Issue
|
||||
Test run finished : 19/06/2007 11:26:10
|
|
@ -0,0 +1,280 @@
|
|||
Test run started : 10/03/2008 15:15:11
|
||||
----------------------------------------------------------------
|
||||
ApplicationMethods
|
||||
TEST START : ApplicationMethods
|
||||
ITEM Assertion OK : Name of Workbook is: Ranges.xls
|
||||
ITEM Assertion OK : Address of Application.Columns is: $A:$A
|
||||
ITEM Assertion OK : Address of Application.Rows is: $1:$1
|
||||
ITEM Assertion OK : Address of Application.Range is: $1:$1,$5:$7
|
||||
ITEM Assertion OK : Please check manually: DefaultFilePath is: /data4/home/npower/Documents
|
||||
ITEM Assertion OK : Please check manually: Library Path is: /data4/home/npower/.ooo-2.0/user/basic
|
||||
ITEM Assertion OK : Please check manually: Template Path is: /data4/home/npower/.ooo-2.0/user/template
|
||||
ITEM Assertion OK : FileSeparator is /
|
||||
ITEM Assertion OK : Name of ActiveWorkbook is: Ranges.xls
|
||||
END 'ApplicationMethods' Symbol
|
||||
TEST OK : ApplicationMethods
|
||||
----------------------------------------------------------------
|
||||
Insert-Issue
|
||||
TEST START : Insert-Issue
|
||||
ITEM Assertion OK : Insert with xlShiftToRight: 10
|
||||
END 'Insert-Issue' Symbol
|
||||
TEST OK : Insert-Issue
|
||||
----------------------------------------------------------------
|
||||
MergeCells-Issue
|
||||
TEST START : MergeCells-Issue
|
||||
ITEM Assertion OK : Range.MergeCells is True
|
||||
ITEM Assertion FAIL : MergeCells is null: False
|
||||
ITEM Assertion OK : RowCount after Merge: 13
|
||||
ITEM Assertion OK : Range.MergeCells is False
|
||||
ITEM Assertion OK : MergeCells is null: False
|
||||
ITEM Assertion FAIL : MergeCells of Second Area is null : False
|
||||
ITEM Assertion FAIL : MergeCells of Ranges is Null: False
|
||||
ITEM Assertion OK : RowCount after Merge: 7
|
||||
ITEM Assertion OK : Range.MergeCells is False
|
||||
ITEM Assertion OK : MergeCells is null: False
|
||||
ITEM Assertion OK : RowCount after Merge: 7
|
||||
END 'MergeCells-Issue' Symbol
|
||||
TEST OK : MergeCells-Issue
|
||||
----------------------------------------------------------------
|
||||
Areas-Issue
|
||||
TEST START : Areas-Issue
|
||||
ITEM Assertion OK : Range Areas Count is2
|
||||
ITEM Assertion OK : First Range Address is: $E$8:$G$13
|
||||
ITEM Assertion OK : First Row is: 8
|
||||
ITEM Assertion OK : First Column is: 5
|
||||
ITEM Assertion OK : EntireRow Address is: $8:$13,$13:$19
|
||||
ITEM Assertion OK : EntireColumn Address is: $E:$G,$G:$K
|
||||
ITEM Assertion OK : Range Count:53
|
||||
END 'Areas-Issue' Symbol
|
||||
TEST OK : Areas-Issue
|
||||
----------------------------------------------------------------
|
||||
Fill-Methods-Issue
|
||||
TEST START : Fill-Methods-Issue
|
||||
ITEM Assertion OK : Range Value after FillDown: MyFillValue
|
||||
ITEM Assertion OK : Range Value after FillDown: MyFillValue
|
||||
ITEM Assertion OK : Range Value after FillDown: MyRightFillValue
|
||||
ITEM Assertion OK : Range Value after FillDown: MyBottomFillValue
|
||||
END 'Fill-Methods-Issue' Symbol
|
||||
TEST OK : Fill-Methods-Issue
|
||||
----------------------------------------------------------------
|
||||
Range/Item-Method-Issue
|
||||
TEST START : Range/Item-Method-Issue
|
||||
ITEM Assertion OK : Range of multiple columns is: $A:$A,$C:$C
|
||||
ITEM Assertion OK : Range of multiple rows is: $1:$1,$5:$7
|
||||
ITEM Assertion OK : Range of several columns is: $C:$E,$D:$D
|
||||
ITEM Assertion OK : Range of several rows is: $5:$8,$6:$10
|
||||
ITEM Assertion OK : Range of several single cells is: $C$5,$E$8
|
||||
ITEM Assertion OK : Range of several named ranges is: $L$1:$M$6,$E$8:$G$13,$G$13:$K$19
|
||||
ITEM Assertion OK : Range of a single Item Cell is: $E$21
|
||||
ITEM Assertion OK : Range of a single Item Cell is: $F$21
|
||||
ITEM Assertion OK : Range of a single Item Cell is: $F$10
|
||||
END 'Range/Item-Method-Issue' Symbol
|
||||
TEST OK : Range/Item-Method-Issue
|
||||
----------------------------------------------------------------
|
||||
R1C1-Formulas-Issue
|
||||
TEST START : R1C1-Formulas-Issue
|
||||
ITEM Assertion OK : R1C1 Range.Formula is: =IF(OR(R[-2]C[1]=0,RC[2]="YES"),"")
|
||||
ITEM Assertion OK : Range.Formula is: =IF(OR(J8=0,K10="YES"),"")
|
||||
END 'R1C1-Formulas-Issue' Symbol
|
||||
TEST OK : R1C1-Formulas-Issue
|
||||
----------------------------------------------------------------
|
||||
Verify_Delete
|
||||
TEST START : Verify_Delete
|
||||
ITEM Assertion OK : Ranges are intersecting: $G$13
|
||||
ITEM Assertion OK : Delete with Default: $AJ$4
|
||||
ITEM Assertion OK : Delete with ShifttoLeft: $AJ$4
|
||||
ITEM Assertion OK : Delete with ShiftUp: $M$22
|
||||
END 'Verify_Delete' Symbol
|
||||
TEST OK : Verify_Delete
|
||||
----------------------------------------------------------------
|
||||
Value-Issue
|
||||
TEST START : Value-Issue
|
||||
ITEM Assertion OK : Value of Range is: 12.3
|
||||
ITEM Assertion OK : Text of Range is: 12.3
|
||||
ITEM Assertion OK : Range has Formula: False
|
||||
ITEM Assertion OK : Cell has Formula: False
|
||||
ITEM Assertion FAIL : Text of Range is null: False
|
||||
ITEM Assertion OK : Range has Formula: True
|
||||
ITEM Assertion OK : Cell has Formula: True
|
||||
ITEM Assertion OK : Value of Cell is: 12
|
||||
ITEM Assertion OK : Application.Calculation is : -4135
|
||||
ITEM Assertion OK : Calculation is automated: True
|
||||
ITEM Assertion OK : Range has Formula: True
|
||||
ITEM Assertion OK : Value of Cell is: 16
|
||||
ITEM Assertion OK : Text of Cell is: 16
|
||||
ITEM Assertion OK : Text of Cell is: 16
|
||||
ITEM Assertion OK : Range has Formula after 'ClearContents: False
|
||||
ITEM Assertion OK : Text of Cell is:
|
||||
ITEM Assertion OK : Text of Cell is:
|
||||
END 'Value-Issue' Symbol
|
||||
TEST OK : Value-Issue
|
||||
----------------------------------------------------------------
|
||||
AutoFit issue
|
||||
TEST START : AutoFit issue
|
||||
ITEM Assertion OK : Columns.AutoFit: CurrentWidth is 680
|
||||
ITEM Assertion OK : Rows.AutoFit: CurrentHeight is 554
|
||||
END 'AutoFit issue' Symbol
|
||||
TEST OK : AutoFit issue
|
||||
----------------------------------------------------------------
|
||||
Selections
|
||||
TEST START : Selections
|
||||
ITEM Assertion OK : ActiveCell is : $E$8
|
||||
ITEM Assertion OK : Active Cell is : $E$8
|
||||
ITEM Assertion OK : Number of Cells in Range: 52
|
||||
ITEM Assertion OK : Number of Cells in Range: 52
|
||||
ITEM Assertion OK : Number of Cells in Range: 52
|
||||
END 'Selections' Symbol
|
||||
TEST OK : Selections
|
||||
----------------------------------------------------------------
|
||||
Offset-Resize
|
||||
TEST START : Offset-Resize
|
||||
ITEM Assertion OK : Offset is : $G$10:$I$15,$I$15:$M$21
|
||||
ITEM Assertion OK : Offset is : $G$7:$I$12,$I$12:$M$18
|
||||
ITEM Assertion OK : Resized Range is : $A$20:$D$23
|
||||
END 'Offset-Resize' Symbol
|
||||
TEST OK : Offset-Resize
|
||||
----------------------------------------------------------------
|
||||
Ranges-Address
|
||||
TEST START : Ranges-Address
|
||||
ITEM Assertion OK : Range Address is: $E$8:$G$13,$G$13:$K$19
|
||||
ITEM Assertion OK : Range Address is: $E8:$G13,$G13:$K19
|
||||
ITEM Assertion OK : Range Address is: E$8:G$13,G$13:K$19
|
||||
ITEM Assertion OK : Range Address is: R8C5:R13C7,R13C7:R19C11
|
||||
ITEM Assertion FAIL : Range Address is: R8C5:R13C7,R13C7:R19C11
|
||||
ITEM Assertion OK : Range Address is: R8C5:R13C7,R13C7:R19C11
|
||||
ITEM Assertion OK : Range Address is: R[6]C[3]:R[11]C[5],R[11]C[5]:R[17]C[9]
|
||||
ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$E$8:$G$13,$G$13:$K$19
|
||||
END 'Ranges-Address' Symbol
|
||||
TEST OK : Ranges-Address
|
||||
----------------------------------------------------------------
|
||||
Range-Address
|
||||
TEST START : Range-Address
|
||||
ITEM Assertion OK : Range Address is: $E$8:$G$13
|
||||
ITEM Assertion OK : Range Address is: $E8:$G13
|
||||
ITEM Assertion OK : Range Address is: E$8:G$13
|
||||
ITEM Assertion OK : Range Address is: R8C5:R13C7
|
||||
ITEM Assertion FAIL : Range Address is: R8C5:R13C7
|
||||
ITEM Assertion OK : Range Address is: R8C5:R13C7
|
||||
ITEM Assertion OK : Range Address is: R[6]C[3]:R[11]C[5]
|
||||
ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$E$8:$G$13
|
||||
END 'Range-Address' Symbol
|
||||
TEST OK : Range-Address
|
||||
----------------------------------------------------------------
|
||||
Column-Address
|
||||
TEST START : Column-Address
|
||||
ITEM Assertion OK : Range Address is: $F$8:$F$13
|
||||
ITEM Assertion OK : Range Address is: $F8:$F13
|
||||
ITEM Assertion OK : Range Address is: F$8:F$13
|
||||
ITEM Assertion OK : Range Address is: R8C6:R13C6
|
||||
ITEM Assertion FAIL : Range Address is: R8C6:R13C6
|
||||
ITEM Assertion OK : Range Address is: R8C6:R13C6
|
||||
ITEM Assertion OK : Range Address is: R[6]C[4]:R[11]C[4]
|
||||
ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$F$8:$F$13
|
||||
END 'Column-Address' Symbol
|
||||
TEST OK : Column-Address
|
||||
----------------------------------------------------------------
|
||||
Row-Address
|
||||
TEST START : Row-Address
|
||||
ITEM Assertion OK : Range Address is: $E$9:$G$9
|
||||
ITEM Assertion OK : Range Address is: $E9:$G9
|
||||
ITEM Assertion OK : Range Address is: E$9:G$9
|
||||
ITEM Assertion OK : Range Address is: R9C5:R9C7
|
||||
ITEM Assertion FAIL : Range Address is: R9C5:R9C7
|
||||
ITEM Assertion OK : Range Address is: R9C5:R9C7
|
||||
ITEM Assertion OK : Range Address is: R[7]C[3]:R[7]C[5]
|
||||
ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$E$9:$G$9
|
||||
END 'Row-Address' Symbol
|
||||
TEST OK : Row-Address
|
||||
----------------------------------------------------------------
|
||||
SingleCell-Address
|
||||
TEST START : SingleCell-Address
|
||||
ITEM Assertion OK : Range Address is: $F$9
|
||||
ITEM Assertion OK : Range Address is: $F9
|
||||
ITEM Assertion OK : Range Address is: F$9
|
||||
ITEM Assertion OK : Range Address is: R9C6
|
||||
ITEM Assertion FAIL : Range Address is: R9C6
|
||||
ITEM Assertion OK : Range Address is: R9C6
|
||||
ITEM Assertion OK : Range Address is: R[7]C[4]
|
||||
ITEM Assertion OK : RangeAddress is [Ranges.xls]Sheet1!$F$9
|
||||
END 'SingleCell-Address' Symbol
|
||||
TEST OK : SingleCell-Address
|
||||
----------------------------------------------------------------
|
||||
Heights and Widths
|
||||
TEST START : Heights and Widths
|
||||
ITEM Assertion OK : Range RowHeight is 40
|
||||
ITEM Assertion OK : Range ColumnWidth is 50
|
||||
ITEM Assertion OK : Range Height is 240
|
||||
ITEM Assertion OK : Range Width is 795
|
||||
ITEM Assertion OK : Range RowHeight is 50
|
||||
ITEM Assertion OK : Range ColumnWidth is 50
|
||||
ITEM Assertion OK : Range Height is 300
|
||||
ITEM Assertion OK : Range Width is 795
|
||||
ITEM Assertion OK : RowHeight is null: True
|
||||
ITEM Assertion OK : ColumnWidth is null: True
|
||||
END 'Heights and Widths' Symbol
|
||||
TEST OK : Heights and Widths
|
||||
----------------------------------------------------------------
|
||||
RangeRowColumn-Issue
|
||||
TEST START : RangeRowColumn-Issue
|
||||
ITEM Assertion OK : Row is: 8
|
||||
ITEM Assertion OK : Column is: 5
|
||||
ITEM Assertion OK : EntireRow.Columns.Count = 256
|
||||
ITEM Assertion OK : EntireColumn.Rows.Count = 131072
|
||||
END 'RangeRowColumn-Issue' Symbol
|
||||
TEST OK : RangeRowColumn-Issue
|
||||
----------------------------------------------------------------
|
||||
Replace-Issue
|
||||
TEST START : Replace-Issue
|
||||
ITEM Assertion OK : Value after Replace: YourValue
|
||||
ITEM Assertion OK : Value after Replace: YourValue
|
||||
ITEM Assertion OK : Value after Replace: ReplaceValue
|
||||
ITEM Assertion OK : Value after Replace: New ReplaceValue
|
||||
ITEM Assertion OK : Value after Replace: New ReplaceValue
|
||||
ITEM Assertion OK : Value after Replace: New Replace
|
||||
ITEM Assertion OK : Value after Replace:
|
||||
END 'Replace-Issue' Symbol
|
||||
TEST OK : Replace-Issue
|
||||
----------------------------------------------------------------
|
||||
Hidden-Issue
|
||||
TEST START : Hidden-Issue
|
||||
ITEM Assertion OK : - Range.Rows.Hidden (set)
|
||||
ITEM Assertion OK : - Range.Rows.Hidden (get)
|
||||
ITEM Assertion OK : - Range.Rows.Item(1).Hidden (set)
|
||||
ITEM Assertion OK : - Range.Rows.Item(1).Hidden (get)
|
||||
ITEM Assertion OK : - Range.Columns.Hidden (set)
|
||||
ITEM Assertion OK : - Range.Columns.Hidden (get)
|
||||
ITEM Assertion OK : - Range.Columns.Item(1).Hidden (set)
|
||||
ITEM Assertion OK : - Range.Columns.Item(1).Hidden (get)
|
||||
END 'Hidden-Issue' Symbol
|
||||
TEST OK : Hidden-Issue
|
||||
----------------------------------------------------------------
|
||||
End issue
|
||||
TEST START : End issue
|
||||
ITEM Assertion OK : - = $E$48
|
||||
ITEM Assertion OK : - = $E$1
|
||||
ITEM Assertion OK : - = $E$3
|
||||
ITEM Assertion OK : - = $A$8
|
||||
ITEM Assertion OK : - = $B$8
|
||||
ITEM Assertion OK : - = $IV$8
|
||||
ITEM Assertion OK : - = $Z$8
|
||||
END 'End issue' Symbol
|
||||
TEST OK : End issue
|
||||
----------------------------------------------------------------
|
||||
Outline issue
|
||||
TEST START : Outline issue
|
||||
ITEM Assertion OK : - Range.clearOutline - please check visually
|
||||
ITEM Assertion OK : - Range.AutoOutline - please check visually
|
||||
ITEM Assertion OK : - Range.AutoOutline - please check visually
|
||||
END 'Outline issue' Symbol
|
||||
TEST OK : Outline issue
|
||||
----------------------------------------------------------------
|
||||
Validation
|
||||
TEST START : Validation
|
||||
ITEM Assertion OK : Validation Input Message is : Attention!
|
||||
ITEM Assertion OK : Validation Input Message is : Enter an integer from five to ten
|
||||
ITEM Assertion OK : Validation Error Title is : You must enter a number from five to ten
|
||||
ITEM Assertion OK : Validation Error Message is : An Error occured
|
||||
ITEM Assertion OK : Validation Error Title is : Microsoft Excel
|
||||
END 'Validation' Symbol
|
||||
TEST OK : Validation
|
||||
Test run finished : 10/03/2008 15:15:13
|
|
@ -0,0 +1,77 @@
|
|||
Test run started : 10/16/2007 05:25:21 PM
|
||||
BEGIN Shapes_Collection_Behaviour
|
||||
TEST START : Shapes_Collection_Behaviour
|
||||
ITEM Assertion OK : Name of indexed shape should be 'Sheet2Shape1'
|
||||
ITEM Assertion OK : Name of indexed shape should be 'Sheet2Shape2'
|
||||
TEST Success. : Shapes_Collection_Behaviour
|
||||
END Shapes_Collection_Behaviour
|
||||
BEGIN Shapes_Select_Item
|
||||
TEST START : Shapes_Select_Item
|
||||
ITEM Assertion OK : Correctly selected shape through Range
|
||||
ITEM Assertion OK : Correctly selected shape through Item
|
||||
ITEM Assertion OK : Needs to be visually checked. Is there a line on the document?
|
||||
ITEM Assertion OK : Needs to be visually checked. Are All Shapes Selected?
|
||||
TEST Success. : Shapes_Select_Item
|
||||
END Shapes_Select_Item
|
||||
BEGIN Shapes_Fill
|
||||
TEST START : Shapes_Fill
|
||||
ITEM Assertion OK : correctly set visibility of shape fill
|
||||
ITEM Assertion OK : correctly set transparency of shape line
|
||||
ITEM Assertion OK : correctly set forecolor of shape fill
|
||||
ITEM Assertion FAIL : correctly set backcolor of shape fill
|
||||
ITEM Assertion OK : the success of the TwoColorGradient method needs to be verified visually!
|
||||
ITEM Assertion OK : correctly set forecolor of shape fill
|
||||
ITEM Assertion FAIL : correctly set forecolor of shape fill
|
||||
TEST Success. : Shapes_Fill
|
||||
END Shapes_Fill
|
||||
BEGIN Shapes_Line
|
||||
TEST START : Shapes_Line
|
||||
ITEM Assertion FAIL : correctly set weight of shape line
|
||||
ITEM Assertion OK : correctly set visibility of shape line
|
||||
ITEM Assertion OK : correctly set transparency of shape line
|
||||
ITEM Assertion OK : correctly set dash style of shape line
|
||||
ITEM Assertion OK : correctly set dash style of shape line
|
||||
ITEM Assertion OK : correctly set forecolor of shape line
|
||||
ITEM Assertion FAIL : correctly set backcolor of shape line
|
||||
TEST Success. : Shapes_Line
|
||||
END Shapes_Line
|
||||
BEGIN Shapes_TextFrame
|
||||
TEST START : Shapes_TextFrame
|
||||
ITEM Assertion OK : correctly set Autosize of Shape TextFrame
|
||||
TEST Success. : Shapes_TextFrame
|
||||
END Shapes_TextFrame
|
||||
BEGIN Shapes_SimpleGeometry
|
||||
TEST START : Shapes_SimpleGeometery
|
||||
ITEM Assertion OK : shape height should be 47.0425168477155 and got 46.9984222363199
|
||||
ITEM Assertion OK : shape width should be 101.467710269751 and got 101.423615658355
|
||||
ITEM Assertion OK : shape left should be 68.5574761223637 and got 68.5417279658754
|
||||
ITEM Assertion OK : shape top should be 42.0251943291216 and got 42.0094461726333
|
||||
ITEM Assertion OK : shape rotation should be 0 and got 0
|
||||
ITEM Assertion OK : shape rotation should be 25 and got 25
|
||||
ITEM Assertion OK : shape incrementrotation should be 50 and got 50
|
||||
ITEM Assertion OK : shape incrementleft should be 70.6834602404119 and got 70.6677120839236
|
||||
ITEM Assertion OK : shape incrementtop should be 91.262986503119 and got 91.2472383466307
|
||||
TEST Success. : Shapes_SimpleGeometery
|
||||
END Shapes_SimpleGeometry
|
||||
BEGIN Shapes_Range
|
||||
TEST START : Shapes_Range
|
||||
ITEM Assertion OK : expected Sheets(2).Shapes.Range(1) to contain 1 element, it contains 1
|
||||
ITEM Assertion OK : expected Sheets(2).Shapes.Range(1) to return Sheet2Shape1 got Sheet2Shape1
|
||||
ITEM Assertion OK : expected Sheets(2).Shapes.Range(Sheet2Shape3) to contain 1 element, it contains 1
|
||||
ITEM Assertion OK : expected Sheets(2).Shapes.Range(Sheet2Shape3) to return Sheet2Shape3 got Sheet2Shape3
|
||||
ITEM Assertion OK : expected Sheets(2).Shapes.Range(Array(3, 1) to contain 2 elements, it contains 2
|
||||
ITEM Assertion OK : expected Sheets(2).Shapes.Range(Array(3, 1) to return concated element/shape names Sheet2Shape3Sheet2Shape1 and got Sheet2Shape3Sheet2Shape1
|
||||
ITEM Assertion OK : expected Sheets(2).Shapes.Range(Array('Sheet2Shape3', 1, 'Sheet2Shape2')) to contain 3 elements, it contains 3
|
||||
ITEM Assertion OK : expected Sheets(2).Shapes.Range(Array('Sheet2Shape3', 1, 'Sheet2Shape2')) to return concated element/shape names Sheet2Shape3Sheet2Shape1Sheet2Shape2 and got Sheet2Shape3Sheet2Shape1Sheet2Shape2
|
||||
TEST Success. : Shapes_Range
|
||||
END Shapes_Range
|
||||
BEGIN Shapes_ShapeRange
|
||||
TEST START : Shapes_ShapeRange
|
||||
ITEM Assertion OK : ShapeRange.IncrementLeft shp1.left should be 90.6677120839236 and got 90.6519627935771
|
||||
ITEM Assertion OK : ShapeRange.IncrementLeft shp2.left should be 240.02518299054 and got 240.009433700193
|
||||
ITEM Assertion OK : ShapeRange.IncrementTop shp1.Top should be 111.247238346631 and got 111.231489056284
|
||||
ITEM Assertion OK : ShapeRange.IncrementTop shp2.Top should be 65.0708633026228 and got 65.0551140122763
|
||||
ITEM Assertion OK : ShapeRange.IncrementRotation shp1.Rotation should be 70 and got 70
|
||||
ITEM Assertion OK : ShapeRange.IncrementRotation shp2.Rotation should be 20 and got 20
|
||||
END Shapes_ShapeRange
|
||||
Test run finished : 10/16/2007 05:25:22 PM
|
|
@ -0,0 +1,9 @@
|
|||
Test run started : 05/29/2008 02:51:03 PM
|
||||
BEGIN StrConv
|
||||
TEST START : Test StrConv function
|
||||
ITEM Assertion OK : Converts the string to uppercase characters:ABC EFG HIJ
|
||||
ITEM Assertion OK : Converts the string to lowercase characters:abc efg hij
|
||||
ITEM Assertion OK : Converts the first letter of every word in string to uppercase:Abc Efg Hij
|
||||
TEST OK : Test StrConv function
|
||||
END StrConv
|
||||
Test run finished : 05/29/2008 02:51:03 PM
|
|
@ -0,0 +1,14 @@
|
|||
Test run started : 2008/07/10 11:57:05
|
||||
----------------------------------------------------------------
|
||||
TestCaseName
|
||||
TEST START : TestCaseName
|
||||
ITEM Assertion OK : Something has been done.
|
||||
Test Results
|
||||
============
|
||||
|
||||
Tests passed: 1
|
||||
Tests failed: 0
|
||||
|
||||
END 'TestCaseName
|
||||
TEST OK : TestCaseName
|
||||
Test run finished : 2008/07/10 11:57:05
|
|
@ -0,0 +1,67 @@
|
|||
Test run started : 12/05/2009 11:23:35
|
||||
----------------------------------------------------------------
|
||||
TestAddress
|
||||
TEST START : TestAddress
|
||||
ITEM Assertion OK : test1 Range('e3:f3') A1 style addressing
|
||||
ITEM Assertion OK : test2 Range('e3:f3') R1C1 style addressing
|
||||
ITEM Assertion OK : test3 Range ('e:f') A1 style addressing
|
||||
ITEM Assertion OK : test4 Range ('e:f') R1C1 style addressing
|
||||
ITEM Assertion OK : test5 Columns A1 style addressing
|
||||
ITEM Assertion OK : test6 Columns R1C1 style addressing
|
||||
ITEM Assertion OK : test7 Columns(3) A1 style addressing
|
||||
ITEM Assertion OK : test8 Columns(3) R1C1 style addressing
|
||||
ITEM Assertion OK : test9 Columns('e') A1 style addressing
|
||||
ITEM Assertion OK : test10 Columns('e') R1C1 style addressing
|
||||
ITEM Assertion OK : test11 Columns('b:d') A1 style addressing
|
||||
ITEM Assertion OK : test12 Columns('b:d') R1C1 style addressing
|
||||
ITEM Assertion OK : test13 Range('c1:g10').Columns A1 style addressing
|
||||
ITEM Assertion OK : test14 Range('c1:g10').Columns R1C1 style addressing
|
||||
ITEM Assertion OK : test15 Range('c1:g10').Columns(1) A1 style addressing
|
||||
ITEM Assertion OK : test16 Range('c1:g10').Columns(1) R1C1 style addressing
|
||||
ITEM Assertion OK : test17 Range('c1:g10').Columns('a') A1 style addressing
|
||||
ITEM Assertion OK : test18 Range('c1:g10').Columns('a') R1C1 style addressing
|
||||
ITEM Assertion OK : test19 Range('c1:g10').Columns('c') A1 style addressing
|
||||
ITEM Assertion OK : test20 Range('c1:g10').Columns('c') R1C1 style addressing
|
||||
ITEM Assertion OK : test21 Range('c1:g10').Columns('x:z') A1 style addressing
|
||||
ITEM Assertion OK : test22 Range('c1:g10').Columns('x:z') R1C1 style addressing
|
||||
ITEM Assertion OK : test23 Range('c1:g10').Columns(30) A1 style addressing
|
||||
ITEM Assertion OK : test24 Range('c1:g10').Columns(30) R1C1 style addressing
|
||||
ITEM Assertion OK : test25 Worksheets('Sheet2').Cells(1, 1) A1 style addressing
|
||||
ITEM Assertion OK : test26 Worksheets('Sheet2').Cells(1, 1) A1 style addressing, RowAddressAbsolute is false
|
||||
ITEM Assertion OK : test27 Worksheets('Sheet2').Cells(1, 1) A1 style addressing, ColAddressAbsolute is false
|
||||
ITEM Assertion OK : test28 Worksheets('Sheet2').Cells(1, 1) R1C1 style addressing
|
||||
ITEM Assertion OK : test29 Worksheets('Sheet2').Range('A1:E5').EntireColumn A1 style addressing
|
||||
ITEM Assertion OK : test30 Worksheets('Sheet2').Range('A1').EntireColumn A1 style addressing
|
||||
ITEM Assertion OK : test31 Worksheets('Sheet2').Range('A1:E5').EntireRow A1 style addressing
|
||||
ITEM Assertion OK : test32 Worksheets('Sheet2').Range('A1') A1 style addressing
|
||||
ITEM Assertion OK : test33 Worksheets('Sheet2').Range('IV65536').EntireRow A1 style addressing
|
||||
ITEM Assertion OK : test34 Worksheets('Sheet2').Range('IU2:IV65536') A1 style addressing
|
||||
ITEM Assertion OK : test35 Range('c1:g10').Columns('x:z') R1C1 style addressing
|
||||
ITEM Assertion OK : test36 Worksheets('Sheet2').Range('A1') A1 style addressing
|
||||
ITEM Assertion OK : test37 Worksheets('Sheet2').Range('A1:E5').EntireColumn A1 style addressing
|
||||
ITEM Assertion OK : test38 Worksheets('Sheet2').Range('10:12') A1 style addressing
|
||||
ITEM Assertion OK : test39 Worksheets('Sheet2').Range('10:12') R1C1 style addressing
|
||||
ITEM Assertion OK : test40 Range('Sheet3!A1:B4') A1 style addressing
|
||||
ITEM Assertion OK : test41 Range('Sheet3!A1,B1,D4:F20') A1 style addressing
|
||||
ITEM Assertion OK : test42 Range('g20:h40').Columns('c:c')
|
||||
ITEM Assertion OK : test43 Range('g20:h40').Columns('c:f')
|
||||
ITEM Assertion OK : test44 Range('g20:h40').Columns(-1)
|
||||
ITEM Assertion OK : test45 Range('c4:g10').Rows(-1)
|
||||
ITEM Assertion OK : test46 Range('a2:b4').Rows('1:1')
|
||||
ITEM Assertion OK : test47 Range('a2:b4').Rows('1:2')
|
||||
ITEM Assertion OK : test48 Range('a2:b4').Rows('2:2')
|
||||
ITEM Assertion OK : test49 Range('a2:b4').Rows('2:3')
|
||||
ITEM Assertion OK : test50 Range(' A2:B4 ')
|
||||
ITEM Assertion OK : test51 Range('A 2:B 4')
|
||||
ITEM Assertion OK : test52 Range('A2 : B4 ')
|
||||
ITEM Assertion OK : test53 Range('Sheet1 !A2 : B4 ')
|
||||
ITEM Assertion OK : test54 Range('Sheet1! A2 : B4 ')
|
||||
Test Results
|
||||
============
|
||||
|
||||
Tests passed: 54
|
||||
Tests failed: 0
|
||||
|
||||
END 'TestAddress
|
||||
TEST OK : TestAddress
|
||||
Test run finished : 12/05/2009 11:23:35
|
|
@ -0,0 +1,60 @@
|
|||
Test run started : 30/05/2007 15:59:40
|
||||
BEGIN TestCalc
|
||||
TEST START : RangeTest2
|
||||
ITEM Assertion OK : - Range("D15").Row
|
||||
ITEM Assertion OK : - WorkSheet("D15").Range.Row
|
||||
ITEM Assertion OK : - Range("D15").Column
|
||||
ITEM Assertion OK : - Worksheet.Range("D15").Column
|
||||
ITEM Assertion OK : - Range("D1").EntireRow.Valuer
|
||||
ITEM Assertion OK : - Range("D1").EntireRow.Valuer
|
||||
ITEM Assertion OK : - Range("D1").EntireRow.Columns.Count
|
||||
ITEM Assertion OK : - Range("D1").EntireColumn.Rows.Count
|
||||
ITEM Assertion OK : - Range("D15").ClearContent
|
||||
ITEM Assertion OK : - Range("M1:N2").Rows.Hidden (set)
|
||||
ITEM Assertion OK : - Range("M1:N2").Rows.Hidden (get)
|
||||
ITEM Assertion OK : - Range("M1:N2").Rows(1).Hidden (set)
|
||||
ITEM Assertion OK : - Range("M1:N2").Rows(1).Hidden (get)
|
||||
ITEM Assertion OK : - Range("M1:N2").Columns.Hidden (set)
|
||||
ITEM Assertion OK : - Range("M1:N2").Columns.Hidden (get)
|
||||
ITEM Assertion OK : - Range("M1:N2").Columns(1).Hidden (set)
|
||||
ITEM Assertion OK : - Range("M1:N2").Columns(1).Hidden (get)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (get)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set = xlDownward)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set = xlUpward)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set = xlVertical)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set)
|
||||
ITEM Assertion OK : - Range("B38").Orientation (set = xlVertical)
|
||||
ITEM Assertion OK : - Range("B39").WrapText (get)
|
||||
ITEM Assertion OK : - Range("B39").WrapText (set)
|
||||
ITEM Assertion OK : - Range("B39").WrapText (set)
|
||||
ITEM Assertion OK : - Range("E39").MergeCells (get)
|
||||
ITEM Assertion OK : - Range("F39").MergeCells (get)
|
||||
ITEM Assertion OK : - Range("E39").MergeCells (set)
|
||||
ITEM Assertion FAIL : - Range("F39").MergeCells (set)
|
||||
ITEM Assertion OK : - Range("E39").MergeCells (set)
|
||||
ITEM Assertion OK : - Range("F39").MergeCells (set)
|
||||
ITEM Assertion OK : - Range("C41:C42").Replace MatchCase:=True
|
||||
ITEM Assertion OK : - Range("C41:C42").Replace MatchCase:=True
|
||||
ITEM Assertion OK : - Range("D41:D42").Replace MatchCase:=False
|
||||
ITEM Assertion OK : - Range("B39").VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").VerticalAlignment (set)
|
||||
ITEM Assertion OK : - Range("B39").VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").VerticalAlignment (set)
|
||||
ITEM Assertion OK : - Range("B39").VerticalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").VerticalAlignment (set)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (set)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (set)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (set)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (get)
|
||||
ITEM Assertion OK : - Range("B39").HorizontalAlignment (set)
|
||||
ITEM FAIL (RangeTest2)
|
||||
TEST Not succesfully completed : RangeTest2
|
||||
END TestCalc
|
||||
Test run finished : 30/05/2007 15:59:42
|
|
@ -0,0 +1,65 @@
|
|||
Test run started : 10/03/2008 15:15:19
|
||||
BEGIN TestCalc
|
||||
TEST START : RangeTest3
|
||||
ITEM Assertion OK : - setFormulaR1C1
|
||||
ITEM Assertion OK : - getFormulaR1C1
|
||||
ITEM Assertion OK : - Range.Copy() and Range.PasteSpecial()
|
||||
ITEM Assertion OK : - Range.Copy(Range("I10"))
|
||||
ITEM Assertion OK : PasteSpecial Paste:=xlPasteValues
|
||||
ITEM Assertion OK : PasteSpecial Paste:=xlPasteFormulas
|
||||
ITEM Assertion OK : PasteSpecial Paste:=xlPasteFormats
|
||||
ITEM Assertion OK : PasteSpecial
|
||||
ITEM Assertion OK : PasteSpecial SkipBlanks:=True
|
||||
ITEM Assertion OK : PasteSpecial Operation:=xlPasteSpecialOperationAdd
|
||||
ITEM Assertion OK : PasteSpecial Operation:=xlPasteSpecialOperationSubtract
|
||||
ITEM Assertion OK : PasteSpecial Operation:=xlPasteSpecialOperationMultiply
|
||||
ITEM Assertion OK : PasteSpecial Operation:=xlPasteSpecialOperationDivide
|
||||
ITEM Assertion OK : PasteSpecial Transpose:=True
|
||||
ITEM Assertion FAIL : ActiveWorkbook.FileFormat
|
||||
ITEM Assertion OK : ActiveWorkbook.Name
|
||||
ITEM Assertion OK : ActiveWorkbook.FullName und ActiveWorkbook.Path
|
||||
ITEM Assertion FAIL : - = ActiveWorkbook.Colors(3) set
|
||||
ITEM Assertion OK : - = ActiveWorkbook.ResetColors
|
||||
ITEM Assertion OK : - = ActiveWorkbook.Colors(3) get
|
||||
ITEM Assertion OK : - = Range("K22").End (xlDown)
|
||||
ITEM Assertion OK : - = Range("K22").End (xlUo)
|
||||
ITEM Assertion OK : - = Range("K22").End (xlToLeft)
|
||||
ITEM Assertion OK : - = Range("K22").End (xlRight)
|
||||
ITEM Assertion OK : - ActiveSpreadsheet.Next
|
||||
ITEM Assertion OK : - ActiveSpreadsheet.Next
|
||||
ITEM Assertion OK : - ActiveSpreadsheet.Previous
|
||||
ITEM Assertion OK : - ActiveSpreadsheet.Previous
|
||||
ITEM Assertion OK : - Range("J4:J11").AutoFilter field:=1, Criteria1:="x"
|
||||
ITEM Assertion OK : - Range("J4:J11").AutoFilter field:=1, Criteria1:="<>"
|
||||
ITEM Assertion OK : - Range("J4:J11").AutoFilter field:=1, Criteria1:="="
|
||||
ITEM Assertion OK : - Range("J4:J11").AutoFilter
|
||||
ITEM Assertion OK : - ActiveSheet.Resize.Select
|
||||
ITEM Assertion OK : - Application.GoTo Reference:="R8C2"
|
||||
ITEM Assertion FAIL : - Application.GoTo Reference:="R[8]C[2]"
|
||||
ITEM Assertion OK : - Application.GoTo Reference:="R8C2"
|
||||
ITEM Assertion OK : - Range.Group - please check visually
|
||||
ITEM Assertion OK : - Range.Group - please check visually
|
||||
ITEM Assertion OK : - Range.Ungroup- please check visually
|
||||
ITEM Assertion OK : - Range.Ungroup - please check visually
|
||||
ITEM Assertion OK : - Range.Group - please check visually
|
||||
ITEM Assertion OK : - Range.Group - please check visually
|
||||
ITEM Assertion OK : - Range.clearOutline - please check visually
|
||||
ITEM Assertion OK : - Range.AutoOutline - please check visually
|
||||
ITEM Assertion OK : - Range.AutoOutline - please check visually
|
||||
ITEM Assertion OK : - ActiveSheet.UsedRange.Select
|
||||
ITEM Assertion OK : - Range("A13").AddIndent
|
||||
ITEM Assertion OK : - Range("A13").IndentLevel set
|
||||
ITEM Assertion OK : - Range("A13").IndentLevel get
|
||||
ITEM Assertion OK : - Range("A13").IndentLevel get
|
||||
ITEM Assertion OK : - Range.Copy() and Range.PasteSpecial()
|
||||
ITEM Assertion OK : - Range.Copy() and Range.PasteSpecial()
|
||||
ITEM Assertion OK : - Range.Copy() and Range.PasteSpecial()
|
||||
ITEM Assertion OK : - Range.Calculate
|
||||
ITEM Assertion OK : Worksheet.Calculate
|
||||
ITEM Assertion OK : - Application.Calculate
|
||||
ITEM Assertion OK : Global.Calculate
|
||||
ITEM Assertion OK : Calculation set
|
||||
ITEM FAIL (RangeTest3)
|
||||
TEST Not succesfully completed : RangeTest3
|
||||
END TestCalc
|
||||
Test run finished : 10/03/2008 15:15:21
|
|
@ -0,0 +1,26 @@
|
|||
Test run started : 13/01/2009 14:31:43
|
||||
----------------------------------------------------------------
|
||||
TestIntersection
|
||||
TEST START : TestIntersection
|
||||
ITEM Assertion OK : test1 Application.Intersect( Range('A2:D10'), Range('C4:E6'))
|
||||
ITEM Assertion OK : test2 Application.Intersect( Range('A2:D10'), Range('A4:G10'))
|
||||
ITEM Assertion OK : test3 Application.Intersect( Range('A2:c8,d2:f8,g2:i8'), Range('A4:G10'))
|
||||
ITEM Assertion OK : test4 Application.Intersect( Range('A4:G10'), Range('A2:c8,d2:f8,g2:i8'))
|
||||
ITEM Assertion OK : test5 Application.Intersect( Range('A2:c8,d2:f8,g2:i8'), Range('g4:i10,A4:G10'))
|
||||
ITEM Assertion OK : test6 Application.Intersect( Range('g4:i10,A4:G10'), Range('A2:c8,d2:f8,g2:i8'))
|
||||
ITEM Assertion OK : test7 Application.Intersect( Range('a2:d10,b5:e10'), Range('a5:i10'))
|
||||
ITEM Assertion OK : test8 Application.Intersect( Range('a2:c8,d2:f8'), Range('b6:e9,a6:f9'))
|
||||
ITEM Assertion OK : test9 Application.Intersect( Range('a2:c8,e2:f8'), Range('b6:e9,a6:f9'))
|
||||
ITEM Assertion OK : test10 Application.Intersect( Range('a1:a3,c1:c3'), Range('a2:c3'))
|
||||
ITEM Assertion OK : test11 Application.Intersect( Range('a1:a3,b1:b3'), Range('a2:c3'))
|
||||
ITEM Assertion OK : test12 Application.Intersect( Range('a2:d5,b3:f7,c1:g4'), Range('b2:e6'))
|
||||
ITEM Assertion OK : test13 Range(" a2:d10,b5:e10,g13:j32 "), Range(" a5:i10,b6:e9 "), Range("b2:r5,f10:h19")
|
||||
Test Results
|
||||
============
|
||||
|
||||
Tests passed: 13
|
||||
Tests failed: 0
|
||||
|
||||
END 'TestIntersection
|
||||
TEST OK : TestIntersection
|
||||
Test run finished : 13/01/2009 14:31:43
|
|
@ -0,0 +1,17 @@
|
|||
Test run started : 13/01/2009 14:32:16
|
||||
----------------------------------------------------------------
|
||||
TestUnion
|
||||
TEST START : TestUnion
|
||||
ITEM Assertion OK : test1Application.Range('A2:D10'), Range('C4:E6')
|
||||
ITEM Assertion OK : test2Application.Range('A2:D5,a3:d4'), Range('A4:G10')
|
||||
ITEM Assertion OK : test3Application.Range('A4:G10,A1:B6'), Range('A2:D5,A3:D4')
|
||||
ITEM Assertion OK : test4Application.Range('A5:D10'), Range('B5:E10')
|
||||
Test Results
|
||||
============
|
||||
|
||||
Tests passed: 4
|
||||
Tests failed: 0
|
||||
|
||||
END 'TestUnion
|
||||
TEST OK : TestUnion
|
||||
Test run finished : 13/01/2009 14:32:16
|
|
@ -0,0 +1,47 @@
|
|||
Test run started : 24/09/2008 10:58:18
|
||||
----------------------------------------------------------------
|
||||
TestAddress
|
||||
TEST START : TestAddress
|
||||
ITEM Assertion OK : test1: res = (aboo = '')
|
||||
ITEM Assertion OK : test 2: res = (aboo = 'fiddlesticks')
|
||||
ITEM Assertion OK : test 3: res = ('' = aboo)
|
||||
ITEM Assertion OK : test 4: res = ('fiddlesticks' = aboo )
|
||||
ITEM Assertion OK : test 5: res = (testString = '')
|
||||
ITEM Assertion OK : test 6: res = (testString = 'fiddlesticks')
|
||||
ITEM Assertion OK : test 7: res = ('' = testString)
|
||||
ITEM Assertion OK : test 8: res = ('fiddlesticks' = testString )
|
||||
ITEM Assertion OK : test 9: res = ( aboo < " )
|
||||
ITEM Assertion OK : test 10: res = ( testString < " )
|
||||
ITEM Assertion OK : test 11: res = ( aboo > " )
|
||||
ITEM Assertion OK : test 12: res = ( testString > " )
|
||||
ITEM Assertion OK : test 13: res = ( aboo <> '' )
|
||||
ITEM Assertion OK : test 14: res = ( testString <> '' )
|
||||
ITEM Assertion OK : test 15: res = (aboo = something/14)
|
||||
ITEM Assertion OK : test 16: res = something + 'string'
|
||||
ITEM Assertion OK : test 17: res = something & 'string'
|
||||
ITEM Assertion OK : test 18: res = something MOD 10 )
|
||||
ITEM Assertion OK : test 19: res = something AND 1 )
|
||||
ITEM Assertion OK : test 20: res = something AND 0 )
|
||||
ITEM Assertion OK : test 21: res = something OR 12)
|
||||
ITEM Assertion OK : test 22: res = something OR 0 )
|
||||
ITEM Assertion OK : test 23: res = something XOR 0 )
|
||||
ITEM Assertion OK : test 24: res = something XOR 1 )
|
||||
ITEM Assertion OK : test 25: res = something EQV 0 )
|
||||
ITEM Assertion OK : test 26: res = something EQV 1 )
|
||||
ITEM Assertion OK : test 27: res = something IMP 0 )
|
||||
ITEM Assertion OK : test 28: res = something IMP 1 )
|
||||
ITEM Assertion OK : test 29: res = something IMP 14 )
|
||||
ITEM Assertion OK : test 30: res = NOT something )
|
||||
ITEM Assertion OK : test 31: res = something + 12 )
|
||||
ITEM Assertion OK : test 32: res = something - 12 )
|
||||
ITEM Assertion OK : test 33: res = -something )
|
||||
ITEM Assertion OK : test 34: res = something * 12 )
|
||||
Test Results
|
||||
============
|
||||
|
||||
Tests passed: 34
|
||||
Tests failed: 0
|
||||
|
||||
END 'TestAddress
|
||||
TEST OK : TestAddress
|
||||
Test run finished : 24/09/2008 10:58:20
|
|
@ -0,0 +1,46 @@
|
|||
Test run started : 05/29/2008 02:55:00 PM
|
||||
----------------------------------------------------------------
|
||||
TEST START : Window-Issue
|
||||
ITEM Assertion OK : Window.Left is: 0 (Test only applies to maximized Window)
|
||||
ITEM Assertion OK : Window.Top is: 21 (Test only applies to maximized Window)
|
||||
ITEM Assertion OK : Window.Width is: 1280 (Test only applies to maximized Window)
|
||||
ITEM Assertion OK : Window.Height is: 752 (Test only applies to maximized Window)
|
||||
ITEM Assertion OK : Window.ScrollColumn is: 100
|
||||
ITEM Assertion OK : Window.ScrollColumn is: 1
|
||||
ITEM Assertion OK : Window.ScrollRow is: 100
|
||||
ITEM Assertion OK : Window.ScrollRow is: 1
|
||||
ITEM Assertion OK : Window.LargeScroll(Down): ScrollRow is: 94 (Test may only apply to maximized Window)
|
||||
ITEM Assertion OK : Window.LargeScroll(Up): ScrollRow is: 1
|
||||
ITEM Assertion OK : Window.LargeScroll(ToRight): ScrollColumn is: 58 (Test may only apply to maximized Window)
|
||||
ITEM Assertion OK : Window.LargeScroll(ToLeft): ScrollColumn is: 1
|
||||
ITEM Assertion OK : Window.SmallScroll(ToRight): ScrollColumn is: 4 (Test may only apply to maximized Window)
|
||||
ITEM Assertion OK : Window.SmallScroll(ToLeft): ScrollColumn is: 1
|
||||
ITEM Assertion OK : Window.DisplayWorkBookTabs is: False
|
||||
ITEM Assertion OK : Window.DisplayWorkBookTabs is: True
|
||||
ITEM Assertion OK : Window.DisplayVerticalScrollBar is: True
|
||||
ITEM Assertion OK : Window.DisplayVerticalScrollBar is: False
|
||||
ITEM Assertion OK : Window.DisplayHorizontalScrollBar is: False
|
||||
ITEM Assertion OK : Window.DisplayHorizontalScrollBar is: True
|
||||
ITEM Assertion OK : Window.DisplayHeadings is: False
|
||||
ITEM Assertion OK : Window.DisplayHeadings is: True
|
||||
ITEM Assertion OK : Window.DisplayOutline is: False
|
||||
ITEM Assertion OK : Window.DisplayOutline is: True
|
||||
ITEM Assertion OK : Window.Visible is: False
|
||||
ITEM Assertion OK : Window.Visible is: True
|
||||
ITEM Assertion OK : Window.Caption is: MyCaption
|
||||
ITEM Assertion OK : Pane.ScrollColumn is: 100
|
||||
ITEM Assertion OK : Pane.ScrollColumn is: 1
|
||||
ITEM Assertion OK : Pane.ScrollRow is: 100
|
||||
ITEM Assertion OK : Pane.ScrollRow is: 1
|
||||
ITEM Assertion OK : Pane.LargeScroll(Down): ScrollRow is: 94 (Test may only apply to maximized Window)
|
||||
ITEM Assertion OK : Pane.LargeScroll(Up): ScrollRow is: 1
|
||||
ITEM Assertion OK : Pane.LargeScroll(ToRight): ScrollColumn is: 58 (Test may only apply to maximized Window)
|
||||
ITEM Assertion OK : Pane.LargeScroll(ToLeft): ScrollColumn is: 1
|
||||
ITEM Assertion OK : Pane.SmallScroll(ToRight): ScrollColumn is: 4 (Test may only apply to maximized Window)
|
||||
ITEM Assertion OK : Pane.SmallScroll(ToLeft): ScrollColumn is: 1
|
||||
ITEM Assertion OK : Window Selection: $A$2:$D$5
|
||||
ITEM Assertion OK : ActiveSheet name of Window: Sheet1
|
||||
ITEM Assertion OK : Window ActiveCell: $A$1
|
||||
END 'Window-Issue' Symbol
|
||||
TEST OK : Window-Issue
|
||||
Test run finished : 05/29/2008 02:55:01 PM
|
|
@ -0,0 +1,8 @@
|
|||
Test run started : 05/29/2008 02:25:58 PM
|
||||
BEGIN Bytearray To String
|
||||
TEST START : Test the conversion between bytearray and string
|
||||
ITEM Assertion OK : The number of byte is:6
|
||||
ITEM Assertion OK : the return string is: abc
|
||||
TEST OK : Test the conversion between bytearray and string
|
||||
END Bytearray To String
|
||||
Test run finished : 05/29/2008 02:25:58 PM
|
|
@ -0,0 +1,9 @@
|
|||
Test run started : 01/24/2008 01:24:50 PM
|
||||
BEGIN DateSerial
|
||||
TEST START : Test DateSerial function
|
||||
ITEM Assertion OK : the return date is: 06/15/1999
|
||||
ITEM Assertion OK : the return date is: 06/15/1999
|
||||
ITEM Assertion OK : the return date is: 06/15/1999
|
||||
TEST OK : Test DateSerial function
|
||||
END DateSerial
|
||||
Test run finished : 01/24/2008 01:24:50 PM
|
|
@ -0,0 +1,8 @@
|
|||
Test run started : 01/24/2008 01:24:41 PM
|
||||
BEGIN DateValue
|
||||
TEST START : Test DateValue function
|
||||
ITEM Assertion OK : the return date is: 02/12/1969
|
||||
ITEM Assertion OK : the return date is: 01/21/2008
|
||||
TEST OK : Test DateValue function
|
||||
END DateValue
|
||||
Test run finished : 01/24/2008 01:24:41 PM
|
|
@ -0,0 +1,36 @@
|
|||
Test run started : 2008/09/18 11:35:34
|
||||
BEGIN Format
|
||||
TEST START : Test Predefined_Number_Format_Sample function
|
||||
ITEM Assertion OK : General Number: 562486.2356
|
||||
ITEM Assertion OK : Fixed: 0.20
|
||||
ITEM Assertion OK : Standard: 562,486.24
|
||||
ITEM Assertion OK : Percent: 75.21%
|
||||
ITEM Assertion OK : Scientific: 5.62E+05
|
||||
ITEM Assertion OK : Scientific: -3.46E+03
|
||||
ITEM Assertion OK : Yes/No: No
|
||||
ITEM Assertion OK : Yes/No: Yes
|
||||
ITEM Assertion OK : True/False: False
|
||||
ITEM Assertion OK : True/False: True
|
||||
ITEM Assertion OK : On/Off: Off
|
||||
ITEM Assertion OK : On/Off: On
|
||||
TEST OK : Test Predefined_Number_Format_Sample function
|
||||
TEST START : Test Custom_Number_Format_Sample function
|
||||
ITEM Assertion OK : 00.0000: 23.6750
|
||||
ITEM Assertion OK : 00.00: 23.68
|
||||
ITEM Assertion OK : 00000: 02658
|
||||
ITEM Assertion OK : 00.00: 2658.00
|
||||
ITEM Assertion OK : ##.####: 23.675
|
||||
ITEM Assertion OK : ##.##: 23.68
|
||||
ITEM Assertion OK : #,###.##: 12,345.25
|
||||
ITEM Assertion OK : ##.00%: 25.00%
|
||||
ITEM Assertion OK : #,###: 1,000,000
|
||||
ITEM Assertion OK : ######E-###: 109838E-5
|
||||
ITEM Assertion OK : $#,###.##: $2,345.25
|
||||
ITEM Assertion OK : ##.###\%: .25%
|
||||
TEST OK : Test Custom_Number_Format_Sample function
|
||||
TEST START : Test Custom_Text_Format_Sample function
|
||||
ITEM Assertion OK : <: vba
|
||||
ITEM Assertion OK : >: VBA
|
||||
TEST OK : Test Custom_Text_Format_Sample function
|
||||
END Format
|
||||
Test run finished : 2008/09/18 11:35:34
|
|
@ -0,0 +1,77 @@
|
|||
Test run started : 07/21/2008 02:00:06 PM
|
||||
BEGIN PageSetup
|
||||
TEST START : Sheet_PrintArea
|
||||
ITEM Assertion OK : PrintArea has changed as expected
|
||||
TEST OK : Sheet_PrintArea
|
||||
TEST START : Test margins (no headers)
|
||||
ITEM Assertion OK : PageSetup.LeftMargin set/get
|
||||
ITEM Assertion OK : PageSetup.RightMargin set/get
|
||||
ITEM Assertion OK : PageSetup.TopMargin set/get
|
||||
ITEM Assertion OK : PageSetup.BottomMargin set/get
|
||||
Verify that page margins on sheet 1 are all 0.5inch
|
||||
TEST OK : Test margins (no headers)
|
||||
TEST START : Test margins (headers)
|
||||
ITEM Assertion OK : PageSetup.HeaderMargin set/get
|
||||
ITEM Assertion OK : PageSetup.FooterMargin set/get
|
||||
ITEM Assertion OK : PageSetup.LeftMargin set/get
|
||||
ITEM Assertion OK : PageSetup.LeftMargin set/get
|
||||
Verify that top/bottom/header/footer page margins on sheet 2 are all 0.5inch
|
||||
TEST OK : Test margins (headers)
|
||||
TEST START : Test header/footer text
|
||||
ITEM Assertion OK : PageSetup.LeftHeader set
|
||||
ITEM Assertion OK : PageSetup.LeftHeader set/get
|
||||
ITEM Assertion OK : PageSetup.CenterHeader set
|
||||
ITEM Assertion OK : PageSetup.CenterHeader set/get
|
||||
ITEM Assertion OK : PageSetup.RightHeader set
|
||||
ITEM Assertion OK : PageSetup.RightHeader set/get
|
||||
ITEM Assertion OK : PageSetup.LeftFooter set
|
||||
ITEM Assertion OK : PageSetup.LeftFooter set/get
|
||||
ITEM Assertion OK : PageSetup.CenterFooter set
|
||||
ITEM Assertion OK : PageSetup.CenterFooter set/get
|
||||
ITEM Assertion OK : PageSetup.RightFooter set
|
||||
ITEM Assertion OK : PageSetup.RightFooter set/get
|
||||
Verify that headers on sheet 2 are Ready,to,go
|
||||
Verify that footers on sheet 2 are This,now,Works
|
||||
TEST OK : Test header/footer text
|
||||
TEST START : Test zoom
|
||||
ITEM Assertion OK : PageSetup.Zoom set
|
||||
ITEM Assertion OK : PageSetup.Zoom set/get
|
||||
Verify that sheet 1 zoom is 10%
|
||||
TEST OK : Test zoom
|
||||
TEST START : Test orientation
|
||||
ITEM Assertion OK : PageSetup.Zoom set
|
||||
ITEM Assertion OK : PageSetup.Orientation set/get
|
||||
Verify that sheet 1 orientation is now landscape
|
||||
TEST OK : Test orientation
|
||||
TEST START : Test order
|
||||
ITEM Assertion OK : PageSetup.Order get
|
||||
ITEM Assertion OK : PageSetup.Order set/get
|
||||
Verify that order on sheet 1 is now over, then down.
|
||||
TEST OK : Test order
|
||||
TEST START : Test first page number
|
||||
ITEM Assertion OK : PageSetup.FirstPageNumber get
|
||||
ITEM Assertion OK : PageSetup.FirstPageNumber set/get
|
||||
Verify that first page number on sheet 1 is now 2.
|
||||
TEST OK : Test first page number
|
||||
TEST START : Test center vertically
|
||||
ITEM Assertion OK : PageSetup.CenterVertically get
|
||||
ITEM Assertion OK : PageSetup.CenterVertically set/get
|
||||
Verify that CenterVertically on sheet 1 is now true.
|
||||
TEST OK : Test center vertically
|
||||
TEST START : Test center horizontally
|
||||
ITEM Assertion OK : PageSetup.CenterHorizontally get
|
||||
ITEM Assertion OK : PageSetup.CenterHorizontally set/get
|
||||
Verify that CenterHorizontally on sheet 1 is now true.
|
||||
TEST OK : Test center horizontally
|
||||
TEST START : Test FitToPagesTall
|
||||
ITEM Assertion OK : PageSetup.FitToPagesTall set/get
|
||||
TEST OK : Test FitToPagesTall
|
||||
TEST START : Test FitToPagesWide
|
||||
ITEM Assertion OK : PageSetup.FitToPagesWide set/get
|
||||
TEST OK : Test FitToPagesWide
|
||||
TEST START : Test PrintHeadings
|
||||
ITEM Assertion OK : PageSetup.PrintHeadings set/get
|
||||
ITEM Assertion OK : PageSetup.PrintHeadings set/get
|
||||
TEST OK : Test PrintHeadings
|
||||
END PageSetup
|
||||
Test run finished : 07/21/2008 02:00:07 PM
|
|
@ -0,0 +1,11 @@
|
|||
Test run started : 12/10/2007 11:26:43 AM
|
||||
BEGIN Partition
|
||||
TEST START : Test Partition function
|
||||
ITEM Assertion OK : the number 20 occurs in the range:20:24
|
||||
ITEM Assertion OK : the number 20 occurs in the range: 20: 20
|
||||
ITEM Assertion OK : the number 120 occurs in the range:100:
|
||||
ITEM Assertion OK : the number -5 occurs in the range: : -1
|
||||
ITEM Assertion OK : the number 2 occurs in the range: 2: 3
|
||||
TEST OK : Test Partition function
|
||||
END Partition
|
||||
Test run finished : 12/10/2007 11:26:43 AM
|
|
@ -0,0 +1,16 @@
|
|||
Test run started : 2008/06/19 17:14:57
|
||||
----------------------------------------------------------------
|
||||
ShowDetail-Issue
|
||||
TEST START : ShowDetail-Issue
|
||||
ITEM Assertion OK : Range.ShowDetail is True
|
||||
ITEM Assertion OK : Range.ShowDetail is False
|
||||
END 'ShowDetail-Issue' Symbol
|
||||
TEST OK : ShowDetail-Issue
|
||||
----------------------------------------------------------------
|
||||
RangeMerged-Issue
|
||||
TEST START : RangeMerged-Issue
|
||||
ITEM Assertion OK : Range.RangeMerged is $F$2:$H$5
|
||||
ITEM Assertion OK : The first address of Range.RangeMerged is $F$2
|
||||
END 'RangeMerged-Issue' Symbol
|
||||
TEST OK : RangeMerged-Issue
|
||||
Test run finished : 2008/06/19 17:14:57
|
|
@ -0,0 +1,14 @@
|
|||
Test run started : 09/05/2008 10:21:46 AM
|
||||
BEGIN Replace
|
||||
TEST START : Test Replace function
|
||||
ITEM Assertion OK : common string:aefefdBc
|
||||
ITEM Assertion OK : expression string:aefefdef
|
||||
ITEM Assertion OK : binanary compare:aefefdBc
|
||||
ITEM Assertion OK : text compare:aefefdef
|
||||
ITEM Assertion OK : text compare:aefefdef
|
||||
ITEM Assertion OK : start = 3:cefdBc
|
||||
ITEM Assertion OK : count = 2: aefefdBc
|
||||
ITEM Assertion OK : start = 1, count = 0, not support in Unix: abcbcdBc
|
||||
TEST OK : Test Replace function
|
||||
END Replace
|
||||
Test run finished : 09/05/2008 10:21:47 AM
|
|
@ -0,0 +1,62 @@
|
|||
Test run started : 05/29/2008 02:51:22 PM
|
||||
BEGIN String Plus Double
|
||||
TEST START : double = string + double
|
||||
The next compute raises error: s = null, d = null, r = s + d
|
||||
ITEM Assertion OK : s = null, d = null, r = s + d .The result is: -1
|
||||
ITEM Assertion OK : s = null, d = null, r = s & d .The result is: 0
|
||||
The next compute raises error: s = null, d = 20, r = s + d
|
||||
ITEM Assertion OK : s = null, d = 20, r = s + d .The result is: -1
|
||||
ITEM Assertion OK : s = null, d = 20, r = s & d .The result is: 20
|
||||
ITEM Assertion OK : s = '10', d = null, r = s + d .The result is: 10
|
||||
ITEM Assertion OK : s = '10', d = null, r = s & d .The result is: 100
|
||||
ITEM Assertion OK : s = '10', d = 20, r = s + d .The result is: 30
|
||||
ITEM Assertion OK : s = '10', d = 20, r = s & d .The result is: 1020
|
||||
The next compute raises error: s = 'abc', d = null, r = s + d
|
||||
ITEM Assertion OK : s = 'abc', d = null, r = s + d .The result is: -1
|
||||
The next compute raises error: s = 'abc', d = null, r = s & d
|
||||
ITEM Assertion OK : s = 'abc', d = null, r = s & d .The result is: -1
|
||||
The next compute raises error: s = 'abc', d = 20, r = s + d
|
||||
ITEM Assertion OK : s = 'abc', d = 20, r = s + d .The result is: -1
|
||||
The next compute raises error: s = 'abc', d = 20, r = s & d
|
||||
ITEM Assertion OK : s = 'abc', d = 20, r = s & d .The result is: -1
|
||||
TEST OK : double = string + double
|
||||
TEST START : string = string + double
|
||||
The next compute raises error: s = null, d = null, r = s + d
|
||||
ITEM Assertion OK : s = null, d = null, r = s + d .The result is: -1
|
||||
ITEM Assertion OK : s = null, d = null, r = s & d .The result is: 0
|
||||
The next compute raises error: s = null, d = 20, r = s + d
|
||||
ITEM Assertion OK : s = null, d = 20, r = s + d .The result is: -1
|
||||
ITEM Assertion OK : s = null, d = 20, r = s & d .The result is: 20
|
||||
ITEM Assertion OK : s = '10', d = null, r = s + d .The result is: 10
|
||||
ITEM Assertion OK : s = '10', d = null, r = s & d .The result is: 100
|
||||
ITEM Assertion OK : s = '10', d = 20, r = s + d .The result is: 30
|
||||
ITEM Assertion OK : s = '10', d = 20, r = s & d .The result is: 1020
|
||||
The next compute raises error: s = 'abc', d = null, r = s + d
|
||||
ITEM Assertion OK : s = 'abc', d = null, r = s + d .The result is: -1
|
||||
ITEM Assertion OK : s = 'abc', d = null, r = s & d .The result is: abc0
|
||||
The next compute raises error: s = 'abc', d = 20, r = s + d
|
||||
ITEM Assertion OK : s = 'abc', d = 20, r = s + d .The result is: -1
|
||||
ITEM Assertion OK : s = 'abc', d = 20, r = s & d .The result is: abc20
|
||||
TEST OK : string = string + double
|
||||
TEST START : double = string + string
|
||||
The next compute raises error: s = null, d = null, r = s + d
|
||||
ITEM Assertion OK : s = null, d = null, r = s + d .The result is: -1
|
||||
The next compute raises error: s = null, d = null, r = s & d
|
||||
ITEM Assertion OK : s = null, d = null, r = s & d .The result is: -1
|
||||
ITEM Assertion OK : s = null, d = 20, r = s + d .The result is: 20
|
||||
ITEM Assertion OK : s = null, d = 20, r = s & d .The result is: 20
|
||||
ITEM Assertion OK : s = '10', d = null, r = s + d .The result is: 10
|
||||
ITEM Assertion OK : s = '10', d = null, r = s & d .The result is: 10
|
||||
ITEM Assertion OK : s = '10', d = 20, r = s + d .The result is: 1020
|
||||
ITEM Assertion OK : s = '10', d = 20, r = s & d .The result is: 1020
|
||||
The next compute raises error: s = 'abc', d = null, r = s + d
|
||||
ITEM Assertion OK : s = 'abc', d = null, r = s + d .The result is: -1
|
||||
The next compute raises error: s = 'abc', d = null, r = s & d
|
||||
ITEM Assertion OK : s = 'abc', d = null, r = s & d .The result is: -1
|
||||
The next compute raises error: s = 'abc', d = 20, r = s + d
|
||||
ITEM Assertion OK : s = 'abc', d = 20, r = s + d .The result is: -1
|
||||
The next compute raises error: s = 'abc', d = 20, r = s & d
|
||||
ITEM Assertion OK : s = 'abc', d = 20, r = s & d .The result is: -1
|
||||
TEST OK : double = string + string
|
||||
END String Plus Double
|
||||
Test run finished : 05/29/2008 02:51:22 PM
|
|
@ -0,0 +1,41 @@
|
|||
Test run started : 2008/09/22 11:18:57
|
||||
BEGIN Window2
|
||||
TEST START : Test Window.SplitRow
|
||||
ITEM Assertion OK : Test SplitColumn: 2 (Test only applies to maximized Window and at least has 800*600 solotion)
|
||||
ITEM Assertion OK : Test SplitRow: 2 (Test only applies to maximized Window and at least has 800*600 solotion)
|
||||
ITEM Assertion OK : Test SplitVertical: 242.465788476212
|
||||
ITEM Assertion OK : Test SplitHorizontal: 242.465788476212
|
||||
ITEM Assertion OK : Test SplitRow: 4 (Test only applies to maximized Window and at least has 800*600 solotion)
|
||||
ITEM Assertion OK : Test SplitColumn: 3 (Test only applies to maximized Window and at least has 800*600 solotion)
|
||||
ITEM Assertion OK : Test SplitColumn: 0
|
||||
ITEM Assertion OK : Test SplitRow: 0
|
||||
TEST OK : Test Window.SplitRow
|
||||
TEST START : Test Window.DisplayGridlines
|
||||
ITEM Assertion OK : Test gridlines are on
|
||||
ITEM Assertion OK : Test gridlines are off
|
||||
TEST OK : Test Window.DisplayGridlines
|
||||
TEST START : Test Window.DisplayHeadings
|
||||
ITEM Assertion OK : Test Headings are on
|
||||
ITEM Assertion OK : Test Headings are off
|
||||
TEST OK : Test Window.DisplayHeadings
|
||||
TEST START : Test Window.Visibility
|
||||
ITEM Assertion OK : Window is visible
|
||||
ITEM Assertion OK : Window is not visible
|
||||
TEST OK : Test Window.Visibility
|
||||
TEST START : Test Window.FreezePanes
|
||||
ITEM Assertion OK : Test no panes frozen
|
||||
ITEM Assertion OK : Test panes frozen at center
|
||||
ITEM Assertion OK : Test panes frozen at split
|
||||
TEST OK : Test Window.FreezePanes
|
||||
TEST START : Test Window.View
|
||||
TEST OK : Test Window.View
|
||||
TEST START : Test Window.Zoom
|
||||
ITEM Assertion OK : Test zoom=100%
|
||||
ITEM Assertion OK : Test zoom=150%
|
||||
TEST OK : Test Window.Zoom
|
||||
TEST START : Test Windows.Count
|
||||
ITEM Assertion OK : Windows Count: 1
|
||||
ITEM Assertion OK : Application.Windows Count: 1
|
||||
TEST OK : Test Windows.Count
|
||||
END Window2
|
||||
Test run finished : 2008/09/22 11:18:58
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue