X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f Date: Sat, 3 Oct 2015 20:36:40 -0400 Message-Id: <201510040036.t940ae4M004656@envy.delorie.com> From: DJ Delorie To: geda-user AT delorie DOT com In-reply-to: <56100AF8.4090802@jump-ing.de> (geda-user@delorie.com) Subject: Re: [geda-user] Clutterless user interface or even more custom special super features? References: <56100AF8 DOT 4090802 AT jump-ing DOT de> Reply-To: geda-user AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-user AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > ... I learned that there are no less than three special modes for > ignoring text, hiding text and/or ignoring anything but text exist. The > bug is a crashing one, hitting Undo takes the whole application with it, > data lost. If Undo crashed, Undo is broken and needs to be fixed. The "ignore text" flag was added because a lot of users were trying to move elements and ended up moving their labels instead. The "only text" option is for the case where they're organizing the labels at the end of layout and don't want to accidentally move anything else. It was a commonly asked for feature, and well received at the time. > 1. Add a lot more special case search code to check not only for mode > flags like ONLYNAMESFLAG, but also under which conditions this search > happens. This easily makes one special case for every other case. 3 > names modes x 12 drawing modes = 36 cases. Our search has much more complexity than that. Handling locked vs unlocked and tool-specific things makes it all very complex. > 2. Disable modes like track drawing mode while in names only > mode. This would be the advertised behaviour. Also a lot of code and > on top of this, unexpected user behaviour ("I can't draw tracks > anymore and I don't know why"). I like this idea; perhaps a tool tip over the disabled tool buttons that says 'disabled due to the "only text" option' or something. > 3. Try to make Undo() independent from this query. It's "undo last > operation", after all, not "undo the object under the crosshair". Undo should always be "undo whatever changed" and should always work. If it crashes, it should be fixed. If, after fixing, we want to redesign the internals, that's a different problem. > 4. Remove these special modes. Please don't. I use them exclusively. The problem they solved was pretty frustrating to a lot of users.