{"id":4494,"date":"2012-07-05T10:18:00","date_gmt":"2012-07-05T18:18:00","guid":{"rendered":"http:\/\/www.sapien.com\/blog\/?p=4494"},"modified":"2012-07-05T10:18:06","modified_gmt":"2012-07-05T18:18:06","slug":"spotlight-on-the-statusbar-control","status":"publish","type":"post","link":"https:\/\/dev.sapien.com\/blog\/2012\/07\/05\/spotlight-on-the-statusbar-control\/","title":{"rendered":"Spotlight on the StatusBar Control"},"content":{"rendered":"<p><em>The \u201cSpotlight on Controls\u201d series focuses on a single WinForms control in PowerShell Studio 2012, details the important Properties, Methods, and Events of the control and demonstrates how to utilize the control. Most of the information about the controls is still applicable to previous versions of PrimalForms.<\/em><\/p>\n<p>Last time we took a look at the NotifyIcon control. This time we will look at the StatusBar control:<\/p>\n<p><span style=\"font-size: medium\"><strong>StatusBar<\/strong>[System.Windows.Forms.StatusBar]<\/span><\/p>\n<p>Represents a Windows status bar control. <\/p>\n<p><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"StatusBar Icon\" border=\"0\" alt=\"StatusBar Icon\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/StatusBar-Icon.png\" width=\"123\" height=\"24\"><\/p>\n<p>Default Event: PanelClick <\/p>\n<p><em>Why use a StatusBar control?<\/em><\/p>\n<p>Use the StatusBar control, to display status information to the user. The StatusBar can also be used for user interaction but typically plays a informative roll.<\/p>\n<p>&nbsp;<\/p>\n<p><strong><font size=\"3\">Important Properties:<\/font><\/strong><\/p>\n<p><strong>Panels<\/strong><\/p>\n<p>The collection of StatusBar panels contained within the control. Panels represent a subsection of the StatusBar that can display text and\/or an icon.<\/p>\n<p>Adding Panels:<\/p>\n<p>You can add panels by using the Property Pane:<\/p>\n<p><a href=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/Panels-in-Property-Pane.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"Panels in Property Pane\" border=\"0\" alt=\"Panels in Property Pane\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/Panels-in-Property-Pane_thumb.png\" width=\"244\" height=\"115\"><\/a><\/p>\n<p>Next you will be presented with a dialog that allows you to add or remove panels:<\/p>\n<p><a href=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/StatusBarPanel-Collection-Editor.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"StatusBarPanel Collection Editor\" border=\"0\" alt=\"StatusBarPanel Collection Editor\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/StatusBarPanel-Collection-Editor_thumb.png\" width=\"244\" height=\"180\"><\/a><\/p>\n<p>Once you add a Panel, it will appear in the control list of the Property Pane thus allowing you to alter the properties directly without having to access the collection editor.<\/p>\n<p><a href=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/Edit-StatusBarPane-in-Property-Pane.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"Edit StatusBarPane in Property Pane\" border=\"0\" alt=\"Edit StatusBarPane in Property Pane\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/Edit-StatusBarPane-in-Property-Pane_thumb.png\" width=\"187\" height=\"244\"><\/a><\/p>\n<p>Each panel consists of a StatusBarPanel object:<\/p>\n<p>StatusBarPanel [System.Windows.Forms.StatusBarPanel]<\/p>\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" width=\"648\">\n<tbody>\n<tr>\n<td valign=\"top\" width=\"135\"><strong>Properties<\/strong><\/td>\n<td valign=\"top\" width=\"511\"><strong>Description<\/strong><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"135\">Alignment<\/td>\n<td valign=\"top\" width=\"511\">The alignment of text and icons within the status bar panel.<br \/>Values (Default: <em>Left<\/em>):<br \/><em>Left<\/em><br \/><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"Left Alignment\" border=\"0\" alt=\"Left Alignment\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/Left-Alignment.png\" width=\"122\" height=\"26\"><br \/><em>Right<\/em><br \/><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"Right Alignment\" border=\"0\" alt=\"Right Alignment\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/Right-Alignment.png\" width=\"124\" height=\"26\"><br \/><em>Center<\/em><br \/><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"Center Alignment\" border=\"0\" alt=\"Center Alignment\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/Center-Alignment.png\" width=\"123\" height=\"26\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"135\">AutoSize<\/td>\n<td valign=\"top\" width=\"511\">Indicates whether the status bar panel is automatically resized.<br \/>Values (Default: <em>None<\/em>):<\/p>\n<p><em>None<\/em><br \/>The StatusBarPanel does not change size when the StatusBar control resizes.<br \/><em><br \/>Spring<\/em><br \/>The StatusBarPanel shares the available space on the StatusBar (the space not taken up by other panels whose AutoSize property is set to <em>None<\/em> or <em>Contents<\/em>) with other panels that have their AutoSize property set to <em>Spring<\/em>.<\/p>\n<p><em>Contents<br \/><\/em>The width of the StatusBarPanel is determined by its contents.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"135\">BorderSize<\/td>\n<td valign=\"top\" width=\"511\">The border style of the status bar panel. The difference between Raised and Sunken can only be seen on older versions of Windows.<br \/><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"image\" border=\"0\" alt=\"image\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/image1.png\" width=\"310\" height=\"26\"><br \/>Values (Default: <em>Sunken<\/em>):<\/p>\n<p><em>None<\/em><br \/>No border is displayed.<\/p>\n<p><em>Raised<\/em><br \/>The StatusBarPanel is displayed with a three-dimensional raised border.<\/p>\n<p><em>Sunken<\/em><br \/>The StatusBarPanel is displayed with a three-dimensional sunken border.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"135\">Icon<\/td>\n<td valign=\"top\" width=\"511\">The icon to display within the status bar panel.<br \/><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"Icon Panel\" border=\"0\" alt=\"Icon Panel\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/Icon-Panel.png\" width=\"108\" height=\"26\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"135\">MinWidth<\/td>\n<td valign=\"top\" width=\"511\">The minimum allowed width of the status bar panel within the StatusBar control.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"135\">Text<\/td>\n<td valign=\"top\" width=\"511\">The text of the status bar panel.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"135\">ToolTipText<\/td>\n<td valign=\"top\" width=\"511\">ToolTip text associated with the status bar panel.<br \/><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"Panel ToolTip\" border=\"0\" alt=\"Panel ToolTip\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/Panel-ToolTip.png\" width=\"223\" height=\"69\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"135\">Width<\/td>\n<td valign=\"top\" width=\"511\">The width of the status bar panel within the StatusBar control.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>Adding Panels via Script Editor:<\/p>\n<p>You can manually add panels using the Panel properties\u2019 Add methods:<\/p>\n<p><span style=\"font-size: x-small\"><font size=\"2\"><span style=\"color: #0000ff\">[StatusBarPanel]<\/span> <span style=\"color: #4bacc6\">Add <\/span>(<span style=\"color: #0000ff\">[<\/span><span style=\"color: #0000ff\">string] <\/span><span style=\"color: #333333\">text<\/span>)<\/font><\/span><\/p>\n<p><font size=\"2\">Adds a StatusBarPanel with the specified text to the collection.<br \/><\/font><\/p>\n<pre><span style=\"color: #8b0000\">$panel<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #0000ff\">=<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #8b0000\">$statusbar1<\/span><span style=\"color: #000000\">.Panels.Add(<\/span><span style=\"color: #ff0000\">\"New Panel\"<\/span><span style=\"color: #000000\">)<\/span><\/pre>\n<p><span style=\"font-size: x-small\"><font size=\"2\"><span style=\"color: #0000ff\"><\/span><\/font><\/span>&nbsp;<\/p>\n<p><span style=\"font-size: x-small\"><font size=\"2\"><span style=\"color: #0000ff\">[int]<\/span> <span style=\"color: #4bacc6\">Add <\/span>(<span style=\"color: #0000ff\">[<\/span><span style=\"color: #0000ff\">StatusBarPanel] <\/span><span style=\"color: #333333\">value<\/span>)<\/font><\/span><\/p>\n<p><font size=\"2\">Adds a StatusBarPanel to the collection and returns an index.<br \/><\/font><\/p>\n<pre><span style=\"color: #8b0000\">$panel<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #0000ff\">=<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #0000ff; font-weight: bold\">New-Object<\/span><span style=\"color: #000000\"> System.Windows.Forms.StatusBarPanel\n<\/span><span style=\"color: #8b0000\">$index<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #0000ff\">=<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #8b0000\">$statusbar1<\/span><span style=\"color: #000000\">.Panels.Add(<\/span><span style=\"color: #8b0000\">$panel<\/span><span style=\"color: #000000\">)<\/span><\/pre>\n<p><strong><\/strong>&nbsp;<\/p>\n<p><strong>ShowPanels<\/strong><\/p>\n<p>This property indicates whether any panels that have been added to the control are displayed.<\/p>\n<p>ShowPanels set to <em>True<\/em>:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"ShowPanels\" border=\"0\" alt=\"ShowPanels\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/ShowPanels.png\" width=\"326\" height=\"39\"><\/p>\n<p>ShowPanels set to <em>False<\/em>:<br \/><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"ShowPanels Set to False\" border=\"0\" alt=\"ShowPanels Set to False\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/ShowPanels-Set-to-False.png\" width=\"326\" height=\"38\"><\/p>\n<p><strong><\/strong>&nbsp;<\/p>\n<p><strong>SizingGrip<\/strong><\/p>\n<p>This property indicates whether a sizing grip is displayed in the lower-right corner of the control. This property is mainly cosmetic and should be set to False when using a fixed sized Form. Such as&nbsp; when the form\u2019s FormBorderStyle property is set to <em>FixedDialog. <\/em>For more details about the Form control and the FormBorderStyle property, please refer to the <a href=\"http:\/\/www.sapien.com\/blog\/2011\/06\/01\/primalforms-2011-spotlight-on-the-form-control\/\">Spotlight on the Form Control<\/a> article.<\/p>\n<p><em><\/em>&nbsp;<\/p>\n<p><strong>Text<\/strong><\/p>\n<p>This property indicates the text associated with the StatusBar control. Use this property to display a message in the StatusBar. <br \/>Note: This text is not displayed when the ShowPanels property is set to <em>True<\/em>.<\/p>\n<pre><span style=\"color: #8b0000\">$statusbar1<\/span><span style=\"color: #000000\">.Text <\/span><span style=\"color: #0000ff\">=<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #ff0000\">\"Loading...\"<\/span><\/pre>\n<p><strong><font size=\"3\"><\/font><\/strong>&nbsp;<\/p>\n<p><strong><font size=\"3\">Important Events:<\/font><\/strong><\/p>\n<p><strong>PanelClick<\/strong><\/p>\n<p>This event occurs when a StatusBarPanel object on a StatusBar control is clicked. <br \/>The PanelClick event uses the following argument, which is accessible via the $_ variable:<\/p>\n<blockquote>\n<p>[System.Windows.Forms.StatusBarPanelClickEventArgs]<\/p>\n<\/blockquote>\n<blockquote>\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" width=\"450\">\n<tbody>\n<tr>\n<td valign=\"top\" width=\"139\"><strong>Properties<\/strong><\/td>\n<td valign=\"top\" width=\"311\"><strong>Description<\/strong><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"139\">Button<\/td>\n<td valign=\"top\" width=\"311\">Gets which mouse button was pressed.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"139\">Clicks<\/td>\n<td valign=\"top\" width=\"311\">Gets the number of times the mouse button was pressed and released.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"139\">Location<\/td>\n<td valign=\"top\" width=\"311\">Gets the location of the mouse during the generating mouse event.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"139\">StatusBarPanel<\/td>\n<td valign=\"top\" width=\"311\">\n<p>Gets the StatusBarPanel that was clicked.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"139\">X<\/td>\n<td valign=\"top\" width=\"311\">Gets the x-coordinate of the mouse during the generating mouse event.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"139\">Y<\/td>\n<td valign=\"top\" width=\"311\">Gets the y-coordinate of the mouse during the generating mouse event.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/blockquote>\n<p>&nbsp;<\/p>\n<p><strong>How to Display Different Context Menus for Each Panel:<\/strong><\/p>\n<p>The StatusBar has a ContextMenuStrip property that displays a context menu when the user right clicks on the Statusbar. But what if you want to display a different menu depending on which panel is clicked? To do this you have clear the StatusBar\u2019s ContextMenuStrip property and handle the StatusBar\u2019s PanelClick event as follows:<\/p>\n<pre><span style=\"color: #8b0000\">$statusbar1_PanelClick<\/span><span style=\"color: #0000ff\">=<\/span><span style=\"color: #000000\">[System.Windows.Forms.StatusBarPanelClickEventHandler]{\n<\/span><span style=\"color: #008000\">#Event Argument: $_ = [System.Windows.Forms.StatusBarPanelClickEventArgs]<\/span><span style=\"color: #000000\">\n    <\/span><span style=\"color: #0000ff\">if<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #8b0000\">$_<\/span><span style=\"color: #000000\">.Button <\/span><span style=\"color: #0000ff\">-eq<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #ff0000\">'Right'<\/span><span style=\"color: #000000\">)\n    {\n        <\/span><span style=\"color: #0000ff\">if<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #8b0000\">$_<\/span><span style=\"color: #000000\">.StatusBarPanel <\/span><span style=\"color: #0000ff\">-eq<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #8b0000\">$statusbarpanel2<\/span><span style=\"color: #000000\">)\n        {\n            <\/span><span style=\"color: #8b0000\">$contextmenustrip2<\/span><span style=\"color: #000000\">.Show(<\/span><span style=\"color: #8b0000\">$statusbar1<\/span><span style=\"color: #000000\">, <\/span><span style=\"color: #8b0000\">$_<\/span><span style=\"color: #000000\">.Location)\n        }\n        <\/span><span style=\"color: #0000ff\">elseif<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #8b0000\">$_<\/span><span style=\"color: #000000\">.StatusBarPanel <\/span><span style=\"color: #0000ff\">-eq<\/span><span style=\"color: #000000\"> <\/span><span style=\"color: #8b0000\">$statusbarpanel1<\/span><span style=\"color: #000000\">)\n        {\n            <\/span><span style=\"color: #8b0000\">$contextmenustrip1<\/span><span style=\"color: #000000\">.Show(<\/span><span style=\"color: #8b0000\">$statusbar1<\/span><span style=\"color: #000000\">, <\/span><span style=\"color: #8b0000\">$_<\/span><span style=\"color: #000000\">.Location)\n        }\n    }\n}<\/span><\/pre>\n<p>First it checks if the user Right clicked on a panel and then determines which panel was clicked. Depending on which panel was clicked you display the corresponding context menu. <\/p>\n<p><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"Panel ContextMenu 1\" border=\"0\" alt=\"Panel ContextMenu 1\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/Panel-ContextMenu-1.png\" width=\"344\" height=\"68\"><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"Panel ContextMenu 2\" border=\"0\" alt=\"Panel ContextMenu 2\" src=\"http:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2012\/06\/Panel-ContextMenu-2.png\" width=\"343\" height=\"68\"><\/p>\n<p>For more details on the ContextMenuStrip please refer to the <a href=\"http:\/\/www.sapien.com\/blog\/2011\/12\/16\/primalforms-2011-spotlight-on-the-contextmenustrip-control\/\">Spotlight on the ContextMenuStrip<\/a> article.<\/p>\n<p>&nbsp;<\/p>\n<p>You can download the <a href=\"http:\/\/www.sapien.com\/downloads#Sample Scripts\/StatusBarSample.zip\">StatusBar Sample<\/a> from our <a href=\"http:\/\/www.sapien.com\/downloads\">Downloads<\/a> section.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The \u201cSpotlight on Controls\u201d series focuses on a single WinForms control in PowerShell Studio 2012, details the important Properties, Methods, and Events of the control and demonstrates how to utilize the control. Most of the information about the controls is still applicable to previous versions of PrimalForms. Last time we took a look at the [&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":[705,509,644,25],"tags":[641,28,633,728,327],"class_list":["post-4494","post","type-post","status-publish","format-standard","hentry","category-powershell-studio-2012","category-primalforms-software-news","category-spotlight-on-controls","category-windows-powershell","tag-controls","tag-powershell","tag-primalforms-2011","tag-statusbar","tag-winform"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/posts\/4494","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=4494"}],"version-history":[{"count":10,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/posts\/4494\/revisions"}],"predecessor-version":[{"id":4595,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/posts\/4494\/revisions\/4595"}],"wp:attachment":[{"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/media?parent=4494"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/categories?post=4494"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/tags?post=4494"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}