Templot Club forums powered for Martin Wynne by XenForo :

TEMPLOT 3D PLUG TRACK - To get up to speed with this experimental project click here.   To watch an introductory video click here.   See the User Guide at Bexhill West.

     Templot5 - To join this open-source project on GitHub click here.  For the latest on-going developments click here.

  • The Plug Track functions are experimental and still being developed. Some of the earlier pages of this topic are now out-of-date.

    For an updated overview of this project see this topic.   For some practical modelling aspects of using Plug Track see Building 3D Track.

    The assumption is that you have your own machines on which to experiment, or helpful friends with machines. Please do not send Templot files to commercial laser cutting or 3D printing firms while this project is still experimental, because the results are unpredictable and possibly wasteful.

    Some pages of this and other topics include contributions from members who are creating and posting their own CAD designs for 3D printing and laser-cutting. Do not confuse them with Templot's own exported CAD files. All files derived from Templot are © Martin Wynne.
  • The Plug Track functions are experimental and still being developed.

    For an updated overview of this project see this topic.   For some practical modelling aspects of using Plug Track see Building 3D Track.

    The assumption is that you have your own machines on which to experiment, or helpful friends with machines. Please do not send Templot files to commercial laser cutting or 3D printing firms while this project is still experimental, because the results are unpredictable and possibly wasteful.

    Some pages of this and other topics include contributions from members who are creating and posting their own CAD designs for 3D printing and laser-cutting. Do not confuse them with Templot's own exported CAD files. All files derived from Templot are © Martin Wynne.

Templot5 bgkeeps_unit

Quick reply >
Why does the form bgkeeps display as a screen with the right hand edge and bottom shrunk to minimum rather than the size defined in the form editor?

As seen in Lazarus IDE form editor:-
1721336205971.png

As displayed at run time:-
1721336444573.png




***** problem solved *****, I think ;)

I believe it might be due to the vertical positioning and width of the datestamp_label object in the form.

1721342203578.png


Steve
 
_______________
message ref: 12002
Last edited:
By moving the object datetime_stamp down, and increasing the width you can improve the size of this window:-
1721383713618.png

so I am beginning to understand how this all works (i think)
Steve
 
_______________
message ref: 12004
so I am beginning to understand how this all works (i think)
@Steve_Cornford

Hi Steve,

There is a significant difference between Delphi and Lazarus in this. I haven't yet done anything about it, it's on the list.

If you look in the OnCreate event for almost all the forms you will see that I have put for example:

procedure Tdate_form.FormCreate(Sender: TObject);

begin
ClientWidth:=500;
ClientHeight:=128;
end;


Which over-rides any other settings and controls the visible size of the form. This is needed because of the different form border widths in different versions of Windows. But Lazarus makes it more tricky and/or needs different sizes.

The datestamp_label across the bottom of most forms is used in the program size slider function.

It always has a height of 4. I called it datestamp_label because in the early days I used to put the form revision date in the Caption, in a very tiny FontHeight of -2. Some forms may still have the last revision date there (or the program version) but mostly I gave up doing it because I forgot to keep it updated and it became meaningless.

I will explain a bit more later. It's a bit hectic here at present.

cheers,

Martin.
 
_______________
message ref: 12006
The original T5 bgkeeps_unit.lfm (form) had all but two of the checkbox fields set to ParentFont = True, and although the form itself had font.height set to -15, the start up kludge was overiding this to -13, so this affected that set of checkboxes set to ParentFont = true.

I have added the necessary font paras to each checkbox so that they all have ParentFont = False, and are set to Font.height = -15.

As an aid to getting to know Lazarus, and with a few development tips from Martin, I have slightly re-arranged the position and order of the checkbox fields.

I have taken the liberty of renaming the two that mentioned 3-D & Kerf, so that they reference 2-D & Kerf.

I have revised bgkeeps_unit.pas, changing the ClientHeight to 360, and the ClientWidth to 900, following the information supplied by Martin about these parameters.

This has resulted in:-
1721404568748.png


Steve
 
_______________
message ref: 12008
@Steve_Cornford

Hi Steve,

I have re-instated your changed font sizes on bgkeeps.unit.pas and bgkeeps_unit.lfm which I think I deleted earlier:

bgkeeps_fonts.png


I also changed the up-down scaling as we discussed, i.e. removed the client-size statements. The up-down buttons then work correctly including after using the program-size slider. But only if datestamp_label extends across the full width and defines the bottom-right corner of the client area. i.e. if you ever change ClientWidth you should also set datestamp_label to the same width.

With the client-size statements removed changing AutoScroll makes no difference. We may as well set it True so that users can resize the forms very small if they wish and still retain access to all the controls.

This is actually a big improvement over Templot2 where AutoScroll=True often caused problems (possibly because of the age of Delphi5 -- but something has definitely changed in a recent Windows update).

Note that forms set as child forms do not need a datestamp_label because Windows applies a wide border to child forms. This means that we can allow the bottom-right control to define the client area on child forms and it looks ok.



The above has been uploaded to main so you should see it in a synchronised fork (have I got that right?).

Although I'm not allowed to create a fork, I have discovered that I can get a temporary working area which leaves the master Templot5 files untouched by cloning the repository. Which is what I was trying to do with branches when I got in a muddle. No more branches. :)

cheers,

Martin.
 
_______________
message ref: 12040
Hi Martin,
Also the 2-D renaming (y)

Documenting the steps I am taking to update my fork:-

Invoke GitHub Desktop:-
1721531247158.png

Invoke Repository > View on GitHub to get:-
1721531321144.png

Then click on the fork drop down arrow:-
1721531392996.png

Select the SteveCornford/Templot5 fork to get:-
1721531500076.png

Which gives the message "This branch is 1 commit behind Martin-Wynne/Templot5:main"

(Pity it doesn't refer to it as a Fork!)

I click on the sync drop down arrow to get:
1721531719476.png

And then click on the green (Update branch) button, and the screen refreshes to:-
1721531810308.png


I close this web page and go back to the open GitHub Desktop screen, and click on the Fetch Origin option, the screen refreshes to give:-
1721531995981.png


I click on the blue (Pull origin) button and after it has contacted the Repository and refreshed the screen to remove the pull request, i click on History tab to get:-
1721532432847.png

Which shows that my local fork has now been updated to include your latest Font adjustments to bgkeeps.lfm commit.

This includes the two files bgkeeps_unit.lfm and bgkeeps_unit.pas, which I copy to my local Lazarus Ide development folder.

Although this process seems long-winded, it is really just a matter of a few button clicks.

Steve


 
_______________
message ref: 12041
Back
Top