function selectedText(context)
    local text = ""

    context.doWithSelection(
        function(range)
            for cell in range:enumerate() do
                cellRange = cell:getRange()
                cellText = cellRange:extractText()
                if not isEmpty(cellText) then
                    text = text .. cellText
                end
            end
        end
    )

    return text
end


function getObjects(context)
    local objects = {}

    context.doWithSelection(
        function(range)
            for cell in range:enumerate() do
                cellRange = cell:getRange()
                cellText = cellRange:extractText()
                if not isEmpty(cellText) then
                    table.insert(objects, cellText)
                end    
            end
        end
    )

    if next(objects) == nil then
        context.doWithDocument(
            function(document)
                -- 1. надо получать текущую активную страницу
                blocks = document:getBlocks()
                for tbl in blocks:enumerateTables() do
                    rowsCount = tbl:getRowsCount()
                    columnsCount = tbl:getColumnsCount()

                    for i=0,rowsCount-1 do
                        for j=0,columnsCount-1 do
                            cell = tbl:getCell(DocumentAPI.CellPosition(i, j))
                            cellRange = cell:getRange()
                            cellText = cellRange:extractText()
                            if not isEmpty(cellText) then
                                table.insert(objects, cellText)
                            end
                        end
                    end
                end

                -- 2. Намного проще проходить по таблицам таким образом
                --rng = tbl:getCellRange("A1:B3")
                --for cell in rng:enumerate() do
                --    cellRange = cell:getRange()
                --    cellText = cellRange:extractText()
                --    if not isEmpty(cellText) then
                --        table.insert(objects, cellText)
                --    end
                --end
            end
        )
    end

    return objects
end