Как стилизовать текстовый список и другие элементы? - PullRequest
0 голосов
/ 11 февраля 2011

Стиль Rebol VID по умолчанию выглядит отвратительно, если говорить прямо.Я начал делать свой собственный дефолт, но столкнулся с загадкой.А именно, как мне указать стили для подэлемента элемента?

good-looking: stylize [
  field: field 
    edge [size: 1x1]
    colors [255.255.255 255.255.255]
  area: area
    edge [size: 1x1]
    colors [255.255.255 255.255.255]
  text-list: text-list
    ;text-list/sub-area/edge [size: 1x1]
]

Я хочу, чтобы все поля имели тонкую границу, включая text-list и другие.Но я понятия не имею, как включить это правило в определение текстового списка.

Кроме того, как уменьшить количество повторений в стилях, как в случае с цветами?

Ответы [ 2 ]

1 голос
/ 12 февраля 2011

Я могу частично ответить на ваш первый вопрос.В консоли REBOL попробуйте это ...

>> lo: layout [t: text-list]

Это создает макет и позволяет исследовать объект текстового списка (t) с помощью PROBE ...

>> probe first t
== [self type offset size span pane text color image effect data edge font para feel saved-area rate show? options parent-face old-offset old-size line-list changes face-flags action state access style alt-action facets related words colors texts images file var keycode reset styles init multi blinker pane-size dirty? help user-data flags doc xy sz iter sub-area sld sn lc picked cnt act slf lines text-pane update resize]

Обратите внимание на ПОД-ОБЛАСТЬ.Это область списка в текстовом списке.Исследуйте это, и вы получите ...

>> probe first t/sub-area/edge
== [self color image effect size]
>> probe first t/sub-area/edge/size
== 2

Итак, измените РАЗМЕР там и посмотрите макет, который мы сделали ...

>> t/sub-area/edge/size: 1x1
== 1x1
>> view lo

Теперь край текстового списка должен быть тонким,Я не уверен, как вам этого добиться, используя стиль, но, надеюсь, это поможет вам выбрать правильный путь.

0 голосов
/ 12 февраля 2011

Итак, сначала:

layout [X: field]
type? X/edge
type? X/colors

Объекты должны быть переделаны, чтобы избежать неожиданных побочных эффектов для общих.

good-looking: stylize [
  field: field with [
    edge: make edge [size: 1x1]
    colors: copy [255.255.255 255.255.255]
  ]
  area: area with [
    edge: make edge [size: 1x1]
    colors: copy [255.255.255 255.255.255]
  ]
  text-list: text-list with [
    sub-area: make sub-area [
      edge: make edge [size: 1x1]
    ]
  ]
]
...