Some QEditor-Related Stuff
Roberto Raggi
roberto at kdevelop.org
Tue Jan 14 10:06:02 UTC 2003
On Tue, 2003-01-14 at 01:26, Milo Hoffman wrote:
> Hi,
> there are still some other small bugs in qEditor while tab-Size is not set to
> 8 chars. When i select some text and the last line of that selection begins
> with a '\t', the selection is 4 chars to long (does not matter which tab
> stops are set).
>
> This could be related to QEditorView::cursorColumn()
> I think,
> const int tabwidth = 4;
> should better read
> /*const ? */ int tabwidth = tabStop();
>
> Just did a frech checkout and it's compiling next two hours - so cannot test
> this.
>
> Further, the current column display in the lower right corner of gideon
> displays the distance of the cursor from beginning of the current line in
> chars. Assumed to be in the line "\t\tbreak;", this means after pressing
> Pos1, it shows 0. Going one char right, it displays 1 - but cursor gets to
> the fourth postion. (IIRC every other editor would display 1 in the first
> column and 4, when the cursor is behind the first tab)
> This should be related to the function QEditorView::cursorColumn(), but i
> think it doesn't get called at all. I'll investigate this, too.
>
> Another point is indentation of preproccessor directives. I'd like the editor
> to kill all leading whitespace on the current line, if i enter a '#'. This i
> could realize very quick, by adding this logic to CIndent::indentForLine()
> and adding the '#' to the electric keys.
> But i'd like it further to insert white space after the '#', if i'm in context
> of an #if etc. example:
>
> #if defined(HAVE_FOO)
> # define BAR 1
> #else
> # define BAR 0
> #endif
>
> If i wanted to do this, i would have to touch the yyindent.cpp. Am i right on
> this?
>
> Is it planned to sync qEditor's c++/c/c#/java indenters to parts/astyle in
> points of configuration or execution? Although, i see, these are totally
> different implementations - i don't really understand, why there must be two
> indenters.
>
> Another point, i'd like to have implemented is: configuration of colors. The
> selection and paranthesis-context-highlight-color are currently hard coded. I
> yet haven't found out, 1) where i can change the background color for the
> KTextEditor? 2) where do the contents of qEditor get drawn to the screen?
> Maybe someone can point me there.
>
> Milo
>
> btw.: in the autoexpand.path, i sent some time ago:
>
> @@ -228,6 +234,10 @@
>
> bool QEditorView::setCursorPositionReal(unsigned int line, unsigned int col)
> {
> + QTextParagraph* p = m_editor->document()->paragAt( line );
> +
> + ensureTextIsVisible( p );
> +
>
> should better read like:
>
> + QTextParagraph* p = m_editor->document()->paragAt( line );
> +
> + if ( p ) {
> + ensureTextIsVisible( p );
> + }
> +
>
> (Otherwise it will crash on every open of a file; my appologies for forgetting
> to mention this little bug)
Hi Milo,
what do you think to get a CVS account and help us to develop QEditor
and KDevelop!? seems that you are very familiar with kdevelop sources,
and a lot of parts like qeditor needs cleanup and bugfix
ciao robe
More information about the KDevelop-devel
mailing list