]> git.saurik.com Git - wxWidgets.git/commitdiff
Add length parameter to AddTextRaw and AppendTextRaw. Closes #1358
authorRobin Dunn <robin@alldunn.com>
Tue, 7 Feb 2012 23:55:07 +0000 (23:55 +0000)
committerRobin Dunn <robin@alldunn.com>
Tue, 7 Feb 2012 23:55:07 +0000 (23:55 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/stc/stc.h
interface/wx/stc/stc.h
src/stc/stc.cpp
src/stc/stc.cpp.in
src/stc/stc.h.in

index 26ee4d5eba19ca4c814ac7115e4cb5cbfefad8c4..0ac137cae1f90d58a0a3a0a6d971c1208a5dbb5b 100644 (file)
@@ -4049,7 +4049,7 @@ public:
     // what is used internally by Scintilla in unicode builds.
 
     // Add text to the document at current position.
-    void AddTextRaw(const char* text);
+    void AddTextRaw(const char* text, int length=-1);
 
     // Insert string at a position.
     void InsertTextRaw(int pos, const char* text);
@@ -4078,7 +4078,7 @@ public:
     wxCharBuffer GetTextRaw();
 
     // Append a string to the end of the document without changing the selection.
-    void AppendTextRaw(const char* text);
+    void AppendTextRaw(const char* text, int length=-1);
 
 #ifdef SWIG
     %pythoncode "_stc_utf8_methods.py"
index a9d2023bfe3b93a0d9947e77bac37a90f6285f2c..8d034bed539539186cc408468628f46abe69a880 100644 (file)
@@ -360,14 +360,9 @@ public:
     void AddText(const wxString& text);
 
     /**
-        The following methods are nearly equivalent to their similarly named
-        cousins above.  The difference is that these methods bypass wxString
-        and always use a char* even if used in a unicode build of wxWidgets.
-        In that case the character data will be utf-8 encoded since that is
-        what is used internally by Scintilla in unicode builds.
-        Add text to the document at current position.
+        Add raw text to the document at current position.
     */
-    void AddTextRaw(const char* text);
+    void AddTextRaw(const char* text, int length=-1);
 
     /**
         Enlarge the document to a particular size of text bytes.
@@ -382,7 +377,7 @@ public:
     /**
         Append a string to the end of the document without changing the selection.
     */
-    void AppendTextRaw(const char* text);
+    void AppendTextRaw(const char* text, int length=-1);
 
     /**
         Is there an auto-completion list visible?
index 65713e1b492b716650398b16822419fcccd780d9..4eaa62aa14e381b5c5e62e7b07e832b632b58fa1 100644 (file)
@@ -259,7 +259,7 @@ void wxStyledTextCtrl::SetHScrollBar(wxScrollBar* bar)  {
 // Add text to the document at current position.
 void wxStyledTextCtrl::AddText(const wxString& text) {
                     wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(text);
-                    SendMsg(2001, strlen(buf), (sptr_t)(const char*)buf);
+                    SendMsg(2001, buf.length(), (sptr_t)(const char*)buf);
 }
 
 // Add array of cells to document.
@@ -1709,7 +1709,7 @@ int wxStyledTextCtrl::GetTargetEnd() const
 
      int wxStyledTextCtrl::ReplaceTarget(const wxString& text) {
          wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(text);
-         return SendMsg(2194, strlen(buf), (sptr_t)(const char*)buf);
+         return SendMsg(2194, buf.length(), (sptr_t)(const char*)buf);
 }
 
 // Replace the target text with the argument text after \d processing.
@@ -1721,7 +1721,7 @@ int wxStyledTextCtrl::GetTargetEnd() const
 
      int wxStyledTextCtrl::ReplaceTargetRE(const wxString& text) {
          wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(text);
-         return SendMsg(2195, strlen(buf), (sptr_t)(const char*)buf);
+         return SendMsg(2195, buf.length(), (sptr_t)(const char*)buf);
 }
 
 // Search for a counted string in the target and set the target to the found
@@ -1730,7 +1730,7 @@ int wxStyledTextCtrl::GetTargetEnd() const
 
      int wxStyledTextCtrl::SearchInTarget(const wxString& text) {
          wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(text);
-         return SendMsg(2197, strlen(buf), (sptr_t)(const char*)buf);
+         return SendMsg(2197, buf.length(), (sptr_t)(const char*)buf);
 }
 
 // Set the search flags used by SearchInTarget.
@@ -2086,7 +2086,7 @@ bool wxStyledTextCtrl::GetUseVerticalScrollBar() const
 // Append a string to the end of the document without changing the selection.
 void wxStyledTextCtrl::AppendText(const wxString& text) {
                     wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(text);
-                    SendMsg(2282, strlen(buf), (sptr_t)(const char*)buf);
+                    SendMsg(2282, buf.length(), (sptr_t)(const char*)buf);
 }
 
 // Is drawing done in two phases with backgrounds drawn before foregrounds?
@@ -4086,9 +4086,11 @@ bool wxStyledTextCtrl::GetUseAntiAliasing() {
 
 
 
-void wxStyledTextCtrl::AddTextRaw(const char* text)
+void wxStyledTextCtrl::AddTextRaw(const char* text, int length)
 {
-    SendMsg(SCI_ADDTEXT, strlen(text), (sptr_t)text);
+    if (length == -1)
+        length = strlen(text);
+    SendMsg(SCI_ADDTEXT, length, (sptr_t)text);
 }
 
 void wxStyledTextCtrl::InsertTextRaw(int pos, const char* text)
@@ -4176,9 +4178,11 @@ wxCharBuffer wxStyledTextCtrl::GetTextRaw()
     return buf;
 }
 
-void wxStyledTextCtrl::AppendTextRaw(const char* text)
+void wxStyledTextCtrl::AppendTextRaw(const char* text, int length)
 {
-    SendMsg(SCI_APPENDTEXT, strlen(text), (sptr_t)text);
+    if (length == -1)
+        length = strlen(text);
+    SendMsg(SCI_APPENDTEXT, length, (sptr_t)text);
 }
 
 
index ec2e890e47b5e9574017487a19412dced14ba7f9..ab713613a20af8188214bb26d15048551743fb3c 100644 (file)
@@ -586,9 +586,11 @@ bool wxStyledTextCtrl::GetUseAntiAliasing() {
 
 
 
-void wxStyledTextCtrl::AddTextRaw(const char* text)
+void wxStyledTextCtrl::AddTextRaw(const char* text, int length)
 {
-    SendMsg(SCI_ADDTEXT, strlen(text), (sptr_t)text);
+    if (length == -1)
+        length = strlen(text);
+    SendMsg(SCI_ADDTEXT, length, (sptr_t)text);
 }
 
 void wxStyledTextCtrl::InsertTextRaw(int pos, const char* text)
@@ -676,9 +678,11 @@ wxCharBuffer wxStyledTextCtrl::GetTextRaw()
     return buf;
 }
 
-void wxStyledTextCtrl::AppendTextRaw(const char* text)
+void wxStyledTextCtrl::AppendTextRaw(const char* text, int length)
 {
-    SendMsg(SCI_APPENDTEXT, strlen(text), (sptr_t)text);
+    if (length == -1)
+        length = strlen(text);
+    SendMsg(SCI_APPENDTEXT, length, (sptr_t)text);
 }
 
 
index 55e0501f788fd5465e62dfdf25e5b3dd7705083f..ff6a136ab9a543603733a5d382598fbbcc2f7336 100644 (file)
@@ -247,7 +247,7 @@ public:
     // what is used internally by Scintilla in unicode builds.
 
     // Add text to the document at current position.
-    void AddTextRaw(const char* text);
+    void AddTextRaw(const char* text, int length=-1);
 
     // Insert string at a position.
     void InsertTextRaw(int pos, const char* text);
@@ -276,7 +276,7 @@ public:
     wxCharBuffer GetTextRaw();
 
     // Append a string to the end of the document without changing the selection.
-    void AppendTextRaw(const char* text);
+    void AppendTextRaw(const char* text, int length=-1);
 
 #ifdef SWIG
     %%pythoncode "_stc_utf8_methods.py"