Version history

From MegaZine3
(Redirected from 2.x)
Jump to: navigation, search
See also: Version history (1.x)

This is a summary of released changes for MegaZine3 v2.x with quick links to discussion and explanation of key feature updates.

Version 2.1.3 [2013/09/21]

  • Added: property slidetarget to Slideshow plugin, to keep the book opened at a defined page after no user activities happened for more than slideidle seconds. To disable automatic restart of he slideshow, the property sldedelay should be set to -1
  • Added: support of keyboard entries in fullscreen mode (with FLASH version >= 11.3). Allows search and page selection in fullscreen mode
  • Changed: layout of the index (page overview), to keep spreadpages together
  • Fixed: crash in MZ3-Tool3 with add2 page and UI language EN

Version 2.1.2 [2013/01/25]

  • Added: property linksdefaulturi and linkspath, to support links to local files on disk.
  • Added: ASUL support of DRAW properties
  • Added: all vector data of DRAW plugin can be saved on the server side
  • Added: new version of configruation tool:_ MZ3-TOOL3
  • Changed: mouse mode is set to NONE if DRAW plugin is active
  • Changed: Support of pdf2swf version 0.9.2
  • Changed: page numbers can be entered immediately after a click; i.e. the input field is cleared automatically

Version 2.1.1 [2011/07/26]

  • Added: property bookMouseMode to MegaZine class API, which allows better control of book scrolling behavior.
  • Added: property flvPlayback for Vid element, to grant access to the underlying FLVPlayback component (to control video playback, e.g.).
  • Changed: drag behavior; mouse ups in the area where the mouse down to start a page drag started are no longer considered "clicks" after a short delay (to avoid unintentional page turns).
  • Fixed: native event wrappers for ASUL scripts broke when registering on function for multiple events.
  • Fixed: incorrect placement of loading bar (styles now applied before added to stage again).
  • Fixed: bug when disabling shadows for stiff pages.
  • Fixed: search results scroll starting at the middle (not the top).
  • Fixed: passing query arguments to loaded SWFs (e.g. via img element).
  • Fixed: blocker for drag areas not being updated properly (for @dragarea and pages of not-default size).
  • Fixed: uncaught error if element XML was malformed (specifically if it was a text node).
  • Fixed: ASUL background images using query parameters in the URL.

Version 2.1.0 [2011/06/14]

  • Added: TUIO plugin, which uses tuio-as3 to convert TUIO input to native Flash events.
  • Added: attribute book@sidebarstartclosed to make the slide bar start in a closed state.
  • Added: plugins now dispatch an Event.COMPLETE when fully initialized.
  • Changed: migrated to Flash Player 10.
  • Fixed: layouting issues with dynamic text in bookmarks (localized) and dynamically added / removed ones.
  • Fixed: changing style attribute of an ASUL object now updates its appearance.
  • Fixed: password plugin should now always be on top.
  • Fixed: thumbnails, search index and print page representations not being loaded via resource manager.
  • Fixed: style changes applied after the creation of an ASUL object not being applied.
  • Fixed: broken default link handler in ASUL.
  • Fixed: sidebar issues (broken ASUL).
  • Fixed: compatibility issues when used in Air applications.
  • Fixed: size issues when using pluginLayer (e.g. gallery plugin together with overlays).
  • Fixed: repaint issues of overlays.
  • Fixed: deconstruction order now makes sure that plugins are unloaded after all pages and chapters are removed (proper cleanup of plugin date attached to chapters / pages).
  • Fixed: "add bookmark" button showing on the left when opening the book on the first page.

Version 2.0.12 [2011/04/6]

  • Added: attributes book@stiffskew and page@stiffskew to allow skew factor stiff pages.
  • Added: attribute txt@embedfonts for page elements and text@embedfonts for ASUL text objects, which tells the TextFields to use embedded fonts.
  • Fixed: flow layouts always centering content.
  • Fixed: positioning bug in bookmarks plugin.
  • Fixed: initialization order of JavaScript plugin so that callbacks are guaranteed to be registered in onJSInit().

Version 2.0.11 [2011/03/06]

  • Added: possibility to force a page buffer repaint via the AS3 API.
  • Added: index plugin, which opens a page overview (similar to the print plugin's page selection), and when clicking on a page jumps to that page.
  • Added: dropshadow to thumbloadtext to avoid visibility issues on pages with a bright bgcolor.
  • Added: attribute book@sndpath to set the path to the folder containing page turn sounds.
  • Added: support for ASUL elements to use a custom link handler. In the MegaZine3 engine they will now use the handler of the links plugin, if it is loaded, meaning it is now possible to link into the book directly from ASUL.
  • Added: attribute book@cachehandle which allows setting a dummy string to insert into URLs when loading plugins to avoid caching issues. This defaults to the current engine version, so you will not need to adjust this on release version updates, just when updating nighlies, e.g.
  • Added: attribute img@yt which tells the engine the loaded object is a youtube player, thus allowing it to apply proper scaling. Only needed when setting width and / or height.
  • Added: attribute page@bgopaque which tells a page to behave like an opaque one even though it might be transparent (i.e. hide pages behind it that are the same size or smaller, leading to better performance). This can be useful when using "rounded corners" or similar effects, i.e. when all pages use the same "mask".
  • Added: rudimentary resource manager functionality, which allows building a fat client (i.e. all resource the engine itself needs - ASUL, localization, plugins - compiled into on big SWF). When used correctly, this can also be used to build all-in-one books, i.e. even having the page content included in the SWF.
  • Added: attribute book@printpdfsaveonly, which if set to true directly uses the button in the navigationbar to navigate to the URL set in [[PrintPDF#printpdf|book@printpdf (normally to call / save a PDF at that location).
  • Added: gallery plugin now calls megazineSetup function on loaded SWFs in gallery mode as it is called for SWFs loaded via the img element on pages.
  • Added: more layers to page side to allow better flexibility regarding how manually added content is depth-sorted in relation to page elements (similar to pluginLayer vs. pluginLayerBack in the MegaZine class itself). There are now: pluginLayer, pluginLayerBack, staticLayer and staticLayerBack.
  • Added: attribute book@flashcookies, which may be used to disable the use of local flash storage for settings such as mute and drag mode, which can be useful for debugging.
  • Added: ASUL variables 'thumbw' and 'thumbh' for use in MegaZine3 context, representing the (maximum) thumbnail width and height.
  • Added: ASUL scripting using the D.eval library.
  • Added: functions gotoNextChapter and gotoPreviousChapter to API.
  • Added: attribute book@uid to override the book id (normally automatically generated).
  • Added: attribute book@swfaddressanchors, defaults to true (which is a change!), which sets the address bar to the anchor of a page instead of the page number if possible.
  • Added: attribute book@loop, for rudimentary looping support (jumps to first / last page if going to next / prev page on the last / first page).
  • Added: attribute page@turningenabled which can be used to disable turning for a given page (can be re-enabled via API).
  • Added: attribute book@pagecount, which is only used for display purposes (e.g. in the navigationbar) as the total number of pages in the book.
  • Added: attribute book@keyfullscreen, to configure key for toggling fullscreen mode.
  • Changed: removed upper cap for fold effect intensity due to popular demand. Use values larger than 1 at your own peril...
  • Changed: the search plugin's server-search queries now include the book id as a 4th parameter.
  • Changed / Fixed: all plugins of one MegaZine instance now share properties assigned object using the setElementProperty/getElementProperty functions. This fixes the issue that the Google Analytics plugin ignored the target attribute. When writing a plugin please ensure not to use property names used by other plugins when using this functions (unless that is exactly what you want).
  • Changed / Fixed: large books with spread pages should have much faster startup times now.
  • Changed: large books with many elements per page should have faster startup times now.
  • Fixed: help window not showing initially when it should, but still blocking page interaction when modal.
  • Fixed: in print page selection, navigation arrows will now no longer be shown when unnecessary.
  • Fixed: an issue where adding or removing pages dynamically could cause the mask of the book edge to show.
  • Fixed: an ASUL issue where newlines in textfields could be ignored on first initialization (e.g. in the help plugin).
  • Fixed: an ASUL issue where text elements could ignore the width and height attributes.
  • Fixed: rotation not working correctly if an ASUL object's size was changed after setting a rotation.
  • Fixed: possible breaking of the engine due to security error arising when opening 'Flash cookie' with locally stored settings (muted, ...) (contributed by Warren Sherliker)
  • Fixed: issue with nested braces in number expressions (e.g. ASUL anchors).
  • Fixed: possible issue when disposing engine with text engine elements on pages.
  • Fixed: for ASUL buttons, linked page elements and the nav element, the drag cursor (for manually dragged book) will now override the drag cursor.
  • Fixed: pages being unloaded / not loaded if they also had a static thumbnail (book@thumbpath).
  • Fixed: page turning behavior to be instant if book@dragspeed >= 1.
  • Fixed: possibility of help plugin blocking deeplinks.

Version 2.0.10 [2010/08/25]

  • Added: FlashVAR controlling whether to log to the JavaScript console. Tested with Firefox and Chrome (uses console.log() function). This can make the console plugin superfluous in many cases.
  • Added: bookmarks can now be localized. For this purpose a new attribute, bookmarks@langfiles, has been introduced. This can contain a path relative to the megazine.swf file, with a template variable $1, which will be replaced with the language code. Files with the thus generated path will be loaded and parsed into the localizer as normal localization files (in the langs subfolders). Syntax of these files must be identical to the normal localization files, too. Bookmarks can then be localized using the same syntax as in asul: localize(LNG_ID). For example: <bookmark title="localize(MY_BOOKMARK)">, and in the loaded XML file: <langstring name="MY_BOOKMARK">Some Title</langstring>.
  • Added: attribute page@navbarnumber for navigationbar, which allows setting a custom display text in the page number box and page button tooltips for a certain page. When setting the text - the number will be omitted from the tooltip.
  • Added: support for tiled backgrounds for ASUL objects. Enable via attribute backgroundrepeat. Only works if background is an image. Note that this cannot be used together with scale9grids. If both are specified, the grid takes precedence, and the image is not tiled.
  • Added: zoom plugin, which adds an extra gui element to control the book's zoom. Because of this, the zoom in and out buttons are now disabled in the navigationbar, per default. To re-enable them, adjust the navigationbar.asul file.
  • Added: access to getting and setting currently used language, as well of getting a list of available languages via JavaScript API.
  • Added: navigationbar now displays current page number in the text field used to insert a page number to jump to. Can be disabled using book@navbarpagenumbersinbox.
  • Added: attributes chapter@dragrange / page@dragrange to allow overriding book@dragrange on a per-chapter or even per-page basis.
  • Added: attributes book@dragarea, chapter@dragarea, page@dragarea to allow controlling which areas of a page may be used for dragging.
  • Added: attributes chapter@pagewidth, chapter@pageheight / page@width, page@height / spreadpage@width, spreadpage@height to allow overriding book@pagewidth and book@pageheight on a per-chapter or even per-page basis. Note that similar to page@stiff, page@width or page@height will also apply to the opposite page side of the physical page the page node belongs to.
  • Added: ability to dynamically disable (and reenable) page turning on a page side basis via IPageSide.isTurningEnabled. Also added access to this to console and JavaScript API.
  • Added: keyboardnavigation plugin now also supports two keys for zooming in and out. Configurable via book@keyzoomin and book@keyzoomout.
  • Added: attribute book@searchfocusclear, when set to true (the default) the input textfield of the search is cleared the first time it is focused.
  • Added: attributes book@noasul and book@nolangs, which allow disabling the loading of ASUL definitions and localized strings, respectively, if set to false.
  • Added: attributes book@helpmodal and book@optionsmodal to control whether help and options windows are modal (i.e. disable the book).
  • Added: possibility to rotate book at runtime via navigationbar and API (AS3 and JS).
  • Changed: scrollpane will now remember last scroll offset before viewport got too small to allow scrolling. This essentially means that when zooming out and back in again, the relative position will stay the same (and won't change to top left as before).
  • Fixed: wrong offset was used for plain 'xml' command in console plugin.
  • Fixed: ASUL objects with "resize" set to true sometimes not updating their size on a child resize.
  • Fixed: issues regarding cursors / page interactivity while a thumbnail was visible.
  • Fixed: mousemode setting in megazine.asul file was being ignored.
  • Removed: book@ignoresides is still supported, but deprecated (which is also why it was removed from the DTD). Instead, use <book dragarea="top,bottom">.

Version 2.0.9 [2010/06/28]

  • Added: attribute book@thumbstatic / page@thumbstatic, to set whether thumbnails should be rerendered (to see animated page content in thumbs).
  • Added: new bookmarks can now be created by users, and will be stored in a "Flash cookie".
  • Added: two more options changeable via the options plugin, liquid scaling and automove (book moveable via mouse move or mouse drag). These will also be stored.
  • Added: attribute book@zoomliquidsnap, which when set to true only allows liquid scaling to snap to set snapping levels (see book@zoomsnap).
  • Added: possibility to check if liquid scaling is currently active to JavaScript API.
  • Added: attribute book@thumbloadtextsize, when set controls the size of the text in the thumbnail preview of not yet loaded/generated thumbnails (see book@thumbloadtext).
  • Added: new page element asulobject, which can be used to load ASUL objects into pages.
  • Added: attribute book@elementsfadein, when set to false elements won't fade in when loaded but display instantly.
  • Added: custom cursor images to indicate dragable and dragging states for ASUL scrollpanes (when using mouse_drag).
  • Added: attribute align for ASUL scrollpane, taking a space separated list of left, center, right for horizontal and top, middle, bottom for vertical alignment. Default is center middle (as before).
  • Changed: attribute book@thumbpath now optionally allows more specific paths, by using a variable, {{num}}, which will be replaced with the page number. E.g. thumbpath="thumbs/{{num}}.png".
  • Changed: when reloading elements due to a language or scale change, the current version is kept visible until the new state finishes loading. This makes for a much nicer transition.
  • Fixed: ASUL scrollpanes that use mousemode="mouse_drag" do not trigger linked / interactive elements under the cursor on drag end anymore (e.g. if the book is movable this way, linked elements on pages won't trigger after a drag anymore).
  • Fixed: using loaderInfo.url instead of loaderInfo.loaderURL now when resolving absolute paths.
  • Fixed: megazine.js file, zoomTo does not exists, was replaced with getZoom and setZoom.
  • Fixed: drag cursor being shown initially (for ASUL scrollpane objects), even though dragging was not possible.
  • Fixed: ASUL text behavior when a padding was set.
  • Fixed: pink pages issue should finally be resolved now.
  • Fixed: path resolver function now properly handles domain / root absolute URLs (e.g. /some/path, which should resolve to for a base path of, NOT Beware that THIS MAY BREAK CONTENT where such URLs were used (incorrectly so). Fix this by removing the leading / from those URLs.

Version 2.0.8 [2010/05/26]

  • Added: attribute book@printselectcurrent, when set to false, the two current pages will not automatically selected when opening the print dialog.
  • Added: attribute book@flashmenuitems, when set to true, default Flash context-menu entries will not be hidden.
  • Added: attribute book@thumbmaxmem, to control the maximum memory used of one page side's thumbnail. Defaults to 512K, can be disabled by setting it to 0. It is recommended to use the book@thumbscale parameter instead, this primarily serves as a safety switch when users create books with extremely large pages.
  • Added: attribute @allowbmpcaching for page, img and txt elements. Try setting this to false when encountering pink pages.
  • Added: possibility to change log level at runtime using console plugin (command 'errorlevel').
  • Added: attribute img@samesecdomain, for loading SWFs in the same security domain as the engine, may be used to work around sandboxing issues.
  • Added: attribute book@dontremove. This attribute should in be used in very special cases. It can be used to mark certain elements as "remove blockers", i.e. if a page contains such an element, the page will only be marked as invisible, and not phyiscally removed from stage. This is necessary for the vid element, for example.
  • Added: attribute book@priorities, allows a global control of element priorities.
  • Added: possibility to add an overall foreground (using <book><foreground>...</foreground></book>, analog to the background tag).
  • Added: attribute book@overlayfade and element@overlayfade to control the time it takes for overlays to fade in or out.
  • Added: attribute book@swfaddressupdate for SWFAddress plugin, which allows to disable page changes in the engine updating the browser's addressbar.
  • Added: attribute book@protocols which allows defining additional default protocols, e.g. "rtmp://" which are recognized when resolving paths in loaded data to absolute ones.
  • Added: JavaScript event callback for printpdf plugin, when printing is requested. An array with pages to print is passed. If the JS function returns true, the AS3 internal print process is stopped and handling is left to JS.
  • Changed: search is now localizeable using book@searchindex. Old variant still works, but also supports definition format now (e.g. searchindex="en(idx-en);de(idx-de);idx-default")
  • Changed: improved loading performance and overall performance for very large books (500+ pages). Even pages with several thousand pages should run fluently now.
  • Changed: backgroundsounds plugin now only loading sounds when necessary (i.e. when page or chapter gets visible).
  • Changed: protected variables in the AbstractPlugin (and other classes) are now postfixed with a '_' to make it easier to distinguish them from getters. Please adjust your references to those variables accordingly, and sorry for the inconvenience.
  • Fixed: print alternative images were broken.
  • Fixed: printpdf issues with landscape format books.
  • Fixed: printpdf issues with book@printstretch attribute.
  • Fixed: possibly incorrect initial position of scaling plugin layer (noticeable via incorrectly positioned bookmarks or sidebar).
  • Fixed: background fader (book@bggradient) not scaling with book.
  • Fixed: possible nullpointer in cachingloader on security errors.
  • Fixed: memory leak in ASUL.
  • Fixed: backgroundsounds plugin sometimes starting off at incorrect volume (e.g. full volume even though chapter not visible) and then fading to correct volume.
  • Fixed: old search result highlighting sometimes not properly being cleared on new search.
  • Fixed: page content allowing interaction (especially catching mouse clicks) while dragging / turning.
  • Fixed: print frame not closing if progress bar was not defined.

Version 2.0.7a [2010/04/19]

  • Fixed: links plugin was broken.

Version 2.0.7 [2010/04/18]

  • Added: possibility to change the tooltip design in the megazine.asul file.
  • Added: bookmarks plugin. No user creatable / removable bookmarks yet, will be added in the next release.
  • Added: pdflinks plugin. Handles links in PDF files converted using pdf2swf (if the -s internallinkfunction=true parameter was used).
  • Added: attribute book@zoomsnap, which allows snap levels when zooming in or out. The scaling at which liquid scaling takes effect is an implicit/dynamic snap value automatically generated.
  • Added: attribute book@zoomliquidscaling, which defaults to true. Setting it to false will disable use of liquid scaling (even if zooming is possible), i.e. only book@zoomsteps and/or book@zoomsnap will be relevant.
  • Added: getter to txt element to get access to underlying TextField object.
  • Change: sidebar plugin can now be used with scaling books, and when book@centercovers is active.
  • Change: for those developers who used it directly, the tween package has changed. Tweens now take a simple function reference instead of a class instance with a function (which was kinda Javaish) for less overhead. Also, tween functions can now be retrieved from the TweenFunctions class's getFunction() method (see constants for possible functions).
  • Change: updated logger / console, now allowing formatted output, and a more explicit source (normally the class that logs the message). Formatted output can be very slow, though, so it's disabled per default.
  • Change: ASUL buttons are now more flexible (e.g. children can resize dynamically), because they no longer use Flash's SimpleButton component.
  • Change: some more control attributes for hflow and vflow.
  • Change: setting book@allowcrossdomaindata to true now causes an automatic check for a crossdomain.xml file on the remote server.
  • Change: reduced use of cacheAsBitmap and using opaqueBackground where possible, improving performance a bit.
  • Change: improved performance while dragging pages and using custom cursors (i.e. book@handcursor="false", the default).
  • Change: some major AS3 API changes. Please read the SVN change logs for more information, if you are an AS3 developer.
  • Change: the default log level is "NONE" now. So remember to set book@errorlevel to something when using the console plugin.
  • Fixed: search results not showing the first time when using book@searchmethod=server.
  • Fixed: book@startpage issues.
  • Fixed: help text not properly showing sometimes.
  • Fixed: loading order issue for images.
  • Fixed: memory leaks / engine not being completely removed from memory when MegaZine.destroy() is called (there still a few minor problems, e.g. with the googleanalytics plugin, but the resulting memory clutter is very very small, and only happens when repeatedly creating and destroying book instances, which should be a rare enough case).
  • Fixed: book@maxloaded=0 not working (= all pages) and issue when more pages were added dynamically.
  • Fixed: all the.. small things.

Version 2.0.6 [2010/02/18]

  • Added: new functionality in batchpages plugin, allowing more flexible setup, additionally controlling scaling levels and language. This is done using defintions, e.g. pages="scale('some/url{{num}}.swf', 0.5); scale('some/url{{num}}_big.swf', 2)".
  • Added: attribute txt@rasterize, which defaults to true, but can be set to false to disable rastering of text elements (e.g. to allow links in the text).
  • Added: attribute img@keepar. When set to true, if only one size (width or height) is given, the other one will be adjusted accordingly, to keep the aspect ratio of the image.
  • Added: attribute img@sameappdomain. If set to true the loaded swf will be loaded into the ApplicationDomain of the engine.
  • Added: possibility to open print frame via API and JavaScript.
  • Added: printpdf plugin: the same as the print plugin, but allows printing directly to PDF format using AlivePDF.
  • Added: attribute book@pluginpath, allows setting the path where the plugins can be found.
  • Added: the print plugin's attribute page@print is now localizable using the following definition syntax: lang(path)[;lang(path)]. E.g. en(en.swf);de(de.swf).
  • Added: possibility to define a default cursor (see megazine.asul).
  • Added: attribute book@zoomstep, allowing to set the zoom step size (e.g. if zoomminscale=0.5 and zoommaxscale=1.5, setting zoomstep to 0.5 would result in 2 possible scaling steps, each of the size 0.75. At least when using the buttons in the navigationbar and the mouse wheel. It's still possible to reach other scalings using the API).
  • Added: FlashVAR basePath, which can be used to set a base path, which is used to resolve all relative URLs (this includes GUI definitions, sounds, plugins etc, not only page elements). So to use a common engine with a single GUI you'll need to adjust the guipath now. But that's still better than having to adjust the paths of every single element in the book.
  • Changed: megazine.js, access to Flash element should now behave more stable than before (e.g. when editing the DOM). Also see this forum post.
  • Changed: the load functions in the IMegaZine interface have a slightly different signature now, used for passing the basePath and additional config values (e.g. when creating a book purely through ActionScript3).
  • Fixed: @shadows="0" caused a null pointer exception, effectively making it impossible to completely disable shadows.
  • Fixed: a possible problem with img@rasterize.
  • Fixed: Fixed a bug in the SWFAddress plugin that overrode the book@startpage attribute even if no deep link was given when opening a page.
  • Fixed: bug in ASUL that could cause collapsed elements to not expand any more.
  • Fixed: possible problems with scale+lang based attribute settings.
  • Fixed: bug in print plugin that occurred when printing only the even part of a loaded spread page.
  • Fixed: some small issues in the print plugin.
  • Fixed: help text disappearing.

Version 2.0.5 [2010/01/28]

  • Added: ProgressEvent to MegaZine class. This also means, that the preloader is now more meaningful as it includes the loading progress of the engine itself, not just the megazine.swf. Furthermore the parsing of the page data has been distributed over multiple frames, which should avoid freezing the application in books with a lot of pages.
  • Added: print plugin.
  • Changed: in the batchpages plugin, the subsettings (after the question mark) have slightly changed. "s" now results in page@buffer="true", and instead the new "r" results in img@rasterize="true" (previously the result of "s").
  • Changed: plugin constructor. This is very IMPORTANT for DEVELOPERS: the way plugin data such as name and version is set has changed. These parameters a no longer passed as multiple arguments to the superconstructor, but in a wrapper class (PluginData). The reason for this is to allow plugin subclassing, i.e. to write plugins that extend existing plugins, but still allow them to change such information (e.g. if additionally, localizations should be loaded).
  • Changed: updated to new version of SWFObject and SWFAddress.
  • Changed: book@centercovers is now a bit more flexible, allowing different sizes for the page container (e.g. the viewport in the default megazine.asul). Related to this forum post
  • Fixed: bug in plugin initialization that could lead to a wrong initialization order.
  • Fixed: issue with ASUL elements not having their max/minsize properly updated if based on parent size if resize="true" was set.
  • Fixed: issue related to using scaling dependant attributes when no language was set manually.
  • Fixed: the search plugin's highlighting now works even if a background is set.
  • Fixed: buttons added to navigation bar by other plugins (e.g. slideshow, options, ...) will now appear in a fixed position, and not be placed randomly (based on the order in which the plugins finished loading).

Version 2.0.4 [2009/12/29]

  • Added: a workaround similar to the normal nocache workaround which should make it unnecessary to clear the cache after updating to a new version of the engine.
  • Added: attribute vid@aa, activating antialiasing for videos.
  • Added: attribute page@buffer_aa, activating antialiasing for buffered pages. This is automatically disabled while the user is not dragging a page.
  • Added: attribute book@edgeclickable, to adjust whether a click on the book's edge should trigger a jump in the book.
  • Added: attribute book@thumbpath, defining a path to a directory containg pregenerated thumbnail images.
  • Added: support for scale9grid for ASUL backgrounds (attribute asulobject@scale9grid).
  • Added: book@fadein, to determine whether the book should fade in initially (when the state changes to loaded and page content loading begins). This now defaults to false.
  • Added: events to search plugin fired when a search is performed and a result is clicked.
  • Changed: when loading other swfs via ASUL (background="image(some.swf)") it is now possible to pass a query string along (i.e. background="image(some.swf?var=value)"); using a query string will circumvent cached loading, though (NOT the Flash cache, though, just the temporarily inbuilt one which is used speed up loading multiple elements from the exact same source, e.g. images for the page buttons in the navigationbar).
  • Changed: improved performance a bit. I think.
  • Changed: for developers, there are now two types of ZoomChange and PageChange events. One which is fired instantly (default) and a "delayed" variant, which only fires once per "batch change", to make it easier skipping pages that are flipped over (e.g. during a multiflip).
  • Fixed: gotoPrevPage in megazine.js is now correctly named as gotoPreviousPage.
  • Fixed: sidebar now correctly allows more than one ASUL component directly inside the <content> tags (not just one).
  • Fixed: states of buttons can now be dynamically sized using anchors without breaking functionality.
  • Fixed: small initial size problem of the progressbar.
  • Fixed: possible issue with initial position of the scroll bar's scroll handle.
  • Fixed: navigation by clicking on the book edge in right to left books.
  • Fixed: tooltips and overlays won't break when removing and readding the instance form / to the stage.
  • Fixed: issues when destroying instances.

Version 2.0.3b [2009/12/01]

Version 2.0.3 [2009/11/30]

  • Added: attribute book@searchresults, which can be used to define additional return values to use in the LNG_SEARCH_RESULT_INFO string (first parameter will always be the page number). Defaults to 'matches', storing the number of matches found on the page.
  • Added: attribute book@asulextension, allowing to change the file extension used for ASUL defintions. This should only be used if the hosting server does not support custom extensions for XML files.
  • Added: attribute book@rotate, which allows to select an angle by which to rotate the book (e.g. 90 degrees for vertical flipping).
  • Added: attribute book@consolekey, allowing to set the key that opens the console.
  • Added: the functions for chapter and page removal are now available through the IMegaZine interface, but might still be a little unstable.
  • Added: made chapter and page adding and removal available through the console and the JavaScript API.
  • Added: sidebar plugin. This plugin allows you display contextual information depending on which page the user currently is on.
  • Added: event when page scaling changes. This fires after a small delay, so that only one event gets fired after the scaling has been consistent for that delay.
  • Added: possibility to set attributes based on the current book scaling level using @scale in element's child nodes (much like @lang).
  • Changed: book zoom now behaves a little different. Zooming in or out is no longer absolute (10% of the original size per default), but instead 10% of the possible scale range (e.g. if zoomminscale=0.5 and zoommaxscale=2, the scale range is 2-0.5=1.5, meaning every zoom step would be approximately 0.15). Note that there is a correction factored in to keep the overall zoomsteps similar in size (i.e when zooming from 0.5 to 0.65 will approximately scale the same width in pixels as would 1.85 to 2).
  • Changed: ASUL updated plus some minor fixes. Layouts do not "compress" their children any longer. The attributes for maximum and minimum sizes are now reevaluated as necessary (similar to anchors), allowing dynamic sizes for layouts.
  • Changed: plugin related interfaces changed slightly, mainly regarding the register() function (which now no longer takes any arguments). For plugin developers this means you will have to replace
override public function register(manager:IPluginManager, megazine:IMegaZine, settings:ISettings):void {
    super(manager, megazine, settings);
with simply
override protected function register():void {
  • Changed: flag icon buttons in the language chooser of the navigation bar are now customizable in the navigationbar.asul.
  • Changed: plugins using JavaScript functionality don't have to actively register with the JavaScript plugin anymore, they just have to implement the IExternalInterfaceEnabled interface (as before).
  • Fixed: some possible drag cursor behavior when using cornerhinting.
  • Fixed: localization issues with nav element.
  • Fixed: some cleanup issues when unloading elements.
  • Fixed: possible glitches regarding spread pages (right page using thumbnail preview even though left half with content is loaded).

Version 2.0.2 [2009/11/17]

  • Added: attribute book@reflectionoffset, allowing to display the reflection at a distance to the pages (e.g. because of book thickness).
  • Added: relevant for plugin developers: settings can now have aliases (e.g. same setting can be set using different attributes).
  • Added: attribute for initial book scaling, book@zoominit. This will cause the book zoom not to use liquid scaling intially, but zoom to given level.
  • Added: attribute book@zoomdoubleclick to enable double click on pages for toggling full zoom and liquid scaling. Important: this will disable all interaction on pages.
  • Added: search plugin, allowing to search inside the book using an index.
  • Change: improved performance with SWF content.
  • Change: moved book@pageoffset setting back to core.
  • Change: some attribute name changes for better grouping (plugins' attributes should all start with the same prefix, preferrably the name of the plugin or a shortcut for it. E.g. attributes for the gallery plugin start with 'gallery', one's for the Google Analytics plugin start with 'ga'). Old names are still working as aliases, but may be removed in the future. Affected attributes are:
    • maxscale -> zoommaxscale
    • minscale -> zoomminscale
    • wheelzoom -> zoomwheel
    • openhelp -> helpopen
    • enablejs -> jsenabled
    • overlaylinks -> linksoverlay
    • buttoncolors -> navbarbuttoncolors [this alias will probably not be removed]
    • colorizefullchapter -> navbarcolorizefullchapter [this alias will probably not be removed]
    • flagpath -> navbarflagpath [this alias will probably not be removed]
  • Fixed: setting the title to an empty string did not suppress titles generated by linking elements using the links plugin.
  • Fixed: wrong reflection rendering when using book thickness (book@maxthickness > 0).
  • Fixed: issue with ASUL that could result in randomly incorrect results when resizing.
  • Fixed: memory leaking issue with named ASUL elements.
  • Fixed: graphic glitch with book edges (could show up before the pages finished turning, thus being displayed as single lines).
  • Fixed: reduced memory footprint when using buffered pages by disposing the buffer if the page is not loaded.

Version 2.0.1 [2009/11/07]

  • Added: thumbnails are now used as full page previews when a page is not loaded (book@pagepreview).
  • Added: book edge is now generated. Can be adjusted using book@maxthickness, book@pagethickness, book@spinecurvature, book@spinecolor. Can also be used to navigate by clicking on it.
  • Added: book edge color can be set using the book@edgecolor, chapter@edgecolor and page@edgecolor attributes (overrides like bgcolor). Uses page's background color if not set.
  • Added: possibility to activate and deactivate corner hinting via the API (also via JavaScript).
  • Added: attribute book@wheelzoom, to disable zooming via mousewheel (of the book).
  • Added: attribtute @padding for ASUL components, allowing the definition of a padding.
  • Added: attribute book@autodrag, allowing to disable automatic dragging if moving the cursor over page corners.
  • Added: attribute book@thumbscale, allowing to set the size of the thumbnails.
  • Added/Change: forgot to document a new attribute for the video in the last release, used the chance to rename it (better naming). Attribute vid@preview allows displaying a preview image with a playbutton on top which will we displayed and will have to be clicked before loading the actual video.
  • Added: attributes for keyboard navigation plugin to allow which keys to use.
  • Change: changed zooming API a little to make it easier to work with.
  • Change: unloaded pages now display "?" when generating the thumbnails for the first time (instead of "Loading...").
  • Change: Gallery plugin now uses padding for thumbnail, moved thumbnail to top left per default.
  • Change: thumbnails are now pagesize / 4 (instead of previously pagesize / 5), for cleaner downsampling.
  • Change: updated the DTD for the book definition (moved to megazine2.dtd) and added DTD for ASUL definitions.
  • Fixed: some issues if pages finished loading while being dragged.
  • Fixed: an issue where buffering might not be properly ended.
  • Fixed: possible nullpointer exception when a drag failed starting.
  • Fixed: bug with element@gallerybutton attribute.

Version 2.0.0 [2009/10/20]

  • Low level refactoring and rewriting of the old code base.
  • Plugin architecture. Per default the book will be very rudimentary, now. Use the book@plugins attribute to load plugins providing wanted functionality.
  • ASUL framework, allowing GUI adjustments via XML files. This allows restyling of the GUI without changing actual code, and thus without recompiling.
  • Spreadpage functionality. Use <spreadpage> to define a spread page, allowing the use of dynamic content over a double page.
  • Improved liquid scaling / zoom. It is now possible to zoom the actual pages, and liquid scaling does not affect the GUI any more. Use the book@minscale and book@maxscale to define allowed scale range, e.g. minscale="0.5".
  • Possibility to define an overall background and more flexible way to define pre and postpage (book/background and book/pagebackground).
  • Improved page turn animation.