Kaydet (Commit) 379afae1 authored tarafından Andre Fischer's avatar Andre Fischer

i124316: Removed unused module soldep.

üst 4ae98b5a
......@@ -239,7 +239,6 @@ sn_tools.dll 0x000000005e7a0000 0x00020000
so_activex.dll 0x000000005e770000 0x00020000
socomp.dll 0x000000005e750000 0x00010000
sofficeapp.dll 0x000000005e6e0000 0x00060000
soldepmi.dll 0x000000005e6a0000 0x00030000
solvermi.dll 0x000000005e680000 0x00010000
sotmi.dll 0x000000005e620000 0x00050000
spellmi.dll 0x000000005e5e0000 0x00030000
......
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <soldep/appdef.hxx>
const char* GetDefStandList()
{
char* pRet;
char* pEnv = getenv("STAR_STANDLST");
if ( pEnv )
{
int nLen = strlen( pEnv );
pRet = ( char *) malloc( nLen + 1 );
(void) strcpy( pRet, pEnv );
}
else
{
int nLen = strlen( _DEF_STAND_LIST );
pRet = ( char *) malloc( nLen + 1 );
(void) strcpy( pRet, _DEF_STAND_LIST );
}
return pRet;
}
const char* GetIniRoot()
{
char* pRet;
char* pEnv = getenv("STAR_INIROOT");
if ( pEnv )
{
int nLen = strlen( pEnv );
pRet = ( char *) malloc( nLen + 1 );
(void) strcpy( pRet, pEnv );
}
else
{
int nLen = strlen( _INIROOT );
pRet = ( char *) malloc( nLen + 1 );
(void) strcpy( pRet, _INIROOT );
}
return pRet;
}
const char* GetIniRootOld()
{
char* pRet;
char* pEnv = getenv("STAR_INIROOTOLD");
if ( pEnv )
{
int nLen = strlen( pEnv );
pRet = ( char *) malloc( nLen + 1 );
(void) strcpy( pRet, pEnv );
}
else
{
int nLen = strlen( _INIROOT_OLD );
pRet = ( char *) malloc( nLen + 1 );
(void) strcpy( pRet, _INIROOT_OLD );
}
return pRet;
}
const char* GetSSolarIni()
{
char* pRet;
char* pEnv = getenv("STAR_SSOLARINI");
if ( pEnv )
{
int nLen = strlen( pEnv );
pRet = ( char *) malloc( nLen + 1 );
(void) strcpy( pRet, pEnv );
}
else
{
int nLen = strlen( _DEF_SSOLARINI );
pRet = ( char *) malloc( nLen + 1 );
(void) strcpy( pRet, _DEF_SSOLARINI );
}
return pRet;
}
const char* GetSSCommon()
{
char* pRet;
char* pEnv = getenv("STAR_SSCOMMON");
if ( pEnv )
{
int nLen = strlen( pEnv );
pRet = ( char *) malloc( nLen + 1 );
(void) strcpy( pRet, pEnv );
}
else
{
int nLen = strlen( _DEF_SSCOMMON );
pRet = ( char *) malloc( nLen + 1 );
(void) strcpy( pRet, _DEF_SSCOMMON );
}
return pRet;
}
const char* GetBServerRoot()
{
char* pRet;
char* pEnv = getenv("STAR_BSERVERROOT");
if ( pEnv )
{
int nLen = strlen( pEnv );
pRet = ( char *) malloc( nLen + 1 );
(void) strcpy( pRet, pEnv );
}
else
{
int nLen = strlen( B_SERVER_ROOT );
pRet = ( char *) malloc( nLen + 1 );
(void) strcpy( pRet, B_SERVER_ROOT );
}
return pRet;
}
const char* GetEnv( const char *pVar )
{
char *pRet = getenv( pVar );
if ( !pRet )
pRet = "";
return pRet;
}
const char* GetEnv( const char *pVar, const char *pDefault )
{
char *pRet = getenv( pVar );
if ( !pRet )
return pDefault;
return pRet;
}
This diff is collapsed.
This diff is collapsed.
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#include "dep.hxx"
// class SByteExtStringList
/*****************************************************************************/
SByteExtStringList::~SByteExtStringList()
/*****************************************************************************/
{
if (bDeleteStrings)
while( Count()) {
delete GetObject((sal_uIntPtr)0);
Remove((sal_uIntPtr)0);
}
}
// class VersionDepInfo
/*****************************************************************************/
VersionDepInfo::~VersionDepInfo()
/*****************************************************************************/
{
if (pVersion)
delete pVersion;
}
/*****************************************************************************/
void VersionDepInfo::Clear()
/*****************************************************************************/
{
while( Count()) {
delete GetObject((sal_uIntPtr)0);
Remove((sal_uIntPtr)0);
}
}
// class VersionDepInfoList
/*****************************************************************************/
VersionDepInfo* VersionDepInfoList::GetVersion (ByteString& rVersion)
/*****************************************************************************/
{
VersionDepInfo* pInfo = First();
while (pInfo)
{
const ByteString* pStr = pInfo->GetVersion();
if (*pStr == rVersion)
return pInfo;
pInfo = Next();
}
return NULL;
}
/*****************************************************************************/
void VersionDepInfoList::RemoveVersion (ByteString& rVersion)
/*****************************************************************************/
{
VersionDepInfo* pInfo = First();
while (pInfo)
{
const ByteString* pStr = pInfo->GetVersion();
if (*pStr == rVersion)
{
Remove (pInfo);
delete pInfo;
return;
}
pInfo = Next();
}
}
/*****************************************************************************/
VersionDepInfo* VersionDepInfoList::InsertVersion (ByteString& rVersion)
/*****************************************************************************/
{
VersionDepInfo* pInfo = First();
while (pInfo)
{
const ByteString* pStr = pInfo->GetVersion();
if (*pStr == rVersion)
{
pInfo->Clear();
return pInfo;
}
pInfo = Next();
}
pInfo = new VersionDepInfo (rVersion);
Insert (pInfo, LIST_APPEND);
return pInfo;
}
This diff is collapsed.
#**************************************************************
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
#**************************************************************
PRJ=..
PRJNAME=soldep
TARGET=bootstrpdt
ENABLE_EXCEPTIONS=true
# --- Settings -----------------------------------------------------
.INCLUDE : settings.mk
# fixme, code is not yet 64 bit clean
.IF "$(OS)$(CPU)"=="LINUXX" || ("$(COM)"=="C52" && "$(CPU)"=="U")
all:
@echo nothing to do
.ENDIF
# --- Files --------------------------------------------------------
EXCEPTIONSFILES= \
$(SLO)$/prj.obj
SLOFILES=\
$(SLO)$/command.obj \
$(SLO)$/dep.obj \
$(SLO)$/minormk.obj \
$(SLO)$/prodmap.obj \
$(SLO)$/appdef.obj \
$(SLO)$/hashtbl.obj \
$(SLO)$/sstring.obj \
$(SLO)$/prj.obj
SHL1TARGET =$(TARGET)$(DLLPOSTFIX)
SHL1IMPLIB =$(TARGET)
SHL1LIBS =$(SLB)$/$(TARGET).lib
SHL1DEF =$(MISC)$/$(SHL1TARGET).def
SHL1DEPN =$(SHL1LIBS)
SHL1STDLIBS=\
$(TOOLSLIB) \
$(VOSLIB) \
$(SALLIB)
DEF1NAME =$(SHL1TARGET)
DEF1DEPN =$(MISC)$/$(SHL1TARGET).flt
DEFLIB1NAME =$(TARGET)
# --- Targets ------------------------------------------------------
.INCLUDE : target.mk
$(MISC)$/$(SHL1TARGET).flt: makefile.mk
@echo ------------------------------
@echo Making: $@
@echo WEP > $@
@echo LIBMAIN >> $@
@echo LibMain >> $@
@echo __CT >> $@
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#include "minormk.hxx"
#include "prodmap.hxx"
#include <soldep/appdef.hxx>
#include <tools/fsys.hxx>
#include <tools/geninfo.hxx>
//
// class MinorMk
//
/*****************************************************************************/
MinorMk::MinorMk(
GenericInformationList *pList,
const ByteString &rVersion,
const ByteString &rWorkStamp,
const ByteString &rEnvironment,
const ByteString &rMinor
)
/*****************************************************************************/
{
String sRoot( ProductMapper::GetVersionRoot( pList, rVersion ));
if ( sRoot.Len()) {
ByteString sPath( sRoot, RTL_TEXTENCODING_ASCII_US );
sPath += "/";
sPath += rEnvironment;
sPath += "/";
sPath += "inc";
if ( rMinor.Len()) {
sPath += ".";
sPath += rMinor;
}
#ifdef UNX
sPath.SearchAndReplaceAll( "\\", "/" );
while( sPath.SearchAndReplace( "//", "/" ) != STRING_NOTFOUND ) {};
#else
sPath.SearchAndReplaceAll( "/", "\\" );
while( sPath.SearchAndReplace( "\\\\", "\\" ) != STRING_NOTFOUND ) {};
#endif
DirEntry aPath( String( sPath, RTL_TEXTENCODING_ASCII_US ));
ByteString sFile( rWorkStamp );
sFile += "minor.mk";
DirEntry aFile( aPath );
aFile += DirEntry( String( sFile, RTL_TEXTENCODING_ASCII_US ));
if ( !aFile.Exists()) {
sFile = sFile.Copy( 3 );
aFile = aPath;
aFile += DirEntry( String( sFile, RTL_TEXTENCODING_ASCII_US ));
}
ReadMinorMk( aFile.GetFull());
}
}
/*****************************************************************************/
MinorMk::MinorMk( GenericInformationList *pList, const ByteString rVersion )
/*****************************************************************************/
{
String sRoot( ProductMapper::GetVersionRoot( pList, rVersion ));
if ( sRoot.Len()) {
ByteString sPath( sRoot, RTL_TEXTENCODING_ASCII_US );
sPath += "/src/solenv/inc";
#ifdef UNX
sPath.SearchAndReplaceAll( "\\", "/" );
while( sPath.SearchAndReplace( "//", "/" ) != STRING_NOTFOUND ) {};
#else
sPath.SearchAndReplaceAll( "/", "\\" );
while( sPath.SearchAndReplace( "\\\\", "\\" ) != STRING_NOTFOUND ) {};
#endif
DirEntry aPath( String( sPath, RTL_TEXTENCODING_ASCII_US ));
ByteString sFile( "minor.mk" );
DirEntry aFile( aPath );
aFile += DirEntry( String( sFile, RTL_TEXTENCODING_ASCII_US ));
ReadMinorMk( aFile.GetFull());
}
}
/*****************************************************************************/
MinorMk::MinorMk( const ByteString &rMinor, const ByteString &rEnvironment )
/*****************************************************************************/
: bExists( sal_False )
{
ByteString sDelimiter( DirEntry::GetAccessDelimiter(), RTL_TEXTENCODING_ASCII_US );
ByteString sSolver( GetEnv( "SOLARVERSION" ));
sal_Bool bNewEnv = sal_True;
if ( !sSolver.Len()) {
sSolver = GetEnv( "SOLARVER" );
bNewEnv = sal_False;
}
ByteString sUPD( GetEnv( "UPD" ));
ByteString sMinorMk( sSolver );
sMinorMk += sDelimiter;
if ( !bNewEnv ) {
sMinorMk += sUPD;
sMinorMk += sDelimiter;
}
if ( rEnvironment.Len()) {
sMinorMk += rEnvironment;
sMinorMk += sDelimiter;
sMinorMk += "inc";
if( rMinor.Len()) {
sMinorMk += ".";
sMinorMk += rMinor;
}
sMinorMk += sDelimiter;
}
sMinorMk += sUPD;
sMinorMk += "minor.mk";
String sFile( sMinorMk, RTL_TEXTENCODING_ASCII_US );
ReadMinorMk( sFile );
}
/*****************************************************************************/
void MinorMk::ReadMinorMk( const String &rFileName )
/*****************************************************************************/
{
if ( DirEntry( rFileName ).Exists()) {
bExists = sal_True;
SvFileStream aStream( rFileName, STREAM_STD_READ );
while ( !aStream.IsOpen())
aStream.Open( rFileName, STREAM_STD_READ );
ByteString sLine;
while ( !aStream.IsEof()) {
aStream.ReadLine( sLine );
if ( sLine.GetToken( 0, '=' ) == "RSCVERSION" )
sRSCVERSION = sLine.GetToken( 1, '=' );
else if ( sLine.GetToken( 0, '=' ) == "RSCREVISION" )
sRSCREVISION = sLine.GetToken( 1, '=' );
else if ( sLine.GetToken( 0, '=' ) == "BUILD" )
sBUILD = sLine.GetToken( 1, '=' );
else if ( sLine.GetToken( 0, '=' ) == "LAST_MINOR" )
sLAST_MINOR = sLine.GetToken( 1, '=' );
}
aStream.Close();
sRSCVERSION.EraseTrailingChars();
sRSCREVISION.EraseTrailingChars();
sBUILD.EraseTrailingChars();
sLAST_MINOR.EraseTrailingChars();
}
}
/*****************************************************************************/
MinorMk::~MinorMk()
/*****************************************************************************/
{
}
This diff is collapsed.
This diff is collapsed.
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef _TOOLS_STRINGLIST
# define _TOOLS_STRINGLIST
#endif
#define ENABLE_BYTESTRING_STREAM_OPERATORS
#include <tools/stream.hxx>
#include "soldep/sstring.hxx"
SByteStringList::SByteStringList()
{
}
SByteStringList::~SByteStringList()
{
}
sal_uIntPtr SByteStringList::IsString( ByteString* pStr )
{
sal_uIntPtr nRet = NOT_THERE;
if ( (nRet = GetPrevString( pStr )) != 0 )
{
ByteString* pString = GetObject( nRet );
if ( *pString == *pStr )
return nRet;
else
return NOT_THERE;
}
else
{
ByteString* pString = GetObject( 0 );
if ( pString && (*pString == *pStr) )
return 0;
else
return NOT_THERE;
}
}
sal_uIntPtr SByteStringList::GetPrevString( ByteString* pStr )
{
sal_uIntPtr nRet = 0;
sal_Bool bFound = sal_False;
sal_uIntPtr nCountMember = Count();
sal_uIntPtr nUpper = nCountMember;
sal_uIntPtr nLower = 0;
sal_uIntPtr nCurrent = nUpper / 2;
sal_uIntPtr nRem = 0;
ByteString* pString;
do
{
if ( (nCurrent == nLower) || (nCurrent == nUpper) )
return nLower;
pString = GetObject( nCurrent );
StringCompare nResult = pStr->CompareTo( *pString );
if ( nResult == COMPARE_LESS )
{
nUpper = nCurrent;
nCurrent = (nCurrent + nLower) /2;
}
else if ( nResult == COMPARE_GREATER )
{
nLower = nCurrent;
nCurrent = (nUpper + nCurrent) /2;
}
else if ( nResult == COMPARE_EQUAL )
return nCurrent;
if ( nRem == nCurrent )
return nCurrent;
nRem = nCurrent;
}
while ( !bFound );
return nRet;
}
/**************************************************************************
*
* Sortiert einen ByteString in die Liste ein und gibt die Position,
* an der einsortiert wurde, zurueck
*
**************************************************************************/
sal_uIntPtr SByteStringList::PutString( ByteString* pStr )
{
sal_uIntPtr nPos = GetPrevString ( pStr );
if ( Count() )
{
{
ByteString* pString = GetObject( 0 );
if ( pString->CompareTo( *pStr ) == COMPARE_GREATER )
{
Insert( pStr, (sal_uIntPtr)0 );
return (sal_uIntPtr)0;
}
}
ByteString* pString = GetObject( nPos );
if ( *pStr != *pString )
{
Insert( pStr, nPos+1 );
return ( nPos +1 );
}
}
else
{
Insert( pStr );
return (sal_uIntPtr)0;
}
return NOT_THERE;
}
ByteString* SByteStringList::RemoveString( const ByteString& rName )
{
sal_uIntPtr i;
ByteString* pReturn;
for( i = 0 ; i < Count(); i++ )
{
if ( rName == *GetObject( i ) )
{
pReturn = GetObject(i);
Remove(i);
return pReturn;
}
}
return NULL;
}
void SByteStringList::CleanUp()
{
ByteString* pByteString = First();
while (pByteString) {
delete pByteString;
pByteString = Next();
}
Clear();
}
SByteStringList& SByteStringList::operator<< ( SvStream& rStream )
{
sal_uInt32 nListCount;
rStream >> nListCount;
for ( sal_uInt16 i = 0; i < nListCount; i++ ) {
ByteString* pByteString = new ByteString();
rStream >> *pByteString;
Insert (pByteString, LIST_APPEND);
}
return *this;
}
SByteStringList& SByteStringList::operator>> ( SvStream& rStream )
{
sal_uInt32 nListCount = Count();
rStream << nListCount;
ByteString* pByteString = First();
while (pByteString) {
rStream << *pByteString;
pByteString = Next();
}
return *this;
}
SUniStringList::SUniStringList()
{
}
SUniStringList::~SUniStringList()
{
}
sal_uIntPtr SUniStringList::IsString( UniString* pStr )
{
sal_uIntPtr nRet = NOT_THERE;
if ( (nRet = GetPrevString( pStr )) != 0 )
{
UniString* pString = GetObject( nRet );
if ( *pString == *pStr )
return nRet;
else
return NOT_THERE;
}
else
{
UniString* pString = GetObject( 0 );
if ( pString && (*pString == *pStr) )
return 0;
else
return NOT_THERE;
}
}
sal_uIntPtr SUniStringList::GetPrevString( UniString* pStr )
{
sal_uIntPtr nRet = 0;
sal_Bool bFound = sal_False;
sal_uIntPtr nCountMember = Count();
sal_uIntPtr nUpper = nCountMember;
sal_uIntPtr nLower = 0;
sal_uIntPtr nCurrent = nUpper / 2;
sal_uIntPtr nRem = 0;
UniString* pString;
do
{
if ( (nCurrent == nLower) || (nCurrent == nUpper) )
return nLower;
pString = GetObject( nCurrent );
StringCompare nResult = pStr->CompareTo( *pString );
if ( nResult == COMPARE_LESS )
{
nUpper = nCurrent;
nCurrent = (nCurrent + nLower) /2;
}
else if ( nResult == COMPARE_GREATER )
{
nLower = nCurrent;
nCurrent = (nUpper + nCurrent) /2;
}
else if ( nResult == COMPARE_EQUAL )
return nCurrent;
if ( nRem == nCurrent )
return nCurrent;
nRem = nCurrent;
}
while ( !bFound );
return nRet;
}
/**************************************************************************
*
* Sortiert einen UniString in die Liste ein und gibt die Position,
* an der einsortiert wurde, zurueck
*
**************************************************************************/
sal_uIntPtr SUniStringList::PutString( UniString* pStr )
{
sal_uIntPtr nPos = GetPrevString ( pStr );
if ( Count() )
{
{
UniString* pString = GetObject( 0 );
if ( pString->CompareTo( *pStr ) == COMPARE_GREATER )
{
Insert( pStr, (sal_uIntPtr)0);
return (sal_uIntPtr)0;
}
}
UniString* pString = GetObject( nPos );
if ( *pStr != *pString )
{
Insert( pStr, nPos+1 );
return ( nPos +1 );
}
}
else
{
Insert( pStr );
return (sal_uIntPtr)0;
}
return NOT_THERE;
}
UniString* SUniStringList::RemoveString( const UniString& rName )
{
sal_uIntPtr i;
UniString* pReturn;
for( i = 0 ; i < Count(); i++ )
{
if ( rName == *GetObject( i ) )
{
pReturn = GetObject(i);
Remove(i);
return pReturn;
}
}
return NULL;
}
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef _DEP_HXX
#define _DEP_HXX
#include <soldep/sstring.hxx>
class SByteExtStringList : public SByteStringList
{
private:
sal_Bool bDeleteStrings;
public:
SByteExtStringList(sal_Bool bDelete = sal_True) : bDeleteStrings (bDelete) {}
~SByteExtStringList();
};
class VersionDepInfo : public SByteExtStringList
{
private:
ByteString* pVersion;
public:
VersionDepInfo() : pVersion (NULL) {}
VersionDepInfo(const ByteString& rCurrentVersion) : pVersion (NULL) { pVersion = new ByteString(rCurrentVersion); }
~VersionDepInfo();
void Clear();
const ByteString* GetVersion() { return pVersion; }
//void SetVersion(ByteString* pStr) { pVersion = pStr; }
};
DECLARE_LIST( VersionDepInfoList_Impl, VersionDepInfo* )
class VersionDepInfoList : public VersionDepInfoList_Impl
{
public:
VersionDepInfoList () {}
~VersionDepInfoList () {}
VersionDepInfo* GetVersion (ByteString& rVersion);
void RemoveVersion (ByteString& rVersion);
VersionDepInfo* InsertVersion (ByteString& rVersion);
};
#endif
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef _DTSODCMP_HRC
#define _DTSODCMP_HRC
//========================================================================
// Bereiche
#define RID_SD_STRING_START 26000
#define RID_SD_MENU_START 27000
#define RID_SD_CONTEXTMENU_START 28500
#define RID_SD_TOOLBOX_START 29000
#define RID_SD_WINDOW_START 30000
#define RID_SD_STATUSBAR_START 30500
#define RID_SD_IMAGE_START 31000
#define RID_SD_BITMAP_START 31250
#define RID_SD_DIALOG_START 31500
#define RID_SD_DEPPER_DIALOG_START 31750
// end is at 31999
#define SID_START 0
//========================================================================
// Window-Ids
//========================================================================
// Menu-Ids
#define RID_SD_MENU_APP (RID_SD_MENU_START)
#define RID_SD_MENU_FILE (RID_SD_MENU_START + 1)
#define RID_SD_MENU_FILE_NEW (RID_SD_MENU_START + 2)
#define RID_SD_MENU_FILE_OPEN (RID_SD_MENU_START + 3)
#define RID_SD_MENU_FILE_SAVE (RID_SD_MENU_START + 4)
#define RID_SD_MENU_FILE_SAVEAS (RID_SD_MENU_START + 5)
#define RID_SD_MENU_FILE_EXIT (RID_SD_MENU_START + 6)
#define RID_SD_MENU_NEW_OBJECT (RID_SD_MENU_START + 7)
#define RID_SD_MENU_REMOVE_LAST (RID_SD_MENU_START + 8)
#define RID_SD_MENU_AUTO (RID_SD_MENU_START + 9)
#define RID_SD_MENU_RUN_TEST (RID_SD_MENU_START + 10)
//========================================================================
// ContextMenu-Ids
//========================================================================
// ToolBox-Ids
#define RID_SD_TOOLBOX_APP (RID_SD_TOOLBOX_START)
#define RID_SD_TOOLBOX_FILE_NEW (RID_SD_TOOLBOX_START + 1)
#define RID_SD_TOOLBOX_FILE_OPEN (RID_SD_TOOLBOX_START + 2)
#define RID_SD_TOOLBOX_FILE_SAVE (RID_SD_TOOLBOX_START + 3)
//========================================================================
// StatusBar-Ids
//========================================================================
// Image-Ids
#define RID_SD_CP_IMAGE (RID_SD_IMAGE_START)
//========================================================================
// Dialog-Ids
#define RID_SD_DIALOG_NEWPROJECT (RID_SD_DEPPER_DIALOG_START)
#define RID_SD_DIALOG_NEWDIRECTORY (RID_SD_DEPPER_DIALOG_START + 1)
#define RID_SD_DIALOG_HELP (RID_SD_DEPPER_DIALOG_START + 2)
//========================================================================
// String-Ids
#define RID_SD_CP_NAME (RID_SD_STRING_START)
//========================================================================
// Slot-Ids
//========================================================================
// Format-Ids
#endif //_DTSODCMP_HRC
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#include <tools/stream.hxx>
class GenericInformationList;
//
// class MinorMk
//
class MinorMk : public SvFileStream
{
private:
ByteString sRSCVERSION;
ByteString sRSCREVISION;
ByteString sBUILD;
ByteString sLAST_MINOR;
sal_Bool bExists;
void ReadMinorMk( const String &rFileName );
public:
MinorMk(
GenericInformationList *pList,
const ByteString &rVersion,
const ByteString &rWorkStamp,
const ByteString &rEnvironment,
const ByteString &rMinor
);
MinorMk(
const ByteString &rMinor,
const ByteString &rEnvironment
);
MinorMk(
GenericInformationList *pList,
const ByteString rVersion
);
~MinorMk();
ByteString GetRscVersion()
{ return sRSCVERSION; }
ByteString GetRscRevision()
{ return sRSCREVISION; }
ByteString GetBuildNr()
{ return sBUILD; }
ByteString GetLastMinor()
{ return sLAST_MINOR; }
sal_Bool Exists()
{ return bExists; }
};
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef PRODUCT_MAPPER_HXX
#define PRODUCT_MAPPER_HXX
#include <soldep/sstring.hxx>
class GenericInformation;
class GenericInformationList;
DECLARE_LIST( BaseProductList, ByteString * )
//
// class ProductMapper
//
#define PRODUCT_MAPPER_OK 0x0000
#define PRODUCT_MAPPER_NO_PRODUCT 0x0001
#define PRODUCT_MAPPER_NO_VERSION_INFORMATION 0x0002
class ProductMapper
{
private:
GenericInformationList *pVersionList;
GenericInformationList *pProductList;
SByteStringList aBaseList;
SByteStringList aPrintedList;
sal_uInt16 PrintDependentTargets( const ByteString &rProduct, sal_uInt16 nLevel = 0 );
sal_uInt16 PrintAndDeleteBaseList();
SByteStringList *GetMinorList( const ByteString &rVersion, const ByteString &rEnvironment );
BaseProductList *GetBases( GenericInformation *pProductInfo, sal_uInt16 nLevel = 0, BaseProductList *pBases = NULL );
sal_uInt16 PrintSingleMinorList( GenericInformation *pProductInfo, BaseProductList *pBases, const ByteString rEnvironment );
public:
ProductMapper();
ProductMapper( GenericInformationList *pVerList );
~ProductMapper();
void CreateProductList( GenericInformationList *pVerList );
sal_uInt16 GetProductInformation( const ByteString &rProduct, GenericInformation *& pProductInfo );
sal_uInt16 PrintDependencies( const ByteString &rProduct );
sal_uInt16 PrintProductList();
sal_uInt16 PrintMinorList( const ByteString rProduct, const ByteString rEnvironment );
static String GetVersionRoot( GenericInformationList *pList, const ByteString &rVersion );
GenericInformationList *GetProductList() { return pProductList; }
};
#endif // PRODUCT_MAPPER_HXX
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef _MHAPPDEF_HXX
#define _MHAPPDEF_HXX
#ifdef UNX
#define DEFAULT_INI_ROOT "/so/env"
#define DEFAULT_BS_ROOT "/so/env/b_server"
#define DEFAULT_EIS_ROOT "/so/env/merge"
#define PATH_SEPARATOR '/'
#define S_PATH_SEPARATOR "/"
#else
#define DEFAULT_INI_ROOT "r:"
#define DEFAULT_BS_ROOT "n:"
#define DEFAULT_EIS_ROOT "w:"
#define PATH_SEPARATOR '\\'
#define S_PATH_SEPARATOR "\\"
#endif
#define _INI_DRV DEFAULT_INI_ROOT
#define B_SERVER_ROOT DEFAULT_BS_ROOT
#define DEFAULT_INI_FILE B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "b_server.ini"
#define BINARYROOT B_SERVER_ROOT S_PATH_SEPARATOR "bin"
#define _JOB_DIR B_SERVER_ROOT S_PATH_SEPARATOR "server" S_PATH_SEPARATOR "db"
#define _INJOB_DIR B_SERVER_ROOT S_PATH_SEPARATOR "server" S_PATH_SEPARATOR "dbin"
#define _OUTJOB_DIR B_SERVER_ROOT S_PATH_SEPARATOR "server" S_PATH_SEPARATOR "dbout"
#define _ERRJOB_DIR B_SERVER_ROOT S_PATH_SEPARATOR "server" S_PATH_SEPARATOR "dberr"
#define _BUILDPATTERN_DIR B_SERVER_ROOT S_PATH_SEPARATOR "pattern"
#define _COMMENT_DIR B_SERVER_ROOT S_PATH_SEPARATOR "comment"
#define _SOLARLIST B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "solar.lst"
#define _DEF_STAND_LIST B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "stand.lst"
#define _DEF_DEFAULT_LIST B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "default.lst"
#define _DEF_SSOLARINI B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "ssolar.ini"
#define _DEF_SSCOMMON B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "ssolar.cmn"
#define _SERVER_IDENT_FLAG B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "server.id"
#define _CUSTOMJOBINI B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "custom.ini"
#define _BUILDCOMMANDINI B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "bcommand.ini"
#define _DATABASEINI B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "database.ini"
#define _ZNINI B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "bszn.ini"
#define _ERRORINFOFILE B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "errinf.lst"
#define _REGEXPINFOFILE B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "regexp.lst"
#define _POSITIVERRORINFOFILE B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "perrinf.lst"
#define _POSITIVREGEXPINFOFILE B_SERVER_ROOT S_PATH_SEPARATOR "config" S_PATH_SEPARATOR "pregexp.lst"
#define _INIROOT B_SERVER_ROOT S_PATH_SEPARATOR "config"
#define _INIROOT_OLD B_SERVER_ROOT S_PATH_SEPARATOR "config"
#define _ENV_DIR B_SERVER_ROOT S_PATH_SEPARATOR "config"
#define _REDIRECTIONPATH B_SERVER_ROOT S_PATH_SEPARATOR "redir"
#define _ZLOGSPATH B_SERVER_ROOT S_PATH_SEPARATOR "zlogs"
#define DEFAULT_PROTPATH B_SERVER_ROOT S_PATH_SEPARATOR "filesize"
#define _INI_UNC "\\\\jumbo2.germany.sun.com\\R-Laufwerk"
#define _INI_UNC_OLD "\\\\jumbo2.germany.sun.com\\R-Laufwerk"
#define LOG_DIR B_SERVER_ROOT S_PATH_SEPARATOR "log"
#define _REDIRECTIONSIZE "10000"
#define _EISPATH DEFAULT_EIS_ROOT S_PATH_SEPARATOR "EIS"
#define _BUILDEVENTPATH _EISPATH S_PATH_SEPARATOR "EventImport"
#define _WRITE_LOGFILES "1"
#define _WRITE_JOBFILES "1"
#define _VERSION_WINDOW "0"
#define _JOB_WINDOW "0"
#define _APPWIN_MAXIMIZED "0"
#define _CONTEXT_TBOX "0"
#define _COLOR_DROPED COL_GRAY
#define _COLOR_WAIT COL_BLUE
#define _COLOR_BUILD COL_GREEN
#define _COLOR_ERROR COL_RED
#define _COLOR_BUILDERROR COL_MAGENTA
#define _COLOR_OK COL_BLACK
#define _COLOR_DELIVERED COL_CYAN
#define _COLOR_MASTERSTOP COL_LIGHTRED
#define _ASYNCHRON "1"
// folowing defines are used to write filesize information for binaries
#define OH_GOTT "*"
#define UNX_DEFAULT_FILESIZES "bin/" OH_GOTT ".bin;bin/" OH_GOTT ".res;bin/" OH_GOTT ".tlb;lib/" OH_GOTT ".so"
#define DOS_DEFAULT_FILESIZES "bin\\*.exe;bin\\*.res;bin\\*.dll;bin\\*.tlb"
#ifdef UNX
#define DEFAULT_FILESIZES UNX_DEFAULT_FILESIZES
#else
#define DEFAULT_FILESIZES DOS_DEFAULT_FILESIZES
#endif
/** States for BuildServer projects and directories
*/
#ifndef BuildStatus
#define BuildStatus sal_uInt16
#endif
#define BS_DROPED 0 /// project is waiting for dispatching
#define BS_BUILD 1 /// project/directory is building
#define BS_WAIT 2 /// project/directory is waiting for building
#define BS_OK 3 /// project/directory builded whithout errors
#define BS_BUILDANDERROR 4 /// project is in build, any errors accured
#define BS_ERROR 5 /// project/directory builded with errors
#define BS_NON 6 /// no state is set
#define BS_DELIVERED 7 /// project was delivered without errors
#define BS_DELIVEREDANDERROR 8 /// project was delivered with errors
#define BS_FIXED 9 /// errors are fixed
#define BS_NOTDELIVERED 10 /// project is ready to deliver
#define BS_BUILD_PRIO 11 /// build projects with prio
#define BS_BUILD_ORDER 12 /// build project in correct order
#define BS_BUILD_DEPEND 13 /// build projects using dependencies
#define BS_BUILD_DELIVER 14 /// build projects using dependencies and deliver builded projects
#define BS_BUILD_NORMAL 15 /// build projects without using dependencies
#define BS_BUILD_DELIVER_NO_DEPEND 16 /// build projects without using dependencies and deliver builded projects
#define BS_BUILD_DOUBLE_LOG 17 /// error with double log names
#define LF_STARDIV "StarDivision"
#define LF_UNIX "UNIX"
#define LF_MAC "Macintosh"
#define LF_OS2 "OS/2"
// path conversion
const char* GetDefStandList();
const char* GetIniRoot();
const char* GetIniRootOld();
const char* GetSSolarIni();
const char* GetSSCommon();
const char* GetBServerRoot();
const char* GetEnv( const char *pVar );
const char* GetEnv( const char *pVar, const char *pDefault );
#define CONVERT_R_TO_HOSTFSYS( sPath ) { sPath.ToLowerAscii().SearchAndReplace( "r:", GetEnv("ISERVERBASE", DEFAULT_INI_ROOT ) ); sPath.SearchAndReplaceAll( "\\", S_PATH_SEPARATOR ); }
// Only for usage inside IServer!
#define ISERVER_DEF_STAND_LIST "r:\\b_server\\config\\stand.lst"
#define ISERVER_DEF_DEPEND_LIST "r:\\b_server\\config\\depend.lst"
#endif
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef COMMAND_HXX
#define COMMAND_HXX
#include <iostream>
#include <tools/stream.hxx>
#define STRLEN 100
#ifndef UNX
#define TMPNAME "\\command.tmp"
#else
#define TMPNAME "/tmp/command.tmp"
#endif
/** Different types of spawnable programs
*/
enum ExeType
{
EXE, /// programm is a native executable
BAT, /// programm is a DOS-Batch
BTM /// programm is a 4DOS-Batch
};
#define COMMAND_NOTFOUND 0x0001
#define COMMAND_TOOBIG 0x0002
#define COMMAND_INVALID 0x0004
#define COMMAND_NOEXEC 0x0008
#define COMMAND_NOMEM 0x0010
#define COMMAND_UNKNOWN 0x0020
#ifdef WNT
#define COMMAND_SHELL "4nt.exe"
#endif
#ifdef OS2
#define COMMAND_SHELL "4os2.exe"
#endif
#ifdef UNX
#define COMMAND_SHELL "csh"
#endif
class CommandLine;
class LogWindow;
class CommandLine
{
friend class ChildProcess;
private:
char *CommandBuffer;
char *ComShell;
char **ppArgv;
sal_Bool bTmpWrite;
public:
CommandLine(sal_Bool bTmpWrite = sal_False);
CommandLine(const char *, sal_Bool bTmpWrite = sal_False);
CommandLine(const CommandLine&, sal_Bool bTmpWrite = sal_False);
virtual ~CommandLine();
int nArgc;
CommandLine& operator=(const CommandLine&);
CommandLine& operator=(const char *);
void BuildCommand(const char *);
char** GetCommand(void) { return ppArgv; }
void Strtokens(const char *);
void Print();
};
/** Declares and spawns a child process.
The spawned programm could be a native executable or a schell script.
*/
class CCommand
{
private:
ByteString aCommandLine;
ByteString aCommand;
char *pArgv;
char **ppArgv;
sal_uIntPtr nArgc;
int nError;
protected:
void ImplInit();
void Initpp( sal_uIntPtr nCount, ByteString &rStr );
public:
/** Creates the process specified without spawning it
@param rString specifies the programm or shell scrip
*/
CCommand( ByteString &rString );
/** Creates the process specified without spawning it
@param pChar specifies the programm or shell scrip
*/
CCommand( const char *pChar );
/** Try to find the given programm in specified path
@param sEnv specifies the current search path, defaulted by environment
@param sItem specifies the system shell
@return the Location (when programm was found)
*/
static ByteString Search( ByteString sEnv,
ByteString sItem = COMMAND_SHELL );
/** Spawns the Process
@return 0 when spawned without errors, otherwise a error code
*/
operator int();
ByteString GetCommandLine_() { return aCommandLine; }
ByteString GetCommand() { return aCommand; }
char** GetCommandStr() { return ppArgv; }
};
#define COMMAND_EXECUTE_WINDOW 0x0000001
#define COMMAND_EXECUTE_CONSOLE 0x0000002
#define COMMAND_EXECUTE_HIDDEN 0x0000004
#define COMMAND_EXECUTE_START 0x0000008
#define COMMAND_EXECUTE_WAIT 0x0000010
#define COMMAND_EXECUTE_REMOTE 0x1000000
typedef sal_uIntPtr CommandBits;
/** Allowes to spawn programms hidden, waiting etc.
@see CCommand
*/
class CCommandd : public CCommand
{
CommandBits nFlag;
public:
CCommandd( ByteString &rString, CommandBits nBits );
CCommandd( const char *pChar, CommandBits nBits );
operator int();
};
#endif
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef _FMRWRK_CONNCTR_HXX
#define _FMRWRK_CONNCTR_HXX
#include <vcl/window.hxx>
#include <soldep/listmacr.hxx>
#include <tools/stream.hxx>
class DepWin;
class ObjectWin;
static Rectangle aEmptyRect( Point( 0, 0), Point( 0, 0));
class Connector
{
ObjectWin *mpStartWin, *mpEndWin;
sal_uIntPtr mnStartId, mnEndId;
Point mStart, mEnd, mCenter;
DepWin* mpParent;
sal_Bool bVisible;
sal_Bool mbHideIndependend;
static sal_Bool msbHideMode;
public:
double len;
Connector( DepWin* pParent, WinBits nWinStyle );
~Connector();
void Initialize( ObjectWin* pStartWin, ObjectWin* pEndWin, sal_Bool bVis = sal_False );
Point GetMiddle();
void Paint( const Rectangle& rRect );
void UpdatePosition( ObjectWin* pWin, sal_Bool bPaint = sal_True );
sal_uInt16 Save( SvFileStream& rOutFile );
sal_uInt16 Load( SvFileStream& rInFile );
sal_uIntPtr GetStartId(){ return mnStartId; };
sal_uIntPtr GetEndId(){ return mnEndId; };
ObjectWin* GetStartWin(){ return mpStartWin; };
ObjectWin* GetEndWin(){ return mpEndWin; };
ObjectWin* GetOtherWin( ObjectWin* pWin );
sal_uIntPtr GetOtherId( sal_uIntPtr nId );
sal_uIntPtr GetLen();
sal_Bool IsStart( ObjectWin* pWin );
void SetHideIndependend( sal_Bool bHide) { mbHideIndependend = bHide; };
sal_Bool IsVisible() { return bVisible; }
void SetVisibility( sal_Bool visible ) { bVisible = visible; }
void UpdateVisibility();
void SetHideMode(sal_Bool bHide) { msbHideMode = bHide; };
void DrawOutput( OutputDevice* pDevice, const Point& rOffset );
};
DECLARE_LIST( ConnectorList, Connector* )
#endif
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef _FMRWRK_DEPPER_HXX
#define _FMRWRK_DEPPER_HXX
#include <vcl/window.hxx>
#include <vcl/wrkwin.hxx>
#include <tools/resmgr.hxx>
#include <soldep/objwin.hxx>
#include <soldep/depwin.hxx>
#include <soldep/graphwin.hxx>
#include <soldep/tbox.hxx>
#include <soldep/soldlg.hrc>
#include <soldep/hashtbl.hxx>
#include <soldep/hashobj.hxx>
#include <soldep/soldlg.hxx>
#include <soldep/prj.hxx>
#include <soldep/sdtresid.hxx>
DECLARE_HASHTABLE_OWNER(SolIdMapper,ByteString,MyHashObject*)
// just for conversion - convert char* to String
class ProgressBar;
class FixedText;
#define SOLDEPL_NAME "StarDepend V1.0"
#define DEPPER_ID 4711
//User Events
#define VCLEVENT_USER_MOUSEBUTTON_DOWN 5000
#define VCLEVENT_USER_MOUSEBUTTON_DOWN_ALT 5001
#define VCLEVENT_USER_MOUSEBUTTON_DOWN_CTRL 5002
#define VCLEVENT_USER_MOUSEBUTTON_UP 5003
#define VCLEVENT_USER_MOUSEBUTTON_UP_ALT 5004
#define VCLEVENT_USER_MOUSEBUTTON_UP_CTRL 5005
#define VCLEVENT_USER_MOUSEBUTTON_UP_SHFT 5006
#define VCLEVENT_USER_MOUSEBUTTON_DOWN_DBLCLICK 5007
#define VCLEVENT_USER_TBOX_RESIZE 5008
#define VCLEVENT_USER_TBOX_RESIZE_APP 5009
#define VCLEVENT_USER_TBOX_FIND 5010
#define VCLEVENT_USER_TBOX_HIDE_INDEPENDEND 5011
#define VCLEVENT_USER_TBOX_SELECT_WORKSPACE 5012
#define VCLEVENT_USER_TBOX_BACK 5013
#define OBJWIN_X_SPACING 50
#define OBJWIN_Y_SPACING 12
#define DEPPER_MAX_DEPTH 100
#define DEPPER_MAX_WIDTH 12
#define DEPPER_MAX_LEVEL_WIDTH 10 * DEPPER_MAX_WIDTH
#define DEP_OK 0
#define DEP_OBJECT_NOT_FOUND 1
#define DEP_STARTID_NOT_FOUND 2
#define DEP_ENDID_NOT_FOUND 3
#define DEP_CONNECTOR_NOT_FOUND 4
#define DEP_ENDLES_RECURSION_FOUND DEPPER_MAX_DEPTH + 1
#define DEPPOPUP_NEW 1
#define DEPPOPUP_AUTOARRANGE 2
#define DEPPOPUP_LOAD 3
#define DEPPOPUP_SAVE 4
#define DEPPOPUP_WRITE_SOURCE 5
#define DEPPOPUP_READ_SOURCE 6
#define DEPPOPUP_OPEN_SOURCE 7
#define DEPPOPUP_ZOOMIN 8
#define DEPPOPUP_ZOOMOUT 9
#define DEPPOPUP_CLEAR 10
#define DEPPOPUP_CLOSE 11
#define DEPPOPUP_HELP 12
#define DEPPOPUP_SHOW_TOOLBOX 13
#define DEPPOPUP_TEST 0xff
struct depper_head
{
sal_uIntPtr nID;
sal_uIntPtr nObjectCount;
sal_uIntPtr nCnctrCount;
};
enum DistType
{
BOTTOMUP = 0,
TOPDOWN = 1,
BOTH = 2
};
class Depper : public SolDevDll, public Window
{
sal_Bool mbIsPrjView;
sal_uIntPtr mnMinDynXOffs;
Point maDefPos;
Size maDefSize;
long nZoomed;
sal_uIntPtr mnViewMask;
ProgressBar* pSubBar;
ProgressBar* pMainBar;
FixedText* pSubText;
FixedText* pMainText;
SolAutoarrangeDlg maArrangeDlg;
protected:
Prj* mpPrj;
SolIdMapper* mpSolIdMapper;
SolIdMapper* mpPrjIdMapper;
StarWriter* mpStarWriter;
StarWriter* mpPrjStarWriter; //for inside prj-view
sal_uIntPtr mnSolWinCount;
sal_uIntPtr mnSolLastId;
sal_uIntPtr mnPrjWinCount;
sal_uIntPtr mnPrjLastId;
ObjectList* mpObjectList; //Extended ObjWinList class
ObjectList* mpObjectPrjList; //for module internal dependencies
DepWin* mpBaseWin;
DepWin* mpBasePrjWin; //for inside prj-view
GraphWin* mpGraphWin;
GraphWin* mpGraphPrjWin; //for inside prj-view
Window* mpProcessWin;
Window* mpParentProcessWin;
ObjectWin* ObjIdToPtr( ObjectList* pObjLst, sal_uIntPtr nId );
SoldepToolBox maToolBox;
FloatingWindow maTaskBarFrame; // For ToolBox
sal_uIntPtr AddObjectToList(DepWin* pParentWin, ObjectList* pObjLst, sal_uIntPtr &LastID, sal_uIntPtr &WinCount, ByteString& rBodyText, sal_Bool bInteract=sal_True );
sal_uIntPtr AddObjectToList( DepWin* pParentWin, ObjectList* pObjLst, sal_uIntPtr &LastID, sal_uIntPtr &WinCount, ByteString& rBodyText, Point& rPos, Size& rSize );
ObjectWin* RemoveObjectFromList( ObjectList* pObjLst, sal_uIntPtr &WinCount, sal_uInt16 nId, sal_Bool bDelete );
sal_uInt16 AddConnectorToObjects( ObjectList* pObjLst, sal_uIntPtr nStartId, sal_uIntPtr nEndId );
sal_uInt16 RemoveConnectorFromObjects( ObjectList* pObjLst, sal_uIntPtr nStartId, sal_uIntPtr nEndId );
sal_uInt16 AddConnectorToObjects( ObjectWin* pStartWin, ObjectWin* pEndWin );
sal_uInt16 RemoveConnectorFromObjects( ObjectWin* pStartWin, ObjectWin* pEndWin );
public:
Depper( Window* pBaseWindow );
~Depper();
sal_Bool TogglePrjViewStatus();
void SetPrjViewStatus(sal_Bool state) { mbIsPrjView = state; }
sal_Bool IsPrjView() { return mbIsPrjView; }
GraphWin* GetGraphWin() { return (!mbIsPrjView) ? mpGraphWin : mpGraphPrjWin; } //scrollbar window
DepWin* GetDepWin() { return (!mbIsPrjView) ? mpBaseWin : mpBasePrjWin; } //content of scrollbar window
ProgressBar* GetMainProgressBar() { return pMainBar; }
void SetMainProgressBar( sal_uInt16 i);
void UpdateMainProgressBar(sal_uInt16 i, sal_uInt16 nScaleVal, sal_uInt16 &nStep, sal_Bool bCountingDown = sal_False);
void UpdateSubProgrssBar(sal_uIntPtr i);
void SetTitle( const String &rTitle ) { mpProcessWin->SetText( rTitle ); }
virtual void RemoveAllObjects( ObjectList* ObjLst );
sal_uInt16 Save( const ByteString& rFileName );
// sal_uInt16 Load( const ByteString& rFileName );
virtual sal_uInt16 WriteSource();
virtual sal_uInt16 ReadSource( sal_Bool bUpdater );
virtual sal_uInt16 OpenSource();
void SetDefPos( Point& rPos ) { maDefPos = rPos; };
Point& GetDefPos() { return maDefPos; };
void SetDefSize( Size& rSize ) { maDefSize = rSize; };
Size& GetDefSize() { return maDefSize; };
virtual sal_uInt16 AutoArrangeDlgStart();
virtual sal_uInt16 AutoArrangeDlgStop();
virtual sal_uInt16 Zoom( MapMode& rMapMode );
virtual sal_Bool ViewContent( ByteString& ) { return sal_False; };
virtual sal_uInt16 CloseWindow() { return 0; };
virtual void ShowHelp(){};
ObjectList* GetObjectList() { return (!mbIsPrjView) ? mpObjectList : mpObjectPrjList; }
sal_uIntPtr HandleNewPrjDialog( ByteString &rBodyText );
sal_uIntPtr HandleNewDirectoryDialog( ByteString &rBodyText );
void HideObjectsAndConnections( ObjectList* pObjLst );
void ShowObjectsAndConnections( ObjectList* pObjLst );
//virtual void MouseButtonDown( const MouseEvent& rMEvt );
//#ifdef DEBUG
virtual void test(){};
DECL_LINK( PopupSelected, PopupMenu* );
//#endif
//void SetViewMask( sal_uIntPtr nMask );
sal_uIntPtr GetViewMask() { return mnViewMask; }
};
#endif
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef _FMRWRK_DEPWIN_HXX
#define _FMRWRK_DEPWIN_HXX
#ifndef _SV_WRKWIN_HXX
#include <vcl/wrkwin.hxx>
#endif
#include <vcl/menu.hxx>
#include <svtools/scrwin.hxx>
#include <soldep/connctr.hxx>
class Depper;
class DepWin : public Window
{
private:
ConnectorList ConList;
ObjectWin* mpNewConWin;
sal_Bool mbStartNewCon;
Point maNewConStart;
Point maNewConEnd;
ObjectWin* mpSelectedProject;
public:
PopupMenu* mpPopup;
// Depper* mpDepperDontuseme;
DepWin( Window* pParent, WinBits nWinStyle );
~DepWin();
void AddConnector( Connector* pNewCon );
void RemoveConnector( Connector* piOldCon );
void NewConnector( ObjectWin* pWin );
ConnectorList* GetConnectorList();
void ClearConnectorList() { ConList.Clear();}
void Paint( const Rectangle& rRect );
void MouseButtonUp( const MouseEvent& rMEvt );
virtual void Command( const CommandEvent& rEvent);
// void Resize();
void MouseMove( const MouseEvent& rMEvt );
sal_Bool IsStartNewCon() { return mbStartNewCon; };
void SetPopupHdl( void* pHdl );
void SetSelectedProject( ObjectWin* object ) { mpSelectedProject = object; };
ObjectWin* GetSelectedProject() { return mpSelectedProject; };
// DECL_LINK( PopupSelected, PopupMenu* );
void DrawOutput( OutputDevice* pDevice, const Point& rOffset );
};
#endif
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef _FMRWRK_GRAPHWIN_HXX
#define _FMRWRK_GRAPHWIN_HXX
#include <svtools/scrwin.hxx>
class GraphWin : public ScrollableWindow
{
private:
void* mpClass;
protected:
Window aBufferWindow;
public:
GraphWin( Window * pParent, void * pClass );
void CalcSize();
virtual void EndScroll( long nDeltaX, long nDeltaY );
virtual void Resize();
virtual void Command( const CommandEvent& rEvent);
Window* GetBufferWindow(){ return &aBufferWindow; };
};
#define PIXELS( nLeft, nTop, nWidth, nHeight )\
LogicToPixel( Point( nLeft, nTop ) ), LogicToPixel( Size( nWidth, nHeight ) )
#endif // _FMRWRK_GRAPHWIN_HXX
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef _FMRWRK_HASHOBJ_HXX
#define _FMRWRK_HASHOBJ_HXX
#include <soldep/hashtbl.hxx>
class ObjectWin;
class MyHashObject
{
ObjectWin* mpWin;
sal_uIntPtr mnId;
public:
MyHashObject( sal_uIntPtr nId, ObjectWin* pWin );
sal_uIntPtr GetId() { return mnId; };
};
#endif
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef _HASHTBL_HXX
#define _HASHTBL_HXX
#include <tools/gen.hxx>
#include <tools/string.hxx>
// ADT hash table
//
// Invariante:
// 1. m_lElem < m_lSize
// 2. die Elemente in m_Array wurden double-hashed erzeugt
//
class HashItem;
class HashTable
{
sal_uIntPtr m_lSize;
sal_uIntPtr m_lElem;
HashItem *m_pData;
double m_dMaxLoadFactor;
double m_dGrowFactor;
sal_Bool m_bOwner;
sal_uIntPtr Hash(ByteString const& Key) const;
sal_uIntPtr DHash(ByteString const& Key, sal_uIntPtr lHash) const;
sal_uIntPtr Probe(sal_uIntPtr lPos) const;
HashItem* FindPos(ByteString const& Key) const;
void SmartGrow();
double CalcLoadFactor() const;
// Statistik
#ifdef DBG_UTIL
private:
struct
{
sal_uIntPtr m_lSingleHash;
sal_uIntPtr m_lDoubleHash;
sal_uIntPtr m_lProbe;
}
m_aStatistic;
#endif
protected:
friend class HashTableIterator;
virtual void OnDeleteObject(void* pObject);
void* GetObjectAt(sal_uIntPtr lPos) const;
// Default-Werte
public:
static double m_defMaxLoadFactor;
static double m_defDefGrowFactor;
public:
HashTable
(
sal_uIntPtr lSize,
sal_Bool bOwner,
double dMaxLoadFactor = HashTable::m_defMaxLoadFactor /* 0.8 */,
double dGrowFactor = HashTable::m_defDefGrowFactor /* 2.0 */
);
virtual ~HashTable();
sal_Bool IsFull() const;
sal_uIntPtr GetSize() const { return m_lSize; }
void* Find (ByteString const& Key) const;
sal_Bool Insert (ByteString const& Key, void* pObject);
void* Delete (ByteString const& Key);
};
// ADT hash table iterator
//
// Invariante: 0 <= m_lAt < m_aTable.GetCount()
//
class HashTableIterator
{
sal_uIntPtr m_lAt;
HashTable const& m_aTable;
void* FindValidObject(sal_Bool bForward);
protected:
void* GetFirst(); // Interation _ohne_ Sortierung
void* GetNext();
void* GetLast();
void* GetPrev();
public:
HashTableIterator(HashTable const&);
};
// typsichere Makros ---------------------------------------------------
#define DECLARE_HASHTABLE_INTERN(ClassName,Owner,KeyType,ObjType) \
class ClassName : public HashTable \
{ \
public: \
ClassName \
( \
sal_uIntPtr lSize, \
double dMaxLoadFactor = HashTable::m_defMaxLoadFactor, \
double dGrowFactor = HashTable::m_defDefGrowFactor \
) \
: HashTable(lSize,Owner,dMaxLoadFactor,dGrowFactor) {} \
\
ObjType Find (KeyType const& Key) const \
{ return (ObjType) HashTable::Find(ByteString(Key)); } \
\
using HashTable::Insert; \
sal_Bool Insert (KeyType const& Key, ObjType Object) \
{ return HashTable::Insert(ByteString(Key), (void*) Object); } \
\
ObjType Delete (KeyType const&Key) \
{ return (ObjType) HashTable::Delete (ByteString(Key)); } \
};
// HashTable OHNE Owner-Verhalten
#define DECLARE_HASHTABLE(ClassName,KeyType,ObjType) \
DECLARE_HASHTABLE_INTERN(ClassName,sal_False,KeyType,ObjType)
// HashTable MIT Owner-Verhalten
#define DECLARE_HASHTABLE_OWNER(ClassName,KeyType,ObjType) \
DECLARE_HASHTABLE_INTERN(ClassName##2,sal_True,KeyType,ObjType) \
class ClassName : public ClassName##2 \
{ \
protected: \
virtual void OnDeleteObject(void* pObject); \
public: \
ClassName \
( \
sal_uIntPtr lSize, \
double dMaxLoadFactor = HashTable::m_defMaxLoadFactor, \
double dGrowFactor = HashTable::m_defDefGrowFactor \
) \
: ClassName##2(lSize,dMaxLoadFactor,dGrowFactor) {} \
~ClassName(); \
};
#define IMPLEMENT_HASHTABLE_OWNER(ClassName,KeyType,ObjType) \
void ClassName::OnDeleteObject(void* pObject) \
{ delete (ObjType) pObject; } \
\
ClassName::~ClassName() \
{ \
for (sal_uIntPtr i=0; i<GetSize(); i++) \
{ \
void *pObject = GetObjectAt(i); \
if (pObject != NULL) \
OnDeleteObject(pObject); \
} \
}
// Iterator-Makros --------------------------------------------------
#define DECLARE_HASHTABLE_ITERATOR(ClassName,ObjType) \
class ClassName : public HashTableIterator \
{ \
public: \
ClassName(HashTable const& aTable) \
: HashTableIterator(aTable) {} \
\
ObjType GetFirst() \
{ return (ObjType)HashTableIterator::GetFirst(); } \
ObjType GetNext() \
{ return (ObjType)HashTableIterator::GetNext(); } \
ObjType GetLast() \
{ return (ObjType)HashTableIterator::GetLast(); } \
ObjType GetPrev() \
{ return (ObjType)HashTableIterator::GetPrev(); } \
};
#endif // _HASHTBL_HXX
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef _LISTMACR_HXX
#define _LISTMACR_HXX
#define DECL_DEST_LIST( TmpListType, ListType, PointerType ) \
DECLARE_LIST(TmpListType, PointerType) \
class ListType : public TmpListType \
{ \
public: \
void ClearAndDelete() \
{ \
while ( Count()) { \
PointerType pTmp = GetObject(( sal_uIntPtr ) 0 ); \
delete pTmp; \
Remove(( sal_uIntPtr ) 0 ); \
} \
} \
~ListType() \
{ \
ClearAndDelete(); \
} \
}; \
#endif
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef _FMRWRK_OBJWIN_HXX
#define _FMRWRK_OBJWIN_HXX
#ifndef _SV_WINDOW_HXX
#include <vcl/window.hxx>
#endif
#include <vcl/menu.hxx>
#include <vcl/timer.hxx>
#include <soldep/listmacr.hxx>
#include <tools/stream.hxx>
#include <soldep/connctr.hxx>
#define OBJWIN_EDIT_TEXT 1
#define OBJWIN_ADD_CONNECTOR 2
#define OBJWIN_REMOVE_WIN 3
#define OBJWIN_VIEW_CONTENT 4
#define MARKMODE_DEFAULT 0
#define MARKMODE_DEPENDING 1
#define MARKMODE_NEEDED 2
#define MARKMODE_ACTIVATED 4
#define MARKMODE_SELECTED 8
class Depper;
class Connector;
class ObjectWin;
class ObjectWin : public Window
{
Point maMouseOffset;
Point maCalcPos;
ByteString msBodyText;
ByteString msTipText;
sal_uIntPtr mnObjectId;
PopupMenu* mpPopup;
sal_uInt16 mnPopupStaticItems;
Wallpaper maObjWallpaper;
ConnectorList mConnections;
sal_uIntPtr mnMarkMode;
sal_uIntPtr mnViewMask;
sal_Bool mbVisible;
sal_Bool mbMenuExecute;
static sal_Bool msbHideMode;
static sal_uIntPtr msnGlobalViewMask; //will be set by SolDep
public:
sal_Bool mbVisited;
// double x, y;
sal_uInt16 mnRootDist;
sal_uInt16 mnHeadDist;
sal_Bool mbFixed;
//Depper* mpDepperDontuseme;
Timer aTipTimer;
ObjectWin( Window* pParent, WinBits nWinStyle );
~ObjectWin();
void SetHideMode(sal_Bool bHide);
sal_Bool ToggleHideMode();
sal_Bool IsHideMode() { return msbHideMode; };
sal_Bool IsNullObject() { return (msBodyText == "null"); };
void SetGlobalViewMask(sal_uIntPtr gvm) { msnGlobalViewMask = gvm; };
void SetBodyText( const ByteString& rNewText );
ByteString& GetBodyText();
sal_uIntPtr GetIdByName( const ByteString& rText );
void SetTipText( const ByteString& rNewText );
ByteString& GetTipText();
Point GetFixPoint( const Point& rRefPoint, sal_Bool bUseRealPos = sal_True );
void SetCalcPosPixel( const Point& rNewPos ){ maCalcPos = rNewPos; };
Point GetCalcPosPixel() const { return maCalcPos; }
void AddConnector( Connector* pNewCon );
void RemoveConnector( Connector* pOldCon );
Connector* GetConnector( sal_uIntPtr nIndex );
Connector* GetConnector( sal_uIntPtr nStartId, sal_uIntPtr nEndId );
virtual void SetMarkMode( sal_uIntPtr nMarkMode = 0 );
virtual void UnsetMarkMode( sal_uIntPtr nMarkMode );
sal_uIntPtr GetMarkMode(){ return mnMarkMode; };
Wallpaper GetActualWallpaper() { return maObjWallpaper;};
void SetActualWallpaper(const Wallpaper& aWp) { maObjWallpaper = aWp;};
void MarkNeeded( sal_Bool bReset = sal_False );
void MarkDepending( sal_Bool bReset = sal_False );
void Paint( const Rectangle& rRecct );
void MouseButtonDown( const MouseEvent& rMEvt );
void MouseButtonUp( const MouseEvent& rMEvt );
void MouseMove( const MouseEvent& rMEvt );
// void DoubleClick();
sal_uInt16 Save( SvFileStream& rOutFile );
sal_uInt16 Load( SvFileStream& rInFile );
void SetId( sal_uIntPtr nId );
sal_uIntPtr GetId();
void UpdateConnectors();
void SetAllConnectorsUnvisible();
virtual void Command( const CommandEvent& rEvent);
void SetViewMask( sal_uIntPtr nMask );
sal_uIntPtr GetViewMask() { return mnViewMask; }
using Window::IsVisible;
sal_Bool IsVisible() { return mbVisible; }
DECL_LINK( PopupSelected, PopupMenu * );
DECL_LINK( PopupDeactivated, PopupMenu * );
DECL_LINK( TipHdl, void * );
//virtual void GetFocus();
virtual void LoseFocus();
sal_Bool ConnectionExistsInAnyDirection( ObjectWin *pWin );
void DrawOutput( OutputDevice* pDevice, const Point& rOffset );
sal_Bool IsTop();
};
DECL_DEST_LIST( TmpObjWinList, ObjWinList, ObjectWin* )
//Extend ObjWinList
class ObjectList : public ObjWinList
{
private:
ObjectWin* pSelectedObjectWin;
protected:
sal_Bool mbHideMode;
public:
ObjectList();
~ObjectList() {};
void ResetSelectedObject();
ObjectWin* GetPtrByName( const ByteString& rText );
ObjectList* FindTopLevelModules();
};
#endif
This diff is collapsed.
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef _SOLDEV_RESID_HXX_
#define _SOLDEV_RESID_HXX_
#include <tools/resmgr.hxx>
#include <tools/shl.hxx>
#include <vcl/svapp.hxx>
class SolDevDll
{
ResMgr* pResMgr;
public:
SolDevDll();
~SolDevDll();
ResMgr* GetResMgr() { return pResMgr; }
};
class DtSodResId : public ResId
{
public:
DtSodResId(sal_uInt16 nId);
};
#endif
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
dp soldep : svtools NULL
dp soldep usr1 - all dp_mkout NULL
dp soldep\bootstrp nmake - all dp_btstrp NULL
dp soldep\source nmake - all dp_soldep dp_btstrp NULL
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -125,7 +125,6 @@ RMCXTLIB=-lrmcxt
.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
BTSTRPLIB=-lbtstrp
BTSTRPDTLIB=-lbootstrpdt$(DLLPOSTFIX)
SOLDEPLIB=-lsoldep$(DLLPOSTFIX)
TRANSEXLIB=-ltransex
OTXLIB=-lotx_ind
OSXLIB=-losx
......@@ -393,7 +392,6 @@ FWELIB=ifwe.lib
FWILIB=ifwi.lib
BTSTRPLIB=btstrp.lib
BTSTRPDTLIB=bootstrpdt.lib
SOLDEPLIB=soldep.lib
TRANSEXLIB=transex.lib
ICOLIB=icom.lib
SVTOOLLIB=svtool.lib
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment