Working on stacked buttons.

This commit is contained in:
2019-07-30 16:56:29 +02:00
parent 0bcf931465
commit 5f46b4feae
115 changed files with 3277 additions and 5134 deletions
+19 -70
View File
@@ -238,10 +238,7 @@ export default class Scrollbox extends PIXI.Container {
* @readonly
*/
get contentWidth() {
return (
this.options.boxWidth -
(this.isScrollbarVertical ? this.options.scrollbarSize : 0)
)
return this.options.boxWidth - (this.isScrollbarVertical ? this.options.scrollbarSize : 0)
}
/**
@@ -250,10 +247,7 @@ export default class Scrollbox extends PIXI.Container {
* @readonly
*/
get contentHeight() {
return (
this.options.boxHeight -
(this.isScrollbarHorizontal ? this.options.scrollbarSize : 0)
)
return this.options.boxHeight - (this.isScrollbarHorizontal ? this.options.scrollbarSize : 0)
}
/**
@@ -330,19 +324,11 @@ export default class Scrollbox extends PIXI.Container {
this.scrollbar.clear()
let options = {}
options.left = 0
options.right =
this.scrollWidth +
(this._isScrollbarVertical ? this.options.scrollbarSize : 0)
options.right = this.scrollWidth + (this._isScrollbarVertical ? this.options.scrollbarSize : 0)
options.top = 0
options.bottom =
this.scrollHeight +
(this.isScrollbarHorizontal ? this.options.scrollbarSize : 0)
const width =
this.scrollWidth +
(this.isScrollbarVertical ? this.options.scrollbarSize : 0)
const height =
this.scrollHeight +
(this.isScrollbarHorizontal ? this.options.scrollbarSize : 0)
options.bottom = this.scrollHeight + (this.isScrollbarHorizontal ? this.options.scrollbarSize : 0)
const width = this.scrollWidth + (this.isScrollbarVertical ? this.options.scrollbarSize : 0)
const height = this.scrollHeight + (this.isScrollbarHorizontal ? this.options.scrollbarSize : 0)
this.scrollbarTop = (this.content.top / height) * this.boxHeight
this.scrollbarTop = this.scrollbarTop < 0 ? 0 : this.scrollbarTop
this.scrollbarHeight = (this.boxHeight / height) * this.boxHeight
@@ -359,14 +345,9 @@ export default class Scrollbox extends PIXI.Container {
: this.scrollbarWidth
if (this.isScrollbarVertical) {
this.scrollbar
.beginFill(
this.options.scrollbarBackground,
this.options.scrollbarBackgroundAlpha
)
.beginFill(this.options.scrollbarBackground, this.options.scrollbarBackgroundAlpha)
.drawRect(
this.boxWidth -
this.scrollbarSize +
this.options.scrollbarOffsetVertical,
this.boxWidth - this.scrollbarSize + this.options.scrollbarOffsetVertical,
0,
this.scrollbarSize,
this.boxHeight
@@ -375,15 +356,10 @@ export default class Scrollbox extends PIXI.Container {
}
if (this.isScrollbarHorizontal) {
this.scrollbar
.beginFill(
this.options.scrollbarBackground,
this.options.scrollbarBackgroundAlpha
)
.beginFill(this.options.scrollbarBackground, this.options.scrollbarBackgroundAlpha)
.drawRect(
0,
this.boxHeight -
this.scrollbarSize +
this.options.scrollbarOffsetHorizontal,
this.boxHeight - this.scrollbarSize + this.options.scrollbarOffsetHorizontal,
this.boxWidth,
this.scrollbarSize
)
@@ -391,14 +367,9 @@ export default class Scrollbox extends PIXI.Container {
}
if (this.isScrollbarVertical) {
this.scrollbar
.beginFill(
this.options.scrollbarForeground,
this.options.scrollbarForegroundAlpha
)
.beginFill(this.options.scrollbarForeground, this.options.scrollbarForegroundAlpha)
.drawRect(
this.boxWidth -
this.scrollbarSize +
this.options.scrollbarOffsetVertical,
this.boxWidth - this.scrollbarSize + this.options.scrollbarOffsetVertical,
this.scrollbarTop,
this.scrollbarSize,
this.scrollbarHeight
@@ -407,15 +378,10 @@ export default class Scrollbox extends PIXI.Container {
}
if (this.isScrollbarHorizontal) {
this.scrollbar
.beginFill(
this.options.scrollbarForeground,
this.options.scrollbarForegroundAlpha
)
.beginFill(this.options.scrollbarForeground, this.options.scrollbarForegroundAlpha)
.drawRect(
this.scrollbarLeft,
this.boxHeight -
this.scrollbarSize +
this.options.scrollbarOffsetHorizontal,
this.boxHeight - this.scrollbarSize + this.options.scrollbarOffsetHorizontal,
this.scrollbarWidth,
this.scrollbarSize
)
@@ -489,10 +455,7 @@ export default class Scrollbox extends PIXI.Container {
const local = this.toLocal(e.data.global)
if (this.isScrollbarHorizontal) {
if (local.y > this.boxHeight - this.scrollbarSize) {
if (
local.x >= this.scrollbarLeft &&
local.x <= this.scrollbarLeft + this.scrollbarWidth
) {
if (local.x >= this.scrollbarLeft && local.x <= this.scrollbarLeft + this.scrollbarWidth) {
this.pointerDown = { type: 'horizontal', last: local }
} else {
if (local.x > this.scrollbarLeft) {
@@ -511,10 +474,7 @@ export default class Scrollbox extends PIXI.Container {
}
if (this.isScrollbarVertical) {
if (local.x > this.boxWidth - this.scrollbarSize) {
if (
local.y >= this.scrollbarTop &&
local.y <= this.scrollbarTop + this.scrollbarWidth
) {
if (local.y >= this.scrollbarTop && local.y <= this.scrollbarTop + this.scrollbarWidth) {
this.pointerDown = { type: 'vertical', last: local }
} else {
if (local.y > this.scrollbarTop) {
@@ -574,26 +534,15 @@ export default class Scrollbox extends PIXI.Container {
* @param {number} [options.scrollHeight] set the height of the inside of the scrollbox (leave null to use content.height)
*/
resize(options) {
this.options.boxWidth =
typeof options.boxWidth !== 'undefined'
? options.boxWidth
: this.options.boxWidth
this.options.boxHeight =
typeof options.boxHeight !== 'undefined'
? options.boxHeight
: this.options.boxHeight
this.options.boxWidth = typeof options.boxWidth !== 'undefined' ? options.boxWidth : this.options.boxWidth
this.options.boxHeight = typeof options.boxHeight !== 'undefined' ? options.boxHeight : this.options.boxHeight
if (options.scrollWidth) {
this.scrollWidth = options.scrollWidth
}
if (options.scrollHeight) {
this.scrollHeight = options.scrollHeight
}
this.content.resize(
this.options.boxWidth,
this.options.boxHeight,
this.scrollWidth,
this.scrollHeight
)
this.content.resize(this.options.boxWidth, this.options.boxHeight, this.scrollWidth, this.scrollHeight)
this.update()
}