Refactoring DataGrid to use DataService.py
This commit is contained in:
@@ -82,6 +82,7 @@ class DataService(MultipleInstance):
|
||||
super().__init__(parent, _id=_id)
|
||||
self._state = DataServiceState(self, save_state=save_state)
|
||||
self._store = DataStore(self, save_state=save_state)
|
||||
self._init_store()
|
||||
|
||||
@property
|
||||
def columns(self) -> list[ColumnDefinition]:
|
||||
@@ -128,12 +129,7 @@ class DataService(MultipleInstance):
|
||||
self._state.columns = self._build_column_definitions(df)
|
||||
self._state.save()
|
||||
|
||||
self._store.ns_fast_access = self._build_fast_access(df)
|
||||
self._store.ns_row_data = df.to_dict(orient="records")
|
||||
self._store.ns_total_rows = len(df)
|
||||
self._store.save()
|
||||
|
||||
self._register_existing_formulas()
|
||||
self._init_store()
|
||||
|
||||
# ------------------------------------------------------------------
|
||||
# Mutations
|
||||
@@ -302,6 +298,16 @@ class DataService(MultipleInstance):
|
||||
# Private helpers
|
||||
# ------------------------------------------------------------------
|
||||
|
||||
def _init_store(self):
|
||||
df = self._store.ne_df
|
||||
if df is None:
|
||||
return
|
||||
self._store.ns_fast_access = self._build_fast_access(df)
|
||||
self._store.ns_row_data = df.to_dict(orient="records")
|
||||
self._store.ns_total_rows = len(df)
|
||||
self._store.save()
|
||||
self._register_existing_formulas()
|
||||
|
||||
def _build_column_definitions(self, df: pd.DataFrame) -> list[ColumnDefinition]:
|
||||
"""Build ColumnDefinition objects from DataFrame columns.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user