<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.infinite-erp.co.id/index.php?action=history&amp;feed=atom&amp;title=How_to_create_a_New_Skin</id>
	<title>How to create a New Skin - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.infinite-erp.co.id/index.php?action=history&amp;feed=atom&amp;title=How_to_create_a_New_Skin"/>
	<link rel="alternate" type="text/html" href="https://wiki.infinite-erp.co.id/index.php?title=How_to_create_a_New_Skin&amp;action=history"/>
	<updated>2026-04-06T18:37:19Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.1</generator>
	<entry>
		<id>https://wiki.infinite-erp.co.id/index.php?title=How_to_create_a_New_Skin&amp;diff=2785&amp;oldid=prev</id>
		<title>Wikiadmin: Created page with &quot;== Introduction ==  This how-to explains how to create a module that contains a skin (for use in classic -2.50 based- and 3.00 windows). We will create an example module calle...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.infinite-erp.co.id/index.php?title=How_to_create_a_New_Skin&amp;diff=2785&amp;oldid=prev"/>
		<updated>2021-12-16T03:30:16Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;== Introduction ==  This how-to explains how to create a module that contains a skin (for use in classic -2.50 based- and 3.00 windows). We will create an example module calle...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
This how-to explains how to create a module that contains a skin (for use in classic -2.50 based- and 3.00 windows). We will create an example module called Example Skin, with the Java package name ''org.openbravo.userinterface.skin.blue''.&lt;br /&gt;
It is not mandatory to build both classic (2.50 based) and 3 skins parts. Each part is independent.&lt;br /&gt;
NOTE: The 'Login' page customization is included in the classic (2.50 based) side.&lt;br /&gt;
&lt;br /&gt;
For more extensive documentation about Openbravo 2.50 UI components, consult the [[ERP/2.50/Developers_Guide/Concepts/UI/Look_and_feel| ''Look and feel'']] article.&lt;br /&gt;
&lt;br /&gt;
For more extensive documentation about Openbravo 3 UI components personalization, consult the [[Skins| ''Skins'']] article.&lt;br /&gt;
&lt;br /&gt;
The latest version of the complete example can be found at:&lt;br /&gt;
https://code.openbravo.com/erp/mods/org.openbravo.userinterface.skin.blue/&lt;br /&gt;
&lt;br /&gt;
==Files structure==&lt;br /&gt;
&lt;br /&gt;
===Openbravo 3===&lt;br /&gt;
&lt;br /&gt;
Create the following folder structure&lt;br /&gt;
&lt;br /&gt;
 #openbravo#/modules/org.openbravo.userinterface.skin.blue/web/org.openbravo.userinterface.smartclient/openbravo/skins/Blue/&lt;br /&gt;
&lt;br /&gt;
Since Openbravo 3 is module based, the recommendation is to add here as many folders as parts of Openbravo 3 you want to customize. Each file inside each folder should include ONLY the attributes/properties you want to change  Thanks to that if new material is added to Openbravo 3, it will be also be inherited in your custom skin. You can always release a new version of your custom skin introducing the new elements.&lt;br /&gt;
&lt;br /&gt;
Here is a real example of how to manage this folder:&lt;br /&gt;
https://code.openbravo.com/erp/mods/org.openbravo.userinterface.skin.blue/file/tip/web/org.openbravo.userinterface.smartclient/openbravo/skins/Blue&lt;br /&gt;
&lt;br /&gt;
Create the component provider at&lt;br /&gt;
 #openbravo#/org.openbravo.userinterface.skin.blue/src/org/openbravo/userinterface/skin/blue/&lt;br /&gt;
&lt;br /&gt;
The component provider is used to load the previous built files.&lt;br /&gt;
You can find more information about how component provider works at: [[Openbravo_3_Architecture#Component_Provider| ''Openbravo 3 Architecture: Component Provider'']]&lt;br /&gt;
&lt;br /&gt;
Here is a real example of a skin component provider:&lt;br /&gt;
https://code.openbravo.com/erp/mods/org.openbravo.userinterface.skin.blue/file/tip/src/org/openbravo/userinterface/skin/blue/ResourcesComponentProvider.java&lt;br /&gt;
&lt;br /&gt;
===Openbravo Classic/2.50===&lt;br /&gt;
NOTE: In Openbravo 2.50 the default skin was &amp;quot;Default&amp;quot; skin, but in Openbravo 3 also a new skin called &amp;quot;250to300Comp&amp;quot; has been built to make classic (2.50 based) windows look more like new Openbravo 3 windows&lt;br /&gt;
&lt;br /&gt;
Create the following folder structure&lt;br /&gt;
&lt;br /&gt;
 #openbravo#/modules/org.openbravo.userinterface.skin.blue/web/org.openbravo.userinterface.skin.blue/skins/Blue/&lt;br /&gt;
&lt;br /&gt;
Create at this location&lt;br /&gt;
&lt;br /&gt;
 #openbravo#/modules/org.openbravo.userinterface.skin.blue/web/org.openbravo.userinterface.skin.blue/skins/Blue/*&lt;br /&gt;
&lt;br /&gt;
These files (with the content):&lt;br /&gt;
&lt;br /&gt;
Openbravo_ERP.css:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;@import url(Openbravo_ERP_250.css);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Openbravo_ERP_240.css&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;@import url(Openbravo_ERP_250.css);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Openbravo_ERP_250.css&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;@import url(../../Default/Openbravo_ERP_250.css);&lt;br /&gt;
@import url(../../org.openbravo.userinterface.skin.250to300Comp/250to300Comp/Openbravo_ERP_250.css);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Openbravo_ERP_250_print.css&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;@import url(../../Default/Openbravo_ERP_250_print.css);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Openbravo_ERP_print.css&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;@import url(Openbravo_ERP_250_print.css);&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you have to add each class you need to change from the &amp;quot;Default&amp;quot; or &amp;quot;250to300Comp&amp;quot; skin in your Openbravo_ERP_250.css file or in Openbravo_ERP_250_print.css file&lt;br /&gt;
&lt;br /&gt;
You have to include also in these added classes ONLY the attributes you want to change. Thanks to that if new material is added to the &amp;quot;Default&amp;quot; or to the &amp;quot;250to300Comp&amp;quot; skin, it will be also be inherited in your custom skin. You can always release a new version of your custom skin introducing the new elements.&lt;br /&gt;
&lt;br /&gt;
If you add/change any image that needs to be flipped to RTL (if it is selected), you have to add also a file &amp;quot;RTLFlippedImages.txt&amp;quot; with the path of these images&lt;br /&gt;
&lt;br /&gt;
Here is a real example of how to manage these files:&lt;br /&gt;
https://code.openbravo.com/erp/mods/org.openbravo.userinterface.skin.blue/file/tip/web/org.openbravo.userinterface.skin.blue/skins/Blue&lt;br /&gt;
&lt;br /&gt;
PD: Remember that you should make changes only in files inside &amp;quot;Blue&amp;quot; folder.&lt;br /&gt;
&lt;br /&gt;
==Inside Openbravo ERP ==&lt;br /&gt;
# Log into Openbravo ERP as System Administrator.&lt;br /&gt;
# From the Application dictionary, select '''Application Dictionary &amp;gt; Module'''.&lt;br /&gt;
# Click '''New'''&lt;br /&gt;
# Select the '''Module''' tab and fill in the following essential fields:&lt;br /&gt;
#* Java Package = org.openbravo.userinterface.skin.blue&lt;br /&gt;
#* Name = Skin: Blue&lt;br /&gt;
#* Type = Module&lt;br /&gt;
#* Description = Skin that provides the application a blue look&amp;amp;feel&lt;br /&gt;
#* Help/Comment = When you install this module a new skin called 'Blue' is added and applied. To enable it also in classic mode go to &amp;quot;Session Preferences&amp;quot; window. To disable it you have to uninstall it.&lt;br /&gt;
#* Version = 1.0.0&lt;br /&gt;
#* In Development = checked&lt;br /&gt;
# You can also fill in the following additional information:&lt;br /&gt;
#* License Type = Openbravo Public License&lt;br /&gt;
#* License text = Licensed under the Openbravo Public License version 1.1. You may obtain a copy of the License at http://www.openbravo.com/legal/license.html or in the legal folder of the Openbravo ERP core distribution.&lt;br /&gt;
#* Author = your name (or company name)&lt;br /&gt;
#* URL = your web address (or company web address)&lt;br /&gt;
# Click '''Save'''.&lt;br /&gt;
# Select the '''Dependency''' tab.&lt;br /&gt;
# Click '''New'''&lt;br /&gt;
# Fill at least the following essential fields as follows:&lt;br /&gt;
#* Dependent Module = Core&lt;br /&gt;
#* First Version = 3.0.13118 (or at least &amp;gt; 3.0.13118)&lt;br /&gt;
#* Dependency Enforcement = Major Version&lt;br /&gt;
# Click '''Save'''&lt;br /&gt;
&lt;br /&gt;
If the skin contains Openbravo 3 based components, also:&lt;br /&gt;
&lt;br /&gt;
# Click '''New'''&lt;br /&gt;
# Fill at least the following essential fields as follows:&lt;br /&gt;
#* Dependent Module = User Interface Application&lt;br /&gt;
#* First Version = 2.1.13118 (or at least &amp;gt; 2.1.13118)&lt;br /&gt;
#* Dependency Enforcement = Major Version&lt;br /&gt;
# Click '''Save'''&lt;br /&gt;
# Click '''New'''&lt;br /&gt;
# Fill at least the following essential fields as follows:&lt;br /&gt;
#* Dependent Module = Workspace &amp;amp; Widgets&lt;br /&gt;
#* First Version = 2.1.13118 (or at least &amp;gt; 2.1.13118)&lt;br /&gt;
#* Dependency Enforcement = Major Version&lt;br /&gt;
# Click '''Save'''&lt;br /&gt;
# Click '''New'''&lt;br /&gt;
# Fill at least the following essential fields as follows:&lt;br /&gt;
#* Dependent Module = User Interface Selector&lt;br /&gt;
#* First Version = 2.1.13118 (or at least &amp;gt; 2.1.13118)&lt;br /&gt;
#* Dependency Enforcement = Major Version&lt;br /&gt;
# Click '''Save'''&lt;br /&gt;
# Click '''New'''&lt;br /&gt;
# Fill at least the following essential fields as follows:&lt;br /&gt;
#* Dependent Module = Query/List Widget&lt;br /&gt;
#* First Version = 1.0.13118 (or at least &amp;gt; 1.0.13118)&lt;br /&gt;
#* Dependency Enforcement = Major Version&lt;br /&gt;
# Click '''Save'''&lt;br /&gt;
&lt;br /&gt;
If the skin contains Openbravo classic (2.50 based) components, also:&lt;br /&gt;
&lt;br /&gt;
# From the Application menu, select '''Application Dictionary &amp;gt; Reference'''.&lt;br /&gt;
# In grid view, select the '''Skin List''' record ('''name''' column).&lt;br /&gt;
# Select the '''List Reference''' tab.&lt;br /&gt;
# Click '''New'''.&lt;br /&gt;
# Complete at least the following essential fields:&lt;br /&gt;
#* Module = Skin: Blue - 1.0.0 - English (USA).&lt;br /&gt;
#* Search Key = org.openbravo.userinterface.skin.blue/Blue&lt;br /&gt;
#* Name = Blue&lt;br /&gt;
#* Select the '''Active''' checkbox.&lt;br /&gt;
# You can also complete other optional fields, such as:&lt;br /&gt;
#* Description = Skin that provides the application a blue look&amp;amp;feel&lt;br /&gt;
# Click '''Save'''.&lt;br /&gt;
&lt;br /&gt;
==Export the module==&lt;br /&gt;
Read this article section: [http://wiki.openbravo.com/wiki/How_To_Create_and_Package_a_Module#Exporting_a_Module ''How To Create and Package a Module: Exporting a module'']&lt;br /&gt;
&lt;br /&gt;
==Package the module==&lt;br /&gt;
Read this article section: [http://wiki.openbravo.com/wiki/How_To_Create_and_Package_a_Module#Packaging_a_module ''How To Create and Package a Module: Packaging a module'']&lt;br /&gt;
&lt;br /&gt;
==Deploy/Compile the module==&lt;br /&gt;
Read this article section: [http://wiki.openbravo.com/wiki/How_To_Create_and_Package_a_Module#Deploying.2FCompiling_a_module ''How To Create and Package a Module: Deploying/Compiling a module'']&lt;br /&gt;
&lt;br /&gt;
==Apply the skin==&lt;br /&gt;
The Openbravo 3 components will be directly applied. In order to un-apply them, you should have to disable or uninstall the module.&lt;br /&gt;
&lt;br /&gt;
In order to apply the classic (2.50 based) components, you should:&lt;br /&gt;
# Log into Openbravo ERP as System Administrator.&lt;br /&gt;
# From the General Setup, select '''General Setup &amp;gt; Application &amp;gt; Session Preferences'''.&lt;br /&gt;
# Select '''Theme''': '''Blue'''&lt;br /&gt;
# Click '''Save Preferences'''&lt;br /&gt;
&lt;br /&gt;
[[Category:HowTo]]&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
		
	</entry>
</feed>