From 037bae954dd8a97a3975f8bd997f93259aff80e9 Mon Sep 17 00:00:00 2001 From: cagataycivici Date: Fri, 14 Dec 2018 12:41:13 +0300 Subject: [PATCH] Implemented RadioButton component --- src/AppMenu.vue | 1 + src/components/radiobutton/RadioButton.css | 35 ++++++++++ src/components/radiobutton/RadioButton.vue | 74 ++++++++++++++++++++++ src/main.js | 2 + src/router.js | 5 ++ src/views/radiobutton/RadioButtonDemo.vue | 70 ++++++++++++++++++++ 6 files changed, 187 insertions(+) create mode 100644 src/components/radiobutton/RadioButton.css create mode 100644 src/components/radiobutton/RadioButton.vue create mode 100644 src/views/radiobutton/RadioButtonDemo.vue diff --git a/src/AppMenu.vue b/src/AppMenu.vue index c3776eac7..5001e15a5 100644 --- a/src/AppMenu.vue +++ b/src/AppMenu.vue @@ -10,6 +10,7 @@
● InputText ● ListBox + ● RadioButton ● Textarea
diff --git a/src/components/radiobutton/RadioButton.css b/src/components/radiobutton/RadioButton.css new file mode 100644 index 000000000..4f71c4fae --- /dev/null +++ b/src/components/radiobutton/RadioButton.css @@ -0,0 +1,35 @@ +.p-radiobutton { + display:inline-block; + cursor: pointer; + vertical-align: middle; + margin-right: .25em; + user-select: none; + -moz-user-select: none; + -webkit-user-select: none; +} + +.p-radiobutton .p-radiobutton-box { + width: 1.125em; + height: 1.125em; + line-height: 1.125em; + -moz-border-radius: 100%; + -webkit-border-radius: 100%; + border-radius: 100%; + text-align: center; + position: relative; +} + +.p-radiobutton .p-radiobutton-icon { + display: block; + position: absolute; + left: 50%; + top: 50%; + width: 1em; + height: 1em; + margin-top: -.5em; + margin-left: -.5em; +} + +.p-radiobutton + label { + vertical-align: middle; +} \ No newline at end of file diff --git a/src/components/radiobutton/RadioButton.vue b/src/components/radiobutton/RadioButton.vue new file mode 100644 index 000000000..033d44d4d --- /dev/null +++ b/src/components/radiobutton/RadioButton.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/src/main.js b/src/main.js index f5c510d98..6413e9fde 100644 --- a/src/main.js +++ b/src/main.js @@ -8,6 +8,7 @@ import InputText from './components/inputtext/InputText'; import Fieldset from './components/fieldset/Fieldset'; import ListBox from './components/listbox/ListBox'; import Panel from './components/panel/Panel'; +import RadioButton from './components/radiobutton/RadioButton'; import Textarea from './components/textarea/Textarea'; import Toolbar from './components/toolbar/Toolbar'; import TabView from './components/tabview/TabView'; @@ -26,6 +27,7 @@ Vue.component('p-inputtext', InputText); Vue.component('p-listBox', ListBox); Vue.component('p-fieldset', Fieldset); Vue.component('p-panel', Panel); +Vue.component('p-radioButton', RadioButton); Vue.component('p-tabView', TabView); Vue.component('p-tabPanel', TabPanel); Vue.component('p-textarea', Textarea); diff --git a/src/router.js b/src/router.js index c094eca25..e9f0382e3 100644 --- a/src/router.js +++ b/src/router.js @@ -46,6 +46,11 @@ export default new Router({ name: 'panel', component: () => import('./views/panel/PanelDemo.vue') }, + { + path: '/radiobutton', + name: 'radiobutton', + component: () => import('./views/radiobutton/RadioButtonDemo.vue') + }, { path: '/textarea', name: 'textarea', diff --git a/src/views/radiobutton/RadioButtonDemo.vue b/src/views/radiobutton/RadioButtonDemo.vue new file mode 100644 index 000000000..0612509c6 --- /dev/null +++ b/src/views/radiobutton/RadioButtonDemo.vue @@ -0,0 +1,70 @@ + + + + +