[Kimchi-devel] [PATCH] UI: Add messagebar widget
Aline Manera
alinefm at linux.vnet.ibm.com
Mon Jan 19 12:28:15 UTC 2015
On 16/01/2015 01:17, Wen Wang wrote:
> Sorry to mention that we have to apply YuXin's patch of icons to see
> the close button:
>
> [Kimchi-devel] [PATCH] UI: Add Web Font Icon Library
>
> New Kimchi UI is based on new icons of fontello and all we need is
> included in that patch
Thanks for mention that.
I will apply the icon library patch first.
>
> Best Regards.
>
>
> On 1/15/2015 8:26 PM, Aline Manera wrote:
>>
>> Thanks for the sample! It is really good to know how the widget will
>> work =)
>>
>> About the widget itself: it looks very nice but I have a comment to do.
>> We've already had some comments regarding the message appears just
>> for some seconds which can not be fully visible to the user.
>> So I'd like to know if is possible to add a dismiss icon for the
>> notification and only hide it when the user select to dismiss.
>> Otherwise, the message will be always there.
>>
>> More comments below.
>>
>> On 14/01/2015 07:51, Wen Wang wrote:
>>> 1) Add sample for widget
>>> 2) Add messagebar as widget
>>>
>>> Signed-off-by: Wen Wang <wenwang at linux.vnet.ibm.com>
>>> ---
>>> ui/css/theme-default/messagebar-flat.css | 63
>>> +++++++++++++++++++++++++++++
>>> ui/js/widgets/messagebar-flat.js | 65
>>> ++++++++++++++++++++++++++++++
>>> ui/js/widgets/samples/messagebar-flat.html | 29 +++++++++++++
>>> 3 files changed, 157 insertions(+)
>>> create mode 100644 ui/css/theme-default/messagebar-flat.css
>>> create mode 100644 ui/js/widgets/messagebar-flat.js
>>> create mode 100644 ui/js/widgets/samples/messagebar-flat.html
>>>
>>> diff --git a/ui/css/theme-default/messagebar-flat.css
>>> b/ui/css/theme-default/messagebar-flat.css
>>> new file mode 100644
>>> index 0000000..86605cd
>>> --- /dev/null
>>> +++ b/ui/css/theme-default/messagebar-flat.css
>>> @@ -0,0 +1,63 @@
>>> +/*
>>> + * Project Kimchi
>>> + *
>>> + * Copyright IBM, Corp. 2015
>>> + *
>>> + * Licensed under the Apache License, Version 2.0 (the "License");
>>> + * you may not use this file except in compliance with the License.
>>> + * You may obtain a copy of the License at
>>> + *
>>> + * http://www.apache.org/licenses/LICENSE-2.0
>>> + *
>>> + * Unless required by applicable law or agreed to in writing, software
>>> + * distributed under the License is distributed on an "AS IS" BASIS,
>>> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>>> implied.
>>> + * See the License for the specific language governing permissions and
>>> + * limitations under the License.
>>> + */
>>> +.messagebar {
>>> + height: 30px;
>>> +}
>>> +
>>> +.messagebar .messagebar-text {
>>> + padding-left: 5px;
>>> + text-align: left;
>>> + vertical-align: 50%;
>>> +}
>>> +
>>> +.messagebar .messageHead {
>>> + display: inline-block;
>>> + width: 5px;
>>> + height: 30px;
>>> +}
>>> +
>>> +.messagebar-close {
>>> + padding-top: 6px;
>>> + padding-right: 10px;
>>> + cursor: pointer;
>>> + float: right;
>>> +}
>>> +
>>> +.green {
>>> + background-color: #DAE6CB;
>>> +}
>>> +
>>> +.dark-green {
>>> + background-color: #89C53A;
>>> +}
>>> +
>>> +.yellow {
>>> + background-color: #F1E3C2;
>>> +}
>>> +
>>> +.dark-yellow {
>>> + background-color: #FDB60D;
>>> +}
>>> +
>>> +.red {
>>> + background-color: #EAC3C7;
>>> +}
>>> +
>>> +.dark-red {
>>> + background-color: #D81227;
>>> +}
>>> \ No newline at end of file
>>> diff --git a/ui/js/widgets/messagebar-flat.js
>>> b/ui/js/widgets/messagebar-flat.js
>>> new file mode 100644
>>> index 0000000..d72682d
>>> --- /dev/null
>>> +++ b/ui/js/widgets/messagebar-flat.js
>>> @@ -0,0 +1,65 @@
>>> +/*
>>> + * Project Kimchi
>>> + *
>>> + * Copyright IBM, Corp. 2015
>>> + *
>>> + * Licensed under the Apache License, Version 2.0 (the "License");
>>> + * you may not use this file except in compliance with the License.
>>> + * You may obtain a copy of the License at
>>> + *
>>> + * http://www.apache.org/licenses/LICENSE-2.0
>>> + *
>>> + * Unless required by applicable law or agreed to in writing, software
>>> + * distributed under the License is distributed on an "AS IS" BASIS,
>>> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>>> implied.
>>> + * See the License for the specific language governing permissions and
>>> + * limitations under the License.
>>> + */
>>> +
>>
>>> + /*
>>> +
>>> + $(".selector").messagebarFlat({
>>> + content: "This is a test", //text that is going to be
>>> shown to user
>>> + color: "red" //color that we pre-defined, current are
>>> "red", "yellow" and "green"
>>> + });
>>> +
>>> + */
>>
>> As it is commented out I think we can remove it.
>>
>>> +(function($) {
>>> + $.widget("kimchi.messagebarFlat", {
>>> + options : {
>>> + content : null,
>>> + color : "red",
>>> + },
>>> +
>>> + _create: function() {
>>> + var now = this._getTime();
>>> + var that = this;
>>> + $("<div class='messagebar'><span
>>> class='messageHead'></span>" +
>>> + "<span class='messagebar-text'> " +
>>> this.options.content +": " + now + "</span></div>")
>>> + .addClass(this.options.color)
>>> + .appendTo(that.element);
>>> + $(".messageHead").addClass("dark-" + this.options.color);
>>> + $("<span class='messagebar-close
>>> icon-cancel-circled'></span>").on("click", function() {
>>> + that.destroy();
>>> + }).appendTo($(".messagebar"));
>>> + setTimeout(function() {
>>> + that.destroy()
>>> + }, 3000);
>>> + },
>>> +
>>> + _getTime: function() {
>>> + var CT = new Date();
>>> + var currentDate = CT.getDate() + "/" + CT.getMonth()+1
>>> + "/" +CT.getFullYear();
>>> + var currentTime = CT.getHours() + ":" + CT.getMinutes()
>>> + ":" + CT.getSeconds();
>>> + var now = currentDate + " " + currentTime;
>>> + return now;
>>> + },
>>> +
>>> + destroy: function() {
>>> + var that = this;
>>> + that.element.fadeOut("normal", function() {
>>> + that.element.remove();
>>> + });
>>> + }
>>> + });
>>> +})(jQuery);
>>> \ No newline at end of file
>>> diff --git a/ui/js/widgets/samples/messagebar-flat.html
>>> b/ui/js/widgets/samples/messagebar-flat.html
>>> new file mode 100644
>>> index 0000000..1b1ce0b
>>> --- /dev/null
>>> +++ b/ui/js/widgets/samples/messagebar-flat.html
>>> @@ -0,0 +1,29 @@
>>> +<!--Sample code -->
>>> +<!DOCTYPE html>
>>> +<html>
>>> + <head>
>>> + <meta charset="UTF-8">
>>> + <title>Kimchi</title>
>>> + <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
>>> + <meta name="viewport" content="width=device-width,
>>> initial-scale=1.0, user-scalable=yes" />
>>> + <link rel="stylesheet"
>>> href="../../../libs/themes/base/jquery-ui.min.css">
>>> + <link rel="stylesheet"
>>> href="../../../css/fontello/css/fontello.css">
>>> + <link rel="stylesheet"
>>> href="../../../css/fontello/css/animation.css">
>>> + <link rel="stylesheet"
>>> href="../../../css/theme-default/messagebar-flat.css">
>>> + <script src="../../../libs/jquery-1.10.0.min.js"></script>
>>> + <script src="../../../libs/jquery-ui.min.js"></script>
>>> + <script src="../messagebar-flat.js"></script>
>>> + </head>
>>> + <body>
>>> + <div class="message"></div>
>>> + <script>
>>> + $(document).ready(function() {
>>> + $(".message").messagebarFlat({
>>> + content: "This is a test",
>>> + color: "red"
>>> + });
>>> + });
>>> + </script>
>>> + </body>
>>> +
>>> +</html>
>>
>
>
More information about the Kimchi-devel
mailing list