[Kimchi-devel] [PATCH V5 1/7] Add Minimal UI Page for the Sample Plugin

Zhou Zheng Sheng zhshzhou at linux.vnet.ibm.com
Tue Jun 10 02:28:45 UTC 2014


on 2014/06/10 03:35, Aline Manera wrote:
> On 06/09/2014 04:21 PM, Aline Manera wrote:
>> On 06/09/2014 07:08 AM, shaohef at linux.vnet.ibm.com wrote:
>>> From: Zhou Zheng Sheng <zhshzhou at linux.vnet.ibm.com>
>>>
>>> Add minimal UI just enough to re-produce issue 342.
>>>
>>> https://github.com/kimchi-project/kimchi/issues/342
>>>
>>> Signed-off-by: Zhou Zheng Sheng <zhshzhou at linux.vnet.ibm.com>
>>> Signed-off-by: ShaoHe Feng <shaohef at linux.vnet.ibm.com>
>>> ---
>>>   plugins/sample/__init__.py             | 3 ++-
>>>   plugins/sample/sample.conf             | 5 +++++
>>>   plugins/sample/ui/config/tab-ext.xml   | 8 ++++----
>>>   plugins/sample/ui/pages/i18n.json.tmpl | 9 +++++++++
>>>   plugins/sample/ui/pages/tab.html.tmpl  | 6 ++++++
>>>   5 files changed, 26 insertions(+), 5 deletions(-)
>>>   create mode 100644 plugins/sample/ui/pages/i18n.json.tmpl
>>>   create mode 100644 plugins/sample/ui/pages/tab.html.tmpl
>>>
>>> diff --git a/plugins/sample/__init__.py b/plugins/sample/__init__.py
>>> index 3183898..2101aed 100644
>>> --- a/plugins/sample/__init__.py
>>> +++ b/plugins/sample/__init__.py
>>> @@ -26,6 +26,7 @@
>>>
>>>   from kimchi.config import PluginPaths
>>>   from kimchi.control.base import Collection, Resource
>>> +from kimchi.root import Root
>>>   from plugins.sample.i18n import messages
>>>   from plugins.sample.model import Model
>>>
>>> @@ -33,7 +34,7 @@
>>>   model = Model()
>>>
>>>
>>> -class Drawings(Resource):
>>> +class Drawings(Root):
>>>       def __init__(self):
>>>           Resource.__init__(self, model)
>>>           self.description = Description(model)
>>> diff --git a/plugins/sample/sample.conf b/plugins/sample/sample.conf
>>> index c4e80f7..78a9f4e 100644
>>> --- a/plugins/sample/sample.conf
>>> +++ b/plugins/sample/sample.conf
>>> @@ -5,3 +5,8 @@ uri = "/plugins/sample"
>>>
>>>   [/]
>>>   tools.trailing_slash.on = False
>>> +tools.sessions.on = True
>>> +tools.sessions.name = 'kimchi'
>>> +tools.sessions.httponly = True
>>> +tools.sessions.locking = 'explicit'
>>> +tools.sessions.storage_type = 'ram'
>>> diff --git a/plugins/sample/ui/config/tab-ext.xml
>>> b/plugins/sample/ui/config/tab-ext.xml
>>> index 948fa07..8e0b3d3 100644
>>> --- a/plugins/sample/ui/config/tab-ext.xml
>>> +++ b/plugins/sample/ui/config/tab-ext.xml
>>> @@ -1,7 +1,7 @@
>>>   <?xml version="1.0" encoding="utf-8"?>
>>> -<!--<tabs-ext>
>>> +<tabs-ext>
>>>       <tab>
>>> -        <title>Test</title>
>>> - <filePath>plugins/sample/ui/tab.html</filePath>
>>> +        <title>SampleTab</title>
>>> +        <path>plugins/sample/tab.html</path>
>>
>> The UI files should be in a dedicated dir, as we have for kimchi
>> And we could remove tab.html (which does not have any meaning) to
>> sampleplugin.html or something like that
> 
> And you use plugins/sample/tab.html but add a file in
> plugins/sample/ui/pages/tab.html.tmpl
> Where is the clue between them?
> 

It's in "src/kimchi/config.py.in", "class PluginPaths(Paths)". It sets
 self.ui_dir = self.add_prefix(os.path.join(self.plugin_dir, 'ui'))
and in "plugins/sample/__init__.py", it sets
 self.paths = PluginPaths('sample')

This is the established design of the plugin ui framework. It's not
changed in this patch series, so there is no code about it.

>>
>>>       </tab>
>>> -</tabs-ext>-->
>>> \ No newline at end of file
>>> +</tabs-ext>
>>> diff --git a/plugins/sample/ui/pages/i18n.json.tmpl
>>> b/plugins/sample/ui/pages/i18n.json.tmpl
>>> new file mode 100644
>>> index 0000000..a153e2d
>>> --- /dev/null
>>> +++ b/plugins/sample/ui/pages/i18n.json.tmpl
>>> @@ -0,0 +1,9 @@
>>> +#unicode UTF-8
>>> +#import gettext
>>> +#from kimchi.cachebust import href
>>> +#silent t = gettext.translation($lang.domain, $lang.localedir,
>>> languages=$lang.lang)
>>> +#silent _ = t.gettext
>>> +#silent _t = t.gettext
>>> +{
>>> +    "SampleTab": "$_("SampleTab")"
>>> +}
>>> diff --git a/plugins/sample/ui/pages/tab.html.tmpl
>>> b/plugins/sample/ui/pages/tab.html.tmpl
>>> new file mode 100644
>>> index 0000000..49fc4ec
>>> --- /dev/null
>>> +++ b/plugins/sample/ui/pages/tab.html.tmpl
>>> @@ -0,0 +1,6 @@
>>> +<!DOCTYPE html>
>>> +<html>
>>> +<body>
>>> +Hello, world
>>> +</body>
>>> +</html>
>>
>> _______________________________________________
>> Kimchi-devel mailing list
>> Kimchi-devel at ovirt.org
>> http://lists.ovirt.org/mailman/listinfo/kimchi-devel
>>
> 
> _______________________________________________
> Kimchi-devel mailing list
> Kimchi-devel at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/kimchi-devel
> 


-- 
Zhou Zheng Sheng / 周征晟
E-mail: zhshzhou at linux.vnet.ibm.com
Telephone: 86-10-82454397




More information about the Kimchi-devel mailing list