<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[139436] branches/gsoc15-pallet</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="https://trac.macports.org/changeset/139436">139436</a></dd>
<dt>Author</dt> <dd>ksammons@macports.org</dd>
<dt>Date</dt> <dd>2015-08-17 10:44:37 -0700 (Mon, 17 Aug 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>Added Rev-Upgrade to Pallet</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#branchesgsoc15palletMacPorts_FrameworkMPMacPortsh">branches/gsoc15-pallet/MacPorts_Framework/MPMacPorts.h</a></li>
<li><a href="#branchesgsoc15palletMacPorts_FrameworkMPMacPortsm">branches/gsoc15-pallet/MacPorts_Framework/MPMacPorts.m</a></li>
<li><a href="#branchesgsoc15palletPalletEnglishlprojMainMenuxib">branches/gsoc15-pallet/Pallet/English.lproj/MainMenu.xib</a></li>
<li><a href="#branchesgsoc15palletPalletGrowlNotificationsh">branches/gsoc15-pallet/Pallet/GrowlNotifications.h</a></li>
<li><a href="#branchesgsoc15palletPalletMPActionLauncherh">branches/gsoc15-pallet/Pallet/MPActionLauncher.h</a></li>
<li><a href="#branchesgsoc15palletPalletMPActionLauncherm">branches/gsoc15-pallet/Pallet/MPActionLauncher.m</a></li>
<li><a href="#branchesgsoc15palletPalletMPActionsControllerh">branches/gsoc15-pallet/Pallet/MPActionsController.h</a></li>
<li><a href="#branchesgsoc15palletPalletMPActionsControllerm">branches/gsoc15-pallet/Pallet/MPActionsController.m</a></li>
<li><a href="#branchesgsoc15palletPalletPalletxcodeprojprojectxcworkspacexcuserdatamrappleseedxcuserdatadUserInterfaceStatexcuserstate">branches/gsoc15-pallet/Pallet/Pallet.xcodeproj/project.xcworkspace/xcuserdata/mrappleseed.xcuserdatad/UserInterfaceState.xcuserstate</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="branchesgsoc15palletMacPorts_FrameworkMPMacPortsh"></a>
<div class="modfile"><h4>Modified: branches/gsoc15-pallet/MacPorts_Framework/MPMacPorts.h (139435 => 139436)</h4>
<pre class="diff"><span>
<span class="info">--- branches/gsoc15-pallet/MacPorts_Framework/MPMacPorts.h        2015-08-17 03:33:04 UTC (rev 139435)
+++ branches/gsoc15-pallet/MacPorts_Framework/MPMacPorts.h        2015-08-17 17:44:37 UTC (rev 139436)
</span><span class="lines">@@ -99,7 +99,12 @@
</span><span class="cx">  */
</span><span class="cx"> - (id)reclaim:(NSError**)sError;
</span><span class="cx"> 
</span><ins>+/*!
+ @brief Runs the rev-upgrade command.
+ */
+- (id)revupgrade:(NSError**)sError;
</ins><span class="cx"> 
</span><ins>+
</ins><span class="cx"> /*!
</span><span class="cx">  @brief Synchronizes the ports tree without checking for upgrades to the MacPorts base.
</span><span class="cx">  */
</span></span></pre></div>
<a id="branchesgsoc15palletMacPorts_FrameworkMPMacPortsm"></a>
<div class="modfile"><h4>Modified: branches/gsoc15-pallet/MacPorts_Framework/MPMacPorts.m (139435 => 139436)</h4>
<pre class="diff"><span>
<span class="info">--- branches/gsoc15-pallet/MacPorts_Framework/MPMacPorts.m        2015-08-17 03:33:04 UTC (rev 139435)
+++ branches/gsoc15-pallet/MacPorts_Framework/MPMacPorts.m        2015-08-17 17:44:37 UTC (rev 139436)
</span><span class="lines">@@ -131,6 +131,32 @@
</span><span class="cx"> 
</span><span class="cx"> #pragma MacPorts API
</span><span class="cx"> 
</span><ins>+- (id)revupgrade:(NSError **)sError
+{
+    NSString * result = nil;
+    [[NSDistributedNotificationCenter defaultCenter] postNotificationName:@&quot;MacPorts_revupgrade_Started&quot; object:nil];
+    [[MPNotifications sharedListener] setPerformingTclCommand:@&quot;revupgrade&quot;];
+    
+    //FIXME
+    /*
+     if ([self authorizationMode])
+     {
+     result = [interpreter evaluateStringWithMPHelperTool:@&quot;mportdiagnose&quot; error:sError];
+     }
+     else
+     {
+     result = [interpreter evaluateStringWithPossiblePrivileges:@&quot;mportdiagnose&quot; error:sError];
+     }*/
+    
+    result = [interpreter evaluateStringAsString:@&quot;macports::revupgrade \&quot;\&quot;&quot; error:sError];
+    
+    [[MPNotifications sharedListener] setPerformingTclCommand:@&quot;&quot;];
+    [[NSDistributedNotificationCenter defaultCenter] postNotificationName:@&quot;MacPorts_revupgrade_Finished&quot; object:nil];
+    
+    return result;
+
+}
+
</ins><span class="cx"> - (id)reclaim:(NSError**)sError
</span><span class="cx"> {
</span><span class="cx">     NSString * result = nil;
</span></span></pre></div>
<a id="branchesgsoc15palletPalletEnglishlprojMainMenuxib"></a>
<div class="modfile"><h4>Modified: branches/gsoc15-pallet/Pallet/English.lproj/MainMenu.xib (139435 => 139436)</h4>
<pre class="diff"><span>
<span class="info">--- branches/gsoc15-pallet/Pallet/English.lproj/MainMenu.xib        2015-08-17 03:33:04 UTC (rev 139435)
+++ branches/gsoc15-pallet/Pallet/English.lproj/MainMenu.xib        2015-08-17 17:44:37 UTC (rev 139436)
</span><span class="lines">@@ -1,7 +1,7 @@
</span><span class="cx"> &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;
</span><span class="cx"> &lt;document type=&quot;com.apple.InterfaceBuilder3.Cocoa.XIB&quot; version=&quot;3.0&quot; toolsVersion=&quot;5056&quot; systemVersion=&quot;13C64&quot; targetRuntime=&quot;MacOSX.Cocoa&quot; propertyAccessControl=&quot;none&quot;&gt;
</span><span class="cx">     &lt;dependencies&gt;
</span><del>-        &lt;deployment version=&quot;1060&quot; identifier=&quot;macosx&quot;/&gt;
</del><ins>+        &lt;deployment version=&quot;1060&quot; defaultVersion=&quot;1060&quot; identifier=&quot;macosx&quot;/&gt;
</ins><span class="cx">         &lt;plugIn identifier=&quot;com.apple.InterfaceBuilder.CocoaPlugin&quot; version=&quot;5056&quot;/&gt;
</span><span class="cx">     &lt;/dependencies&gt;
</span><span class="cx">     &lt;objects&gt;
</span><span class="lines">@@ -696,12 +696,12 @@
</span><span class="cx">                         &lt;rect key=&quot;frame&quot; x=&quot;6&quot; y=&quot;9&quot; width=&quot;63&quot; height=&quot;12&quot;/&gt;
</span><span class="cx">                         &lt;autoresizingMask key=&quot;autoresizingMask&quot; flexibleMaxX=&quot;YES&quot; flexibleMaxY=&quot;YES&quot;/&gt;
</span><span class="cx">                         &lt;connections&gt;
</span><del>-                            &lt;binding destination=&quot;764&quot; name=&quot;animate&quot; keyPath=&quot;busy&quot; id=&quot;791&quot;/&gt;
</del><span class="cx">                             &lt;binding destination=&quot;764&quot; name=&quot;hidden&quot; keyPath=&quot;busy&quot; id=&quot;780&quot;&gt;
</span><span class="cx">                                 &lt;dictionary key=&quot;options&quot;&gt;
</span><span class="cx">                                     &lt;string key=&quot;NSValueTransformerName&quot;&gt;NSNegateBoolean&lt;/string&gt;
</span><span class="cx">                                 &lt;/dictionary&gt;
</span><span class="cx">                             &lt;/binding&gt;
</span><ins>+                            &lt;binding destination=&quot;764&quot; name=&quot;animate&quot; keyPath=&quot;busy&quot; id=&quot;791&quot;/&gt;
</ins><span class="cx">                         &lt;/connections&gt;
</span><span class="cx">                     &lt;/progressIndicator&gt;
</span><span class="cx">                     &lt;textField verticalHuggingPriority=&quot;750&quot; id=&quot;781&quot;&gt;
</span><span class="lines">@@ -733,7 +733,7 @@
</span><span class="cx">                             &lt;autoresizingMask key=&quot;autoresizingMask&quot; flexibleMaxX=&quot;YES&quot; flexibleMinY=&quot;YES&quot;/&gt;
</span><span class="cx">                             &lt;popUpButtonCell key=&quot;cell&quot; type=&quot;square&quot; bezelStyle=&quot;shadowlessSquare&quot; image=&quot;TB_Install&quot; imagePosition=&quot;above&quot; alignment=&quot;right&quot; lineBreakMode=&quot;truncatingTail&quot; state=&quot;on&quot; borderStyle=&quot;bezel&quot; imageScaling=&quot;proportionallyUpOrDown&quot; inset=&quot;2&quot; pullsDown=&quot;YES&quot; arrowPosition=&quot;noArrow&quot; selectedItem=&quot;898&quot; id=&quot;896&quot;&gt;
</span><span class="cx">                                 &lt;behavior key=&quot;behavior&quot; pushIn=&quot;YES&quot; lightByBackground=&quot;YES&quot; lightByGray=&quot;YES&quot;/&gt;
</span><del>-                                &lt;font key=&quot;font&quot; metaFont=&quot;system&quot;/&gt;
</del><ins>+                                &lt;font key=&quot;font&quot; metaFont=&quot;menu&quot;/&gt;
</ins><span class="cx">                                 &lt;menu key=&quot;menu&quot; title=&quot;OtherViews&quot; id=&quot;897&quot;&gt;
</span><span class="cx">                                     &lt;items&gt;
</span><span class="cx">                                         &lt;menuItem state=&quot;on&quot; image=&quot;TB_Install&quot; hidden=&quot;YES&quot; id=&quot;898&quot;/&gt;
</span><span class="lines">@@ -827,6 +827,11 @@
</span><span class="cx">                             &lt;action selector=&quot;reclaim:&quot; target=&quot;628&quot; id=&quot;MDu-KV-96b&quot;/&gt;
</span><span class="cx">                         &lt;/connections&gt;
</span><span class="cx">                     &lt;/toolbarItem&gt;
</span><ins>+                    &lt;toolbarItem implicitItemIdentifier=&quot;24F28DE3-525B-41DE-AA7F-DEF4857BF1AB&quot; label=&quot;Rev-Upgrade&quot; paletteLabel=&quot;Rev-Upgrade&quot; tag=&quot;-1&quot; image=&quot;NSCaution&quot; id=&quot;gyM-mH-Mv9&quot;&gt;
+                        &lt;connections&gt;
+                            &lt;action selector=&quot;revupgrade:&quot; target=&quot;628&quot; id=&quot;Adk-7S-iro&quot;/&gt;
+                        &lt;/connections&gt;
+                    &lt;/toolbarItem&gt;
</ins><span class="cx">                 &lt;/allowedToolbarItems&gt;
</span><span class="cx">                 &lt;defaultToolbarItems&gt;
</span><span class="cx">                     &lt;toolbarItem reference=&quot;901&quot;/&gt;
</span><span class="lines">@@ -837,12 +842,16 @@
</span><span class="cx">                     &lt;toolbarItem reference=&quot;645&quot;/&gt;
</span><span class="cx">                     &lt;toolbarItem reference=&quot;3pR-dv-sVZ&quot;/&gt;
</span><span class="cx">                     &lt;toolbarItem reference=&quot;iMK-ib-TIq&quot;/&gt;
</span><ins>+                    &lt;toolbarItem reference=&quot;gyM-mH-Mv9&quot;/&gt;
</ins><span class="cx">                     &lt;toolbarItem reference=&quot;762&quot;/&gt;
</span><span class="cx">                     &lt;toolbarItem reference=&quot;423&quot;/&gt;
</span><span class="cx">                     &lt;toolbarItem reference=&quot;1035&quot;/&gt;
</span><span class="cx">                     &lt;toolbarItem reference=&quot;426&quot;/&gt;
</span><span class="cx">                     &lt;toolbarItem reference=&quot;453&quot;/&gt;
</span><span class="cx">                 &lt;/defaultToolbarItems&gt;
</span><ins>+                &lt;connections&gt;
+                    &lt;outlet property=&quot;delegate&quot; destination=&quot;503&quot; id=&quot;mib-8d-vBn&quot;/&gt;
+                &lt;/connections&gt;
</ins><span class="cx">             &lt;/toolbar&gt;
</span><span class="cx">         &lt;/window&gt;
</span><span class="cx">         &lt;window title=&quot;Activity&quot; allowsToolTipsWhenApplicationIsInactive=&quot;NO&quot; autorecalculatesKeyViewLoop=&quot;NO&quot; hidesOnDeactivate=&quot;YES&quot; oneShot=&quot;NO&quot; visibleAtLaunch=&quot;NO&quot; animationBehavior=&quot;default&quot; id=&quot;435&quot; customClass=&quot;NSPanel&quot;&gt;
</span><span class="lines">@@ -858,11 +867,11 @@
</span><span class="cx">                         &lt;rect key=&quot;frame&quot; x=&quot;6&quot; y=&quot;26&quot; width=&quot;263&quot; height=&quot;348&quot;/&gt;
</span><span class="cx">                         &lt;autoresizingMask key=&quot;autoresizingMask&quot; flexibleMaxX=&quot;YES&quot; flexibleMinY=&quot;YES&quot;/&gt;
</span><span class="cx">                         &lt;clipView key=&quot;contentView&quot; id=&quot;Wnl-09-Bxi&quot;&gt;
</span><del>-                            &lt;rect key=&quot;frame&quot; x=&quot;1&quot; y=&quot;1&quot; width=&quot;261&quot; height=&quot;346&quot;/&gt;
</del><ins>+                            &lt;rect key=&quot;frame&quot; x=&quot;1&quot; y=&quot;1&quot; width=&quot;246&quot; height=&quot;330&quot;/&gt;
</ins><span class="cx">                             &lt;autoresizingMask key=&quot;autoresizingMask&quot; widthSizable=&quot;YES&quot; heightSizable=&quot;YES&quot;/&gt;
</span><span class="cx">                             &lt;subviews&gt;
</span><span class="cx">                                 &lt;tableView verticalHuggingPriority=&quot;750&quot; allowsExpansionToolTips=&quot;YES&quot; columnAutoresizingStyle=&quot;lastColumnOnly&quot; alternatingRowBackgroundColors=&quot;YES&quot; columnSelection=&quot;YES&quot; multipleSelection=&quot;NO&quot; autosaveColumns=&quot;NO&quot; rowHeight=&quot;40&quot; id=&quot;440&quot;&gt;
</span><del>-                                    &lt;rect key=&quot;frame&quot; x=&quot;0.0&quot; y=&quot;0.0&quot; width=&quot;261&quot; height=&quot;346&quot;/&gt;
</del><ins>+                                    &lt;rect key=&quot;frame&quot; x=&quot;0.0&quot; y=&quot;0.0&quot; width=&quot;246&quot; height=&quot;330&quot;/&gt;
</ins><span class="cx">                                     &lt;autoresizingMask key=&quot;autoresizingMask&quot;/&gt;
</span><span class="cx">                                     &lt;size key=&quot;intercellSpacing&quot; width=&quot;3&quot; height=&quot;2&quot;/&gt;
</span><span class="cx">                                     &lt;color key=&quot;backgroundColor&quot; white=&quot;1&quot; alpha=&quot;1&quot; colorSpace=&quot;calibratedWhite&quot;/&gt;
</span><span class="lines">@@ -890,7 +899,7 @@
</span><span class="cx">                                             &lt;/textFieldCell&gt;
</span><span class="cx">                                             &lt;tableColumnResizingMask key=&quot;resizingMask&quot; resizeWithTable=&quot;YES&quot; userResizable=&quot;YES&quot;/&gt;
</span><span class="cx">                                         &lt;/tableColumn&gt;
</span><del>-                                        &lt;tableColumn width=&quot;25&quot; minWidth=&quot;10&quot; maxWidth=&quot;3.4028230607370965e+38&quot; id=&quot;446&quot;&gt;
</del><ins>+                                        &lt;tableColumn width=&quot;10&quot; minWidth=&quot;10&quot; maxWidth=&quot;3.4028230607370965e+38&quot; id=&quot;446&quot;&gt;
</ins><span class="cx">                                             &lt;tableHeaderCell key=&quot;headerCell&quot; lineBreakMode=&quot;truncatingTail&quot; borderStyle=&quot;border&quot; alignment=&quot;left&quot;&gt;
</span><span class="cx">                                                 &lt;font key=&quot;font&quot; metaFont=&quot;smallSystem&quot;/&gt;
</span><span class="cx">                                                 &lt;color key=&quot;textColor&quot; name=&quot;headerTextColor&quot; catalog=&quot;System&quot; colorSpace=&quot;catalog&quot;/&gt;
</span><span class="lines">@@ -905,11 +914,11 @@
</span><span class="cx">                             &lt;color key=&quot;backgroundColor&quot; name=&quot;controlBackgroundColor&quot; catalog=&quot;System&quot; colorSpace=&quot;catalog&quot;/&gt;
</span><span class="cx">                         &lt;/clipView&gt;
</span><span class="cx">                         &lt;scroller key=&quot;horizontalScroller&quot; verticalHuggingPriority=&quot;750&quot; horizontal=&quot;YES&quot; id=&quot;439&quot;&gt;
</span><del>-                            &lt;rect key=&quot;frame&quot; x=&quot;1&quot; y=&quot;331&quot; width=&quot;261&quot; height=&quot;16&quot;/&gt;
</del><ins>+                            &lt;rect key=&quot;frame&quot; x=&quot;1&quot; y=&quot;331&quot; width=&quot;246&quot; height=&quot;16&quot;/&gt;
</ins><span class="cx">                             &lt;autoresizingMask key=&quot;autoresizingMask&quot;/&gt;
</span><span class="cx">                         &lt;/scroller&gt;
</span><span class="cx">                         &lt;scroller key=&quot;verticalScroller&quot; verticalHuggingPriority=&quot;750&quot; horizontal=&quot;NO&quot; id=&quot;438&quot;&gt;
</span><del>-                            &lt;rect key=&quot;frame&quot; x=&quot;246&quot; y=&quot;1&quot; width=&quot;16&quot; height=&quot;346&quot;/&gt;
</del><ins>+                            &lt;rect key=&quot;frame&quot; x=&quot;247&quot; y=&quot;1&quot; width=&quot;15&quot; height=&quot;330&quot;/&gt;
</ins><span class="cx">                             &lt;autoresizingMask key=&quot;autoresizingMask&quot;/&gt;
</span><span class="cx">                         &lt;/scroller&gt;
</span><span class="cx">                     &lt;/scrollView&gt;
</span><span class="lines">@@ -1485,6 +1494,7 @@
</span><span class="cx">     &lt;resources&gt;
</span><span class="cx">         &lt;image name=&quot;Installed&quot; width=&quot;13&quot; height=&quot;13&quot;/&gt;
</span><span class="cx">         &lt;image name=&quot;NSAdvanced&quot; width=&quot;32&quot; height=&quot;32&quot;/&gt;
</span><ins>+        &lt;image name=&quot;NSCaution&quot; width=&quot;32&quot; height=&quot;32&quot;/&gt;
</ins><span class="cx">         &lt;image name=&quot;NSTrashFull&quot; width=&quot;32&quot; height=&quot;32&quot;/&gt;
</span><span class="cx">         &lt;image name=&quot;TB_Cancel&quot; width=&quot;512&quot; height=&quot;512&quot;/&gt;
</span><span class="cx">         &lt;image name=&quot;TB_Info&quot; width=&quot;512&quot; height=&quot;512&quot;/&gt;
</span></span></pre></div>
<a id="branchesgsoc15palletPalletGrowlNotificationsh"></a>
<div class="modfile"><h4>Modified: branches/gsoc15-pallet/Pallet/GrowlNotifications.h (139435 => 139436)</h4>
<pre class="diff"><span>
<span class="info">--- branches/gsoc15-pallet/Pallet/GrowlNotifications.h        2015-08-17 03:33:04 UTC (rev 139435)
+++ branches/gsoc15-pallet/Pallet/GrowlNotifications.h        2015-08-17 17:44:37 UTC (rev 139436)
</span><span class="lines">@@ -10,7 +10,7 @@
</span><span class="cx"> /* Defining growl types*/
</span><span class="cx"> 
</span><span class="cx"> /**/
</span><del>-#define GROWL_TYPES 16
</del><ins>+#define GROWL_TYPES 18
</ins><span class="cx"> #define GROWL_INSTALL 0
</span><span class="cx"> #define GROWL_UNINSTALL 1
</span><span class="cx"> #define GROWL_UPGRADE 2
</span><span class="lines">@@ -18,14 +18,16 @@
</span><span class="cx"> #define GROWL_SELFUPDATE 4
</span><span class="cx"> #define GROWL_DIAGNOSE 5
</span><span class="cx"> #define GROWL_RECLAIM 6
</span><del>-#define GROWL_INSTALLFAILED 7
-#define GROWL_UNINSTALLFAILED 8
-#define GROWL_UPGRADEFAILED 9
-#define GROWL_SYNCFAILED 10
-#define GROWL_DIAGNOSEFAILED 11
-#define GROWL_RECLAIMFAILED 12
-#define GROWL_SELFUPDATEFAILED 13
</del><ins>+#define GROWL_REVUPGRADE 7
+#define GROWL_INSTALLFAILED 8
+#define GROWL_UNINSTALLFAILED 9
+#define GROWL_UPGRADEFAILED 10
+#define GROWL_SYNCFAILED 11
+#define GROWL_DIAGNOSEFAILED 12
+#define GROWL_RECLAIMFAILED 13
+#define GROWL_REVUPGRADEFAILED 14
+#define GROWL_SELFUPDATEFAILED 15
</ins><span class="cx"> 
</span><span class="cx"> 
</span><del>-#define GROWL_ALLOPS 14
-#define GROWL_ALLOPSFAILED 15
</del><ins>+#define GROWL_ALLOPS 16
+#define GROWL_ALLOPSFAILED 17
</ins></span></pre></div>
<a id="branchesgsoc15palletPalletMPActionLauncherh"></a>
<div class="modfile"><h4>Modified: branches/gsoc15-pallet/Pallet/MPActionLauncher.h (139435 => 139436)</h4>
<pre class="diff"><span>
<span class="info">--- branches/gsoc15-pallet/Pallet/MPActionLauncher.h        2015-08-17 03:33:04 UTC (rev 139435)
+++ branches/gsoc15-pallet/Pallet/MPActionLauncher.h        2015-08-17 17:44:37 UTC (rev 139436)
</span><span class="lines">@@ -90,6 +90,11 @@
</span><span class="cx"> - (void)reclaim;
</span><span class="cx"> 
</span><span class="cx"> /*!
</span><ins>+ @brief Runs the revupgrade command.
+ */
+- (void)revupgrade;
+
+/*!
</ins><span class="cx">  @brief Syncs the MacPorts installation in another thread
</span><span class="cx">  */
</span><span class="cx"> - (void)sync;
</span></span></pre></div>
<a id="branchesgsoc15palletPalletMPActionLauncherm"></a>
<div class="modfile"><h4>Modified: branches/gsoc15-pallet/Pallet/MPActionLauncher.m (139435 => 139436)</h4>
<pre class="diff"><span>
<span class="info">--- branches/gsoc15-pallet/Pallet/MPActionLauncher.m        2015-08-17 03:33:04 UTC (rev 139435)
+++ branches/gsoc15-pallet/Pallet/MPActionLauncher.m        2015-08-17 17:44:37 UTC (rev 139436)
</span><span class="lines">@@ -118,6 +118,22 @@
</span><span class="cx">         }
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+- (void)revupgrade
+{
+    errorReceived = NO;
+    NSError * error;
+    [[MPMacPorts sharedInstance] revupgrade:&amp;error];
+    if(errorReceived)
+    {
+        [self sendNotification:GROWL_REVUPGRADEFAILED];
+    }
+    else
+    {
+        [self sendNotification:GROWL_REVUPGRADE];
+        [[NSNotificationCenter defaultCenter] postNotificationName:@&quot;advanceQ&quot; object:nil userInfo:nil];
+    }
+}
+
</ins><span class="cx"> - (void)reclaim
</span><span class="cx"> {
</span><span class="cx">     errorReceived = NO;
</span><span class="lines">@@ -208,6 +224,7 @@
</span><span class="cx">         notificationTitles[GROWL_SYNC]                      = @&quot;Sync Completed&quot;;
</span><span class="cx">     notificationTitles[GROWL_DIAGNOSE]                  = @&quot;Diagnose Completed&quot;;
</span><span class="cx">     notificationTitles[GROWL_RECLAIM]                   = @&quot;Reclaim Completed&quot;;
</span><ins>+    notificationTitles[GROWL_REVUPGRADE]                = @&quot;Rev-Upgrade Completed&quot;;
</ins><span class="cx">         notificationTitles[GROWL_SELFUPDATE]                = @&quot;Selfupdate Completed&quot;;
</span><span class="cx">         notificationTitles[GROWL_INSTALLFAILED]             = @&quot;Installation Failed&quot;;
</span><span class="cx">         notificationTitles[GROWL_UNINSTALLFAILED]           = @&quot;Uninstall Failed&quot;;
</span><span class="lines">@@ -215,6 +232,7 @@
</span><span class="cx">         notificationTitles[GROWL_SYNCFAILED]                = @&quot;Sync Failed&quot;;
</span><span class="cx">     notificationTitles[GROWL_DIAGNOSEFAILED]            = @&quot;Diagnose Failed&quot;;
</span><span class="cx">     notificationTitles[GROWL_RECLAIMFAILED]             = @&quot;Reclaim Failed&quot;;
</span><ins>+    notificationTitles[GROWL_REVUPGRADEFAILED]          = @&quot;Rev-Upgrade Failed&quot;;
</ins><span class="cx">         notificationTitles[GROWL_SELFUPDATEFAILED]          = @&quot;Selfupdate Failed&quot;;
</span><span class="cx"> 
</span><span class="cx">         notificationTitles[GROWL_ALLOPS]                    = @&quot;Operations Completed&quot;;
</span><span class="lines">@@ -228,6 +246,7 @@
</span><span class="cx">         notificationDescriptions[GROWL_SYNC]                = @&quot;Operation completed successfully&quot;;
</span><span class="cx">     notificationDescriptions[GROWL_DIAGNOSE]            = @&quot;Operation completed successfully&quot;;
</span><span class="cx">     notificationDescriptions[GROWL_RECLAIM]             = @&quot;Operation completed successfully&quot;;
</span><ins>+    notificationDescriptions[GROWL_REVUPGRADE]          = @&quot;Operation completed successfully&quot;;
</ins><span class="cx">         notificationDescriptions[GROWL_SELFUPDATE]          = @&quot;Operation completed successfully&quot;;
</span><span class="cx">         notificationDescriptions[GROWL_INSTALLFAILED]       = @&quot;Operation Failed&quot;;
</span><span class="cx">         notificationDescriptions[GROWL_UNINSTALLFAILED]     = @&quot;Operation Failed&quot;;
</span><span class="lines">@@ -235,6 +254,7 @@
</span><span class="cx">         notificationDescriptions[GROWL_SYNCFAILED]          = @&quot;Operation Failed&quot;;
</span><span class="cx">     notificationDescriptions[GROWL_DIAGNOSEFAILED]      = @&quot;Operation Failed&quot;;
</span><span class="cx">     notificationDescriptions[GROWL_RECLAIMFAILED]       = @&quot;Operation Failed&quot;;
</span><ins>+    notificationDescriptions[GROWL_REVUPGRADEFAILED]    = @&quot;Operation Failed&quot;;
</ins><span class="cx">         notificationDescriptions[GROWL_SELFUPDATEFAILED]    = @&quot;Operation Failed&quot;;
</span><span class="cx"> 
</span><span class="cx">         notificationDescriptions[GROWL_ALLOPS]              = @&quot;All Operations Completed Succesfully&quot;;
</span></span></pre></div>
<a id="branchesgsoc15palletPalletMPActionsControllerh"></a>
<div class="modfile"><h4>Modified: branches/gsoc15-pallet/Pallet/MPActionsController.h (139435 => 139436)</h4>
<pre class="diff"><span>
<span class="info">--- branches/gsoc15-pallet/Pallet/MPActionsController.h        2015-08-17 03:33:04 UTC (rev 139435)
+++ branches/gsoc15-pallet/Pallet/MPActionsController.h        2015-08-17 17:44:37 UTC (rev 139436)
</span><span class="lines">@@ -59,6 +59,7 @@
</span><span class="cx"> - (IBAction)sync:(id)sender;
</span><span class="cx"> - (IBAction)diagnose:(id)sender;
</span><span class="cx"> - (IBAction)reclaim:(id)sender;
</span><ins>+- (IBAction)revupgrade:(id)sender;
</ins><span class="cx"> - (IBAction)selfupdate:(id)sender;
</span><span class="cx"> - (IBAction)cancel:(id)sender;
</span><span class="cx"> - (IBAction)toggleInfoPanel: (id) sender;
</span></span></pre></div>
<a id="branchesgsoc15palletPalletMPActionsControllerm"></a>
<div class="modfile"><h4>Modified: branches/gsoc15-pallet/Pallet/MPActionsController.m (139435 => 139436)</h4>
<pre class="diff"><span>
<span class="info">--- branches/gsoc15-pallet/Pallet/MPActionsController.m        2015-08-17 03:33:04 UTC (rev 139435)
+++ branches/gsoc15-pallet/Pallet/MPActionsController.m        2015-08-17 17:44:37 UTC (rev 139436)
</span><span class="lines">@@ -209,6 +209,11 @@
</span><span class="cx">         if (altWasPressed)
</span><span class="cx">                 [self startQueue:nil];
</span><span class="cx"> }
</span><ins>+- (IBAction)revupgrade:(id)sender
+{
+    [tableController open:nil];
+    [self queueOperation:@&quot;revupgrade&quot; portName:@&quot;-&quot; portObject:@&quot;-&quot; variants:0];
+}
</ins><span class="cx"> 
</span><span class="cx"> - (IBAction)reclaim:(id)sender
</span><span class="cx"> {
</span><span class="lines">@@ -449,6 +454,11 @@
</span><span class="cx">             NSLog(@&quot;We have reclaim&quot;);
</span><span class="cx">             [[MPActionLauncher sharedInstance] performSelectorInBackground:@selector(reclaim) withObject:nil];
</span><span class="cx">         }
</span><ins>+        else if([[dict objectForKey:@&quot;operation&quot;] isEqualToString:@&quot;revupgrade&quot;])
+        {
+            NSLog(@&quot;We have revupgrade&quot;);
+            [[MPActionLauncher sharedInstance] performSelectorInBackground:@selector(revupgrade) withObject:nil];
+        }
</ins><span class="cx">         }
</span><span class="cx">         else
</span><span class="cx">         {
</span><span class="lines">@@ -504,6 +514,10 @@
</span><span class="cx">     {
</span><span class="cx">         image = [NSImage imageNamed:@&quot;NSTrashFull&quot;];
</span><span class="cx">     }
</span><ins>+    else if([operation isEqualToString:@&quot;revupgrade&quot;])
+    {
+        image = [NSImage imageNamed:@&quot;NSCaution&quot;];
+    }
</ins><span class="cx">         
</span><span class="cx">         //If we have variants, print them out for debugging purposes
</span><span class="cx">         if(variants!=nil)
</span></span></pre></div>
<a id="branchesgsoc15palletPalletPalletxcodeprojprojectxcworkspacexcuserdatamrappleseedxcuserdatadUserInterfaceStatexcuserstate"></a>
<div class="binary"><h4>Modified: branches/gsoc15-pallet/Pallet/Pallet.xcodeproj/project.xcworkspace/xcuserdata/mrappleseed.xcuserdatad/UserInterfaceState.xcuserstate</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
</div>

</body>
</html>