Support forum of the software localization tool Sisulizer


.NET, Delphi, ... - Sisulizer Localization Tool Support Home

Get in contact with the makers of Sisulizer.
Our forum is open for all questions around Sisulizer from customers and prospects.
Don't hesitate to register and ask. The Sisulizer team will answer ASAP.

Search     Help Home Sisulizer Website Download
Search by username
Not logged in - Login | Register 

 Moderated by: Sisusupport, Renate.Reinartz, Markus.Kreisel, Ilkka.Salmenius
New Topic Reply Printer Friendly
Inherited forms can not be resized - Bugs and Quirks in Sisulizer - Technical Support (You need to be registered at the forum to write) - .NET, Delphi, ... - Sisulizer Localization Tool Support
AuthorPost
 Posted: Sat Feb 23rd, 2019 12:53 am
PM Private Upload Quote Reply
lauri
Member
 

Joined: Sat Feb 17th, 2018
Location:  
Posts: 22
Status: 
Offline
Hi!
inherited forms where height or width is same as in parent can not be resized because VCL filer does not write unchanged values to dfm and thussisulizer does not find the row when scanning. when resizing such form, new row should be created.



____________________
BR,
Lauri
Back To Top PM Private Upload Quote Reply

 Posted: Sat Feb 23rd, 2019 01:02 am
PM Private Upload Quote Reply
lauri
Member
 

Joined: Sat Feb 17th, 2018
Location:  
Posts: 22
Status: 
Offline
And also inherited form detection seems to be somewhat broken. At least for Delphi 7 based projects.

I get messages like such:
Unused inherited form "TSomeInheritedForm". It's parent form can't be resolved. Check if it is still needed in the project.

While the parent form is available and included in the Sisulizer project.

I noticed that when project options natural string sorting is selected then inherited form linking fails.

If auto-detection is difficult then perhaps provide a way to map inherited forms manually? (i can put ancestor property in slp file by hand but that is rather inconvenient to do)
If you have trouble reproducing the problem then i can make a testcase.

Last edited on Sat Feb 23rd, 2019 01:05 am by lauri



____________________
BR,
Lauri
Back To Top PM Private Upload Quote Reply

 Posted: Mon Feb 25th, 2019 11:15 am
PM Private Upload Quote Reply
Markus.Kreisel
Administrator


Joined: Sat Apr 8th, 2006
Location: Monschau, Germany
Posts: 3237
Status: 
Offline
Yes, we need something to reproduce. The simpler, the better.

Thanks

Markus



____________________
http://www.sisulizer.com - Three simple steps to localize
Back To Top PM Private Upload Quote Reply

 Posted: Mon Feb 25th, 2019 12:40 pm
PM Private Upload Quote Reply
Janusz Grzybek
Super Moderator


Joined: Fri Dec 1st, 2006
Location: Zabrze, Poland
Posts: 3866
Status: 
Offline
Markus.Kreisel wrote: Yes, we need something to reproduce. The simpler, the better.

Thanks
You can use Private Upload button right above post to sending sample to us.
Janusz



____________________
http://www.sisulizer.com - Three simple steps to localize
Back To Top PM Private Upload Quote Reply

 Posted: Mon Mar 4th, 2019 10:02 pm
PM Private Upload Quote Reply
lauri
Member
 

Joined: Sat Feb 17th, 2018
Location:  
Posts: 22
Status: 
Offline
Hi!
I've uploaded simplest test case i could manage.

It looks like the problem manifests only with runtime created forms. Perhaps, for establishing parent-inherited form relationship, Sisulizer relies on some info that is only compiled when forms are auto-created.



____________________
BR,
Lauri
Back To Top PM Private Upload Quote Reply

 Posted: Tue Mar 5th, 2019 08:41 am
PM Private Upload Quote Reply
Markus.Kreisel
Administrator


Joined: Sat Apr 8th, 2006
Location: Monschau, Germany
Posts: 3237
Status: 
Offline
Dear Lauri,

You gave the answer yourself.

Sisulizer can only localize what is in your resources. And Sisulizer doesn`t analyse or execute your source code. It uses the binaries as a blueprint to create localized binaries. Everything that is created at runtime needs logic to be localized at runtime.

Markus



____________________
http://www.sisulizer.com - Three simple steps to localize
Back To Top PM Private Upload Quote Reply

 Posted: Tue Mar 5th, 2019 02:36 pm
PM Private Upload Quote Reply
lauri
Member
 

Joined: Sat Feb 17th, 2018
Location:  
Posts: 22
Status: 
Offline
Markus,

I'm sorry i was unclear by mentioning runtime created forms. I did not mean forms that are entirely constructed by code. I meant forms that were designed in the IDE and have resource info but are not initialized in Delphi project file via Application.CreateForm function.

And Sisulizer obviously analyzes the sources (why else it is asking for dpr file). And possibly (i'm speculating here) also object class tables in the binary to establish object inheritance (because that is not possible to establish simply by looking at the dpr file).

In creating the test-case i also discovered that Sisulizer does not re-check the parent-inherited form linkage at later scans. Once the inherited form is marked with yellow warning "Unused inherited form", it does not go away. Even when adding the inherited forms as auto-created in Delphi project and rebuilding. I have to remove the project and add it again.
This is both good and bad - currently i can fix it by hand in Sisulizer project file and it will stay fixed even after re-scan. Rescan not re-checking inheritance should only be fixed after establishing inherited form parent has been fixed. Otherwise the manual change would get lost.

Last edited on Tue Mar 5th, 2019 02:38 pm by lauri



____________________
BR,
Lauri
Back To Top PM Private Upload Quote Reply

 Posted: Tue Mar 5th, 2019 04:04 pm
PM Private Upload Quote Reply
Markus.Kreisel
Administrator


Joined: Sat Apr 8th, 2006
Location: Monschau, Germany
Posts: 3237
Status: 
Offline
The drc is used to make the link between ids and names of resources. You can localize Delphi binaries completely once without having its sources and/or drc.

The drc is needed if you project is altered and re-compiled. Then Delphi changes the ids and Sisulizer uses the drc to get the new link between id and names (later don`t change while compiling).

Since our customers are developers changing code is the normal case. Therefore we need to make sure to have the correct drc from the beginning. Sisulizer doesn`t need your source code.

Markus

I edited the post since Sisulizer needs binaries plus drc file for localization (not the Delphi project file).



____________________
http://www.sisulizer.com - Three simple steps to localize
Back To Top PM Private Upload Quote Reply

 Posted: Tue Mar 5th, 2019 04:27 pm
PM Private Upload Quote Reply
lauri
Member
 

Joined: Sat Feb 17th, 2018
Location:  
Posts: 22
Status: 
Offline
My point was that dpr IS source code.
The solution could easily be to place some hint in agreed format for Sisulizer in the dpr file as comment. Or manual linking of parent and inherited forms in Sisulizer UI.



____________________
BR,
Lauri
Back To Top PM Private Upload Quote Reply

Current time is 09:35 am  
.NET, Delphi, ... - Sisulizer Localization Tool Support > Technical Support (You need to be registered at the forum to write) > Bugs and Quirks in Sisulizer > Inherited forms can not be resized



WowUltra modified by Sisulizer Copyright © 2007-18 by Jim Hale - Based on WowBB Copyright © 2003-2006 Aycan Gulez

Impress - Privacy statement

Sisulizer software localization tool - Three simple steps to localize