Kaydet (Commit) 5b984095 authored tarafından Gergo Mocsi's avatar Gergo Mocsi

GSOC work week4, CodeCompleteListBox appearance fix

This patch allows the pop-up CodeCompleteListBox to appear under the cursor.
It's size is fixed:150x150.
Also, I've fixed a bug in extracting the current variable name.

Change-Id: Id98cb1c29be72af07a25aac3d51561f072bf103e
üst 6f516edc
......@@ -42,6 +42,7 @@ class SvxSearchItem;
#include <svl/lstner.hxx>
#include <svtools/colorcfg.hxx>
#include "vcl/lstbox.hxx"
#include "vcl/scrbar.hxx"
#include <sfx2/progress.hxx>
#include <unotools/options.hxx>
......
......@@ -508,7 +508,8 @@ void EditorWindow::KeyInput( const KeyEvent& rKEvt )
sal_uLong nLine = aSel.GetStart().GetPara();
OUString aLine( pEditEngine->GetText( nLine ) ); // the line being modified
OUString aStr = (aLine.lastIndexOf(" ") == -1 ? aLine.replaceFirst(".","") : aLine.copy(aLine.lastIndexOf(" ")).replaceFirst(".",""));
OUString aStr = aLine.copy( std::max(aLine.lastIndexOf(" "), aLine.lastIndexOf("\t"))+1 );
for( unsigned int j = 0; j < aCodeCompleteCache.size(); ++j)
{
if( aCodeCompleteCache[j].sVarName == aStr )
......@@ -522,13 +523,17 @@ void EditorWindow::KeyInput( const KeyEvent& rKEvt )
{
Sequence< Reference< reflection::XIdlMethod > > aMethods = xClass->getMethods();
aListBox->Clear();
Rectangle aRect = ( (TextEngine*) GetEditEngine() )->PaMtoEditCursor(aSel.GetEnd() , false);
aListBox->SetPosPixel( aRect.TopLeft() );
aListBox->SetSizePixel( Size(150,150) );
for(sal_Int32 i = 0; i < aMethods.getLength(); ++i)
{
aListBox->InsertEntry( OUString(aMethods[i]->getName()) );
SAL_WARN("method information", aMethods[i]->getName());
}
aListBox->EnableAutoSize(true);
aListBox->Show();
aListBox->GetFocus();
aListBox->ToggleDropDown();
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment