Quantcast
Channel: Infragistics Community
Viewing all 2372 articles
Browse latest View live

Infragistics WPF Release Notes – September 2015: 15.1, 14.2 Service Release

$
0
0

Release notes reflect the state of resolved bugs and new additions from the previous release. You will find these notes useful to help determine the resolution of existing issues from a past release and as a means of determining where to test your applications when upgrading from one version to the next.

Release notes are available in PDF, Excel and Word formats. The PDF summarizes the changes to this release along with a listing of each item. The Excel sheet includes each change item and makes it easy for you to sort, filter and otherwise manipulate the data to your liking.

In order to download release notes, use the following links:

WPF 2015 Volume 1 Service Release (Build 15.1.20151.2122)

Notes in PDF Format
Notes in Excel Format
Notes in Word Format

WPF 2014 Volume 2 Service Release (Build 14.2.20142.2283)

Notes in PDF Format
Notes in Excel Format
Notes in Word Format


Step by Step AngularJS for Beginners - Webinar Recap

$
0
0

On September 25th we hosted a webinar titled “Step by Step AngularJS for Beginners” for the Indian region and we’d like to share the presentation and recorded webinar with you now! In the webinar, we covered:

  • Introduction to AngularJS
  • Introduction to SPA
  • Controller and $scope object
  • Controller hierarchy
  • Service and factory methods
  • Routing
  • CRUD operations in AngularJS application

 

You can find recording of the webinar here:

[youtube] width="420" height="315" src="http://www.youtube.com/embed/u0OB2YQh8So" [/youtube] 

You can also find the presentation slides here.

Some of the questions from the webinar are below:

What is the $scope object

The $scope object glues the controller and the view in the AngularJS application. At the time of controller creation, we pass a $scope object as an input parameter to the controller. The controller attaches data and behavior to the $scope object to pass to the view.

Can we have multiple modules?

Yes an AngularJS application can have multiple modules. However it is recommended to have only one main module in the application. We set value of ng-app attribute to assign the main module.

What is a in ng-repeat =”a in authors”?

In ng-repeat directive, a is a variable. Using the variable a we will iterate through the authors array. You are free to give any name of the variable instead of a.

How do you rend Data from the Backend Database in the AngularJS?

You can do so using the following steps:

  • Write HTTP enabled service like WCF REST or Web API to perform CRUD operation on the database.
  • Create a custom AngularJS service either using factory method or service method. Use the $http service to make a call to the REST service or Web API
  • Use custom service in the controller by injecting service module in the controller module.
  • Attach returned data from the service to the controller $scope object.
  • Use the controller $scope at on the view and render the data from the database.

What is a Controller?

A controller is a JavaScript constructor function which hold application data and the business logic in AngularJS application. AngularJS creates a new object each time we use AngularJS controller.

What are Services?

Services are JavaScript functions that are created once per application. We can create services in AngularJS applications using service() , factory(), provider (), value() and constant() method. AngularJS provides us inbuilt services also like $q,$http etc.

What is $rootScope object?

$rootScope object is parent object of all the $scope objects in AngularJS. All the $scope objects has access to $rootScope properties.

Once again, thank you so much for your interest in our webinars – and we look forward to seeing you at a future webinar!

Preview - What’s Coming in 15.2

$
0
0

15.2 Volume Release is just around the corner and I wanted to give you a sneak peak of what is in store for this release!

When we ship in mid-October, you'll see new features, new updates and new controls across all platforms.  We are still heavily invested in rich-client platforms like WPF & Windows Forms, we are innovating and expanding modern mobile, web & MVC development with Ignite UI, we are releasing new exciting features for iOS and Android developers, and finally you will see leaps forward in the design-collaborate-develop story with Indigo Studio. 

Our core goals for Ultimate remain the same, enabling you to:

  • Build the Fastest and Easiest Office-Inspired, Touch-Enabled, Enterprise-Ready Apps
  • Target Connected Mobile Experiences across Desktop, Tablet & Phone
  • Easily Brand & Style Apps for any Platform
  • Rapidly prototype and collaborate on app experiences before you write any code

 

Let’s get into the essentials and see what we did to improve these core areas of investment.

Web

When it comes to modern web development, ensuring you can use your framework of choice is a must.  We are continuing to invest in key frameworks like Knockout & AngularJS, as well as expanding our Visual Studio MVC support.  In 15.2 we've put the major efforts in refactoring all data-editors from the ground up, bringing the TreeGrid to a mature state, adding features to the Combo, improving the Data Grid, and introducing a Scaffolder for ASP.NET MVC. The final goal is to greatly boost developer productivity and provide much better experience out of the box.

 

Windows Forms

Window Forms is still the most widely used platform for Enterprise apps – and we are still heavily invested in new features and updates to our already deep Windows Forms offering.  In 15.2 we are focusing on expanding the capabilities of the business ready data visualization offerings of the UltraDataChart control – we’ve added new visualizations, added features improved touch and spent a lot of time ensuring you have the same experience in Windows Forms as you’ve had in WPF, JavaScript, iOS & Android with the data visualization experience.  We’ve also added ready to use Office 2013 style library files for Outlook and Excel.  Most exciting for 15.2 is the new Spreadsheet control – based on the work we did on the XAML spreadsheet, you can expect a great Excel experience without the requirement of Excel in your Windows Forms apps.

 

WPF

WPF for 15.2 is very customer-focused.  We’ve spent most of our time going through the User Voice requests and adding the much-needed features that you’ve all voted on.  We added a new xamBusyIndicator to make it easy for reporting the progress of a long running, multi-threaded, process; data validation added to xamSpreadsheet; new features and methods added to the xamDataChart, WorksheetTable, xamDataGrid and many more – all done to give developers an overall better development experience.

Native Mobile

Both iOS and Android received updates in 15.2.  We are moving forward with our cross-platform strategy to ensure that you get the same experience in key controls across native mobile and HTML platforms.  Most of the work we did in 15.2 centered around the brand new Data Grid control – a responsive modern native grid that we redesigned for mobile experiences.  We’ve included cool features like async load on demand, smooth scrolling for unlimited data set sizes, animations on orientation change and more.  We’ve also RTM’d the data chart, pie chart, bullet graph, gauge and barcodes, so the docs are complete and you’ll get an overall better experience when using the Android product. 

 

There is more work we’ve done, and more exciting announcements coming when we ship 15.2.  Stay tuned for our in-depth blog posts on each Dev tools product to get an inside look on everything that we’ve been working on to add value to your subscription and help you deliver great experiences to your customers!

Answering What-if Scenarios on Your Mobile Device with ReportPlus

$
0
0

Chances are you’re familiar with what-if scenarios. By definition,  “A ’what-if analysis’ is a process which helps you evaluate the possible outcomes of an investment or business activity”. And while most might think it is only useful for sales opportunities, the key with what-if scenarios is the outcome. The process can be very useful to assess impacts, hypothesize on what the probable outcomes are, or even work on damage control.

  • Assessing impacts and hypothesizing are similar activities in that they imply you haven’t actually changed anything yet. You can use it to see what the probableoutcome of your decision/plan is (even though you might want to assess something while it’s happening).
  • Damage control, however, can be both part of your planning and/or a post-change activity. Again, this is not necessarily related to sales: you might, for example, be deciding on an action plan after a weather-related catastrophe, trying to manage a huge loss or deciding on what your ideal response should be as an event unfolds.


But how does this apply to ME?

Again, while priceless for salespeople, what-if analysis is not necessarily related to sales. Take a look at the following dashboard:

The price in this example, broken down by equipment type, was estimated for a 5-year construction. However, if the construction is extended due to unforeseen delays, prices are sure to go up. According to a forecast report done by Colliers International, construction costs for district malls are expected to increase by 5% in 2016, and an additional 6% by 2017.

To present this price fluctuation in your dashboard, you can include a Variable named “Increase” in the Global Filters and apply it to your widget.

You can then change the Variable value without entering Edit Mode, which will update the widget automatically.

So HOW can I try this for myself?

For more information on Dashboard Global Variables in ReportPlus, refer to the ReportPlus User Guide.

ReportPlusis a mobile business intelligence tool that not only empowers you to create dashboards, but also enables you to derive insights from your data as needed just like in the what-if analysis example above.

Interested on a step-by-step walkthrough? Let us know in the comments section below.

Download the full-featured app on iOS or the Android viewer today!

  

Hearing Your Experience

$
0
0

HearingYourExperience_SoundWaves

One of the first things that comes to mind when you hear the term “user experience” is a whiteboard littered with wireframe sketches. The design of mobile applications and websites has become the face of the user experience industry, but not all of the content we consume can be found on a screen. The rising popularity of audio content in the form of podcasts and audiobooks allows us to think about the user’s experience from a different angle. Designing what a person hears compared to what they see poses the question: Do people judge audio content by the same standards that apply to screen design?

An hour commute to work provides me the opportunity to listen to podcasts on a regular basis. Over months and months of listening I’ve gravitated towards my favorites because they consistently provide entertaining content. Whether its news, talk radio, or comedy, the same standards that I hold for websites and apps apply: if the content is not easily accessible, useful, or entertaining, I will most likely look for a better option. 

But engaging users with audio alone can be difficult. Because the content is being listened to rather than looked at, the user is forced to relinquish control and allow the information to be presented in a predetermined, linear fashion. This puts additional pressure on a podcast’s ability to hold the user’s attention, because if the conversation dies or the storyline becomes too difficult to follow, the listener will question their choice and look for something else. This is not case with a website, because the user determines the rate at which information is processed and is supported by a navigation system that provides a sense of structure and orientation. The user can casually browse through various pages or click straight to the thing they’re looking for. In the case of audio, the user is forced to evaluate the content second by second, at a pre-determined speed without the ability to control the interaction. The only choice afforded the listener is to turn it off or skip ahead in the hope it will improve.

Recently, a co-worker and I began producing a podcast that focuses on company culture, during which we interview employees about their work experience and personal lives. This involves recording interviews, editing audio files, and distributing the final product to employees. In the process of editing these episodes, I realized that I was using the same methods I had applied during more traditional UX consulting projects. In considering the listener’s point of view, I found myself validating editing decisions by asking: Who is this for? What is their purpose for using it? What is the best way to meet their needs? While the modality and the rate at which the user consumes information is different, the process of designing a great listening experience is not so different from designing a great visual experience (though captivating users without relying on visuals can be challenging). As UX Designers, our job and our process remains unchanged. We elicit user requirements, even the ones they can’t express, coordinate these with business requirements and technical constraints, and create enjoyable, intuitive experiences.

Developer Quotes: Edition 1

$
0
0

I've decided to delve into a fun little side project over the next few months, and put together some of my favorite coding/programming related quotes to share. I hope you enjoy, and if you have some you'd like to see illustrated, please share them in the comments!!

Share With The Code Below!

<a href="http://www.infragistics.com/products/aspnet;><img src=" http://www.infragistics.com/community/cfs-filesystemfile.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/d-coding/0741.10.jpg "/> </a><br /><br /><br />Developer Quotes <a href="http://www.infragistics.com/products/aspnet">Infragistics ASP.NET Controls</a>

Share With The Code Below!

<a href="http://www.infragistics.com/products/aspnet;><img src=" http://www.infragistics.com/community/cfs-filesystemfile.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/d-coding/5758.Alan.jpg "/> </a><br /><br /><br />Developer Quotes <a href="http://www.infragistics.com/products/aspnet">Infragistics ASP.NET Controls</a>

The Top 10 Microsoft SharePoint MVPs

$
0
0

Most of our readers will understand the term ‘most valuable player’ or ‘MVP’ in relation to the best player during the NFL, MLS or NBA season. The Most Valuable Professional award is Microsoft’s own take on an MVP, and is given to the brightest minds in selected fields. An awardee would be heavily involved in the Microsoft community, having contributed substantially to all things Microsoft:

“...community leaders who’ve demonstrated an exemplary commitment to helping others get the most out of their experience with Microsoft technologies. They share exceptional passion, real-world knowledge, and technical expertise with the community and with Microsoft.”

Much like in the NFL or NBA, there is no benchmark for becoming an MVP. It is a comparative award, in the sense that the award is given to the top performers amongst all candidates. Like the NFL would measure a Quarterback’s passing accuracy or completion percentage, some of the criteria that Microsoft takes into account is the impact of a nominee’s activities in online forums: Microsoft Answers, TechNet and MSDN, wikis and online content; conferences and user groups; web sites, blogs and more. Each nominee’s activities are compared to those of other candidates, and active MVPs receive the same level of analysis as new candidates each year.

There are currently over 100 candidates that hold the sought-after title of Microsoft MVP. However, even in a sea of Microsoft masters there’s always a bigger fish. We wanted to address the cream of the crop of Microsoft MVPs, and to do such we needed some form of categorization to decide who exactly were worthy of the top spots. We thought social influence was the best method of deciding this, and so we turned to Kred and their influence measurement system. “Kred Influence Measurement” is an openly-published algorithm that calculates a twitter user's influence based on the level of interaction they generate from their own content.

“Kred” values engagement and interaction over follower count, and this makes us different from traditional "most tweets" leaderboards.

Kred Influence is displayed as a point based score out of 1000, with points being awarded every time someone interacts with your content. These points come on a sliding scale, so if someone with 10,000 followers retweeted you it would count considerably more compared to someone with 200. This gives much more substance than a standard “who has the most followers” approach, and so will give a better reflection of who truly has the most impact on our social media lives.

So, without further ado, here are the Top 10 SharePoint MVPs! 

1. Dan Usher

FairFax, VA

@binarybrewery

Topping our list with a Kred score of 899/1000, Dan Usher earns the number 1 spot for all Microsoft MVPs. His second MVP award in consecutive years, Dan is a Lead Associate at Booz Allen Hamilton where he is a lead SharePoint Solutions Manager and Architect. Congratulations Dan!

2. Dux Raymond Sy

Washington, DC

@meetdux

Our runner-up is Dux Raymond Sy, author of “SharePoint for Project Management”. Dux is the vice president for customer strategy & solutions of AvePoint Public Sector, focused on delivering strategic customer solutions that impact positive transformation. Dux had a Kred Influence score of 836.

3. Marc Anderson

Boston, MA

@sympmarc

The bronze medal goes to Marc Anderson, Co-Founder and President of Sympraxis Consulting LLC. Over 30 years of experience in technology professional services and software development earned him a Kred Influence rating of 829, allowing him to add 3rd place in our list to his array of accolades including 5 Microsoft MVP awards since 2011.

4. Christian Buckley

Seattle, WA

@buckleyplanet

Clinching 4th place is the Chief Marketing Officer at Beezy Inc. Christian was instrumental in the acquisitions of two SharePoint ISVs: echoTechnology and Axceler. He previously worked at Microsoft as part of the enterprise hosted SharePoint platform team. Christian achieved a Kred score of 825, and has the most followers out of anyone on this list with a massive 19,800.

5. Fabian Williams

Washington, DC

@fabianwilliams

A Kred Influence score of 797 landed Fabian Williams with the no. 5 spot on our list. He is a SharePoint Architect at Planet Technologies, Inc. in the Federal Information Worker Practice. This is Fabian’s second consecutive Microsoft MVP award and you can check out his bloghere.

6. Laura Rogers

Birmingham, AL

@wonderlaura

Laura is a senior SharePoint consultant at Rackspace and has 12 years of experience in SharePoint implementation, training, customization and administration. She has written several SharePoint books, works extensively with SharePoint Designer workflows, and builds no-code business solutions making her an all-round SharePoint guru.

7. Andrew Connell

Saint Johns, FL

@andrewconnell

A Kred Influence Rating of 784 earned Andrew the 7th spot on our list. With 11 consecutive MVP awards since 2005, Andrew has a background in content management solutions and web development that spans back to his time at the University of Florida in the late 1990s, giving him a lifetime of experience.

8. Spencer Harbar

Edinburgh, UK

@harbars

The 8th member of our Top 10 SharePoint MVP list is Spencer Harbar, the only person to hold all of the Microsoft Certified Master, Certified Solutions and Certified Architect SharePoint certifications. Spencer earned a Kred Influence score of 777, but compared to his 20 years of industry experience and an incredible 12 consecutive Microsoft MVP awards since 2004, we don’t think he’ll get too worked up about it.

9. Wictor Wilen

Sweden

@wictor

Wictor has been working with SharePoint since 2001 on collaboration, document management and intranet/extranet solutions. He has released one book: “SharePoint 2010 Web Parts in Action” and is a co-author to “Inside Microsoft SharePoint 2013”. Wictor’s Kred Score of 772 earns him the final spot on our list.

10. Kanwal Khipple

Toronto, Canada

@kkhipple

The final spot on our list goes to Kanwal Khipple, who actually has the most Twitter followers on our list with a massive 25,300 followers. Kanwal is the Founder of 2toLead and is a leading UX expert within the SharePoint industry, and earned a Kred Influence Rating of 771.

Have you already tried Infragistics SharePlus, an industry-leading native mobile SharePoint solution that keeps your teams productive on the go? Sign up for a SharePlus Enterprise demo today.

SharePlus - Your Mobile SharePoint Solution

Developer News - What's IN with the Infragistics Community? (9/21-10/4)

$
0
0

Honestly you all have stumped me this time! I can't think of anything that's tying these articles together aside from the fact that they're all incredibly interesting! So... check them out, enjoy, and I hope you learn something!

6. Deepomatic Grabs $1.4 Million for its Deep Learning Visual Search Technology (TechCrunch)
5. How Web Designers & Developers Work Best Together (WebDesignLedger)
4. What is UX Design? 15 User Experience Experts Weigh In (UserTesting)
3. How to Think About Security at Startups - It's a Neverending Job (Buffer)
2. Version Control Guidance - Alternative Branching Strategies (MSDN Blogs)
1. The Research Funnel (Collectively Emma Boulton)


The Top 5 New Features in C#6.0

$
0
0

 

Visual Studio 2015 recently introduced a new version of C# named C#6.0. I would not say it has major features added like Extension Method or LINQ in C# 3.0 or Async/ Await in C# 5.0.  However it has many features that simplify the syntaxes and improve the readability of the code. Major C# 6.0 features include:

·        Initializers for auto-properties

·        Getter-only auto-properties

·        Expression-bodied function members

·        Using the static statement

·        Null-conditional operators

·        String interpolation

·        nameof expressions

·        Index initializers

·        Exception filters

·        Await in catch and finally blocks

·        Extension Add methods in collection initializers etc.

In this post, I will discuss the top 5 five features of C# 6.0 (according to me J).

 

Auto-property initializers

In C# 6.0, a new feature has been added to set the default values of the public properties, called Auto-property initializers. Using the auto-property initializers, we can set default values to the properties without having to use a constructor.  Let us consider a simple example of the Author class as shown in the listing below:

 

publicclassAuthor

    {

        publicstring  Name  { get; set; }

        publicint Articles { get; set; } = 10;

    }

 

As you notice in the above listing, the default value of the Articles property is set to 10. So while creating the object, if the value of the Articles property is not set then it would be set to the default value 10. In the below listing, we are not setting the value of the Articles property of the object a, hence it is set to the default value of 10.

 

            Author a = newAuthor { Name = "DJ" };

            Console.WriteLine(a.Name + " has authored " + a.Articles + " articles");

            Console.ReadKey(true);

 

The auto-property initializer sets the value of the property directly into the backing field without invoking the setters. Prior to C# 6.0, we used to create read only properties by creating a private setter and then setting the value in the constructor. However in C#6.0, using the auto-property initializer, a read only property can be easily created as shown in the listing below:

publicclassAuthor

    {

        publicstring  Name  { get; set; }

        publicint Articles { get; } = 10;

    }

 

Creating a read only property with a default value is now super easy using the Auto-property initializer, making it one of my favorite feature of C# 6.0. 

 

Support of using static statement for static members

Like me, do you also get tired of using the static class name each time while calling a method of the static class? For example, if you want to use the WriteLine of the static class Console, each time you need to use Console.WriteLine(“”). Again, this is not the biggest problem but still it annoys. C# 6.0 solves this problem by allowing us to make static members of a type available without the type prefix via new static directives.  So we can simplify the use of the static class methods as shown in the listing below:

 

usingstatic System.Console;

 

namespace ConsoleApplication1

{

    classProgram

    {

        staticvoid Main(string[] args)

        {

 

            Author a = newAuthor { Name = "DJ" };

            WriteLine(a.Name + " has authored " + a.Articles + " articles");

            ReadKey(true);

           

        }

    }

 

In the above snippet, we are including the System.Console class by using thestatic statement and then using methods like WriteLine, ReadKey etc. without having each time to add the class name of Console. This makes the code much cleaner.

 

String Interpolation

Remember string.format() ? We used that to perform string interpolation before C# 6.0. You may not have used it that much, but still it was complex to use, requiring you to match the exact variables name with the sequence to get expected output. Consider the listing below:

staticvoid Main(string[] args)

        {

            string name = "dj";

            int age = 33;

            string message = string.Format("{0} is {1} years old", name, age);

            string wrongmessage = string.Format("{0} is {1} years old", age, name);

            WriteLine(message);

            WriteLine(wrongmessage);

            ReadKey(true);

           

        }

 

As you notice in the above listing in the variable wrongmessage, an unexpected value would get assigned because we have provided the wrong sequence of the variables. This is the problem with the string.format(). You will get output as shown below:

 

 

In C# 6.0, string interpolation is much simpler. Using the $ now, string interpolation can be done as shown in the listing below:

staticvoid Main(string[] args)

        {

            string name = "dj";

            int age = 33;           

            string message = $"{name} is {age} years old";

            WriteLine(message);

            ReadKey(true);

           

        }

 

As you see we are directly passing the variable name in the {}. This avoids the sequence problem of variables in string.format.

 

Exception Filter

One of my most favorite features of C# 6.0 is the Exception Filter. This allows an exception to be caught in the CATCH block, only a specified condition is met when the exception is thrown. Prior to C# 6.0, we did not have any mechanism to filter the exception in the catch block. We used the if-else statement in the same catch block to bring some sort of filter. To understand it better, let us consider the listing below:

staticvoid Main(string[] args)

        {

            int number = 24;

            try

            {

 

                int rem = number % 0;

                WriteLine(rem);

            }

            catch (DivideByZeroException ex)

            {

                Console.WriteLine(ex.Message);

            }

                    

            ReadKey(true);           

        }

 

 

The major problem in the above snippet is that we cannot apply a filter in the catch block. In C# 6.0, the exception filter can be applied as shown in the listing below:

 

   staticvoid Main(string[] args)

        {

            int number = 24;

            try

            {

                int rem = number % 0;

                WriteLine(rem);

            }

            catch (DivideByZeroException ex) when (ex.Message.Contains("dj"))

            {

               WriteLine(ex.Message);

            }

            catch (DivideByZeroException ex) when (ex.Source == "ConsoleApplication1")

            {

                WriteLine(ex.Source);

            }

 

            ReadKey(true);

        }

 

In C#6.0 using “when”, we can filter the exception. In the above snippet in particular, the catch statement will be thrown only when the condition in the when statement is true. The filtering exception could be very useful here.

 

Null Conditional Operators

Who hasn’t heard of NullReferenceException? I am sure all of us. To avoid this, we use enormous If conditions for null checking.  

Let us consider the code listing below. We have a list of “Author”. Before fetching the Name of a particular Author, we are performing the null checking in if statement. If we do not do that, a NullReferenceException will be thrown.

staticvoid Main(string[] args)

        {

            Author author = null;

            List<Author> lstAuthors = newList<Author>();

            lstAuthors.Add(author);

            foreach(var a in lstAuthors)

            {

                if (a != null)

                {

                    var name = a.Name;

                    WriteLine(name);

                }

            }

 

            ReadKey(true);

        }

 

In C#6.0, we can avoid if statements by using Null Conditional Operators.  We can rewrite the above code for the null checking as shown in the listing below:

staticvoid Main(string[] args)

        {

            Author author = null;

            List<Author> lstAuthors = newList<Author>();

            lstAuthors.Add(author);

            foreach(var a in lstAuthors)

            {

                var name = a?.Name;

                Write(name);

            }

 

            ReadKey(true);

        }

 

In C#6.0 it is very easy to do the null reference checking using the null conditional operator (?). I am sure this feature would be wildly used, hence it’s one of my favorite features of C# 6.0.

So there we have it – my top five features of C#6.0. What are yours? In further posts, I explore others, but share your favorites in the comments. Thanks for reading!

 

Does IG TestAutomation for HP support Citrix?

$
0
0

The short answer is yes, the longer answer though depends on several factors. First if your version of HP testing software supports your Citrix server in your environment. Second is all of the following needs to be installed on the client, the HP testing software, the Application Under Test, and IGTestAutomation dll's.

Below is a chart and additional information provided by HP that goes into more detail on the subject.

 

Supported versions

Citrix MetaFrame Presentation Server

QTP 11.0

UFT 11.5x GUI

UFT 12.00 GUI

UFT 12.01 GUI

UFT 12.02 GUI

Version 4.0

Yes

No

No

No

No

Version 4.5

Yes

Yes

No

No

No

Version 5

Yes

Yes

Yes

No

No

Version 6 (Xenapp)

Yes

Yes

Yes

Yes

Yes

Version 6.5

No

Yes

Yes

Yes

Yes

Version 7 (XenDesktop)

No

No

No

Yes (TPL)

Yes

Version 7.6 (XenDesktop)

No

No

No

No

Yes (TPL)

Notes:

  • "XenApp" is the new name for newer versions of Citrix (6 and higher). For more information see http://en.wikipedia.org/wiki/Citrix_XenApp

  • "Citrix XenDesktop" isn't supported by UFT 12.00 and prior versions. UFT 12.01 offers "Technology Preview" (TPL) support. 
     
  • If QTP 11 isn't viewing run results on Citrix XenApp 6, check with HP Support about testing Hot-Fix QTP_00857 (This is a private patch only provided by HP Support, so if needed, please submit a case)

 

Scope of support (What Citrix implementation is supported)

(IMPORTANT) Requirements: To record and replay against application(s) hosted on a Citrix environment, both QTP / UFT and application under testing (AUT) must be:

  • Installed on the same machine (usually the server).
  • Running within the same Citrix session.

Example Scenario 1:

  • Application Under Testing (AUT) Location: Installed and hosted on Citrix server
  • QTP / UFT Location: Installed on client
  • Status: Not Supported
     
  • Notes: If try to record and replay against the application, QTP / UFT will not recognize individual objects. In fact, QTP / UFT will view the entire session Window as one object.  

    Not Supported
     

Example Scenario 2:

  • Application Under Testing (AUT) Location: Installed and hosted on Citrix server
  • QTP / UFT Location: Installed and hosted on Citrix server
  • Status: Supported.
  • Requirement:Both QTP and AUT must be under same Citrix Session (this may require special configuration). See illustration below to check recommended scenario where support works appropriately
     
  • Notes: Citrix hosting a virtual version of a Windows operating system and within such, both QTP / UFT and the AUT are installed; QTP / UFT will be able to interact virtually with any item/element/program installed on such operating system as if it were a physical operating system. This is normally seeing as "using the same session"


    Supported
     

Tip: One way to determine if the recognition works fine on against Citrix session

When using the Object Spy, the pointy hand cursor (when actually spying) remains the same (stays as pointy-hand-cursor, instead of the default icon/cursor, such as the pointing-arrow). If it changes back while still actually spying (while hovering mouse on top of desired application to spy), AUT and QTP / UFT are not using the type of same session required.

License Requirements

It is required to use a concurrent (floating) license to operate QTP / UFT in a Citrix environment. 


    More feedback

    From documentation:

    When running QTP/UFT on a remote machine using a Remote Desktop Connection session (RDC) or using Citrix, if the remote session is minimized during the run session, or if the computer on which the application is being tested is logged off or locked, the following problems may occur:
    • the test or component run session may fail
    • steps that contain keyboard or focus operations may fail
    • the Test Results still image capture and/or the Mercury Screen Recorder may display a black screen
    • steps for which the device level replay is configured to use the mouse (instead of browser events) to run mouse operations may fail. (Set the device level replay using a Setting.WebPackage("ReplayType") statement or by setting the Replay type option in the Advanced Web Options dialog box.)
    Workaround: If using Citrix or a Remote Desktop Connection session to run a test or component, do not minimize the session window, and make sure that the computer on which the application is being tested is not logged off or locked.

    Exploring Interop Communication

    $
    0
    0

     

    1. Introduction

    Believe it or not, there are still many projects for which original development began in the 1990’s. This is mostly because it is impossible to completely migrate from old programming languages and environments. So to manage that, a good idea might be to develop and integrate new features written in the .NET framework. There are several ways of running .NET code from native code, but in this article we will focus on two methods:

    ·        C++/CLI

    ·        Unmanaged Exports

    The figure below presents an architecture of our example. In this post, we are going to standardize the method of logging in the entire application by using single library called Intercom.Logger. That library uses a popular log4net library for writing log messages. Intercom.Logger can be successfully used in any managed code, but we are going to use it in C++ application.

    Figure 1 - Architecture diagram

    2. Creating an Intercom solution

    For the purpose of this article it is necessary to create a new solution named Intercom with two projects: Intercom.Logger and Intercom.Client.

    Intercom.Logger

    Intercom.Logger is a managed library responsible for appending the log file. For this purpose, an external library called log4net will be used.

    1.      Open the Visual Studio and create a new solution named Intercom with the Intercom.Logger class library project.

     

    Figure 2 - Creating Intercom solution and Intercom.Logger Class Library.

    2. Install log4net for Intercom.Logger project by using NuGet.

     

    Figure 3 - Log4Net reference.

    3. Create the following class in Intercom.Logger project.

    namespaceIntercom.Logger

    {

        usinglog4net;

        usinglog4net.Appender;

        usinglog4net.Core;

        usinglog4net.Layout;

        usinglog4net.Repository.Hierarchy;

     

        publicstaticclassLogger

        {

            privatestaticreadonlyILogMyLog;

     

            staticLogger()

            {

                var hierarchy = (Hierarchy)LogManager.GetRepository();

     

                PatternLayout patternLayout = newPatternLayout();

                patternLayout.ConversionPattern = "%date [%thread] %-5level %logger - %message%newline";

                patternLayout.ActivateOptions();

     

                FileAppender appender = newFileAppender();

                appender.File = @"Logs.txt";

                appender.Layout = patternLayout;

                appender.ActivateOptions();

     

                hierarchy.Root.AddAppender(appender);

     

                hierarchy.Root.Level = Level.Info;

     

                hierarchy.Configured = true;

     

                MyLog = LogManager.GetLogger(string.Empty);

            }

     

            publicstaticvoidLog(string message)

            {

                MyLog.Info(message);

            }

        }

    }

     

     

    Figure 4 - Logger class.

    Intercom.Client

    The Intercom.Client is a native Win32 application that needs a logging feature.

    1. In the solution created in the previous section, add a new C++ Win32 Console Application project named Intercom.Client.

    Figure 5 - Intercom.Client

    2. Include Windows.h in the stdafx.h header file.

    // stdafx.h : include file for standard system include files,

    // or project specific include files that are used frequently, but

    // are changed infrequently

    //

     

    #pragmaonce

     

    #include"targetver.h"

     

    #include<stdio.h>

    #include<tchar.h>

     

     

     

    // TODO: reference additional headers your program requires here

    #include<Windows.h>

     

    Figure 6 - stdafx.h header file content.

    3. Creating interop projects

    After creating the Intercom solution, there are two independent components:

    ·        Intercom.Client unmanaged native Win32 Console Application

    ·        Intercom.Logger managed .NET Framework Class Library

    The goal is to use the logging feature exposed by Intercom.Logger library in the  Intercom.Client application. Intercom.Client is a native unmanaged application so it cannot directly reference and call Intercom.Logger. It is necessary to create some kind of interop/proxy library.

    Figure 7 - Already implemented components.

    Intercom.Logger.UnmanagedExports

    Unmanaged exports is one way of exposing managed C# code to unmanaged native code. The main idea is to decompile an already compiled module into IL code, change module's VTable and VTableFixup tables and recompile the DLL. This operation can be performed invisibly to the developer by using NuGet package called UnmanagedExports. That package contains library with DllExport attribute and MSBuild project that automatically changes module's tables.

    1. In Intercom solution add a new C# Class Library project called Intercom.Logger.UnmanagedExports.

    Figure 8 - Adding Intercom.Logger.UnmanagedExports project.

    2. For a newly created project install a NuGet package called UnmanagedExports.

    Figure 9 - Installing UnmanagedExports package.

    3. Add Intercom.Logger reference.

     

    Figure 10 - Adding Intercom.Logger reference.

    4. Create a LoggerUnmanagedInterop proxy class.

    The method exposed to unmanaged native code must be decorated with the DllExport attribute.

    namespaceIntercom.Logger.UnmanagedExports

    {

        #region Usings

        usingSystem.Runtime.InteropServices;

        usingRGiesecke.DllExport;

        #endregion

     

        publicstaticclassLoggerUnmanagedInterop

        {

            [DllExport("LoggerUnmanagedInterop_Log", CallingConvention = CallingConvention.StdCall)]

            publicstaticvoidLog(

                [MarshalAs(UnmanagedType.LPStr)] string message)

            {

                Logger.Log(message);

            }

        }

    }

     

    Figure 11 - LoggerUnmanagedInterop class.

    5. Add the following post-build event command to copy binaries to the Intercom.Client output directory.

    copy $(TargetDir)*  $(SolutionDir)$(Configuration)\

     

    Figure 12 - Adding post-build event.

    6. In the build settings, change the platform target to x86 for All Configurations.

    7. Edit the Interop.Client.cpp main procedure and call method exposed by UnmanagedExports assembly.

    #include"stdafx.h"

     

    // Define the type of exposed procedure.

    typedefVOID (CALLBACK* LOG)(char message[]);

     

    int_tmain()

    {

           // Load Intercom.Logger.UnmanagedExports.dll

           HMODULE hUnmanagedExports = LoadLibraryW(TEXT("Intercom.Logger.UnmanagedExports.dll"));

           if (hUnmanagedExports == NULL){

                 printf_s("Failed to load Intercom.Logger.UnmanagedExports.dll");

                 return -1;

           }

     

           // Load ManagedLogger_Log procedure.

           LOG log = (LOG)GetProcAddress(hUnmanagedExports, "LoggerUnmanagedInterop_Log");  

           if (log == NULL){

                 printf_s("The address of LoggerUnmanagedInterop_Log procedure is unknown");

                 return -1;

           }

     

           // Call exposed procedure.

           log("Message to be logged");

     

           return 0;

    }

     

    Figure 13 - Using exposed managed procedure in unmanaged C++ code.

    8. Build the solution.

    9. Navigate to the Release/Debug folder in the root solution directory. The directory should contain Intercom.Client.exe and files copied by build-event of Intercom.Logger.UnmanagedExports library.

    Figure 14 - Release/Debug directory.

    After executing Intercom.Client.exe the log file should be created.

    Figure 15 - Execution result.

    From now the native program Intercom.Client uses the logging feature from Intercop.Logging by calling the procedure exported in Intercom.Logger.UnmanagedExports.

    The figure below shows how the architecture was implemented by using UnmanagedExports. Intercom.Logger.UnmanagedExports can be used in any language that supports dynamic DLL loading: C, C++, Clarion, VBA and so on.

    Figure 16 - Already implemented components.

    Intercom.Logger.CLI

    The second way of exposing .NET methods for native code is by creating a C++/CLI library. C++/CLI is a language specification created and intended to supersede Managed Extensions for C++. It can be said that the library written in C++/CLI is a kind of hybrid of C++ and C#.

    1. Add a new project called Intercom.Logger.CLI

    Figure 17 - Adding CLI project.

    2. Add Intercom.Logger reference.

    Figure 18 - Adding Intercom.Logger reference.

    Figure 19 - Adding Intercom.Logger reference.

    3. Add CliLog function header to the Intercom.Logger.CLI.h file

    #pragmaonce

     

    usingnamespace System;

     

    extern"C"_declspec(dllexport)  void__stdcall CliLog(char message[]);

     

    Figure 20 - Intercom.Logger.CLI.h header file.

    4. Implement CliLog function in Intercom.Logger.CLI.cpp file

    #include"stdafx.h"

     

    #include"Intercom.Logger.CLI.h"

     

    void__stdcall CliLog(charmessage[])

    {     

           Intercom::Logger::Logger::Log(gcnewString(message));

    }

     

    Figure 21 - CliLog function implementation.

    5. Create a file with the export procedures definitions named Exports.def with the following content:

    LIBRARY Intercom.Logger.CLI.DLL

    EXPORTS

       CliLog          @4

     

    Figure 22 - Exports.def file content.

    That file contains definitions of procedures that will be exported. The @4 expression represents the number of bytes taken in arguments. In this case message[] parameter is 32 bit pointer, so it's size is equal to 4 bytes.

    Make sure the file properties look like the following:

    Figure 23 - Exports.def file properties.

    The Exports.def file should be also included in project properties like in the figure below:

    Figure 24 - Including Exports.def in project properties.

    6. Add the following code to the Intercom.Client.cpp:

    // Load Intercom.Logger.CLI.dll

    HMODULE hCli = LoadLibraryW(TEXT("Intercom.Logger.CLI.dll"));

    if (hCli == NULL){

           printf_s("Failed to load Intercom.Logger.CLI.dll");

           return -1;

    }

     

    // Load Log procedure.

    LOG logCli = (LOG)GetProcAddress(hCli, "CliLog");   

    if (logCli == NULL){

           printf_s("The address of Log procedure is unknown");

           return -1;

    }

     

    // Call exposed CLI procedure.

    logCli("Message from CLI");

     

    7. Rebuild and run the Intercom.Client project.

    CLI and client binaries will be automatically copied to the same directory. It is not required to add any post-build events in this case. After running, the file Logs.txt should contain also the message added by calling CliLog() export.

    The figure below shows the already implemented features. This time the Intercom.Client application uses the CLI library to execute managed code from Intercom.Logger.

    Figure 25 - Architecture diagram.

    4. Summary

    The main goal of this article was to show how to call managed .NET code from an unmanaged native C++ application. The examples are very simple but may prepare a good groundwork for extending enterprise applications written in C++/Clarion/VBA or other languages which may benefit from DLL exports. The Log() procedure contains only one argument: char array, but it is possible to pass other types and entire structures. More information can be found in the sites listed below, and you can also find a link to the sources used in this article as well:

    DLL Export Viewer can be useful for browsing DLL exports:
    http://www.nirsoft.net/utils/dll_export_viewer.html

    More information about UnmanagedExports:

    https://sites.google.com/site/robertgiesecke/Home/uploads/unmanagedexports

    https://www.nuget.org/packages/UnmanagedExports

     

    To see the sources for this project, download the zip file of all documents here.

     

    Want to build your desktop, mobile or web applications with high-performance controls? Download Ultimate Free trial now and see what it can do for you!

     

    Getting started with TypeScript

    $
    0
    0

     

    TypeScript is superset of JavaScript created by Microsoft. TypeScript – according to its website – “lets you write JavaScript the way you really want to. TypeScript is a typed superset of JavaScript that compiles to plain JavaScript”.

     Some features of TypeScript include:

    ·        Support standard JavaScript

    ·        Static typing

    ·        Encapsulation using the classes and the modules

    ·        Constructors, properties and functions supports

    ·        You can define interface

    ·        Lambda support Lambda support

    ·        Syntax checking

    ·        Type annotations

    ·        Static or dynamic loading of module contents

    TypeScript can be summarized in the following points:

    ·        TypeScript is syntactic sugar for JavaScript

    ·        TypeScript syntax are the superset of ECMASCRIPT 5 syntax.

    ·        TypeScript compiler converts or compiles the TypeScript file into a JavaScript file locally.

    ·        TypeScript does not reorder the variable declaration

    ·        TypeScript syntax includes various proposed features of ECMASCRIPT 6

    ·        TypeScript complies with module codes generation which can by loaded statically or dynamically.

    ·        TypeScript works with type inference

    This post will help you to get started with TypeScript, setting up the environment for TypeScript development in the Visual Studio and Sublime Text. At the end of the post we will create a simple TypeScript program in Visual Studio.

     

    TypeScript in Visual Studio

    To work with TypeScript in the Visual Studio, download the package from the URL below:

    http://www.typescriptlang.org/#Download

     

     

    Download and install TypeScript package for the cross ponding version of the Visual Studio installed on your machine. After successful installation of the TypeScript package, you will find HTML Application with TypeScript project template inside the TypeScript section of the installed template as shown in the image below:

     

     

    Create a project using the HTML Application with TypeScript template. After successful creation of the project, in the solution explorer you will find the project created with the following files.

     

     

    In the project app.ts you’ll find a TypeScript file. Whenever you save this file in the background, Visual Studio will create a JavaScript equivalent of app.ts with the name app.js. In the index.html, you will notice that a reference of complied JavaScript file app.js is added.

     

    As you might have noticed that app.js file is in the same folder with the app.ts file and it is not included in the project. However if you want you can include the app.js file in the project.

    The file app.ts contains a reference code to print the current time in TypeScript. Without changing anything, go ahead and run the application in your favorite browser and you will have the current time printed in the browser using TypeScript as shown the image below:

     

    You can add more than one TypeScript file in the project by right clicking on the project and then Add New Item and then select TypeScript file. After adding the file when you build the project, Visual Studio will create corresponding JavaScript files in the same folder of TypeScript files. You need to manually add references of JavaScript files on the HTML.

     

    TypeScript in Sublime Text

     

    To work with TypeScript in the Sublime Text, we need following two items:

    1.      Syntax Highlighter

    2.      Custom build for TypeScript

     

    To install the TypeScript syntax highlighter for Sublime text navigate to https://github.com/Microsoft/TypeScript-Sublime-Plugin and clone the package in the \AppData\Roaming\Sublime Text 2\Packages using the git clone command as shown in the image below:

     

    Once successfully cloned, create a file with extension .ts in Sublime Text and you will find that TypeScript syntax is working as shown in the image below:

     

    You can create the TypeScript build system for Sublime Text by navigating to Tools->Build System-> New Build System.

    In the New Build System window, paste the code below and save the file with any name like TypeScriptBuild or something similar.

     

    {

        "selector": "source.ts",

        "cmd": ["tsc", "$file"],

        "file_regex": "^(.+?) \\((\\d+),(\\d+)\\)(: .+)$"

    }

     

    After custom build creation, select Tools->Build System-> TypeScriptBuild (or whatever name you gave your custom build) and you should able to use Ctrl+B  to build TypeScript in Sublime Text. As an output you will find a JavaScript file has been created.

     

    A simple example

    Using the TypeScript, let us create a class. TypeScript allows us to create a class using the very simple syntax. A class can be created using the class keyword. We can define variables with the types, and a constructor can be created using the keyword constructor.

    In the below listing, we are creating a Student class with two properties, constructor and a method. The class can be created as shown in the listing below:

     

    class Student {

        name: string;

        age: number;

        constructor(name: string, age: number) {

            this.name = name;

            this.age = age;

        }

     

        Print() {

     

            alert(this.name + " is " + this.age + " years old !!");

        }

    }

     

    window.onload = () => {

        var stud1 = new Student("DJ", 33);

        stud1.Print();

    };

     

    We can create an object using the new keyword. In the Student class Print method, we are displaying the age and name of the student.

    When you run the application you will get an alert message as shown in the image below:

    I hope you find this post useful to get started with TypeScript - have something to say? Leave a comment!

     

    Want to build your desktop, mobile or web applications with high-performance controls? Download Ultimate Free trial now and see what it can do for you!

     

    Interactive Working and Collaboration in ReportPlus

    $
    0
    0

    The term data usually refers to information which has been formatted in a particular way. As we know, data is a hugely valuable tool in the world of business and collaboration. It can exist in many forms, ranging from memories in our minds, to the mega and gigabytes we store in the electronic memories of our machines. We have even amassed data about data, which is more commonly referred to as Metadata and describes how and when a particular piece of data was collected and formatted.

    One fairly recent addition to the world of Data is called “Big Data”. Big data is large pools of information that can be collated and analyzed to help identify patterns and trends, which can then be used to influence better decisions. Many people believe that this will become the future for the growth of big businesses by enabling us to enhance current levels of productivity and improve ways of interactive working.

    When big data is combined with the data users generate when working in collaboration, it can often be difficult to know how to make the most effective use of all this information. This issue is compounded by the fact that much of our daily work is now conducted on mobile devices and on the move. Excel, once the go to tool for data manipulation, is no longer the obvious answer (Its mobile variants aren’t quite in the same league as the desktop version). So what approach to take?

    ReportPlus is an answer

    ReportPlus enables users to easily participate in both data discovery and visualization, whilst simultaneously ensuring they are never too far away from the latest information. This helps users to make well informed decisions in real time, which is something that could typically only be achieved retrospectively before. Being equipped with the tools to quickly have the latest information helps users to be confident in their ability to make the best and most well informed decisions in real time.

    One of the key features of ReportPlus is the ability to create an interactive dashboard directly from the mobile app. This is a service that is unique to ReportPlus and makes a massive difference to genuine productivity.

    Simple example - during a sales pitch meeting ReportPlus allows salespeople to not only access sales data right there and then, but present it in a way that makes sense to the people in the meeting. No need to stop the meeting, go and find a copy of something like Excel and start to draw conclusions from tables of numbers.

    The Enterprise version of the app includes a plethora of features that will cater to the needs of the more advanced users, including advanced data protection and connectivity options like Oracle and Salesforce. Three other key features we believe make it an essential part of the BI solutions of today’s enterprise.

    1. Easy Collaboration with Colleagues

    ReportPlus enables us to work with an efficient and easy to use communication and sharing platform. Your colleagues and fellow team members can share dashboards and reports with you directly via the app or send files without changing the screen. The app also has annotation and commenting features so that you can communicate your thoughts on sections of the dashboards. Exporting directly to Microsoft Word, PowerPoint or PDF is another handy feature that helps teams collaborate and present their data insights.

    2. Interactive Customization Options

    The ability to add customized charts and pivot tables will bring your data to life. We can now communicate our KPIs like never before by connecting ReportPlus to our SharePoint lists and Excel files. This even helps our colleagues to make better decisions when sharing data reports with them. Your reports can be fully customized with clean eye-catching designs which should ensure your team are drawn towards the important insights in your data

    3. A Wide Variety of Data Sources Available

    The ability to give yourself access to your data regardless of where it’s stored is an essential feature of ReportPlus. The multi-data source joining capabilities also allow us to create dashboards that connect even the most obscure pieces of data in the same view. We’re now able to create dashboards from virtually any source and connect them all in the same view.

    Enabling New Ways of Interactive Working

    If you want to support better interactive working within your team then ReportPlus is a powerful option. Mobile working is an important aspect of the future of successful collaboration and Big Data is slowly solving the problem of sample sizes being too small to draw conclusions from. ReportPlus combines all of these elements in an app that makes it easy to manipulate and visualize data in real-time.

    Making Big Data Useful: Design, UX and Innovation

    $
    0
    0

    On October 23-24, 2015 I’ve been invited to speak at the User Centered Design (UCD) conference held annually in London. This is a more interesting conference than most (to me) because the talks center around the disruptive and transformative power of design rather than the usual UX presentation topics.

    My talk, entitled Making Data Useful: Design, UX and Innovation, focuses on how the design process can be applied to the problem of large data sets. Most importantly, I discuss that while there is a lot of discussion about how big data holds the promise of business growth, large scale innovation, and, perhaps most importantly, insight, there is one fundamental problem: People neither act on, nor infer insight from, data. In fact, unless you’re a machine, data on its own is useless. Someone needs to translate the data into information. And it’s not easy to do (even if you realize that it needs to be done).

     big_data

    Some businesses have begun hiring specialized data analysts to apply machine learning, data compression and other complex algorithmic processes in order to expose statistical relationships between data elements. This approach looks for structure and then attempts to assign meaning. That’s one problem. Another lies with the fact that the larger the data set, the more likely “significant” results will be due to chance.

    Most businesses, however, don’t understand the difference between data and information and focus instead on converting data into charts and graphs – dashboards. While dashboards may look nicer than spreadsheets, they are usually just visual representations of data. (However, take a look at some work by the talented UX people at Infragistics to see what can happen when dashboards are done right). The dashboard user is left with the unenviable task of trying to translate the data into a form that is both meaningful and actionable (re: information).

    My presentation demonstrates how applying the design process to the problem of large data sets can bridge the gap between the technical challenge of data collection and the human challenge of data interpretation. If you’re in London, stop on by – the first pint is on me.

    Big Data” image courtesy of Spencer Levine.

    ---------------------------------------------------------

    Kevin Richardson has been working in the area of user experience for 25 years. With a PhD in Cognitive Psychology, he has experience across business verticals in the fields of research, evaluation, design and management of innovative, user-centered solutions.

    Kevin’s experience includes web sites, portals and dashboards, enterprise software and custom business applications for medical, pharmaceutical, communications, entertainment, energy, transportation and government users.

    On the weekends, you can find Kevin on his motorcycle, racing for Infragistics Racing at a number of different racetracks on the East coast.

    What's new in Indigo Studio 2015 Vol.2

    $
    0
    0

    It’s full of much requested features, and we know that you are going to love it! :)

    FYI, we are changing how we name major releases for Indigo Studio. Instead of calling it version 6.0, it’s now Indigo Studio 2015 Vol.2. The first number is for the year of release (e.g., 2015) and the volume number indicates whether it’s the first or second major release for that year (e.g., Vol. 2). In addition to the two major releases every year, we ship periodic updates. The update number is appended to the major release name. For example, Indigo Studio 2015 Vol. 2 (Update 1).

    We feel this naming convention will be simpler to understand and emphasize our unrelenting focus in delivering the most capable and rapid UX-Flow prototyping tool!

    If you haven’t been updating regularly, here is the list of highlighted features we added since the last major version of Indigo Studio:

    Check the following link for a complete list of past releases: http://indigo.infragistics.com/help/releasenotes

    Add Comments to Prototypes

    Commenting is part of indigodesigned.com, our free prototype hosting service for unlimited number of prototypes. We announced indigodesigned.com a while back, and is the quickest way to share your prototypes in the cloud. 

    Any prototype you share on indigodesigned.com will have support for commenting. To enable comments, simply upgrade to the latest version of Indigo Studio, and share your prototype with the Enable Commenting option checked.

    Try adding comments

    Manage Comments

    Features related to commenting

    Comments are shown in a side-bar as opposed to on top of the prototype. This way, you can read and add comments without interfering with the navigation. Comments are unique to each UI state, so as you navigate, the comments panel will update accordingly.

    The prototype owner will have the ability to mark comments for follow-up or archive previous comments. Once you do this, you can use the filter in the comment sidebar to filter those comments.

    You can also open or close commenting at any time. When comments are closed, reviewers will be unable to add new comments, but existing comments will still be shown. Comments are not available for prototypes marked as community.

    Email Notifications, Real-time Comments, and Adding Markers

    Naturally, that’s not all! In addition to adding comments, we have also added the following related features:

    • Email notifications Anyone you share the prototype link with can subscribe to receive email notifications when new comments are added to the share.

    • Real time comments As the name suggests, comments panel will update automatically without requiring you to refresh the prototype.

    • Adding comment markers You will be able to drop a marker to visually connect a comment with the UI/prototype.

    Install indigodesigned.com on Premises

    Enterprise customers can opt to install indigodesigned.com on premises behind their corporate firewall. This will allow you to control where the prototypes and UI libraries are stored, and provides an additional level of security and privacy. In nutshell, get all the capabilities, for sharing and collaboration, available just for your users. You can even authenticate using your existing credentials without requiring an infragistics.com account.

    Go ahead and share prototypes or UI libraries that others in your organization can freely access and download! Contact us for details

    Use Collections to Organize & Share Your UX Prototypes

    Collections are like folders for your shares on indigodesigned.com, with the following tweaks:

    • You can reorder the items/shares in a collection like a playlist.
    • You can grab a single link to the entire collection, which you can then send someone
    • Deleting a collection does not affect the contained shares
    • You can password-protect a collection, and bypass passwords on individual shares.

    View Collections

    To create a collection, select a set of prototypes you have shared on indigodesigned.com, and use the add to collection action to create a new collection or add to an existing one.

    Inline text formatting or Rich Text Support

    It seems like a small thing, but it’s big! So big that it was the second highest voted idea in uservoice. And now you have it.

    Rich text

    Docking Properties Panel

    Dock/pin the properties panel to the right of the design surface, so that it’s integrated with the toolbox. When docked, this panel will share the space with the other toolbox items (i.e., UI elements, screenparts). You can make the PE taller using the splitter or double click the splitter to fit.

    Docking Properties Panel

    Rulers & Guides

    Add a new guide by either clicking in the ruler area or by using the click + drag action. You can still double click on a guide to type in a precise value.

    Adding guides

    Download and Import UI Libraries from indigodesigned.com

    You can explore, download and import UI libraries shared by community users without leaving the Indigo Studio application. UI libraries, also known as screenparts, are reusable custom UI elements created using Indigo Studio.

    Importing Screenpart libraries

    Downloaded UI libraries are added to a common default folder on your desktop, accessible to all new Indigo Studio projects. You can also change this folder to point to a shared folder anywhere on your network. This way different users can have access to the downloaded libraries as long as they have access to the shared folder.

    All Icons from FontAwesome

    We have added all the icons from the FontAwesome collection, which increases the tally to 800+ icons ready for use whether you are offline or online. All icons are vector, so you can be assured that these will render perfectly irrespective of screen resolution.

    Icon Picker

    Options to Flip and Rotate icons

    You have new options to quickly mirror icons vertically or horizontally in addition to rotating them clockwise or anti-clockwise. For now these actions are only available for icons.

    Rotate or Flip icons

    Text Value based Interactions

    Specify interactions based on the value specified in the text field. When adding an interaction on a text field, pick changes as the interaction, and specify a target value. You can add more than one text field value to define multiple if-then scenarios.

    For example:

    •  When user changes the text field to “Foo," do X.
    •  When user changes the text field to “Bar," do Y.

    Text value based interactions

    How to get this Update?

    Here’s how you can update the version of Indigo Studio installed on your machine:

    • If you have the option to automatically check for updates on startup checked, you should see a dialog box pop up when you launch Indigo. Simply click update, and Indigo Studio will do the rest. This is the easier approach.
    • If for some reason you chose not to automatically check for updates, go to MENU > HELP & ABOUT and use the “CHECK FOR UPDATES option.

    Checking for Updates

    About Indigo Studio for Interaction Prototyping

    Don’t have Indigo Studio? Download a free 30-day trial which will let you try all of the prototyping goodness!

    Download Indigo Studio

    Looking to suggest improvements and new ideas for Indigo Studio?

    Submit a new idea

    If for some reason you are having trouble with Indigo Studio, check out our help topics, forums or contact support.

    Get Support

    Follow us on Twitter @indigodesigned

    View Release Notes


    Announcing Infragistics Ultimate 15.2: Download Today!

    $
    0
    0

    We are very excited to announce that Infragistics Ultimate 15.2 is now released to market and available for all users to download!

    The Internet of Things (IoT); computing everywhere; advanced, pervasive analytics with the increasing demand that every app now needs to be an analytic app; rapid prototyping and more are fast growing technology trends which bring tremendous opportunities for new products and services, optimized work flow, reduced operational costs and new revenue streams.  With the right tools and services, enterprises of all sizes can turn these opportunities into benefits.

    With Ultimate 15.2 we have ensured that you are fully equipped to leverage the new trends – bring huge volumes of data to live with Ignite UI powerful data visualization capabilities, rapidly prototype and collaborate on app experiences before you write any code with Indigo Studio, secure the needs of the mobile user in different contexts and environments with our new advanced features for iOS and Android developers and many more.

    We have added new features, new controls and new updates across all platforms to achieve these results, see in details what we did:

     

    To get started Download Infragistics Ultimate 15.2 today:

    If you have any feedback, please shoot me an email to jasonb@infragistics.com, and as always please use our User Voice site to include product feature suggestions for future releases.

     

    What's New in Ignite UI: HTML5, jQuery & ASP.NET MVC for 15.2

    $
    0
    0

    Ignite UI™ is the most powerful set of high performance user experience controls and components for development of modern apps in HTML5, JavaScript or ASP.NET MVC. If you are building responsive web apps that target the desktop and mobile, or just hybrid mobile apps, Ignite UI can get you there. We are continuing to invest in rich line-of-business scenarios for the desktop browser, while ensuring the touch experiences and mobility are top of mind in our UX process for new controls and control enhancements.   

    New Editors

    One of our main goals with this release was to provide you with more robust, feature rich and excellent performing editor widgets. Our editor components offer a lot of functionality, backed by a significant amount of code. This latest release marked another major development campaign for the editor suite, since our dev teams re-architected all editors to optimize their usability and also added a new component – the Checkbox widget.

      • igEditors
    • igCheckboxEditor

     

      • igTextEditor
      • igNumericEditor
    • igPercentEditor

    • igCurrencyEditor

    • igMaskEditor

    • igDateEditor

    • igDatePicker

      igNotifier

      The igNotifier component is an extension of the popover component, which specializes in providing the end user with notification information. There are three predefined states:

      • Success
      • Warning
      • Error

       

      The component supports popover mode, as well as simple inline-style messaging. In addition to this, there is automatic pairing with editor widgets to allow detection or erroneous input which is outside the predefined range.

       

       

                
             

        igValidator

        The new Validation component allows flexible validation on an array of Ignite UI components, as well as standard input form elements. The mechanism uses the Notification component capabilities to both handle the validation process and display flexible and visually appealing notifications to the end user.

        IgniteUI Visual Studio MVC Scaffolder

                   

          We release a brand new Scaffolder for Ignite UI widgets. With this we boost developer productivity greatly by providing code generation and templates to quickly target standard data scenarios like creating, reading, updating and deleting data. With a few clicks you can completely configure a Grid, generate a controller and save time on manual coding. Configuring other widgets as HierarchicalGrid, TreeGrid, Data Chart and others are already in the works.

           

          Developer Productivity / Features

          igTreeGrid

          In 2015.1 release we added a new control to our grids suite to handle even more hierarchical data scenarios. Now we pack it with tons of features to provide even better experience while dealing with tree or tabular data.

          • Row Selectors

            

              • Column Moving and Resizing
            • Paging Breadcrumbs

            

           

              • Accessibility Rendering (ARIA support)
              • MVC Remote Sorting/Paging/Filtering on all levels

            

              • Keyboard Navigation
            • Excel Exporter

           

          igCombo

          The Combo widget gets a big round of new features for this release. Since it was rewritten from the scratch in 2015.1, now you get more goodies to help you deliver better in experience in more use cases.

              • Autocomplete
              • Grouping

                • Header and Footer Templates
                • Dropdown Orientation

                • Support for Custom Values
                • Full element support
                • Full support for ASP.NET MVC 6 for all Ignite UI widgets

                       

            igGrid

            We continually work on the igGrid to improve its user experience and provider richer functionality.

                • Column Auto Sizing
                • Advanced Filter Dialog – Custom Condition

             


             
                • Accessibility Rendering (ARIA)
                • Excel Exporter CTP –> RTM
                • Selection / Activation with Focus

                          

            HierarchicalGrid

                • Selection / Activation with Focus
              • Excel Export

             

            General Enhancements                 

            MVC

                • Tag Helpers for Ignite UI
                • Scaffolding templates with Ignite UI

                    

            igUpload

            transmit additional data between client and server

            Wrapping it up

            That’s it for this big release of Ignite UI. We are investing heavily in modern web - we know that digital transformation and mobilization of your existing desktop applications to mobile devices and browsers are your key initiatives this year and next – Ignite UI will help drive your successful transitions. If you have any questions, shoot me an email at jasonb@infragistics.com, and if you have any ideas for the product or don’t see a feature that you’d like, let us know at the User Voice site so we can hear you voice!

             

            What's New in Native Mobile for iOS & Android for 15.2

            $
            0
            0

            Android 15.2

            15.2 marks a milestone for our Android product - we are officially RTM'd with the DataChart, and we are introducing a brand new DataGrid, built from the ground up to deliver on the most demanding mobile scenarios.  Our new Data Grid is truly responsive to changes of the available width and orientation of the device. Columns animations, binding remote data along with the local, live scrolling, row selection, and built-in columns are some of the features our Grid provides right out of the box.  The stunning data chart is designed for high-volume and real-time scenarios. Column, Bar, Line, Area, Range, Scatter, Financial, Polar, Radial, Stacked are among the most popular series our Data Chart has. All are zoomable which makes them easy to drill down into the data even on a small device.

            New Grid

            Let's take a look at the features in the new Android Data Grid.

            Data Source

            The Grid's data can be Local, available on the device already, or the grid can retrieve data from a Remote store, e.g. from a web service.

            Built-in Columns

            Create a Grid with auto-generated columns or select the column types among our built-in Columns: Text, Numeric, Image, DateTime, and Template.

            All columns’ cells and headers can be configured by setting text properties like text color, font size, background color, alignment, and width. Numeric Column provides control over the decimal places. Image Column has image stretch options. DateTime Column provides several predefined DateTime formats to choose from, e.g. short date/time, long date/time. The Template Column allows you to customize the layout of content in the column.

            Responsive layout

            Our Grid is dynamically changing the visible columns based on available width by setting break points at different widths or based on the orientation of the device.

                       

            Animation

            You, the developer, or your end user may control columns' Showing, Hiding, Adding, Moving, and Exchanging. Showing, Hiding and Adding Columns’ animations can be configured to slide from left, right, top, bottom and/or to fade in. Exchanging Columns’ animation can be configured to slide to left, right, top, bottom and/or to crossfade. Moving Columns’ animation can be set to slide over.

                       

            Live scrolling

            The data will be retrieved on the fly over the web, as you are scrolling down, thus ensuring high performance of the Grid. This helps to minimize the amount of data that needs to be transmitted to the device.   

            Selection

            Single and Multi-Row Selection is supported in our Grid to allow scenarios like highlighting a row or a master / detail view, etc.

             


             

            Android Data Chart RTM

            The Android Data Chart is fully RTM - so all of the charts and visualizations that you've been using are now fully supported.

            Here is a short list of some of the chart types and features we are RTM'ing in 15.2:

                • Category Series
                  • Area / Step Area
                  • Bar / Bar Side by Side
                  • Column / Column Side by Side
                  • Spline / Spline Area
                  • Point
                  • Line
                  • Step Line
                  • Waterfall
                  • Range Category Series
                  • Range Area
                  • Range Bar
                  • Range Column
                  • Scatter Series
                  • Scatter Points
                  • Scatter Lines
                  • Scatter Splines
                • Financial Indicators
                  • Bollinger Band
                  • Typical Price
                  • Median Price
                  • Moving Average Convergence Divergence
                  • Percentage Price Oscillator
                  • Percentage Volume Oscillator
                  • Absolute Volume Oscillator
                  • Relative Strength Index
                  • Accumulation Distribution
                  • Average True Range
                  • Commodity Channel Index
                  • Fast Stochastic Indicator
                  • Full Stochastic Indicator
                  • Rate of Change
                  • TRIX
                  • Williams %R Indicator
                  • Ease of Movement   
                  • Detrended Price Oscillator
                  • Force Index
                  • StochRSI Indicator
                  • Standard Deviation
                  • On Balance Volume
                  • Price Volume Trend
                  • Price Channel Overlay
                  • Positive Volume Index
                  • Money Flow Index
                  • Ultimate Oscillator
                  • Market Facilitation Index
                  • Chaikin Oscillator
                • Trendlines
                  • Simple Moving Average
                  • Exponential Moving Average
                  • Modified Exponential Moving Average
                  • Weighted Moving Average
                • Financial Series
                  • Candlestick
                  • OHLC
                • Crosshair
                • Legend
                • Markers
                • Axis
                  • Numeric ( Linear / Logarithmic)
                  • Category
                • Panning
                • Zooming

            Gauges

            Radial

            The Radial Gauge contains a number of visual elements, such as a scale with tick marks and labels, a needle, and a number of ranges. The Radial Gauge has different label configurations, like color, extent, and interval. Radial Gauge has different range properties, like color, start and end value. The needle of the Radial Gauge can be configured by setting its color, needle and pivot shapes and outlines. The transitions between different sets of settings can be animated.

            Linear

            The Linear Gauge is useful for showing a single measure on a linear range. It has different label configurations, like color, extent, interval, and position of the first and last labels. The needle of the Linear Gauge can be configured by setting its color, outline, shape, size. The transitions between different sets of settings can be animated.

            BulletGraph

            The Bullet Graph displays a single primary measure and compares it to one or more other measures to create a concise data visualization. It supports a variety of configurations, e.g. orientation, scale, tick marks, ranges and colors along with animated transitions between different sets of settings.

             

            PieChart

             

            The main features of the Pie Chart include label configurations, like position and extent, label font properties, controlling pie radius, start angle, sweep direction, exploded slices and distance from center for exploded slices, selected slices, and legend. The ability to prevent the labels from colliding with each other or the slices.

            FunnelChart

            A single series chart that displays data in a funnel shape with a variable number of sections each representing the data as different portions of 100% or to weight the height of the slices based on value. The Funnel Chart can be configured to be inverted, to use Bezier Curve for its shape or weighted slices.

            BarCode

             

            Code 128 Barcode

            Code 128 Barcode can be used in inventory, shipping and distribution applications. The Code 128 Barcode has different configurations, like label’s color and font, background color, and stretch.

             

            QR Barcode

            QR (Quick Response) Code Barcode can be used in commercial tracking, entertainment and transport ticketing, product marketing applications.


             

            iOS 15.2

            New Swift 2.0 and Objective-C language support 

            As always, we’re keeping our API’s up to date with the latest specs. In this release we’ve improved our API’s so that you get the best Swift 2.0 experience as well as a more descriptive API for objective-c. This includes support for Generics, Nullablilty annotation and KindOf.

            BitCode Enabled

            All of our frameworks have Bitcode enabled, so you can distribute your apps and know that they’ll always be optimized for the latest hardware!

            IGCalendarView 

            • New view added: WeekView
            • Added the ability to style and set working hours.

            IGFlowLayoutView 

            New Maximize Item support

            IGCalendarView

            Smart Axis has gotten even better, by supporting text wrapping.  

            Wrapping it Up

            That's it for iOS & Android for 15.2.  We are excited to get these enhanncements and improvements in your hands, and we are committed to continuing to deliver features and functionality to help you build the absolute best modern, native mobile apps.  If you have any questions, shoot me an email at jasonb@infragistics.com, and if you'd like to see features that we don't have yet, please post to User Voice and let us know!

             

            What's New in Windows Forms 15.2!

            $
            0
            0

            With more than 100+ controls, Infragistics Windows Forms is the most mature, fully-featured Windows Forms Product on the market. With features that cover every aspect of enterprise software development including Microsoft Office Style user interfaces, high performance charting, and full modern experiences with touch & gestures. With this release, you will see our continued commitment and investment in Windows Forms, we recognize that it is by far the most widely used .NET platform for enterprise scale apps that target the desktop. Our goals and themes remain the same for the Ultimate toolset, and Windows Forms is a major part of this story:

            • Touch Everywhere, Office Inspired Apps on Every Platform
            • Deliver Outstanding Experiences with Awesome Branding and Styling
            • Developer Productivity Across Every Device, Every Platform

            Overall, we had an emphasis on quality for 15.2, which means improving existing features, RTM'ing features that were previously CTP, and polishing your developer experience using the product.

            I'll highlight each area of focus for 15.2.

            ToolbarsManager Improvements

            Notification Badges

            This is a cool new feature that is common in mobile apps for notifications ... now you can do the same in your Windows Forms apps. The goals are:

            • To be notified via noticeable means for time-sensitive matters that require my attention
            • To clearly see how many new items need my attention
            • That when I click on the tool item with the notification, I expect to be shown/taken to the items that require my attention and (if applicable) to be able to interact with those items/events.
            • That once I’ve checked the items/events I was notified for, there will no longer be a notification calling for my attention (until the next event that I should pay attention to)


            DataChart Improvements

            We've added a few enhancements to the Charts:

            • SaveTo (ImageType) – BMP, EMF, EXIF, GIF, GUID, ICON, JPEG, MemoryBmp, PNG, TIFF, WMF
            • Gallery Stacked Series
            • Legend Types
            • Value Overlay

              Axis Intervals - Major/Minor Gridlines

              • Annotation Layers
                • Category Tooltip Layer

                    • Item Tooltip Layer

                    • Crosshair Layer

                    • Category Highlight Layer

                    • Category Item Highlight Layer

                  • Bubble Series

                    • Stacked Series
                    • Polar Series

                    • Radial Series

                  • Gesture / Touch Support
                    • Pinch and Zoom, Pan, Press & Hold
                  • Scale Legend
                    • Support for the BubbleSeries to visualize the correspondence between bubble size and color

                  CTP Controls - Excel Spreadsheet

                  The goal of every app seems to be delivering more Excel-like features to your customers. We included a Spreadsheet control in WPF last year, and this year we've focused on doing the same in Windows Forms. This release is labeled a CTP, but it has a ton of great features and samples. Take a spin with this exciting new control and let us know what you think!

                  • Cell Formatting
                    • Number formats
                    • Horizontal Alignments – General, Left, Center, Right, Fill, Justify, Center Across Selection, Distributed
                    • Vertical Alignments – Top, Center, Bottom, Justified, Distributed
                    • Wrap Text
                    • Shrink To Fit
                    • Indent
                    • Fonts – All font settings except double underline and accounting*
                    • All Border styles
                    • All Fills styles
                    • Mixed Format/Formatted Text
                  • Merged Cells
                  • Undo/Redo
                  • Resizing/Hiding Rows/Columns
                  • Insert/Delete Rows/Columns/Cells
                  • Split & Frozen Panes
                  • Formula Bar w/ Name box
                  • Cut/Copy/Paste
                  • Edit support
                    • Update active cell or entire selection
                    • Enter formulas (including array formulas)
                    • Infers number format based on entry
                    • Fixed decimal support
                  • Excel style keyboard navigation
                    • Arrow keys
                    • Enter key
                    • End mode
                    • Selection modes – normal, extended, add to selection
                    • Scroll lock support
                  • Zoom support
                  • Worksheet tabs with multiple tab selection
                  • Hyperlinks
                  • Data Validations
                  • Worksheet image background
                  • Context Menus

                  Since the new Spreadsheet control includes the FormattedTextEditor, it gets the new SubScript and SuperScript capabilities that were needed for the Spreadsheet control.

                  Styling Improvements

                  To give a modern Office look, we've included new Style Libraries for all Windows Forms controls.

                  Outlook Blue

                  • Outlook2013 - Dark Gray.isl
                  • Outlook2013 - LightGray.isl
                  • Outlook2013 - White.isl

                  Excel Green

                  • Excel2013 - White.isl
                  • Excel2013 - Dark Gray.isl
                  • Excel2013 - Light Gray.isl

                  Ease of Use for Office Inspired Apps

                  We've added a few smaller features to further enhance your Office-inspired apps:

                  • FormattedTextEditor - Superscript and Subscript support - The FormattedTextEditor will be used as part of the new UltraSpreadsheet control so it will need to support certain features that the xamSpreadsheet and Excel support. This will included Subscript and Superscript.
                  • PivotGrid - Simplified Binding - The FlatDataSource class provides a way for the developer to show “non-OLAP” data in the PivotGrid control, we anticipate this to be the primary means by which the developer will display data in the PivotGrid control. The objective for this feature is to make it easier to connect the PivotGrid control to a database table
                  • WinGrid - Summary Rows Height - the summary rows may now have either smaller or larger height than the one need to fit their content, which was previously always used.
                  • MessageBoxManager - Window Location

                  Wrapping it Up ....

                  That’s it for this Windows Forms 15.2 release. As you can see, we are still making big investments in Windows Forms - this platform is still driving the Enterprise mission critical apps today and our goals are to deliver the support you need in updating and maintaining these applications as you look at newer, modern platforms for future enterprise development. If you have any questions, shoot me an email at jasonb@infragistics.com, and if you have any ideas for the product or don’t see a feature that you’d like, let us know at the User Voice site!

                  Infragistics Silverlight Release Notes – October: 15.2 Volume Release

                  $
                  0
                  0

                  Release notes reflect the state of resolved bugs and new additions from the previous release. You will find these notes useful to help determine the resolution of existing issues from a past release and as a means of determining where to test your applications when upgrading from one version to the next.

                  Release notes are available in PDF, Excel and Word formats. The PDF summarizes the changes to this release along with a listing of each item. The Excel sheet includes each change item and makes it easy for you to sort, filter and otherwise manipulate the data to your liking.

                  In order to download release notes, use the following links:

                  Silverlight 2015 Volume 2 Release (Build 15.2.20152.1000)

                  Notes in PDF Format
                  Notes in Excel Format
                  Notes in Word Format

                  Viewing all 2372 articles
                  Browse latest View live




                  Latest Images