def region_menu(self):
        self.lreg = tk.IntVar(self.parameter_pane)
        self.ureg = tk.IntVar(self.parameter_pane)

        self.lreg_entry = tk.Entry(self.parameter_pane,
                                   state=tk.DISABLED,
                                   textvariable=self.lreg,
                                   width=10)
        self.ureg_entry = tk.Entry(self.parameter_pane,
                                   state=tk.DISABLED,
                                   textvariable=self.ureg,
                                   width=10)

        self.reg_check = tk.BooleanVar(self.parameter_pane)
        self.reg_check.set(False)
        self.reg_checkButton = tk.Checkbutton(self.parameter_pane,
                                              text='Region selection',
                                              var=self.reg_check,
                                              command=self.enable_reg_entry)

        self.reg_checkButton.grid(row=2, column=0, sticky='w')
        self.lreg_entry.grid(row=2, column=1)
        self.ureg_entry.grid(row=2, column=2)

        tp.ToolTip(widget=self.reg_checkButton,
                   text='Select bp coordinates between which too show SVs',
                   info_var=self.info_box_var)
    def anno_limit_menu(self):
        self.a_lower = tk.IntVar(self.annotation_pane)
        self.a_upper = tk.IntVar(self.annotation_pane)

        self.a_lower_entry = tk.Entry(self.annotation_pane,
                                      state=tk.DISABLED,
                                      textvariable=self.a_lower,
                                      width=10)
        self.a_upper_entry = tk.Entry(self.annotation_pane,
                                      state=tk.DISABLED,
                                      textvariable=self.a_upper,
                                      width=10)

        self.a_limit_check = tk.BooleanVar(self.annotation_pane)
        self.a_limit_check.set(False)
        self.a_limit_checkButton = tk.Checkbutton(
            self.annotation_pane,
            text='Element size limits',
            var=self.a_limit_check,
            command=self.enable_a_limit_entry)

        self.a_limit_checkButton.grid(row=2, column=0, sticky='w')
        self.a_lower_entry.grid(row=2, column=1)
        self.a_upper_entry.grid(row=2, column=2)

        tp.ToolTip(
            widget=self.a_limit_checkButton,
            text=
            'Select bp length limits for annotation \n features to be shown',
            info_var=self.info_box_var)
    def heat_menu(self):
        self.heat_var = tk.IntVar(self.parameter_pane)
        self.heat_entry = tk.Entry(self.parameter_pane,
                                   state=tk.DISABLED,
                                   textvariable=self.heat_var,
                                   width=10)
        self.heat_var.set(0)

        self.heat_check = tk.BooleanVar(self.parameter_pane)
        self.heat_check.set(False)
        self.heat_checkButton = tk.Checkbutton(self.parameter_pane,
                                               text='Heat map',
                                               var=self.heat_check,
                                               command=self.enable_heat_entry)

        self.heat_checkButton.grid(
            row=3,
            column=0,
            #padx=3,
            #pady=0,
            sticky='w')
        self.heat_entry.grid(row=3, column=1)

        tp.ToolTip(
            widget=self.heat_checkButton,
            text=
            'Check to enable heatmap for the density of SVs.\n Enter distance (in bp) over which density is calculated',
            info_var=self.info_box_var)
 def draw_button(self):
     self.drawButton = tk.Button(self.draw_pane,
                                 text='Draw',
                                 command=self.draw_window)
     self.drawButton.grid(row=0, column=0)
     tp.ToolTip(
         widget=self.drawButton,
         text=
         'Click to visualize selected contig\n and corresponding SVs based on the set parameters',
         info_var=self.info_box_var)
    def anno_check(self):
        self.anno_check = tk.BooleanVar(self.annotation_pane)
        self.anno_check.set(False)
        self.anno_checkButton = tk.Checkbutton(self.annotation_pane,
                                               text='Draw annotations',
                                               var=self.anno_check)
        self.anno_checkButton.grid(row=1, column=0, sticky='w')

        tp.ToolTip(
            widget=self.anno_checkButton,
            text=
            'If annotation file is loaded,\n annotations are drawn by default.\n To disable, toggle checkbox',
            info_var=self.info_box_var)
    def anno_type_menu(self):
        self.a_typeVerbose = tk.BooleanVar(self.annotation_pane)
        self.a_typeVerbose.set(False)

        self.a_typeButton = tk.Menubutton(self.annotation_pane,
                                          text='Type selection',
                                          relief=tk.RAISED)
        self.a_typeButton.grid(row=0, column=0, sticky='w', columnspan=2)
        self.a_VerboseButton = tk.Checkbutton(self.annotation_pane,
                                              text='Complement selection',
                                              variable=self.a_typeVerbose)
        self.a_VerboseButton.grid(row=0, column=1, columnspan=2)

        tp.ToolTip(
            widget=self.a_typeButton,
            text=
            'Select annotation type(s) to visualize.\n No selection means all types will be shown.\n Checking "Complement selection" means all types\n but the one(s) selected will be shown\n (Only works with GFF files)',
            info_var=self.info_box_var)
    def contig_menu(self):
        self.contig_var = tk.StringVar(self.contig_pane)
        self.default = Contig('------', 0)
        self.contigs = [self.default]

        self.contig_var.set(self.default.name)

        self.over_drop = tk.OptionMenu(self.contig_pane, self.contig_var,
                                       *[x.name for x in self.contigs])
        self.over_drop.config(width=30)
        self.over_drop.grid(row=0, column=0, padx=3, pady=3, sticky='nw')
        self.contig_var.trace('w', self.flagstat)

        tp.ToolTip(
            widget=self.over_drop,
            text=
            'Select contig to visualize;\n Only one contig can be shown at a time',
            info_var=self.info_box_var)