Mail Archives: geda-user/2016/06/14/07:37:25
Content preview: On Tue, 14 Jun 2016 07:58:14 +0200 (CEST) > Hi all! > > I've
arrived at the gtk hid's "window width/height save/restore" code > in my
conf-rewrite in pcb-rnd. Long story short: the gtk hid tries to > remember
window geometry and tries to restore it to the last known > state (?) when
pcb is started. > > Thinking it over, I am not sure this is a good idea (while
I totally > see why many users probably want it). > > I am interested in
your input, as an user of GUI apps in general (I > don't think this is pcb-specific)
about how this is best done. > Conceptually the question is, assuming pcb-rnd
needs to save/restore > window sizes, whose property window sizes is? The
program's? The > user's? The desing's? The session's? This gets tricky especially
in > corner cases like laptops with variable screen sizes (large external
> screen when docked and small screen on the road). > > Please comment on
the following options, or add extra options if you > see any: > > 1. Do not
try to save window geometry, let the window manager do its > job. This is
how I do it: my wm runs an awk script that regex-matches > pcb windows and
arranges the on the fly, overriding whatever pcb > says. PCB windows are
automatically arranged in the way I like them, > no matter how big my screen
is. This probably won't work for most > users because they use less capable
window managers and/or spend less > time configuring it. [...]
Content analysis details: (1.7 points, 5.0 required)
pts rule name description
---- ---------------------- --------------------------------------------------
0.0 DKIM_ADSP_CUSTOM_MED No valid author signature, adsp_override is
CUSTOM_MED
0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider
(leventelist[at]gmail.com)
0.8 RDNS_NONE Delivered to internal network by a host with no rDNS
0.9 NML_ADSP_CUSTOM_MED ADSP custom_med hit, and not from a mailing list
X-Scan-Signature: 17d42db91f4df066e3cc51c72e68a26b
--Sig_/Me0YG+BHvFUbf3y35emej+m
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable
On Tue, 14 Jun 2016 07:58:14 +0200 (CEST)
gedau AT igor2 DOT repo DOT hu wrote:
> Hi all!
>=20
> I've arrived at the gtk hid's "window width/height save/restore" code
> in my conf-rewrite in pcb-rnd. Long story short: the gtk hid tries to=20
> remember window geometry and tries to restore it to the last known=20
> state (?) when pcb is started.
>=20
> Thinking it over, I am not sure this is a good idea (while I totally
> see why many users probably want it).
>=20
> I am interested in your input, as an user of GUI apps in general (I
> don't think this is pcb-specific) about how this is best done.
> Conceptually the question is, assuming pcb-rnd needs to save/restore
> window sizes, whose property window sizes is? The program's? The
> user's? The desing's? The session's? This gets tricky especially in
> corner cases like laptops with variable screen sizes (large external
> screen when docked and small screen on the road).
>=20
> Please comment on the following options, or add extra options if you
> see any:
>=20
> 1. Do not try to save window geometry, let the window manager do its=20
> job. This is how I do it: my wm runs an awk script that regex-matches
> pcb windows and arranges the on the fly, overriding whatever pcb
> says. PCB windows are automatically arranged in the way I like them,
> no matter how big my screen is. This probably won't work for most
> users because they use less capable window managers and/or spend less
> time configuring it.
This is a way too complex.
=20
> 2. Save it as an user configuration (~/.pcb-rnd/);
> this is good as long as you are running only one instance of pcb.
> When you start running two in parallel, and chose different window
> sizes, they will overwrite eachother's settings so it's random which
> one wins (e.g. the one you closed last will overwrite window geometry
> last). I think this is how the gtk hid does it these days, but I am
> not 100% sure.
I think this is the one I prefer. I work on one layout at a time, but yes,
sometimes I open two pcbs. I'd make some sort of locking mechanism; the
first instance had the ability to write window geometry to a file.
> 3. Save it as a per-design configuration; it's much less likely that
> the same user on the same system opens the same design twice and if
> he does, his save operations will fight anyway; however, editing the
> same design on multiple screens (or multiple systems, by multiple
> users!) makes it pretty wrong to save this setting in the design.
> Having some local settings stored in an unversioned config file next
> to the .pcb file solves some of the problems, but not all (e.g. same
> user, same system, screen size changes)
Makes no sense to me. Per-design stuff must be under revision control. If it
is it would turn out hard to fight it when I check out my design on my
laptop, which has different screen size.
> 4. make it an "explicit save" thing so it doesn't try to save it=20
> automatically, it makes a snapshot only when you explicitly click a=20
> button. Window geometry is saved in ~/.pcb-rnd/ (user config). So if
> you know you are going to use a given screen size for the next period
> of time, you rearrange your windows, save the arrangement then if you
> start new pcb instances they start with this saved setting.
Think about the lazy guys... I'd never push that button.
> NOTE: I am not proposing any change to pcb or gschem or geda/gaf.
>=20
> Regards,
>=20
> Igor2
--=20
73 de HA5OGL
Op.: Levente
--Sig_/Me0YG+BHvFUbf3y35emej+m
Content-Type: application/pgp-signature
Content-Description: OpenPGP digital signature
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQEcBAEBCAAGBQJXX+v8AAoJECHeg32hsZ8oYxoIALxCBG78wDYUWtmPiozQJko2
osnH9M/UHma6WW6ie23WyZldZDRkMYE8CoQcPWJ2tqTXTGzBgypajySZL9K2RexX
780OWdlKqG0SF9pPveyH2n/lWV3qkfv0eSZ54pK4EgYxRQVFP+YZih+WKIbO+jh6
RjYsChey75pthx4SdqR9cvXRxqgrxjRE2mpRTnPpQfIJqG7TpC16/oO9LUz6RxFe
9L4Z6VmbGYYIMAMvsZ6DWJGrXLkFVN+N994pDDmPOaMRvnpxKM2ib0wSX6PRf28Y
zJ1WK3Ig9VaWDKLWm3Lkqhf6yuMbP6Idqg7MPn4cTZ1xAHAZjCAsv3K/7+nDwvY=
=azXG
-----END PGP SIGNATURE-----
--Sig_/Me0YG+BHvFUbf3y35emej+m--
- Raw text -