mirror of
https://github.com/wassname/DefinitelyTyped.git
synced 2026-08-27 11:40:08 +08:00
Merge branch 'master' of github.com:gyohk/DefinitelyTyped into gyohk-master
Conflicts: CONTRIBUTORS.md
This commit is contained in:
+4
-3
@@ -70,6 +70,7 @@ All definitions files include a header with the author and editors, so at some p
|
||||
* [Crossfilter](https://github.com/square/crossfilter) (by [Schmulik Raskin](https://github.com/schmuli))
|
||||
* [crypto-js](https://code.google.com/p/crypto-js/) (by [Gia Bảo @ Sân Đình](https://github.com/giabao)). @see [cryptojs.d.ts repo](https://github.com/giabao/cryptojs.d.ts)
|
||||
* [d3.js](http://d3js.org/) (from TypeScript samples)
|
||||
* [dat.GUI](https://github.com/dataarts/dat.gui) (by [gyoh_k](https://github.com/gyohk))
|
||||
* [debug](https://github.com/visionmedia/debug) (by [Seon-Wook Park](https://github.com/swook))
|
||||
* [dhtmlxGantt](http://dhtmlx.com/docs/products/dhtmlxGantt) (by [Maksim Kozhukh](http://github.com/mkozhukh))
|
||||
* [dhtmlxScheduler](http://dhtmlx.com/docs/products/dhtmlxScheduler) (by [Maksim Kozhukh](http://github.com/mkozhukh))
|
||||
@@ -322,9 +323,9 @@ All definitions files include a header with the author and editors, so at some p
|
||||
* [PDF.js](https://github.com/mozilla/pdf.js) (by [Josh Baldwin](https://github.com/jbaldwin))
|
||||
* [PeerJS](http://peerjs.com/) (by [Toshiya Nakakura](https://github.com/nakakura))
|
||||
* [PEG.js](http://pegjs.majda.cz/) (by [vvakame](https://github.com/vvakame))
|
||||
* [Persona](http://www.mozilla.org/en-US/persona) (by [James Frasca](https://github.com/Nycto))
|
||||
* [PgwModal](http://pgwjs.com/pgwmodal/) (by [Pine Mizune](https://github.com/pine613))
|
||||
* [PhantomJS](http://phantomjs.org) (by [Jed Hunsaker](https://github.com/jedhunsaker))
|
||||
* [Persona](http://www.mozilla.org/en-US/persona) (by [James Frasca](https://github.com/Nycto))
|
||||
* [PgwModal](http://pgwjs.com/pgwmodal/) (by [Pine Mizune](https://github.com/pine613))
|
||||
* [PhantomJS](http://phantomjs.org) (by [Jed Hunsaker](https://github.com/jedhunsaker))
|
||||
* [PhoneGap](http://phonegap.com) (by [Boris Yankov](https://github.com/borisyankov))
|
||||
* [Physijs](http://chandlerprall.github.io/Physijs/) (by [gyoh_k](https://github.com/gyohk))
|
||||
* [Pickadate.js](https://github.com/amsul/pickadate.js) (by [Adi Dahiya](https://github.com/adidahiya))
|
||||
|
||||
@@ -0,0 +1,159 @@
|
||||
/////////////////////////////////////////////////////////////
|
||||
// http://workshop.chromeexperiments.com/examples/gui/
|
||||
//////////////////////////////////////////////////////////////
|
||||
|
||||
/// <reference path="dat-gui.d.ts" />
|
||||
|
||||
|
||||
// ------------ config
|
||||
var FizzyText = function () {
|
||||
return {
|
||||
message: 'dat.gui',
|
||||
speed: 0.8,
|
||||
displayOutline: false,
|
||||
explode: function () {},
|
||||
noiseStrength: 0.5
|
||||
// Define render logic ...
|
||||
}
|
||||
};
|
||||
|
||||
// ------------ 1. Basic Usage
|
||||
() => {
|
||||
window.onload = function () {
|
||||
var text = FizzyText();
|
||||
var gui = new dat.GUI();
|
||||
gui.add(text, 'message');
|
||||
gui.add(text, 'speed', -5, 5);
|
||||
gui.add(text, 'displayOutline');
|
||||
gui.add(text, 'explode');
|
||||
};
|
||||
}
|
||||
// ------------ 2. Constraining Input
|
||||
() => {
|
||||
var text = FizzyText();
|
||||
var gui = new dat.GUI();
|
||||
gui.add(text, 'noiseStrength').step(5); // Increment amount
|
||||
gui.add(text, 'growthSpeed', -5, 5); // Min and max
|
||||
gui.add(text, 'maxSize').min(0).step(0.25); // Mix and match
|
||||
|
||||
// Choose from accepted values
|
||||
gui.add(text, 'message', ['pizza', 'chrome', 'hooray']);
|
||||
|
||||
// Choose from named values
|
||||
gui.add(text, 'speed', {Stopped: 0, Slow: 0.1, Fast: 5});
|
||||
}
|
||||
// ------------ 3. Folders
|
||||
() => {
|
||||
var text = FizzyText();
|
||||
var gui = new dat.GUI();
|
||||
|
||||
var f1 = gui.addFolder('Flow Field');
|
||||
f1.add(text, 'speed');
|
||||
f1.add(text, 'noiseStrength');
|
||||
|
||||
var f2 = gui.addFolder('Letters');
|
||||
f2.add(text, 'growthSpeed');
|
||||
f2.add(text, 'maxSize');
|
||||
f2.add(text, 'message');
|
||||
|
||||
f2.open();
|
||||
}
|
||||
// ------------ 4. Color Controllers
|
||||
() => {
|
||||
var FizzyText = function () {
|
||||
return {
|
||||
color0: "#ffae23", // CSS string
|
||||
color1: [0, 128, 255], // RGB array
|
||||
color2: [0, 128, 255, 0.3], // RGB with alpha
|
||||
color3: {h: 350, s: 0.9, v: 0.3} // Hue, saturation, value
|
||||
|
||||
// Define render logic ...
|
||||
}
|
||||
};
|
||||
|
||||
window.onload = function () {
|
||||
|
||||
var text = FizzyText();
|
||||
var gui = new dat.GUI();
|
||||
|
||||
gui.addColor(text, 'color0');
|
||||
gui.addColor(text, 'color1');
|
||||
gui.addColor(text, 'color2');
|
||||
gui.addColor(text, 'color3');
|
||||
|
||||
};
|
||||
}
|
||||
// ------------ 5. Saving Values
|
||||
() => {
|
||||
var fizzyText = FizzyText();
|
||||
var gui = new dat.GUI();
|
||||
|
||||
gui.remember(fizzyText);
|
||||
}
|
||||
|
||||
// ------------ 6. Presets
|
||||
() => {
|
||||
var gui = new dat.GUI({
|
||||
load: JSON,
|
||||
preset: 'Flow'
|
||||
});
|
||||
}
|
||||
|
||||
// ------------ 7. Events
|
||||
() => {
|
||||
var fizzyText = FizzyText();
|
||||
var gui = new dat.GUI();
|
||||
var controller = gui.add(fizzyText, 'maxSize', 0, 10);
|
||||
|
||||
controller.onChange(function (value) {
|
||||
// Fires on every change, drag, keypress, etc.
|
||||
});
|
||||
|
||||
controller.onFinishChange(function (value) {
|
||||
// Fires when a controller loses focus.
|
||||
alert("The new value is " + value);
|
||||
});
|
||||
}
|
||||
|
||||
// ------------ 8. Custom Placement
|
||||
() => {
|
||||
var gui = new dat.GUI({autoPlace: false});
|
||||
|
||||
var customContainer = document.getElementById('my-gui-container');
|
||||
customContainer.appendChild(gui.domElement);
|
||||
}
|
||||
// ------------ 9. Updating the Display Automatically
|
||||
() => {
|
||||
var fizzyText = FizzyText();
|
||||
var gui = new dat.GUI();
|
||||
|
||||
gui.add(fizzyText, 'noiseStrength', 0, 100).listen();
|
||||
|
||||
var update = function () {
|
||||
requestAnimationFrame(update);
|
||||
fizzyText.noiseStrength = Math.random();
|
||||
};
|
||||
|
||||
update();
|
||||
}
|
||||
// ------------ 10. Updating the Display Manually
|
||||
() => {
|
||||
var fizzyText = FizzyText();
|
||||
var gui = new dat.GUI();
|
||||
|
||||
gui.add(fizzyText, 'noiseStrength', 0, 100);
|
||||
|
||||
var update = function () {
|
||||
var dt = new Date();
|
||||
requestAnimationFrame(update);
|
||||
fizzyText.noiseStrength = Math.cos(dt.getTime());
|
||||
|
||||
// Iterate over all controllers
|
||||
for (var i in gui.__controllers) {
|
||||
gui.__controllers[i].updateDisplay();
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
update();
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
Vendored
+57
@@ -0,0 +1,57 @@
|
||||
// Type definitions for dat.GUI v0.5
|
||||
// Project: https://github.com/dataarts/dat.gui
|
||||
// Definitions by: Satoru Kimura <https://github.com/gyohk>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
declare module dat {
|
||||
export class GUI {
|
||||
constructor(option?: GUIParams);
|
||||
|
||||
__controllers: GUIController[];
|
||||
__folders: GUI[];
|
||||
domElement: HTMLElement;
|
||||
|
||||
add(target: Object, propName:string): GUIController;
|
||||
add(target: Object, propName:string, min: number, max: number): GUIController;
|
||||
add(target: Object, propName:string, status: boolean): GUIController;
|
||||
add(target: Object, propName:string, items:string[]): GUIController;
|
||||
add(target: Object, propName:string, items:number[]): GUIController;
|
||||
add(target: Object, propName:string, items:Object): GUIController;
|
||||
|
||||
addColor(target: Object, propName:string): GUIController;
|
||||
addColor(target: Object, propName:string, color: string): GUIController;
|
||||
addColor(target: Object, propName:string, rgba: number[]): GUIController; // rgb or rgba
|
||||
addColor(target: Object, propName:string, hsv:{h:number; s:number; v:number}): GUIController;
|
||||
|
||||
addFolder(propName:string): GUI;
|
||||
|
||||
close(): void;
|
||||
open(): void;
|
||||
remember(target: Object): void;
|
||||
}
|
||||
|
||||
export interface GUIParams{
|
||||
autoPlace?: boolean;
|
||||
closed?: boolean;
|
||||
load?: any;
|
||||
name?: string;
|
||||
preset?: string;
|
||||
width?: number;
|
||||
}
|
||||
|
||||
export class GUIController {
|
||||
destroy(): void;
|
||||
fire(): GUIController;
|
||||
getValue(): any;
|
||||
isModified(): boolean;
|
||||
listen(): GUIController;
|
||||
min(n: number): GUIController;
|
||||
remove(target: GUIController): void;
|
||||
setValue(value: any): GUIController;
|
||||
step(n: number): GUIController;
|
||||
updateDisplay(): void;
|
||||
|
||||
onChange: (value?: any) => void;
|
||||
onFinishChange: (value?: any) => void;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user