World: r3wp
[View] discuss view related issues
older newer | first last |
Rebolek 3-Aug-2005 [2026] | Tomc: thanks! |
Volker 3-Aug-2005 [2027x3] | http://matplotlib.sourceforge.net/fonts.html, they say "The GD, Agg, and Paint backends all support freetype fonts, which provide high quality, anti-aliased font rendering to PNG and JPEG output without X support.". Not directly usable for us, its a python plotting lib. But maybe something can be learned from the source, or asking them? |
http://freetype.sourceforge.net/license.htmlfreetype can be credits-bsd. and i guess every distro has an easy way to install it, if it is to big. | |
http://www.freetype.org/freetype2/index.html"can return the outline data (and control instructions/hints) to client applications", i guess thats what is needed for vector-fonts? | |
Ingo 3-Aug-2005 [2030] | When installing view (1.3), the dirctory containing %public/, %desktop/ folders, etc, can be put anywhere in the filesystem, but is there a way to find out where they are stored from within rebol? system/user/home would have been an obvious choice for me, but it is 'none. |
Izkata 3-Aug-2005 [2031] | Searched around in Notepad (write %System.txt mold system) to find this: >> skip find mold system {RebOSFiles} -30 == { view-root: %/c/Izkata/Rebol/RebOSFiles/ pop: unset screen-face: unset save-user: func [ "... >> ? view-root ;Thar ye go =^) VIEW-ROOT is a file of value: %/c/Izkata/Rebol/RebOSFiles/ |
Ingo 3-Aug-2005 [2032] | Thanks Izkata, seems today is the day of "learn to do it yourself" ... ;-) Interesting how much you can find, if you remember how to do it. |
DideC 3-Aug-2005 [2033x6] | Is this a bug? |
view layout [ btn "Press me" [ show-popup layout [btn "Close" [hide-popup]] ] ] | |
While you close the popup, event loop ends. | |
It give same result uner 1.2.48 and 1.3.1 | |
uner=under | |
OK, bug or not, it works with 'inform instead of 'show-popup. | |
Gabriele 3-Aug-2005 [2039] | if you use show-popup then you need your do-events. see inform. :) |
Robert 5-Aug-2005 [2040] | I have a iterated face that draws some text at different x-offset postions. Than the user can change some things and text will be drawn at other x-offset postions. The problem is, that the text drawn first is still there. The face isn't cleared... how can I do this with iterated faces? |
Anton 5-Aug-2005 [2041] | Using Draw dialect or face/text ? |
Robert 5-Aug-2005 [2042] | face/text |
Anton 5-Aug-2005 [2043x2] | Showing the face does not update the display as expected. Hmm.. Show us the code ? |
Just the iterated face definition. | |
Robert 5-Aug-2005 [2045] | update-calendar-weeks: func [face index /local tmp-face][ either integer? index [ if index <= length? cw-positions/(face/month) [ tmp-face: calendar-week-faces/(face/month) tmp-face/offset/x: cw-positions/(face/month)/:index/x tmp-face/text: cw-positions/(face/month)/:index/y return tmp-face ] ] [ return face/month ] ] |
Anton 5-Aug-2005 [2046x5] | I'll look at this code, but I just hacked a demo which might be interesting for you: |
view center-face layout [ size 600x400 list-face: face with [ size: 500x300 color: 170.165.160 init: [] data: ["hello" "there" "Robert"] spacing: 1x1 ioffset: 0x0 subface: make face [size: 100x24 effect: [merge luma 20]] pane: func [face id /local index][ if pair? id [ return 1 + first id - ioffset / any [all [subface subface/size + spacing] 1] ; convert offset to row number ] ; id is subface ("row") number (an integer) ; update subface to the correct offset, call subfunc for each pane of subface if subface [ subface/offset: subface/old-offset: id - 1 * (subface/size + spacing) * 1x0 + ioffset ; spread horiontally into columns if subface/offset/x > size/x [return none] if subface/show?: all [data id <= length? data][ ; <- this will need to be improved when scrolling added index: 0 if object? subface [ subfunc subface id index: index + 1 ] subface ; return subface so it is shown by the view engine ] ] ] subfunc: func [face [object!] id [integer!] "row" index [integer!] "column" /local val][ ;face/text: "" ;face/data: none if all [ data val: data/:id ; "row" ][ face/text: val ; "column" ] ] ] btn "change data" [ list-face/data: random list-face/data show list-face ] btn "change x offsets" [ list-face/spacing: random 40x0 show list-face ] ] | |
I think your above function is a SUPPLY function, isn't it ? | |
My demo is programming the pane function directly. | |
Robert, would need to see more code. Nothing is jumping out at me yet. Have to go to sleep now, so perhaps tomorrow. | |
Robert 5-Aug-2005 [2051] | It's just a simple iterated face-function is described by Carl in his blog and view-doc. |
Volker 5-Aug-2005 [2052] | show the parent-face |
Robert 5-Aug-2005 [2053] | Will try this. |
Izkata 5-Aug-2005 [2054x3] | Can anyone help me with what's going on here? |
view layout [box 50x100 effect [arrow red] origin box 50x100 effect [arrow red rotate 270]] | |
I can't see why it's rotating the way it is - what I want is an arrow pointing left stretched vertically | |
DideC 5-Aug-2005 [2057] | view layout [box 50x100 effect [arrow red] origin box 50x100 effect [arrow blue rotate 270 fit]] |
Izkata 5-Aug-2005 [2058x3] | ah |
It's making the arrow before rotating, then -not- resizing it? | |
Alright thanx! ^.^ | |
DideC 5-Aug-2005 [2061] | de nada |
Izkata 5-Aug-2005 [2062] | ~Hides~ (School starts on the 24th, and I'm seriously thinking about dropping 4th year Spanish) |
Robert 6-Aug-2005 [2063] | view problem: showing the parent-face doesn't work because that's the whole window. The thing is, if the first draw is done and I than click into the box that has the iterated function attached, the text is shown. |
Volker 6-Aug-2005 [2064x4] | Not sure i understand. but another try: the list uses the first face returned, even if you return another one later. "tmp-face: calendar-week-faces/(face/month)" if this returns different faces, the first face would be reused forever. if thats the "The problem is, that the text drawn first is still there.", yes, it would be. |
so the "display-face" has to be the same all the time. means, either copy your data in it, as you do within a supply-block. Or put your face in display-face/pane. | |
Should be mentioned in docu. | |
hmm, the new object-set/get may be used here. set display-face get calendar-face :) | |
Robert 6-Aug-2005 [2068x2] | I further investigated the problem. First I use three different boxes, that use the same iteration function. The iteration function uses different proxy faces. So, each box uses its own proxy face. |
The thing is that I have a pane that's 200x20 in size. Within these 200 pixels, I'm positioning 5 faces that have a with of 30 each. So there are areas where my function doesn't return a face for. And these areas are not cleared by View. So if I hit the older text, it's overwritten, if not it stays there. The problem is, that the box, where the iteration function is used, isn't cleared before doing a refresh. | |
DideC 6-Aug-2005 [2070] | I think you must display iterated face in the whole box area, but you set the text and color of some of them to clear "what was here before". |
Anton 6-Aug-2005 [2071] | I think it is strange that you are iterating different faces. That seems to defeat the purpose of iterating to start with. You should iterate one face. It is a single face which changes its position, shape and contents rapidly when it is asked for. You have to ensure that the face always has the correct information when it is asked for. But anyway, we can't make good suggestions unless we see a more complete demo that we can run. |
Robert 6-Aug-2005 [2072x3] | Hmm... the thing is that the faces must have different positions. So it's not distributed evenly. The apps is this: I have day numbers 1-30/31 from left to right. And now at each Monday position, I want to draw the week-number. So x-positions shift. |
different face: It's just three month side by side. So forget it. The problem applies to one month. | |
and each month has it's own iteration face. | |
Anton 6-Aug-2005 [2075] | You are using a single iteration function to manage three faces. Hmm... I hesitate to say it can't be done, but maybe it isn't recommended... unless I misunderstand it. |
older newer | first last |