@@ -573,13 +573,16 @@ class ElementAdapter final : public abstract::ElementAdapter,
573573 }
574574 [[nodiscard]] ElementIdentifier
575575 sheet_first_shape (const ElementIdentifier element_id) const override {
576- (void )element_id;
577- return {}; // TODO
576+ if (const ElementRegistry::Sheet *sheet_registry =
577+ m_registry->sheet_element (element_id);
578+ sheet_registry != nullptr ) {
579+ return sheet_registry->first_shape_id ;
580+ }
581+ return null_element_id;
578582 }
579583 [[nodiscard]] TableStyle
580584 sheet_style (const ElementIdentifier element_id) const override {
581- (void )element_id;
582- return {}; // TODO
585+ return get_partial_style (element_id).table_style ;
583586 }
584587 [[nodiscard]] TableColumnStyle
585588 sheet_column_style (const ElementIdentifier element_id,
@@ -633,8 +636,12 @@ class ElementAdapter final : public abstract::ElementAdapter,
633636
634637 [[nodiscard]] TablePosition
635638 sheet_cell_position (const ElementIdentifier element_id) const override {
636- (void )element_id;
637- return {0 , 0 };
639+ if (const ElementRegistry::SheetCell *sheet_cell =
640+ m_registry->sheet_cell_element (element_id);
641+ sheet_cell != nullptr ) {
642+ return sheet_cell->position ;
643+ }
644+ return {};
638645 }
639646 [[nodiscard]] bool
640647 sheet_cell_is_covered (const ElementIdentifier element_id) const override {
@@ -924,7 +931,7 @@ class ElementAdapter final : public abstract::ElementAdapter,
924931 [[nodiscard]] std::optional<std::string>
925932 frame_z_index (const ElementIdentifier element_id) const override {
926933 const pugi::xml_node node = get_node (element_id);
927- if (const pugi::xml_attribute attribute = node.attribute (" svg :z-index" )) {
934+ if (const pugi::xml_attribute attribute = node.attribute (" draw :z-index" )) {
928935 return attribute.value ();
929936 }
930937 return std::nullopt ;
0 commit comments