<!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>[120494] trunk/dports/graphics/wxWidgets-3.0/files</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/120494">120494</a></dd>
<dt>Author</dt> <dd>mojca@macports.org</dd>
<dt>Date</dt> <dd>2014-05-30 05:42:52 -0700 (Fri, 30 May 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>wxWidgets-3.0: remove patches that are no longer needed</pre>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkdportsgraphicswxWidgets30filespatchupstreamsrcosxcocoatextctrlmmdiff">trunk/dports/graphics/wxWidgets-3.0/files/patch-upstream-src-osx-cocoa-textctrl.mm.diff</a></li>
<li><a href="#trunkdportsgraphicswxWidgets30filespatchupstreamsrcosxcocoawindowmmdiff">trunk/dports/graphics/wxWidgets-3.0/files/patch-upstream-src-osx-cocoa-window.mm.diff</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkdportsgraphicswxWidgets30filespatchupstreamsrcosxcocoatextctrlmmdiff"></a>
<div class="delfile"><h4>Deleted: trunk/dports/graphics/wxWidgets-3.0/files/patch-upstream-src-osx-cocoa-textctrl.mm.diff (120493 => 120494)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/graphics/wxWidgets-3.0/files/patch-upstream-src-osx-cocoa-textctrl.mm.diff        2014-05-30 12:20:27 UTC (rev 120493)
+++ trunk/dports/graphics/wxWidgets-3.0/files/patch-upstream-src-osx-cocoa-textctrl.mm.diff        2014-05-30 12:42:52 UTC (rev 120494)
</span><span class="lines">@@ -1,38 +0,0 @@
</span><del>-http://trac.wxwidgets.org/ticket/15345
-http://trac.wxwidgets.org/changeset/75046
-
---- src/osx/cocoa/textctrl.mm (revision 75045)
-+++ src/osx/cocoa/textctrl.mm (revision 75046)
-@@ -93,6 +93,12 @@
-     // Returns the last view we were instantiated for or NULL.
-     static NSView *GetCurrentlyEditedView() { return ms_viewCurrentlyEdited; }

-+    // Returns true if this editor is the one currently being modified.
-+    static bool IsCurrentEditor(wxNSTextFieldEditor* e)
-+    {
-+        return e == [(NSTextField*)ms_viewCurrentlyEdited currentEditor];
-+    }
-+
- protected :
-     BOOL m_formerEditable ;
-     BOOL m_formerSelectable;
-@@ -284,9 +290,14 @@
- - (void) insertText:(id) str
- {
--    wxWidgetCocoaImpl* impl = (wxWidgetCocoaImpl* ) wxWidgetImpl::FindFromWXWidget( (WXWidget) [self delegate] );
--    if ( impl == NULL || lastKeyDownEvent==nil || !impl-&gt;DoHandleCharEvent(lastKeyDownEvent, str) )
--    {
--        [super insertText:str];
--    }
-+    // We should never generate char events for the text being inserted
-+    // programmatically.
-+    if ( !wxMacEditHelper::IsCurrentEditor(self) )
-+    {
-+        wxWidgetCocoaImpl* impl = (wxWidgetCocoaImpl* ) wxWidgetImpl::FindFromWXWidget( (WXWidget) [self delegate] );
-+        if ( impl &amp;&amp; lastKeyDownEvent &amp;&amp; impl-&gt;DoHandleCharEvent(lastKeyDownEvent, str) )
-+            return;
-+    }
-+
-+    [super insertText:str];
- }

</del></span></pre></div>
<a id="trunkdportsgraphicswxWidgets30filespatchupstreamsrcosxcocoawindowmmdiff"></a>
<div class="delfile"><h4>Deleted: trunk/dports/graphics/wxWidgets-3.0/files/patch-upstream-src-osx-cocoa-window.mm.diff (120493 => 120494)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/graphics/wxWidgets-3.0/files/patch-upstream-src-osx-cocoa-window.mm.diff        2014-05-30 12:20:27 UTC (rev 120493)
+++ trunk/dports/graphics/wxWidgets-3.0/files/patch-upstream-src-osx-cocoa-window.mm.diff        2014-05-30 12:42:52 UTC (rev 120494)
</span><span class="lines">@@ -1,280 +0,0 @@
</span><del>-http://trac.wxwidgets.org/ticket/15345
-http://trac.wxwidgets.org/changeset/74613
-http://trac.wxwidgets.org/changeset/74945
-
---- include/wx/osx/cocoa/private.h.orig
-+++ include/wx/osx/cocoa/private.h
-@@ -161,6 +161,7 @@ public :
-     virtual void                cursorUpdate(WX_NSEvent event, WXWidget slf, void* _cmd);
-     virtual void                keyEvent(WX_NSEvent event, WXWidget slf, void* _cmd);
-     virtual void                insertText(NSString* text, WXWidget slf, void* _cmd);
-+    virtual void                doCommandBySelector(void* sel, WXWidget slf, void* _cmd);
-     virtual bool                performKeyEquivalent(WX_NSEvent event, WXWidget slf, void* _cmd);
-     virtual bool                acceptsFirstResponder(WXWidget slf, void* _cmd);
-     virtual bool                becomeFirstResponder(WXWidget slf, void* _cmd);
---- src/osx/cocoa/window.mm.orig
-+++ src/osx/cocoa/window.mm
-@@ -110,6 +110,22 @@ NSRect wxOSXGetFrameForControl( wxWindowMac* window , const wxPoint&amp; pos , const

- @end // wxNSView

-+@interface wxNSView(TextInput) &lt;NSTextInputClient&gt;
-+
-+- (void)insertText:(id)aString replacementRange:(NSRange)replacementRange;
-+- (void)doCommandBySelector:(SEL)aSelector;
-+- (void)setMarkedText:(id)aString selectedRange:(NSRange)selectedRange replacementRange:(NSRange)replacementRange;
-+- (void)unmarkText;
-+- (NSRange)selectedRange;
-+- (NSRange)markedRange;
-+- (BOOL)hasMarkedText;
-+- (NSAttributedString *)attributedSubstringForProposedRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange;
-+- (NSArray*)validAttributesForMarkedText;
-+- (NSRect)firstRectForCharacterRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange;
-+- (NSUInteger)characterIndexForPoint:(NSPoint)aPoint;
-+
-+@end
-+
- @interface NSView(PossibleMethods)
- - (void)setTitle:(NSString *)aString;
- - (void)setStringValue:(NSString *)aString;
-@@ -837,6 +853,73 @@ void wxWidgetCocoaImpl::SetupMouseEvent( wxMouseEvent &amp;wxevent , NSEvent * nsEve

- @end // wxNSView

-+// We need to adopt NSTextInputClient protocol in order to interpretKeyEvents: to work.
-+// Currently, only insertText:(replacementRange:) is
-+// implemented here, and the rest of the methods are stubs.
-+// It is hoped that someday IME-related functionality is implemented in
-+// wxWidgets and the methods of this protocol are fully working.
-+
-+@implementation wxNSView(TextInput)
-+
-+void wxOSX_insertText(NSView* self, SEL _cmd, NSString* text);
-+
-+- (void)insertText:(id)aString replacementRange:(NSRange)replacementRange
-+{
-+    wxOSX_insertText(self, @selector(insertText:), aString);
-+}
-+
-+- (void)doCommandBySelector:(SEL)aSelector
-+{
-+    wxWidgetCocoaImpl* impl = (wxWidgetCocoaImpl* ) wxWidgetImpl::FindFromWXWidget( self );
-+    if (impl)
-+        impl-&gt;doCommandBySelector(aSelector, self, _cmd);
-+}
-+
-+- (void)setMarkedText:(id)aString selectedRange:(NSRange)selectedRange replacementRange:(NSRange)replacementRange
-+{
-+}
-+
-+- (void)unmarkText
-+{
-+}
-+
-+- (NSRange)selectedRange
-+{    
-+    return NSMakeRange(NSNotFound, 0);
-+}
-+
-+- (NSRange)markedRange
-+{
-+    return NSMakeRange(NSNotFound, 0);
-+}
-+
-+- (BOOL)hasMarkedText
-+{
-+    return NO;
-+}
-+
-+- (NSAttributedString *)attributedSubstringForProposedRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange
-+{
-+    return nil;
-+}
-+
-+- (NSArray*)validAttributesForMarkedText
-+{
-+    return nil;
-+}
-+
-+- (NSRect)firstRectForCharacterRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange
-+{
-+    return NSMakeRect(0, 0, 0, 0);
-+}
-+- (NSUInteger)characterIndexForPoint:(NSPoint)aPoint
-+{
-+    return NSNotFound;
-+}
-+
-+@end // wxNSView(TextInput)
-+
-+
- //
- // event handlers
- //
-@@ -1286,13 +1369,80 @@ void wxWidgetCocoaImpl::keyEvent(WX_NSEvent event, WXWidget slf, void *_cmd)

- void wxWidgetCocoaImpl::insertText(NSString* text, WXWidget slf, void *_cmd)
- {
--    if ( m_lastKeyDownEvent==NULL || m_hasEditor || !DoHandleCharEvent(m_lastKeyDownEvent, text) )
-+    bool result = false;
-+    if ( IsUserPane() &amp;&amp; !m_hasEditor &amp;&amp; [text length] &gt; 0)
-+    {
-+        if ( m_lastKeyDownEvent!=NULL &amp;&amp; [text isEqualToString:[m_lastKeyDownEvent characters]])
-+        {
-+            // If we have a corresponding key event, send wxEVT_KEY_DOWN now.
-+            // (see also: wxWidgetCocoaImpl::DoHandleKeyEvent)
-+            {
-+                wxKeyEvent wxevent(wxEVT_KEY_DOWN);
-+                SetupKeyEvent( wxevent, m_lastKeyDownEvent );
-+                result = GetWXPeer()-&gt;OSXHandleKeyEvent(wxevent);
-+            }
-+
-+            // ...and wxEVT_CHAR.
-+            result = result || DoHandleCharEvent(m_lastKeyDownEvent, text);
-+        }
-+        else
-+        {
-+            // If we don't have a corresponding key event (e.g. IME-composed
-+            // characters), send wxEVT_CHAR without sending wxEVT_KEY_DOWN.
-+            for (NSUInteger i = 0; i &lt; [text length]; ++i)
-+            {
-+                wxKeyEvent wxevent(wxEVT_CHAR);
-+                wxevent.m_shiftDown = wxevent.m_controlDown = wxevent.m_altDown = wxevent.m_metaDown = false;
-+                wxevent.m_rawCode = 0;
-+                wxevent.m_rawFlags = 0;
-+                wxevent.SetTimestamp();
-+                unichar aunichar = [text characterAtIndex:i];
-+                wxevent.m_uniChar = aunichar;
-+                wxevent.m_keyCode = aunichar &lt; 0x80 ? aunichar : WXK_NONE;
-+                wxWindowMac* peer = GetWXPeer();
-+                if ( peer )
-+                {
-+                    wxevent.SetEventObject(peer);
-+                    wxevent.SetId(peer-&gt;GetId());
-+                }
-+                result = GetWXPeer()-&gt;OSXHandleKeyEvent(wxevent) || result;
-+            }
-+        }
-+    }
-+    if ( !result )
-     {
-         wxOSX_TextEventHandlerPtr superimpl = (wxOSX_TextEventHandlerPtr) [[slf superclass] instanceMethodForSelector:(SEL)_cmd];
-         superimpl(slf, (SEL)_cmd, text);
-     }
- }

-+void wxWidgetCocoaImpl::doCommandBySelector(void* sel, WXWidget slf, void* _cmd)
-+{
-+    if ( m_lastKeyDownEvent!=NULL )
-+    {
-+        // If we have a corresponding key event, send wxEVT_KEY_DOWN now.
-+        // (see also: wxWidgetCocoaImpl::DoHandleKeyEvent)
-+        wxKeyEvent wxevent(wxEVT_KEY_DOWN);
-+        SetupKeyEvent( wxevent, m_lastKeyDownEvent );
-+        bool result = GetWXPeer()-&gt;OSXHandleKeyEvent(wxevent);
-+
-+        if (!result)
-+        {
-+            // Generate wxEVT_CHAR if wxEVT_KEY_DOWN is not handled.
-+
-+            long keycode = wxOSXTranslateCocoaKey( m_lastKeyDownEvent, wxEVT_CHAR );
-+
-+            wxKeyEvent wxevent2(wxevent) ;
-+            wxevent2.SetEventType(wxEVT_CHAR);
-+            SetupKeyEvent( wxevent2, m_lastKeyDownEvent );
-+            if ( (keycode &gt; 0 &amp;&amp; keycode &lt; WXK_SPACE) || keycode == WXK_DELETE || keycode &gt;= WXK_START )
-+            {
-+                wxevent2.m_keyCode = keycode;
-+            }
-+            GetWXPeer()-&gt;OSXHandleKeyEvent(wxevent2);
-+        }
-+    }
-+}

- bool wxWidgetCocoaImpl::performKeyEquivalent(WX_NSEvent event, WXWidget slf, void *_cmd)
- {
-@@ -2555,10 +2705,18 @@ void wxWidgetCocoaImpl::InstallEventHandler( WXWidget control )

- bool wxWidgetCocoaImpl::DoHandleCharEvent(NSEvent *event, NSString *text)
- {
--    wxKeyEvent wxevent(wxEVT_CHAR);
--    SetupKeyEvent( wxevent, event, text );
-+    bool result = false;
-+    
-+    for (NSUInteger i = 0; i &lt; [text length]; ++i)
-+    {
-+        wxKeyEvent wxevent(wxEVT_CHAR);
-+        unichar c = [text characterAtIndex:i];
-+        SetupKeyEvent( wxevent, event, [NSString stringWithCharacters:&amp;c length:1]);

--    return GetWXPeer()-&gt;OSXHandleKeyEvent(wxevent);
-+        result = GetWXPeer()-&gt;OSXHandleKeyEvent(wxevent) || result;
-+    }
-+    
-+    return result;
- }

- bool wxWidgetCocoaImpl::DoHandleKeyEvent(NSEvent *event)
-@@ -2577,48 +2735,23 @@ bool wxWidgetCocoaImpl::DoHandleKeyEvent(NSEvent *event)
-             return true;
-     }

--    bool result = GetWXPeer()-&gt;OSXHandleKeyEvent(wxevent);
--
--    // this will fire higher level events, like insertText, to help
--    // us handle EVT_CHAR, etc.
-+    if ( IsUserPane() &amp;&amp; [event type] == NSKeyDown)
-+    {
-+        // Don't fire wxEVT_KEY_DOWN here in order to allow IME to intercept
-+        // some key events. If the event is not handled by IME, either
-+        // insertText: or doCommandBySelector: is called, so we send
-+        // wxEVT_KEY_DOWN and wxEVT_CHAR there.

--    if ( !result )
-+        if ( [m_osxView isKindOfClass:[NSScrollView class] ] )
-+            [[(NSScrollView*)m_osxView documentView] interpretKeyEvents:[NSArray arrayWithObject:event]];
-+        else
-+            [m_osxView interpretKeyEvents:[NSArray arrayWithObject:event]];
-+        return true;
-+    }
-+    else
-     {
--        if ( [event type] == NSKeyDown)
--        {
--            long keycode = wxOSXTranslateCocoaKey( event, wxEVT_CHAR );
--            
--            if ( (keycode &gt; 0 &amp;&amp; keycode &lt; WXK_SPACE) || keycode == WXK_DELETE || keycode &gt;= WXK_START )
--            {
--                // eventually we could setup a doCommandBySelector catcher and retransform this into the wx key chars
--                wxKeyEvent wxevent2(wxevent) ;
--                wxevent2.SetEventType(wxEVT_CHAR);
--                SetupKeyEvent( wxevent2, event );
--                wxevent2.m_keyCode = keycode;
--                result = GetWXPeer()-&gt;OSXHandleKeyEvent(wxevent2);
--            }
--            else if (wxevent.CmdDown())
--            {
--                wxKeyEvent wxevent2(wxevent) ;
--                wxevent2.SetEventType(wxEVT_CHAR);
--                SetupKeyEvent( wxevent2, event );
--                result = GetWXPeer()-&gt;OSXHandleKeyEvent(wxevent2);
--            }
--            else
--            {
--                if ( IsUserPane() &amp;&amp; !wxevent.CmdDown() )
--                {
--                    if ( [m_osxView isKindOfClass:[NSScrollView class] ] )
--                        [[(NSScrollView*)m_osxView documentView] interpretKeyEvents:[NSArray arrayWithObject:event]];
--                    else
--                        [m_osxView interpretKeyEvents:[NSArray arrayWithObject:event]];
--                    result = true;
--                }
--            }
--        }
-+        return GetWXPeer()-&gt;OSXHandleKeyEvent(wxevent);
-     }
--
--    return result;
- }

- bool wxWidgetCocoaImpl::DoHandleMouseEvent(NSEvent *event)
</del></span></pre>
</div>
</div>

</body>
</html>