User: hr Date: 2007-11-01 15:26:23+0000 Modified: dba/dbaccess/source/ui/querydesign/ConnectionLine.cxx
Log: INTEGRATION: CWS dba24b (1.12.44); FILE MERGED 2007/08/22 11:41:58 oj 1.12.44.1: #i76374# handle cross join as natural join now in query design File Changes: Directory: /dba/dbaccess/source/ui/querydesign/ =============================================== File [changed]: ConnectionLine.cxx Url: http://dba.openoffice.org/source/browse/dba/dbaccess/source/ui/querydesign/ConnectionLine.cxx?r1=1.12&r2=1.13 Delta lines: +28 -31 --------------------- --- ConnectionLine.cxx 2007-05-10 10:36:54+0000 1.12 +++ ConnectionLine.cxx 2007-11-01 15:26:19+0000 1.13 @@ -89,7 +89,7 @@ Rectangle aReturn; if ( pListBox ) { - long nRowHeight = pListBox->GetEntryHeight(); + const long nRowHeight = pListBox->GetEntryHeight(); aReturn.Top() = _aConnPos.Y() - nRowHeight; aReturn.Bottom() = aReturn.Top() + nRowHeight; if (_aDescrLinePos.X() < _aConnPos.X()) @@ -116,9 +116,10 @@ void calcPointsYValue(const OTableWindow* _pWin,SvLBoxEntry* _pEntry,Point& _rNewConPos,Point& _rNewDescrPos) { const OTableWindowListBox* pListBox = _pWin->GetListBox(); - long nRowHeight = pListBox->GetEntryHeight(); - _rNewConPos.Y() = _pWin->GetPosPixel().Y(); + if ( _pEntry ) + { + const long nRowHeight = pListBox->GetEntryHeight(); _rNewConPos.Y() += pListBox->GetPosPixel().Y(); long nEntryPos = pListBox->GetEntryPosition( _pEntry ).Y(); @@ -135,6 +136,9 @@ + pListBox->GetSizePixel().Height(); if( _rNewConPos.Y() > nListBoxBottom ) _rNewConPos.Y() = nListBoxBottom + 2; + } + else + _rNewConPos.Y() += static_cast<sal_Int32>(pListBox->GetPosPixel().Y()*0.5); _rNewDescrPos.Y() = _rNewConPos.Y(); } @@ -149,8 +153,6 @@ OConnectionLine::OConnectionLine( OTableConnection* _pConn, OConnectionLineDataRef _pLineData ) : m_pTabConn( _pConn ) ,m_pData( _pLineData ) - ,m_pSourceEntry( NULL ) - ,m_pDestEntry( NULL ) { DBG_CTOR(OConnectionLine,NULL); } @@ -179,8 +181,6 @@ // CopyFrom ist virtuell, damit ist es kein Problem, wenn m_pData von einem von OTableConnectionData abgeleiteten Typ ist m_pTabConn = rLine.m_pTabConn; - m_pSourceEntry = rLine.m_pSourceEntry; - m_pDestEntry = rLine.m_pDestEntry; m_aSourceConnPos = rLine.m_aSourceConnPos; m_aDestConnPos = rLine.m_aDestConnPos; m_aSourceDescrLinePos = rLine.m_aSourceDescrLinePos; @@ -261,11 +261,8 @@ if( !pSourceWin || !pDestWin ) return FALSE; - m_pSourceEntry = pSourceWin->GetListBox()->GetEntryFromText( GetData()->GetSourceFieldName() ); - m_pDestEntry = pDestWin->GetListBox()->GetEntryFromText( GetData()->GetDestFieldName() ); - - if( !m_pSourceEntry || !m_pDestEntry ) - return FALSE; + SvLBoxEntry* pSourceEntry = pSourceWin->GetListBox()->GetEntryFromText( GetData()->GetSourceFieldName() ); + SvLBoxEntry* pDestEntry = pDestWin->GetListBox()->GetEntryFromText( GetData()->GetDestFieldName() ); ////////////////////////////////////////////////////////////////////// // X-Koordinaten bestimmen @@ -296,11 +293,11 @@ ////////////////////////////////////////////////////////////////////// // aSourceConnPosY bestimmen - calcPointsYValue(pSourceWin,m_pSourceEntry,m_aSourceConnPos,m_aSourceDescrLinePos); + calcPointsYValue(pSourceWin,pSourceEntry,m_aSourceConnPos,m_aSourceDescrLinePos); ////////////////////////////////////////////////////////////////////// // aDestConnPosY bestimmen - calcPointsYValue(pDestWin,m_pDestEntry,m_aDestConnPos,m_aDestDescrLinePos); + calcPointsYValue(pDestWin,pDestEntry,m_aDestConnPos,m_aDestDescrLinePos); return TRUE; } @@ -360,7 +357,7 @@ // ----------------------------------------------------------------------------- BOOL OConnectionLine::IsValid() const { - return m_pData.isValid() && m_pData->IsValid(); + return m_pData.isValid(); } //------------------------------------------------------------------------ double dist_Euklid(const Point &p1, const Point& p2,const Point& pM, Point& q) --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
