User forums > Using Code::Blocks
Highlight occurrences hides the "highlighted" text
Jenna:
--- Quote from: r.stiltskin on December 17, 2009, 05:13:36 pm ---Here are the exact steps that I took to build:
--- Code: ---mkdir codeblocks
cd codeblocks
svn co svn://svn.berlios.de/codeblocks/trunk
cd trunk
./bootstrap
./configure --prefix=/opt/codeblocks-svn
make
sudo make install
--- End code ---
I don't see any room for error in that, do you?
--- End quote ---
No.
You can try this patch for cbeditor.cpp:
--- Code: ------ cbeditor.cpp (Revision 5982)
+++ cbeditor.cpp (Arbeitskopie)
@@ -559,11 +559,13 @@
{
m_pOwner->m_pControl->IndicatorSetStyle(theIndicator, wxSCI_INDIC_HIGHLIGHT);
m_pOwner->m_pControl->IndicatorSetForeground(theIndicator, highlightColour );
+ m_pOwner->m_pControl->IndicatorSetUnder(theIndicator,true);
}
if ( m_pOwner->m_pControl2 )
{
m_pOwner->m_pControl2->IndicatorSetStyle(theIndicator, wxSCI_INDIC_HIGHLIGHT);
m_pOwner->m_pControl2->IndicatorSetForeground(theIndicator, highlightColour );
+ m_pOwner->m_pControl2->IndicatorSetUnder(theIndicator,true);
}
int flag = 0;
--- End code ---
It does not fix the transparency-problem, but should put the indicators under the text, instead of on top of it.
I do not really like it, because it is less readable (in my opinion) than the other way round, but in your case it should enhance readability a lot :wink: .
I really would be glad, if I could get the error on one of my machines.
Do you have any other apps using scintilla on your system ?
Which version of wxWidgets is used (output of wx-config --version).
Please post the output of ldd /opt/codeblocks-svn/bin/codeblocks and ldd /opt/codeblocks-svn/lib/libcodeblocks.so.
r.stiltskin:
--- Quote ---Do you have any other apps using scintilla on your system ?
--- End quote ---
I don't think so. So I just installed Geany & tried it, but it doesn't seem to have a comparable feature. Its ordinary "find" highlights the next occurrence in gray, like CB with "highlight occurrences" turned off. And its "mark" feature just puts a '+' in the left margin of the editor.
--- Quote ---Which version of wxWidgets is used (output of wx-config --version).
--- End quote ---
version 2.8.7
--- Quote ---Please post the output of ldd /opt/codeblocks-svn/bin/codeblocks
--- End quote ---
--- Code: --- linux-gate.so.1 => (0xb7f46000)
libcodeblocks.so.0 => /opt/codeblocks-svn/lib/libcodeblocks.so.0 (0xb7ad3000)
libwx_gtk2u_richtext-2.8.so.0 => /usr/lib/libwx_gtk2u_richtext-2.8.so.0 (0xb79df000)
libwx_gtk2u_aui-2.8.so.0 => /usr/lib/libwx_gtk2u_aui-2.8.so.0 (0xb7982000)
libwx_gtk2u_xrc-2.8.so.0 => /usr/lib/libwx_gtk2u_xrc-2.8.so.0 (0xb78f4000)
libwx_gtk2u_qa-2.8.so.0 => /usr/lib/libwx_gtk2u_qa-2.8.so.0 (0xb78d5000)
libwx_gtk2u_html-2.8.so.0 => /usr/lib/libwx_gtk2u_html-2.8.so.0 (0xb783b000)
libwx_gtk2u_adv-2.8.so.0 => /usr/lib/libwx_gtk2u_adv-2.8.so.0 (0xb777d000)
libwx_gtk2u_core-2.8.so.0 => /usr/lib/libwx_gtk2u_core-2.8.so.0 (0xb7418000)
libwx_baseu_xml-2.8.so.0 => /usr/lib/libwx_baseu_xml-2.8.so.0 (0xb740e000)
libwx_baseu_net-2.8.so.0 => /usr/lib/libwx_baseu_net-2.8.so.0 (0xb73e1000)
libwx_baseu-2.8.so.0 => /usr/lib/libwx_baseu-2.8.so.0 (0xb728c000)
libpthread.so.0 => /lib/i686/cmov/libpthread.so.0 (0xb7273000)
libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb726f000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb7181000)
libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb715b000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb714e000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb6ff2000)
libz.so.1 => /usr/lib/libz.so.1 (0xb6fdd000)
libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0xb6c52000)
libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0xb6bcc000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0xb6bb1000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0xb6b98000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0xb6b58000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0xb6b1c000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0xb6b18000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0xb6b13000)
librt.so.1 => /lib/i686/cmov/librt.so.1 (0xb6b0a000)
libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb6a54000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0xb6a51000)
libSM.so.6 => /usr/lib/libSM.so.6 (0xb6a49000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb6a25000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0xb6a06000)
libtiff.so.4 => /usr/lib/libtiff.so.4 (0xb69b1000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb698a000)
/lib/ld-linux.so.2 (0xb7f47000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0xb6980000)
libX11.so.6 => /usr/lib/libX11.so.6 (0xb6891000)
libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0xb688d000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0xb688a000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0xb6885000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0xb6819000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb67ee000)
libXext.so.6 => /usr/lib/libXext.so.6 (0xb67df000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0xb67d6000)
libXi.so.6 => /usr/lib/libXi.so.6 (0xb67ce000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0xb67c8000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0xb67bf000)
libpcre.so.3 => /usr/lib/libpcre.so.3 (0xb6795000)
libICE.so.6 => /usr/lib/libICE.so.6 (0xb677e000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0xb6757000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb66e2000)
libxcb-xlib.so.0 => /usr/lib/libxcb-xlib.so.0 (0xb66e0000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0xb66c7000)
libdirectfb-1.0.so.0 => /usr/lib/libdirectfb-1.0.so.0 (0xb6660000)
libfusion-1.0.so.0 => /usr/lib/libfusion-1.0.so.0 (0xb6658000)
libdirect-1.0.so.0 => /usr/lib/libdirect-1.0.so.0 (0xb6644000)
libxcb-render-util.so.0 => /usr/lib/libxcb-render-util.so.0 (0xb6640000)
libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0xb6638000)
libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0xb660f000)
libXau.so.6 => /usr/lib/libXau.so.6 (0xb660c000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb6607000)
--- End code ---
--- Quote --- ...and ldd /opt/codeblocks-svn/lib/libcodeblocks.so.
--- End quote ---
--- Code: --- linux-gate.so.1 => (0xb7f97000)
libwx_gtk2u_richtext-2.8.so.0 => /usr/lib/libwx_gtk2u_richtext-2.8.so.0 (0xb7a30000)
libwx_gtk2u_aui-2.8.so.0 => /usr/lib/libwx_gtk2u_aui-2.8.so.0 (0xb79d3000)
libwx_gtk2u_xrc-2.8.so.0 => /usr/lib/libwx_gtk2u_xrc-2.8.so.0 (0xb7945000)
libwx_gtk2u_qa-2.8.so.0 => /usr/lib/libwx_gtk2u_qa-2.8.so.0 (0xb7926000)
libwx_gtk2u_html-2.8.so.0 => /usr/lib/libwx_gtk2u_html-2.8.so.0 (0xb788d000)
libwx_gtk2u_adv-2.8.so.0 => /usr/lib/libwx_gtk2u_adv-2.8.so.0 (0xb77ce000)
libwx_gtk2u_core-2.8.so.0 => /usr/lib/libwx_gtk2u_core-2.8.so.0 (0xb7469000)
libwx_baseu_xml-2.8.so.0 => /usr/lib/libwx_baseu_xml-2.8.so.0 (0xb745f000)
libwx_baseu_net-2.8.so.0 => /usr/lib/libwx_baseu_net-2.8.so.0 (0xb7432000)
libwx_baseu-2.8.so.0 => /usr/lib/libwx_baseu-2.8.so.0 (0xb72de000)
libpthread.so.0 => /lib/i686/cmov/libpthread.so.0 (0xb72c4000)
libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb72c0000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb71d2000)
libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb71ac000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7051000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb7044000)
libz.so.1 => /usr/lib/libz.so.1 (0xb702e000)
libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0xb6ca3000)
libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0xb6c1d000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0xb6c02000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0xb6bea000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0xb6baa000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0xb6b6d000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0xb6b69000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0xb6b64000)
librt.so.1 => /lib/i686/cmov/librt.so.1 (0xb6b5b000)
libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb6aa6000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0xb6aa2000)
libSM.so.6 => /usr/lib/libSM.so.6 (0xb6a9a000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb6a76000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0xb6a57000)
libtiff.so.4 => /usr/lib/libtiff.so.4 (0xb6a02000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb69db000)
/lib/ld-linux.so.2 (0xb7f98000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0xb69d1000)
libX11.so.6 => /usr/lib/libX11.so.6 (0xb68e2000)
libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0xb68df000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0xb68dc000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0xb68d6000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0xb686a000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb683f000)
libXext.so.6 => /usr/lib/libXext.so.6 (0xb6831000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0xb6828000)
libXi.so.6 => /usr/lib/libXi.so.6 (0xb681f000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0xb6819000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0xb6810000)
libpcre.so.3 => /usr/lib/libpcre.so.3 (0xb67e7000)
libICE.so.6 => /usr/lib/libICE.so.6 (0xb67d0000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0xb67a8000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb6733000)
libxcb-xlib.so.0 => /usr/lib/libxcb-xlib.so.0 (0xb6731000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0xb6719000)
libdirectfb-1.0.so.0 => /usr/lib/libdirectfb-1.0.so.0 (0xb66b2000)
libfusion-1.0.so.0 => /usr/lib/libfusion-1.0.so.0 (0xb66a9000)
libdirect-1.0.so.0 => /usr/lib/libdirect-1.0.so.0 (0xb6695000)
libxcb-render-util.so.0 => /usr/lib/libxcb-render-util.so.0 (0xb6691000)
libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0xb668a000)
libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0xb6661000)
libXau.so.6 => /usr/lib/libXau.so.6 (0xb665d000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb6658000)
--- End code ---
Note: I edited the "exact steps" in #9 above; I had omitted "--with-contrib-plugins=all".
Jenna:
The cause is most likely a wxWidgets build without having wxHAVE_RAW_BITMAP defined.
Did you test my patch ?
If it works, it can be applied to trunk into #ifdefs that check whether wxHAVE_RAW_BITMAP is defined or not.
r.stiltskin:
Based on what you wrote, this will probably surprise you as much as it did me. After applying your patch, "Highlight occurrences" now works correctly (I suppose) for ordinary search (Ctrl-F) -- the first occurrence following the cursor is highlighted gray and all other occurrences are highlighted red, and all of the highlighting is transparent. NOT underlined, highlighted.
However, the problem persists for Incremental Search -- each occurrence is still covered by an opaque purple block.
The same is true on both machines that I patched -- one of the Ubuntu machines and the Debian Lenny one.
So, does IndicatorSetUnder() mean under as in underline, or under as in underlying plane?
Note, I did not 'make clean' and recompile everything. I just patched in those two lines of code and ran 'make' and then 'make install'.
Jenna:
Please surround the added lines with #ifndef wxHAVE_RAW_BITMAP and #endif, to see whether it is caused by wxWidgets not having wxHAVE_RAW_BITMAP defined.
IndicatorSetUnder() means draw the indicator under the text (as underlying pane) and not on top of the text.
The patch does not change the behaviour of the IncrementalSearch-plugin.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version