This repository has been archived by the owner on Jun 26, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 18
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #361 from ckeditor/t/344
Other: Introduced `SplitButtonView` and new dropdown creation helpers (`createDropdown()`, `addListToDropdown()` and `addToolbarToDropdown()`) Closes #344. Closes #356. BREAKING CHANGE: Removed `DropdownModel` interface – you can use dropdown properties directly now. See #356. BREAKING CHANGE: Removed `createButtonDropdown()` and `ButtonDropdownView`. See #356. BREAKING CHANGE: Removed `createListDropdown()` and `ListDropdownView`. See #356.
- Loading branch information
Showing
31 changed files
with
1,573 additions
and
1,217 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,128 @@ | ||
/** | ||
* @license Copyright (c) 2003-2018, CKSource - Frederico Knabben. All rights reserved. | ||
* For licensing, see LICENSE.md. | ||
*/ | ||
|
||
/** | ||
* @module ui/button/button | ||
*/ | ||
|
||
/** | ||
* The button interface. Implemented by, among others, {@link module:ui/button/buttonview~ButtonView}, | ||
* {@link module:ui/dropdown/button/splitbuttonview~SplitButtonView} and | ||
* {@link module:ui/dropdown/button/dropdownbuttonview~DropdownButtonView}. | ||
* | ||
* @interface module:ui/button/button~Button | ||
*/ | ||
|
||
/** | ||
* The label of the button view visible to the user when {@link #withText} is `true`. | ||
* It can also be used to create a {@link #tooltip}. | ||
* | ||
* @observable | ||
* @member {String} #label | ||
*/ | ||
|
||
/** | ||
* (Optional) The keystroke associated with the button, i.e. <kbd>CTRL+B</kbd>, | ||
* in the string format compatible with {@link module:utils/keyboard}. | ||
* | ||
* @observable | ||
* @member {Boolean} #keystroke | ||
*/ | ||
|
||
/** | ||
* (Optional) Tooltip of the button, i.e. displayed when hovering the button with the mouse cursor. | ||
* | ||
* * If defined as a `Boolean` (e.g. `true`), then combination of `label` and `keystroke` will be set as a tooltip. | ||
* * If defined as a `String`, tooltip will equal the exact text of that `String`. | ||
* * If defined as a `Function`, `label` and `keystroke` will be passed to that function, which is to return | ||
* a string with the tooltip text. | ||
* | ||
* const view = new ButtonView( locale ); | ||
* view.tooltip = ( label, keystroke ) => `A tooltip for ${ label } and ${ keystroke }.` | ||
* | ||
* @observable | ||
* @default false | ||
* @member {Boolean|String|Function} #tooltip | ||
*/ | ||
|
||
/** | ||
* (Optional) The position of the tooltip. See {@link module:ui/tooltip/tooltipview~TooltipView#position} | ||
* to learn more about the available position values. | ||
* | ||
* **Note:** It makes sense only when the {@link #tooltip `tooltip` attribute} is defined. | ||
* | ||
* @observable | ||
* @default 's' | ||
* @member {'s'|'n'} #tooltipPosition | ||
*/ | ||
|
||
/** | ||
* The HTML type of the button. Default `button`. | ||
* | ||
* @observable | ||
* @member {'button'|'submit'|'reset'|'menu'} #type | ||
*/ | ||
|
||
/** | ||
* Controls whether the button view is "on". It makes sense when a feature it represents | ||
* is currently active, e.g. a bold button is "on" when the selection is in the bold text. | ||
* | ||
* To disable the button, use {@link #isEnabled} instead. | ||
* | ||
* @observable | ||
* @default true | ||
* @member {Boolean} #isOn | ||
*/ | ||
|
||
/** | ||
* Controls whether the button view is enabled, i.e. it can be clicked and execute an action. | ||
* | ||
* To change the "on" state of the button, use {@link #isOn} instead. | ||
* | ||
* @observable | ||
* @default true | ||
* @member {Boolean} #isEnabled | ||
*/ | ||
|
||
/** | ||
* Controls whether the button view is visible. Visible by default, buttons are hidden | ||
* using a CSS class. | ||
* | ||
* @observable | ||
* @default true | ||
* @member {Boolean} #isVisible | ||
*/ | ||
|
||
/** | ||
* (Optional) Controls whether the label of the button is hidden (e.g. an icon–only button). | ||
* | ||
* @observable | ||
* @default false | ||
* @member {Boolean} #withText | ||
*/ | ||
|
||
/** | ||
* (Optional) An XML {@link module:ui/icon/iconview~IconView#content content} of the icon. | ||
* When defined, an `iconView` should be added to the button. | ||
* | ||
* @observable | ||
* @member {String} #icon | ||
*/ | ||
|
||
/** | ||
* (Optional) Controls the `tabindex` HTML attribute of the button. By default, the button is focusable | ||
* but does not included in the <kbd>Tab</kbd> order. | ||
* | ||
* @observable | ||
* @default -1 | ||
* @member {String} #tabindex | ||
*/ | ||
|
||
/** | ||
* Fired when the button view is clicked. It won't be fired when the button {@link #isEnabled} | ||
* is `false`. | ||
* | ||
* @event execute | ||
*/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.