Demo/bin/Debug/front_end/elements/BezierEditor.js

(开头部分) 10KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

// Copyright (c) 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

/**
 * @constructor
 * @extends {WebInspector.VBox}
 */
WebInspector.BezierEditor = function()
{
    WebInspector.VBox.call(this, true);
    this.registerRequiredCSS("elements/bezierEditor.css");
    this.contentElement.tabIndex = 0;

    // Preview UI
    this._previewElement = this.contentElement.createChild("div", "bezier-preview-container");
    this._previewElement.createChild("div", "bezier-preview-animation");
    this._previewElement.addEventListener("click", this._startPreviewAnimation.bind(this));
    this._previewOnion = this.contentElement.createChild("div", "bezier-preview-onion");
    this._previewOnion.addEventListener("click", this._startPreviewAnimation.bind(this));

    this._outerContainer = this.contentElement.createChild("div", "bezier-container");

    // Presets UI
    this._presetsContainer = this._outerContainer.createChild("div", "bezier-presets");
    this._presetUI = new WebInspector.BezierUI(40, 40, 0, 2, false);
    this._presetCategories = [];
    for (var i = 0; i < WebInspector.BezierEditor.Presets.length; i++) {
        this._presetCategories[i] = this._createCategory(WebInspector.BezierEditor.Presets[i]);
        this._presetsContainer.appendChild(this._presetCategories[i].icon);
    }

    // Curve UI
    this._curveUI = new WebInspector.BezierUI(150, 250, 50, 7, true);
    this._curve = this._outerContainer.createSVGChild("svg", "bezier-curve");
    WebInspector.installDragHandle(this._curve, this._dragStart.bind(this), this._dragMove.bind(this), this._dragEnd.bind(this), "default");

    this._header = this.contentElement.createChild("div", "bezier-header");
    var minus = this._createPresetModifyIcon(this._header, "bezier-preset-minus", "M 12 6 L 8 10 L 12 14");
    var plus = this._createPresetModifyIcon(this._header, "bezier-preset-plus", "M 8 6 L 12 10 L 8 14");
    minus.addEventListener("click", this._presetModifyClicked.bind(this, false));
    plus.addEventListener("click", this._presetModifyClicked.bind(this, true));
    this._label = this._header.createChild("span", "source-code bezier-display-value");
}

WebInspector.BezierEditor.Events = {
    BezierChanged: "BezierChanged"
}

WebInspector.BezierEditor.Presets = [
    [
        { name: "ease-in-out", value: "ease-in-out" },
        { name: "In Out · Sine", value: "cubic-bezier(0.45, 0.05, 0.55, 0.95)" },
        { name: "In Out · Quadratic", value: "cubic-bezier(0.46, 0.03, 0.52, 0.96)" },
        { name: "In Out · Cubic", value: "cubic-bezier(0.65, 0.05, 0.36, 1)" },
        { name: "Fast Out, Slow In", value: "cubic-bezier(0.4, 0, 0.2, 1)" },
        { name: "In Out · Back", value: "cubic-bezier(0.68, -0.55, 0.27, 1.55)" }
    ],
    [
        { name: "Fast Out, Linear In", value: "cubic-bezier(0.4, 0, 1, 1)" },
后面还有 221 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。