Comments (21)
Thank you for your detailed suggestion and analysis.
We'll consider whether the removing action will be overwrite by IDE itself when exiting.
from cnwizards.
We make a nightly-build 1179 for this feature, whose switch is in Menu "CnPack" -> "IDE Enhancements Settings" -> "IDE Main Form Enhancements", "Clear Session Project in Registry when Exiting".
Please try it?
https://www.cnpack.org/downbuilds.php
from cnwizards.
I see, 5f5459e
Seems working fine in D2007, but can you for extra safety run it in the constructor too?
You can not use class properties to support Delphi 5 (you really do? even i dropped D5 some years ago, then JVCL followed). So i would remove FClearRegSession
and the property go straight into the global var via getter/setter.
Delphi 5 even supported inline functions AFAIR. Not sure it was smart enough to use it inside the object setters. Then right after readign the properties it could run the ClearRegistrySessionProject
too for double safety :-)
I just fear later IDEs could change the exit sequence, so double action would be more surviable.
I would also make some tests with XE2 and XE10.2.0 later
P.S. hmmm...
---------------------------
bds.exe - Точка входа не найдена
---------------------------
Entrypoint @$xp$34Toolsapi@IOTADebuggerVisualizer250 not found in DLL C:\Program Files (x86)\CnPack\CnWizards\CnWizards_D102T.DLL.
---------------------------
ОК
---------------------------
I rarely launch XE10.2.0 here so am not sure when did it broke.
Sorry, could not test in Tokyo.
In 2007 it works so my main itsch is scratched, thanks a lot.
from cnwizards.
P.S. a matter of taste, but i'd suggest the "intention over implementation" wording for the checkbox.
Caption = 'Do not open the last opened project when IDE is launched.'
Or maybe less smooth but hopefully more digestable for techies and with less tautology.
Caption = 'IDE startup: Do not open the last project you worked on.'
The current caption i guess would fit nicely the docs:
ShowHint = True
Hint = 'CnWizards would clear the Session\Project setting in the registry when Delphi is starting up and exiting.'
Something like that
from cnwizards.
Oh, seems IOTADebuggerVisualizer250 is introduced in 10.2.2, so 10.2 can't run.
We'll disable this interface usage in 10.2.x and moves to 10.3.
We'll consider the Caption text again.
from cnwizards.
How about "Forget Last Opened Project when IDE Launched"?
Seems the word "NOT" in caption will bring some confuse for CheckBox, should be avoid.
Your hint can be put in our Help, but not in the form for this checkbox, for other checkboxes don't have hints.
from cnwizards.
10.2.0 is our last legal so sadly i can not upgrade beyond it and try 10.2.2
How about "Forget
"forget" is still implementaiton details, not user's intention.
User's problem at hands it to force IDE clean after launch, without any projects open
"Forgetting" is still just the tool, a method to implement the task.
And it is plausible it would have to be changed with some newer Delphi version.
So, if we need to avoid "not" then perhaps something like: Make Delphi IDE launch clean, without any project opened.
Also, what about negations in other languages, should there cognates for "not" be avoided as well?
for other checkboxes don't have hints.
Is it really that important?
OTOH this text can be just removed. In the end, there are sources for those, who would (if ever) need to learn the method (for example, to debug it in Delphi versions where it would not work).
from cnwizards.
Yes Important 得很
We'll consider these texts.
from cnwizards.
“Do NOT Load Last Opened Project Automatically when IDE Launched.”
from cnwizards.
“Do NOT Load Last Opened Project Automatically when IDE Launched.”
fine with me, but you also said
Seems the word "NOT" in caption will bring some confuse for CheckBox, should be avoid.
from cnwizards.
i still hope you would code-in the startup clearing too
from cnwizards.
i still hope you would code-in the startup clearing too
Already done last month.
from cnwizards.
from cnwizards.
TCnPaletteEnhanceWizard.LoadSettings,line 1233
6eee83d 2024-03-30 08:49:51
from cnwizards.
1180 unstable should integrate this code piece.
But not sure the sequence whether our clear or IDE load is in the front.
from cnwizards.
chkClearRegSessionProject.Caption=Не
chkClearRegSessionProject.Caption=Ne
TCnPalEnhanceForm.chkClearRegSessionProject.Caption=Não
Caption=Do NOT Load
you seem to CAPS OUT the negation in English and German but not in other European languages. Is it intentional difference?
from cnwizards.
But not sure the sequence whether our clear or IDE load is in the front.
Well, the procmon trace above suggested it should work :-)
So, D2007.
I launch IDE with ClearRegSession
off, open the project, close IDE and launch IDE again.
The IDE opens the project and has Session\Project
filled in. As expected.
I then tick your checkbox and ClearRegSession
get saved immediately on mrOK
, as expected.
I use TaskMAnager to kill the IDE, it leaves Session\Project
filled in. As expected. We just simulated IDE crash with the CnW feature just engaged, the most fragile scenario.
I launch the IDE - and the session get cleared before IDE checks it so the IDE runs blank.
Perfect!
from cnwizards.
unrelated.
10.2.0
the next checkbox caption suggests it only works with Delphi 7 or older, but it is somehow enabled on xe 10.2.0 ?
from cnwizards.
Ah, i see...
You made them user-global, for all the IDE versions existing.
Well, kinda confusing design to mix local and global settings in one window, more so than irregular Hints in my opinion :-) But then, your project not mine.
Well, so i tested in XE 10.2.0 after 2007, it works as expected there too.
As of my itch, the case is closed, thanks a lot!
from cnwizards.
documentation bug. History:
2024.04.04 V1.3.1
....
Add an Option to Clear Session Project when Exiting IDE in Main Form Enhancement, defaultly Disabled.
- again, i'd rather document intention than implementation
- but if the choice was made for writing down implementation, then it is simply wrong after "clear on launch" was added too, not only on exit
from cnwizards.
Tiny issue, adjusted.
from cnwizards.
Related Issues (20)
- [Question] How I can run command file from Script HOT 3
- Auto complete code in DFM HOT 1
- Permanently The "Lock Controls" HOT 4
- New DFM Editor CnPack HOT 3
- Delphi 11.3 - Form changes size when I compile/build. HOT 9
- IDE Exception HOT 3
- Bug in input helper design
- Input Helper not works in Delphi Type Section since CnWizard 1.2.5.1109 HOT 2
- Code Input Helper Template PopUp Bug HOT 18
- 建议ASCII字符表工具稍作优化 HOT 3
- Reporting Issue with Delphi Unit Naming in Function format HOT 4
- Access violation at address 21D1EAD2 in module 'delphicoreide270.bpl'. Read of address 00000000 HOT 2
- Access violation in module 'coreide290.bpl' HOT 1
- i18n, Russian, code helper
- [Feature Request] Copilot integration
- AV after turning the screen off and on HOT 5
- Buton "Modify Prefix" is over other input box in function rename components HOT 3
- How to save Delphi dialogs ? HOT 1
- Bug in Does not display Code Complete when it has a "circular reference"
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cnwizards.