mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-29 10:12:41 +01:00
Add a selected button ui state
Summary: Only for grey buttons, but can expand. Sets a selected class. Test Plan: Review new changes in UIExamples. Reviewers: epriestley Reviewed By: epriestley Spies: Korvin Differential Revision: https://secure.phabricator.com/D18501
This commit is contained in:
parent
b4cbea9018
commit
11046d495d
5 changed files with 44 additions and 9 deletions
|
@ -9,7 +9,7 @@ return array(
|
||||||
'names' => array(
|
'names' => array(
|
||||||
'conpherence.pkg.css' => 'e68cf1fa',
|
'conpherence.pkg.css' => 'e68cf1fa',
|
||||||
'conpherence.pkg.js' => 'b5b51108',
|
'conpherence.pkg.js' => 'b5b51108',
|
||||||
'core.pkg.css' => '2bee293d',
|
'core.pkg.css' => '0437a674',
|
||||||
'core.pkg.js' => '6c085267',
|
'core.pkg.js' => '6c085267',
|
||||||
'darkconsole.pkg.js' => '1f9a31bc',
|
'darkconsole.pkg.js' => '1f9a31bc',
|
||||||
'differential.pkg.css' => '45951e9e',
|
'differential.pkg.css' => '45951e9e',
|
||||||
|
@ -127,7 +127,7 @@ return array(
|
||||||
'rsrc/css/layout/phabricator-source-code-view.css' => 'aea41829',
|
'rsrc/css/layout/phabricator-source-code-view.css' => 'aea41829',
|
||||||
'rsrc/css/phui/button/phui-button-bar.css' => 'f1ff5494',
|
'rsrc/css/phui/button/phui-button-bar.css' => 'f1ff5494',
|
||||||
'rsrc/css/phui/button/phui-button-simple.css' => '8e1baf68',
|
'rsrc/css/phui/button/phui-button-simple.css' => '8e1baf68',
|
||||||
'rsrc/css/phui/button/phui-button.css' => 'a37aa3a8',
|
'rsrc/css/phui/button/phui-button.css' => '1863cc6e',
|
||||||
'rsrc/css/phui/calendar/phui-calendar-day.css' => '572b1893',
|
'rsrc/css/phui/calendar/phui-calendar-day.css' => '572b1893',
|
||||||
'rsrc/css/phui/calendar/phui-calendar-list.css' => '576be600',
|
'rsrc/css/phui/calendar/phui-calendar-list.css' => '576be600',
|
||||||
'rsrc/css/phui/calendar/phui-calendar-month.css' => '21154caf',
|
'rsrc/css/phui/calendar/phui-calendar-month.css' => '21154caf',
|
||||||
|
@ -529,7 +529,7 @@ return array(
|
||||||
'rsrc/js/phuix/PHUIXActionListView.js' => 'b5c256b8',
|
'rsrc/js/phuix/PHUIXActionListView.js' => 'b5c256b8',
|
||||||
'rsrc/js/phuix/PHUIXActionView.js' => '442efd08',
|
'rsrc/js/phuix/PHUIXActionView.js' => '442efd08',
|
||||||
'rsrc/js/phuix/PHUIXAutocomplete.js' => '4b7430ab',
|
'rsrc/js/phuix/PHUIXAutocomplete.js' => '4b7430ab',
|
||||||
'rsrc/js/phuix/PHUIXButtonView.js' => 'a37126bd',
|
'rsrc/js/phuix/PHUIXButtonView.js' => '8a91e1ac',
|
||||||
'rsrc/js/phuix/PHUIXDropdownMenu.js' => '8018ee50',
|
'rsrc/js/phuix/PHUIXDropdownMenu.js' => '8018ee50',
|
||||||
'rsrc/js/phuix/PHUIXExample.js' => '68af71ca',
|
'rsrc/js/phuix/PHUIXExample.js' => '68af71ca',
|
||||||
'rsrc/js/phuix/PHUIXFormControl.js' => '83e03671',
|
'rsrc/js/phuix/PHUIXFormControl.js' => '83e03671',
|
||||||
|
@ -824,7 +824,7 @@ return array(
|
||||||
'phui-big-info-view-css' => 'acc3492c',
|
'phui-big-info-view-css' => 'acc3492c',
|
||||||
'phui-box-css' => '745e881d',
|
'phui-box-css' => '745e881d',
|
||||||
'phui-button-bar-css' => 'f1ff5494',
|
'phui-button-bar-css' => 'f1ff5494',
|
||||||
'phui-button-css' => 'a37aa3a8',
|
'phui-button-css' => '1863cc6e',
|
||||||
'phui-button-simple-css' => '8e1baf68',
|
'phui-button-simple-css' => '8e1baf68',
|
||||||
'phui-calendar-css' => 'f1ddf11c',
|
'phui-calendar-css' => 'f1ddf11c',
|
||||||
'phui-calendar-day-css' => '572b1893',
|
'phui-calendar-day-css' => '572b1893',
|
||||||
|
@ -882,7 +882,7 @@ return array(
|
||||||
'phuix-action-list-view' => 'b5c256b8',
|
'phuix-action-list-view' => 'b5c256b8',
|
||||||
'phuix-action-view' => '442efd08',
|
'phuix-action-view' => '442efd08',
|
||||||
'phuix-autocomplete' => '4b7430ab',
|
'phuix-autocomplete' => '4b7430ab',
|
||||||
'phuix-button-view' => 'a37126bd',
|
'phuix-button-view' => '8a91e1ac',
|
||||||
'phuix-dropdown-menu' => '8018ee50',
|
'phuix-dropdown-menu' => '8018ee50',
|
||||||
'phuix-form-control-view' => '83e03671',
|
'phuix-form-control-view' => '83e03671',
|
||||||
'phuix-icon-view' => 'bff6884b',
|
'phuix-icon-view' => 'bff6884b',
|
||||||
|
@ -1557,6 +1557,10 @@ return array(
|
||||||
'javelin-install',
|
'javelin-install',
|
||||||
'javelin-dom',
|
'javelin-dom',
|
||||||
),
|
),
|
||||||
|
'8a91e1ac' => array(
|
||||||
|
'javelin-install',
|
||||||
|
'javelin-dom',
|
||||||
|
),
|
||||||
'8ce821c5' => array(
|
'8ce821c5' => array(
|
||||||
'phabricator-notification',
|
'phabricator-notification',
|
||||||
'javelin-stratcom',
|
'javelin-stratcom',
|
||||||
|
@ -1696,10 +1700,6 @@ return array(
|
||||||
'javelin-sound',
|
'javelin-sound',
|
||||||
'phabricator-notification',
|
'phabricator-notification',
|
||||||
),
|
),
|
||||||
'a37126bd' => array(
|
|
||||||
'javelin-install',
|
|
||||||
'javelin-dom',
|
|
||||||
),
|
|
||||||
'a3a63478' => array(
|
'a3a63478' => array(
|
||||||
'phui-workcard-view-css',
|
'phui-workcard-view-css',
|
||||||
),
|
),
|
||||||
|
|
|
@ -83,9 +83,11 @@ final class PHUIButtonExample extends PhabricatorUIExample {
|
||||||
),
|
),
|
||||||
array(
|
array(
|
||||||
'icon' => 'fa-upload',
|
'icon' => 'fa-upload',
|
||||||
|
'disabled' => true,
|
||||||
),
|
),
|
||||||
array(
|
array(
|
||||||
'icon' => 'fa-street-view',
|
'icon' => 'fa-street-view',
|
||||||
|
'selected' => true,
|
||||||
),
|
),
|
||||||
array(
|
array(
|
||||||
'text' => pht('Copy "Quack" to Clipboard'),
|
'text' => pht('Copy "Quack" to Clipboard'),
|
||||||
|
@ -99,6 +101,8 @@ final class PHUIButtonExample extends PhabricatorUIExample {
|
||||||
->setColor(PHUIButtonView::GREY)
|
->setColor(PHUIButtonView::GREY)
|
||||||
->setIcon(idx($spec, 'icon'))
|
->setIcon(idx($spec, 'icon'))
|
||||||
->setText(idx($spec, 'text'))
|
->setText(idx($spec, 'text'))
|
||||||
|
->setSelected(idx($spec, 'selected'))
|
||||||
|
->setDisabled(idx($spec, 'disabled'))
|
||||||
->addClass(PHUI::MARGIN_SMALL_RIGHT)
|
->addClass(PHUI::MARGIN_SMALL_RIGHT)
|
||||||
->setDropdown(idx($spec, 'dropdown'));
|
->setDropdown(idx($spec, 'dropdown'));
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,7 @@ final class PHUIButtonView extends AphrontTagView {
|
||||||
private $href = null;
|
private $href = null;
|
||||||
private $title = null;
|
private $title = null;
|
||||||
private $disabled;
|
private $disabled;
|
||||||
|
private $selected;
|
||||||
private $name;
|
private $name;
|
||||||
private $tooltip;
|
private $tooltip;
|
||||||
private $noCSS;
|
private $noCSS;
|
||||||
|
@ -74,6 +75,11 @@ final class PHUIButtonView extends AphrontTagView {
|
||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function setSelected($selected) {
|
||||||
|
$this->selected = $selected;
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
public function setTag($tag) {
|
public function setTag($tag) {
|
||||||
$this->tag = $tag;
|
$this->tag = $tag;
|
||||||
return $this;
|
return $this;
|
||||||
|
@ -189,6 +195,10 @@ final class PHUIButtonView extends AphrontTagView {
|
||||||
$classes[] = 'disabled';
|
$classes[] = 'disabled';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($this->selected) {
|
||||||
|
$classes[] = 'selected';
|
||||||
|
}
|
||||||
|
|
||||||
switch ($this->getButtonType()) {
|
switch ($this->getButtonType()) {
|
||||||
case self::BUTTONTYPE_DEFAULT:
|
case self::BUTTONTYPE_DEFAULT:
|
||||||
$classes[] = 'phui-button-default';
|
$classes[] = 'phui-button-default';
|
||||||
|
|
|
@ -105,6 +105,19 @@ button[disabled] {
|
||||||
opacity: 0.5;
|
opacity: 0.5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
button.button-grey.selected,
|
||||||
|
a.button.button-grey.selected,
|
||||||
|
button.button-grey.selected:hover,
|
||||||
|
a.button.button-grey.selected:hover {
|
||||||
|
border-color: {$sh-orangetext};
|
||||||
|
color: {$sh-orangetext};
|
||||||
|
}
|
||||||
|
|
||||||
|
button.button-grey.selected .phui-icon-view,
|
||||||
|
a.button-grey.selected .phui-icon-view {
|
||||||
|
color: {$sh-orangetext};
|
||||||
|
}
|
||||||
|
|
||||||
a.phuix-dropdown-open {
|
a.phuix-dropdown-open {
|
||||||
color: {$greytext};
|
color: {$greytext};
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,6 +16,7 @@ JX.install('PHUIXButtonView', {
|
||||||
|
|
||||||
_iconView: null,
|
_iconView: null,
|
||||||
_color: null,
|
_color: null,
|
||||||
|
_selected: null,
|
||||||
_buttonType: null,
|
_buttonType: null,
|
||||||
|
|
||||||
setIcon: function(icon) {
|
setIcon: function(icon) {
|
||||||
|
@ -43,6 +44,13 @@ JX.install('PHUIXButtonView', {
|
||||||
return this;
|
return this;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
setSelected: function(selected) {
|
||||||
|
var node = this.getNode();
|
||||||
|
this._selected = selected;
|
||||||
|
JX.DOM.alterClass(node, 'selected', this._selected);
|
||||||
|
return this;
|
||||||
|
},
|
||||||
|
|
||||||
setButtonType: function(button_type) {
|
setButtonType: function(button_type) {
|
||||||
var self = JX.PHUIXButtonView;
|
var self = JX.PHUIXButtonView;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue