r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[!REBOL3 GUI]

Pekr
26-Jan-2011
[5637]
options: [
		text-body: [string! block!]
		area-color: [tuple!]
		init-size: [pair!]
		wide: [percent!]
	] 


you may specifiy only one pair for a button - init-size, inlined, 
that is ...
BrianH
26-Jan-2011
[5638]
Same here, but I am trying to make it easier for Pekr. Or at least 
what he thinks is easier.
Cyphre
26-Jan-2011
[5639]
So my proposal is:
remove init-size [pair!] from Options

add [init-width [number!]] and use it for changing the init-size/x 
value only
Rebolek
26-Jan-2011
[5640x2]
That's same problem as now.
[button "wiiideeee" 10000] won't make 10000px wide button.
Cyphre
26-Jan-2011
[5642]
so what
Rebolek
26-Jan-2011
[5643]
so what's it good for?
Pekr
26-Jan-2011
[5644x2]
its useless, confusing, bad :-)
having such non logical behaviour, then better remove the option 
altogether. Cyphre's proposal is an interim solution, sitll bettter 
than having it the way it is now ...
BrianH
26-Jan-2011
[5646]
Can't init-size when specified (especially inline) push out max-size 
in both dimensions if it's larger?
Pekr
26-Jan-2011
[5647]
Brianh - that was EXACTLY my idea, and it contradicts nothing ...
Cyphre
26-Jan-2011
[5648]
From my POV either you accept there was some intention of the style-maker 
to define limits or you have to make own derived style.
Rebolek
26-Jan-2011
[5649]
Cyphre, so your POV changed from 11:48 where you proposed that init 
code for button should set max-size if user sets size in dialect?
BrianH
26-Jan-2011
[5650]
That approach would make sense if there was a good reason for the 
limit, like a larger limit would screw up the draw blocks or something. 
Cyphre, is that the case with the button style?
Cyphre
26-Jan-2011
[5651]
No, also it is on the style-maker to define what should be done with 
the inline pair! so it depends always on the style implementation 
and not as generic rule.
Rebolek
26-Jan-2011
[5652]
Yes, but we are not talking about some generic rule, but about button.
BrianH
26-Jan-2011
[5653]
Right. So it looks like Pekr wants to be a style maker, but for some 
reason is doing it in the layout block instead of with stylize (or 
whatever it's called)?
Cyphre
26-Jan-2011
[5654x2]
The thing is if we implement it for button then Pekr will be shouting 
why it won't work for field etc. ? ;)
Brian, yes, that's my understanding as well.
Pekr
26-Jan-2011
[5656]
I want simple things to be simple, yet complex things being possible 
...
BrianH
26-Jan-2011
[5657]
So this gets back to a "Render unto Ceaser that which is Ceaser's. 
Render unto God that which is God's." argument, even if both are 
Pekr :)
Pekr
26-Jan-2011
[5658]
Rebolek - ok, decided - please adjust according to brianH's suggestion 
:-) If init-size exceeds the max size, just adjust the max size, 
easy as that, fixed, not breaking anything :-)
Rebolek
26-Jan-2011
[5659]
I'm not going to change anything if it means Ladislav's death ;)
Pekr
26-Jan-2011
[5660x2]
:-))))
No, Ladislav object against something else imo, no?
Rebolek
26-Jan-2011
[5662x2]
No, it was exactly against this.
He calls it mind reading.
Pekr
26-Jan-2011
[5664]
we should change the button init code so it changes max-size if user 
specifies the inline pair!

 - I am against that change, you don't know (not being able to read 
 mind) what is the Max-size user wants to have anyway"


My take is - if the max size is lower than requested size, then let 
be requested size be the max size. What could be the harm? Or do 
you think that in such a case, user could complain, that his button 
does not resize to being even bigger?
Rebolek
26-Jan-2011
[5665x2]
I do not expect that every user that will write [button "text" 100x100] 
has studied source or documentation to understand how resizing works 
and what max-size mean, they probably just want to have their button's 
size to be 100x100.

So either the code should set all size to 100x100 or it should throw 
error and not allow setting size like this at all.
nothing else makes sense IMO
Pekr
26-Jan-2011
[5667x2]
agreed.
I think I will survive it ...., I am just "Figting" for the average 
future user ...   :-)
BrianH
26-Jan-2011
[5669]
While Cyphre and I are fighting for that same user a few minutes 
later when they need to make a change :)
Rebolek
26-Jan-2011
[5670]
I don't understand how you can fight for something other than Pekr 
when he just repeated your suggestion.
BrianH
26-Jan-2011
[5671]
And skipped over what I wrote earlier, and later.
Cyphre
26-Jan-2011
[5672]
Ok, so I see only two options here:
1) remove all 'inline pairs' from all the styles definitions

2) define 'generic rule' during the style initialization: max-size 
= max(init-size, max-size)
Rebolek
26-Jan-2011
[5673]
great,so now we're back to exactly what I wrote half an our earlier 
:)
Cyphre
26-Jan-2011
[5674]
and the winner is?
Rebolek
26-Jan-2011
[5675]
and because Ladislav doesn't like #2, we should probably go with 
#1.
Cyphre
26-Jan-2011
[5676]
if we do #1 we don't solve this case:
button options [init-size: 50x50]
Pekr
26-Jan-2011
[5677]
Rebolek - I am not sure Ladislav does not like #2
BrianH
26-Jan-2011
[5678]
I would rather hear it from him though. He might have a really good 
reason to choose one or the other.
Rebolek
26-Jan-2011
[5679]
button options [init-size: 50x50 max-size: 50x50]

solved!
BrianH
26-Jan-2011
[5680]
We should remember that one of the goals is to minimize the number 
of times we see sizes specified in layouts though.
Rebolek
26-Jan-2011
[5681]
Yes, so when we remove that option, we minimize that number to zero.
Cyphre
26-Jan-2011
[5682]
Rebolek, but every 'average user' will be hit by this no? That's 
the same as the question "why button 50x50 doesn't work?"
BrianH
26-Jan-2011
[5683]
Not zero because it can be in the options block as you wrote above.
Pekr
26-Jan-2011
[5684]
To be fair, we could say, that if I specify button 5x5, what to do 
then? Should min-size be set to min(init-size, min-size)? What if 
user is an idiot, and sets the size to -5x-5? :-)
Cyphre
26-Jan-2011
[5685]
I still don't understand the difference between these two:
button 50x50 options [max-size: 50x50]
and
button options [init-size: 50x50 max-size: 50x50]
Rebolek
26-Jan-2011
[5686]
Cyphre, when somebody's fiddling with options block, they must understand 
at least facets. When writing code like [button 100x100], you do 
not need to know anything about style internals.