I will place it on my server tonight and post the link here...
After a bit of public testing, and it being useful enough, maybe
someone could add it to the Lazarus\Components folder.

I am in the process on converting a few of the GExperts addons to
Lazarus.  This one is the first and a few more will follow over the
next few days (time permitting).  There are certain tool you just
can't live without.  ;-)

Regards,
  - Graeme -



On 2/27/06, Mattias Gaertner <[EMAIL PROTECTED]> wrote:
> On Mon, 27 Feb 2006 14:49:18 +0200
> "Graeme Geldenhuys" <[EMAIL PROTECTED]> wrote:
>
> > Thanks Mattias.  Thinking about it now, the problem makes sense.  Made
> > the change and it works perfectly now!
> >
> > I am very impressed with CodeTools so far!  I have only scratched the
> > surface of what it can do, but it is brilliant.  Once you get the
> > basics of how it works and what each class does, it becomes much
> > easier.  I took me much longer to write this addon for Kylix, than for
> > Lazarus, thanks to CodeTools, which did most of the work for me.
>
> Thanks.
> Where is the addon available?
>
> Mattias
>
>
> >
> > Regards,
> >   - Graeme -
> >
> >
> >
> > On 2/27/06, Mattias Gaertner <[EMAIL PROTECTED]> wrote:
> > > On Mon, 27 Feb 2006 11:36:39 +0200
> > > "Graeme Geldenhuys" <[EMAIL PROTECTED]> wrote:
> > >
> > > > Hi,
> > > >
> > > > I created a Lazarus addon which shows a list of procedures in a Modal
> > > > dialog (same a GExperts Procedure List).  Everythings seems to work
> > > > fine, except for the editor focus after the jump.
> > > >
> > > > When I call the method below, it jumps to the correct location, and
> > > > the Modal dialog closes, but now I cannot see my cursor in the editor?
> > > >  The editor looks like it has focus, but no cursor movement is shown
> > > > when I press the up/down keys or even the Ctrl+up/down keys.
> > > >
> > > > Any ideas how I can resolve this?  If you need the full source, I can
> > > > email it directly.
> > > >
> > > > Some notes on the code below:
> > > > LV = TListView component in Report style
> > > > lItem.SubItems[3] holds the TCodeTreeNode.PosStart integer value
> > > >
> > > >
> > > >
> > > > procedure TProcedureListForm.JumpToSelection;
> > > > var
> > > >   lItem: TListItem;
> > > >   Caret: TCodeXYPosition;
> > > >   NewTopLine: integer;
> > > >   CodeBuffer: TCodeBuffer;
> > > >   ACodeTool: TCodeTool;
> > > >   lStartPos: integer;
> > > > begin
> > > >   lItem := LV.Selected;
> > > >   if lItem = nil then
> > > >     Exit; //==>
> > > >   if lItem.SubItems[3] = '' then
> > > >     Exit; //==>
> > > >
> > > >   lStartPos := StrToInt(lItem.SubItems[3]);
> > > >
> > > >   CodeBuffer := CodeToolBoss.FindFile(MainFilename);
> > > >   if CodeBuffer = nil then
> > > >     Exit; //==>
> > > >
> > > >   ACodeTool := nil;
> > > >   CodeToolBoss.Explore(CodeBuffer,ACodeTool,false);
> > > >   if ACodeTool = nil then
> > > >     Exit; //==>
> > > >
> > > >   if not ACodeTool.CleanPosToCaretAndTopLine(lStartPos, Caret,
> > > >   NewTopLine) then
> > > >     Exit; //==>
> > > >
> > > >   LazarusIDE.DoOpenFileAndJumpToPos(Caret.Code.Filename,
> > > > Point(Caret.X, Caret.Y),
> > > >       NewTopLine, -1, [ofRegularFile,ofUseCache]);
> > >
> > > The form is still modal, so the source editor can not be focused. Move
> > > the above line behind the ShowModal.
> > > Save the needed values in some public properties.
> > >
> > >
> > > >
> > > >   Close;
> > > > end;
> > > >
> > > >
> > > > { method the launches the dialog }
> > > > procedure ExecuteProcedureList(Sender: TObject);
> > > > begin
> > > >   with TProcedureListForm.Create(Application) do
> > > >     try
> > > >       ShowModal;
> > >
> > > Add here:
> > >
> > > if ShowModal=mrOk then
> > >   LazarusIDE.DoOpenFileAndJumpToPos ...
> > >
> > >
> > > >     finally
> > > >       Free;
> > > >     end;
> > > > end;
> > >
> > > Mattias
> > >
> > > _________________________________________________________________
> > >      To unsubscribe: mail [EMAIL PROTECTED] with
> > >                 "unsubscribe" as the Subject
> > >    archives at http://www.lazarus.freepascal.org/mailarchives
> > >
> >
> > _________________________________________________________________
> >      To unsubscribe: mail [EMAIL PROTECTED] with
> >                 "unsubscribe" as the Subject
> >    archives at http://www.lazarus.freepascal.org/mailarchives
>
> _________________________________________________________________
>      To unsubscribe: mail [EMAIL PROTECTED] with
>                 "unsubscribe" as the Subject
>    archives at http://www.lazarus.freepascal.org/mailarchives
>

_________________________________________________________________
     To unsubscribe: mail [EMAIL PROTECTED] with
                "unsubscribe" as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives

Reply via email to