NetLogo 7.0.0 Changes Overview

The bolded items in the table of contents are the most important changes in NetLogo 7.0.0

Table of Contents

For a video showing changes in NetLogo 7, see here.

Note: in this document the term “clicking” is synonymous with “left-clicking.” Right-clicking will be referred to explicitly.

Motivation

We interviewed many NetLogo users and one of the most desired updates was a more modern User Interface (UI). In response to user feedback we have made major changes to the UI for NetLogo 7.0.0. We plan to continue modernizing NetLogo in future releases. Your feedback via the NetLogo Forum will help guide UI improvements.

Interface Tab

Overview of Visual Changes to the Interface Tab

The most obvious change is that interface elements (widgets) have changed in appearance to a modern flat look. They are larger and more legible. A new feature is color themes which affect the appearance of the entire visual interface. They have been designed with visual coherence in mind. Navigate to the Color Themes tab in the Preferences window to select Light, Dark or Classic themes. For the Classic Color Theme the pre-7.0.0 widget colors are used. In other regards it is the same as the Light Theme. The Color Theme also affects the appearance of the Info Tab and the Code Tab, as well as any other windows that open in the app.

Light Theme Dark Theme Classic Theme
Alt Text Alt Text Alt Text

Interface Elements (Widgets)

Buttons perform actions when clicked. The input widgets are: sliders, switches, choosers and inputs. The output widgets are: monitors, plots and the output area. Notes are used to add labels, instructions and other information to the interface. Buttons and input widgets are colored shades of blue. Output widgets are shades of grey. Widgets by and large perform as they did in previous releases of NetLogo. A new feature of the slider is a text box in which values can be added directly. A new feature of the Notes is that the user can set both the text color and the background color for both light and dark mode.

A new feature is copying widgets.

Widget Sizes

In NetLogo 7 some widget sizes have been adjusted for greater readability. The default height of sliders, switches, choosers, inputs, monitors and plots has been increased. The image below shows some widgets in their new sizes on the left, and the original/pre-NetLogo 7 sizes on the right.

When you create a new model, widgets will appear by default in their new (generally larger) sizes. Existing models will open with new style widgets that retain their original size. Some widgets in the Models Library have been converted to the new sizes.

Note that opening an old model in NetLogo 7 will automatically prompt you to perform an automatic widget conversion, as shown in the dialog below.

Click “Resize and adjust positions” to resize the widgets and change their placements. Click “Resize only” to resize the widgets without changing their location. Since redesigning interfaces is an art, more work may be required to make the design meet your personal standards. The Edit -> Undo menu will let you undo all the widget conversions at once if you are not satisfied with the result of the automatic conversion. If you choose not to make the full conversion, you can later use the tools menu item Tools -> Convert Widgets to New Sizes.

You can also switch the size of an individual widget by clicking the Use old sizing checkbox. This only holds for widgets that have undergone a size change for NetLogo 7. The size of the output area and notes have remained the same.

New File Format

Models in NetLogo 7 have a new format which is extensible and makes it easier to add new features to NetLogo. The new file format follows the XML 1.0 standard, and is compatible with any external tools for working with XML. Models saved with this format will have the extension .nlogox or .nlogox3d, rather than .nlogo or .nlogo3d. All models going forward will use the new file format. Existing model files, with the extension .nlogo or .nlogo3d, can be opened in NetLogo 7 and will be automatically converted without loss of information. However .nlogox and .nlogox3d files cannot be opened with previous versions of NetLogo. Any tools users have created that rely on the format of .nlogo and .nlogo3d files will need to be re-written.

Tools in the NetLogo 7 Interface

Overview: NetLogo Interface Tool Buttons and Dropdown menus

New Interface Tools

The key motivations for introducing these tools are

  1. to make user actions more discoverable
  2. to separate actions needed to use an existing model from those used when creating or modifying a model.

The Interface toolbar includes four new tool buttons which control the meaning of user actions. They are the Interaction Tool, the Selection Tool, the Edit Tool, and the Delete Tool. For a brief explanation of the use of these tools see this section of the Interface Tab Documentation. For details on the use of these features click the links above.

New Interface Menu

There is a new Align Widgets Menu. This menu is only active if more than one element is selected. Only one of a set of related options will be explained. Use the link above for more details.

With Align Left the left-most widget remains in place. The other widgets move to align to left-most widget edge.

Distribute Vertically keeps the top and bottom widgets fixed, and moves the other widgets so the vertical spacing between the widgets is the same. Distribute horizontally works similarly.

With Stretch Left the left-most widget remains in place. All the other widgets stretch so they have the same left-most edge.

The Color Picker

Color Swatches has been replaced by the Color Picker, a new, more powerful way of selecting colors.

Notifications

When the NetLogo team sends out a new notification message a banner will appear below the Interface Toolbar with a brief message. If you click on the message you will be taken to a web page that gives the full information of all messages to date in reverse chronological order. You can also click the X button on the right to dismiss the message.

The Info Tab

The changes to the Info Tab are purely visual. The Find and Edit icons and the section headers have been updated, as has the Help Icon that is visible when editing the Info Tab.

These are the new Info Tab color themes.

Light Theme Dark Theme
Alt Text Alt Text

Code Tab

Color Themes and Code Syntax Highlighting

The code syntax highlighting colors have changed slightly for the Light Color Theme, and there is a separate set of code colors for the Dark Color Theme.

Light Theme Dark Theme
Alt Text Alt Text

Code Tab Toolbar

The Code Tab toolbar features new icons. See Code Tab Toolbar for more details.

Code Tab Preferences

Code related preferences are now set in the Code tab of the Preferences dialog. See Code Preferences for details.

Included Files

An included (.nls) file tab now has separate code window checkbox, and a Preferences button. Note that these buttons and preferences apply to all code tabs, not just the one from which they were clicked/set. Included file tabs can be closed by clicking on the “x” on the right side of the tab. More details are in the Included Files documentation.

Menu Items

Preferences Dialog

This dialog is now organized into four tabs. You use it customize various NetLogo settings. On Windows and Linux, it is opened with the Tools menu “Preferences” item. For Macs, it’s under the “NetLogo” menu and reads “Settings”.

Here is a brief description of the new preferences. See the Preferences Documentation for more details.

Reload model on external changes: If you use an editor outside of NetLogo to change the model or any included .nls files the model will be reloaded.

Bold widget names: By default, widget names are not in bold, use this option to make them bold.

UI Scale: This option is for Linux only. It must be set to the same value as your system UI scale or NetLogo will fail to resize its visual components correctly.

Auto-focus text or tab with errors when model is compiled: If checked, NetLogo will bring you to the location of an error if one occurs during compilation.

Open code tab in separate window on startup: When checked the Code tab will appear in a separate window when NetLogo is opened.

Jump sliders to click location (instead of incrementing): When checked, clicking anywhere in the slider bar of a slider widget will move the thumb to that location. When unchecked, the pre-NetLogo 7 behavior will be applied, and clicking in the slider bar will increase or decrease the value of the slider by one increment, depending on which side of the bar is clicked.

File -> Resource Manager dialog

The Resource Manager dialog allows you to view, add, or remove files that are bundled with the current NetLogo model. These files can be read during a model run using the Resource Extension.

Tools Menu Changes

The new menu items “Color Themes”, “Color Picker” and “Convert Widgets to New Sizes” have been described in earlier sections. The menu item “Color Swatches” has been removed.

The Turtle Shapes Editor and the Link Shapes Editor have been updated, as described below.

Turtle Shapes Editor and Link Shapes Editor

These Shapes Editors now have buttons at the top, for easier use. A search field has been added so users can quickly search through the model’s collection of shapes.

Help Menu

The Help Menu now has a link to the NetLogo Forum, a website to ask/answer questions and have discussions about NetLogo.

Collection of anonymous usage statistics

When you first open NetLogo after installing it, a dialog titled “Data Consent” will appear. If you select “Yes”, data will be sent to the NetLogo team. We analyze the data in order to understand how often certain NetLogo features are being used. This informs development priorities. No personal or identifying information will be collected. You can always change your preference by using the Send anonymous usage statistics option of the NetLogo Preferences Dialog to enable or disable data collection. If you have any questions or concerns about the collection and storage of this data, feel free to contact the NetLogo team at feedback@ccl.northwestern.edu.