cavalion-blocks
Advanced tools
Comparing version 0.9.35 to 0.9.36
20
.md
@@ -6,18 +6,27 @@ * [CHANGELOG.md]() - [README.md]() - [package.json]() | ||
> * [src](:/) / [blocks.less](src/:) | ||
* [src](:/) / [blocks.less](src/:) | ||
>> * [Blocks.js](src/:) - [Factory.js](src/:) | ||
> * [Blocks.js](src/:) - [Factory.js](src/:) | ||
* [Factory.parse.js](src/:) | ||
# | ||
# | ||
>> * **[cavalion-blocks](src/:/)** _<= Library/cavalion-blocks_ | ||
> * **[cavalion-blocks](src/:/)** _<= Library/cavalion-blocks_ | ||
* [code](src/cavalion-blocks/:/) - [devtools](src/cavalion-blocks/:/) - [docs](src/cavalion-blocks/:/) - [ide](src/cavalion-blocks/:/) - [index](src/cavalion-blocks/:/) | ||
* [bro](src/cavalion-blocks/:/) - [veldapps](src/cavalion-blocks/:/) - [veldoffice](src/cavalion-blocks/:/) - [lost+found](src/cavalion-blocks/:/) | ||
* **[prototypes/](src/:)** | ||
* [Container](src/prototypes/:.js) [.glassy](src/prototypes/Container:.js) - [.zoomy](src/prototypes/Container:.js) | ||
* [Container](src/prototypes/:.js) [.glassy](src/prototypes/Container:.js) - [.closex](src/prototypes/Container:.js) - [.dialog](src/prototypes/Container:.js) - [.zoomy](src/prototypes/Container:.js) | ||
* [.draggable](src/prototypes/Container:.js) - [.sizeable](src/prototypes/Container:.js) | ||
* [Hover](src/prototypes/:.js) - _basically an alias for a superclassed Container_ | ||
* [Dialog](src/prototypes/:.js) | ||
* [ListOf](src/prototypes/:.js) | ||
# `2023/09/12` It's all (about being) relative | ||
...or is it? 🤔 Let's face it, the 2nd link below here does it already almost. It's just that it opens the editor instead of the component. | ||
* [`B.i("./Hover<my-1st-hover")`](`!`) -=> [./Hover<my-1st-hover>]([!]) | ||
* -=> [./Hover<my-1st-hover>](<[!]>) | ||
* [./Hover]([!]) | ||
# `2023/01/23` Timeline.amcharts3 | ||
@@ -35,3 +44,2 @@ | ||
# `2022/04/17` Container.zoomy needs to emerge | ||
@@ -38,0 +46,0 @@ |
@@ -0,1 +1,7 @@ | ||
### 2023/09/20 - 0.9.36 | ||
* Hover<> now uses embedded blocks components uri to store its (appearance) properties | ||
??? | ||
### 2022/06/23 - 0.9.33 | ||
@@ -2,0 +8,0 @@ |
{ | ||
"name": "cavalion-blocks", | ||
"version": "0.9.35", | ||
"version": "0.9.36", | ||
"description": "`blocks-dot-js` `[].js`", | ||
@@ -5,0 +5,0 @@ "main": "README.js", |
@@ -17,3 +17,2 @@ "use util/HtmlElement"; | ||
/* TODO CSS definitions must (eventually) be moved to App.glassy */ | ||
'': { | ||
@@ -97,4 +96,4 @@ // 'height': HEIGHT + "px", | ||
onLoad() { | ||
// TODO CVLN-20230608-1 | ||
// var parent = this.up("devtools/Workspace<>:root"); | ||
// TODO CVLN-20230608-1 // var parent = this.up("devtools/Workspace<>:root"); | ||
var parent = this.app().qs("#window"); | ||
@@ -109,7 +108,8 @@ var ar = parent.getAbsoluteRect(); | ||
this.addClasses("glassy glassy-overlay"); // so that classes-property be used | ||
this.addClasses("glassy glassy-overlay"); // so that classes-property can be used | ||
this.override({ | ||
createDragger() { | ||
const dragger = this.inherited(arguments); | ||
var ar1 = this.getAbsoluteRect(); | ||
const ar1 = this.getAbsoluteRect(); | ||
let transform; | ||
dragger.override({ | ||
@@ -124,11 +124,13 @@ createHandles(evt) { | ||
this._control.bringToFront(); | ||
transform = this._control._node.style.transform; | ||
}, | ||
updateHandles(evt) { | ||
var cursor = this._control._node.style.cursor; | ||
const style = this._control._node.style; | ||
let cursor = style.cursor; | ||
if(cursor === "") { | ||
/** This will just move the control, override to change behaviour */ | ||
var eX = parseInt(evt.clientX / 8, 10) * 8; | ||
var eY = parseInt(evt.clientY / 8, 10) * 8; | ||
this._control._node.style.transform = js.sf("translate3d(%dpx, %dpx, 0)", eX - this._sx, eY - this._sy); | ||
var eY = parseInt(evt.clientY / 8, 10) * 8; | ||
style.transform = js.sf("%s translate3d(%dpx, %dpx, 0)", transform, eX - this._sx, eY - this._sy); | ||
} else { | ||
@@ -161,3 +163,3 @@ var dx = evt.clientX - this._sx, dy = evt.clientY - this._sy; | ||
destroyHandles(evt) { | ||
this._control._node.style.transform = ""; | ||
this._control._node.style.transform = transform; | ||
this._sizehandle.parentNode.removeChild(this._sizehandle); | ||
@@ -189,3 +191,3 @@ delete this._sizehandle; | ||
this._control._node.style.transform = ""; | ||
this._control._node.style.transform = transform; | ||
this._control.setBounds(x, y); | ||
@@ -197,3 +199,2 @@ } | ||
var cursor = this._control._node.style.cursor; | ||
this._control._node.style.transform = ""; | ||
if(cursor === "") { | ||
@@ -208,2 +209,3 @@ /** This will just move the control, override to change behaviour */ | ||
} | ||
this._control._node.style.transform = transform; | ||
} | ||
@@ -227,6 +229,2 @@ }, true); | ||
// var nav = this.vars("navigator", this.udr("#navigator")); | ||
// this.vars("parent", nav.getParent()); | ||
// nav.isVisible = () => true; | ||
return this.inherited(arguments); | ||
@@ -286,2 +284,6 @@ }, | ||
}, []]; | ||
// onMouseEnter(evt) { this.print("mouseenter", evt); }, | ||
@@ -295,4 +297,2 @@ // onMouseLeave(evt) { this.print("mouseleave", evt); }, | ||
// } | ||
}, [ | ||
// ["veldapps/Map", [ | ||
@@ -325,16 +325,5 @@ | ||
["Executable", ("toggle-visible"), { | ||
hotkey: "F3", | ||
onLoad() { | ||
this.override("isHotkeyEnabled", () => this.isEnabled()); | ||
}, | ||
on() { this.up().toggle("visible") } | ||
}], | ||
// ["Container", { css: "background-color: red;", align: "client" }] | ||
]]; | ||
// renderZoom: function() { | ||
@@ -341,0 +330,0 @@ // /** @overriding vcl/ui/Panel - transform-origin will be set by css */ |
"use strict"; | ||
["vcl-ui:Form", { | ||
// align: "client" | ||
}]; | ||
["vcl-ui:Form"]; |
@@ -1,6 +0,40 @@ | ||
["Container.glassy", { | ||
classes: "left shrink-to-corner with-shadow" | ||
}] | ||
// getStorageKey might solve the problem/challenge with a not being able to specify (specializer) the (automagically created) Hover<>-instance (since it would lead to many implicit bases when dealing with long uri paths) embedding the actual blocks component of interest | ||
[("Container<>.glassy.closex"), { | ||
onDispatchChildEvent(component, name, evt, f, arg) { | ||
if(name === "click") { | ||
this.nextTick(() => this.bringToFront()); | ||
} | ||
return this.inherited(arguments); | ||
}, | ||
onLoad() { | ||
let spec = this.getSpecializer(), uri; | ||
// if spec is number maybe not set uri? | ||
if(!spec) { | ||
uri = this.vars("uri"); | ||
} else { | ||
uri = spec; | ||
} | ||
B.i([this.vars("storage-uri", uri || this.vars("storage-uri"))]).then(c => c.set({ | ||
parent: this, | ||
zoom: this.vars("zoom") || 1 | ||
})); | ||
return this.inherited(arguments); | ||
}, | ||
overrides:{ | ||
getStorageKey(key) { | ||
const su = this.vars("storage-uri"); | ||
if(su) { | ||
this.print(js.sf("getStorageKey(%s): %s %s", key || "", su, key || "")); | ||
return key === undefined ? su : js.sf("%s %s", su, key); | ||
} | ||
return this.inherited(arguments); | ||
} | ||
} | ||
}]; |
101916
58
2559