Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 101888 Details for
Bug 225536
[Bidi] Support global orientation of report output
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
Patch fix for engine
engine080525.diff (text/plain), 22.01 KB, created by
Lina Kemmel
on 2008-05-25 12:36:30 EDT
(
hide
)
Description:
Patch fix for engine
Filename:
MIME Type:
Creator:
Lina Kemmel
Created:
2008-05-25 12:36:30 EDT
Size:
22.01 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.birt.report.engine >Index: src/org/eclipse/birt/report/engine/layout/pdf/emitter/RowLayout.java >=================================================================== >RCS file: /cvsroot/birt/source/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/layout/pdf/emitter/RowLayout.java,v >retrieving revision 1.2 >diff -u -r1.2 RowLayout.java >--- src/org/eclipse/birt/report/engine/layout/pdf/emitter/RowLayout.java 22 Apr 2008 09:43:46 -0000 1.2 >+++ src/org/eclipse/birt/report/engine/layout/pdf/emitter/RowLayout.java 25 May 2008 15:18:59 -0000 >@@ -15,6 +15,7 @@ > > import org.eclipse.birt.report.engine.content.IContent; > import org.eclipse.birt.report.engine.content.IRowContent; >+import org.eclipse.birt.report.engine.css.engine.value.birt.BIRTConstants; > import org.eclipse.birt.report.engine.extension.IReportItemExecutor; > import org.eclipse.birt.report.engine.layout.ILayoutManager; > import org.eclipse.birt.report.engine.layout.area.IArea; >@@ -26,6 +27,7 @@ > import org.eclipse.birt.report.engine.layout.pdf.PDFLayoutEngineContext; > import org.eclipse.birt.report.engine.layout.pdf.PDFStackingLM; > import org.eclipse.birt.report.engine.layout.pdf.PDFTableLM; >+import org.eclipse.birt.report.model.api.ReportDesignHandle; > > > public class RowLayout extends ContainerLayout >@@ -70,7 +72,18 @@ > { > CellArea cArea = (CellArea) area; > root.addChild( area ); >- cArea.setPosition( tbl.getXPos( cArea.getColumnID( ) ), 0 ); >+ >+ // bidi_hcg start >+ int columnID = cArea.getColumnID( ); >+ int colSpan = cArea.getColSpan( ); >+ // Retrieve direction from the top-level content. >+ if ( colSpan > 1 && content.isRTL( ) ) >+ { >+ columnID += colSpan - 1; >+ } >+ // bidi_hcg end >+ >+ cArea.setPosition( tbl.getXPos( columnID ), 0 ); > //tbl.addRow( (RowArea)root ); > return true; > } >Index: src/org/eclipse/birt/report/engine/layout/pdf/emitter/TableLayout.java >=================================================================== >RCS file: /cvsroot/birt/source/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/layout/pdf/emitter/TableLayout.java,v >retrieving revision 1.4 >diff -u -r1.4 TableLayout.java >--- src/org/eclipse/birt/report/engine/layout/pdf/emitter/TableLayout.java 20 May 2008 11:03:16 -0000 1.4 >+++ src/org/eclipse/birt/report/engine/layout/pdf/emitter/TableLayout.java 25 May 2008 15:18:59 -0000 >@@ -32,9 +32,6 @@ > import org.eclipse.birt.report.engine.layout.area.impl.CellArea; > import org.eclipse.birt.report.engine.layout.area.impl.RowArea; > import org.eclipse.birt.report.engine.layout.area.impl.TableArea; >-import org.eclipse.birt.report.engine.layout.pdf.PDFLayoutEngineContext; >-import org.eclipse.birt.report.engine.layout.pdf.PDFLayoutManagerFactory; >-import org.eclipse.birt.report.engine.layout.pdf.PDFTableRegionLM; > import org.eclipse.birt.report.engine.layout.pdf.util.PropertyUtil; > > >@@ -719,12 +716,24 @@ > this.columnNumber = colWidth.length; > this.xPositions = new int[columnNumber]; > this.tableWidth = 0; >- for ( int i = 0; i < columnNumber; i++ ) >+ >+ if ( tableContent.isRTL( ) ) // bidi_hcg > { >- xPositions[i] = tableWidth; >- tableWidth += colWidth[i]; >+ for ( int i = 0; i < columnNumber; i++ ) >+ { >+ xPositions[i] = parent.getCurrentMaxContentWidth( ) - tableWidth >+ - colWidth[i]; >+ tableWidth += colWidth[i]; >+ } >+ } >+ else // ltr >+ { >+ for ( int i = 0; i < columnNumber; i++ ) >+ { >+ xPositions[i] = tableWidth; >+ tableWidth += colWidth[i]; >+ } > } >- > } > > public int getTableWidth( ) >Index: src/org/eclipse/birt/report/engine/layout/pdf/emitter/TableAreaLayout.java >=================================================================== >RCS file: /cvsroot/birt/source/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/layout/pdf/emitter/TableAreaLayout.java,v >retrieving revision 1.2 >diff -u -r1.2 TableAreaLayout.java >--- src/org/eclipse/birt/report/engine/layout/pdf/emitter/TableAreaLayout.java 22 Apr 2008 09:43:46 -0000 1.2 >+++ src/org/eclipse/birt/report/engine/layout/pdf/emitter/TableAreaLayout.java 25 May 2008 15:26:08 -0000 >@@ -65,6 +65,8 @@ > this.layoutInfo = layoutInfo; > this.startCol = startCol; > this.endCol = endCol; >+ if ( tableContent != null ) >+ bcr.setRTL( tableContent.isRTL( ) ); > } > > public void initTableLayout(UnresolvedRowHint hint) >Index: src/org/eclipse/birt/report/engine/internal/content/wrap/AbstractContentWrapper.java >=================================================================== >RCS file: /cvsroot/birt/source/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/internal/content/wrap/AbstractContentWrapper.java,v >retrieving revision 1.6 >diff -u -r1.6 AbstractContentWrapper.java >--- src/org/eclipse/birt/report/engine/internal/content/wrap/AbstractContentWrapper.java 1 Feb 2008 10:00:55 -0000 1.6 >+++ src/org/eclipse/birt/report/engine/internal/content/wrap/AbstractContentWrapper.java 25 May 2008 15:18:59 -0000 >@@ -24,6 +24,7 @@ > import org.eclipse.birt.report.engine.content.IStyle; > import org.eclipse.birt.report.engine.content.impl.AbstractElement; > import org.eclipse.birt.report.engine.css.engine.CSSEngine; >+import org.eclipse.birt.report.engine.css.engine.value.birt.BIRTConstants; > import org.eclipse.birt.report.engine.ir.DimensionType; > > abstract public class AbstractContentWrapper extends AbstractElement >@@ -428,4 +429,16 @@ > { > throw new UnsupportedOperationException(); > } >+ >+ /* >+ * (non-Javadoc) >+ * >+ * @see org.eclipse.birt.report.engine.content.IContent#isOrientationRTL() >+ */ >+ public boolean isRTL( ) >+ { >+ // bidi_hcg >+ return content.isRTL( ); >+ } >+ > } >\ No newline at end of file >Index: src/org/eclipse/birt/report/engine/parser/StylePropertyMapping.java >=================================================================== >RCS file: /cvsroot/birt/source/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/parser/StylePropertyMapping.java,v >retrieving revision 1.3 >diff -u -r1.3 StylePropertyMapping.java >--- src/org/eclipse/birt/report/engine/parser/StylePropertyMapping.java 19 May 2008 07:21:39 -0000 1.3 >+++ src/org/eclipse/birt/report/engine/parser/StylePropertyMapping.java 25 May 2008 16:14:03 -0000 >@@ -18,6 +18,7 @@ > import org.eclipse.birt.report.engine.css.engine.value.css.CSSConstants; > import org.eclipse.birt.report.engine.util.BidiAlignmentResolver; > import org.eclipse.birt.report.model.api.ReportDesignHandle; >+import org.eclipse.birt.report.model.api.StyleHandle; > import org.eclipse.birt.report.model.api.elements.DesignChoiceConstants; > import org.eclipse.birt.report.model.api.elements.ReportDesignConstants; > import org.eclipse.birt.report.model.api.metadata.IElementDefn; >@@ -157,6 +158,14 @@ > > if ( value == null && handle != null ) > { >+ // Disable this chunk of code. >+ // Similar rule should apply to RTL: we can't change the >+ // null value to the right. >+ // We will resolve textAlign later on. >+ >+ // (Please note that before Bidi the default value in >+ // engine was 'left' (see BIRTPropertyManagerFactory).) >+ /* > if ( IStyleModel.TEXT_ALIGN_PROP.equals( name ) ) > { > String resultTextAlign = BidiAlignmentResolver.getDefaultAlignment( handle.getBidiOrientation( ) ); >@@ -165,11 +174,12 @@ > // The default textAlign value of the report is null. And > // the default table head should be center. So we can't > // change the null value to the left. >+ > resultTextAlign = null; > } > return resultTextAlign; > } >- >+ */ > if ( IStyleModel.TEXT_DIRECTION_PROP.equals( name ) ) > return handle.isDirectionRTL( ) > ? DesignChoiceConstants.BIDI_DIRECTION_RTL >Index: src/org/eclipse/birt/report/engine/layout/pdf/cache/ClonedCellContent.java >=================================================================== >RCS file: /cvsroot/birt/source/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/layout/pdf/cache/ClonedCellContent.java,v >retrieving revision 1.4 >diff -u -r1.4 ClonedCellContent.java >--- src/org/eclipse/birt/report/engine/layout/pdf/cache/ClonedCellContent.java 1 Feb 2008 10:01:00 -0000 1.4 >+++ src/org/eclipse/birt/report/engine/layout/pdf/cache/ClonedCellContent.java 25 May 2008 15:18:59 -0000 >@@ -26,6 +26,7 @@ > import org.eclipse.birt.report.engine.content.IReportContent; > import org.eclipse.birt.report.engine.content.IStyle; > import org.eclipse.birt.report.engine.css.engine.CSSEngine; >+import org.eclipse.birt.report.engine.css.engine.value.birt.BIRTConstants; > import org.eclipse.birt.report.engine.ir.DimensionType; > > /** >@@ -336,4 +337,13 @@ > return new ClonedCellContent(this, rowSpan); > } > >+ /* (non-Javadoc) >+ * @see org.eclipse.birt.report.engine.content.IContent#isOrientationRTL() >+ */ >+ public boolean isRTL( ) >+ { >+ // bidi_hcg >+ return cellContent.isRTL( ); >+ } >+ > } >Index: src/org/eclipse/birt/report/engine/layout/pdf/cache/TableAreaLayout.java >=================================================================== >RCS file: /cvsroot/birt/source/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/layout/pdf/cache/TableAreaLayout.java,v >retrieving revision 1.24 >diff -u -r1.24 TableAreaLayout.java >--- src/org/eclipse/birt/report/engine/layout/pdf/cache/TableAreaLayout.java 12 May 2008 02:20:09 -0000 1.24 >+++ src/org/eclipse/birt/report/engine/layout/pdf/cache/TableAreaLayout.java 25 May 2008 15:30:31 -0000 >@@ -72,6 +72,8 @@ > this.layoutInfo = layoutInfo; > this.startCol = startCol; > this.endCol = endCol; >+ if ( tableContent != null ) >+ bcr.setRTL( tableContent.isRTL( ) ); > } > > public void initTableLayout(UnresolvedRowHint hint) >@@ -211,11 +213,6 @@ > IStyle leftCellContentStyle = null; > IStyle topCellStyle = null; > >- // bidi_hcg start >- boolean rtl = tableContent.getReportContent( ).getDesign( ) >- .getReportDesign( ).isDirectionRTL( ); >- // bidi_hcg end >- > Row lastRow = null; > if(rows.size( )>0 ) > { >@@ -251,39 +248,21 @@ > // resolve left border > if ( columnID == startCol ) > { >- // bidi_hcg start >- if ( rtl ) >- { >- bcr.resolveTableRightBorder( tableStyle, rowStyle, >- columnStyle, cellContentStyle, cellAreaStyle ); >- bcr.resolveCellLeftBorder( preColumnStyle, columnStyle, >- leftCellContentStyle, cellContentStyle, >- cellAreaStyle ); >- } >- else >- // bidi_hcg end >- bcr.resolveTableLeftBorder( tableStyle, rowStyle, columnStyle, >- cellContentStyle, cellAreaStyle ); >+ bcr.resolveTableLeftBorder( tableStyle, rowStyle, columnStyle, >+ cellContentStyle, cellAreaStyle ); > } > else > { >- if ( !rtl || columnID + colSpan - 1 != endCol ) // bidi_hcg >- bcr.resolveCellLeftBorder( preColumnStyle, columnStyle, >- leftCellContentStyle, cellContentStyle, cellAreaStyle ); >+ bcr.resolveCellLeftBorder( preColumnStyle, columnStyle, >+ leftCellContentStyle, cellContentStyle, cellAreaStyle ); > } > > // resovle right border > > if ( columnID + colSpan - 1 == endCol ) > { >- // bidi_hcg start >- if ( rtl ) >- bcr.resolveTableLeftBorder( tableStyle, rowStyle, >- columnStyle, cellContentStyle, cellAreaStyle ); >- else >- // bidi_hcg end >- bcr.resolveTableRightBorder( tableStyle, rowStyle, columnStyle, >- cellContentStyle, cellAreaStyle ); >+ bcr.resolveTableRightBorder( tableStyle, rowStyle, columnStyle, >+ cellContentStyle, cellAreaStyle ); > } > > } >@@ -304,38 +283,20 @@ > { > // first column > >- // bidi_hcg start >- if ( rtl ) >- { >- bcr.resolveTableRightBorder( tableStyle, rowStyle, >- columnStyle, cellContentStyle, cellAreaStyle ); >- bcr.resolveCellLeftBorder( preColumnStyle, columnStyle, >- leftCellContentStyle, cellContentStyle, >- cellAreaStyle ); >- } >- else >- // bidi_hcg end >- bcr.resolveTableLeftBorder( tableStyle, rowStyle, columnStyle, >- cellContentStyle, cellAreaStyle ); >+ bcr.resolveTableLeftBorder( tableStyle, rowStyle, columnStyle, >+ cellContentStyle, cellAreaStyle ); > } > else > { > // TODO fix row span conflict >- if ( !rtl || columnID + colSpan - 1 != endCol ) // bidi_hcg >- bcr.resolveCellLeftBorder( preColumnStyle, columnStyle, >- leftCellContentStyle, cellContentStyle, cellAreaStyle ); >+ bcr.resolveCellLeftBorder( preColumnStyle, columnStyle, >+ leftCellContentStyle, cellContentStyle, cellAreaStyle ); > } > // resolve right border > if ( columnID + colSpan-1 == endCol ) > { >- // bidi_hcg start >- if ( rtl ) >- bcr.resolveTableLeftBorder( tableStyle, rowStyle, >- columnStyle, cellContentStyle, cellAreaStyle ); >- else >- // bidi_hcg end >- bcr.resolveTableRightBorder( tableStyle, rowStyle, columnStyle, >- cellContentStyle, cellAreaStyle ); >+ bcr.resolveTableRightBorder( tableStyle, rowStyle, columnStyle, >+ cellContentStyle, cellAreaStyle ); > } > } > >@@ -414,9 +375,10 @@ > } > > CSSValue align = content.getComputedStyle( ).getProperty( IStyle.STYLE_TEXT_ALIGN ); >+ boolean isRightAligned = IStyle.RIGHT_VALUE.equals( align ) >+ || IStyle.JUSTIFY_VALUE.equals( align ) && content.isRTL( ); // bidi_hcg > // single line >- if ( ( IStyle.RIGHT_VALUE.equals( align ) || IStyle.CENTER_VALUE >- .equals( align ) ) ) >+ if ( ( isRightAligned || IStyle.CENTER_VALUE.equals( align ) ) ) > { > > Iterator iter = cell.getChildren( ); >@@ -426,7 +388,7 @@ > int spacing = cell.getContentWidth( ) - area.getAllocatedWidth( ) ; > if(spacing>0) > { >- if ( IStyle.RIGHT_VALUE.equals( align ) ) >+ if ( isRightAligned ) > { > area.setAllocatedPosition( spacing + area.getAllocatedX( ), > area.getAllocatedY( ) ); >Index: src/org/eclipse/birt/report/engine/content/IContent.java >=================================================================== >RCS file: /cvsroot/birt/source/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/content/IContent.java,v >retrieving revision 1.14 >diff -u -r1.14 IContent.java >--- src/org/eclipse/birt/report/engine/content/IContent.java 1 Feb 2008 10:01:06 -0000 1.14 >+++ src/org/eclipse/birt/report/engine/content/IContent.java 25 May 2008 15:18:59 -0000 >@@ -194,4 +194,6 @@ > void readContent( DataInputStream in, ClassLoader loader ) throws IOException; > > IContent cloneContent(boolean isDeep); >+ >+ boolean isRTL( ); // bidi_hcg > } >\ No newline at end of file >Index: src/org/eclipse/birt/report/engine/content/impl/AbstractContent.java >=================================================================== >RCS file: /cvsroot/birt/source/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/content/impl/AbstractContent.java,v >retrieving revision 1.34 >diff -u -r1.34 AbstractContent.java >--- src/org/eclipse/birt/report/engine/content/impl/AbstractContent.java 14 May 2008 08:21:55 -0000 1.34 >+++ src/org/eclipse/birt/report/engine/content/impl/AbstractContent.java 25 May 2008 15:18:59 -0000 >@@ -27,6 +27,7 @@ > import org.eclipse.birt.report.engine.css.dom.ComputedStyle; > import org.eclipse.birt.report.engine.css.dom.StyleDeclaration; > import org.eclipse.birt.report.engine.css.engine.CSSEngine; >+import org.eclipse.birt.report.engine.css.engine.value.css.CSSConstants; > import org.eclipse.birt.report.engine.ir.DimensionType; > import org.eclipse.birt.report.engine.ir.ReportItemDesign; > import org.eclipse.birt.report.engine.ir.StyledElementDesign; >@@ -758,4 +759,24 @@ > } > > protected abstract IContent cloneContent(); >+ >+ /* >+ * (non-Javadoc) >+ * >+ * @see org.eclipse.birt.report.engine.content.IContent#isOrientationRTL() >+ */ >+ public boolean isRTL( ) >+ { >+ // bidi_hcg >+ IReportContent reportContent = getReportContent( ); >+ if ( reportContent != null ) >+ { >+ IContent rootContent = reportContent.getRoot( ); >+ if ( rootContent != null ) >+ return CSSConstants.CSS_RTL_VALUE.equals( rootContent >+ .getStyle( ).getDirection( ) ); >+ } >+ return false; >+ } >+ > } >Index: src/org/eclipse/birt/report/engine/layout/pdf/BorderConflictResolver.java >=================================================================== >RCS file: /cvsroot/birt/source/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/layout/pdf/BorderConflictResolver.java,v >retrieving revision 1.6 >diff -u -r1.6 BorderConflictResolver.java >--- src/org/eclipse/birt/report/engine/layout/pdf/BorderConflictResolver.java 7 May 2008 06:28:14 -0000 1.6 >+++ src/org/eclipse/birt/report/engine/layout/pdf/BorderConflictResolver.java 25 May 2008 15:18:59 -0000 >@@ -65,6 +65,10 @@ > > final static int POSITION_BOTTOM = 3; > >+ private static int POSITION_LEAD = POSITION_LEFT; >+ >+ private static int POSITION_TRAIL = POSITION_RIGHT; >+ > static HashMap<Value, Integer> styleMap = null; > static > { >@@ -107,11 +111,11 @@ > IStyle columnLeft, IStyle cellLeft, IStyle usedStyle ) > { > resolveBorder( tableLeftBorderCache, new BorderStyleInfo[]{ >- new BorderStyleInfo( cellLeft, POSITION_LEFT ), >- new BorderStyleInfo( columnLeft, POSITION_LEFT ), >- new BorderStyleInfo( rowLeft, POSITION_LEFT ), >- new BorderStyleInfo( tableLeft, POSITION_LEFT )}, >- new BorderStyleInfo( usedStyle, POSITION_LEFT ) ); >+ new BorderStyleInfo( cellLeft, POSITION_LEAD ), >+ new BorderStyleInfo( columnLeft, POSITION_LEAD ), >+ new BorderStyleInfo( rowLeft, POSITION_LEAD ), >+ new BorderStyleInfo( tableLeft, POSITION_LEAD )}, >+ new BorderStyleInfo( usedStyle, POSITION_LEAD ) ); > } > > protected BorderCache tableTopBorderCache = new BorderCache( 4 ); >@@ -195,11 +199,11 @@ > IStyle columnRight, IStyle cellRight, IStyle usedStyle ) > { > resolveBorder( tableRightBorderCache, new BorderStyleInfo[]{ >- new BorderStyleInfo( cellRight, POSITION_RIGHT ), >- new BorderStyleInfo( columnRight, POSITION_RIGHT ), >- new BorderStyleInfo( rowRight, POSITION_RIGHT ), >- new BorderStyleInfo( tableRight, POSITION_RIGHT )}, >- new BorderStyleInfo( usedStyle, POSITION_RIGHT ) ); >+ new BorderStyleInfo( cellRight, POSITION_TRAIL ), >+ new BorderStyleInfo( columnRight, POSITION_TRAIL ), >+ new BorderStyleInfo( rowRight, POSITION_TRAIL ), >+ new BorderStyleInfo( tableRight, POSITION_TRAIL )}, >+ new BorderStyleInfo( usedStyle, POSITION_TRAIL ) ); > } > > protected BorderCache cellLeftBorderCache = new BorderCache( 4 ); >@@ -219,11 +223,11 @@ > IStyle usedStyle ) > { > resolveBorder( cellLeftBorderCache, new BorderStyleInfo[]{ >- new BorderStyleInfo( preCellRight, POSITION_RIGHT ), >- new BorderStyleInfo( cellLeft, POSITION_LEFT ), >- new BorderStyleInfo( preColumnRight, POSITION_RIGHT ), >- new BorderStyleInfo( columnLeft, POSITION_LEFT )}, >- new BorderStyleInfo( usedStyle, POSITION_LEFT ) ); >+ new BorderStyleInfo( preCellRight, POSITION_TRAIL ), >+ new BorderStyleInfo( cellLeft, POSITION_LEAD ), >+ new BorderStyleInfo( preColumnRight, POSITION_TRAIL ), >+ new BorderStyleInfo( columnLeft, POSITION_LEAD )}, >+ new BorderStyleInfo( usedStyle, POSITION_LEAD ) ); > } > > protected BorderCache cellTopBorderCache = new BorderCache( 4 ); >@@ -331,6 +335,21 @@ > } > } > >+ public void setRTL( boolean rtl ) >+ { >+ if ( rtl ) >+ { >+ POSITION_LEAD = POSITION_RIGHT; >+ POSITION_TRAIL = POSITION_LEFT; >+ } >+ else >+ { >+ // XXX currently useless >+ POSITION_LEAD = POSITION_LEFT; >+ POSITION_TRAIL = POSITION_RIGHT; >+ } >+ } >+ > protected class BorderStyleInfo > { > >@@ -394,7 +413,7 @@ > setBorderColor( color ); > } > } >- >+ > private static class BorderCache > { > >Index: src/org/eclipse/birt/report/engine/layout/pdf/PDFTableLM.java >=================================================================== >RCS file: /cvsroot/birt/source/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/layout/pdf/PDFTableLM.java,v >retrieving revision 1.40 >diff -u -r1.40 PDFTableLM.java >--- src/org/eclipse/birt/report/engine/layout/pdf/PDFTableLM.java 12 May 2008 02:20:02 -0000 1.40 >+++ src/org/eclipse/birt/report/engine/layout/pdf/PDFTableLM.java 25 May 2008 15:18:59 -0000 >@@ -1053,24 +1053,22 @@ > this.xPositions = new int[columnNumber]; > this.tableWidth = 0; > >- // bidi_hcg start >- boolean rtl = tableContent.getReportContent( ).getDesign( ) >- .getReportDesign( ).isDirectionRTL( ); >- // bidi_hcg end >- >- for ( int i = 0; i < columnNumber; i++ ) >+ if ( tableContent.isRTL( ) ) // bidi_hcg > { >- // bidi_hcg start >- if ( rtl ) >+ for ( int i = 0; i < columnNumber; i++ ) > { > xPositions[i] = parent.getCurrentMaxContentWidth( ) - tableWidth > - colWidth[i]; >+ tableWidth += colWidth[i]; > } >- // bidi_hcg end >- else // ltr >+ } >+ else // ltr >+ { >+ for ( int i = 0; i < columnNumber; i++ ) >+ { > xPositions[i] = tableWidth; >- >- tableWidth += colWidth[i]; >+ tableWidth += colWidth[i]; >+ } > } > > } >#P org.eclipse.birt.report.engine.emitter.html >Index: src/org/eclipse/birt/report/engine/emitter/html/AttributeBuilder.java >=================================================================== >RCS file: /cvsroot/birt/source/org.eclipse.birt.report.engine.emitter.html/src/org/eclipse/birt/report/engine/emitter/html/AttributeBuilder.java,v >retrieving revision 1.38 >diff -u -r1.38 AttributeBuilder.java >--- src/org/eclipse/birt/report/engine/emitter/html/AttributeBuilder.java 15 May 2008 04:30:57 -0000 1.38 >+++ src/org/eclipse/birt/report/engine/emitter/html/AttributeBuilder.java 25 May 2008 15:19:02 -0000 >@@ -694,15 +694,10 @@ > if ( style != null ) > { > String direction = style.getDirection(); >- > if ( direction != null ) > { >- if ( CSSConstants.CSS_RTL_VALUE.equals( direction ) ) >- buildProperty( styleBuffer, IStyle.CSS_DIRECTION_PROPERTY, >- IStyle.CSS_RTL_VALUE ); >- else if ( CSSConstants.CSS_LTR_VALUE.equals( direction ) ) >- buildProperty( styleBuffer, IStyle.CSS_DIRECTION_PROPERTY, >- IStyle.CSS_LTR_VALUE ); >+ buildProperty( styleBuffer, IStyle.CSS_DIRECTION_PROPERTY, >+ direction ); > } > } > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
bjorn.freeman-benson
:
iplog+
Lina.Kemmel
:
review?
Actions:
View
|
Diff
Attachments on
bug 225536
:
95596
|
95598
|
96157
|
96159
|
96282
|
96299
|
96652
|
99946
| 101888 |
103603