From: Alex T. <al...@tw...> - 2005-05-05 00:05:22
|
Bo Green wrote: > > Alex: > 0.2 is awesome. I have one very small thing related to switching > between modes, I'm almost (but not quite) embarrassed to mention it. Never be embarrassed to ask for a feature in software :-) > When I'm in multi-component mode, and I click on empty space in the > main window (i.e., deselect all components), I would like propEd to > switch back to single-component mode, and currently it continues to > display only the previously selected (multiple) components until I > select another single component. > Like I said, a small thing, but not totally insignificant. That sounds like a reasonable request - will be in v0.3 BUT - I don't plan to change the current behaviour when deselecting multiple components one-by-one by ctl-clicking them. When you get down to a single component remaining selected, I *could* switch to single-mode - but don't. If you then deselect that last one, I *could* switch to single mode - but don't. If you think it should do those - you need to convince me :-) If you do have good arguments for doing that, it will be fairly easy to implement, but I don't want to change without being convinced. v0.3 will be out tomorrow, if I can get enough testing time in on it. It will have - revert to single-mode when click in "open space" causes deselection of all components - bug fix related to pasting while in multi-component mode (workaround is to go back to single mode before using "paste" command) - new name rules. (this is why it needs lots of testing ....) I won't be surprised if the new name rules generate some discussion; in fact, I'll be glad if they do. Here's the current plan for the new rules: when a component is initially created, a name is automatically generated for the component. If it's an "add component" command, the name is "typename"+integer (e.g. Button1, Button2, ....); if it's a Duplicate or Paste command, the name is formed from the existing name+integer (e.g. Search1, Search2, ....) In either case, the integer is incremented until we find a "free" name. The name is marked as being "not user specified". The label (or text) field, if there is one, is then set to be the same as the name, and is also marked as "not user specified". If either one is changed, it is then marked as "user specified" - and won't thereafter be modified automatically. If the *other* one is still "not user specified", it will then be derived from the one which has been specified (and would change each time the already specified on changes). Whew - easier with an example. Create a button Button1 Button1 (both auto) Set the name to Search Search Search (label derived from name) Set the name to Find Find Find (label still derived from name) Set the label to "Find it for me" Find Find it for me (label now user specified) Set the name to Search Search Find it for me (so label doesn't change). Create another Button Button1 Button1 Set the label to "find me a hotel" findmeahotel find me a hotel (name derived from label - note spaces are removed to form legal name) Set the label to Search Search1 Search (name derived from label - integer added to avoid existing component name) etc. I think this will give me maximum useful names with minimum effort. But I'm perfectly willing to consider any other suggestions for how to do this better. Or if you don't think it should do any such auto-name generation, tell me that too. -- Alex Tweedly http://www.tweedly.net -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.308 / Virus Database: 266.11.2 - Release Date: 02/05/2005 |