Commit Graph

262 Commits

Author SHA1 Message Date
Victor Woeltjen
7ea63fce8c [Plot] Add specs for PlotPanZoomStackGroup
Add specs to verify the behavior of PlotPanZoomStackGroup,
which is responsible for synchronizing the domain axis
between multiple sub-plots in a stacked plot view.
WTD-625.
2014-12-12 11:10:52 -08:00
Victor Woeltjen
a2d22a4558 [Plot] Restore coverage on PlotController
Restore full test coverage on PlotController after
refactoring for WTD-625, stacked plots.
2014-12-12 10:08:58 -08:00
Victor Woeltjen
4586146da2 [Plot] Remove failing specs
Remove specs which fail due to refactoring for
WTD-625.
2014-12-12 09:49:44 -08:00
Victor Woeltjen
a677ed258e [Plot] Add skeleton specs for stacked plots
Add skeleton specs for classes introduced to support
stacked plot mode, WTD-625.
2014-12-12 09:44:05 -08:00
Victor Woeltjen
06036ce8b3 [Plot] Restore range tick marks
Restore range tick marks; these were lost in refactoring
to support multiple subplots-per-view due to a missed
occurrence of an out-of-date interface usage. WTD-625.
2014-12-11 19:36:01 -08:00
Victor Woeltjen
188e98a78b [Plot] Update stacked plots immediately
When changes to pan-zoom bounds are made in one
subplot, this will effect the pan-zoom bounds of
other subplots. Ensure this occurs immediately.
WTD-625.
2014-12-11 19:33:09 -08:00
Victor Woeltjen
9c1d72f917 [Plot] Integrate PlotPanZoomStackGroup
Utilize PlotPanZoomStackGroup; that is, utilize changes
such that a set of pan-zoom stacks can be treated as one,
while their domain axis synchronizes, and their range
axis does not. WTD-625.
2014-12-11 19:21:52 -08:00
Victor Woeltjen
0ce0517e09 [Plot] Initially implement synced pan/zoom stack
Initially implement a synchronized pan/zoom stack,
which maintains the same domain axis bounds for all
subplots in a stacked plot view, but allows each to
have independent range axes. WTD-625.
2014-12-11 17:27:44 -08:00
Victor Woeltjen
9344809998 [Plot] Restrict hover coordinates
Only show hover coordinates in a stacked plot for
the plot which the user is specifically hovering
over. WTD-625.
2014-12-11 17:09:08 -08:00
Victor Woeltjen
1b6ce10dd9 [Plot] Change style when stacked
Change plot style when in stacked plot mode, such that
plots stack as expected. (Without this change, the
gl-plot class's height of 100% will cause all plots to
fill the full vertical space, effectively acting
overlaid.) WTD-625.
2014-12-11 17:02:07 -08:00
Victor Woeltjen
cd8deca1b3 [Plot] Add initial stack-plot implementation
Add initial implementation of stacked mode for
Plot view. Note that this will not stack correctly
due to markup/style issues. WTD-625.
2014-12-10 20:16:23 -08:00
Victor Woeltjen
eb90a3eeba [Plot] Fix refactoring issues
Fix issues related to refactoring of view-level
to subplot-level behavior, such that previous
functionality is restored. This refactoring
supports introduction of a stacked-plot mode,
for WTD-625.
2014-12-10 20:04:10 -08:00
Victor Woeltjen
784b2b6186 [Plot] Begin refactoring for stacked plots
Begin refactoring Plot view to support stacked plots;
separate out behavior which needs to occur per-plot
from area which should occur per-view, and add a
handler for the Overlay mode. WTD-625.
2014-12-10 19:51:27 -08:00
Victor Woeltjen
1c3d2d923f [Plot] Add notion of subplots to template
Add notion of subplots to the plot template; these
are elements within a stacked plot. WTD-625.
2014-12-10 18:55:47 -08:00
Victor Woeltjen
01f1a92d09 [Plot] Get/set from overlay switcher
Get/set mode from the plot mode switcher; only show
the switcher if there is more than one mode available
(which should only occur when there is more than one
telemetry object in the plot.) WTD-625.
2014-12-10 18:38:42 -08:00
Victor Woeltjen
3a0e80d360 [Plot] Add switcher for Stacked/Overlaid
Add switcher to handle changing between Stacked and Overlaid
plots. WTD-625.
2014-12-10 18:29:18 -08:00
Victor Woeltjen
4173dd748b [Telemetry] Keep telemetryObjects reference
Return the same value from getTelemetryObjects if thes e
haven't changed, to permit this return value to be
watched directly without appearing unstable. Supports
the addition of stacked plot controls, which need
to be conditioned on the number of telemetry objects
present. WTD-625.
2014-12-10 18:28:38 -08:00
bwyu
ce608eedc3 Merge remote-tracking branch 'origin/wtd535' into open-master 2014-12-09 14:12:50 -08:00
bwyu
a9d6009610 Merge conflicts with wtd593 2014-12-09 13:33:58 -08:00
bwyu
91e5ba75de Merge conflicts for wtd537 2014-12-09 11:22:21 -08:00
bwyu
32ae75088f Merge remote-tracking branch 'origin/wtd576' into open-master 2014-12-09 01:38:13 -08:00
bwyu
ed6c06b453 Merged conflicts with wtd534 2014-12-08 18:07:49 -08:00
bwyu
301153cc1b Merge remote-tracking branch 'origin/wtd533' into open-master
Conflicts:
	bundles.json
2014-12-08 17:29:19 -08:00
Victor Woeltjen
b1f8a54dab [Layout] Update specs
Update specs to reflect changes made to the manner in
which a view may persist view configuration changes,
for WTD-535.
2014-12-06 09:45:43 -08:00
Victor Woeltjen
3f41dc716f [Layout] Add commit to scope
Add a commit function to scope from the edit representer;
this avoids issues trying to transparently detect and
persist changes made during edit mode, while still requiring
only minimal action from individual views. WTD-535.
2014-12-06 09:38:36 -08:00
Victor Woeltjen
5faf81e9a5 [Layout] Handle mutation edge case
Fix an edge case in the mutation capability where model
data could be lost during a mutation; this supports
auto-mutate/persist functionality for representations,
which allows Layout editing (transitioned for WTD-535)
to be persisted thereby.
2014-12-06 09:28:46 -08:00
Victor Woeltjen
6de973c11e [Layout] Add JSDoc to new scripts
Add in-line documentation to new scripts introduced to
support the transitioned Layout view, WTD-535.
2014-12-05 18:01:38 -08:00
Victor Woeltjen
c01d253c8e [Layout] Complete specs
Complete specs for scripts which implement the Layout
view, transitioned for WTD-535.
2014-12-05 16:53:53 -08:00
Victor Woeltjen
ecb4283df0 [Layout] Fill in non-layout specs
Complete specs for scripts introduced in support of
Layout objects/views. WTD-535.
2014-12-05 16:27:32 -08:00
Victor Woeltjen
d3f0505385 [Layout] Fix failing specs
Repair or remove failing specs to reflect changes and
refactoring performed during transition of Layout views,
WTD-535.
2014-12-05 15:48:13 -08:00
Victor Woeltjen
f418491cc4 [Layout] Add empty specs
Add empty specs for new scripts introduced during the
transition of Layout object type and view, WTD-535.
2014-12-05 15:39:07 -08:00
Victor Woeltjen
2ef244edce [Layout] Refer to new scripts from test suites
Add entries for new scripts to test suites, to ensure
tests fail until scripts added to support transition
of Layout object/view (WTD-535) have been completed.
WTD-535.
2014-12-05 15:33:25 -08:00
Victor Woeltjen
0a27ebfe09 [Layout] Fix bottom resize handle
Repair the arguments given to the bottom resize
handle for frames in a layout; previously this had
been parameterized erroneously to function as a
right-hand resize handle. Part of transition of
layout elements, WTD-535.
2014-12-05 15:23:18 -08:00
Victor Woeltjen
874efa40ea [Layout] Avoid infinite digest error
Perform initial population of scope in mct-representation
at link time, instead of waiting for watches to be fired;
this avoids the need for extra digest iterations, which
Angular detects as indicators of infinite loops (throwing
exceptions accordingly.) Fixed in the context of supporting
transition of editable Layouts, because these errors were
being thrown upon exiting Edit mode. WTD-535.
2014-12-05 15:22:14 -08:00
Victor Woeltjen
b1457c9eaf [Layout] Add un-minified Angular
Add un-minified Angular and source mappings to aid
in debugging infinite digests. These are occurring
when leaving Edit mode, e.g. after editing a Layout,
so this is needed to complete transition of the
Layout object type. WTD-535.
2014-12-05 15:15:38 -08:00
Victor Woeltjen
a0486495c4 [Layout] Cache reference to body later in mct-drag
Get a reference to the body element at link-time,
instead of instantiation time, from the mct-drag
directive. Failure to do so causes the reference
to fall out of date when switching between Browse
and Edit mode.

Supports position/sizing interactions for Layout
view, WTD-535.
2014-12-05 14:21:10 -08:00
Victor Woeltjen
7080ca585e [Layout] Avoid infinite digest exception
Auto-expand tree nodes on a timeout, instead of immediately.
This is necessary in cases where auto-expansion several
layers deep occurs; if done immediately, each expansion
will trigger a new digest cycle, which at a certain depth
will appear to Angular as unstable.

Done in the context of WTD-535.
2014-12-05 13:31:57 -08:00
Victor Woeltjen
7dadc62f23 [Layout] Store position/size changes
Store changes to the size and position of panels in a
layout to its configuration. The mct-representation
directive (and its constituent parts) is responsible
for detecting and persisting these changes as
appropriate. WTD-535.
2014-12-05 12:49:40 -08:00
Victor Woeltjen
a6de53c118 [Layout] Add auto-save behavior
Add an EditRepresenter which detects changes to domain
object model or view configuration and, when these
occur, triggers mutation and persistence of the domain
object. (Note that in Edit mode, 'persistence' only
flags an object as dirty; actual persistence does not
occur until the user chooses Save.)

This supports editing of position/size in Layout mode,
and the persistence of those changes. WTD-535
2014-12-05 12:48:21 -08:00
Victor Woeltjen
67b9af54b3 [Layout] Add notion of representers
Add representers as a category of extension; these are extra
steps to perform when representing a domain object. This
will be used to support automatic mutation/persistence of
domain objects from a watch, while avoiding bloat within
the mct-representation directive itself. This, in turn,
simplifies the persistence strategy to be employed by
Layout views when editing concludes. WTD-535.
2014-12-05 09:46:21 -08:00
Victor Woeltjen
b50f40f399 [Layout] Fix view switcher in frame
Recognize choice from the view switcher in a frame
in a Layout and display that chosen view. WTD-535.
2014-12-05 09:13:16 -08:00
Victor Woeltjen
f61eb143e7 [Layout] Restrict Items view to folders
Restrict the Items view to folders, such that it does not
show for Layouts (and, more broadly, for any non-folders.)
WTD-535.
2014-12-05 09:12:35 -08:00
Victor Woeltjen
ffb9352da0 [Layout] Disallow editing when not in edit mode
Disallow positioning and resizing of frames within a layout
when not in Edit mode. WTD-535.
2014-12-05 09:07:58 -08:00
Victor Woeltjen
04649d6d71 [Layout] Add remaining panel handles
Add remaining panel handles to allow sizing and positioning
of frames within a layout. WTD-535.
2014-12-05 09:04:22 -08:00
Victor Woeltjen
707641d5b6 [Layout] Trigger digest from mct-drag
Trigger digest using scope. during mct-drag
interactions, to ensure that changes which have
resulted from the drag are applied promptly.
WTD-535.
2014-12-05 08:55:54 -08:00
Victor Woeltjen
847144c630 [Layout] Utilize mct-drag
Utilize mct-drag in the layout view to allow editing
of frame position by drag. WTD-535.
2014-12-05 08:51:41 -08:00
Victor Woeltjen
b941557b41 [Layout] Fix errors in mct-drag
Properly reset the initial drag position tracked by the
mct-drag position so that multiple drags upon the same
element are correctly offset from an initial position.
Also, preventDefault from events to avoid selection
highlights during drag.

Supports editing Layout objects, for WTD-535.
2014-12-05 08:50:45 -08:00
bwyu
505b6ee241 Merge remote-tracking branch 'origin/wtd575' into open-master
Conflicts:
	bundles.json
2014-12-05 00:44:22 -08:00
Victor Woeltjen
479aaa09fb [Layout] Add mct-drag directive
Add an mct-drag directive to support various draggable
things, including frames in a layout. WTD-535.
2014-12-04 14:45:19 -08:00
Victor Woeltjen
8956be1209 [Layout] Add methods for interaction
Add methods for tracking interactions with
frames in a layout. WTD-535.
2014-12-04 14:01:41 -08:00