* working proto for font size
* wip
* Font styling
- Base classes for font-size and font;
- WIP!
* working data attribute for fontsize
* Font styling
- Add `js-style-receiver` to markup, refine style targeting JS for
better application of styles;
- Refinements to font and size CSS;
- WIP!
* Font styling
- Redo CSS to use `data-*` attributes;
- New `u-style-receiver` class for use as font-size and font-family CSS
selector target;
- New `js-style-receiver` class for use as JS target by ObjectView.vue;
- New classes added to markup in all Open MCT views;
- Changed font-size values from 'is-font-size--*' to just the number;
- Some refinement to individual views to account for font-sizing
capability;
- Removed automatic font-size 13px being set by SubobjectView.vue;
- WIP!
* working mixed styles
* Font styling
- Added `u-style-receiver` to TelemetryView.vue;
- Added `icon-font-size` to Font Size dropdown button;
- TODO: better font-size icon;
* working font-family
* Font styling
- Art for `icon-font-size` glyph updated;
- Redefined glyph usage in some Layout toolbar buttons;
- Updated font-size and font dropdown menus options text;
* Font styling
- Refined font-size and font dropdown values;
- Fixed toolbar-select-menu.vue to remove 'px' from non-specific option
return;
* dont allow font styling on layouts that contain other layouts
* fix lint warning
* add sizing row
* fix bug with column width sizing
* fix bug with header style
* add saved styles inspector view
* WIP
* add vue component for selector
* WIP styles manager to communicate between vue components
* WIP saving and persisting styles
* no duplicate styles prevention
* fix props syntax
* WIP can apply conditional styles
* static styles do not work yet
* display border color in saved styles swatch
* allow deleting styles except default style
* WIP apply static style works but also to layout...
* prevent additional StylesView from being created
* delete style message
* change save order
* move applystyle to selector component
* rename for consistency
* naming refactor
* add style description
* update style properties only if they exist and do not erase properties
* refactor singleton usage
refactor save method
* show save and delete only on hover
* do not show delete icon if not in edit mode
* normalize styles before saving
prevent apply style if conditional and static styles are simultaneously selected
* remove default style
tweak selector display
* allow conditional and static styles to have saved style applied
limit saved styles to 20
* refactor styles manager
remove openmct dependency
use provide/inject
* resolve merge conflicts
* lint fix
* reorganize styles
* add font style editor to styles view
* save and display border correctly in saved styles view
* WIP add font styling controls to inspector styles view
* add font constants
* WIP refactor to provide reactive props
fix locked for edit
* WIP display consolidated font styles for selection in editor
* WIP font styles saved to layout
* WIP persisting font styles from inspector works
* fix styleable check
* move logic up to stylesview because save is two part
* apply font style to thumb
* there can be only one
* show font style for native views
* linting fix
* push stylesManager work to StylesView
* move method to computed
* move constant definition outside of function call
* Styling for saved styles functionality WIP
- Simplified and removed unnecessary markup;
- Standardized style applied to saved style element and toolbar control;
- Removed saved style expand arrow and description, replaced with item
title / tooltip approach;
- Standardized width of `c-style-thumb` element;
- Moved font size and style controls to the designed location;
* Styling for saved styles functionality WIP
- Layout and CSS normalization between style editor control and saved
style preview element;
- Control alignment refined;
- Moved font size and style controls to the designed location;
* Styling for saved styles functionality WIP
- Update font size icon art to normalize size;
- Sanding, tweaking, alignin and layout in style controls area of
Inspector;
* Styling for saved styles functionality WIP
- Hide the font size and style menu buttons unless the user is editing;
* remove font controls from toolbar
* turn styles tab into multipane element
* lint fix
* no font style should not be viewed as non-specific
* delete saved style by index not style
* cleanup
* view and inspector view updates on initial font change
* revert computed back to method
* set initial height
* fix test after removing 2 buttons from toolbar
* fix hidden lint error
* fix lint
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
Co-authored-by: charlesh88 <charlesh88@gmail.com>
* no-implicit-coercion and no-unneeded-ternary
* End every line with a semicolon
* Spacing and formatting
* Enabled semi-spacing
* Applies npm run lint:fix to code after master merge
* Fix merge issues
* Switched operator-linebreak to 'before'
Co-authored-by: Joshi <simplyrender@gmail.com>
* working lock and unlock
* prevent flexible layout drop hints from showing
* fix lint issue
* wip
* disable mousedown when not editing in DisplayLayout
* continued wip
* Cherrypick new glyphs from add-new-glyphs-062320
* More new glyphs, updated art
- New glyphs: icon-unlocked and icon-target;
- Updated art for icon-lock glyph;
* Edit toggle refinements WIP
- Markup, CSS in BrowseBar.vue;
* More new glyphs, updated art
- New glyphs: icon-unlocked and icon-target;
- Updated art for icon-lock glyph;
* Edit toggle refinements
- Replaced toggle switch with button;
* prevent styling changes when locked
* fix lint issues
* fix tests
* make reviewer suggested changes
Co-authored-by: charlesh88 <charlesh88@gmail.com>
* Show non specific styles when updating multiple item styles
* Save sub object styles to it's domain object
* Layout UI tweak
* Fixes flexible layout bug.
* Fixes font size bug in telemetry view
* Fixes issues with newly places TVOs including transparent properties.
* Fixes#2908
* Say NO to 'transparent' === '__no_value'
- Fixes#2895;
* Ensure styles are correctly applied to domain objects and drawing objects when selected individually
* Ensure none treatment is correctly applied to objects when multple selecting
* Fix intial box border
* Tweaks to c-text-view layout
- Vertically center text;
- Normalize padding;
- Overflow: hidden;
* Tweaks to Clock and Timer layout
- Fixes#2893;
- Vertically center text;
- Normalize padding;
- Overflow: hidden;
- `position: absolute` when in Layout;
Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
* Separate Vue component styles out from SFCs.
* Added 'MCT.prototype.getAssetPath' and using 'openmct.setAssetPath' to get relative path for assets.
* Re-implements `openmct.plugins.Snow()`, and `openmct.plugins.Espresso()` (as well as a new theme `openmct.plugins.Maelstron()`)
* Modify Selection API to support multi-select via shift click.
* Add support for shift + click to add and remove the selection.
* Display message in Location and Properties for multi-select.
* Define applicableSelectedItems for toolbar items. Move toolbar control definitions to functions.
* Hide positioning inputs if multi-select. Show a 'non-specific' icon when a discrete setting can't be shown in a mixed setting."
* Add toolbar controls in groups per layout item type. Add nonSpecific property to toolbar items to be used by toolbar controls to show non-specific icon.
* Modify toolbar button to react to nonSpecific flag. Get form value by checking value of applicable selected items.
* Support deleting multiple selected objects.
* Do not disable controls when selected items have mixed setting.
* Revert default color to original value.
* Changes to snap-to-grid
* Remove timeout for updating toolbar after mutation. Do not copy toolbar item when iterating the structure.
* Implement move to top and move to bottom for multi-select
* Implement move up and move down for multi-select.
* Markup and CSS changes for mixed settings in toolbar
- Toggle, color-picker buttons;
- TODO: check other themes and sync;
* Mixed settings styling complete
- Refined and synced theme constants;
- Styling for all toolbar components;
- Text size menu handling;
- Inspector messaging;
* Fix selection path
* Mixed settings styling refinements
- Normalized button styling for mixed style context;
- Better theme constant naming;
- Refined swatch styling, better theme constants;
* First cut at getting the bounding rectangle working for multi-select.
* Set pointer-events to none on c-edit-frame to prevent marquee reacting to click events.
* Delete capturing before calling select.
* Remove EditMarquee from ITEM_TYPE_VIEW_MAP
* Pass selected layout items as a prop to edit marquee instead of selection so that x, y, w, h are updated.
* Multi-select c-frame-edit visual fixes
- WIP
* Add complexContent class for a single selected item whose type is subobject-view.
* Move 'c-frame-edit-move' div to layout frame.
* Saving work - multi-move WIP
* Fixes issue with selection happening at end of drag
* Styles fixed for new markup organization
- Marquee, frame styles;
- $editMarqueeBorder style added to theme constants;
* Significant functionality for .c-frame-edit__move element
- Added .is-multi-selected class to .l-layout when > 1 items selected;
- __move element now handles multi-select and complex content (CC)
objects:
-- 0 to 1 items selected, displays as hover bar with grippy on all CC
objects,
-- > 1 items selected, __move covers all of the frame of all selected CC
items and doesn't allow sub-object selection, and only displays as hover
bar on non-selected CC objects;
- Added better styling for selected objects while editing;
- Code cleanup and consolidation;
- Left translucent green style applied to __move element to temporarily
aid development;
- TODO: fix line drawing object;
* - Fix an issue where shift click did not remove the selected item from the selection after move.
- Modify telemetry and subobject views to emit move and endMove events.
- Clone selectedLayoutItems to get initial positions instead of selection so subsequent moves start from the current position.
* Fix cursor for __move, code comment refinements
* Code cleanup, line view markup changes
- line view markup brought into line with structure in LayoutFrame.vue;
* Implement multi-resize
* Simplify edit marquee code. Revert image and text views' default position to the original values.
* Fix resize for single selection when snap to grid is disabled
* Hide edit marquee if single line is selected, and show c-frame-edit in line-view instead.
* Fix for LineView handles
* Remove snap to grid toggle button and modify the migration script to convert elements with pixel coordinates to grid.
* Fix resizing single line
* Calculate width and height differently for line to position marquee correctly.
* Fix moving single selected line
* Calculate the height and width for line before comparing them with max height and width to correct the marquee position.
* Change the logic for showing frame edit for lines to check for item id.
* Allow multi-move with line in the mix.
* Implement multi-resize when grabbing SW corner.
* Removed temp green tint from __move element
* Fix object undefined error.
* Implement multi-resize for all items except line (take 2).
* Misc UI 7
- CSS selectors to properly display edit marquee, don't show in browse
mode;
* Fix multi-resize for lines.
Make sure line's height and width is minimum 1.
* Disable inspector views when multiple objects are selected.
* Restored layout grid display on sub-layout selection
* Clean up code
* Fixes
- Edit marquee display fixes;
* More code clean up
* SIGNIFICANT fixes and rewriting in LayoutFrame.vue
- Styles for .c-frame-edit__move element for selection and hovering;
- local controls;
- view large button;
- Theme constants updated;
* Get selected item's index from layoutItems.
* Address review feedback.
* Merge topic-core-refactor
* Reset keyString to empty string after setting original path when domainObject is undefined.
Add proper check for selection.
* Add a button in the toolbar to toggle snapp to grid.
* Convert item's coordinates and size from grid unit to pixels depending on useGrid value.
* Rename selectionListener to removeSelectionListener
* Add delete button in the toolbar for removing items
* Mutate composition if there are no telemetry objects. Select the parent layout after deleting an item.
* Saving work
* Watch for index in the components and update it in the context.
* Select the parent after a composition is removed.
* Address reviewer's feedback.
- Rename mutatComposition() to removeFromComposition().
- Inline logic for filtering composition
- Use separate branches for each item type in trackItem().
* Address reviewer's requested changes
* Hacky WIP
* WIP
* check for 'domainobject' in data transfer
* Metadata manager can return default display value
* Refactor subobject and telemetry views to use layout frame
* Use data domainObject
* Get metadata for selected object.
* Don't inject lodash via vue
* move selection to specific layout types
* restore toolbar functionality
* Support creating line
* Add controls for setting x, y, x2 and y2 for lines from the toolbar.
* Initial attempt at resizing lines
* Check for duplicate panel
* line resize handles working
* Get Text and Box elements working.
* Refactor image view to use layout frame
* Fix drill in
* Check for object before accessing the identifier to avoid type error.
* Add inspectable class if item is subobject or telemetry view.
* Delete unused files
* remove unused imports
* Fix typos
* Fix cssClass and objectPath
* object can be undefined so check for it not being undefined before adding a listener.
* Set cssClass when domain object is available
* Get user input for text and image in the toolbar when adding element.
* - Show "Add" button in the toolbar when a display layout object is selected.
- Add a flag to object view's show() method to indicate immediate selection of the view. If the view implements getSelectionContext() use it, otherwise set to default context.
* Create a component for each element.
* Saving work
* Add element factory for creating new instances of elements.
* Mutate element when a new one added and get elements when the component is mounted.
* Add create() method for creating a new telemetry and element in their respective view configuration.
* Add some of the toolbar controls for box, text, image and line elements. Also, add X, Y, Width and Height controls for alhpanumeric elements.
* Pass name to addElement as type.
* Add c-frame-inspectable class if item is inspectable.
* Clean up
* Hide frame for summary widgets by default.
* Better styling for editing
- s-selected on shell__main-container;
- Better edit grid coloring for espresso;
* - Update toolbar-button to support dialogs.
- Update toolbar to construct a value object based on form keys if a toolbar item has a dialogi, and mutate the form keys.
- Add toolbar controls for editing text and url for 'Text' and 'Image' elements respectively.
* Editing-related changes
- Removed hard-coded .is-selectable and .is-moveable from
LayoutItem.vue, updates accordingly to _global.scss;
- Theme constants updated;
- TODO: apply changes to Flexible Layouts;
* Better defaults
- Better default grid size and object size;
* - Fix toolbar-input to read value as a number if type is 'number'.
- Remove rawPosition from view configuration and instead get the position and dimensions from the properties (x, y, width and height) directly.
- Set the style property on the view configuration instead of the layout item.
- Move the logic for updating the style to the view configuration.
* Fix default dimensions for telemetry items and subobjects since the default grid size is changed.
* Remove form definition for display layout type.
* Reword the comment
* Let subobject view configuration handle new panel creation.
* Add default grid size back and remove unused code.
* Pass in only the needed method.
* Define default position in case the object is not added via drag 'n drop.