World: r3wp
[!REBOL3 GUI]
older newer | first last |
Ladislav 15-Dec-2010 [4567] | Initialization is hard: for a FIXED face we still don't have a way how to specify the offset, do we? |
Cyphre 15-Dec-2010 [4568] | I put the GOB-OFFSET here but yes, this is not set in stone as well. |
Ladislav 15-Dec-2010 [4569x2] | GOB-OFFSET - do I understend correctly, that it is a new facet, which is "permanent for all faces", while being needed only for initialization? |
err: understand | |
Cyphre 15-Dec-2010 [4571x2] | well, we don't need to do it that way...it could be just used as 'gob/offset setter' duirng the layout parsing...no need to ster the value afterwards. |
ster=store | |
Ladislav 15-Dec-2010 [4573x2] | aha, but that requires some parsing changes? |
or, is that alternative already available? | |
Cyphre 15-Dec-2010 [4575] | yes, easy to do |
Ladislav 15-Dec-2010 [4576] | a similar approach might be useful for HIDDEN faces as well, I guess |
BrianH 15-Dec-2010 [4577] | I prefer a normalizexd model, as long as it makes sense and is easy to work with. So, tentative support for B unless we can come up with something easier. |
Cyphre 15-Dec-2010 [4578] | yes, we could use gob-size in OPTIONS block as 'gob/size setter' too. |
Ladislav 15-Dec-2010 [4579] | I did not mean GOB-SIZE - that already exists as INIT-SIZE, what I had in mind was the HIDDEN keyword |
BrianH 15-Dec-2010 [4580] | Do you really hide something by setting its size to 0x0? |
Cyphre 15-Dec-2010 [4581x5] | Lad: yes, we could add something like that I guess. |
Brian, yes, what would you want to see on the screen if something has zero size? | |
(of course this is meant at lower level) | |
hiding of faces should be done by the SHOW-FACE function | |
hiding=visibility | |
BrianH 15-Dec-2010 [4586] | I didn't mean that. Of course you hide something when it is set to 0x0 size. I was asking if that was how you set something to be hidden: setting it to 0x0 size. That might have interesting effects on the layout of its contents when it is unhidden, while a hidden property would not. |
Ladislav 15-Dec-2010 [4587] | Fortunately enough, it does not have side effects of that kind (we have to take care of one specific situation, though) |
Cyphre 15-Dec-2010 [4588x2] | So my and Ladislav's decission so far: -use SHOW? hidden | visible | ignored and optional GOB-OFFSET in OPTIONS block during layout initialization only (after the face is build the valueas are unaccessible in this form) -use SHOW-FACE face hidden | visible | ignored function in all other cases when layout is already initialized. |
(the rest of the functionality is hidden in internal layer of the code) | |
BrianH 15-Dec-2010 [4590] | Sounds good. |
Jerry 16-Dec-2010 [4591] | Does RM-asset version of A110 support the SHAPE dialect? I can access the glyphs in OpenType Font File now, and I would like to draw the Chinese characters using SHAPE dialect in R3. |
Henrik 16-Dec-2010 [4592x2] | Changing the topology of the panel by ignoring the face requires some considerations. What happens if a focused face is ignored? |
There is a demo of above mentioned features here: http://94.145.78.91/files/r3/gui/panels-24.r3 It requires the latest sources. I'm not sure a build is made yet. | |
Ladislav 16-Dec-2010 [4594] | I do not think the build has been committed. |
Henrik 16-Dec-2010 [4595] | ok |
Ladislav 16-Dec-2010 [4596] | %trunk/r3-gui/build/r3-gui.r3 is able to run the test |
Henrik 16-Dec-2010 [4597x2] | build/? hmm... |
I've published it here: http://94.145.78.91/files/r3/gui/r3-gui.r3 | |
Pekr 16-Dec-2010 [4599x2] | wow, a progress ... will read it shortly .... guys, I have one question, which will most probably get dismissed, but I'll at least try to ask: - when prototyping stuff in console, and e.g. when your gui crashes from some reason, I am very used to just "unview". But - in R3 I have to do either "unview none" or "unview 'all" (not caring about the name of the window) So my question is - couldn't the aproach be rethought, and old R2 functionality brought back? Especially "unview 'all" in comparison to (imo) more rebolish R2 "unview/all" is non intuitive for me ... |
my opinion is, that most of the time I just want to unview everything, and only from time to time I want to unview particular window | |
Cyphre 16-Dec-2010 [4601x2] | Jerry, shape dialect is fully supported. Also note you can use chinese glyphs as normal unicode chars in the richtext dialect so no need to render it custom way in R3. Also any feedback on the rendered unicode fonts usage would be useful as it was just tested in basic tests and not in any native language like chinese, japanese etc. |
Pekr, yes I thought about the UNVIEW in simmilar way. | |
Anton 16-Dec-2010 [4603] | About showing faces: In R2 I found it quite annoying not to be able to create an image of a layout without viewing it on screen first. If I did things like set the face size to 0x0 or move the faces outside the window bounds, clipping would introduce artefacts (black regions not supposed to be there) in the image created by TO-IMAGE. So, in R3 at least, I'd like to be able to create an image of a panel layout in R3 without first viewing on screen. I think I thought that an UPDATE FACE function, being similar to SHOW FACE, except without the final copy to the window buffer, might be what's needed. |
Jerry 16-Dec-2010 [4604] | Cyphre, Thanks. I'd just tested it. Chinese characters can be rendered correctly and perfectly. |
Maxim 16-Dec-2010 [4605] | Anton, as long as you have a face you can to-image it. no need to show it first. I've done this many times. many your problem is related to a specific style like a iterated face. |
Pekr 16-Dec-2010 [4606x2] | Late to the game, but as for A) - don't we have already tags? It could all be in the tags block, not in the new field. And if tags block is just flat, and those for states could collide with another flag names, we could use nested blocks flags: [ show? [visible]]. I see no reason why to introduce new field, unless from the speed reasons Generally I like B) more, but: I definitely don't like being dependant upon the size of 0x0? That seems really strange to me. Visibility state in the gob-tree should be imo independent from the size? E.g. look at Cyphre's code example: button 0x0 "test" options [resizes?: true] Do you really want to see code like that in the VID level? |
ah, should read the whole discussion first - already decided ... | |
Rebolek 16-Dec-2010 [4608] | I see no reason why to introduce new field, unless from the speed reasons . Yes, it's faster and the code is also easier to handle for user. already decided - really? |
Pekr 16-Dec-2010 [4609x2] | Cyphre: "Brian, yes, what would you want to see on the screen if something has zero size?" - really, I am not sure I care about if something is theoretically visible in 0x0 size, because face itself will not have a meaning even with 1x1 size, but I think that visibility (event flow) should be separate. OTOH, I can't find any practical reason how it could be internally usefull to have some inner state as shown, while being at 0x0. I thought about some graph models, event flows via the face hierarchies, etc., but with 0x0 size, you can't receive events anyway (apart from timer events maybe) Max - speak on :-) |
Rebolek - by "decided" I meant Cyphre's message stating what they agreed upon with Ladislav, and Robert kind of seconded :-) | |
Rebolek 16-Dec-2010 [4611] | You can receive lot of events for 0x0 face even without timer, you'll be surprised. |
Pekr 16-Dec-2010 [4612x2] | If so, you can't auto-hide the face by just setting its size to 0x0? That seems like an ugly hack to what could be implemented by 'hide function? Well, if we have 'show, why don't we have low level 'hide one? |
Simply put - I am for separating hiding faces from resizing the faces/gobs. But I will let it to the clever ones :-) | |
Rebolek 16-Dec-2010 [4614x2] | There was HIDE-FACE that is removed with this implementation, you'll just use SHOW-FACE face 'hidden |
SHOW-FACE and HIDE-FACE allowed only two states, this method allows more states. | |
Pekr 16-Dec-2010 [4616] | compare the code: show-face face 'hidden hide face which looks more readable to you? ;-) Why to overload show? We have 'View, and 'unview. And with two separate functions serving its purpose you can implement more functionality for each of them imo ... I must be missing something :-) |
older newer | first last |