As the first update after the long leave, this version includes 14 bug fixings.  Although no new feature is provided, the following news is still exciting: A brand new ForeUI document is available!

New Online Document

As usual you can launch the document via the menu “Help->Online Help Content”, that will bring you to the ForeUI document page.  But you will see the content of the page has been changed completely.  The new document introduce all things about ForeUI systematically.  No matter you are beginner or advanced user, you will find the document very helpful.

ForeUI Online Document

Bug Fixings

14 bugs have been fixed in this update.

  • Bug_0146: If a folder is nested under a page, it can not be removed. (Thank r10k for the reporting)
  • Bug_0147: There is a delay when start drag selecting. (Thank r10k for the reporting)
  • Bug_0148: The height of Calendar header is significantly reduced in simulation if the calendar is big.  (Thank Remco Douma for the reporting)
  • Bug_0149: Double-click the image in group can not change its image source.
  • Bug_0150: Group member A covers B, B may be hidden if A is set to invisible in simulation.
  • Bug_0151: Can not get the specific cell value of table in simulation.  (Thank Justin for the reporting)
  • Bug_0152: Empty table body can not be painted in simulation.  (Thank Abhishek Misra for the reporting via email)
  • Bug_0153: When dragging window element that contains element group, the group members can not be moved correctly.
  • Bug_0154: The entired Window element are draggable in simulation, it should be limited to header only.
  • Bug_0155: Select a group and press Ctrl+D, that allows adding behavior to group (which should be disabled).
  • Bug_0156: Should not allow deleting the page if all other pages are nested under it.
  • Bug_0157: If page B is nested under page A, remove page A, then undo will meet error.
  • Bug_0158: “Change State” action is not listed for TextEditBox element.
  • Bug_0159: Invisible element in group should be painted semi-transparently in design phase.

Slight Enhancement

 This version also include a slight enhancement: move the “From Image File…” menu item to top when choosing image.  This is requested by Ulrich and we think it is reasonable: moving cursor to the bottom may trigger the icon libraries dispaly one by one, which is annoying.

ForeUI V2.10 is released today!  From this version ForeUI supports keyboard event handling, it is very useful feature when making prototype for game or other applications that need to manipulate with keyboard.  This version also provides enhanced Text element and more (details below).

Keyboard Event Handling

In order to support keyboard event handling, we implemented a new “Key Down” event.  It is a basic event and can be handled in any element or page.  Usually we need to check the state of certan keys in the “Key Down” event handler, so the new system global properties are provided:

  • Current_Key_Code: The key code of current pressed key.  Here’s a key code table.
  • Ctrl_Key_State: Value will be 1 if the CTRL key is currently pressed, otherwise 0.
  • Alt_Key_State: Value will be 1 if the ALT key is currently pressed, otherwise 0.
  • Shift_Key_State: Value will be 1 if the SHIFT key is currently pressed, otherwise 0.
  • Focused_Element_Id: The id of element that currently has input focus.

Also we can retrive the Id of the element as an element property, thus we can detect if the element has focus by comparing its id and the Focused_Element_Id system global property.

Here is a simple example, a message box will popup when we press the ENTER key within the text edit box.  It can be  used when we need to simulate the data submit process.

Enhanced Text Element

Text element is very frequently used in creating mockup / prototype.   In this version we enhance the Text element so that it can have a border and can align text vertically.  The animation below shows the details:

Export Image / DHTML via Command Line

This is a very exciting feature!  It makes things easy if we want to integrate ForeUI with other tools.  From now on, you can invoke ForeUI to export image or DHTML with a single command.  Here is the how-to:

Export Images:

executable plotFilePath -Export:Image -Format:JPG -Pages:1,3,5 -FileNamePrefix:Img -NamingWith:Index targetDirectoryPath

The executable will be “launch.bat” in Windows, “sh launch.sh” in other platforms.

The parameters in red are required, parameters in green are optional.

Parameters (except source plot path and target directory path) are in -Name:Value format.
 
The target image file names will be formated as: FileNamePrefix_NamingWith.jpg

ForeUI will use the value below if the optional parameters are omitted:

  • -Format: PNG
  • -Pages: <all pages that are not excluded>
  • -FileNamePrefix: <same with the plot file name>
  • -NamingWith: Index

Export DHTML:

executable plotFilePath -Export:DHTML targetDirectoryPath

All parameters are required.

Other Enhancements:

  • Switch page in simulation, do not hide current page if the target page does not exist.
  • Shows multiple menu items to launch action editor if right click on multiple elements.
  • Make text content in Table element unselectable for FF, Chrome and Opera.
  • Tool windows can be resized.
  • Allow reseting all parameters in settings window.
  • Allow renaming custom event.

Bug Fixings:

  • Bug_0139: Single row Table with header cause error in simulation.
  • Bug_0140: The “Auto resize element after editing its content” option does not take effect when adding image into button.
  • Bug_0141: Copying page allocates duplicated element ids.
  • Bug_0143: Copy element that contains “Switch Page” action and paste it to new plot, the new plot will contain the old plot data.
  • Bug_0144: Mutirow, encrypt text edit box can not be properly auto resized.
  • Bug_0145: The tree view in page management window may become too narrow if any page has a long title.

This is a minor update that aim to fix some bugs in V2.00, and support multiple selection in action editor.

Multiple Selection in Action Editor

Action editor allows us to drag and drop, copy/cut/paste item in the behavior tree.  In previous versions we can manipulate one item a time, which is not convenient enough.  Now we implement the multiple selection support in action editor, thus we can manipulate a batch of items a time.

We can press the SHIFT key on keyboard to perform the multiple selection, the animation below shows the new way to move or copy items in action editor:

Also we can press the right key to bring out the context menu for manipulating the multiple selected items.

Fixed Bugs:

  • Bug_0133: V1.xx plot that contains conditional branchings may not be loaded in V2.0.  Thanks Wolfgang for reporting this bug.
  • Bug_0134: Loading rectangle element with width=20 or height=20 in V1.xx plot file, the rectangle will be resized.  Thanks Tim for reporting this bug.
  • Bug_0135: Create several instances of same custom element, move the newly created element, its action will be messed up.
  • Bug_0136: Single row table (without header) shows nothing in simulation.
  • Bug_0138: Custom event (and its child nodes) can not be pasted.

2010-02-03 Update:

Some bugs are found today and one of them is quite serious, so we provide a non-offical update for bug fixings.  Please read this thread for details: http://tinyurl.com/yzwxkcu

Yesterday I’ve submitted a brand new “iPhone Widgets” library in the ForeUI community site.  Now it is very easy to create prototype for iPhone App in ForeUI.

You can download the library from ForeUI directly.  Just click the “Resource Sharing” button on the bottom left corner:

Then in the popup window, click the download link under the “Library: iPhone Widgets V1.00″ item, ForeUI will download and deploy the library automatically.

After the download you can find a new element category named “iPhone”, so you can use the now elements now:

You can also download the library from web browser, just go to the URL http://www.foreui.net/node/16 and then click the download link for the .fcl file.  The .fcl file is a ZIP file actually, you can extract all its content to a directory, you will see some .fce files (element files) inside, you need to import them one by one (not so convinient yet, we need a library import feature).

The iPhone elements are real scaled, the screen in iPhone element is 320×480 pixels, which is the same with the real iPhone screen,  thus we can make iPhone app mockup in 1 : 1 scale.

So far there are 14 elements in the library, I will add more convenient elements in the future.  Thanks Natasha Nayberg for the good suggestions in this thread.

I’ve just create a simple prototype with this elements, it just take me two minutes:

I will keep improving this library, so if you have any suggestion, please feel free to let us know, thanks.

Today I am so happy to announce that ForeUI V2.00 is released!  As a major upgrade, ForeUI 2.0 is so exciting.  You can find improvements here and there, it is quite hard for me to introduce all of them.  So I will just pick a few big updates to write up.

Windows 7 UI Theme

Now you can create prototype with the brand new Windows 7 UI theme.  Although many people are still using Windows XP, more and more people are moving to Windows 7.  So Windows 7 UI theme may be frequently used in the future.

Community Site Integration

About 3 months ago, we have considered such a community site for users to share their resources.  Now the site is online!  The community site provides user a new channel to get more plot examples and custom elements.  User will be able to get new examples and elements more quickly and more frequently, since they don’t have to wait for our new release.  Please keep in mind that the community site is not only powered by us, but also by all ForeUI users.  So if you have any plot or custom element that you think is interesting or may be useful to others, please consider uploading it to the community site.  You may not get paid by submiting the resource, but you will definitely get return from the community :-)

The community web site has been integrated with ForeUI 2.0.  You don’t have to visit the site in web browser, just open the community window from ForeUI via the “Resource Sharing” button (on the bottom left corner), then you can do the resource download / upload.

Element Categories Management

Now you can configure the element categories on the left.  You can hide the category that you don’t like by setting it to “inactive” state.  You can also create new category and manage the elements inside.  To open the element categories management window, please click the “Manage Categories” button (on the bottom left corner).

Page Management Window

In 2.0 we implement a new page management window.  The pages are managed as tree structure, page can have its child page so that the entire sitemap structure can be built.  You can also create folder in the tree structure.  Folders can help organizing the pages, they can also control the content to be exported.  When the “Excluded from export and simulation” option is checked, all pages under the folder will not be included image/pdf/dhtml export.  This feature is useful when we want to hide the master pages from output.

Global Properties

Global properties are some properties that do not belongs to any element, it can be a system property (read-only) or a user defined property.  System property will be updated by system in the background, we can retrive its value when we need; User defined property can be a String or Integer, we can set its value via the “Set Global Property” action.  We can always insert a global property into the expression.

Custom Event

From now on, we can define event handler for custom event.  That means we can define a complex action in a custom event handler and then trigger the custom event from different places.  It is a powerful machanism to reuse the defined logic and make our work more easy.

There are still many new features, enhancements and bug fixings.  I do not have enough time to introduce here, so I will list them below.

Other New Features:

  • Display settings for toolbar icon, toolbar text, action flag and element button size.
  • Table element supports “Table Cell Values” property.
  • New placeholder element.

Enhancements:

  • Table content should not be wrapped, unless ‘\n’ is used.
  • When inputing the target element id, the id list should include ids for group members.
  •  Property chooser also allow inputing element id directely.
  • Add page navigation buttons on bottom tool bar.
  • Improved some dialogs UI (page management, plot configure, element selector etc.)
  • Avoid selecting text within table body by double-clicking in the simulation. 
  • “Show Message” action can do optional calculation within the message.
  • Allow specifying the loop interval in behavior editor.
  • Adjust the title position for window element.
  • Rectangle, ellipse, triangle and placeholder support line stye (solid, dashed, dot).

 Fixed Bugs:

  • Bug_0126: The table element with spaces in content will be shows as “&amp;nbsp…” when export html more than one time.
  • Bug_0127: If one row of table element contains less columns than other rows, error occur when exporting to html.
  • Bug_0128: Post commands list is disabled by default, even the post commands are enabled.
  • Bug_0129: ComboBox element can not contain “<”, “>” sysmbols.
  • Bug_0130: Delete a master page may cause the page manage window crash.
  • Bug_0131: Page management window should be closed when the plot is closed.
  • Bug_0132: The window icon and title is not aligned well when title contains parenthesis.

Try ForeUI V2.00  Now:

You can run ForeUI V2.00 in your browser via this URL:  http://www.foreui.com/demos/demo0/

 You can also download ForeUI and install it:

For Windows: http://www.foreui.com/download/V2_00/ForeUI_Setup.exe

For Mac OS X: http://www.foreui.com/download/V2_00/ForeUI.dmg

For Linux/Unix: http://www.foreui.com/download/V2_00/ForeUI.tar.gz

About the ForeUI 2.xx License

The price of ForeUI 2.xx license is $99 per user, if you buy license for multiple users, you can also get volumn discounts.  You can use the license on ANY V2.xx versions.  You can use the license on any machine you own.

To ForeUI V1.xx customers, you can upgrade your license with just $10 per user.   Comment: Since V1.xx is $79 per user, and now you can have the 2.xx license with another $10, so you totally pay $79 + $10 = $89, which is still less than $99.

Hello everybody,  I haven’t updated this blog for a while since we are working hard at ForeUI V2.00.  We planned to give you a surprise, but many friends send mails to ask for the progress.  To avoid replying emails with similar content, I decide to write something here :-)

Actually the launch date of ForeUI 2.0 has been finalized a few days ago,  we will release ForeUI V2.00 on next Monday, that will be 25th, January.  It is a little delayed than our estimation at the end of Year 2009, but you will understand the reason when you see what’s new in this release :-)

We’ve produced a short video to demonstrate the new generation ForeUI, enjoy it!

HAPPY NEW YEAR!  Year 2009 is such an exciting year, we launched ForeUI product and achieved unbelievable success.  Here I must on behalf of our company thank you again for your generous help, it is your ideas and creativity that push ForeUI become better and better.  Can you imagine what will we do today?  Yes we just released ForeUI V1.90!  This version will be our last update in year 2009, and it will also be the last one of the V1.xx serial.  As we’ve mentioned in our newsletter, ForeUI 2.0 is coming soon!  No doubt the 2.0 will be very exciting but today’s leading role is still V1.90 :-)

V1.90 is a big update actually; it contains many things.  Now let me show you the details.

Enhanced Table Element

Table Scrolling

In previous versions the table element is just a static image during the simulation, but now things have been changed.  Table element will be converted to real HTML table and support scrolling (if you enabled it).

The animation below shows how the scrollbar works in the simulation:

Table Cell Alignment

The table cell alignment can be configured independently, with the “<”, “=” and “>” prefix for the text.  The text alignment of the whole table will be the default alignment for each cell.  We can use “<”, “=” or “>” at the beginning of cell text to specify the alignment for the cell.

Set Cell Value Action

The enhanced table element supports the “Set Cell Value” action, this allow you to change the table cell value dynamically.

Input Action Target Element Id

This feature is requested by Ulrich, it can save your time to find element in a big plot.  Thanks for the good idea Ulrich :-)    Now you can input the target element id for the action.  We also provide an auto-complete assistent when you type the id, it will show all candidates in a popup list and you can pick one with mouse or keyboard.

Post Commands for DHTML Export

This feature is requested by Tim, we find it very useful when you want to do some successor task after the exporting, thanks Tim for the idea!  Now you can input some commands in the “Export” tab of settings window, they will be invoked in turn after the DHTML is generated.  Here is an example, we will run the simulation in FireFox, Opera and Safari when the DHTML is generated.

“Set Selected Index” Action

In order to provide more flexibility for behavior definition, we implemented a new “Set Selected Index” action.  This action is supported by  Table, List, Tree, Tabs and VerticalTabs elements.  So you can change the selection of these elements in the simulation.

Other Enhancements

  • Avoid selecting header of table element in edit mode.
  • Press Backspace to delete element for non-Mac system.

Fixed Bugs

  • Bug_0120: Main window may be hidden when click the action button on page management window.
  • Bug_0122: Calendar element is not displayed correctly in FireFox.
  • Bug_0123: Tabs/VertcialTabs/Tree/List/Table elements should invoke the handler for “Selection Changed” event when default selection is changed.
  • Bug_0124: Sometimes Page Up/Down can not switch page in simulation after clicking some element.
  • Bug_0125: List/Tree element without selected item is not painted correctly in simulation.

Hello everyone, it is my pleasure to announce that ForeUI V1.85 is released today!  In this version, we added a new vertical tabs element, improved the combo box element, implemented some useful enhancements and fixed a few bugs.

Vertical Tabs

We’ve put this vertical tabs in our TODO list for a while, and finally it is available now.  It is very similar with the Tabs element, but it will place the tabs on the left or right side.  Also the vertical tabs has four different looks according to the current UI theme.

 vert_tabs_themes
The vertical tabs also supports the “Selection Changed” event, just like the tabs element does.  You can handle this event, and control the visibility of elements within the tabs, just like this:
VertTabs

Enhanced ComboBox

Now we have more options to manipulate the ComboBox element during simulation.  The ComboBox element now provides “Selection Changed” event, “Selected Index” property and “Set Selected Index” action.

This example demonstrates the usage of the “Selection Changed” event and “Selected Index” property:

combobox_event_property

We can also use “Set Selected Index” action to change the selection of ComboBox:

combobox_action

Pin Windows

The element selector window and the page management window will be closed automatically once they lose focus, now you can pin it and keep it opened. Just click the small pin icon on the top-right corner, the window will be pinned and will not close until you click the “x” button.

pin_window

Other Enhancements:

  • Ctrl+Click to bring up context menu in Mac.  (Thanks Todd Sieling for the suggestion!)
  • Command+Click to remove element from selection in Mac.  (Thanks Todd Sieling for the suggestion!)
  • Store last modify time in .4ui and .fce files for future usage. 

Fixed Bugs:

  • Bug_0117: Page name editing should be stopped when closing the page manage window.  (Ulrich reported, thanks!)
  • Bug_0118: Page information in status bar is not correct if switching page in “Page Loaded” event handler. (Thanks Ulrich for the reporting!)
  • Bug_0119: Empty tab in Tabs element can not be selected in simulation.

Hi everyone, I’m here to proudly announce that ForeUI V1.80 is released today! This version bring us two new events and interactive ComboBox element, with some bugs fixed.

MouseOver and MouseOut Events

Now you can use these two new events in the behavior editor, they will be very useful to implement tooltip or element rollover effect.  The MouseOver event will be fired when you move your mouse cursor over the element; and the MouseOut event will be fired when you move your mouse cursor out of the element’s area.

 mouseoverout_actions  MouseOverOut

Interactive ComboBox

The ComboBox element is improved a lot in this update, it is no longer an image during the simulation, you can now interact with it.  In order to support multiple items, ComboBox element can have multi-line content now, one row for one item, you can assign the default selected item in edit mode.

Edit_ComobBox

When you run simulation, you can click the ComboBox and then the drop down list will be poped up, the ComboBox will have different appearance according to currently used UI theme.

 ComboBox_Simulation  ComboBox_Themes

Other Enhancements

We changed the default state for newly created radio buttons and checkboxes, this is suggested by Ulrich and we really think the “Normal” default state is more reasonable.

Fixed Bugs:

Bug_0114: Can not add more cases after defining the switch branching.  (Thanks Trevor Keegan for reporting)
Bug_0115: The “Element Clicked” event should also be fired when clicking on the Menu element. (Thanks Trevor Keegan again for reporting)
Bug_0116: Should not allow changing plot via Undo/Redo when editing element content.

Trial Duration Changed

BTW, the trial duration is changed to 15 days from this version, you can still contact us to extend the trial for another 30 days :-)

With ForeUI we can define actions for each element, thus we can create interactive prototype and run simulation in web browser.  The behavior of element can be described as one or more event handlers, each handler is a flowchart that indicate the way to perform actions.  Here are some tips to help defining a clear and effective flowchart.

Don’t Place Pause Action at the End

The Pause action will pause the current thread and wait for a while before executing the subsequent actions.  In other words, Pause action can delay the subsequent actions. So if no action is defined after the Pause action, the Pause action will not really take effect, even if you place it in a loop, the Pause action will not pause anything in the next circle.

So placing the  Pause action at the end is not a good idea, the table below show some good and bad cases:

Good Cases Bad Cases
  • Event
    • Pause 1000ms
    • Action A
  • Event
    • Action A
    • Pause 1000ms
  • Event
    • Action A
    • Pause 1000ms
    • Action B
  • Event
    • Action A
    • Action B
    • Pause 1000ms
  • Event
    • Loop
      • Pause 1000ms
      • Action A
  • Event
    • Loop
      • Action A
      • Pause 1000ms
  • Event
    • Loop
      • Action A
      • Pause 1000ms
      • Action B
  • Event
    • Loop
      • Action A
      • Action B
      • Pause 1000ms

Use Only One Pause Action In the Loop

When you are defining animation, Pause action will be very useful.  Sometimes we need to place the Pause action in a loop.  But there is a limitation: if you place multiple Pause actions in one loop, the loop will not really work.  So please use one Pause action in one loop.  The table below shows a good case and a bad case:

Good Case Bad Case
  • Event
    • Loop
      • Pause 1000ms
      • Action A
      • Action B
      • Action C
  • Event
    • Loop
      • Action A
      • Pause 1000ms
      • Action B
      • Pause 1000ms
      • Action C

If you really need the behavior showed in the bad case, you can use this structure to workaround:

Case to Workaround
  • Event
    • Loop
      • Pause 1000ms
      • Switch
        • Case A: Action A
        • Case B: Action B
        • Case C: Action C

Thus you can perform one action in one circle, with one second interval.

Make Good Use of Copy and Paste

The behavior editor is improved a lot in V1.70 and provides copy and paste feature.  You cut, copy or paste item in the behavior tree via the context menu.  You can do these cross items, cross events, or even cross elements. That will a lot of time when you try to define similar behavior for multiple elements.

behavior_tree_context_menu[1]

Of course you can also use drag and drop to move or copy items in the behavior tree.

behavior_tree_dnd[1]