Subject: FVWM: style: Start Maximized ?? Start AnyFunction?????

From: [email-masked] (Albrecht Kadlec)
Date: Tue, 30 Apr 96 15:05:52 +0200

my 2.0.41 man page says:
	StartIconic/StartNormal

I'd like StartMaximized (but with the arguments, since I always want my
buttonbar with console and pager visible.)

On second thought: why not allow a style element like Start AnyFunction

Start Iconify would be the same as StartIconic.

my first use of this:

Style "viewdraw" start PowerViewStartup

Function PowerViewStartup Maximize 100 94
+		MapWindow 0 1 3 2
+		Desk 0 1
+		GotoPage 3 2

Note: MapWindow is also new: it maps a window to a specific desk (first two
arguments) / page (3rd and 4th argument)

if there is no Start Function or no MapWindow directive in there, 
MapWindow 1 0 would be default.

Note: PowerView is a layout program, and it doesn't make any sense to have
any other window on the same page :-) - even a 20" monitor would just
suffice - and I'm hooked on 16" :-(

would smash two birds with one stone :-)
	
albrecht

PS: chuck: I know it's rahter late for a change, but could the interfaces
of Desk and GotoPage be unified ?

what we need is a simple way to specify absolute/ relative adressing for
BOTH. (Page too)

I have to look the man page up EVERY time I use the Desk command, which I'd
count as an indicator, that it's not very intuitive (to say the least IMHO).

I'd suggest 
sth like
	GotoDesk z
	GotoDesk +z
	GotoDesk -z
and
	GotoPage x y
	GotoPage +x +y
or have a single command
	
	DeskPage +/-z +/-x +/-y

I think the code would be even shorter and much more general.

Then you'd naturally use the same specification for MapWindow +/-z +/-x +/-y
with default mapping of MapWindow +0 +0 +0
-- 
It all began when I went on a tour,
hoping to find some furniture.
I followed a sign - it said "Beautiful Chest".
It led to a lady who showed me her best.	-- Genesis
--
Visit the official FVWM web page at <URL:http://www.hpc.uh.edu/fvwm/>.
To unsubscribe from the list, send "unsubscribe fvwm" in the body of a
message to [email-masked].
To report problems, send mail to [email-masked].

---

From: Dan Niles <[email-masked]>
Date: Tue, 30 Apr 1996 08:21:46 -0500

One more vote for a unified Goto function with simplifed syntax.  

Also, there is currently (at least not documented) way to have a window 
start on a different page.  So a unified StartsOn would be great.  At the
very least, a StartsOnPage would be very nice.

PS: Chuck: I will gladly develope the Goto function if you, or someone else,
have not already begun work on it.

Dan Niles
[email-masked]

---

From: <[email-masked]> (Charles Hines)
Date: Tue, 30 Apr 1996 10:30:17 -0400

>>>>> "Dan" == Dan Niles <[email-masked]> writes:
>>>>> "Albrecht" == Albrecht Kadlec <[email-masked]> writes:

Albrecht> PS: chuck: I know it's rahter late for a change, but could
Albrecht> the interfaces of Desk and GotoPage be unified ?

It is getting late, but a cleanup like this might not be a bad idea.

Albrecht> what we need is a simple way to specify absolute/ relative
Albrecht> adressing for BOTH. (Page too)

Albrecht> I have to look the man page up EVERY time I use the Desk
Albrecht> command, which I'd count as an indicator, that it's not very
Albrecht> intuitive (to say the least IMHO).

Yeah, that's definitely not a good sign.

Albrecht> I'd suggest
Albrecht> sth like
Albrecht>       GotoDesk z
Albrecht>       GotoDesk +z
Albrecht>       GotoDesk -z
Albrecht> and
Albrecht>       GotoPage x y
Albrecht>       GotoPage +x +y
Albrecht> or have a single command

Albrecht>       DeskPage +/-z +/-x +/-y

Albrecht> I think the code would be even shorter and much more
Albrecht> general.

Probably not a bad idea, but I don't think that the proposed syntax
would work for specifying relative moves, since desk numbers can have
neg numbers.  In other words, would GotoDesk -2 mean two desks
previous or the actual desk -2?

Perhaps something like the following would work better:

  Goto [Page x y | RelativePage dx dy] [Desk z | RelativeDesk dz]

Verbose, but no suprises.

Dan> One more vote for a unified Goto function with simplifed syntax.

Dan> Also, there is currently (at least not documented) way to have a window
Dan> start on a different page.  So a unified StartsOn would be great.  At the
Dan> very least, a StartsOnPage would be very nice.

I do have this in the TO-DO list already, but you can add multiples of
the display width and/or height to your geometry specs to make
programs start on another page, in the meantime.

Dan> PS: Chuck: I will gladly develope the Goto function if you, or
Dan> someone else, have not already begun work on it.

If you want to take an initial stab at it, go ahead.

Just bear in mind, as with any submitted patch I might use your code
verbaitim, or change it a little, or rewrite it entirely, or not use
it at all, but I always like to see how others would implement various
things.

Chuck

---

From: Dan Niles <[email-masked]>
Date: Tue, 30 Apr 1996 09:51:47 -0500

Chuck,

[clip]

> Verbose, but no suprises.

That is alot to type.  Perhaps have the possible invocations be:

	Goto x y z
	Goto x y
	Goto z
	Goto Relative x y z
	Goto Relative x y 
	Goto Relative z

So the summary would be ([] indicate optional inclusion):

	Goto [Relative] [x y] [z]

[clip]

> it at all, but I always like to see how others would implement various

I will certainly give it a stab. :)  I would like your aproval on the
syntax before I begin.

Dan Niles
[email-masked]

---

From: <[email-masked]> (Charles Hines)
Date: Tue, 30 Apr 1996 11:10:31 -0400

>>>>> "Dan" == Dan Niles <[email-masked]> writes:

Dan> Chuck,

>> Verbose, but no suprises.

Dan> That is alot to type.  Perhaps have the possible invocations be:

Dan>    Goto x y z
Dan>    Goto x y
Dan>    Goto z
Dan>    Goto Relative x y z
Dan>    Goto Relative x y
Dan>    Goto Relative z

Dan> So the summary would be ([] indicate optional inclusion):

Dan>    Goto [Relative] [x y] [z]

>> If you want to take an initial stab at it, go ahead.

Dan> I will certainly give it a stab. :) I would like your aproval on
Dan> the syntax before I begin.

Well, my suggestion is a little bit more to type, but it eliminates
confusion.  If you see:

  Goto 2 1 1

It's not obvious what page and desk you are going to, but seeing:

  Goto Page 2 1 Desk 1

is very explicit.  And you lose a little flexibilty.  With my
suggestion you could specify:

  Goto Page 1 1 RelativeDesk -3

Where yours would require 2 separate lines:

  Goto 1 1
  Goto Relative -3

So, I still prefer my syntax (but of course, I'm biased). :)

Chuck

*******************************************************************************
Charles K. Hines <[email-masked]>
IBM Logic Synthesis developer [BooleDozer (TM)]
Martial Arts Instructor [Modern Arnis, Presas Style Filipino Martial Arts]

IBM Internal email:                        "Go back to sleep, Chuck.  You're
  [email-masked],              just havin' a nightmare--of course,
  HINESC at FISHKILL, HINESC at FSHVMFK1    we are still in Hell." Gary Larson
*******************************************************************************
--
Visit the official FVWM web page at <URL:http://www.hpc.uh.edu/fvwm/>.
To unsubscribe from the list, send "unsubscribe fvwm" in the body of a
message to [email-masked].
To report problems, send mail to [email-masked].

---

From: "Barry A. Warsaw" <[email-masked]>
Date: Tue, 30 Apr 1996 12:16:03 -0400

>>>>> "ch" == chuck hines <[email-masked]> writes:

    ch> Well, my suggestion is a little bit more to type, but it
    ch> eliminates confusion.  If you see:

Agreed.  I would vote for more explicit syntax.

---

From: [email-masked] (Albrecht Kadlec)
Date: Tue, 30 Apr 96 19:41:58 +0200

>>>>> Sergios == <[email-masked]> wrote:
>>>>> Charles Hines writes:

On Subject:

Albrecht> my 2.0.41 man page says:
Albrecht> StartIconic/StartNormal

Albrecht> I'd like StartMaximized (but with the arguments, since I always want my
Albrecht> buttonbar with console and pager visible.)

S> StartMaximized would be excellent. Netscape ie. has this bad habit of
S> ignoring shamelesly the geometry specification and always start bigger
S> horizontaly than my desk. If I move netscapes window and press the maximize
S> button it resizes itself nicely. of course netscape sucks. but the function
S> would be nice....

or maybe the more general approach of a start function, which can do
various things, like placing the window, mapping it, maximize/iconify/maybe
send FvwmButtons a command to swallow it
(imagine: "goto DeskRelative 1, Map" for CAD applications,
"*FvwmButtons swallow (useold) perfmeter nop" for perfmeters, alarms and so
on, which you start in the middle of the session - on demand)

On my PS:

Albrecht> PS: chuck: I know it's rather late for a change, but could
Albrecht> the interfaces of Desk and GotoPage be unified ?

Chuck> It is getting late, but a cleanup like this might not be a bad idea.

Chuck> Yeah, that's definitely not a good sign.

Albrecht> I'd suggest
Albrecht> sth like
Albrecht> GotoDesk z
Albrecht> GotoDesk +z
Albrecht> GotoDesk -z
Albrecht> and
Albrecht> GotoPage x y
Albrecht> GotoPage +x +y

Chuck> Probably not a bad idea, but I don't think that the proposed syntax
Chuck> would work for specifying relative moves, since desk numbers can have
Chuck> neg numbers.  In other words, would GotoDesk -2 mean two desks
Chuck> previous or the actual desk -2?

RATS.

does anyone use negative desk numbers?
I know, desks are generated on the fly, but I really don't use this one, so
I can't say anything about it.

I'm rather satisfied with my single desk of 4x2 pages :-) (I prefer that to
more desks, since I change pages with the mouse most often, either crossing
borders, or clicking in the pager - which just shows my one desk)

the negative thingie also spoils my main argument for a combined/unified
interface: 
It isn't really an x/y/z address, which goes from the origin (0/0/0) to
(inf/inf/inf)

So if we unified the interface, would someone specify Page -3 -3 ?
what should happen in this case?

is it possible to also extend pages to +-inf ?
does it make any sense to have that many pages / desks?

Chuck> Perhaps something like the following would work better:

Chuck>   Goto [Page x y | RelativePage dx dy] [Desk z | RelativeDesk dz]

Chuck> Verbose, but no suprises.

I, too must say that I don't like this one very much.
	
well I'd also allow absolute rows /relative colums
   Goto [Page x y | RelativePage dx dy] [Desk z | RelativeDesk dz]

Dan> 	Goto x y z
Dan> 	Goto x y
Dan> 	Goto z
Dan> 	Goto Relative x y z
Dan> 	Goto Relative x y 
Dan> 	Goto Relative z

rather difficult: 
	one argument: desk only
	two arguments: page only,
	three arguments: desk and page ore page and desk 

(I say: the desk is the most significant "digit", but other minds will
vary!!!) It'd also not be too intuitive to have the first parameter be
sometimes page, sometimes desk, depending on the number of parameters.

to sum it up: we won't have a unified interface, which is easy to remember,
as long, as the functions are different. (I overlooked that, when I started
this thread.)

And they differ greatly in parameter space.
Maybe we should discuss that one first, as the above syntax suggestions are
mostly a rename / move to a Goto prefix.

First of all: does anyone use negative desk numbers (except by accident)
As far as I remember these just resulted from Rob using signed 32bit
integers for the desktop numbers. Was this intentional, Rob?

What if we changed that to unsigned to provide a unified parameter space
with +/- as the "relative" indicators (the analogy to geometry was somewhat
intentional, though I hadn't thought it all to the end) ?

In fact a window is positioned 
	on a desk
	on a page
	at a specific x/y position
	with a specific size.

the last two are out of reach (no one wants to change geometry), and also 
somewhat different in semantics.

that said, if we can't get the parameterspace/meaning uniform, I'd rather
stick with two variants of two different functions:

	Desk[Relative] z
and
	Page[Relative] x y
	
(where we could also use Page -1 -1 as in geometry -1 -1: specifying the
bottom rightmost page)

sorry this got that long,

cheers,
albrecht
-- 
A friend of mine said he was trying to install Windows NT on a non-standard
machine.  Everything seemed fine until he actually ran Windows and a message
told him that something had gone astray.  I guess this could be considered
an unrecoverable error:

	No keyboard found.
	Press F1 to continue.			-- Kirsten Starcher

---

From: Dan Niles <[email-masked]>
Date: Tue, 30 Apr 1996 14:38:46 -0500

[clip]

[clip]

I personally would vote for deletion of the negative virtual desk numbers.
To me, all it does is add confusion.  If 4 billion virtual desks are
really necessary, lets use an unsigned 32-bit int.

Dan Niles
[email-masked]