{ "metadata": { "celltoolbar": "Slideshow", "name": "", "signature": "sha256:f8284581eb29fde72c434a9a414fcb60837302177ebaa4af6ff219dd2b726381" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "[Index](Index.ipynb) - [Back](Widget Basics.ipynb) - [Next](Widget Events.ipynb)" ] }, { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Widget List" ] }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Complete list" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "For a complete list of the widgets available to you, you can list the classes in the widget namespace (as seen below). Classes with the suffix `Widget` are widgets. `Widget` and `DOMWidget` are base classes." ] }, { "cell_type": "code", "collapsed": false, "input": [ "from IPython.html import widgets\n", "[w for w in dir(widgets) if w.endswith('Widget')]" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 2, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Numeric widgets" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "There are 8 widgets distributed with IPython that are designed to display numeric values. Widgets exist for displaying integers and floats, both bounded and unbounded. The integer widgets share a similar naming scheme to their floating point counterparts. By replacing `Float` with `Int` in the widget name, you can find the Integer equivalent." ] }, { "cell_type": "heading", "level": 3, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "FloatSliderWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.FloatSliderWidget(\n", " value=7.5,\n", " min=5.0,\n", " max=10.0,\n", " step=0.1,\n", " description='Test:',\n", ")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Sliders can also be **displayed vertically**." ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.FloatSliderWidget(\n", " value=7.5,\n", " min=5.0,\n", " max=10.0,\n", " step=0.1,\n", " description='Test',\n", " orientation='vertical',\n", ")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 3, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "FloatProgressWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.FloatProgressWidget(\n", " value=7.5,\n", " min=5.0,\n", " max=10.0,\n", " step=0.1,\n", " description='Loading:',\n", ")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 3, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "BoundedFloatTextWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.BoundedFloatTextWidget(\n", " value=7.5,\n", " min=5.0,\n", " max=10.0,\n", " description='Text:',\n", ")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 3, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "FloatTextWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.FloatTextWidget(\n", " value=7.5,\n", " description='Any:',\n", ")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 2, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Boolean widgets" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "There are two widgets that are designed to display a boolean value." ] }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "ToggleButtonWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.ToggleButtonWidget(\n", " description='Click me',\n", " value=False,\n", ")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 3, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "CheckboxWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.CheckboxWidget(\n", " description='Check me',\n", " value=True,\n", ")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 2, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Selection widgets" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "There are four widgets that can be used to display single selection lists. All four inherit from the same base class. You can specify the **enumeration of selectables by passing a list**. You can **also specify the enumeration as a dictionary**, in which case the **keys will be used as the item displayed** in the list and the corresponding **value will be returned** when an item is selected." ] }, { "cell_type": "heading", "level": 3, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "DropdownWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "from IPython.display import display\n", "w = widgets.DropdownWidget(\n", " values=[1, 2, 3],\n", " value=2,\n", " description='Number:',\n", ")\n", "display(w)" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "w.value" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The following is also valid:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "w = widgets.DropdownWidget(\n", " values={'One': 1, 'Two': 2, 'Three': 3},\n", " value=2,\n", " description='Number:',\n", ")\n", "display(w)" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "w.value" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 3, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "RadioButtonsWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.RadioButtonsWidget(\n", " description='Pizza topping:',\n", " values=['pepperoni', 'pineapple', 'anchovies'],\n", ")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 3, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "SelectWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.SelectWidget(\n", " description='OS:',\n", " values=['Linux', 'Windows', 'OSX'],\n", ")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 3, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "ToggleButtonsWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.ToggleButtonsWidget(\n", " description='Speed:',\n", " values=['Slow', 'Regular', 'Fast'],\n", ")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 2, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "String widgets" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "There are 4 widgets that can be used to display a string value. Of those, the **`TextWidget` and `TextareaWidget` accept input**. The **`LatexWidget` and `HTMLWidget` display the string** as either Latex or HTML respectively, but **do not accept input**." ] }, { "cell_type": "heading", "level": 3, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "TextWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.TextWidget(\n", " description='String:',\n", " value='Hello World',\n", ")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "TextareaWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.TextareaWidget(\n", " description='String:',\n", " value='Hello World',\n", ")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 3, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "LatexWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.LatexWidget(\n", " value=\"$$\\\\frac{n!}{k!(n-k)!} = \\\\binom{n}{k}$$\",\n", ")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "HTMLWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.HTMLWidget(\n", " value=\"Hello World\"\n", ")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "heading", "level": 2, "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "ButtonWidget" ] }, { "cell_type": "code", "collapsed": false, "input": [ "widgets.ButtonWidget(description='Click me')" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[Index](Index.ipynb) - [Back](Widget Basics.ipynb) - [Next](Widget Events.ipynb)" ] } ], "metadata": {} } ] }