Workspace objects

From Rave Documentation
Revision as of 15:05, 9 January 2015 by Admin (Talk | contribs) (Selecting a workspace object)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Introduction

A "workspace object" refers to any of the visualizations, tables, or controls that you can place on the workspace by clicking the "Create New..." button on the Manage tab.

Selecting a workspace object

Most of the time one workspace object is selected, which is denoted by that object having a colored border and a same-color shading in the Navigator. Occasionally, no workspace object is selected. In no case can two workspace objects be selected at the same time: there is always at most one currently selected object.

To select a workspace object, simply click in the area around its edges, i.e. the region around the object that is (usually) the same color as the workspace background, that obscures the workspace gridlines. The exact region that needs to be clicked varies for each object, but you'll get the hang of it quickly. In general, clicking within a graph or table causes some action other than selecting the workspace object, which is why you need to click around their edge instead. For workspace objects that have no interactive clickable components, you can click anywhere on the object to select it.

Selecting a workspace object has the following effects:

  • The View tab, Format tab, and Specialize tab update to let you control the currently selected workspace object.
  • All the buttons on the Manage tab under the "Workspace" heading refer to the currently selected workspace object (except "Create New," which makes a new object, and "Restore", which restores a previously put-away object.)
  • The controls on the Export tab are used to save/export the currently selected workspace object.
  • Optimizer animations are shown on the currently selected workspace object.
  • Any other Rave action that references the "current graph" or "current workspace object" refers to the currently selected workspace object.


Resizing a workspace object

Most workspace objects are resizable. To resize a workspace object, first select it. Objects that are resizable will then show a small square marker at each corner of the colored border. To resize an object, click and drag one of the corners.

Some objects are not resizeable. These show only a single square marker in the lower left corner of the colored border. Click and drag that corner to move the object (without resizing it).

Most workspace objects support moving without resizing by either right-clicking or ctrl+clicking in the same area you click to select the graph, and then dragging the mouse to the desired location in the workspace.

Moving workspace objects between pages of the workspace

To move a workspace object from one page of the workspace to another, first "Put Away" the object by using the Put Away button on the Manage tab. Then change the workspace to the desired page, and "Restore" the object there. (You must then manually place the object where you'd like it to go. There is no way to automatically send an object from one page to another without repositioning it.)

Java Workspace Objects

Some workspace objects are labeled with "Java" in their name. This indicates that these workspace objects are not made using the normal MATLAB plotting capabilities, but rely on java swing components instead. These workspace objects provide special capabilities that would be impossible to implement with normal MATLAB graphics objects (such as the Java M Code Editor) or that are substantially faster than the normal MATLAB implementation (such as the Java Data Table).

Unfortunately in versions of Matlab older than 2014b, because of a fundamental limitation in MATLAB figure windows, it is impossible to display java objects behind normal MATLAB graphics objects; the java objects are always on top. Consequently, it is impossible to allow java objects to scroll behind the Rave interface the way normal graphs do. Currently the workaround we use for this is that java workspace objects are only visible when they the workspace is scrolled such that the entire java object is visible on screen. If any part of the java object extends beyond the visible portion of the workspace, the entire object will disappear and you will see a messsage in its place telling you to scroll the workspace in order to use the java object. Obviously this isnt a very elegant solution, but we figure it's better to give you the option of using these java controls than to just leave them out of Rave entirely.

Upgrading to Matlab 2014b or newer fixes this bug.