Используя J, есть ли способ нарисовать isigraph на вкладке? - PullRequest
0 голосов
/ 12 июня 2018

Я пытаюсь нарисовать isigraph на вкладке.

Пока у меня есть следующий код (который я изменил из демонстраций gl2 и tabs):

NB. =========================================================
Tabdemo=: 0 : 0
pc tabdemo closeok escclose;
cc prefs tab closable movable;

tabnew View;
minwh 450 350;
cc gs isigraph flush;
bin s1;

tabnew Editor;
cc gross radiobutton;
cc paid checkbox;
bin z s1 z;

tabend;
)

NB. =========================================================
tabdemo_run=: 3 : 0
require 'gl2'
coinsert 'jgl2'
wd Tabdemo
wd 'set prefs active 0'
wd 'set prefs tooltip 0 "toolip view"'
wd 'set prefs tooltip 1 "toolip editor"'
wd 'set prefs icon 0 qstyle::sp_fileicon'
wd 'set prefs icon 1 qstyle::sp_diropenicon'
wd 'pmove 400 10 400 200'
wd 'pshow'
)

NB. =========================================================
demo_gs_paint=: 3 : 0
'w h'=: glqwh''
NB. draw grid
glfill 255 255 255 255
glrgb 128 128 18
glpen 0 1
for_i. 50* i.>.h%50 do.
  gllines 0,i,w,i
end.
for_i. 50* i.>.w%50 do.
  gllines i,0,i,h
end.
)

NB. =========================================================
tabdemo_prefs_tabclose=: 3 : 0
wd 'set prefs tabclose ',prefs_select
)

NB. =========================================================
tabdemo_close=: 3 : 0
wd 'pclose'
showevents_jqtide_ 0
)

showevents_jqtide_ 2
tabdemo_run''

КогдаЯ запускаю сценарий и ожидаю увидеть график сетки, отображаемой на вкладке «Вид».

Однако, к сожалению, на вкладке «Вид» у меня появляется пустой экран.Есть ли что-то, что я делаю не так, или просто нет способа нарисовать изиграф на вкладке?

Я в конце концов пытаюсь сделать эту работу.Любая помощь будет оценена!Спасибо!

1 Ответ

0 голосов
/ 12 июня 2018

pc tabdemo closeok escclose; создает родительский объект, а cc gs isagraph flush; создает дочерний объект этого родителя и запускает рисование для заполнения вкладки.К сожалению, вы создали только глагол demo_gs_paint, и это не имя объекта, который вы хотите нарисовать.

Форма для указания объектов - parent_child_verb, а родительский - tabdemo, поэтому правильный ответ - создать глагол tabdemo_gs_paint, и он будет вызван соответствующим образом.Комментарии в ответ на ваш вопрос выше подтверждают, что это работает.

...