2009-02-25 5 views
0

Я использую Shoes 0.r1134, на Mac OS X 10.4Выравнивание edit_line

При выполнении следующего кода,

Shoes.app do 
    edit_line("Something") 
    edit_line("Something Else") 
end 

второй управляющий edit_line, кажется, быть размещены на 4 пикселя ниже, чем первый один, таким образом, чтобы они не сливались друг с другом. Почему это?

ответ

1

Я не был в состоянии построить обувь от источника на моей машине, но следующая строка выглядит подозрительной (строка 3410 обувь/обувь/ruby.c):

shoes_edit_line_draw(VALUE self, VALUE c, VALUE actual) 
{ 
    SETUP_CONTROL(0, 0, FALSE); 

#ifdef SHOES_QUARTZ 
    place.x += 4; place.ix += 4; 
    place.y += 4; place.iy += 4; 
    place.h += 4; place.ih += 4; 
    place.w += 4; place.iw += 4; 
#endif 

Для list_box (линия 3552) и кнопка (строка 3388), только код изменяет высоту.

#ifdef SHOES_QUARTZ 
    place.h += 8; 
    place.ih += 8; 
#endif 

и

#ifdef SHOES_QUARTZ 
    place.h += 8; 
    place.ih += 8; 
#endif 

соответственно. Тем не менее, я не знаю достаточно, чтобы определить, является ли это неправильным.

+0

Я только что проверил с последним кодом, и это все еще проблема на OSX (я только проверяю PPC, но я бы предположил, что это будет то же самое для Intel). Комментирование строк place.x и place.y дает желаемый эффект для примера Герге в вопросе. Но я не проверял, есть ли у него какие-либо проблемы в других местах. Я поставлю вопрос в Github. – atomicules

Смежные вопросы