Skip to content
May 23, 2012

Alarm Clock Paid / Free updated #wpdev

I messed up migration of single alarm to multi-alarm. I didn’t set the description field which meant that users to null reference exception and a crash when they tried to edit the migrated alarm.

I have fixed above error. Additionally Free version had failed last update. I was required to localise DayOfWeeks. Took me a while to figure out but the solution couldn’t have been simpler.

Thread.CurrentThread.CurrentUICulture.DateTimeFormat.DayNames

this is a localised Day Of Week names which can be consumed easily. Apps now with Marketplace
1) Wordastic
2) CVC Wods
3) Slydr
4) Alarm Clock Free
5) Alarm Clock

I have started working on a new app but its been a slow progress. Once i finish 3rd app, i might go back to Cool Camera as that would do with some patches based on stack traces.

May 22, 2012

Wordastic, CVC Words and Slydr Update #wpdev

Last few weeks have been busy. I finally finished 1.0 of Wordastic. I still have to improve the overall experience but its not too bad. The idea is simple. take a word and randomise the characters. Give users a certain amout of time to correct the sequence. the faster they do it, the more points they get.

CVC Words is based on my discussions with my wife about education in early years. CVC words are simple words that start and end with consonant and have a vowel in between. They are frequently used easy to learn works like Cat, Bat, Bad, Mad etc

Lastly i added support for Lithuanian in Slydr based on user request.

April 27, 2012

High Performance Touch Interface #wpdev #wp7dev

Every now and again i come across developer questions like why is manipulation delta slow etc. Let me tell you why.

UIElement Silverlight for #windowsphone exposes a few events like

http://msdn.microsoft.com/en-us/library/system.windows.uielement(v=vs.95).aspx

Public eventSupported by Silverlight for Windows Phone ManipulationCompleted Occurs when a manipulation and inertia on the UIElement is complete.
Public eventSupported by Silverlight for Windows Phone ManipulationDelta Occurs when the input device changes position during a manipulation.
Public eventSupported by Silverlight for Windows Phone ManipulationStarted Occurs when an input device begins a manipulation on the UIElement.

These are high level touch interfaces and there is a significant overhead in reporting (and hence delay etc).

If you are say drawing on a bitmap or canvas, you dont want a min delta change before event is fired. For that lets look at low-level interface exposed in Silverlight.

http://msdn.microsoft.com/en-us/library/system.windows.input.touch(v=vs.95).aspx

Public eventStatic memberSupported by Silverlight for Windows Phone FrameReported Occurs when the input system promotes a Windows 7 touch message for Silverlight.

Touh.FrameReported is a low level method and has little overhead and is very very precise. Let me give you a code sample

Touch.FrameReported += Touch_FrameReported;

you can do above in Loaded event. Here’s the implementation of the Touch_FrameReported handler. WorkArea is Canvas in this. I have also used this in conjugation with WritableBitmap

private void Touch_FrameReported(object sender, TouchFrameEventArgs e)
{
    try
    {
        // Determine if finger / mouse is down
        point = e.GetPrimaryTouchPoint(this.workArea);
        
        if (point.Position.X < 0 || point.Position.Y < 0)
        return;
        
        if (point.Position.X > this.workArea.Width || point.Position.Y > this.workArea.Height)
            return;
        
        if (this.lbLetter.SelectedIndex == -1)
            return;
        
        switch (point.Action)
        {
            case TouchAction.Down:
                draw = true;
                old_point = point;
                goto default;
        
            case TouchAction.Up:
                draw = false;
                break;
        
            default:
                Draw();
                break;
        }
    }
    catch
    {
        MessageBox.Show("Application encountered error processing last request.");
    }
}

I hope this is useful to #windowsphone developers out there.

April 17, 2012

Alarm Clock – Multi alarm supported added #WP #WindowsPhone

a few users asked me to provide my alarm clock app http://windowsphone.com/s?appid=f42310b4-6424-4823-85a3-6dccb1a968c3 While it was not difficult it was a slightly complicated exercise that involved issues with user display and consuming underlying apis. Now i am storing user created alarm data by itself and using that to create underlying sytem alarm notifications.

I only have to finish localisation of the app since i hardcoded all the strings i needed. Will try to finish it off today evening

April 16, 2012

Cool Camera #WP #WindowsPhone @CoolCameraWP

Cool Camera has been udpated to 1.9. I just finished uploading the new XAP to marketplace. So whats changed ?
Well not much :) I have been busy with DIY at home so this is a bug fix / UX enhancement release

1) Portrait pictures with zoom were not correctly cropped. Fixed
2) Reduce album view so show only 8 but larger thumbnails
3) Metro UX enhancement in Media viewer based on Dave Crawford’s suggestions. Hide instead of disabling controls and ensure fonts are readable :)

I’ve also been testing my Alarm Clock app (supporting multiple alarms)

April 6, 2012

Upload CameraCaptureTask Photo/Image to Facebook

Reblogged from Walter's Technology + Travel Space:

Click to visit the original post

  • Click to visit the original post
  • Click to visit the original post
  • Click to visit the original post
  • Click to visit the original post
  • Click to visit the original post
  • Click to visit the original post

This following article shows you how to upload the image from CameraCaptureTask to Facebook in less than 10 steps. The following Assembly/DLL will take care of all the Facebook Security (OAuth) code for you. With this DLL, you will not need to learn about Facebook Graph API.

To start with this, you need to download the following

Read more… 140 more words

April 1, 2012

Navigate to selected Pivot Item #wpdev #wp7dev

I have come across a few instances where its desireable to navigate to a certain pivot item rather than landing on default and then finding your way around.

This is very easy. I tend to define some mechanism e.g. an enum for each pivot item. I create a static property (or you can choose whatever data passing mechanism you prefer). I set the property and navigate to pivot page and navigate to correct item.

Here’s how i do it. Itercept the OnNavigatedTo of the Pivot page and set the correct item as selected.

public enum PivotDef
{
   One,
   Two,
   Three,
   Four,
}

public static PivotDef SelectedPivot;

protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
   switch (SelectedPivot)
   {
      case PivotDef.One:
         this.pvtControl.SelectedItem = this.pvt1;
         break;

      case PivotDef.Two:
         this.pvtControl.SelectedItem = this.pvt2;
         break;

      case PivotDef.Three:
         this.pvtControl.SelectedItem = this.pvt3;
         break;

      case PivotDef.Four:
         this.pvtControl.SelectedItem = this.pvt4;
         break;
   }

   base.OnNavigatedTo(e);
}

sample project is available from http://wp7pivottest.codeplex.com

Follow

Get every new post delivered to your Inbox.

Join 949 other followers