Mercurial > projects > dynamin
diff dynamin/gui/x_clipboard.d @ 106:acdbb30fee7e
Port to D2.
Most of the effort was dealing with immutable and const.
author | Jordan Miner <jminer7@gmail.com> |
---|---|
date | Mon, 17 Dec 2012 23:41:50 -0600 |
parents | 73060bc3f004 |
children |
line wrap: on
line diff
--- a/dynamin/gui/x_clipboard.d Sat Nov 24 10:21:50 2012 -0600 +++ b/dynamin/gui/x_clipboard.d Mon Dec 17 23:41:50 2012 -0600 @@ -41,7 +41,7 @@ } -string backend_getSelText(XAtom sel, ref ClipboardData data) { +mstring backend_getSelText(XAtom sel, ref ClipboardData data) { XConvertSelection(display, sel, XA.UTF8_STRING, XA.DYNAMIN_SELECTION, msgWin, CurrentTime); XSync(display, false); auto start = Environment.runningTime; @@ -66,7 +66,7 @@ scope(exit) XFree(propData); XDeleteProperty(display, msgWin, selEv.property); - string str = new char[count]; + mstring str = new char[count]; str[] = propData[0..count]; return str; } @@ -77,7 +77,7 @@ uint length; // number of bytes in data } // always called from the event thread...don't have to avoid static data -void backend_setSelText(XAtom sel, string text, ref ClipboardData data) { +void backend_setSelText(XAtom sel, cstring text, ref ClipboardData data) { XSetSelectionOwner(display, sel, msgWin, CurrentTime); data.target = XA.UTF8_STRING; data.data = text.ptr; @@ -88,10 +88,10 @@ template ClipboardBackend() { ClipboardData data; // make array when supporting multiple types (PNG & BMP) - void backend_setText(string text) { + void backend_setText(cstring text) { backend_setSelText(XA.CLIPBOARD, text, data); } - string backend_getText() { + mstring backend_getText() { return backend_getSelText(XA.CLIPBOARD, data); } bool backend_containsText() { @@ -101,10 +101,10 @@ template SelectionBackend() { ClipboardData data; // make array when supporting multiple types (PNG & BMP) - void backend_setText(string text) { + void backend_setText(cstring text) { backend_setSelText(XA.PRIMARY, text, data); } - string backend_getText() { + mstring backend_getText() { return backend_getSelText(XA.PRIMARY, data); } bool backend_containsText() {