Пример #1
0
    def _update_widget_properties(self, modified=None):
        # after initial creation, call with modified=None

        if not self.widget: return
        
        if self.style & wx.LC_REPORT:
            # columns and rows #############################################################################################
            if not modified or "columns" in modified or "style" in modified:
                columns = self.columns
                # adjust number of columns
                while self.widget.GetColumnCount()>len(columns):
                    self.widget.DeleteColumn(self.widget.GetColumnCount()-1)
                while self.widget.GetColumnCount()<len(columns):
                    i = self.widget.GetColumnCount()
                    self.widget.InsertColumn(i, columns[i][0])
                # set column widths and labels
                for i, (label,size) in enumerate(columns):
                    item = wx.ListItem()
                    item.SetText(label)
                    self.widget.SetColumn(i, item)
                    size = int(size or "0") 
                    if size>0:
                        # results with LIST_AUTOSIZE are not too good
                        self.widget.SetColumnWidth(i, size)
            if not modified or "rows_number" in modified or "style" in modified:
                self.widget.DeleteAllItems()
                if self.columns:
                    for i in range(self.rows_number):
                        compat.ListCtrl_InsertStringItem(self.widget, i, "")
    
            self._set_name()
Пример #2
0
 def _insert_item(self, index, item):
     compat.ListCtrl_InsertStringItem(self.items, index, item[0])
     for col, value in enumerate(item):
         if col==0: continue
         compat.ListCtrl_SetStringItem(self.items, index, col, compat.unicode(value))
     # fix bug 698074
     self.items.SetItemState(index, wx.LIST_STATE_SELECTED, wx.LIST_STATE_SELECTED)
Пример #3
0
    def _do_move_item(self, event, index, is_down):
        """internal function used by move_item_up and move_item_down.
        Returns the new index of the moved item, or None if no change occurred"""
        self.items.SetFocus()
        #index = self.selected_index
        i = index+1 if is_down else index-1
        if i < 0 or i>=self.items.GetItemCount(): return None

        def get(i, j): return self.items.GetItem(i, j).GetText()
        item = [get(index, j) for j in range(6)]
        self.items.DeleteItem(index)
        compat.ListCtrl_InsertStringItem(self.items, i, item[0])
        for col,content in enumerate(item):
            if col==0: continue
            compat.ListCtrl_SetStringItem(self.items, i,col, content)
        self._select_item(i, force=True)
Пример #4
0
 def _insert_item_string(self, index, s):
     if not isinstance(s, compat.unicode): s = misc.wxstr(s)
     return compat.ListCtrl_InsertStringItem(self.items, index, s)
Пример #5
0
 def _insert_item_string(self, index, s):
     return compat.ListCtrl_InsertStringItem(self.items, index, s)