/* ** Newton Developer Technical Support Sample Code ** ** VariRoute, a Newton 2.0 routing example ** ** by J. Christopher Bell, Newton Developer Technical Support ** ** Copyright © 1994-7 by Apple Computer, Inc. All rights reserved. ** ** You may incorporate this sample code into your applications without ** restriction. This sample code has been provided "AS IS" and the ** responsibility for its operation is 100% yours. You are not ** permitted to modify and redistribute the source as "DTS Sample Code." ** If you are going to re-distribute the source, we require that you ** make it clear in the source that the code was descended from ** Apple-provided sample code, but that you've made changes. */ constant kMySimpleVariableSizeViewClass := '|simplevari:VariRoute:DTS|; constant kMyEditViewDataClass := '|editview:VariRoute:DTS|; constant kMyBigTextViewClass := '|bigtext:VariRoute:DTS|; constant kSimpleVariViewDefSym := '|simpleVariViewDef:VariRoute:DTS| ; constant kEditViewViewDefSym := '|editViewViewDef:VariRoute:DTS| ; constant kBigTextViewDefSym := '|bigTextViewDef:VariRoute:DTS| ; // Get the cup icon OpenResFile(home & "pictures"); DefConst('kCupIcon, GetPictAsBits("minRouteIcon", nil)); CloseResFile(); // This is a clEditView template from the paperroll. This is here so this sample can do a demo printout of // complex clEditView data without requiring the user to write in anything. For YOUR application, you'd // get this kind of data from the viewChildren slot of a real clEditView. This flattened frame listed below // looks like {data: [firstKid, secondKid, thirdKid...] ... } DefConst('kFlattenedEditViewChildren, MakeBinaryFromHex( "0206080705636C617373070464617461070E7669657753746174696F6E657279070668656967687407085F76657273696F6E070974696D657374616D7007095F756E69717565494407085F6D6F6454696D6507097061706572726F6C6C05130604070A76696577426F756E64730903070474657874070876696577466F6E74060407046C6566740703746F70070572696768740706626F74746F6D0038008C00FF000004FC00FF000003F407047061726108FF000001F4004800610076006500200079006F00750020006500760065007200200077006F006E0064006500720065006400200068006F00770020007200650061006C006C007900200076006900650077007300200061007200650020007000720069006E007400650064002000660072006F006D00200074006800650020004E006F0074006500730020006100700070006C00690063006100740069006F006E003F0020004E006F0074006500200074006800610074002000740068006900730020007000610072006100670072006100700068002000690073002000770072006100700070006500640020006100740020007400680065002000660075006C006C0020007700690064007400680020006F0066002000740068006500200070006100670065002E00200054006800610074002000690073002000620065006300610075007300650020007400680065007200650020006900730020006E006F0020006F0074006800650072002000740065007800740020006F0072002000670072006100700068006900630073002000740068006100740020006D006900670068007400200073007500670067006500730074002000690074002000690073002000700061007200740020006F00660020006100200073006B00650074006300680020006F0072002000670072006F00750070002E000000FF0001200C0605090C0903090D090E070974657874466C61677306040910091109120913005400FF0000087C00FF000003AC00FF00000B04091408FF00000100005400680069007300200070006100720061006700720061007000680020006900730020006C006F006E006700200065006E006F0075006700680020007400680061007400200069007400200063006F0075006C006400200062006500200063006F006E00730069006400650072006500640020006A0075007300740020006100200062006900670020007000610072006100670072006100700068002E00200048006F00770065007600650072002C00200069007400200069007300200074006F006F00200063006C006F0073006500200074006F0020007400680069007300200020006F007400680065007200200076006900650077002E002E002E000000FF0001200C00000605090C09170903090D090E06040910091109120913007400FF0000050400FF000004E400FF000006AC0000091408F20054006800690073002000700061007200610067007200610070006800200069007300200063006C006F0073006500200074006F0020006F0074006800650072002000760069006500770073002E00200053006F00200074006800650020005200650066006C006F0077002000660075006E006300740069006F006E00200063006F006E007300690064006500720073002000690074002000700061007200740020006F0066002000670072006F0075007000200061006E006400200064006F006500730020006E006F00740020006300680061006E006700650020007400680065002000770069006400740068002E000000FF0001200C0603090C09030706706F696E74730604091209110910091300FF000004D000FF000004E8004800FF000006E40704706F6C790318070C706F6C79676F6E7368617065000B000500000000007F0000007F012200000122000000000604070B6172636572626F756E6473090C0903091E0B0000271D0604091209110910091300FF0000049C00FF0000069000FF0000042800FF0000072C092003680922000000190014001D000F001D0009001B0005001900020016000000120000000E0000000B000200070005000400090002000F00000014000000180000001E000200220004002400070027000B0027000F002700120024001600220019001E001B0018001D0014001D06040924090C0903091E0B0000271D0604091209110910091300DC00FF00000690006800FF0000072C092003680922000000190014001D000F001D0009001B0005001900020016000000120000000E0000000B000200070005000400090002000F00000014000000180000001E000200220004002400070027000B0027000F002700120024001600220019001E001B0018001D0014001D06040924090C0903091E0B00001E160604091209110910091300FF0000049000FF000004A800FF0000043800FF0000052009200368092200000019000F0016000B00150008001400040012000100100000000D0000000A00000008000100050004000300080001000B0000000F00000013000000170001001A0003001C0005001E0008001E000B001E000D001C0010001A00120017001400130015000F001606040924090C0903091E0B00001E160604091209110910091300D000FF000004A8007800FF0000052009200368092200000019000F0016000B00150008001400040012000100100000000D0000000A00000008000100050004000300080001000B0000000F00000013000000170001001A0003001C0005001E0008001E000B001E000D001C0010001A00120017001400130015000F00160602090C0703696E6B0604091209110910091300FF0000026C00FF00000C2400FF0000017800FF00000EF8032F0704696E6B3258020249B17C04BF375F5B84329CEB4C84DE913621A1CC7E212F3F060C924EBD5A1D0118EFAE73277F7194BB610D100602090C09350604091209110910091300FF0000017400FF00000C7000A400FF00000CB4031009385802080742256F36C83B1E9A811106020602090C09350604091209110910091300FF000001AC00FF00000D04009C00FF00000D5403100938580212DD3541193F159BA1CCC64AD0200602090C09350604091209110910091300FF000001A000FF00000DB0009400FF00000DF40313093858020F87E0213960BC9D4249289C91E1690C010604090C0903090D090E0604091009110912091300FF0000028000FF00000DAC00FF0000046000FF00000E040914081C00530061006E0020004600720061006E0063006900730063006F000000FF0001200C0604090C0903090D090E0604091009110912091300FF0000026C00FF00000BDC00FF0000033C00FF00000C340914080C004D006100720069006E000000FF0001200C0602090C09350604091209110910091300FF0000026800FF00000C0C00FF000001B400FF00000C980310093858051D5D4082CA946FC4A652207D5F870602090C09350604091209110910091300FF0000026800FF00000D8800FF000001D400FF00000DFC0312093858231A0F12E3D196ECCCC19E3B322E3329040604090C0903090D090E0604091009110912091300FF0000025C00FF00000C9C00FF0000040400FF00000D640914082C004200650072006B0065006C006500790020000D0061006E00640020004F0061006B006C0061006E0064000000FF0001200C0604090C0903090D090E06040910091109120913003000FF0000104C00FF0000050000FF00001504091408FF000002A8004E006F0074006500200074006800610074002000740068006900730020007000610072006100670072006100700068002000690073002000770072006100700070006500640020006100740020007400680065002000660075006C006C0020007700690064007400680020006F0066002000740068006500200070006100670065002E00200054006800610074002000690073002000620065006300610075007300650020007400680065007200650020006900730020006E006F0020006F0074006800650072002000740065007800740020006F0072002000670072006100700068006900630073002000740068006100740020006D006900670068007400200073007500670067006500730074002000690074002000690073002000700061007200740020006F00660020006100200073006B00650074006300680020006F0072002000670072006F00750070002E0020004E006F0074006500200074006800610074002000740068006900730020007000610072006100670072006100700068002000690073002000770072006100700070006500640020006100740020007400680065002000660075006C006C0020007700690064007400680020006F0066002000740068006500200070006100670065002E00200054006800610074002000690073002000620065006300610075007300650020007400680065007200650020006900730020006E006F0020006F0074006800650072002000740065007800740020006F0072002000670072006100700068006900630073002000740068006100740020006D006900670068007400200073007500670067006500730074002000690074002000690073002000700061007200740020006F00660020006100200073006B00650074006300680020006F0072002000670072006F00750070002E000000FF0001200C060407067374796C6573090D090C090305060004033E0707696E6B576F7264580C18D3BC0A510029CB718679F159D1D14900095110ACA404B2774B5C0AD2341E7046CF2C29592920E94343564638A7F8B173C90DAC1A42901104003000000400FF0001200C0004032B095858021903034D16508924E2249F839E3D4CCB0B1F2BE5A895383959F89B400B88BD03081141900902C030000808F7010020F70100000604091009110912091300FF0000026C00FF00000A4400FF000004AC00FF00000ADC0914090900FF00001560000800FF0BB8FCE4000000FF0BB99C24", 'binary)); constant kAboutString := "VariRoute is Newton DTS Sample Code. This sample shows how to layout and print items with varying heights, using three different types of data and corresponding techniques.."; constant kHelpString := "Click on one of the data types and then tap the Action/Routing button."; constant kMyIndent := 10; // used by the PrintSimpleVari layout constant kBigText1 := "Lorem ipsum dolor sit amet, consectetuer adipisceing elit, sud diam noneummy nibh euismod timcidunt ut laoreet dolore magna aoiquam erat polutpat. Ut wisi enim ad minim penaim, quis nostrud exerci tation ullancorter suscipit lobortis nis, ut aliquip."; constant kBigText2 := "Ea commodo consequat. Duis autem pel erm iriure dolor im hendrerit in pulputate pelit esse molestie consequat pel illum."; constant kVeryLongText := "Lorem ipsum dolor sit amet, consectetuer adipisceing elit, sud diam noneummy nibh euismod timcidunt ut laoreet dolore magna aoiquam erat polutpat. Ut wisi enim ad minim penaim, quis nostrud exerci tation ullancorter suscipit lobortis nis, ut aliquip. Ea commodo consequat. Duis autem pel erm iriure dolor im hendrerit in pulputate pelit esse molestie consequat pel illum. Dolore eu feugait nulla facalisis at vero eros et accumsan at iusto odio dignissim qui blandit traesent luptatum zzril plenit augue dois dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipisceing elit, sud diam noneummy nibh euismod timcidunt ut laoreet dolore magna aoiquam erat polutpat. Ut wisi enim ad minim penaim, quis nostrud exerci tation ullancorter suscipit lobortis nis, ut aliquip ex ea commodo consequat. Duis autem pel erm iriure dolor im hendrerit in pulputate pelit esse molestie consequat pel illum dolore eu feugait nulla. Facalisis at vero eros et accumsan at iusto odio dignissim qui blandit traesent luptatum zzril plenit augue dois dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipisceing elit, sud diam noneummy nibh euismod timcidunt ut laoreet dolore magna aoiquam erat polutpat. Ut wisi enim ad minim penaim. Ea commodo consequat. Duis autem pel erm iriure dolor im hendrerit in pulputate pelit esse molestie consequat pel illum. Dolore eu feugait nulla facalisis at vero eros et accumsan at iusto odio dignissim qui blandit traesent luptatum zzril plenit augue dois dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipisceing elit, sud diam noneummy nibh euismod timcidunt ut laoreet dolore magna aoiquam erat polutpat. Ut wisi enim ad minim penaim, quis nostrud exerci tation ullancorter suscipit lobortis nis, ut aliquip ex ea commodo consequat. Duis autem pel erm iriure dolor im hendrerit in pulputate pelit esse molestie consequat pel illum dolore eu feugait nulla. Facalisis at vero eros et accumsan at iusto odio dignissim qui blandit traesent luptatum zzril plenit augue dois dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipisceing elit, sud diam noneummy nibh euismod timcidunt ut laoreet dolore magna aoiquam erat polutpat. Ut wisi enim ad minim penaim. ";