1. rameses09's Avatar
    Hey looks good, one question. can you use your own cameral roll wallpapers with this?
    2010-11-23 11:21 PM
  2. monkey87's Avatar
    Can anyone help me mod this?
    I want to add humidity under the forecast, slide the temperature over a bit and add the hi & low where the temperature currently is.
    By the way the dusk law add on works fine for me and just adds to the beauty of this theme!
    Attached Thumbnails iPhone 4 / 3GS HTC Clock & Weather Widget-request.png  
    2010-11-24 12:13 AM
  3. monkey87's Avatar
    Ok I figured out how to slide the temperature over, now I just need to find out how to add the humidity and the high and low temps. I know it's possible and most of the coding is in there, I just can't figure out how to enable it
    2010-11-24 12:39 AM
  4. bjbinc's Avatar
    @rameses09 - Yes you can use custom walls

    @monkey - I'll work on it for you...shouldn't be a problem
    2010-11-24 01:43 AM
  5. rameses09's Avatar
    Dang, that is too good. thanks. Any thoughts of adding live weather in the future?
    2010-11-24 01:51 AM
  6. monkey87's Avatar
    @rameses09 - Yes you can use custom walls

    @monkey - I'll work on it for you...shouldn't be a problem
    Awesome!!! It's got my head spinning! lol I know I almost have it but it just won't work right.
    Thanks so much for this theme by the way I love it!
    2010-11-24 01:54 AM
  7. bjbinc's Avatar
    did you make the city name and condition text smaller? if so, what size are they.
    2010-11-24 02:00 AM
  8. monkey87's Avatar
    Yes, the city text font is 14px and the top position is at 153px
    The desc text font is 10px and the top position is at 170px
    I also changed the temp width to 260
    2010-11-24 02:06 AM
  9. bjbinc's Avatar
    Ok...got it. Here's what you need.

    WeatherWidget.html

    Code:
    <?xml version="1.0" encoding="UTF-16"?>
    <html><head>
        <base href="Private/"/>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    
        <style>
    	body {
    	    background-color: none;
    	    margin: 0;
    	    padding: 10px 0 0 0;
    	    height: 480px;
    	    width: 320px;
    	     }
    	</style>
        
        <script type="text/javascript" src="translation.js"></script>
    <script type="text/javascript">
    var MiniIcons =
    [
    	"tstorm3",		//0	tornado
    	"tstorm3",		//1	tropical storm
    	"tstorm3",		//2	hurricane
    	"tstorm3",		//3	severe thunderstorms
    	"tstorm3",		//4	thunderstorms
    	"sleet",		//5	mixed rain and snow
    	"sleet",		//6	mixed rain and sleet
    	"sleet",		//7	mixed snow and sleet
    	"sleet",		//8	freezing drizzle
    	"light_rain",		//9	drizzle
    	"sleet",		//10	freezing rain
    	"shower3",		//11	showers
    	"shower3",		//12	showers
    	"snow1",		//13	snow flurries
    	"snow2",		//14	light snow showers
    	"snow4",		//15	blowing snow
    	"snow4",		//16	snow
    	"hail", 	//17	hail
    	"sleet",		//18	sleet
    	"mist", 	//19	dust
    	"fog",		//20	foggy
    	"fog",		//21	haze
    	"fog",		//22	smoky
    	"windy",		//23	blustery
    	"windy",		//24	windy
    	"windy",		//25	cold
    	"overcast",		//26	cloudy
    	"cloudy4_night",		//27	mostly cloudy (night)
    	"cloudy4",		//28	mostly cloudy (day)
    	"cloudy1_night",		//29	partly cloudy (night)
    	"cloudy1",		//30	partly cloudy (day)
    	"sunny_night",		//31	clear (night)
    	"sunny",		//32	sunny
    	"fair_night",		//33	fair (night)
    	"fair", 	//34	fair (day)
    	"hail", 	//35	mixed rain and hail
    	"hot",		//36	hot
    	"tstorm1",		//37	isolated thunderstorms
    	"tstorm2",		//38	scattered thunderstorms
    	"tstorm2",		//39	scattered thunderstorms
    	"shower1",		//40	scattered showers
    	"snow5",		//41	heavy snow
    	"snow3",		//42	scattered snow showers
    	"snow5",		//43	heavy snow
    	"cloudy1",		//44	partly cloudy
    	"tstorm3",		//45	thundershowers
    	"snow2",		//46	snow showers
    	"tstorm1",		//47	isolated thundershowers
    	"dunno",		//3200	not available
    ]
    
    function constructError (string)
    {
    	return {error:true, errorString:string};
    }
    
    function findChild (element, nodeName)
    {
    	var child;
    	
    	for (child = element.firstChild; child != null; child = child.nextSibling)
    	{
    		if (child.nodeName == nodeName)
    			return child;
    	}
    	
    	return null;
    }
    
    
    function fetchWeatherData (callback, zip)
    {
    	if (isCelsius == false){
    	varUnit = 'f'
    	}
    	else
    	{
    	varUnit = 'c'
    	}
    
    url="http://xml.weather.yahoo.com/forecastrss/" //u=Farenheit, because accuWeather sucks
    	
    	var xml_request = new XMLHttpRequest();
    	xml_request.onload = function(e) {xml_loaded(e, xml_request, callback);}
    	xml_request.overrideMimeType("text/xml");
    	xml_request.open("GET", url+zip+'_'+varUnit+'.xml');
    	xml_request.setRequestHeader("Cache-Control", "no-cache");
    	xml_request.send(null); 
    	
    	return xml_request;
    }
    
    function xml_loaded (event, request, callback)
    {
    	if (request.responseXML)
    	{
    		var obj = {error:false, errorString:null};
    		var effectiveRoot = findChild(findChild(request.responseXML, "rss"), "channel");
    		obj.city = findChild(effectiveRoot, "yweather:location").getAttribute("city");
    		obj.realFeel = findChild(effectiveRoot, "yweather:wind").getAttribute("chill");//Only accounts for windChill
    		
    		conditionTag = findChild(findChild(effectiveRoot, "item"), "yweather:condition");
    		obj.temp = conditionTag.getAttribute("temp");
    		obj.icon = conditionTag.getAttribute("code");
    		obj.description = conditionTag.getAttribute("text"); 
    		obj.humidity = request.responseXML.getElementsByTagName("atmosphere")[0].getAttribute("humidity");
    
    		//obj.sunset = request.responseXML.getElementsByTagName("astronomy")[0].getAttribute("sunset");
    		//obj.sunset = obj.sunset.split(' ')[0]
    		//obj.sunsethr = obj.sunset.split(':')[0]*1+12
    		//obj.sunsetmin = obj.sunset.split(':')[1]
    		
    		//obj.Today = request.responseXML.getElementsByTagName("forecast")[0].getAttribute("day");
    		obj.TodayHi = request.responseXML.getElementsByTagName("forecast")[0].getAttribute("high");
    		obj.TodayLo = request.responseXML.getElementsByTagName("forecast")[0].getAttribute("low");
    		//obj.TodayCode = request.responseXML.getElementsByTagName("forecast")[0].getAttribute("code");
    
    		//obj.Day1 = request.responseXML.getElementsByTagName("forecast")[1].getAttribute("day");
    		//obj.Day1Hi = request.responseXML.getElementsByTagName("forecast")[1].getAttribute("high");
    		//obj.Day1Lo = request.responseXML.getElementsByTagName("forecast")[1].getAttribute("low");
    		//obj.Day1Code = request.responseXML.getElementsByTagName("forecast")[1].getAttribute("code");
    
    		//obj.Day2 = request.responseXML.getElementsByTagName("forecast")[2].getAttribute("day");
    		////obj.Day2Hi = request.responseXML.getElementsByTagName("forecast")[2].getAttribute("high");
    		//obj.Day2Lo = request.responseXML.getElementsByTagName("forecast")[2].getAttribute("low");
    		//obj.Day2Code = request.responseXML.getElementsByTagName("forecast")[2].getAttribute("code");
    
    		//obj.Day3 = request.responseXML.getElementsByTagName("forecast")[3].getAttribute("day");
    		//obj.Day3Hi = request.responseXML.getElementsByTagName("forecast")[3].getAttribute("high");
    		//obj.Day3Lo = request.responseXML.getElementsByTagName("forecast")[3].getAttribute("low");
    		//obj.Day3Code = request.responseXML.getElementsByTagName("forecast")[3].getAttribute("code");
    
    		//obj.Day4 = request.responseXML.getElementsByTagName("forecast")[4].getAttribute("day");
    		//obj.Day4Hi = request.responseXML.getElementsByTagName("forecast")[4].getAttribute("high");
    		//obj.Day4Lo = request.responseXML.getElementsByTagName("forecast")[4].getAttribute("low");
    		//obj.Day4Code = request.responseXML.getElementsByTagName("forecast")[4].getAttribute("code");
    
    		
    
    		callback (obj); 
    	}else{
    		callback ({error:true, errorString:"XML request failed. no responseXML"});
    	}
    }
    
    
    function validateWeatherLocation (location, callback)
    {
    	var obj = {error:false, errorString:null, cities: new Array};
    	obj.cities[0] = {zip: location}; //Not very clever, are we?
    	callback (obj);
    }
    
    
    // The location field should be a relatively machine-legible string
    // if using the default, Apple/AccuWeather parser (originally from Leopard's Weather.wdgt)
    
    
    
    
    
    var locale = "30427" //e.g. 'Defiance, Ohio'|'Moscow, Russia'|'Ledyard, AT'|'London, UK'|"USNY0996"
    
    
    var LangTranslate = English  //or Italian
    
    
    
    // Set to 'false' if you'd prefer Farenheit
    var isCelsius = false //true|false
    
    // Use 'Real Feel' temperatures where possible, taking into account Wind Chill, Humidity etc.
    var useRealFeel = false //true|false
    
    /*ññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññ*/
    
    // Supplied styles are 'originalBubble', 'myopia', 'iconOnly' and 'split'.
    // (Add your own to the CSS folder!)
    var stylesheet = 'myopiaAlt' //'originalBubble'|'myopia'|'iconOnly'|'split'
    
    // The supplied icon set is 'klear'
    // Images must follow the same naming schema as the 'klear' set (borrowed from KWeather)
    var iconSet = "HTC" //'klear'|'tango'|null (null makes iconSet = stylesheet)
    var iconExt = ".png" //'.png'|.'gif' etc.
    
    /*ññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññ*/
    
    // The other available source is 'yahooWeather' which for the 'locale'
    // requires a US zip or location code (e.g. UKXX0085 or CHXX0008) from http://weather.yahoo.com
    var source = 'yahooWeather' //'appleAccuweatherStolen'|'yahooWeather'
    
    // Please endeavour to set this to a sensible value if you really must change it...
    var updateInterval = 15 //Minutes
    </script>
    
    
    <script type="text/javascript">
    var postal;
    
    if(iconSet == null || iconSet == 'null'){
    	var iconSet = stylesheet;
    }
    
    var headID = document.getElementsByTagName("head")[0];	       
    var styleNode = document.createElement('link');
    styleNode.type = 'text/css';
    styleNode.rel = 'stylesheet';
    styleNode.href = 'Stylesheets/'+stylesheet+'.css';
    headID.appendChild(styleNode);
    
    var scriptNode = document.createElement('script');
    scriptNode.type = 'text/javascript';
    scriptNode.src = 'Sources/'+source+'.js';
    headID.appendChild(scriptNode);
    
    function onLoad(){ 
    	document.getElementById("weatherIcon").src="Icon Sets/"+iconSet+"/"+"dunno"+iconExt;
    	validateWeatherLocation(escape(locale).replace(/^%u/g, "%"), setPostal)
    	setInterval('fetchWeatherData(dealWithWeather,postal)', 1000*60*updateInterval);
    }
    
    
    function setPostal(obj){
    	
    	if (obj.error == false){
    		if(obj.cities.length > 0){
    			postal = escape(obj.cities[0].zip).replace(/^%u/g, "%")
    			fetchWeatherData(dealWithWeather,postal);
    		}else{
    			document.getElementById("city").innerText="Not Found";
    		}
    	}else{
    		document.getElementById("city").innerText=obj.errorString;	
    	}
    }
    
    function dealWithWeather(obj){
    
    	if (obj.error == false){
    		document.getElementById("city").innerText=obj.city;
    		
    		if (LangTranslate == English)
    		{
    		document.getElementById("desc").innerText=obj.description;
    		}
    		else
    		{
    		document.getElementById("desc").innerText = LangTranslate[obj.icon*1];		
    		}
    		if(useRealFeel == true){
    			tempValue = obj.realFeel;
    		}else{
    			tempValue = obj.temp;
    		}
    
    		var currentTime = new Date ( );
    		var currentHours = currentTime.getHours ( );
    		var currentMinutes = currentTime.getMinutes ( );
    		if(obj.sunsethr < currentHours){
    		obj.TOD = "Tonight"
    		}
    		else if(obj.sunsethr < currentHours)
    		{
    		obj.TOD = "Tonight"
    		}
    		else if(currentHours < 2)
    		{
    		obj.TOD = "Tonight"
    		}
    		else
    		{
    		obj.TOD = "Today"
    		}
    
    		document.getElementById("temp").innerHTML=tempValue+ "&#176;"
    		document.getElementById("weatherIcon").src="Icon Sets/"+iconSet+"/"+obj.icon+iconExt;
    		document.getElementById("hi").innerHTML="Hi: "+obj.TodayHi+ "&#176;"	
    		document.getElementById("lo").innerHTML="Lo: "+obj.TodayLo+ "&#176;"
    		document.getElementById("humidity").innerHTML=obj.humidity+"% Humidity"
    
    		//document.getElementById("Today").innerHTML=obj.TOD;
    		//document.getElementById("TodayIcon").src="Icon Sets/"+iconSet+"/"+obj.TodayCode+'_small'+iconExt;
    		//document.getElementById("TodayHiLo").innerHTML=obj.TodayHi+ "&#176; / <font color=#a8a8a8>"+obj.TodayLo+ "&#176;</font>";
    				
    		//document.getElementById("Day1").innerHTML=obj.Day1;
    		//document.getElementById("Day1Icon").src="Icon Sets/"+iconSet+"/"+obj.Day1Code+'_small'+iconExt;
    		//document.getElementById("Day1HiLo").innerHTML=obj.Day1Hi+ "&#176; / <font color=#a8a8a8>"+obj.Day1Lo+ "&#176;</font>";
    		
    		//document.getElementById("Day2").innerHTML=obj.Day2;
    		//document.getElementById("Day2Icon").src="Icon Sets/"+iconSet+"/"+obj.Day2Code+'_small'+iconExt;
    		//document.getElementById("Day2HiLo").innerHTML=obj.Day2Hi+ "&#176; / <font color=#a8a8a8>"+obj.Day2Lo+ "&#176;</font>";
    
    		//document.getElementById("Day3").innerHTML=obj.Day3;
    		//document.getElementById("Day3Icon").src="Icon Sets/"+iconSet+"/"+obj.Day3Code+'_small'+iconExt;
    		//document.getElementById("Day3HiLo").innerHTML=obj.Day3Hi+ "&#176; / <font color=#a8a8a8>"+obj.Day3Lo+ "&#176;</font>";
    
    		//document.getElementById("Day4").innerHTML=obj.Day4;
    		//document.getElementById("Day4Icon").src="Icon Sets/"+iconSet+"/"+obj.Day4Code+'_small'+iconExt;
    		//document.getElementById("Day4HiLo").innerHTML=obj.Day4Hi+ "&#176; / <font color=#a8a8a8>"+obj.Day4Lo+ "&#176;</font>";
    
    		
    
    
    var currentTime = new Date ( );
    
      var currentHours = currentTime.getHours ( );
      var currentMinutes = currentTime.getMinutes ( );
      var currentSeconds = currentTime.getSeconds ( );
    
      // Pad the minutes and seconds with leading zeros, if required
      currentMinutes = ( currentMinutes < 10 ? "0" : "" ) + currentMinutes;
      currentSeconds = ( currentSeconds < 10 ? "0" : "" ) + currentSeconds;
    
      // Choose either "AM" or "PM" as appropriate
      var timeOfDay = ( currentHours < 12 ) ? "AM" : "PM";
    
      // Convert the hours component to 12-hour format if needed
      currentHours = ( currentHours > 12 ) ? currentHours - 12 : currentHours;
    
      // Convert an hours component of "0" to "12"
      currentHours = ( currentHours == 0 ) ? 12 : currentHours;
    
      // Compose the string for display
      var currentTimeString = currentHours + ":" + currentMinutes;
    	    
    
    		
    
    
    
    	}
    	
    	
    }
    
    </script>
    	
    </head>
    <body onload="onLoad()" style="margin-left: 0">
    
    <div id="WeatherContainer">
    <div id="TextContainer">
    <img id="weatherIcon" src="" height=108 width=114 style="position:absolute; top:115px;left:103px;z-index:100;">
    <a id="city"></a><a id="desc"></a><a id="temp"></a><a id="hi"></a><a id="lo"></a><a id="humidity"></a>
    
    
    <a id="time" style="position:absolute; top:105px; width:299px;z-index:30;font-size:8px;display:none;"></a>
    
    </div>
    </div>
    
    </body></html>
    myopiaAlt.css

    Code:
    #WeatherContainer{
    	color: #000000;	
    	/*color: rgba(31,31,31,0.8);*/ 
    	text-shadow: #FFFFFF 0px 1px 0px;	
    	width: 320px;
    font-size:10px;
    }
    
    #TextContainer{
    	font-family: sans-serif;
    	color: #d1d1d1; 
    	text-shadow: #FFFFFF 0px 1px 0px;
    	font-weight: normal;
    	width: 320px;
    	left:0;
    	font-size:10px;
    }
    #city{
    	position:absolute;
    	top:153px;
    	left:20px;
    	color: #d1d1d1; 
    	text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.7);	
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 14px;
    	font-weight: bold;
    }
    
    #temp{
    	position:absolute;
    	top:170px;
    	padding-right:80px;
    	color: #d1d1d1; 
    	text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.7);	
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 25px;
    	font-weight: bold;
    	text-align:right;
    	width:265;
    }
    
    #desc{
    	position:absolute;
    	top:170px;
    	left:20px;
    	color: #d1d1d1; 
    	text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.7);	
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 10px;
    	font-weight: normal;
    }
    
    #humidity{
    	position:absolute;
    	top:183px;
    	left:20px;
    	color: #d1d1d1; 
    	text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.7);	
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 10px;
    	font-weight: normal;
    }
    
    #forecastTable{
    	color: #d1d1d1; 
    	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7), 0 0px 3px #000000;
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 11px;
    	font-weight: bold;
    	text-align:center;
    	text-transform: uppercase;
    	letter-spacing: 3px;
    }
    
    
    
    #hi{
    	position:absolute;
    	top:172px;
    	left:273px;
    	text-align:right;
    	color: #d1d1d1; 
    	text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.7);	
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 11px;
    	font-weight: normal;
    	
    }
    
    #lo{
    	position:absolute;
    	top:185px;
    	left:269px;
    	text-align:right;
    	color: #d1d1d1; 
    	text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.7);	
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 11px;
    	font-weight: normal;
    }
    
    #Today{
    
    	color: #d1d1d1; 
    	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7), 0 0px 3px #000000;
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 10px;
    	font-weight: bold;
    
    }
    #TodayHiLo{
    
    	color: #d1d1d1; 
    	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7), 0 0px 3px #000000;
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 10px;
    	font-weight: bold;
    }
    #Day1{
    
    	color: #d1d1d1; 
    	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7), 0 0px 3px #000000;
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 10px;
    	font-weight: bold;
    }
    #Day1HiLo{
    
    	color: #d1d1d1; 
    	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7), 0 0px 3px #000000;
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 10px;
    	font-weight: bold;
    }
    #Day2{
    
    	color: #d1d1d1; 
    	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7), 0 0px 3px #000000;
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 10px;
    	font-weight: bold;
    }
    #Day2HiLo{
    
    	color: #d1d1d1; 
    	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7), 0 0px 3px #000000;
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 10px;
    	font-weight: bold;
    }
    #Day3{
    
    	color: #d1d1d1; 
    	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7), 0 0px 3px #000000;
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 10px;
    	font-weight: bold;
    }
    #Day3HiLo{
    
    	color: #d1d1d1; 
    	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7), 0 0px 3px #000000;
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 10px;
    	font-weight: bold;
    }
    
    #Day4{
    
    	color: #d1d1d1; 
    	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7), 0 0px 3px #000000;
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 10px;
    	font-weight: bold;
    }
    #Day4HiLo{
    
    	color: #d1d1d1; 
    	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7), 0 0px 3px #000000;
    	/*text-shadow: #FFFFFF 0px 1px 0px;*/
    	font-size: 10px;
    	font-weight: bold;
    }
    2010-11-24 02:31 AM
  10. rameses09's Avatar
    Can anyone tell me how to edit the html file? To change my location. thanks.

    Can anyone tell me how to edit the html file? To change my location. thanks.
    Never mind guys, got. it.
    Last edited by rameses09; 2010-11-24 at 03:03 AM. Reason: Automerged Doublepost
    2010-11-24 03:03 AM
  11. monkey87's Avatar
    WOW!!! bjbinc you are the best!! thanks so much this looks awesome!! by the way I was way off lol. My head was spinning for nothing earlier lol By far best version of htc clock/weather yet. this really compliments my iphone4 retina display
    2010-11-24 03:15 AM
  12. bjbinc's Avatar
    Thanks! I'm glad I could help you out
    2010-11-24 03:35 AM
  13. lil red wagon's Avatar


    Ok, here is i wanna do, if someone can help me. This is the iSense theme, (has floating bubbles in the background), I want to use the clock/weather widget from this thread on this theme. I tried deleting the widget coding, but that didn't work. Anyone got an idea how to do it, so I can keep the "floaters" too...

    Thanks in advance...
    2010-11-24 04:40 AM
  14. Mdot80's Avatar



    An HTC Widget for the iPhone 4 / 3GS and optimized for the retina display.

    To change your location, edit the Private\WeatherWidget\WeatherWidget.html file in notepad. About half way down the file you'll find the locale variable. Change it to your zip code.

    To place on the lockscreen instead of the springboard, simply rename Wallpaper.html to LockBackground.html

    I've included a .psd to create your own digits.

    I used the template from here

    UPDATE
    Fixed bug with displaying temp in Celsius

    UPDATE 2
    Added version without forecast
    Added 24hr clock option (half-way down Wallpaper.html file, change TwentyFourHourClock variable to true)

    UPDATE 3
    Fixed bug preventing weather from updating reliably (Hopefully)
    Attempt at fixing a bug causing springboard to crash

    UPDATE 4
    Added option to translate weather descriptions. Currently, it only has Italian and English, but you can add your own. Open the translation.js file and make a copy of the Italian translation code. Then replace the descriptions with your own translations and rename the language array from "Italian" to whatever your language is. Finally, open the WeatherWidget.html file and change the LangTranslate variable to your new language.
    If people submit their translations to me, I'll add them to the default download to save others all this trouble. Thanks!


    Download
    Hey first off great job I like your work what icon pack r u using in you pictures thanks
    2010-11-24 06:50 AM
  15. rameses09's Avatar
    Hey i have a question, when i use a wallpaper from my camera roll they look darker on the springboard.
    I was using the iHY HD widget with a "@2x.png" wallpaper and it looks more vivid on the springboard how its suppose to. Does anyone have any idea why that is or how to fix it? thanks. ill include some screen shots. http://i14.photobucket.com/albums/a3...ty09/photo.png

    http://i14.photobucket.com/albums/a3...09/photo-1.png
    2010-11-24 08:12 AM
  16. ephone's Avatar
    trying to get this to lay on the lockscreen with no luck.
    placed in themes.

    themes.cmXZzF/iphone_4__3gs(etc)/HTC Widget....changed wallpaper.html to LockBackground.html

    tried in all kind of slots in winterboard but can't get it to show up any ideas? Still messing around with it

    EDIT: got it. stupid me added the entire file from iphone_4__3gs(etc) when i should of started at HTC WIDGET.

    Got it up and running....THANKS e
    Last edited by ephone; 2010-11-24 at 09:15 AM. Reason: stupid
    2010-11-24 09:08 AM
  17. Sanady361's Avatar
    Great Job!
    My latest theme - -
    2010-11-24 03:25 PM
  18. bjbinc's Avatar
    @mdot - it's called gladhander

    @ramses - try downloading this. Just put it in your themes folder and activate with WB
    2010-11-24 05:51 PM
  19. rameses09's Avatar
    @mdot - it's called gladhander

    @ramses - try downloading this. Just put it in your themes folder and activate with WB
    That worked perfectly thanks! Hands down best looking widget out there.
    2010-11-24 06:52 PM
  20. kexan's Avatar
    great work m8! If your feeling creative, hows about making something similiar but yet iphonelike instead htc? Love the dusk version of other ones, but this one is far more prettier on a iphone4
    2010-11-24 08:27 PM
384 123412 ...
LINK TO POST COPIED TO CLIPBOARD