а может уже твои....
gscreen
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
ошибка что то похоже на внесенные автором изменени
а может уже твои....
сейчас оригинальный файл попробую
а может уже твои....
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: gscreen
Не, вроде как в 3.
У меня тоже он есть в системе, просто я не пихал gscreen в /usr/bin или куда он там пихается, а просто засунул все в 1 директорию.
Я вот думаю может переписать код в таком ключе, чтобы убрать все лишние show и hide для разных компонентов, а сделать 1 функцию update_state с параметром state, который будет равен всем возможным режимам работы. А состояние кнопок в каждом отдельном режиме описать словарем от текущего режима...
У меня тоже он есть в системе, просто я не пихал gscreen в /usr/bin или куда он там пихается, а просто засунул все в 1 директорию.
Я вот думаю может переписать код в таком ключе, чтобы убрать все лишние show и hide для разных компонентов, а сделать 1 функцию update_state с параметром state, который будет равен всем возможным режимам работы. А состояние кнопок в каждом отдельном режиме описать словарем от текущего режима...
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: gscreen
Не, это не мое
я audio не трогал 
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
мы тестировать за тобой не успеваемNick писал(а):Я вот думаю может переписать код
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
сейчас поставил оригинал gscreen.py который ты брал за основу - так у меня уже он несовместим
теперь у меня 2 пути - либо она ведет меня к прокурору...... что то не то
установить самую свежую версию
либо искать изменения
теперь у меня 2 пути - либо она ведет меня к прокурору...... что то не то
установить самую свежую версию
либо искать изменения
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: gscreen
Наткнулся на функцию которая задает действия вертикальных и горизонтальных кнопок:
Получается, что все действия кнопок задаются в зависимости от того, где они расположены и вне зависимости от того, что на них написано
.
Если в отпуск поеду на наземном транспорте, будет пару дней - попробую все с начала переписать....
Код: Выделить всё
def on_hbutton_clicked(self,widget,mode,number):
if mode == 0:
if number == 0: self.toggle_ignore_limits()
elif number == 2: self.home_all()
elif number == 3: self.home_selected()
elif number == 4: self.unhome_all()
elif number == 5: self.dro_toggle()
else: print "hbutton %d_%d clicked but no function"% (mode,number)
elif mode == 1:
if number == 0: self.jog_mode()
elif number == 1: self.origin_system()
elif number == 2: self.toggle_mist()
elif number == 3: self.toggle_flood()
elif number == 4: self.reload_tooltable()
elif number == 5: self.dro_toggle()
else: print "hbutton %d_%d clicked but no function"% (mode,number)
elif mode == 3:
if number == 1: self.toggle_block_delete()
elif number == 2: self.toggle_optional_stop()
elif number == 7: self.next_tab()
else: print "hbutton %d_%d clicked but no function"% (mode,number)
elif mode == 4:
self.toggle_overrides(widget,mode,number)
elif mode == 5:
if number == 1:pass
elif number == 2:self.toggle_view()
elif number == 3:self.clear_plot()
else: self.toggle_graphic_overrides(widget,mode,number)
else: print "hbutton %d_%d clicked but no function"% (mode,number)Если в отпуск поеду на наземном транспорте, будет пару дней - попробую все с начала переписать....
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: gscreen
ихмо бред, что ф-ция кнопки зависит от местоположения. надо привязывать к названию.
Я начал врубаться в питон потихоньку.
На самом деле достаточно если взять за основу вот этот http://cnc-club.ru/forum/download/file.php?id=7764 gscreen и написать к нему код который
а) меняет текст к кнопкам
б) скрывает лишние элементы
в) показывает координаты
Этого будет уже достаточно для тестирования и понимания какие функции на кнопки завязывать.
мне кажется, что ковырять чужой код это большой гемор, проще написать свой.
Я начал врубаться в питон потихоньку.
На самом деле достаточно если взять за основу вот этот http://cnc-club.ru/forum/download/file.php?id=7764 gscreen и написать к нему код который
а) меняет текст к кнопкам
б) скрывает лишние элементы
в) показывает координаты
Этого будет уже достаточно для тестирования и понимания какие функции на кнопки завязывать.
мне кажется, что ковырять чужой код это большой гемор, проще написать свой.
Последний раз редактировалось Lexxa 29 авг 2012, 18:55, всего редактировалось 1 раз.
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
поясни - в какой - "этот" ??Lexxa писал(а):вот этот () gscreen и
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
по поводу переделки чужого кода - это не страшно (я на этом только и учусь)
главное понимать -что код делает и зачем ты его меняешь
но это так............
-------------------------
а по поводу твоего экрана - тут уже немного концепцию меняем
ну и что - пусть оба варианта развиваются
надо послушать - какие преимущества в привязке не к месту а к названию
главное понимать -что код делает и зачем ты его меняешь
но это так............
-------------------------
а по поводу твоего экрана - тут уже немного концепцию меняем
ну и что - пусть оба варианта развиваются
надо послушать - какие преимущества в привязке не к месту а к названию
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: gscreen
Преимущество одно, от перемены места назначение кнопки не изменится, и самое главное, кнопка будет делать именно то, что на ней написано!
Я вообще склоняюсь к тому, чтобы обзывать кнопки чуть ли не пинами и писать все это прямо в label кнопки, а потом при запуске программы переписывать все названия в соответствии со словарем.
Тогда будет однозначное соответствие - название кнопки <=> ее функция.
Я вообще склоняюсь к тому, чтобы обзывать кнопки чуть ли не пинами и писать все это прямо в label кнопки, а потом при запуске программы переписывать все названия в соответствии со словарем.
Тогда будет однозначное соответствие - название кнопки <=> ее функция.
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: gscreen
путаницы с названием-функция не будет, что прямоо влияет на безопасность.nkp писал(а):надо послушать - какие преимущества в привязке не к месту а к названию
какова новая концепция?
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: gscreen
+100500Nick писал(а):Я вообще склоняюсь к тому, чтобы обзывать кнопки чуть ли не пинами и писать все это прямо в label кнопки, а потом при запуске программы переписывать все названия в соответствии со словарем.
Я про это уже раз пять писал,
Ник, с пинами идея суперская
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
так -ну уже запустился...
видны по две вкладки
видны по две вкладки
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
скрипт не отрабатывает - пинов в хал нет
но и на эту строчку не ругается
но и на эту строчку не ругается
Код: Выделить всё
import hwbuttons- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: gscreen
А строчка hwbuttons = HWButtons( ... есть?
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
ну да
я diff- ом все изменения внес
я запускаю linuxcnc поставленный из исходников
я diff- ом все изменения внес
я запускаю linuxcnc поставленный из исходников
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
посмотри вот здесь:
наверно vmodes
и здесь глянь:
Код: Выделить всё
self.hwbuttons = hwbuttons.HWButtons(self.halcomp,self.xml, "")
self.hwbuttons.hmodes = {_MAN:0, _MDI: 1, _AUTO:2, 3:3,4:4,5:5, "mode-none":6}
self.hwbuttons.hmodes = {_MAN:0, _MDI: 1, _AUTO:2, 3:3,4:4,5:5, "mode-none":6}и здесь глянь:
Код: Выделить всё
num = 0
for i in self.vbuttons.get_children() :
num = max(num,len(i.get_children()))
self.vbuttons_num = num
num = 0
for i in self.hbuttons.get_children() :
num = max(num,len(i.get_children()))
self.hbuttons_num = num- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: gscreen
Точно!nkp писал(а):наверно vmodes
А тут чего?nkp писал(а):и здесь глянь:
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: gscreen
то же (в исходники глянь)
