<?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/"
	>

<channel>
	<title>Bluelight Dev</title>
	<atom:link href="https://www.bluelightdev.com/feed" rel="self" type="application/rss+xml" />
	<link>https://www.bluelightdev.com</link>
	<description>Development group that brought you SwiftKit</description>
	<lastBuildDate>Thu, 25 May 2017 09:18:42 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.0.3</generator>
	<item>
		<title>Get List of Open Chrome Tabs .NET</title>
		<link>https://www.bluelightdev.com/get-list-open-chrome-tabs</link>
					<comments>https://www.bluelightdev.com/get-list-open-chrome-tabs#comments</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Sat, 22 Feb 2014 02:02:41 +0000</pubDate>
				<category><![CDATA[Developer Blogs]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=889</guid>

					<description><![CDATA[<p>Overview Before Google Chrome version 32, obtaining a list of open tab titles was somewhat trivial. Each tab was it&#8217;s own &#8220;Window&#8221; and had it&#8217;s own handle. So you could use that handle and obtain the title via the window caption. When Google Chrome updated to version 32, a lot happened behind the scenes with regards to UI rendering. (see here for more details). With the v32 update, using the method mentioned above you can only obtain the current open tabs title. No good. If we want a list of all open tabs, we have to do something different. In this case, it&#8217;s using the somewhat recent UI Automation accessibility framework. This framework allows you to treewalk through an applications UI, find and interact with majority of it&#8217;s interface elements. Finding the tabs To browse and treewalk through UI elements of an application, you can use the inspect tool by Mirosoft found in the Windows Developer Kit. As you can see from the screenshot below, the main caption of our parent &#8220;Google Chrome Window&#8221; is the active tab title. The Code To get list of open Chrome Tabs and to utilise UI Automation you&#8217;ll need to add a couple of [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/get-list-open-chrome-tabs">Get List of Open Chrome Tabs .NET</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Overview</h2>
<p>Before Google Chrome version 32, obtaining a list of open tab titles was somewhat trivial. Each tab was it&#8217;s own &#8220;Window&#8221; and had it&#8217;s own handle. So you could use that handle and obtain the title via the window caption. When Google Chrome updated to version 32, a lot happened behind the scenes with regards to UI rendering. (<a href="http://news.softpedia.com/news/Google-Chrome-32-to-Switch-to-Aura-the-All-New-GPU-Powered-Graphical-Stack-391650.shtml" title="Chrome 32 Aura update" target="_blank">see here for more details</a>).</p>
<p>With the v32 update, using the method mentioned above you can only obtain the <em>current</em> open tabs title. No good. If we want a list of all open tabs, we have to do something different. In this case, it&#8217;s using the somewhat recent <a href="http://msdn.microsoft.com/en-us/library/ms747327(v=vs.110).aspx" title="UI Automation Accessibility Framework" target="_blank">UI Automation </a>accessibility framework. This framework allows you to treewalk through an applications UI, find and interact with majority of it&#8217;s interface elements.<br />
</p>
<h2 style="margin-top: 40px;">Finding the tabs</h2>
<p>To browse and treewalk through UI elements of an application, you can use the <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd318521(v=vs.85).aspx" title="Inspect Tool" target="_blank">inspect tool</a> by Mirosoft found in the Windows Developer Kit. As you can see from the screenshot below, the main caption of our parent &#8220;Google Chrome Window&#8221; is the <em>active </em>tab title.</p>
<p><a href="http://www.bluelightdev.com/wp-content/uploads/2014/02/inspector.png" rel="shadowbox[sbpost-889];player=img;"><img loading="lazy" src="http://www.bluelightdev.com/wp-content/uploads/2014/02/inspector-300x232.png" alt="inspector" width="300" height="232" class="size-medium wp-image-899" srcset="https://www.bluelightdev.com/wp-content/uploads/2014/02/inspector-300x232.png 300w, https://www.bluelightdev.com/wp-content/uploads/2014/02/inspector.png 702w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<h2 style="margin-top: 40px;">The Code</h2>
<p>To get list of open Chrome Tabs and to utilise UI Automation you&#8217;ll need to add a couple of references to your project;</p>
<p>UIAutomationClient.dll<br />
UIAutomationTypes.dll</p>
<p>Located in; <em>C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0 (or 3.5)</em></p>
<p><strong>VB.NET</strong></p><pre class="crayon-plain-tag">'//Grab all the Chrome processes
Dim chrome() As Process = Process.GetProcessesByName("chrome")

'//Exit if chrome isn't running
If chrome.Length &lt;= 0 Then Exit Sub

For Each chromeProcess As Process In chrome

	'//If the chrome process doesn't have a window handle then ignore it
	If chromeProcess.MainWindowHandle &lt;&gt; IntPtr.Zero Then

		'//To find the tabs we first need to locate something reliable - the 'New Tab' button
		Dim rootElement As AutomationElement = AutomationElement.FromHandle(chromeProcess.MainWindowHandle)
		Dim condNewTab As Condition = New PropertyCondition(AutomationElement.NameProperty, "New Tab")
		Dim elemNewTab As AutomationElement = rootElement.FindFirst(TreeScope.Descendants, condNewTab)

		'//Get the tabstrip by getting the parent of the 'new tab' button
		Dim tWalker As TreeWalker = TreeWalker.ControlViewWalker
		Dim elemTabStrip As AutomationElement = tWalker.GetParent(elemNewTab)

		'//Loop through all the tabs and get the names which is the page title
		Dim tabItemCondition As Condition = New PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.TabItem)
		For Each tabItem As AutomationElement In elemTabStrip.FindAll(TreeScope.Children, tabItemCondition)
			Debug.WriteLine(tabItem.Current.Name)
		Next

	End If
Next</pre><p> </p>
<p><strong>C#</strong> (Thanks to Steve Greene in comments)</p><pre class="crayon-plain-tag">Process[] procsChrome = Process.GetProcessesByName("chrome");
if (procsChrome.Length &lt;= 0) {
 Console.WriteLine("Chrome is not running");
 return 0;
}
foreach(Process proc in procsChrome) {
 // the chrome process must have a window 
 if (proc.MainWindowHandle == IntPtr.Zero) {
  continue;
 }
 // to find the tabs we first need to locate something reliable - the 'New Tab' button 
 AutomationElement root = AutomationElement.FromHandle(proc.MainWindowHandle);
 Condition condNewTab = new PropertyCondition(AutomationElement.NameProperty, "New Tab");
 AutomationElement elmNewTab = root.FindFirst(TreeScope.Descendants, condNewTab);
 // get the tabstrip by getting the parent of the 'new tab' button 
 TreeWalker treewalker = TreeWalker.ControlViewWalker;
 AutomationElement elmTabStrip = treewalker.GetParent(elmNewTab);
 // loop through all the tabs and get the names which is the page title 
 Condition condTabItem = new PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.TabItem);
 foreach(AutomationElement tabitem in elmTabStrip.FindAll(TreeScope.Children, condTabItem)) {
  Console.WriteLine(tabitem.Current.Name);
 }
}</pre><p> </p>
<h2 style="margin-top: 40px;">Example Project / Github Repo</h2>
<p>The code snippet above has one downfall, it only seems to grab a single Chrome window&#8217;s tabs. So if you have multiple Chrome windows open, it&#8217;ll just grab the last active set of tabs. I&#8217;ve uploaded a project to Github that fixes this issue and gets all open Chrome windows tab titles. <a href="https://github.com/jasonfah/chrome-tab-titles">Github Repo</a>.</p>
<h2 style="margin-top: 40px;">Conclusion</h2>
<p>UI Automation is pretty neat. Getting the UI element title or caption is only just scratching the surface. For example it&#8217;s possible to interact with the elements such as click on buttons, set values and much more. I&#8217;ve worked quite a bit with windows and manipulating them via their handles, but being able to drill down deeper to individual UI elements will definitely come in handy.</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/get-list-open-chrome-tabs">Get List of Open Chrome Tabs .NET</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/get-list-open-chrome-tabs/feed</wfw:commentRss>
			<slash:comments>11</slash:comments>
		
		
			</item>
		<item>
		<title>WordPress IIS restrict access by IP address</title>
		<link>https://www.bluelightdev.com/wordpress-restrict-access</link>
					<comments>https://www.bluelightdev.com/wordpress-restrict-access#comments</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Mon, 03 Jun 2013 07:14:08 +0000</pubDate>
				<category><![CDATA[Developer Blogs]]></category>
		<category><![CDATA[iis]]></category>
		<category><![CDATA[iis7]]></category>
		<category><![CDATA[ip]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wp-admin]]></category>
		<category><![CDATA[wp-login]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=831</guid>

					<description><![CDATA[<p>One way to secure WordPress running on Windows IIS is to restrict access to both the wp-admin directory and also the wp-login.php file by IP address. To do this on Linux it&#8217;s as easy as placing a .htaccess file in the directory you wish to secure. With IIS though it&#8217;s a little different, the guide below will run through how you can secure your WordPress via the IP Address and Domain Restrictions tool in IIS Manager. Before getting started you will need the following&#8230; A WordPress install IIS7 Web Platform Installer (link) Start by opening your IIS Manager. (Start > Run > inetmgr) Under Sites select your website. If you don&#8217;t see the IP Address and Domain Restrictions icon then you will need to install it. If you can see it you can skip ahead. To install the IP Address and Domain Restrictions feature, double click on the Web Platform Installer icon. If this icon isn&#8217;t there either then you will need to install the Web Platform Installer from Microsoft. You can download it here. Inside the Web Platform Installer, search for IP Address and Domain Restrictions and install it. (It may be called IIS: IP and Domain Restrictions) Once [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/wordpress-restrict-access">WordPress IIS restrict access by IP address</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>One way to secure WordPress running on Windows IIS is to restrict access to both the wp-admin directory and also the wp-login.php file by IP address. To do this on Linux it&#8217;s as easy as placing a .htaccess file in the directory you wish to secure. With IIS though it&#8217;s a little different, the guide below will run through how you can secure your WordPress via the <strong>IP Address and Domain Restrictions</strong> tool in IIS Manager.</p>
<p>Before getting started you will need the following&#8230;</p>
<ul class="square">
<li>A <a href="http://wordpress.org/" title="Wordpress" target="_blank">WordPress</a> install</li>
<li>IIS7</li>
<li>Web Platform Installer (<a href="http://www.microsoft.com/web/downloads/platform.aspx" title="Web Platform Installer" target="_blank">link</a>)</li>
</ul>
<p>Start by opening your IIS Manager. (Start > Run > inetmgr) Under <strong>Sites</strong> select your website. If you don&#8217;t see the <strong>IP Address and Domain Restrictions</strong> icon then you will need to install it. If you can see it you can skip ahead.</p>
<p><a href="http://www.bluelightdev.com/wp-content/uploads/2013/06/ipaddressmanager.png" rel="shadowbox[sbpost-831];player=img;"><img loading="lazy" src="http://www.bluelightdev.com/wp-content/uploads/2013/06/ipaddressmanager.png" alt="ipaddressmanager" width="400" height="181" class="aligncenter size-full wp-image-838" srcset="https://www.bluelightdev.com/wp-content/uploads/2013/06/ipaddressmanager.png 400w, https://www.bluelightdev.com/wp-content/uploads/2013/06/ipaddressmanager-300x135.png 300w" sizes="(max-width: 400px) 100vw, 400px" /></a></p>
<p>To install the IP Address and Domain Restrictions feature, double click on the <strong>Web Platform Installer</strong> icon. If this icon isn&#8217;t there either then you will need to install the Web Platform Installer from Microsoft. You can download it <a href="http://www.microsoft.com/web/downloads/platform.aspx" title="Web Platform Installer" target="_blank">here</a>.</p>
<p><img loading="lazy" src="http://www.bluelightdev.com/wp-content/uploads/2013/06/webplatformicon.png" alt="webplatformicon" width="170" height="107" class="aligncenter size-full wp-image-840" /></p>
<p>Inside the Web Platform Installer, search for <strong>IP Address and Domain Restrictions</strong> and install it. (It may be called IIS: IP and Domain Restrictions)</p>
<p>Once installed, you will want to select your website on the left hand side under <strong>Sites</strong>, and then expand it and select your <strong>wp-admin</strong> directory. Once selected double click on <strong>IP Address and Domain Restrictions</strong>.</p>
<p><a href="http://www.bluelightdev.com/wp-content/uploads/2013/06/iis-restrict-wp-admin.png" rel="shadowbox[sbpost-831];player=img;"><img loading="lazy" src="http://www.bluelightdev.com/wp-content/uploads/2013/06/iis-restrict-wp-admin-300x225.png" alt="iis-restrict-wp-admin" width="300" height="225" class="aligncenter size-medium wp-image-844" srcset="https://www.bluelightdev.com/wp-content/uploads/2013/06/iis-restrict-wp-admin-300x225.png 300w, https://www.bluelightdev.com/wp-content/uploads/2013/06/iis-restrict-wp-admin.png 958w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p>First up you will want to set the <strong>Feature Settings</strong> (right hand side menu) to deny. This will deny all access to our selected wp-admin directory. We then want to setup our whitelist of IP Addresses. If you wish to use domains in your allow list then you will need to enable it in the Feature Settings window.</p>
<p>To start adding the IP addresses or domains you wish to allow, click on the <strong>Add Allow Entry&#8230;</strong> link on the right hand side. You can add a single IP Address, an IP Address Range or a domain name (if the domain option isn&#8217;t there or disabled go back to Feature Settings and enable domains.</p>
<p><a href="http://www.bluelightdev.com/wp-content/uploads/2013/06/iis-restrict-wp-ips.png" rel="shadowbox[sbpost-831];player=img;"><img loading="lazy" src="http://www.bluelightdev.com/wp-content/uploads/2013/06/iis-restrict-wp-ips-300x205.png" alt="iis-restrict-wp-ips" width="300" height="205" class="aligncenter size-medium wp-image-852" srcset="https://www.bluelightdev.com/wp-content/uploads/2013/06/iis-restrict-wp-ips-300x205.png 300w, https://www.bluelightdev.com/wp-content/uploads/2013/06/iis-restrict-wp-ips.png 884w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p>Once you&#8217;re finished with wp-admin, you might also wish to do the same with wp-login.php. If you can&#8217;t see the wp-login.php file on the left hand side under your site, click on the <strong>Content View</strong> button. Find wp-login.php and then click the <strong>Switch to Feature View&#8230;</strong> option on the right hand side. From there you will see wp-login.php is selected and you can open the IP Address and Domain Restrictions feature.</p>
<p>All done! You should now see a 403 Access Denied error when trying to access the restricted content from an unlisted IP.</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/wordpress-restrict-access">WordPress IIS restrict access by IP address</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/wordpress-restrict-access/feed</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Upload to your Imgur Account with SnagIMG</title>
		<link>https://www.bluelightdev.com/upload-to-your-imgur-account</link>
					<comments>https://www.bluelightdev.com/upload-to-your-imgur-account#respond</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Sun, 02 Jun 2013 07:46:51 +0000</pubDate>
				<category><![CDATA[SnagIMG]]></category>
		<category><![CDATA[account]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[imgur]]></category>
		<category><![CDATA[snagimg]]></category>
		<category><![CDATA[update]]></category>
		<category><![CDATA[upload]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=807</guid>

					<description><![CDATA[<p>In the latest update to SnagIMG we&#8217;ve added the ability to upload to your Imgur account! To enable this you will need right click the SnagIMG icon in the system tray and in settings enable the &#8220;Use Imgur Account&#8221; option. Once enabled the next time you upload a screenshot you will be prompted to authorize SnagIMG with your Imgur account. This is a straight forward process, simply follow the steps. If you don&#8217;t have an Imgur account you can register for one here. The next SnagIMG update will hopefully bring a major overhaul of the viewer. Both in functionality and also appearance. Change log: + ADD: Imgur Account support (Aaron) + FIX: Drag Screenshot label not centering. (Jason) + CHANGE: Drag Screenshot selection area more apparent. (Jason) + CHANGE: Crop selection in Viewer now more apparent. (Jason) + CHANGE: About form title icon. (Jason)</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/upload-to-your-imgur-account">Upload to your Imgur Account with SnagIMG</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>In the latest update to SnagIMG we&#8217;ve added the ability to upload to your Imgur account! To enable this you will need right click the SnagIMG icon in the system tray and in settings enable the &#8220;Use Imgur Account&#8221; option. Once enabled the next time you upload a screenshot you will be prompted to authorize SnagIMG with your Imgur account. This is a straight forward process, simply follow the steps.</p>
<p>If you don&#8217;t have an Imgur account you can register for one <a href="https://imgur.com/register" title="Register with Imgur" target="_blank">here</a>.</p>
<div class="span6"><a href="http://www.bluelightdev.com/wp-content/uploads/2013/06/imgursnagimg2.png" rel="shadowbox[sbpost-807];player=img;"><img loading="lazy" src="http://www.bluelightdev.com/wp-content/uploads/2013/06/imgursnagimg2-150x150.png" alt="SnagIMG Update" width="150" height="150" class="alignright size-thumbnail wp-image-817" /></a></div>
<div class="span6"><a href="http://www.bluelightdev.com/wp-content/uploads/2013/06/imgursnagimg.png" rel="shadowbox[sbpost-807];player=img;"><img loading="lazy" src="http://www.bluelightdev.com/wp-content/uploads/2013/06/imgursnagimg-150x150.png" alt="Link Imgur Account with SnagIMG" width="150" height="150" class="alignleft size-thumbnail wp-image-814" /></a></div>
<p><span id="more-807"></span><br />
<div class="clear"></div><div style="margin-top: 10px; margin-bottom: 0px"></div><br />
The next SnagIMG update will hopefully bring a major overhaul of the viewer. Both in functionality and also appearance.</p>
<div class="clear"></div><div style="margin-top: 15px; margin-bottom: 0px"></div>
<h5>Change log:</h5>
<p>+ <strong>ADD</strong>: Imgur Account support (Aaron)<br />
+ <strong>FIX</strong>: Drag Screenshot label not centering. (Jason)<br />
+ <strong>CHANGE</strong>: Drag Screenshot selection area more apparent. (Jason)<br />
+ <strong>CHANGE</strong>: Crop selection in Viewer now more apparent. (Jason)<br />
+ <strong>CHANGE</strong>: About form title icon. (Jason)</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/upload-to-your-imgur-account">Upload to your Imgur Account with SnagIMG</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/upload-to-your-imgur-account/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Socialize integration &#8211; SwiftKit Mobile goes social</title>
		<link>https://www.bluelightdev.com/swiftkit-mobile-goes-social-android</link>
					<comments>https://www.bluelightdev.com/swiftkit-mobile-goes-social-android#respond</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Tue, 01 May 2012 21:32:19 +0000</pubDate>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[SwiftKit Mobile]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[integrate]]></category>
		<category><![CDATA[integration]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[socialize]]></category>
		<category><![CDATA[SwiftKit]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=506</guid>

					<description><![CDATA[<p>One thing that&#8217;s been missing from SwiftKit Mobile (and I think a lot of other apps) is the social feature set allowing users to share, like or comment on certain views as you would a webpage. A few weeks ago I came across Socialize &#8211; a &#8216;Drop in Social Platform&#8217; for Android and iOS. This platform allows you to quickly and easily add social elements to your app. Using this platform SwiftKit Mobile for Android now gives you the ability to share, like and comment on views such as an item, NPC, news article or even a players Adventurer&#8217;s Log. You can even see how many times the view has been visited. Although the Socialize SDK comes with a great ready made &#8216;Action Bar&#8217;, the appearance of it didn&#8217;t quite suit the style of SwiftKit Mobile. So a custom social bar was made to include views, share, like and comment. You can see the new social bar in action in a couple of the screenshots below. When you first update to the latest version you will automatically have a &#8216;profile&#8217; created for you. If you wish to you can then link your Facebook and or Twitter account. It&#8217;s recommended that [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/swiftkit-mobile-goes-social-android">Socialize integration &#8211; SwiftKit Mobile goes social</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>One thing that&#8217;s been missing from SwiftKit Mobile (and I think a lot of other apps) is the social feature set allowing users to share, like or comment on certain views as you would a webpage. A few weeks ago I came across <a href="http://www.getsocialize.com/" title="Socialize" target="_blank">Socialize</a> &#8211; a &#8216;Drop in Social Platform&#8217; for Android and iOS. This platform allows you to quickly and easily add social elements to your app. Using this platform SwiftKit Mobile for Android now gives you the ability to share, like and comment on views such as an item, NPC, news article or even a players Adventurer&#8217;s Log. You can even see how many times the view has been visited.</p>
<p>Although the Socialize SDK comes with a great ready made &#8216;Action Bar&#8217;, the appearance of it didn&#8217;t quite suit the style of SwiftKit Mobile. So a custom social bar was made to include views, share, like and comment. You can see the new social bar in action in a couple of the screenshots below.<br />
<span id="more-506"></span><br />
When you first update to the latest version you will automatically have a &#8216;profile&#8217; created for you. If you wish to you can then link your Facebook and or Twitter account. It&#8217;s recommended that you link your profile with Twitter or Facebook as that way if you re-install the app or upgrade to the full version all your likes, comments and views will be kept. To do this simply hit the comment button on the social bar and then hit your menu key and go to settings. From there you can customize your profile.</p>
<p>Currently the social bar is available in the Android version of SwiftKit Mobile. If all goes well we will look into integrating it into the iOS version.</p>
<p><div class="span6"><a href="http://www.bluelightdev.com/wp-content/uploads/2012/05/social_stats.png" rel="shadowbox[sbpost-506];player=img;" title="social_stats"><img loading="lazy" src="http://www.bluelightdev.com/wp-content/uploads/2012/05/social_stats.png" alt="SwiftKit Mobile with Socialize Integration" title="social_stats" width="300" height="521" class="aligncenter size-full wp-image-509" srcset="https://www.bluelightdev.com/wp-content/uploads/2012/05/social_stats.png 473w, https://www.bluelightdev.com/wp-content/uploads/2012/05/social_stats-172x300.png 172w" sizes="(max-width: 300px) 100vw, 300px" /></a></div><div class="span6"><a href="http://www.bluelightdev.com/wp-content/uploads/2012/05/social_item.png" rel="shadowbox[sbpost-506];player=img;" title="social_item"><img loading="lazy" src="http://www.bluelightdev.com/wp-content/uploads/2012/05/social_item.png" alt="SwiftKit Mobile with Socialize Integration" title="social_item" width="300" height="521" class="aligncenter size-full wp-image-508" srcset="https://www.bluelightdev.com/wp-content/uploads/2012/05/social_item.png 473w, https://www.bluelightdev.com/wp-content/uploads/2012/05/social_item-172x300.png 172w" sizes="(max-width: 300px) 100vw, 300px" /></a></div></p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/swiftkit-mobile-goes-social-android">Socialize integration &#8211; SwiftKit Mobile goes social</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/swiftkit-mobile-goes-social-android/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>SwiftKit Mac v0.3.0b</title>
		<link>https://www.bluelightdev.com/swiftkit-mac-v0-3-0b</link>
					<comments>https://www.bluelightdev.com/swiftkit-mac-v0-3-0b#comments</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Sat, 10 Mar 2012 18:39:05 +0000</pubDate>
				<category><![CDATA[SwiftKit]]></category>
		<category><![CDATA[SwiftKit Mac]]></category>
		<category><![CDATA[applet]]></category>
		<category><![CDATA[lion]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[v0.3.0b]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=488</guid>

					<description><![CDATA[<p>Since Lion came out RuneScape on the Mac has had a lot of issues. Between v0.1.7b and v0.3.0b you may think not much has happened, but it&#8217;s actually quite the contrary. For one, you may notice that version 0.2.0b has been skipped. Not really, v0.2.0b was coded but never released, here is a detailed rundown of everything since Lion came out. The day Lion was released every Mac user was complaining about the lag. RuneScape was completely unplayable. Many people thought this was a symptom of SwiftKit, but it happened in any browser. Somebody on the RuneScape forum figured out how to use the .jar from the Windows client and mix it with the .jar loader template app to create a playable executable that would open just an applet. This applet was also plagued with problems, one being if you resized the window the game would crash. The upside was that issues from loading RuneScape in a browser/SwiftKit (which also runs in a &#8216;browser&#8217;, technically) were now gone, with the addition of a few others (such as odd behaviour on Software mode, and graphical glitches At this point it looked like this was going to be it for RuneScape on [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/swiftkit-mac-v0-3-0b">SwiftKit Mac v0.3.0b</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Since Lion came out RuneScape on the Mac has had a lot of issues. Between v0.1.7b and v0.3.0b you may think not much has happened, but it&#8217;s actually quite the contrary. For one, you may notice that version 0.2.0b has been skipped. Not really, v0.2.0b was coded but never released, here is a detailed rundown of everything since Lion came out.</p>
<p>The day Lion was released every Mac user was complaining about the lag. RuneScape was completely unplayable. Many people thought this was a symptom of SwiftKit, but it happened in any browser. Somebody on the RuneScape forum figured out how to use the .jar from the Windows client and mix it with the .jar loader template app to create a playable executable that would open just an applet. This applet was also plagued with problems, one being if you resized the window the game would crash. The upside was that issues from loading RuneScape in a browser/SwiftKit (which also runs in a &#8216;browser&#8217;, technically) were now gone, with the addition of a few others (such as odd behaviour on Software mode, and graphical glitches<br />
<span id="more-488"></span><br />
At this point it looked like this was going to be it for RuneScape on the Mac, inside this volatile client. I decided to take a look at tracking another application&#8217;s window. This was easier said than done, it&#8217;s something there was little to no documentation on. Eventually I used AppleScript, which I admit is definitely not the best and most elegant solution but it&#8217;s all I could come up with at the time. It did work, but only managed to get me position and size updates after they had been made, they were not live, meaning if you moved the window around the screen the client would only adjust it&#8217;s window&#8217;s positions after you let go of your mouse. A feature I am quite proud of is a resize window that sat over the client&#8217;s window, allowing you to resize the client without crashing (again, this was done with AppleScript, bridging my resize window&#8217;s position and size to the applet window&#8217;s position and size).</p>
<p><a href="http://www.bluelightdev.com/wp-content/uploads/2012/03/Screen-Shot-2012-03-11-at-1.34.42-AM.png" rel="shadowbox[sbpost-488];player=img;" title="Screen Shot 2012-03-11 at 1.34.42 AM"><img loading="lazy" class="alignnone size-medium wp-image-489" title="Screen Shot 2012-03-11 at 1.34.42 AM" src="http://www.bluelightdev.com/wp-content/uploads/2012/03/Screen-Shot-2012-03-11-at-1.34.42-AM-300x207.png" alt="" width="300" height="207" srcset="https://www.bluelightdev.com/wp-content/uploads/2012/03/Screen-Shot-2012-03-11-at-1.34.42-AM-300x207.png 300w, https://www.bluelightdev.com/wp-content/uploads/2012/03/Screen-Shot-2012-03-11-at-1.34.42-AM.png 841w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p>I played with this for a week or so to test it out, it was good for what I had to work with but I wasn&#8217;t 100% happy. Just before we planned to release this, Jagex made yet another update to their game, popping out the applet from the game when loaded in a browser, which was now made the gameplay perfect, there was just one problem, having the game in another window was quite annoying, not to mention if you closed the window that spawned it, the spawned applet would close. I decided the client-based version I had created just wasn&#8217;t going to cut it, so I scrapped it. This was the version 0.2.0b nobody ever saw.</p>
<p>The SwiftKit Mac project was becoming quite messy. Previously a lot of things were setup in &#8220;Interface Builder&#8221;, which is a tool that allows you drag buttons, images and other controls onto a canvas to populate your interface, which I consider to be lazy. Since then I have done all my other interfaces (on other projects) in pure code. Doing it this way makes it very easy to make interfaces dynamic, and being able to reuse custom components, the downside being coding things takes about 3x as long as using IB.</p>
<p>SwiftKit was now going to be completely focused around this pop out applet. There was going to be an immense amount of code to make this experience as seamless as possible for the user. Taking this and the messiness of the current state of the projects into account, I decided to recreate everything from scratch, starting with the hardest part, tracking the applet.</p>
<p>My previous method of doing this using AppleScript no longer worked. It would only work from anything launched from a .app bundle. This pop out applet was different, and launched directly from a process instead. If you open the Activity Monitor while the pop out is running, you will see it under the list identified as &#8216;Java&#8217;. I managed to find another way of getting another process&#8217; window position and size, again very undocumented. This was a lot faster than my previous AppleScript implementation, and now I could get another windows&#8217; frame even when it was being dragged around the screen. With this out of the way I found a way to reposition and resize the applet, which allowed me to restore the applet&#8217;s previous frame whenever SwiftKit was opened (by default it opens to a set size in the middle of your screen).</p>
<p>This version was looking to be pretty good, but it needed just one more thing. Because the applet is another process none of my shortcut keys would work outside SwiftKit. I had to register all the shortcuts I wanted the applet to access as global, meaning you could use them anywhere on the Mac, even if SwiftKit was in the background and another program was in the foreground. Of course, I didn&#8217;t want Command + S (used for screenshots) overriding save functionality in another program, such as Word, so I have to turn them on when either SwiftKit or the applet are in the foreground, and then turn them off when any other program is moved into the foreground.</p>
<p>Obviously there&#8217;s a lot more work involved in all of this, compared to me explaining it in a 2 minute blog post. I also work as a full time developer during the day, and coding when I come home is usually not a priority. I will end this post with a reassuring final note, I have tested v0.3.0b on Mountain Lion, and it&#8217;s flawless <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><em>(RuneScape on the other hand, not so great, it only works in OpenGL mode, although it could be worse)</em></p>
<p><a href="http://www.bluelightdev.com/wp-content/uploads/2012/03/screenshot20120307at145.png" rel="shadowbox[sbpost-488];player=img;" title="Screen Shot 2012-03-11 at 1.34.42 AM"><img loading="lazy" class="alignnone size-medium wp-image-489" title="Screen Shot 2012-03-11 at 1.34.42 AM" src="http://www.bluelightdev.com/wp-content/uploads/2012/03/screenshot20120307at145.png" alt="" width="300" height="207" /></a></p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/swiftkit-mac-v0-3-0b">SwiftKit Mac v0.3.0b</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/swiftkit-mac-v0-3-0b/feed</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>imgur upload now available with SnagIMG</title>
		<link>https://www.bluelightdev.com/snagimg-imgur-update</link>
					<comments>https://www.bluelightdev.com/snagimg-imgur-update#respond</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Thu, 08 Mar 2012 21:22:49 +0000</pubDate>
				<category><![CDATA[SnagIMG]]></category>
		<category><![CDATA[account]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[imgur]]></category>
		<category><![CDATA[screenshot]]></category>
		<category><![CDATA[snagimg]]></category>
		<category><![CDATA[upload]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=479</guid>

					<description><![CDATA[<p>Imgur upload now available! After many requests (and for good reason) we&#8217;ve decided to implement imgur as an upload option. With update 2.6 you now have the ability to select from either ImageShack or imgur in the settings window. With the addition of this option we&#8217;ve also added an automatic upload redundancy. So if uploading to once host fails, SnagIMG will attempt to upload to the other automatically. We&#8217;ve also fixed a few other bugs, mainly one being with dragging a screenshot while using multiple monitors. Change Log: + ADD: Host Redundecy + ADD: Remove Icon. + ADD: UploadHistory.xml now has a remove value for Imgur Images. + ADD: &#8220;Remove from web&#8221; added to history right click menu for Imgur Images. + ADD: Imgur Delete button (undo upload) to upload form + ADD: Imgur Host, as well as Host provider option. + CHANGE: Copyright info updated. + FIX: Bug with Drag Screenshot and multiple monitors.</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/snagimg-imgur-update">imgur upload now available with SnagIMG</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Imgur upload now available! After many requests (and for good reason) we&#8217;ve decided to implement <a href="http://www.imgur.com" title="imgur" target="_blank">imgur</a> as an upload option. With update 2.6 you now have the ability to select from either ImageShack or imgur in the settings window. With the addition of this option we&#8217;ve also added an automatic upload redundancy. So if uploading to once host fails, SnagIMG will attempt to upload to the other automatically.</p>
<p>We&#8217;ve also fixed a few other bugs, mainly one being with dragging a screenshot while using multiple monitors.<br />
<span id="more-479"></span><br />
Change Log:<br />
+ ADD: Host Redundecy<br />
+ ADD: Remove Icon.<br />
+ ADD: UploadHistory.xml now has a remove value for Imgur Images.<br />
+ ADD: &#8220;Remove from web&#8221; added to history right click menu for Imgur Images.<br />
+ ADD: Imgur Delete button (undo upload) to upload form<br />
+ ADD: Imgur Host, as well as Host provider option.<br />
+ CHANGE: Copyright info updated.<br />
+ FIX: Bug with Drag Screenshot and multiple monitors.</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/snagimg-imgur-update">imgur upload now available with SnagIMG</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/snagimg-imgur-update/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>SnagIMG can now screenshot multiple monitors</title>
		<link>https://www.bluelightdev.com/snagimg-multi-monitors</link>
					<comments>https://www.bluelightdev.com/snagimg-multi-monitors#comments</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Tue, 10 May 2011 20:35:31 +0000</pubDate>
				<category><![CDATA[SnagIMG]]></category>
		<category><![CDATA[imageshack]]></category>
		<category><![CDATA[imgur]]></category>
		<category><![CDATA[multi monitors]]></category>
		<category><![CDATA[screenshot]]></category>
		<category><![CDATA[snagimg]]></category>
		<category><![CDATA[update]]></category>
		<category><![CDATA[upload]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=446</guid>

					<description><![CDATA[<p>With the latest update to SnagIMG it&#8217;s now possible to screenshot multiple monitors. For a feature that should have been in the first release of SnagIMG it sure took awhile to get added. Truth be told as the developer of SnagIMG, I never actually had more than the one monitor &#8211; so it wasn&#8217;t too high on my priority list. Apologies for that. Now that I have a multi monitor setup, I set to work making sure SnagIMG could utilise more than just the primary monitor. Both the drag screenshot and full screenshot functions will now capture all active monitors in your setup. We&#8217;ve also added a new setting in the settings form to disable this and revert it back to the old ways of only screenshotting the primary monitor. In other news, we&#8217;re attempting to get access to the imgur API which seems to be a much more favourable service over ImageShack, but haven&#8217;t had much luck as of yet.</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/snagimg-multi-monitors">SnagIMG can now screenshot multiple monitors</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>With the latest update to SnagIMG it&#8217;s now possible to screenshot multiple monitors.</p>
<p>For a feature that should have been in the first release of SnagIMG it sure took awhile to get added. Truth be told as the developer of SnagIMG, I never actually had more than the one monitor &#8211; so it wasn&#8217;t too high on my priority list. Apologies for that. Now that I have a multi monitor setup, I set to work making sure SnagIMG could utilise more than just the primary monitor.</p>
<p>Both the drag screenshot and full screenshot functions will now capture all active monitors in your setup. We&#8217;ve also added a new setting in the settings form to disable this and revert it back to the old ways of only screenshotting the primary monitor.</p>
<p>In other news, we&#8217;re attempting to get access to the imgur API which seems to be a much more favourable service over ImageShack, but haven&#8217;t had much luck as of yet.</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/snagimg-multi-monitors">SnagIMG can now screenshot multiple monitors</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/snagimg-multi-monitors/feed</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>SwiftKit OS X Media</title>
		<link>https://www.bluelightdev.com/swiftkit-os-x-media</link>
					<comments>https://www.bluelightdev.com/swiftkit-os-x-media#comments</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Sun, 23 Jan 2011 15:03:38 +0000</pubDate>
				<category><![CDATA[SwiftKit Mac]]></category>
		<category><![CDATA[icons]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[SwiftKit]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=329</guid>

					<description><![CDATA[<p>With the release of the new mac client, I was tasked with creating an application icon. As I did with the mobile icon, here is the design sheet and high-resolution copy of the icon currently used by SwiftKit Mac. High-resolution (512 x 512) I wanted to keep it the same with it&#8217;s windows counter-part. Now that it required a much higher resolution I took the time to add a few features to it. Feel free to use it for promotion or personal use. Just if you modify it or use it for any of your projects please credit me (zpoon.ca). 🙂</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/swiftkit-os-x-media">SwiftKit OS X Media</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>With the release of the new mac client, I was tasked with creating an application icon. As I did with the <a href="http://www.bluelightdev.com/new-icons-for-swiftkit-mobile" target="_blank">mobile icon</a>, here is the design sheet and high-resolution copy of the icon currently used by SwiftKit Mac.<br />
<span id="more-329"></span><br />
<img loading="lazy" class="aligncenter" title="SwiftKit Mac icons" src="http://cl.ly/1N3h3g1z0c2X371e033Z/sk-macicons.png" alt="" width="470" height="205" /></p>
<p style="text-align: center;"><a href="http://f.cl.ly/items/322W3W3x1S3Z0I0d0F0a/final-icon.png" rel="shadowbox[sbpost-329];player=img;" target="_blank">High-resolution (512 x 512)</a></p>
<p>I wanted to keep it the same with it&#8217;s windows counter-part. Now that it required a much higher resolution I took the time to add a few features to it.</p>
<p>Feel free to use it for promotion or personal use. Just if you modify it or use it for any of your projects please credit me (zpoon.ca). <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/swiftkit-os-x-media">SwiftKit OS X Media</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/swiftkit-os-x-media/feed</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>SwiftKit for Mac!</title>
		<link>https://www.bluelightdev.com/swiftkit-for-mac</link>
					<comments>https://www.bluelightdev.com/swiftkit-for-mac#comments</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Sat, 08 Jan 2011 00:00:00 +0000</pubDate>
				<category><![CDATA[SwiftKit]]></category>
		<category><![CDATA[SwiftKit Mac]]></category>
		<category><![CDATA[mac]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=306</guid>

					<description><![CDATA[<p>If you&#8217;re a Mac user and you play RuneScape then chances are you have looked at SwiftKit praying for a Mac OS X version, but got delivered that dreaded &#8220;SwiftKit is Windows only, there will never be a Mac version&#8221; answer. Let me take you back roughly 18 months. &#60;insert crossfade here&#62; I was exactly the person I described above, looking multiple times for a SwiftKit version for the Mac. Mac users will know what I&#8217;m talking about here, but if you have ever tried playing RuneScape through a browser and browse the internet at the same time it is very unstable and the browser sometimes crashes, ending both your RuneScape and web browsing adventures. I had waited long enough and decided to put an end to this myself by creating an Application that was simply a website that loaded the RuneScape homepage &#8211; keeping my &#8216;scaping and web browsing to separate Applications. It worked very well, and if the browser crashed it would no longer take RuneScape with it. This simple client was pretty much a mimic of the official RuneScape client Jagex released. It was written in Objective-C, which is the standard programming language for all things Mac. [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/swiftkit-for-mac">SwiftKit for Mac!</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>If you&#8217;re a Mac user and you play RuneScape then chances are you have looked at SwiftKit praying for a Mac OS X version, but got delivered that dreaded &#8220;SwiftKit is Windows only, there will never be a Mac version&#8221; answer.</p>
<p>Let me take you back roughly 18 months.</p>
<p><em>&lt;insert crossfade here&gt;</em></p>
<p>I was exactly the person I described above, looking multiple times for a SwiftKit version for the Mac. Mac users will know what I&#8217;m talking about here, but if you have ever tried playing RuneScape through a browser and browse the internet at the same time it is very unstable and the browser sometimes crashes, ending both your RuneScape and web browsing adventures. I had waited long enough and decided to put an end to this myself by creating an Application that was simply a website that loaded the RuneScape homepage &#8211; keeping my &#8216;scaping and web browsing to separate Applications. It worked very well, and if the browser crashed it would no longer take RuneScape with it.<br />
<span id="more-306"></span><br />
This simple client was pretty much a mimic of the official RuneScape client Jagex released. It was written in Objective-C, which is the standard programming language for all things Mac. At this stage I barely knew anything about Objective-C so it was a stretch for me doing what I actually managed to do.</p>
<p>I used this client privately for 6 months, before somebody from Runescape Community (Maxman) messaged me asking about RuneScape on his newly acquired Mac. I sent him a version of my private client, which a few days later I posted in the programming and web development section and created a SourceForge page for. As it gained popularity the suggestions were always the same, which as you can probably guess was the suggestion of a highscore lookup feature. I ended up teaching myself the bare bones of Objective-C to get this implemented (it was also my most desired feature too). This version remained the same for about 7 months (with a few minor updates when new skills/minigames were released).</p>
<p>There are probably quite a few Mac users reading this right now that actually use that version to play.</p>
<p><a href="http://forums.zybez.net/topic/1330565-open-source-mac-runescape-client/" target="_blank">Here is the original forum thread that I used</a></p>
<p>After finishing a unit in mobile development at Uni, my name came up when my lecturer&#8217;s friend was looking for a developer. This job was coding for the iPhone &#8211; in Objective-C. A few months later I decided to recode my RuneScape client project from scratch, as the older code was horrible compared to what I had learned at work. I recoded it including a price lookup and a custom links section, very similar to SwiftKit&#8230; which is what I&#8217;m getting to.</p>
<p>Just before I was about to release this new version the SwiftKit team contacted me asking if I would consider joining them to bring SwiftKit officially to the Mac. I accepted of course! <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><em>&lt;insert another crossfade here&gt;</em></p>
<p>In the past few weeks I have been adding some additional features bringing it up to par with the Windows counterpart in terms of basic features &#8211; and a few extras (get working Strider, *whip*).</p>
<p>As development is now coming to an end you can prepare to see an open beta released very soon, so keep an eye on <a href="http://www.swiftkit.net" target="_blank">www.swiftkit.net</a>!</p>
<p>Don&#8217;t get too excited now, but here&#8217;s a few pictures.</p>

<a href='https://www.bluelightdev.com/wp-content/uploads/2011/01/1.png' rel='shadowbox[sbalbum-306];player=img;'><img width="150" height="150" src="https://www.bluelightdev.com/wp-content/uploads/2011/01/1-150x150.png" class="attachment-thumbnail size-thumbnail" alt="" loading="lazy" srcset="https://www.bluelightdev.com/wp-content/uploads/2011/01/1-150x150.png 150w, https://www.bluelightdev.com/wp-content/uploads/2011/01/1-50x50.png 50w" sizes="(max-width: 150px) 100vw, 150px" /></a>
<a href='https://www.bluelightdev.com/wp-content/uploads/2011/01/2.png' rel='shadowbox[sbalbum-306];player=img;'><img width="150" height="150" src="https://www.bluelightdev.com/wp-content/uploads/2011/01/2-150x150.png" class="attachment-thumbnail size-thumbnail" alt="" loading="lazy" srcset="https://www.bluelightdev.com/wp-content/uploads/2011/01/2-150x150.png 150w, https://www.bluelightdev.com/wp-content/uploads/2011/01/2-50x50.png 50w" sizes="(max-width: 150px) 100vw, 150px" /></a>
<a href='https://www.bluelightdev.com/wp-content/uploads/2011/01/3.png' rel='shadowbox[sbalbum-306];player=img;'><img width="150" height="150" src="https://www.bluelightdev.com/wp-content/uploads/2011/01/3-150x150.png" class="attachment-thumbnail size-thumbnail" alt="" loading="lazy" srcset="https://www.bluelightdev.com/wp-content/uploads/2011/01/3-150x150.png 150w, https://www.bluelightdev.com/wp-content/uploads/2011/01/3-50x50.png 50w" sizes="(max-width: 150px) 100vw, 150px" /></a>
<a href='https://www.bluelightdev.com/wp-content/uploads/2011/01/4.png' rel='shadowbox[sbalbum-306];player=img;'><img width="150" height="150" src="https://www.bluelightdev.com/wp-content/uploads/2011/01/4-150x150.png" class="attachment-thumbnail size-thumbnail" alt="" loading="lazy" srcset="https://www.bluelightdev.com/wp-content/uploads/2011/01/4-150x150.png 150w, https://www.bluelightdev.com/wp-content/uploads/2011/01/4-50x50.png 50w" sizes="(max-width: 150px) 100vw, 150px" /></a>
<a href='https://www.bluelightdev.com/wp-content/uploads/2011/01/5.png' rel='shadowbox[sbalbum-306];player=img;'><img width="150" height="150" src="https://www.bluelightdev.com/wp-content/uploads/2011/01/5-150x150.png" class="attachment-thumbnail size-thumbnail" alt="" loading="lazy" srcset="https://www.bluelightdev.com/wp-content/uploads/2011/01/5-150x150.png 150w, https://www.bluelightdev.com/wp-content/uploads/2011/01/5-50x50.png 50w" sizes="(max-width: 150px) 100vw, 150px" /></a>

<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">If you&#8217;re a Mac user and you play RuneScape then chances are you have looked at SwiftKit praying for a Mac OS X version, but got delivered that dreaded &#8220;SwiftKit is Windows only, there will never be a Mac version&#8221; answer.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Let me take you back roughly 18 months.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">&lt;insert crossfade here&gt;</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">I was exactly the person I described above, looking multiple times for a SwiftKit version for the Mac. Mac users will know what I&#8217;m talking about here, but if you have ever tried playing RuneScape through a browser and browse the internet at the same time it is very unstable and the browser sometimes crashes, ending both your RuneScape and web browsing adventures. I had waited long enough and decided to put an end to this myself by creating an Application that was simply a website that loaded the RuneScape homepage &#8211; keeping my &#8216;scaping and web browsing to separate Applications. It worked very well, and if the browser crashed it would no longer take RuneScape with it.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">This simple client was pretty much a mimic of the official RuneScape client Jagex released. It was written in Objective-C, which is the standard programming language for all things Mac. At this stage I barely knew anything about Objective-C so it was a stretch for me doing what I actually managed to do.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">I used this client privately for 6 months, before somebody from Runescape Community (Maxman) messaged me asking about RuneScape on his newly acquired Mac. I sent him a version of my private client, which a few days later I posted in the programming and web development section and created a SourceForge page for. As it gained popularity the suggestions were always the same, which as you can probably guess was the suggestion of a highscore lookup feature. I ended up teaching myself the bare bones of Objective-C to get this implemented (it was also my most desired feature too). This version remained the same for about 7 months (with a few minor updates when new skills/minigames were released).</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">There are probably quite a few Mac users reading this right now that actually use that version to play.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Here is the forum thread that I used: http://forums.zybez.net/topic/1330565-open-source-mac-runescape-client/</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">After finishing a unit in mobile development at Uni, my name came up when my lecturer&#8217;s friend was looking for a developer. This job was coding for the iPhone &#8211; in Objective-C. A few months later I decided to recode my RuneScape client project from scratch, as the older code was horrible compared to what I had learned at work. I recoded it including a price lookup and a custom links section, very similar to SwiftKit&#8230; which is what I&#8217;m getting to.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Just before I was about to release this new version the SwiftKit team contacted me asking if I would consider joining them to bring SwiftKit officially to the Mac. I accepted of course! <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /></div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">&lt;insert another crossfade here&gt;</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">In the past few weeks I have been adding some additional features bringing it up to par with the Windows counterpart in terms of basic features &#8211; and a few extras (get working Strider, *whip*).</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">As the development is now coming to an end you can prepare to see the it released very soon, so stay tuned.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Don&#8217;t get too excited now, but here&#8217;s a few pictures.If you&#8217;re a Mac user and you play RuneScape then chances are you have looked at SwiftKit praying for a Mac OS X version, but got delivered that dreaded &#8220;SwiftKit is Windows only, there will never be a Mac version&#8221; answer.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Let me take you back roughly 18 months.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">&lt;insert crossfade here&gt;</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">I was exactly the person I described above, looking multiple times for a SwiftKit version for the Mac. Mac users will know what I&#8217;m talking about here, but if you have ever tried playing RuneScape through a browser and browse the internet at the same time it is very unstable and the browser sometimes crashes, ending both your RuneScape and web browsing adventures. I had waited long enough and decided to put an end to this myself by creating an Application that was simply a website that loaded the RuneScape homepage &#8211; keeping my &#8216;scaping and web browsing to separate Applications. It worked very well, and if the browser crashed it would no longer take RuneScape with it.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">This simple client was pretty much a mimic of the official RuneScape client Jagex released. It was written in Objective-C, which is the standard programming language for all things Mac. At this stage I barely knew anything about Objective-C so it was a stretch for me doing what I actually managed to do.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">I used this client privately for 6 months, before somebody from Runescape Community (Maxman) messaged me asking about RuneScape on his newly acquired Mac. I sent him a version of my private client, which a few days later I posted in the programming and web development section and created a SourceForge page for. As it gained popularity the suggestions were always the same, which as you can probably guess was the suggestion of a highscore lookup feature. I ended up teaching myself the bare bones of Objective-C to get this implemented (it was also my most desired feature too). This version remained the same for about 7 months (with a few minor updates when new skills/minigames were released).</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">There are probably quite a few Mac users reading this right now that actually use that version to play.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Here is the forum thread that I used: http://forums.zybez.net/topic/1330565-open-source-mac-runescape-client/</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">After finishing a unit in mobile development at Uni, my name came up when my lecturer&#8217;s friend was looking for a developer. This job was coding for the iPhone &#8211; in Objective-C. A few months later I decided to recode my RuneScape client project from scratch, as the older code was horrible compared to what I had learned at work. I recoded it including a price lookup and a custom links section, very similar to SwiftKit&#8230; which is what I&#8217;m getting to.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Just before I was about to release this new version the SwiftKit team contacted me asking if I would consider joining them to bring SwiftKit officially to the Mac. I accepted of course! <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /></div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">&lt;insert another crossfade here&gt;</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">In the past few weeks I have been adding some additional features bringing it up to par with the Windows counterpart in terms of basic features &#8211; and a few extras (get working Strider, *whip*).</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">As the development is now coming to an end you can prepare to see the it released very soon, so stay tuned.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Don&#8217;t get too excited now, but here&#8217;s a few pictures.</div>
</div>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/swiftkit-for-mac">SwiftKit for Mac!</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/swiftkit-for-mac/feed</wfw:commentRss>
			<slash:comments>19</slash:comments>
		
		
			</item>
		<item>
		<title>New icons for SwiftKit Mobile</title>
		<link>https://www.bluelightdev.com/new-icons-for-swiftkit-mobile</link>
					<comments>https://www.bluelightdev.com/new-icons-for-swiftkit-mobile#comments</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Wed, 21 Jul 2010 13:29:57 +0000</pubDate>
				<category><![CDATA[SwiftKit]]></category>
		<category><![CDATA[SwiftKit Mobile]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[icons]]></category>
		<category><![CDATA[mobile]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=236</guid>

					<description><![CDATA[<p>With the launch of the mobile platform, and it&#8217;s steady pace, I&#8217;ve decided to start working on the UI if it. The first place I attacked was the icon of the program. I wanted to make it fit in with the rest of the android apps, bring soft and matte-like. I also didn&#8217;t want to make it overcomplicated and cluttered. The icons should be pushed with the next update, along with a few other features that we&#8217;ve added. The next area I&#8217;ll focus on is the main screen, and making that area a bit more pretty. The current brown mess isn&#8217;t going to be sticking around for long. 🙂</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/new-icons-for-swiftkit-mobile">New icons for SwiftKit Mobile</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>With the launch of the mobile platform, and it&#8217;s steady pace, I&#8217;ve decided to start working on the UI if it. The first place I attacked was the icon of the program. I wanted to make it fit in with the rest of the android apps, bring soft and matte-like. I also didn&#8217;t want to make it overcomplicated and cluttered.</p>
<p><img loading="lazy" class="aligncenter" title="SwiftKit Mobile icons" src="http://i25.tinypic.com/52ccpe.png" alt="" width="258" height="131" /></p>
<p>The icons should be pushed with the next update, along with a few other features that we&#8217;ve added. The next area I&#8217;ll focus on is the main screen, and making that area a bit more pretty. The current brown mess isn&#8217;t going to be sticking around for long. <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/new-icons-for-swiftkit-mobile">New icons for SwiftKit Mobile</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/new-icons-for-swiftkit-mobile/feed</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>SwiftKit Mobile for Android</title>
		<link>https://www.bluelightdev.com/swiftkit-mobile-for-android</link>
					<comments>https://www.bluelightdev.com/swiftkit-mobile-for-android#comments</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Thu, 08 Jul 2010 07:29:48 +0000</pubDate>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[SwiftKit]]></category>
		<category><![CDATA[SwiftKit Mobile]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[feature]]></category>
		<category><![CDATA[mobile]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=226</guid>

					<description><![CDATA[<p>Today we have released the initial version of SwiftKit Mobile onto the Android Marketplace. SwiftKit Mobile is a project that we have started to bring SwiftKit utilities and features to your phones for while you are on the go. Currently we only have an Android version but are looking into iPhone/iPod Touch solutions. Version 1.0 at the moment features a highscores lookup. However with future updates we plan to expand on the content to include database lookups (prices, items, monsters, clans), Adventure Log, basic calculators, notifications and much more. If you do have an Android device we encourage you to install it and let us know how it performs, positively or negatively.</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/swiftkit-mobile-for-android">SwiftKit Mobile for Android</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Today we have released the initial version of SwiftKit Mobile onto the Android Marketplace. SwiftKit Mobile is a project that we have started to bring SwiftKit utilities and features to your phones for while you are on the go. Currently we only have an Android version but are looking into iPhone/iPod Touch solutions.</p>
<p>Version 1.0 at the moment features a highscores lookup. However with future updates we plan to expand on the content to include database lookups (prices, items, monsters, clans), Adventure Log, basic calculators, notifications and much more.</p>
<p><center><a href="http://www.swiftkit.net/mobile/screens/Stats%20Lookup.png" rel="lightbox[screenshots]" title="Screen1"><img loading="lazy" src="http://www.swiftkit.net/mobile/screens/Stats%20Lookup.png" alt="Click to view full size." width="154" height="128" /></a> <a href="http://www.swiftkit.net/mobile/screens/Stats%20Lookup%202.png" rel="lightbox[screenshots]" title="Screen1"><img loading="lazy" src="http://www.swiftkit.net/mobile/screens/Stats%20Lookup%202.png" alt="Click to view full size." width="154" height="128" /></a></center></p>
<p>If you do have an Android device we encourage you to install it and let us know how it performs, positively or negatively.</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/swiftkit-mobile-for-android">SwiftKit Mobile for Android</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/swiftkit-mobile-for-android/feed</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
			</item>
		<item>
		<title>Tools Behind Maintaining The SwiftKit Project</title>
		<link>https://www.bluelightdev.com/tools-behind-maintaining-the-swiftkit-project</link>
					<comments>https://www.bluelightdev.com/tools-behind-maintaining-the-swiftkit-project#comments</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Sat, 24 Oct 2009 06:51:30 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<category><![CDATA[SwiftKit]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=212</guid>

					<description><![CDATA[<p>It&#8217;s been awhile since the last Dev Blog post so I&#8217;ve decided to write up another. This time however it won&#8217;t be about an upcoming update or software release. Instead we&#8217;ll have a look at the tools behind maintaining the SwiftKit project. The two main tools that will be shown are the Control Panel and the new Database Editor. Database Editor This is a new tool that has been developed to allow SwiftKit staff members to access, modify, add and delete data within the SwiftKit00x.skd files. The SwiftKitData00x.skd files are used for the calculators, quest center, atlas, achievement diary center etc. The tool was written in .NET and connects to a MySQL database on the SwiftKit server. Currently the changes made are not live, in order for the changes to take effect the data needs to be exported, packed and then uploaded. The main benefit of the tool is that it allows other staff members to manage the data instead of just myself. SwiftKit Control Panel This is a tool that I wrote for myself back when I was initially developing SwiftKit. The main purpose of this tool is to allow me to manage updates for SwiftKit (including SwiftKit MS). [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/tools-behind-maintaining-the-swiftkit-project">Tools Behind Maintaining The SwiftKit Project</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>It&#8217;s been awhile since the last Dev Blog post so I&#8217;ve decided to write up another. This time however it won&#8217;t be about an upcoming update or software release. Instead we&#8217;ll have a look at the tools behind maintaining the SwiftKit project. The two main tools that will be shown are the Control Panel and the new Database Editor.</p>
<p><strong>Database Editor</strong><br />
This is a new tool that has been developed to allow SwiftKit staff members to access, modify, add and delete data within the SwiftKit00x.skd files. The SwiftKitData00x.skd files are used for the calculators, quest center, atlas, achievement diary center etc. The tool was written in .NET and connects to a MySQL database on the SwiftKit server. Currently the changes made are not live, in order for the changes to take effect the data needs to be exported, packed and then uploaded. The main benefit of the tool is that it allows other staff members to manage the data instead of just myself.</p>
<p><a href="http://www.swiftkit.net/screenshots/dev/DB-Editor-1.png" rel="lightbox[screenshots]" title="Database Editor 1"><img loading="lazy" src="http://www.swiftkit.net/screenshots/dev/DB-Editor-1.png" alt="Click to view full size." width="154" height="128" /></a> <a href="http://www.swiftkit.net/screenshots/dev/DB-Editor-2.png" rel="lightbox[screenshots]" title="Database Editor 2"><img loading="lazy" src="http://www.swiftkit.net/screenshots/dev/DB-Editor-2.png" alt="Click to view full size." width="154" height="128" /></a> <a href="http://www.swiftkit.net/screenshots/dev/DB-Editor-3.png" rel="lightbox[screenshots]" title="Database Editor 3"><img loading="lazy" src="http://www.swiftkit.net/screenshots/dev/DB-Editor-3.png" alt="Click to view full size." width="154" height="128" /></a></p>
<p><span id="more-212"></span><br />
<strong>SwiftKit Control Panel</strong><br />
This is a tool that I wrote for myself back when I was initially developing SwiftKit. The main purpose of this tool is to allow me to manage updates for SwiftKit (including SwiftKit MS). While the tool doesn&#8217;t actually do the uploading it more or less does everything else. Including packaging, compressing, signing integrity, version control and placing all the update files in a holding directory ready for upload.</p>
<p><a href="http://www.swiftkit.net/screenshots/dev/Sk-CP-1.png" rel="lightbox[screenshots]" title="SwiftKit CP 1"><img loading="lazy" src="http://www.swiftkit.net/screenshots/dev/Sk-CP-1.png" alt="Click to view full size." width="154" height="128" /></a> <a href="http://www.swiftkit.net/screenshots/dev/Sk-CP-2.png" rel="lightbox[screenshots]" title="SwiftKit CP 2"><img loading="lazy" src="http://www.swiftkit.net/screenshots/dev/Sk-CP-2.png" alt="Click to view full size." width="154" height="128" /></a> <a href="http://www.swiftkit.net/screenshots/dev/Sk-CP-3.png" rel="lightbox[screenshots]" title="SwiftKit CP 3"><img loading="lazy" src="http://www.swiftkit.net/screenshots/dev/Sk-CP-3.png" alt="Click to view full size." width="154" height="128" /></a></p>
<p>The first screenshot is where I grab the world info for all the RuneScape servers and pack it into a single file. The second screenshot is where I come after I have compiled a new version of SwiftKit. Clicking one of the update buttons increments the version number, compresses the executable and signs its integrity. The last screenshot is where I package and compress all the SwiftKit000x.skd data files into a single .skd file. The SwiftKitData001.skd file has over 670 calculator images compressed into it. This is why you see an unpacking images progress bar in the Calculators utility.</p>
<p>So there&#8217;s a quick look the two main tools used for managing the SwiftKit project. Not an ordinary Dev Blog post but hopefully still informative for those who had been wondering &#8211; or had asked me about them in the past.</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/tools-behind-maintaining-the-swiftkit-project">Tools Behind Maintaining The SwiftKit Project</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/tools-behind-maintaining-the-swiftkit-project/feed</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>SnagIMG Update 2.2 &#8211; Multi Upload</title>
		<link>https://www.bluelightdev.com/snagimg-update-2-2-multi-upload</link>
					<comments>https://www.bluelightdev.com/snagimg-update-2-2-multi-upload#respond</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Thu, 27 Aug 2009 01:18:45 +0000</pubDate>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[SnagIMG]]></category>
		<category><![CDATA[feature]]></category>
		<category><![CDATA[imageshack]]></category>
		<category><![CDATA[snagimg]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=204</guid>

					<description><![CDATA[<p>In this update we see the addition of a very handy new feature, the Multi Uploader. With the addition of this new feature you are now able upload images directly from Windows Explorer. This means no more having to open a browser, navigate to Imageshack, browse for the image and finally upload it. A previous update that wasn&#8217;t posted included the Autosave option. If you plan on taking multiple screenshots you can automatically save them to a specified directory. To enable Autosave simply right click the SnagIMG system tray icon. Changes and Fixes: + ADD: The ability to right click upload images in Windows Explorer. (If selecting multiple images they must be same format) + ADD: Multi Uploader. + ADD: The system tray icon now changes if SnagIMG is disabled. + ADD: SnagIMG will now check for updates on startup. + ADD: New option in Settings to disable update check on startup. + FIX: Panning in the Viewer should now work correctly. + FIX: Few glitches fixed with the Drag Screenshot feature. + FIX: No longer crashes on startup after reboot/logoff. + CHANGE: Update process is now a little more automated. + CHANGE: You can now open multiple instances of [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/snagimg-update-2-2-multi-upload">SnagIMG Update 2.2 &#8211; Multi Upload</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>In this update we see the addition of a very handy new feature, the Multi Uploader. With the addition of this new feature you are now able upload images directly from Windows Explorer. This means no more having to open a browser, navigate to Imageshack, browse for the image and finally upload it. A previous update that wasn&#8217;t posted included the Autosave option. If you plan on taking multiple screenshots you can automatically save them to a specified directory. To enable Autosave simply right click the SnagIMG system tray icon.</p>
<p><a href="http://www.bluelightdev.com/snagimg/screenshots/ExplorerRightClick.png" rel="lightbox[screenshots]" title="Explorer Right Click"><img loading="lazy" src="http://www.bluelightdev.com/snagimg/screenshots/ExplorerRightClick.png" alt="Click to view full size." width="154" height="128" /></a> <a href="http://www.bluelightdev.com/snagimg/screenshots/MultiUpload.png" rel="lightbox[screenshots]" title="Multi Uploader"><img loading="lazy" src="http://www.bluelightdev.com/snagimg/screenshots/MultiUpload.png" alt="Click to view full size." width="154" height="128" /></a></p>
<p><span id="more-204"></span><br />
Changes and Fixes:<br />
+ ADD: The ability to right click upload images in Windows Explorer. (If selecting multiple images they must be same format)<br />
+ ADD: Multi Uploader.<br />
+ ADD: The system tray icon now changes if SnagIMG is disabled.<br />
+ ADD: SnagIMG will now check for updates on startup.<br />
+ ADD: New option in Settings to disable update check on startup.<br />
+ FIX: Panning in the Viewer should now work correctly.<br />
+ FIX: Few glitches fixed with the Drag Screenshot feature.<br />
+ FIX: No longer crashes on startup after reboot/logoff.<br />
+ CHANGE: Update process is now a little more automated.<br />
+ CHANGE: You can now open multiple instances of the Viewer.</p>
<p>To update, either right click the SnagIMG system tray icon and check for updates or go to the <a href="http://www.bluelightdev.com/downloads/snagimg">downloads</a> section.</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/snagimg-update-2-2-multi-upload">SnagIMG Update 2.2 &#8211; Multi Upload</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/snagimg-update-2-2-multi-upload/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>SwiftKit MS &#8211; Screenshot Viewer</title>
		<link>https://www.bluelightdev.com/swiftkit-ms-screenshot-viewer</link>
					<comments>https://www.bluelightdev.com/swiftkit-ms-screenshot-viewer#respond</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Fri, 17 Jul 2009 00:22:29 +0000</pubDate>
				<category><![CDATA[SwiftKit]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=189</guid>

					<description><![CDATA[<p>It&#8217;s been a little while since the last Dev Blog so I thought I should make a post about the Screenshot Viewer I&#8217;ve been working on. In SwiftKit RS the Screenshot Viewer is pretty ordinary to say the least so in SwiftKit MS we wanted to give it more purpose. The idea was to have something that&#8217;s similar to Windows Explorer, but not as extensive. Here&#8217;s what we&#8217;ve come up with so far. You can also check out the new Screenshot Viewer in the latest SwiftKit MS update. For instructions on how to download SwiftKit MS see here. The first most noticeable feature is the thumbnails. This was something we wanted to do from the start however when a typical player has hundreds and hundreds of screenshots in a single folder it can get a bit tricky. We overcome this problem by having the thumbnails generate on the fly when they come into view. Originally it would take around 5 seconds to open a folder with a hundred or so screenshots, now it&#8217;s opens instantly. Organising your screenshots will also be a lot easier with the ability to create new folders, drag and drop existing screenshots/folders and also cut,copy and [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/swiftkit-ms-screenshot-viewer">SwiftKit MS &#8211; Screenshot Viewer</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>It&#8217;s been a little while since the last Dev Blog so I thought I should make a post about the Screenshot Viewer I&#8217;ve been working on. In SwiftKit RS the Screenshot Viewer is pretty ordinary to say the least so in SwiftKit MS we wanted to give it more purpose. The idea was to have something that&#8217;s similar to Windows Explorer, but not as extensive. Here&#8217;s what we&#8217;ve come up with so far. </p>
<p><em>You can also check out the new Screenshot Viewer in the latest SwiftKit MS update. For instructions on how to download SwiftKit MS see <a href="http://forum.bluelightdev.com/viewtopic.php?f=8&#038;t=117" target="_blank">here</a>.</em></p>
<p><a href="http://www.swiftkit.net/screenshots/skms/Viewer1.png" rel="lightbox[screenshots]" title="Tools Menu"><img loading="lazy" src="http://www.swiftkit.net/screenshots/skms/Viewer1.png" alt="Click to view full size." width="154" height="128" /></a> <a href="http://www.swiftkit.net/screenshots/skms/Viewer2.png" rel="lightbox[screenshots]" title="Tools Menu"><img loading="lazy" src="http://www.swiftkit.net/screenshots/skms/Viewer2.png" alt="Click to view full size." width="154" height="128" /></a> </p>
<p><span id="more-189"></span>The first most noticeable feature is the thumbnails. This was something we wanted to do from the start however when a typical player has hundreds and hundreds of screenshots in a single folder it can get a bit tricky. We overcome this problem by having the thumbnails generate on the fly when they come into view. Originally it would take around 5 seconds to open a folder with a hundred or so screenshots, now it&#8217;s opens instantly.</p>
<p>Organising your screenshots will also be a lot easier with the ability to create new folders, drag and drop existing screenshots/folders and also cut,copy and paste.</p>
<p><a href="http://www.swiftkit.net/screenshots/skms/Viewer3.png" rel="lightbox[screenshots]" title="Tools Menu"><img loading="lazy" src="http://www.swiftkit.net/screenshots/skms/Viewer3.png" alt="Click to view full size." width="154" height="128" /></a> <a href="http://www.swiftkit.net/screenshots/skms/Viewer4.png" rel="lightbox[screenshots]" title="Tools Menu"><img loading="lazy" src="http://www.swiftkit.net/screenshots/skms/Viewer4.png" alt="Click to view full size." width="154" height="128" /></a></p>
<p>The above screenshots show you what happens when you double click or &#8216;View&#8217; a screenshot. The forward and back buttons will navigate you back or forward through the other screenshots in the current directory. With the &#8216;Stretch to Fit&#8217; button checked the screenshot will stretch or shrink depending on the window size, otherwise with it unchecked the screenshot will remain in it&#8217;s original size and you can pan it. The upload feature is not yet finished that will have to wait for the next post.</p>
<p>That&#8217;s about it for now, just a quick glimpse at what we&#8217;ve been working on. There&#8217;s only so much we can do before MechScape is released but so far so good. We encourage you to check out SwiftKit MS and let us know what you think on the forums or in a comment here.</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/swiftkit-ms-screenshot-viewer">SwiftKit MS &#8211; Screenshot Viewer</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/swiftkit-ms-screenshot-viewer/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>SnagIMG v2</title>
		<link>https://www.bluelightdev.com/snagimg-v2</link>
					<comments>https://www.bluelightdev.com/snagimg-v2#comments</comments>
		
		<dc:creator><![CDATA[Jason]]></dc:creator>
		<pubDate>Tue, 16 Jun 2009 21:35:17 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<category><![CDATA[SnagIMG]]></category>
		<category><![CDATA[imageshack]]></category>
		<category><![CDATA[snagimg]]></category>
		<guid isPermaLink="false">http://www.bluelightdev.com/?p=183</guid>

					<description><![CDATA[<p>SnagIMG has been updated to version 2. This update consists of mostly fixes and improvements but also a new screenshot option. Now when you press CTRL + PrintScreen you will be able to drag an area of the screen that you wish to screenshot. A few other changes are you can pan screenshots in the Viewer, &#8216;Check For Updates&#8217; menu added and an &#8216;Open in Browser&#8217; button added to the Upload form. See full story for a complete list of changes. To update simply make sure SnagIMG is closed (right click > exit on Camera icon in system tray), download and install over the top of your existing installation. Changes and Fixes: + Threaded the screenshot upload process. + CTRL+PrntScr now brings up the Drag Screenshot form. + Added &#8216;Open in Browser&#8217; button to the Upload form. + Added a &#8216;Check For Update&#8217; menu option. + You can now pan screenshots in the Viewer. + Made &#8216;Upload Screenshot&#8217; button easier to identify in Viewer. + Cross hair should appear correctly when using the blur tool. + Adds to registry the installed path on startup.</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/snagimg-v2">SnagIMG v2</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>SnagIMG has been updated to version 2. This update consists of mostly fixes and improvements but also a new screenshot option. Now when you press CTRL + PrintScreen you will be able to drag an area of the screen that you wish to screenshot.</p>
<p>A few other changes are you can pan screenshots in the Viewer, &#8216;Check For Updates&#8217; menu added and an &#8216;Open in Browser&#8217; button added to the Upload form. See full story for a complete list of changes. To update simply <strong>make sure SnagIMG is closed</strong> (right click > exit on Camera icon in system tray), <a href="http://www.bluelightdev.com/downloads/snagimg">download</a> and install over the top of your existing installation.</p>
<p><span id="more-183"></span><br />
Changes and Fixes:<br />
+ Threaded the screenshot upload process.<br />
+ CTRL+PrntScr now brings up the Drag Screenshot form.<br />
+ Added &#8216;Open in Browser&#8217; button to the Upload form.<br />
+ Added a &#8216;Check For Update&#8217; menu option.<br />
+ You can now pan screenshots in the Viewer.<br />
+ Made &#8216;Upload Screenshot&#8217; button easier to identify in Viewer.<br />
+ Cross hair should appear correctly when using the blur tool.<br />
+ Adds to registry the installed path on startup.</p>
<p>The post <a rel="nofollow" href="https://www.bluelightdev.com/snagimg-v2">SnagIMG v2</a> appeared first on <a rel="nofollow" href="https://www.bluelightdev.com">Bluelight Dev</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.bluelightdev.com/snagimg-v2/feed</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
	</channel>
</rss>
