From 082449011924501773714eb27a62a1dbd80ed87d Mon Sep 17 00:00:00 2001 From: schirmerc Date: Tue, 8 Dec 2015 17:29:23 -0500 Subject: [PATCH] Merging Alan's code into the main branch --- .../com/eteks/sweethome3d/j3d/OBJLoader.class | Bin 35657 -> 35657 bytes .../swing/HomePrintableComponent$1.class | Bin 1707 -> 2279 bytes .../HomePrintableComponent$Variable.class | Bin 2844 -> 2844 bytes .../swing/HomePrintableComponent.class | Bin 15295 -> 15756 bytes .../swing/HomePrintableComponent.java | 50 ++++++++++++------ 5 files changed, 34 insertions(+), 16 deletions(-) diff --git a/SweetHome3D/classes/com/eteks/sweethome3d/j3d/OBJLoader.class b/SweetHome3D/classes/com/eteks/sweethome3d/j3d/OBJLoader.class index 89c2dc8912bf1d63474083720fdf3ed89a7e74af..900b3a90b937ae66cfa93bd59e34a21734e4a7c3 100644 GIT binary patch delta 17 ZcmX>(jp^hxrVU@JnOL80{#G5#4**UT2vh(7 delta 17 ZcmX>(jp^hxrVU@JnHWxQ{#G5#4**S82sHoz diff --git a/SweetHome3D/classes/com/eteks/sweethome3d/swing/HomePrintableComponent$1.class b/SweetHome3D/classes/com/eteks/sweethome3d/swing/HomePrintableComponent$1.class index 3322e35720b54fa6a3d0f9e32b13f3dc6b7dfcdd..1d19d71fb3124ab2d612569310457ab5e63779eb 100644 GIT binary patch literal 2279 zcmah~-%}G;6#i~@lZCKCh=tbLD%zk)2nNv7HbJUV(XI-#PcMzkmB3z%MmB zoJOAe{F#^cwmJ7VoCd#Gr@3jb=Wo(t#Wii;s9Jo%X>2++xBb+#29+W4)YvlemO*yQ z)u+7XYltxv!tfTGu5J2Fm){kDsm^lIw0!O|#QY7@OHEN!Rc#TCy1^w5om1Aq@d>+ymTng5mAMn>ES$6VNe&GI`0R=kPZ!fVm7R!AMrR89M>^` zw-}VPFdZtJHeYHss@#>yFeJ-P&9EwlYYM{Ko2p=$VKy|f?%AZKi4e`SYgV()8SWj$ zNP}XwqW>({P52rM|&oI_q2m7aWoW>YK-#YiDQW-MoOmCk; z)WtZ?BBkL2hVfo*B({!moFn0ruTHdO)ANaE@+r%q>6=zw>=AexSq&MwuKhx}<~SBN zY#kHG5s@UbQcd zr@n;`F)T`X#i2&&~XCqil|CDKF1e<9^^r~+a7ud z@Z%`pmX0MsSKRa}Cf^n%L#{Tc2{N4RsVQPEx+$_{nCWT!Khab5uI)8084*=z;;^RZ zCfl_q&r`z-EDnf+~1N``4wZG zFFJ0+@QbAk<*k=&o4X5^;dz`SO|fUg0_oIpyFU(fHi8!fW7KmM`l5&=5~2wMiKJ-3 z^o~a88-Px~9;4Z1S}QaTWhY)^Fq?agMD`aXf0l+L^gk{S5VNd;QCf?GWRAD-4vkF6 zIDleF0*cYz^NAKtws2-i`4#62sxljWftksX=q@HB_yg${F7Dt|j;ucFY!+IW+d;o7 zPy85VBhkrSTx0m@pFgv&ka&Y(F-+ukv8aGfpHL;rXs(5uZ*WWuEtGcMMV22W6rvtW?`mYpFx5gzV=mupLjg8PiaM_Jtz`Vqy zdv~%Su{FAI$-pJ%p zEwe>QD~27`^hfWhv!TRlpdww)l!kT~nye7!P0|!4ryPhAsxz$!9t2d4m|( z7=jtN8A5=nLnlje1~5iX&f>ITOq#r$bAn@^O z7y=o%8G?YSgC|RJ1~5iW&f>ITOqjf!bAn<912aP=0}n$sgD67|gB(L1gCRpcgB_4| PXDDO{U?`d#!F2=x02day diff --git a/SweetHome3D/classes/com/eteks/sweethome3d/swing/HomePrintableComponent.class b/SweetHome3D/classes/com/eteks/sweethome3d/swing/HomePrintableComponent.class index 9649db65202e0e9e005d6bd698dfa544fd5c3e89..3a03c24dbc5da168271e7af7b4f03c41f4590b13 100644 GIT binary patch delta 4772 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 delta 4339 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 furnitureLevels = home.getPrint().getFurnitureList(); + Boolean includePiece = false; + for (int i = 0; i < furnitureLevels.size(); i++) { + if (furnitureLevels.get(i) && piece.isAtLevel(home.getLevels().get(i))) + includePiece = true; + } return (furnitureFilter == null || furnitureFilter.include(home, piece)) - && piece.isAtLevel(selectedLevel) + && includePiece && (piece.getLevel() == null || piece.getLevel().isViewable()); } - }); + }); } else { furnitureFilter = null; } @@ -363,17 +368,30 @@ public class HomePrintableComponent extends JComponent implements Printable { this.furniturePageCount++; } } - if (pageExists == NO_SUCH_PAGE - && planView != null - && (homePrint == null || homePrint.isPlanPrinted())) { - // Try to print next plan view page - pageExists = ((Printable)planView).print(g2D, pageFormat, page - this.furniturePageCount); - if (pageExists == PAGE_EXISTS - && !this.printablePages.contains(page)) { - this.printablePages.add(page); - this.planPageCount++; + + Level tempLevel = home.getSelectedLevel(); + List planLevels = homePrint.getPlanViewList(); + PlanView planToPrint; + // Loop through levels to be printed + for (int i = 0; i < planLevels.size(); i++) { + if (planLevels.get(i)) { + home.setSelectedLevel(home.getLevels().get(i)); + planToPrint = this.controller.getPlanController().getView(); + if (pageExists == NO_SUCH_PAGE ) { + // Try to print next plan view page + pageExists = ((Printable)planToPrint).print(g2D, pageFormat, page - this.furniturePageCount); + if (pageExists == PAGE_EXISTS + && !this.printablePages.contains(page)) { + this.printablePages.add(page); + this.planPageCount++; + } + } } } + home.setSelectedLevel(tempLevel); + + + View view3D = this.controller.getHomeController3D().getView(); if (pageExists == NO_SUCH_PAGE && view3D != null