{"id":1758,"date":"2009-10-01T09:00:00","date_gmt":"2009-10-01T17:00:00","guid":{"rendered":"http:\/\/www.sapien.com\/blog\/?p=1758"},"modified":"2009-10-01T09:42:08","modified_gmt":"2009-10-01T17:42:08","slug":"primalforms-2009-integrated-help","status":"publish","type":"post","link":"https:\/\/dev.sapien.com\/blog\/2009\/10\/01\/primalforms-2009-integrated-help\/","title":{"rendered":"PrimalForms 2009: Integrated Help"},"content":{"rendered":"<p>PrimalForms 2009 features integrated help to assist users with their form scripting. This blog covers some of its features.<\/p>\n<p><strong>Help Documentation:<\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" title=\"HelpButton\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/HelpButton1.png\" border=\"0\" alt=\"HelpButton\" width=\"284\" height=\"148\" \/><\/p>\n<p>(Fig 1: Click on the Help button or press F1 key to access the help documentation.)<\/p>\n<p>PrimalForms allows users to access help on any panel or window simply by pressing the F1 key. Depending on the active window, help will take the user to the corresponding Help topic. For example, if a user would like more information on the Assemblies Panel, the user simply have to click on the Assemblies Panel and press the F1 key. The Help document will then open and display the \u201cAssemblies Panel\u201d topic. This help applies to all windows in the application.<\/p>\n<p>In addition to application help topics, the Help Documentation features a \u201cGetting Started\u201d Section which is designed to instruct new users on how to create their very first form. The guide also covers some basic controls and how to incorporate them in your forms.<\/p>\n<p><strong>Help and t<strong>he Script Editor<\/strong>:<\/strong><\/p>\n<p>The F1 key plays an additional role in the Script Editor. The F1 key can provide the user with information on cmdlets and variable types, depending on the position of the caret in the editor. For example, if the user clicks on a cmdlet name in the script and presses the F1 key, the help documentation for the cmdlet will be displayed in the Help Panel and highlighted in the PowerShell Panel. Cmdlet help information is also automatically displayed when the user types the space character after the cmdlet name.<\/p>\n<p><a href=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/CmdletHelp3.png\"><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" title=\"CmdletHelp\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/CmdletHelp_thumb3.png\" border=\"0\" alt=\"CmdletHelp\" width=\"244\" height=\"171\" \/><\/a><\/p>\n<p>(Fig 2: Cmdlet Help)<\/p>\n<p style=\"padding-left: 30px\"><img loading=\"lazy\" decoding=\"async\" style=\"border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px\" title=\"Tip\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/10\/Tip3.png\" border=\"0\" alt=\"Tip\" width=\"32\" height=\"32\" \/> TIP: Just like the script editor, the Help Panel features a split view display to allow users to view two separate sections of the cmdlet help at the same time.<\/p>\n<p style=\"padding-left: 30px\"><a href=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/SplitViewHelpPanel1.png\"><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" title=\"SplitViewHelpPanel\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/SplitViewHelpPanel_thumb1.png\" border=\"0\" alt=\"SplitViewHelpPanel\" width=\"244\" height=\"108\" \/><\/a><\/p>\n<p style=\"padding-left: 30px\">(Fig 3: Help Panel Split View)<\/p>\n<p>Additional help information is displayed when a user hovers the cursor over a cmdlet or variable.<\/p>\n<p><a href=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/CmdletHover1.png\"><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" title=\"CmdletHover\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/CmdletHover_thumb1.png\" border=\"0\" alt=\"CmdletHover\" width=\"244\" height=\"65\" \/><\/a><\/p>\n<p>(Fig 3: Cmdlet parameters are displayed)<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" title=\"variableHover\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/variableHover2.png\" border=\"0\" alt=\"variableHover\" width=\"369\" height=\"140\" \/><\/p>\n<p>(Fig 4: Variable types are displayed)<\/p>\n<p><strong>.NET Object Browser:<\/strong><\/p>\n<p>Not only does the F1 display the cmdlet help, but users can use the F1 key to find the type information for variables, properties, and methods in the .Net Object Browser.<\/p>\n<p style=\"padding-left: 30px\"><img loading=\"lazy\" decoding=\"async\" style=\"border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px\" title=\"Tip\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/10\/Tip3.png\" border=\"0\" alt=\"Tip\" width=\"32\" height=\"32\" \/> TIP: Pressing the F1 key on variables selected in the script editor, automatically selects the corresponding type in the .NET Object Browser, thus saving the users from having to manually search the browser. For example, pressing the F1 key on the $form variable, results in the selection of System.Windows.Forms.Form object in the .NET Object Browser.<\/p>\n<p>The .NET Object Browse is used to display all the objects contained in the .NET assemblies. The objects are grouped by assembly and namespace. It allows users to view all the properties and methods of particular objects \/ controls, including their static members.<\/p>\n<p><strong>Accessing Static Members:<\/strong><\/p>\n<p>Static members are properties or methods that are shared by an object type and are not instantiated with the object. In other words, it does not depends on an object (variable) to be created, in order to access these members. In PowerShell, accessing a static member is differentiated from accessing a variable member.<\/p>\n<p>Accessing a typical variable property:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" title=\"AccessMember\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/AccessMember3.png\" border=\"0\" alt=\"AccessMember\" width=\"324\" height=\"67\" \/><\/p>\n<p>Accessing a static property:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" title=\"AccessStaticMember\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/AccessStaticMember3.png\" border=\"0\" alt=\"AccessStaticMember\" width=\"343\" height=\"66\" \/><\/p>\n<p>As you can see, users must specify the class name in brackets and use the \u201c::\u201d operator to access a static member. Users familiar with C#, will notice that PowerShell deviates from what they would expect to see in C#.<\/p>\n<p style=\"padding-left: 30px\"><img loading=\"lazy\" decoding=\"async\" style=\"border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px\" title=\"Tip\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/10\/Tip3.png\" border=\"0\" alt=\"Tip\" width=\"32\" height=\"32\" \/> TIP: Static methods and properties are differentiated by their blue tone in the .NET Object Browser<\/p>\n<p style=\"padding-left: 30px\"><img loading=\"lazy\" decoding=\"async\" style=\"border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px\" title=\"Tip\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/10\/Tip3.png\" border=\"0\" alt=\"Tip\" width=\"32\" height=\"32\" \/> TIP: Double click on a static member in the .NET Object Browser will save you having to type out the static member call<\/p>\n<p style=\"padding-left: 30px\"><a href=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/DoubleClickInsert2.png\"><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" title=\"DoubleClickInsert\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/DoubleClickInsert_thumb2.png\" border=\"0\" alt=\"DoubleClickInsert\" width=\"244\" height=\"183\" \/><\/a><\/p>\n<p style=\"padding-left: 30px\">(Fig 5: Click on static prop -&gt; inserted text)<\/p>\n<p style=\"padding-left: 30px\"><img loading=\"lazy\" decoding=\"async\" style=\"border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px\" title=\"Tip\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/10\/Tip3.png\" border=\"0\" alt=\"Tip\" width=\"32\" height=\"32\" \/> TIP: Double clicking on cmdlet names in the PowerShell panel will insert the command<\/p>\n<p><strong>MSDN Help:<\/strong><\/p>\n<p style=\"padding-left: 30px\"><img loading=\"lazy\" decoding=\"async\" style=\"border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px\" title=\"Tip\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/10\/Tip3.png\" border=\"0\" alt=\"Tip\" width=\"32\" height=\"32\" \/> TIP: If a user is unsure about a property or method, they can right click on the questionable object in the .NET Object Browser and select the \u201cMSDN Help\u201d menu option. This option will take the user to the Online MSDN Help Documentation, which provides type descriptions and samples.<\/p>\n<p style=\"padding-left: 30px\"><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" title=\"MSDNHelp\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/MSDNHelp1.png\" border=\"0\" alt=\"MSDNHelp\" width=\"263\" height=\"242\" \/><\/p>\n<p style=\"padding-left: 30px\">(Fig 6: MSDN Help context menu option)<\/p>\n<p style=\"padding-left: 30px\"><img loading=\"lazy\" decoding=\"async\" style=\"border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px\" title=\"Tip\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/10\/Tip3.png\" border=\"0\" alt=\"Tip\" width=\"32\" height=\"32\" \/> TIP: Users can also access the MSDN Help directly from the Toolbox Panel while working in the Designer tab.<\/p>\n<p style=\"padding-left: 30px\"><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" title=\"MSDNHelpFromToolBar\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/MSDNHelpFromToolBar2.png\" border=\"0\" alt=\"MSDNHelpFromToolBar\" width=\"349\" height=\"175\" \/><\/p>\n<p style=\"padding-left: 30px\">(Fig 7: MSDN Help context menu in Toolbox Panel)<\/p>\n<p><strong>PrimalSense:<\/strong><\/p>\n<p>Majority of the help is integrated directly into PrimalForms\u2019 PrimalSense. For example, PrimalSense will list properties and methods of objects after users type the \u2018.\u2019 operator. Further more the PrimalSense will list all available variables, including all the form objects when typing the \u2018$\u2019 character.<\/p>\n<p style=\"padding-left: 30px\"><img loading=\"lazy\" decoding=\"async\" style=\"border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px\" title=\"Tip\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/10\/Tip3.png\" border=\"0\" alt=\"Tip\" width=\"32\" height=\"32\" \/> TIP: Use the Assembly Panel to expand PrimalSense\u2019s type support. Added assemblies will automatically be added to the .NET Object Browser.<\/p>\n<p>In addition, PrimalSense helps facilitate scripting by listing available cmdlets that match the verb the user is typing.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" title=\"VerbSense\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/VerbSense3.png\" border=\"0\" alt=\"VerbSense\" width=\"280\" height=\"200\" \/><\/p>\n<p>(Fig 8: PrimalSense for cmdlet commands)<\/p>\n<p>PrimalSense also assists users by displaying the parameters of a cmdlet. Furthermore, snapins added in the script are automatically integrated into PrimalForms\u2019 PrimalSense and the PowerShell Panel.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" style=\"border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px\" title=\"ParameterSelect\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2009\/09\/ParameterSelect3.png\" border=\"0\" alt=\"ParameterSelect\" width=\"319\" height=\"228\" \/><\/p>\n<p>(Fig 9: PrimalSense for cmdlet parameters)<\/p>\n<p>Hopefully with this blog, users have a better understanding of how to use PrimalForms 2009\u2019s\u00a0 integrated help to assist in their scripting.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>PrimalForms 2009 features integrated help to assist users with their form scripting. This blog covers some of its features. Help Documentation: (Fig 1: Click on the Help button or press F1 key to access the help documentation.) PrimalForms allows users to access help on any panel or window simply by pressing the F1 key. Depending [&hellip;]<\/p>\n","protected":false},"author":10,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[283,509,25],"tags":[313,450,28,314,312],"class_list":["post-1758","post","type-post","status-publish","format-standard","hentry","category-howto","category-primalforms-software-news","category-windows-powershell","tag-forms","tag-help","tag-powershell","tag-primalforms","tag-winforms"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/posts\/1758","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/comments?post=1758"}],"version-history":[{"count":21,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/posts\/1758\/revisions"}],"predecessor-version":[{"id":1839,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/posts\/1758\/revisions\/1839"}],"wp:attachment":[{"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/media?parent=1758"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/categories?post=1758"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/tags?post=1758"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}