Giter VIP home page Giter VIP logo

qxl.dialog's Introduction

Qooxdoo Dialog Widgets

Build Status

Notes: The code of this package originates from the cboulanger/qx-contrib repository and has been moved to the new namespace qxl.dialog. It only works with the new JavaScript compiler and qooxdoo version 6. See below for instructions how to migrate your code.

A set of often used dialog widgets for the qooxdoo framework.

  • Alert
  • Confirm
  • Login
  • Prompt
  • Select
  • Progress

The package also provides support for user-defined forms and wizards. These more complex widgets, however, are likely to be moved into a separate package eventually.

Demo: https://qooxdoo.github.io/qxl.dialog

API Viewer: https://www.qooxdoo.org/qxl.dialog/apiviewer/index.html#qxl.dialog

See the code of the Demo app for examples how to use the widgets.

Installation

To install the package into an existing qooxdoo application, execute in its root directory:

qx pkg install qooxdoo/qxl.dialog

Install icon theme

From v1.3.0 on, the contrib allows you to use custom icons for the dialogs. However, this means that the icons will not work out of the box. You must extend your own icon theme from one of the shipped icon themes. or copy over the @asset() declarations and alias definitions from one of these themes into your own icon theme.

You can also use your own choice of icons by writing an icon theme which defines defining the aliases dialog.icon.(ok|cancel|info|warning|error) with the paths to the icons. Those paths also need to be put into a @asset compiler hint. See, for example, this theme class.

Testing

To run the tests, first start the built-in server with

qx serve --target=build

Once the message Web server started ... appears, open a new terminal and start the tests with npm test. Once the tests have succeeded, you can kill the server process in the first tab.

Migrating from cboulanger/qx-contrib-Dialog

To migrate code that has used the cboulanger/qx-contrib-Dialog package, you need to do the following steps:

  • qx pkg remove cboulanger/qx-contrib-Dialog
  • qx pkg install qooxdoo/qxl.dialog
  • search and replace dialog. with qxl.dialog. and dialog/ with qxl/dialog/ (check each search/replace manually to avoid false positives )

Changelog

v3.0.0

Moved package from cboulanger/qx-contrib-Dialog and changed namespace to qxl.dialog

v2.0.0

  • Dropped support for qx v5.0 and the python generator
  • Rewrote tests to make use of the new qx.core.Id system

v1.4.0

  • Added TextCafe UI tests

v1.3.3

  • integrate demo application into library code, now you can simply do qx serve to run the demo.

v1.3.1

  • fix alias names

v1.3.0

  • Compatible with qooxdoo 5.x and 6.x: added support for new JS compiler
  • Merged changes from https://github.com/jbruwes/qooxdialog
    • replaced base widget qx.ui.GroupBox with modal qx.ui.window.Window
  • Added new black and white SVG icons from https://icomoon.io/#preview-free, added support for live icon theme switching
  • Added promise() method returning a Promise as an alternative to callbacks
  • Promisified all shorthand methods (dialog.alert, ...), resulting in massively better readability see Demo app
  • Added caption parameter to shorthand methods.
  • Since a modal window has its own blocker, the default coloured blocker has been removed. If you want the old behavior, call dialog.Dialog.useBlocker(true).
  • Prettified with the default settings of https://github.com/prettier/prettier
  • Added 'cancelOnEscape' property (default: true) which triggers the 'cancel' button action if the user presses the Escape key and 'allowCancel' is true.
  • Progress Widget enhancements:
    • added 'hideWhenCancelled' property (default: true) to allow "cleanup" or similar actions to be displayed after the cancel button has been pressed.

v1.2

  • fixed a bug that prevented submitting the login dialog by pressing enter (patch by @novij)
  • added "Forgot Password?" button to login widget

v1.1

  • compatible with qooxdoo v4.0
  • Progress dialog widget added

v1.0

  • compatible with qooxdoo v3.5

TODO

  • Tab and focus handling is still buggy: Users can tab into non-modal widgets.
  • Rewrite using child controls, to make dialogs truly themeable.

qxl.dialog's People

Contributors

cboulanger avatar hkollmann avatar franck34 avatar regexti avatar 6r1d avatar jonimnim avatar omrihar avatar dependabot[bot] avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.