def ok_click(self, e_arg):
     if self.to_del_btn.get_active():
         self.Arrow.to_delete = True
     plagiat = False # проверка на наличие тренда с таким названием
     name = self.name_str.get_text()
     if not self.Fill:
         for ar in self.parent.arrows:
             if ar.name == name:
                 plagiat = True
                 self.error_dialog.show()
                 self.wTree.get_widget('error_lbl1').set_text('Тенденция с таким названием уже существует')
                 self.wTree.get_widget('error_lbl2').set_text('Возможные варианты названия:')
                 self.wTree.get_widget('error_lbl3').set_text(name+" продолжение, " + name+" 1, "+ name +" "+ str(self.f_year_text.get_text()))
                 break
     if not plagiat:
         if len(name)<3:
             self.error_dialog.show()
             self.wTree.get_widget('error_lbl1').set_text('')
             self.wTree.get_widget('error_lbl2').set_text('Ошибка! Введите название!')
             self.wTree.get_widget('error_lbl3').set_text('')
        
         else:
             comment_b = self.doc_text.get_buffer()
             comment =str(comment_b.get_text(comment_b.get_start_iter(), comment_b.get_end_iter()))
             sourses_b = self.srs_text.get_buffer()
             sourses =str(sourses_b.get_text(sourses_b.get_start_iter(), sourses_b.get_end_iter()))
             if self.fs_chk.get_active() or self.fs_chk2.get_active():
                 self.power*=2
             try:
                 int(self.s_year_text.get_text())
                 int(self.f_year_text.get_text())
             except:
                 self.error_dialog.show()
                 self.wTree.get_widget('error_lbl1').set_text('')
                 self.wTree.get_widget('error_lbl2').set_text('Ошибка: введите корректные даты!')
                 self.wTree.get_widget('error_lbl3').set_text('')
                 return 0
             if  int(self.s_year_text.get_text()) < int(self.f_year_text.get_text()) and int(self.s_year_text.get_text()) in range(2000,2055) and int(self.f_year_text.get_text()) in range(2000,2055): 
                 s_year =str(self.s_year_text.get_text())
                 f_year =str(self.f_year_text.get_text())
                 power = self.power
                 color = self.palitra.get_current_color()
                 if self.Fill:
                     self.arrow_from_data(comment, sourses, f_year, s_year, color)
                     #if len(self.selected_trends[0])>=1:
                     self.save_rshs()
                 else:
                     self.Arrow = arrow(self.parent, name, comment, sourses, power, s_year, f_year)
                     self.parent.arrows.append(self.Arrow)
                     #if len(self.selected_trends[0])>=1:
                     self.save_rshs()
                 self.parent.rendring()
                 
                 self.quit_()
             else:
                 self.error_dialog.show()
                 self.wTree.get_widget('error_lbl1').set_text('')
                 self.wTree.get_widget('error_lbl2').set_text('Ошибка: введите корректные даты!')
                 self.wTree.get_widget('error_lbl3').set_text('')
Ejemplo n.º 2
0
 def db_load_to_arrows(self, e1=0, e2=None):  # Загрузка данных из ДБ
     self.trend_base.connect_db()
     for ar in self.arrows:
         del ar
         self.arrows = list()
     trlist = self.trend_base.load()
     for trend in trlist:
         self.arrows.append(arrow(self, trend[1], trend[2], trend[3], trend[4], trend[5], trend[6], trend[0]))
     # self.trend_base.cursor.close()
     self.load_relationship()
     self.rendring()