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.

OpenTemplot2024

Quick reply >
.
Just some evidence that the 2-way BOX file compatibility is working fine.

200 templates from Eastwood Town (from the late Gordon Stolliday), saved from Templot2 and loaded into OpenTemplot2024:


et_ot.png



and back the other way, saved from OpenTemplot2024 and loaded into Templot2:


ot_t2.png



If you are wondering why we have jumped from Templot2 to Templot5:

templo2_logo.png
.
templo5_logo.png


A boiled egg for lunch. :)

Martin.
 
_______________
message ref: 11702
I do miss Gordon's posts. He took Templot to places others rarely get to and was a very talented track builder. He was a true gent and was not only a very generous man but one who had time for all

I remember Eastwood Town station building was made by the late Alan Downs, I hope the station and trackwork have been saved and treasured by someone

Though Eastwood Town must have pushed up the price of copperclad by the sheer amount used as he strove for perfection
 
_______________
message ref: 11704
_______________
message ref: 11724
Marvellous :)

Could I suggest that we don't worry about Git for now and share ideas about the code structure first. Or rather, what the code structure could look like in a single codebase.

The code you have commented out Martin could be wrapped in {$IFDEF CLOSED} directives?

Then, to update the contents of open_templot_2024.zip a batch file could copy the relevant files to another directory ready for creating an updated zip file? Something like:

COPY action_unit.* c:\ZIP
COPY alert_unit.* c:\ZIP
.
.

Post the zip file to the OpenTemplot2024 -- files ex-Delphi5 topic and others can update a Git repository.

Does that make sense?

Martin
@nickom @NoIdea @Rusty @Alistair Ward @graeme @Steve_Cornford @James Walters @Phil G

Here we go.

I said I would post an oven-ready Lazarus version of the open-source files. This is oven-ready in the sense that it will compile and run in Lazarus, but there are still many issues to fix, mostly cosmetic relating to font sizes and group-box controls (the Delphi Converter seems to have messed up a lot of stuff). Also at present the file viewer is missing, and the image exports aren't working. Most of the stuff which needs looking at is commented out "OT2024". The sketchboard can't be open-sourced for copyright reasons, so replacing that is a major separate project for the future.

But it should work mostly ok for track planning and plug track. :)

I'm provisionally calling this "Templot5" for when it finally replaces Templot2 for general use, but we can change the name later if we wish. In the meantime it opens as OpenTEMPLOT2024 to avoid confusion with Templot2.

The zip is too big to attach here, it can be downloaded from:

https://85a.uk/laz/LAZ_2024.zip

The Delphi5 files which I posted previously are not needed and can be ignored. Don't get them muddled up with the above.



For those new to this:

1. extract the files from the above zip into a suitable location on your computer, entirely separate from anything else.

2. it includes a sub-folder TEMPLOT5_OUTPUT which is where Lazarus will save its output. There is already a copy of the templot_5.exe compiled program in there, so even if you can't get Lazarus to compile you can try running Templot5 to see how well it works, what to expect and what needs fixing.

It should start up looking like this:

t5_startup1.jpg


The background console window is needed to prevent the program hogging 30% or more CPU, even when idle. Why this should be necessary with Lazarus is a mystery to me -- with some IT professionals on board perhaps we can find out? :)

3. if not already, download and install Lazarus 3.4 from:

https://www.lazarus-ide.org

4. in Lazarus click the File > Open... menu item, and navigate to the above downloaded files. Select and open the file:

OpenTemplot2024.lpi

5. answer Yes or Open Project to any questions which come up.

6. if the Project Inspector window is showing (not the Object Inspector), you can close it.

7. if the Source Editor window is missing or empty, click the Project > Units ... menu item, and select control_room.pas from the list to see that something is indeed there.

8. you are now ready to try compiling Templot5.
:)


9. as this is a first try, it's best to do a full build to check for errors before running. Click the Run > Build menu item:

2_101623_400000000.png



10. it will take a while -- the Messages window will appear and fill with messages.

There will be several Warning messages, but hopefully no red Error messages. The warnings will need to be fixed in due course, especially if you want to port Templot5 to some other platform such as Linux or Mac. But for now they are not serious on Windows and can be ignored.

The word which you are looking for is "Success" on a green background.
:)


It should appear eventually:

2_101623_400000001.png



11. assuming you get a green, it's finally time to try running it. Click the Run > Run menu item:

2_101623_410000002.png



12. it may again take a while, and the Messages window may appear again. But eventually you should see the familiar Templot start-up, running Templot version 555a.

cheers,

Martin.
 
_______________
message ref: 11725
I was unable to Run > Build with the following error:

1719525883832.png


In the Project Inspector collapse the files node which will reveal the Required Packages node. If you then click on it it will allow you to download the package.

After the IDE has restarted do Run > Build again to get:

1719526156115.png


Result!

Martin
 
_______________
message ref: 11727
I was unable to Run > Build with the following error:

View attachment 9986

In the Project Inspector collapse the files node which will reveal the Required Packages node. If you then click on it it will allow you to download the package.

After the IDE has restarted do Run > Build again to get:

View attachment 9987

Result!

Martin
@NoIdea

Thanks Martin. (y)

It's the HTML Viewer component and it's been a constant thorn in the flesh in Lazarus. It just works straight off in Delphi.

How it manages to appear on the component menu without being installed is a mystery to me -- but so is a lot else in Lazarus at present:

laz_html_viewer.png


But once over the hurdle of installing it, it should be fine.

In fact I made several changes in the HtmlView units for Templot, so I will be posting those shortly. There is still a lot of tidying up to do.

With Templot 245a now also released, you should be able to test transferring BOX files to and fro between them. I confess to being quite on edge about this, because an error could lead to folks losing valuable work. I shall be feeling a lot happier about this whole thing when I get some reports of folks moving files back and forth without any data loss. Getting this working was the key to shifting from Delphi to Lazarus, so it's important.

cheers,

Martin.
 
_______________
message ref: 11728
_______________
message ref: 11731
.
From the files I have posted I have removed the code for connecting to the internet to check for program updates, etc., and download the update setup files.

I'm not clear how that works in an open-source context, because those functions were accessing my web server directly. Likewise I need to think about the terms of use for Templot2, and what changes might be needed for Templot5 with regard to the copyright of derived material, requirement to use only the latest version, support for users of different versions here on Templot Club, etc.

After a period of relative stability in Templot I'm feeling a bit like this at present:

53817.jpg

© linked from https://radioparadise.com/slideshow

:)

Martin.
 
_______________
message ref: 11732
Martin,

Many thanks for posting these - I've already taken a look and have a question about some of the sub-folders.

If I'm understanding correctly, lib contains everything generated while compiling, so not source-code per-se. However, most of TEMPLOT5_OUTPUT is not generated via compilation, rather are 'manually' added - only templot_5.exe is what is generated.
Similarly, backup can be ignored (as well as any .bak files) as being artefacts of the conversion process.

Is this correct?

Why am I asking this?

I'm trying to determine which files need to be monitored for changes as opposed to those that are created as part of the build process. This is to aid in setting up a source code repository (I've previously been involved in the management of the JMRI code repository on GitHub)

Many thanks.

Matt H
 
_______________
message ref: 11733
I confess to being quite on edge about this

I understand.

I think, alongside my converter program (which is going to take months) I need to turn into a tester. It's another way to learn what Templot does.

I'm also learning Templot in order to build track and on my third attempt ever with a soldering iron I've produced a straight piece of TT:!20 track using code 80 flat bottom rail which connects to Hornby set track with Hornby rail joiners.

In another session I've created a curved crossover using 245a. I've saved the file but it still looks like a binary file to me. I saved the file using the save all button in the storage box:


1719559515894.png



I've attached the result in case that's of any use.
 

Attachments

  • R5 - LH - Crossover - 60°.box
    23.3 KB · Views: 27
_______________
message ref: 11734
Martin,

Many thanks for posting these - I've already taken a look and have a question about some of the sub-folders.

If I'm understanding correctly, lib contains everything generated while compiling, so not source-code per-se. However, most of TEMPLOT5_OUTPUT is not generated via compilation, rather are 'manually' added - only templot_5.exe is what is generated.
Similarly, backup can be ignored (as well as any .bak files) as being artefacts of the conversion process.

Is this correct?

Why am I asking this?

I'm trying to determine which files need to be monitored for changes as opposed to those that are created as part of the build process. This is to aid in setting up a source code repository (I've previously been involved in the management of the JMRI code repository on GitHub)

Many thanks.

Matt H
@Matt Harris

Hi Matt,

Thanks for your interest. :)

The folder TEMPLOT5_OUTPUT is an entire Templot installation. It corresponds to your folder C:\TEMPLOT_DEV for Templot2.

It is included in the zip so that users have a ready-made installation for Templot5 and a target destination for the compiled templot_5.exe file ready set up in the Lazarus project. That is the only file which Lazarus changes in that folder.

Normally the Templot folder with its sub-folder structure would be created by the program installer setup. Hopefully the installer will be putting templot_5.exe in a user's C:\TEMPLOT_DEV folder instead of templot_2.exe in some future program update, completely transparently to the user.

In the meantime we can use the TEMPLOT5_OUTPUT folder for testing. You can move it somewhere else or change its name if you wish, but remember to make a corresponding change to the target setting in the project at Project Options > Compiler Options > Paths. It's helpful to create a desktop shortcut to templot_5.exe for testing.



The lib and backup folders belong to Lazarus and are not part of Templot. I included them in the download zip so that you would have a ready to go system without any permissions issues. Possibly I should not have done that. But I do want to make it as easy as possible for Templot users to have a go at some coding if they wish.

The backup folder contains backups for files being edited in the Source Editor.

The lib folder contains the compiled object files for each unit, which the linker combines to create the final exe file. I don't yet know enough about Lazarus to describe what each file contains.



Thanks for setting up whatever is needed on GitHub. I do have an account on there at:

https://github.com/Martin-Wynne/Templot5

but I'm completely lost as to what to do on there. Over the years I have read the docs several times, but I'm none the wiser as to where I would post a modified file after a coding session. :(

cheers,

Martin.
 
_______________
message ref: 11735
From the files I have posted I have removed the code for connecting to the internet to check for program updates, etc., and download the update setup files.

That makes sense.

I'm not clear how that works in an open-source context, because those functions were accessing my web server directly.

If you re-introduce the code for connecting to the internet but enclose it in a directive {PUBLISH} then the publisher (you, at the moment) would build with PUBLISH set (not sure how you do this in the Lazarus world), build the setup files as you are doing now, which are then pushed to the web site.

So, basically, the same as you do it now, but with the PUBLISH directive. Open source developers like me will build without the PUBLISH directive.

The version check code I'm assuming checks something like 85a.uk/version so if that were changed to two endpoints such as 85a.uk/full/version and 85a.uk/open/version then the two builds could be hosted side-by-side.

After a period of relative stability in Templot I'm feeling a bit like this at present

That's understandable so let's wind this back until you are comfortable. It might make you feel better to know that I was completely confused when I loaded a box file, then did something else, but when I returned it was showing the default curved turnout. Because I'm running Templot2 AND Templot5 in Lazarus at the same time. :)

The key is that we (the others following along) now have Lazarus source that builds and runs so we can start to explore. This weekend I'll point my converter at the Lazarus code rather than the 2018 source code.

Personally, I'm a big fan of build and deploy early so we can enlist others to help with the testing of Templot5.

Perhaps we can help if we understand your current build and deploy process? Or maybe go through this on a Zoom call?

Martin
 
_______________
message ref: 11736
The version check code I'm assuming checks something like 85a.uk/version so if that were changed to two endpoints such as 85a.uk/full/version and 85a.uk/open/version then the two builds could be hosted side-by-side.

Correction: two endpoints such as 85a.uk/Templot2/version and 85a.uk/Templot5/version.
 
_______________
message ref: 11738
I understand.

I think, alongside my converter program (which is going to take months) I need to turn into a tester. It's another way to learn what Templot does.

I'm also learning Templot in order to build track and on my third attempt ever with a soldering iron I've produced a straight piece of TT:!20 track using code 80 flat bottom rail which connects to Hornby set track with Hornby rail joiners.

In another session I've created a curved crossover using 245a. I've saved the file but it still looks like a binary file to me. I saved the file using the save all button in the storage box:


View attachment 9993


I've attached the result in case that's of any use.
@NoIdea

Hi Martin,

That looks good and the file loads fine into Templot5:

noidea_scren.png



The BOX file format is a mix of binary, XML and plain text sections. It's grown into a bit of a tangle over the last 30 years, while I've tried to keep it always fully forwards and backwards compatible, while adding lots of new program features. I've had to break that for 245a -- BOX files created before 2nd May 2001 will lose any shove-timber data on loading. And for Templot5 only BOX files created in 245a or later are usable. Existing users will need to keep a copy of 245a to use as a converter for their old BOX files.

Yes, we can have a Zoom meeting about all this soon -- when would be a convenient time? :)

Because I'm running Templot2 AND Templot5 in Lazarus at the same time. :)

You may have noticed that I have changed the Templot2 yellow hard-hat icon to a green one for Templot5. :)


p.s. your template TL001 has an inner radius of only 256mm (10"). I don't know anything about TT:120 but I suspect that it is very tight. To ease it would mean changing to longer turnouts, such as B-8, or curving the crossover to a larger ruling radius.

cheers,

Martin.
 
_______________
message ref: 11739
The folder TEMPLOT5_OUTPUT is an entire Templot installation. It corresponds to your folder C:\TEMPLOT_DEV for Templot2.

It is included in the zip so that users have a ready-made installation for Templot5 and a target destination for the compiled templot_5.exe file ready set up in the Lazarus project. That is the only file which Lazarus changes in that folder.

Normally the Templot folder with its sub-folder structure would be created by the program installer setup. Hopefully the installer will be putting templot_5.exe in a user's C:\TEMPLOT_DEV folder instead of templot_2.exe in some future program update, completely transparently to the user.

I'm minded to to include a sub-folder within TEMPLOT5_OUTPUT containing a full Templot2 245 installation. This would do two things (but only on Windows):

1. Templot5 would have a means of loading old BOX files by using Templot2 as an external converter exe. This is also necessary for a re-instated file viewer function to be worth having in the short term. It is mainly used for sorting through old forgotten BOX files from years ago, and such things won't exist in the new format for some time. The file viewer also has an option to batch-convert such old BOX files to the new format, but in order to do that it needs to be able to load them.

2. Users would be able to swap back to Templot2 easily if they need any functions missing from Templot5 such as the sketchboard. I would do a 245b update to make such use from Templot5 as seamless as possible. 245b won't be getting any future developments for Templot5 such as the K-crossings in plug track, GWR chairs, automatic outside slips, split-deflection switches, etc., so there would be no incentive to use Templot2 in preference to Templot5 for normal use.

Any thoughts? Is this worth doing, or is it all getting too complicated? Also does it detract from the "purity" of open-source if it relies on external non-open-source executables for some functions? We already have one such to implement the PDF file export.

p.s. BGS3 files are fully compatible as they stand and can be transferred between Templot2 and Templot5 without problems. This is good news for anyone using them for plug track timbering bricks and rafts.

Martin.
 
_______________
message ref: 11745
Any thoughts? Is this worth doing, or is it all getting too complicated? Also does it detract from the "purity" of open-source if it relies on external non-open-source executables for some functions?
The main thing is for you to be doing what you do best - K-crossings in plug track, GWR chairs, automatic outside slips, split-deflection switches, etc., on the full-fat Templot 5. The only difference is you are using Lazarus.

The open source version will always be a cut-down version due to closed-source dependencies such as the sketch board.

The open source files can be zipped up and published in the OpenTemplot2024 -- Lazarus files for Templot5 thread from time to time which would omit sketchboard.pas, for example. There would need to be some code commented out (or, more elegantly, using directives) so the open source version would build and run as you have already done.

Open source developers can send you patches which you can incorporate into Templot5 if you approve of the changes.

I'm minded to to include a sub-folder within TEMPLOT5_OUTPUT containing a full Templot2 245 installation. This would do two things (but only on Windows):

Is this necessary? Would Templot5, just like Templot2, open old box file format and save to new?

BTW, I assume you deleted my TT:120 posts as they're off-topic?
 
_______________
message ref: 11746
_______________
message ref: 11747
BTW, I assume you deleted my TT:120 posts as they're off-topic?
@NoIdea

Hi Martin,

I don't delete stuff. :)

Just forum housekeeping -- moved to a more appropriate place for others to follow up:

https://85a.uk/templot/club/index.php?threads/starting-with-tt-120.955/


The main thing is for you to be doing what you do best - K-crossings in plug track, GWR chairs, automatic outside slips, split-deflection switches, etc., on the full-fat Templot5. The only difference is you are using Lazarus.

The problem is that it won't be full-fat for some time to come. Users knowing it is a cut down version might prefer to continue using Templot2 for the foreseeable future. Which would deprive us of valuable feedback on Templot5, and also makes support here on Templot Club difficult -- the very first line in most replies would be "Are you using Templot2 or Templot5?".

I want to do as much as possible to encourage folks to swap to Templot5 -- and maybe want to get involved in the coding too. :)

Is this necessary? Would Templot5, just like Templot2, open old box file format and save to new?

Yes, that's the intention -- I haven't actually written it yet. Obviously it would work only on Windows -- but it's unlikely new users on other platforms will have lots of old BOX files.

cheers,

Martin.
 
_______________
message ref: 11748
Martin and All,

Most of the contents of my box are part complete layouts, I'm slowly going through the file viewer and opening up the "latest" iteration of each in Templot 2.45 and saving them again, is this correct or do I need to do it in Templot 5?

Thanks.
 
_______________
message ref: 11749
Martin and All,

Most of the contents of my box are part complete layouts, I'm slowly going through the file viewer and opening up the "latest" iteration of each in Templot 2.45 and saving them again, is this correct or do I need to do it in Templot 5?

Thanks.
@Phil O

Hi Phil,

That's fine.(y)

I'm hoping to get to a stage where they can be automatically converted, but we are not there yet.

At least it's a chance to discover all the old designs you have forgotten about. :)

cheers,

Martin.
 
_______________
message ref: 11750
I'm minded to to include a sub-folder within TEMPLOT5_OUTPUT containing a full Templot2 245 installation.

<SNIP>

Martin.

Martin,

I've got a few thoughts around splitting out the various source and build-helper files etc.

Part of the rationale behind this is to be able to denote what is the source code; what is used for building/compiling; what is used for packaging a final installation.

In addition, a complete 245 installation can also be incorporated into such a structure.

I'll try to work on a proposal over the coming days, but I'm currently sat in an airport en-route to holiday so there may be some delays.

One question - how is the current installer built? Is there a script or similar? Only nothing immediately jumped-out as such in the sources currently available.

Thanks.

Best regards,

Matt H
 
_______________
message ref: 11754
One question - how is the current installer built? Is there a script or similar? Only nothing immediately jumped-out as such in the sources currently available.
@Matt Harris

Hi Matt,

Templot doesn't actually need an installer -- you can put a copy of templot_2.exe in an empty folder or on an empty USB stick and it will run. Try it and see. :)

However the actual installer is created using a script for Jordan Russell's Inno-Setup:

https://jrsoftware.org/isinfo.php

The main purpose of the installer being to associate the file types and set up the folder structure. Otherwise everything goes into wherever Windows puts stuff, never to be found again. If necessary I could create the folder structure using the ForceDirectories function in the program -- I haven't needed to do that using Inno-Setup.

For Templot5 I assumed we would write a new script for Inno-Setup.

Have a good holiday! :)

cheers,

Martin.
 
_______________
message ref: 11755
<SNIP>

the actual installer is created using a script for Jordan Russell's Inno-Setup:

https://jrsoftware.org/isinfo.php

The main purpose of the installer being to associate the file types and set up the folder structure. Otherwise everything goes into wherever Windows puts stuff, never to be found again. If necessary I could create the folder structure using the ForceDirectories function in the program -- I haven't needed to do that using Inno-Setup.

For Templot5 I assumed we would write a new script for Inno-Setup.

Martin,

If it's not too much hassle, could you provide a copy of the current Inno-Setup script? I'm sure it would be useful for inspiration when looking at the v5 version :)

Plus I have some familiarity with installer scripts as, within the JMRI development context, worked on developing their NSIS-based installer script.

Many thanks again.

Matt H
 
_______________
message ref: 11756
If it's not too much hassle, could you provide a copy of the current Inno-Setup script? I'm sure it would be useful for inspiration when looking at the v5 version :)
@Matt Harris

Hi Matt,

Here you go. It's quite basic and I'm still using an oldish version of Inno-Setup. I can't see any reason to change much for Templot5 other than the program name and the legal/copyright stuff.

It's not needed yet because I have included a dummy install in the TEMPLOT5_OUTPUT folder, and if you want one elsewhere you can just copy that entire folder. :)

cheers,

Martin.
 

Attachments

  • inno_setup_245a.txt
    4.6 KB · Views: 30
_______________
message ref: 11759
.
As Templot seems to have reached another turning point in its history, here is something from 44 years ago.

I've posted it before, but not recently:



WEST MERCIAN EM GROUP NEWSLETTER, SEP 1980

"Our last meeting, held at Broadwas Village Hall on 7th Sep 1980, was one of the liveliest we have had. Ten members were present and among matters discussed were
....
....

A most interesting development was then described by Martin Wynne.

Neville Fairbairn had asked Martin for help in setting out a turnout from a curved road. From this request Martin had gone on to devise a system for enabling any turnout to be drawn out on 1mm graph paper by even the most inexperienced.

Given the radius of the main line, the crossing angle and switch type, Martin can supply the X and Y co-ordinates of the rail running face at every chair position. From this data it is easy to construct a turnout template, indeed Martin did it in about 20 minutes, explaining as he went.

Thus the days of track plans being juggled to suit the templates available from commercial sources are over - pointwork can now be made to suit the site as was done in full-size practice.

Needless to say the figures for the various offsets are produced by a micro-computer, using a program written by Martin. This must be one of the most interesting developments in modelling in recent years.
"



Kind words there from the late Roy Miller. What would Roy have made of Templot today? But 20 solid minutes poring over 1mm graph paper! For one template! With my eyes now 44 years older I can understand why there were so few takers at the time.

By the way, Roy was the inventor of "EM minus 2", now popular as 00-SF.

Martin.
 
_______________
message ref: 11760
Needless to say the figures for the various offsets are produced by a micro-computer, using a program written by Martin.
Its funny how certain words at the time, can have a futuristic content without even realizing it. Take the word micro computer, what in meant back in 1980 and what it means today, are two very different things indeed.
Martin I bet when you were working on the first Templot, you never dreamed it would be where we are today as we rolled on into Templot 5? Or did you!!!!

In a strange way even the new hobby of simulated train control is very similar in concept, being able to calculate X ,Y and now Z coordinates for almost every pixel required.
cheers
Phil
 
_______________
message ref: 11761
Martin I bet when you were working on the first Templot, you never dreamed it would be where we are today as we rolled on into Templot 5? Or did you!!!!

Hi Phil,

It's difficult to remember what was in my head yesterday, let alone what was in it in 1980. :)

The program was originally for my own use. I didn't imagine that before long everyone would have a computer of their own and that I would end up supplying the software -- rather than a template in the form of a list of X,Y co-ordinates. The computer I was using had no screen, no mouse, just a calculator-type display with a row of 7-seg characters, and the printer was a text-only 2" wide thermal printer roll. What I didn't see coming was the big reduction in the cost of computers for home use, and affordable ink-jet printers rather than the industrial pen-plotter which I imagined would be needed to create the templates. If I had known that I might have called it Temprint rather than Templot.

Almost nothing remains of the hardware from that time, except perhaps the keyboard. But much of the original mind-set does remain -- not least the concept of individual items of pointwork called "templates" in the style of what was available in the hobby at that time. If we were starting again there would be no need for that. A track plan could be an integral whole assembled from individual rails, switches and crossings in the same way as the prototype. That would have avoided the clunky process we now need to create the 3D timbering bricks, splitting up and re-assembling the existing "templates". Oh to be a bit younger and able to start again with a clean sheet!

cheers,

Martin.
 
_______________
message ref: 11762
.
I now have an automatic file conversion working in Templot5:

t5_converter_message.png


This means it is no longer necessary to worry about converting your old BOX files in Templot 245a. It also means it should be possible to re-instate the file viewer.

The conversion is a bit clunky, using an embedded version of Templot2 as the converter. This means of course that it works only on Windows, but users of Templot5 on other platforms are unlikely to have many old-format Templot2 files.

I have decided against embedding a full installation of Templot2 in Templot5, mainly because of issues around internet connections and automatic updates. Any Templot5 user wanting an old Templot2 version can easily install one if needed.

It's likely that this function will throw up some quirks, but I'm confident we should be able to fix them. I will post the updated files shortly, also some updates for the HtmlViewer.

Martin.
 
_______________
message ref: 11777
.
There is such a lot to think about in this change to open-source/Lazarus. But we are getting there:


template_copyright_update.png


Martin.
 
_______________
message ref: 11778
_______________
message ref: 11780
Hi Martin,

Earlier today I was having a play with Templot5, and upon comparing the Gauge_Unit form with Templot2 saw that the a,b,c,d custom buttons were lower so half obscured, also noted that the legend " set custom .." was displaying in black rather than blue.

I revised the button positions by editing the "top = 22" down to "top = 4" for each of a,b,c,d.
Then also managed to overcome the font colour problem by:-
Project > Project Options > Application
1720025058452.png

Then unticked the - For Windows - "use manifest resource ( and enable themes) tick box

which then resulted in moving the buttons and the font colour being honoured:-
1720025264181.png


By the way, do you want us to feed back any results of our playing testing like this?
Or to put it another way are there any ground rules that you would like us to obey?
Steve
ps this was before your latest file updates.
 
_______________
message ref: 11783
_______________
message ref: 11784
Hi Martin,
Followed your instructions and I can now build without errors.
Thank You
Steve
@Steve_Cornford

Thanks Steve,

You can test if it's working by going to this window:

html_viewer_changes3.png


And clicking the blue text links. They should now work and open the relevant dialogs.

Notice that I have not yet fixed the font sizes and group box alignments on this form -- it's the mint_unit.

There seems to be a bug, or a feature, or a setting, in Lazarus preventing it from saving or honouring the form font size set in the LFM file. Controls which have ParentFont set True are therefore all wrong.

A fix for this is at:

https://85a.uk/templot/club/index.php?posts/11823


You might also like to try changing the program size on the slider. The left-hand half of the above form (which is HTML) should now scale up and down accordingly.

This does illustrate the piecemeal way Templot has developed over the years -- there is no particular reason why some forms should have chunks of HTML on them while others are created directly in the form editor. It's just the way I was working at the time.

cheers,

Martin.
 
_______________
message ref: 11787
By the way, do you want us to feed back any results of our playing testing like this?
Or to put it another way are there any ground rules that you would like us to obey?
@Steve_Cornford

Hi Steve,

This is now an open-source hobby project, so it's not for me to start making rules. Contributors can post or not post whatever they wish in whatever way they wish. No doubt we can come to some agreement about the best way to make progress -- we can perhaps discuss all this in a Zoom meeting soon.

There are some tasks to get on with which are not mutually exclusive:

1. make everything in Templot5 look good and work smoothly as far as possible replicating Templot2.

2. make progress with plug track -- initially to get some more chairs done.

3. anything else folks want to do, bearing in mind that it's a hobby. :)

cheers,

Martin.
 
_______________
message ref: 11788
Hi Martin,
I tried clicking on the curving radius blue text link, and it opened the curving radius dialogue box, but then i noticed that the carriage-return (or Enter as it is also called) key was not being accepted . The [Enter] button was working.

I then tried one of the DFX Export dialogue boxes (the 3D Timbering sizes screen) and that exhibited the same problem with the enter key not being recognised. Clicking on the [enter] button does work.
This is in Templot_5 having performed a build with the latest html components.
Steve
 
_______________
message ref: 11789
but then i noticed that the carriage-return (or Enter as it is also called) key was not being accepted . The [Enter] button was working.
@Steve_Cornford

Hi Steve,

Thanks. It is nothing to do with the HTML changes.

It seems that Lazarus is implementing some form events differently. This is the entry_sheet + data_entry_form and its working is quite tangled with some buttons intentionally hidden behind others. It could do with a re-write.

A possible short-term fix is setting the enter_button.default to True, and creating an OnFormDeactivate event, and putting ok_panel.Hide; in it:


laz_data_entry_fix1.png



laz_data_entry_fix.png



But it needs a lot more testing. No more Templot for me today because I have been roped-in for duties at the polling station. :)

p.s. I will move these posts to the discussion topic. I'm hoping to keep this one for code downloads only, so that folks can find them at a later date without scrolling through all the discussion.

cheers,

Martin.
 
_______________
message ref: 11790
Back
Top