1
0

qt: MyTreeView: use enum.auto() in Columns enum

This commit is contained in:
SomberNight
2023-03-13 16:12:50 +00:00
parent 638c896b11
commit d3c241db4c
7 changed files with 50 additions and 42 deletions

View File

@@ -23,6 +23,7 @@
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
import enum
from enum import IntEnum
from PyQt5.QtCore import Qt, QPersistentModelIndex, QModelIndex
@@ -70,13 +71,13 @@ class AddressTypeFilter(IntEnum):
class AddressList(MyTreeView):
class Columns(IntEnum):
TYPE = 0
ADDRESS = 1
LABEL = 2
COIN_BALANCE = 3
FIAT_BALANCE = 4
NUM_TXS = 5
class Columns(MyTreeView.BaseColumnsEnum):
TYPE = enum.auto()
ADDRESS = enum.auto()
LABEL = enum.auto()
COIN_BALANCE = enum.auto()
FIAT_BALANCE = enum.auto()
NUM_TXS = enum.auto()
filter_columns = [Columns.TYPE, Columns.ADDRESS, Columns.LABEL, Columns.COIN_BALANCE]

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
import traceback
from enum import IntEnum
import enum
from typing import Sequence, Optional, Dict
from abc import abstractmethod, ABC
@@ -33,15 +33,15 @@ class ChannelsList(MyTreeView):
update_single_row = QtCore.pyqtSignal(Abstract_Wallet, AbstractChannel)
gossip_db_loaded = QtCore.pyqtSignal()
class Columns(IntEnum):
FEATURES = 0
SHORT_CHANID = 1
NODE_ALIAS = 2
CAPACITY = 3
LOCAL_BALANCE = 4
REMOTE_BALANCE = 5
CHANNEL_STATUS = 6
LONG_CHANID = 7
class Columns(MyTreeView.BaseColumnsEnum):
FEATURES = enum.auto()
SHORT_CHANID = enum.auto()
NODE_ALIAS = enum.auto()
CAPACITY = enum.auto()
LOCAL_BALANCE = enum.auto()
REMOTE_BALANCE = enum.auto()
CHANNEL_STATUS = enum.auto()
LONG_CHANID = enum.auto()
headers = {
Columns.SHORT_CHANID: _('Short Channel ID'),

View File

@@ -23,7 +23,7 @@
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
from enum import IntEnum
import enum
from PyQt5.QtGui import QStandardItemModel, QStandardItem
from PyQt5.QtCore import Qt, QPersistentModelIndex, QModelIndex
@@ -39,9 +39,9 @@ from .util import MyTreeView, webopen
class ContactList(MyTreeView):
class Columns(IntEnum):
NAME = 0
ADDRESS = 1
class Columns(MyTreeView.BaseColumnsEnum):
NAME = enum.auto()
ADDRESS = enum.auto()
headers = {
Columns.NAME: _('Name'),

View File

@@ -23,7 +23,7 @@
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
from enum import IntEnum
import enum
from typing import Sequence, TYPE_CHECKING
from PyQt5.QtCore import Qt, QItemSelectionModel
@@ -53,11 +53,11 @@ ROLE_SORT_ORDER = Qt.UserRole + 2
class InvoiceList(MyTreeView):
key_role = ROLE_REQUEST_ID
class Columns(IntEnum):
DATE = 0
DESCRIPTION = 1
AMOUNT = 2
STATUS = 3
class Columns(MyTreeView.BaseColumnsEnum):
DATE = enum.auto()
DESCRIPTION = enum.auto()
AMOUNT = enum.auto()
STATUS = enum.auto()
headers = {
Columns.DATE: _('Date'),

View File

@@ -23,7 +23,7 @@
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
from enum import IntEnum
import enum
from typing import Optional, TYPE_CHECKING
from PyQt5.QtGui import QStandardItemModel, QStandardItem
@@ -50,13 +50,13 @@ ROLE_SORT_ORDER = Qt.UserRole + 2
class RequestList(MyTreeView):
key_role = ROLE_KEY
class Columns(IntEnum):
DATE = 0
DESCRIPTION = 1
AMOUNT = 2
STATUS = 3
ADDRESS = 4
LN_RHASH = 5
class Columns(MyTreeView.BaseColumnsEnum):
DATE = enum.auto()
DESCRIPTION = enum.auto()
AMOUNT = enum.auto()
STATUS = enum.auto()
ADDRESS = enum.auto()
LN_RHASH = enum.auto()
headers = {
Columns.DATE: _('Date'),

View File

@@ -1,4 +1,5 @@
import asyncio
import enum
import os.path
import time
import sys
@@ -617,6 +618,12 @@ class MyTreeView(QTreeView):
filter_columns: Iterable[int]
class BaseColumnsEnum(enum.IntEnum):
@staticmethod
def _generate_next_value_(name: str, start: int, count: int, last_values):
# this is overridden to get a 0-based counter
return count
def __init__(self, parent: 'ElectrumWindow', create_menu, *,
stretch_column=None, editable_columns=None):
super().__init__(parent)

View File

@@ -24,7 +24,7 @@
# SOFTWARE.
from typing import Optional, List, Dict, Sequence, Set
from enum import IntEnum
import enum
import copy
from PyQt5.QtCore import Qt
@@ -44,12 +44,12 @@ class UTXOList(MyTreeView):
_spend_set: Set[str] # coins selected by the user to spend from
_utxo_dict: Dict[str, PartialTxInput] # coin name -> coin
class Columns(IntEnum):
OUTPOINT = 0
ADDRESS = 1
LABEL = 2
AMOUNT = 3
PARENTS = 4
class Columns(MyTreeView.BaseColumnsEnum):
OUTPOINT = enum.auto()
ADDRESS = enum.auto()
LABEL = enum.auto()
AMOUNT = enum.auto()
PARENTS = enum.auto()
headers = {
Columns.OUTPOINT: _('Output point'),