Recent

Recent Posts

Pages: [1] 2 3 ... 10
1
Short reply for now... will get into more details when I'm not so "squeezed" for time.

Quote
For instance the trick about "@textvar[0]" to not have every character individually enclosed in single quotes is quite useful
While it might be worth advertising, I wouldn't name it a "trick".

It is normal pascal syntax. You simply watch an expression that returns a "pchar" => so you get to see a pchar. (which is displayed as string)
I agree, "trick" isn't really a good description but, I can't think of a good one at this time.  "options" maybe ?

Maybe you can open a new topic on that (and moderate the topic), and see what others think.
I intend to do that.  Hopefully today or tomorrow.

In general, the debugger has tons of features that are probably seldom used.
I think the real challenge is in figuring out which features are seldom used because they are seldom needed compared to which features are seldom used because they are not common knowledge, e.g, the construct "Ptr[a..b]" is logical but, I didn't know about it and I wouldn't have thought of using it because it's not a valid Pascal statement.  Constructions like that are debugging pearls, extremely useful.

A related but slightly different note, I think that there is a natural fork occurring. By that I mean, FpDebug is really a different debugger than GDB and it will work differently, as a result, I believe that some features are forcefully going to be FpDebug only or GDB only and I think that's natural.   Honestly, at this point, I care very little about GDB.  I realize that's because on Windows FpDebug has gotten quite capable making GDB unnecessary but, that may not be the case on other platforms I don't use.  The point here is, at least on Windows, I think GDB is, in the majority of cases,  legacy stuff.

There are a couple of other things you said I should address, I intend to get to them as soon as reasonably convenient.  There are too many things in my head and some are leaking ;)

I like the new layout of the formatting options... I have about $0.02 worth of comments to mention... next post!

2
LCL / Re: Controlling the behavior - JVCLLaz - JvDBLookUpCombo?
« Last post by wp on Today at 08:29:28 pm »
I have other forms that the JvDBLoopUpCombo isn't displaying the 2nd or 3rd fields in the drop-down to fix these.
As I wrote above, the DisplayWidth specified for a field is interpreted by TJvDBLookupCombo as the width of the same count of 'M' characters. This is required because nowadays fonts have non-uniform character widths; otherwise the column edge would be jagged. Since 'M' is a relatively wide character a DisplayWidth of, say, 10 may appear much wider than you anticipate for your real field values which maybe contain a lot of narrow characters, such as i, l, or r. Please repeat your tests after switching the JvDBLookupCombo's font to Courier or another non-proportional font.

Look at the attached screenshots taken from the project in the JVCL examples folder: The first one, jvdbcombo-default.png, was taken with the Lazarus default font. The second one, jvdbcombo-courier.png, was taken with 'Courier New' for the combo's font. See that now the 1st column width defined by the 'City' field's DisplayWidth of 10 is exactly filled in case of the 10-character string 'Marseilles'.
3
Hey Y'All,

We seem to have a bit of a problem: https://github.com/gcarreno/1brc-ObjectPascal/tree/main/spelunking/roundex

See attached image.

Cheers,
Gus
4
LCL / Re: Dialog ShowModal and an icon within caption bar?
« Last post by ASerge on Today at 08:04:11 pm »
Thanks ASerge; tried  -– true. But, do one see also the causes here? Hm.
TDateTimePicker uses a nested form for the calendar.
The problem is that in Lazarus changes to the border style of a nested form are reflected on the parent form.
There is no such thing in Delphi.
5
General / Re: JEDI error but unit compiles??
« Last post by bytebites on Today at 07:49:17 pm »
You need to fix this piece from /components/jcf2/Parse/BuildParseTree.pas around line 1700.

Code: Pascal  [Select][+][-]
  1. procedure TBuildParseTree.RecogniseArrayConstant;
  2. begin
  3.   // ArrayConstant -> '(' TypedConstant/','... ')'
  4.  
  5.   PushNode(nArrayConstant);
  6.  
  7.   Recognise([ttOpenBracket,ttOpenSquareBracket]);
  8.  
  9.   RecogniseTypedConstant;
  10.   while (fcTokenList.FirstSolidTokenType = ttComma) do
  11.   begin
  12.     Recognise(ttComma);
  13.     RecogniseTypedConstant;
  14.   end;
  15.  
  16.   Recognise([ttCloseBracket,ttCloseSquareBracket]);
  17.  
  18.   PopNode;
  19. end;  
  20.  

Plug this code in
Code: Pascal  [Select][+][-]
  1.   if fcTokenList.FirstSolidTokenType = ttDoubleDot then
  2.   begin
  3.     Recognise(ttDoubleDot);
  4.     RecogniseExpr(False);
  5.   end;
6
General / Re: how to change the color font and background of a button
« Last post by wp on Today at 07:23:58 pm »
you can in Delphi do that with at least TBitBtn and TSpeedBtn
How? In Delphi they even don't have a Color property. Just checked with D7, XE2 and XE 11.3 (see screenshot)
7
General / Re: JEDI error but unit compiles??
« Last post by bobonwhidbey on Today at 07:10:38 pm »
The source of the problem with JEDI had nothing to do with "(*" .  The entire error seems to be caused by JEDI not handling a SET definition correctly.

This works in JEDI:
Code: Pascal  [Select][+][-]
  1. TestSET: set of tWindowState = [wsNormal..wsMinimized];

This does not:
Code: Pascal  [Select][+][-]
  1. TestSET: set of tWindowState = [wsNormal..wsMinimized,wsFullScreen];
8
General / Re: how to search in rxmemory table
« Last post by korba812 on Today at 06:57:30 pm »
Use "Locate" method to search.
https://www.freepascal.org/docs-html/fcl/db/tdataset.locate.html
https://wiki.freepascal.org/locate

For sorting, use "SortOnFields/SortOnFieldsEx" methods available in TRxMemoryData.
9
General / Re: Dynarray initialization pattern
« Last post by Thaddy on Today at 06:30:12 pm »
the only exception i know is with managed types with a range not starting with zero.
managed types always initialize to all zero's or empty so can cause a range check error.
other than that, it has no corner cases, and besides my remark, the memory is initialized.
10
General / Re: how to search in rxmemory table
« Last post by cdbc on Today at 06:17:53 pm »
Hi
Hmmm.... I was under the impression that RxMemoryTable supports SQL?!?
Anywho, I found this https://documentation.help/RXLibrary/documentation.pdf
Dunno if it's of any help to you...
Regards Benny
Pages: [1] 2 3 ... 10

TinyPortal © 2005-2018