<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>BlackBerry Developer Blog &#187; BlackBerry Theme Builder</title>
	<atom:link href="http://devblog.blackberry.com/tag/blackberry-theme-builder/feed/" rel="self" type="application/rss+xml" />
	<link>http://devblog.blackberry.com</link>
	<description></description>
	<lastBuildDate>Fri, 17 May 2013 17:47:42 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='devblog.blackberry.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/9ef0a66c09615fa946c4179662398878?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>BlackBerry Developer Blog &#187; BlackBerry Theme Builder</title>
		<link>http://devblog.blackberry.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://devblog.blackberry.com/osd.xml" title="BlackBerry Developer Blog" />
	<atom:link rel='hub' href='http://devblog.blackberry.com/?pushpress=hub'/>
		<item>
		<title>Digging Deep: Understanding BlackBerry Theme Builder – Part 3: Manipulating Themes</title>
		<link>http://devblog.blackberry.com/2012/02/digging-deep-understanding-blackberry-theme-builder-part-3-manipulating-themes/</link>
		<comments>http://devblog.blackberry.com/2012/02/digging-deep-understanding-blackberry-theme-builder-part-3-manipulating-themes/#comments</comments>
		<pubDate>Fri, 03 Feb 2012 21:11:34 +0000</pubDate>
		<dc:creator>garett</dc:creator>
				<category><![CDATA[Theme Development]]></category>
		<category><![CDATA[BlackBerry 7]]></category>
		<category><![CDATA[BlackBerry Theme Builder]]></category>
		<category><![CDATA[BlackBerry Theme Studio 6]]></category>
		<category><![CDATA[theme development]]></category>
		<category><![CDATA[Themes]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=8362</guid>
		<description><![CDATA[The third and final part in our series on modifying BlackBerry Theme Builder to create BlackBerry 7 OS themes.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=8362&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>As mentioned in <a href="http://devblog.blackberry.com/2012/01/blackberry-7-theme-development/" target="_new">Part 1 of our “Understanding BlackBerry® Theme Builder”</a> series, when BlackBerry Theme Builder exports themes, it dumps all image and SVG files to the Windows® temp directory, uses them to compile the theme, then deletes the files. The SVG files need to be customized to provide a layout for the target device’s resolution. This portion of the process is done manually and is very difficult, so read this blog post closely!</p>
<p>The first thing that needs to be done is to retrieve the pz_ directory and the pz_ properties file from the Windows temp directory after BlackBerry Theme Builder exports these files , but before the files can be deleted. Doing this manually would likely not work ; it happens very quickly, so you may need to apply permissions to the directory to prevent file deletion.</p>
<p>(<strong>Note:</strong> When changing any system permissions it is extremely important to fully understand the repercussions and only make changes at your own discretion.)</p>
<p>After you have these files saved to a safe place, such as your desktop of a common development directory, you can copy the pz_ properties file to the pz_ directory to keep them all in one place.</p>
<p><span id="more-8362"></span></p>
<p>Next you will need to open the various SVG files in the directory you save and make manual changes to support the resolution and desired layout on the target device. For example, the main SVG wrapper element has width and height attributes; these can be set to the width and height of the target device’s resolution. For any other elements, the width, height, x and y values may need to be set. Here is a list of some elements which can be accessed and modified:</p>
<ul>
<li>xlink:href
<ul>
<li>CurrentDateTime</li>
<li>AlarmIndicator</li>
<li>BatteryLevel</li>
<li>Coverage</li>
<li>SystemStatus</li>
<li>GridIndicators</li>
<li>Roaming</li>
<li>SignalLevel</li>
<li>WLANSignalLevel</li>
<li>GPSMode</li>
<li>Image</li>
<li>OwnerInfo</li>
<li>ProfileIndicator</li>
</ul>
</li>
</ul>
<ul>
<li>Id
<ul>
<li>hs_profile_underlay</li>
<li>hs_profile_entry_icon</li>
<li>hs_profile_focus_entry_icon</li>
</ul>
</li>
</ul>
<ul>
<li>
<ul>
<li>Id</li>
<li>wifi_bullets</li>
</ul>
</li>
</ul>
<p>A forum post will be started where users can contribute additional elements and attributes in the <a href="http://supportforums.blackberry.com/t5/BlackBerry-Themes-Animated/bd-p/plazmic_cdk">BlackBerry® Themes &amp; Animated Graphics</a> board.</p>
<p>After you have modified all of the SVG files, you will need to compile the theme files into CODs that can be installed to your device.</p>
<p>First, you will need to modify the ThemeBundler.contentDir element of the pz_.properties file to point to the current directory. Then you can run the following two commands from a command prompt:</p>
<p><code>\bin\svgc.exe *.svg<br />
\bin\tbbundle.exe pz_.properties<br />
</code></p>
<p>Make sure to watch the console for any errors when parsing the SVG. If all is successful then the theme CODs should be output to the directory specified in the ThemeBundler.outFileDir element of the pz_.properties file.</p>
<p>Your theme is now ready to be loaded for testing onto an actual BlackBerry smartphone!</p>
<p>However, this method of theme creation is not an exact science. The layout of all elements and items will take some time to get right and not all portions of the theme will be fully supported. It may take some time to get it right with several testing iterations:</p>
<p><code>while (theme != perfect)<br />
modify SVG → compile code → load onto device → test thoroughly<br />
</code></p>
<p>It would be a good idea to progress with a small number of modifications until you reach the desired theme state. A few things to note:</p>
<ol>
<ol>
<li>There is a 5MB file size limit for themes on the smartphone , any themes greater than this will be rejected by the target device</li>
<li>All images exported by Theme Studio using this method will be of an incorrect size as you are targeting a different handheld. To optimize the user experience you will need to change each image to the size expected by the target device.</li>
</ol>
</ol>
<p>Once you are satisfied, you can then distribute your theme using your preferred distribution channels, including the BlackBerry App World storefront.</p>
<p>Have you had success creating themes this way? Let us know in the comments!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/8362/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/8362/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=8362&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2012/02/digging-deep-understanding-blackberry-theme-builder-part-3-manipulating-themes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/75e7e69af37da351a3462a17576c2209?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">gbeuk</media:title>
		</media:content>
	</item>
		<item>
		<title>Digging Deep: Using BlackBerry Theme Studio 6 to Build Themes for BlackBerry 7 – Part 2</title>
		<link>http://devblog.blackberry.com/2012/02/blackberry-7-theme-development-part-2/</link>
		<comments>http://devblog.blackberry.com/2012/02/blackberry-7-theme-development-part-2/#comments</comments>
		<pubDate>Thu, 02 Feb 2012 15:46:45 +0000</pubDate>
		<dc:creator>garett</dc:creator>
				<category><![CDATA[Theme Development]]></category>
		<category><![CDATA[BlackBerry 7]]></category>
		<category><![CDATA[BlackBerry Theme Builder]]></category>
		<category><![CDATA[BlackBerry Theme Studio 6]]></category>
		<category><![CDATA[theme development]]></category>
		<category><![CDATA[Themes]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=8326</guid>
		<description><![CDATA[Part 2 of our three-part series on how to modify BlackBerry Theme Builder to create themes for BlackBerry 7 OS devices.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=8326&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>In <a href="http://devblog.blackberry.com/2012/01/blackberry-7-theme-development/" target="_new">Part 1 of our “Understanding BlackBerry® Theme Builder”</a> series, an overview of how BlackBerry Theme Builder works was provided. This blog post serves as the background to modifying BlackBerry® Theme Studio, which is what we’ll be doing today – read on!</p>
<p>1. The first thing we need to do is modify the device_profiles.properties file to include information for the BlackBerry® smartphone model/series for which we will be creating a theme.</p>
<p><strong>Example:</strong><br />
plazmic.device&lt;NUM&gt;.name=BlackBerry &lt;Model&gt; [Series]<br />
plazmic.device&lt;NUM&gt;.shortName=&lt;Model&gt;<br />
plazmic.device&lt;NUM&gt;.modelName=&lt;ModelName&gt;<br />
plazmic.device&lt;NUM&gt;.file=blackberry/BB&lt;Model&gt;.properties<br />
plazmic.device&lt;NUM&gt;.thumbnail=blackberry/images/BB&lt;Model&gt;_thumbnail.png</p>
<p><strong>&lt;NUM&gt;</strong> Each device listed in this file is incremented in this element. Any new element added should be exactly one higher than the previous listed.</p>
<p><strong>&lt;Model&gt;</strong> The smartphone model you will be creating the theme for (ie. BlackBerry® Bold™ 9900 smartphone)</p>
<p><strong>[Series]</strong> If there are multiple smartphones with the same UI characteristics (ie BlackBerry Bold 9900 smartphone and BlackBerry® Bold™ 9930 smartphone) you can include “Series”</p>
<p><strong>&lt;ModelName&gt;</strong> The commercial name for the smartphone (ie. Bold™, Curve™ or Torch™)</p>
<p><span id="more-8326"></span></p>
<p>2. Next we need to create the BB&lt;Model&gt;.properties file referenced by the device_profiles.properties file. The easiest way to do this would be to copy an existing BB&lt;Model&gt;.properties of a BlackBerry® 6 device, then simply rename the file to reflect the target model and update the resolution (screen.size) with the resolution of the target device.</p>
<p>3. We also need to create some files to let BlackBerry Theme Builder know which theme types are supported for our new device. To do this, copy an existing device’s .properties file:</p>
<p><strong>Example:</strong><br />
&lt;ThemeStudio&gt;\resources\theme\BlackBerry6_480x360\9780BlackBerry6.properties</p>
<p>From there, rename it to suit the model of device being targeted but <strong>keep it in the same directory</strong>.</p>
<p>4. Finally, open this file in a text editor and change the following values:<br />
theme.name = &lt;Model&gt; BlackBerry®6 Custom<br />
theme.device = &lt;Model&gt;<br />
theme.base = BlackBerry®7_&lt;Resolution&gt;_b<br />
theme.alternateBase = //Remove this line entirely from the file, it is not needed<br />
theme.supportedHandheldOs = 6.0,7.0<br />
theme.preferredHandheldOs = 7.0</p>
<p>&lt;Resolution&gt; &#8211; The resolution of the target device’s display</p>
<p>After this is done, you should be able to launch BlackBerry Theme Builder and select the model of device you have just added as well as the theme layout. If this works, then you have successfully modified BlackBerry Theme Builder!</p>
<p>(<strong>Note:</strong> Functionalities such as previewing on device and/or simulator will not work. Test themes need to be loaded outside of BlackBerry Theme Builder for testing using methods such as JavaLoader or BlackBerry® Desktop Software.)</p>
<p>Exporting the theme file at this time and trying to load it onto a device will cause some usability issues, as the theme has been created for a device with a different resolution from the target device. There is a bit more work that will go into customizing the theme before it can look and function properly. This will be covered in Part 3 – Manipulating Themes. Watch for this blog post soon!</p>
<p>Let us know if you have any questions so far!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/8326/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/8326/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=8326&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2012/02/blackberry-7-theme-development-part-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/75e7e69af37da351a3462a17576c2209?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">gbeuk</media:title>
		</media:content>
	</item>
		<item>
		<title>Digging Deep: Using BlackBerry Theme Studio 6 to Build Themes for BlackBerry 7 – Part 1</title>
		<link>http://devblog.blackberry.com/2012/01/blackberry-7-theme-development/</link>
		<comments>http://devblog.blackberry.com/2012/01/blackberry-7-theme-development/#comments</comments>
		<pubDate>Tue, 31 Jan 2012 21:04:49 +0000</pubDate>
		<dc:creator>garett</dc:creator>
				<category><![CDATA[Theme Development]]></category>
		<category><![CDATA[BlackBerry 7]]></category>
		<category><![CDATA[BlackBerry Theme Builder]]></category>
		<category><![CDATA[BlackBerry Theme Studio 6]]></category>
		<category><![CDATA[theme development]]></category>
		<category><![CDATA[Themes]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=8304</guid>
		<description><![CDATA[The first part in a three-part blog post series about how to use BlackBerry Theme Studio 6 to build themes for BlackBerry 7 OS devices.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=8304&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>BlackBerry® Theme Studio provides a suite of design tools that allow designers and developers to create themes for BlackBerry® smartphones. With BlackBerry Theme Studio v6.0, theme developers were able to target BlackBerry® smartphones running software versions up to and including BlackBerry® 6. As some of you may have heard, developers have made great strides in creating themes for BlackBerry 7 OS devices despite the lack of a BlackBerry Theme Studio release that officially supports these devices. How did they do it? Some BlackBerry theme advocates were able to determine the anatomy of how BlackBerry Theme Builder creates and compiles themes, and then interrupt and modify the process to have it create themes for unreleased device resolutions.</p>
<p><strong>Will Research In Motion (RIM®) let me modify BlackBerry Theme Studio to create themes for OS 7 devices?</strong></p>
<p>Absolutely! Note that the method proposed in this workaround is by no means easy. It will require considerably more effort to get even basic themes working, but it can be used as a means to create themes until an official BlackBerry Theme Studio is released that supports BlackBerry 7 OS devices. Although these steps are being provided, this method of creating themes is essentially unsupported. Theme creation and stability will entirely be the responsibility of the developer; no bugs will be logged against this method of creating themes.</p>
<p><span id="more-8304"></span></p>
<p><strong>If Liquid Graphics broke theme support, then how can themes be made?</strong></p>
<p>For the most part, the anatomy of a theme has stayed relatively unchanged between OS releases. With the introduction of BlackBerry 7 OS, several screens now use a completely new mechanism to create the UI, known as Liquid Graphics. Because of this large change, some features and functionalities supported in previous OS themes may be unsupported. This would be a limitation of BlackBerryTheme Studio 6.0 not being aware of how themes are expected in BlackBerry 7 OS. For example, both the phone and home screens previously used SVG for layouts and actions; in BlackBerry 7 OS, the phone screens no longer use SVG at all, while the home screen only uses SVG for layout purposes. All animations on the home screen and the layout of the phone screens are handled by Liquid Graphics.</p>
<p><strong>Understanding how BlackBerry Theme Builder works</strong></p>
<p>For the sake of simplicity, I will be referring to the BlackBerry Theme Studio 6.0 installation directory (wherever you may have chosen to install it on your system) as &lt;ThemeStudio&gt;.</p>
<p>Once BlackBerry Theme Builder is launched, it starts off by determining which devices and theme types are supported by reading bundled property files:</p>
<p>1) &lt;ThemeStudio&gt;\resources\devices\device_profiles.properties<br />
This file contains a list of information for all supported BlackBerry smartphone models, including a link to a file which describes the characteristics of each device and a thumbnail view of the device.</p>
<p>2) &lt;ThemeStudio&gt;\resources\devices\blackberry\BB&lt;Model&gt;.properties<br />
One of these files is included for each device model/series supported by BlackBerry Theme Studio. It lets BlackBerry Theme Builder know information about the device, such as display resolution, supported fonts, et cetera.</p>
<p>3) &lt;ThemeStudio&gt;\resources\theme\&lt;ThemeDir&gt;\&lt;Model&gt;&lt;ThemeType&gt;.properties<br />
Once BlackBerry Theme Builder reads the list of supported devices (1) and determines their properties (2), the next step is to determine which themes are available for each device. All found theme types will be displayed in the splash screen’s Select Layout Type drop-down. These themes will be based off the .thm file located in the same directory as this file.</p>
<p>After BlackBerry Theme Builder launches, and you make your changes to the theme and export your created masterpiece, BlackBerry Theme Builder does the following:</p>
<p>1) Analyzes the theme for any changes from the base theme (the default theme loaded by BlackBerry Theme Builder before any modifications are made).</p>
<p>2) Any changes found results in certain files being created during the export process by BlackBerry Theme Builder.</p>
<ul>
<li>Layout changes: SVG and associated PME files are created.</li>
<li>Image changes/additions: New image files are included.</li>
</ul>
<p>The more modifications that are made, the more files that will be exported (one image file for each image that is added). The SVG files are used to specify the layout, behavior, and reference the appropriate image files for the various icons, backgrounds, and other UI components.</p>
<p>3) These files are exported to the current user’s Windows® temp directory in a folder named with the following format:<br />
pz_&lt;5-RandomLetters&gt;</p>
<p>Also, a properties file will be exported to the temp directory in the following format:<br />
pz_&lt;5-RandomLetters&gt;.properties</p>
<p>4) BlackBerry Theme Builder then compiles these files into the theme COD file and stores that COD in another folder in the Windows temp directory with the same naming format.</p>
<p>5) BlackBerry Theme Builder then copies the COD to the defined output directory along with the required installation files (JAD, ALX etc) and deletes the two directories created in Step 4 from the file system entirely.</p>
<p>By now you should have a good idea of how BlackBerry Theme Builder figures out which devices should be supported and what happens in the theme export process behind the scenes. This should serve as a good base for the next section where we go into how to actually interrupt the build process for BlackBerry Theme Studio to create themes for devices that are not originally supported. Stay tuned for part 2 of this blog post series!</p>
<p>Got any questions about building BlackBerry themes in the meantime? Let us know in the comments!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/8304/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/8304/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=8304&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2012/01/blackberry-7-theme-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/75e7e69af37da351a3462a17576c2209?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">gbeuk</media:title>
		</media:content>
	</item>
	</channel>
</rss>
