Интегрирование диаграмм в документы

Изобретение относится к способам управления и редактирования диаграмм в приложениях. Технический результат заключается в повышении быстродействия за счет упрощения внедрения диаграмм в отдельном приложении. Диаграмма представляется в ведущем приложении. Диаграмма управляется посредством передачи данных, соответствующих диаграмме, к отдельному приложению и обеспечения функциональных возможностей для редактирования данных в отдельном приложении. Представление данных в отдельном приложении является отличным от представления диаграммы в ведущем приложении. Изменения в данных передаются в ведущее приложение, когда данные редактируются в отдельном приложении. Сообщенные изменения в данных отражаются в представлении диаграммы в ведущем приложении. 4 н. и 15 з.п. ф-лы, 6 ил.

 

Уровень техники

Так как количество приложений, доступных для выполнения задач на вычислительных устройствах, увеличивается, также увеличивается ожидание непрерывающейся работы пользователя среди этих приложений. При работе с объектами в одном приложении ожидается, что один и тот же объект будет функционировать эквивалентно при использовании во втором приложении. Это особенно верно для приложений, включенных в один и тот же набор программ.

Однако, так как много приложений обеспечивают свою собственную поддержку для объекта, работа пользователя часто изменяется среди этих приложений. Например, диаграмма, созданная в мощном приложении создания диаграмм, нечасто поддерживается эквивалентным образом, когда пользователь пытается создавать ту же самую диаграмму в приложении презентаций (например, слайд-шоу). С некоторыми объектами пользователь вообще может быть неспособен создать объект.

Некоторые приложения позволяют внедрять объекты из одного или более других приложений в документы, которые создает данное приложение. Например, таблица, сформированная приложением работы с электронными таблицами, может быть внедрена непосредственно среди текста в документе текстового процессора (текстовой обработки), созданном приложением текстового процессора. Однако для каждого решения не все функциональные возможности, которые были доступны в первом приложении, остаются доступными для объекта при внедрении во второе приложение.

Например, один стандарт для внедрения объекта в документ другого приложения называется стандарт связывания и внедрения объектов (OLE). OLE является стандартом составного документа, разработанным корпорацией Microsoft (R) Редмонд, штат Вашингтон. OLE дает возможность разработчику создавать объекты с помощью одного приложения и затем связывать или внедрять их во второе приложение. Внедренные объекты сохраняют свой первоначальный формат и ссылки на приложение, которое их создавало. Соответственно, когда документ, связанный с объектом, редактируется и модифицируется, сам объект также модифицируется. Однако OLE имеет заметные недостатки, так как он часто хранит внедренный объект в качестве изображения, создавая большие файлы и объекты, которые не могут быть отредактированы встроенным образом. Разнообразие доступных решений поддержки объектов приводит к множеству преимуществ и недостатков, связанных с каждым решением.

Сущность изобретения

Аспекты настоящего изобретения в целом относятся к интегрированию диаграмм в документы. Один аспект использует документ электронной таблицы в качестве источника для данных диаграмм, используемых в других ведущих (главных) приложениях. Предварительно, диаграммы, включенные в приложения, которые непосредственно не относятся к формированию диаграммы, испытывают неудобства от "разобранного" набора признаков. Многие из признаков, доступных в приложении работы с электронными таблицами, которое непосредственно поддерживает создание диаграмм, недоступны для создания диаграммы в других ведущих (главных) приложениях. Например, некоторые формулы и возможности сортировки, которые могут использоваться вместе с диаграммой в приложении работы с электронными таблицами, недоступны в ведущем приложении. Также некоторые типы диаграмм, которые являются относительно простыми для создания в приложении работы с электронными таблицами, могут быть чрезвычайно трудны для создания в ведущем приложении. Один аспект настоящего изобретения изменяет диаграммы ведущего приложения так, чтобы данные диаграмм были получены из документа электронной таблицы. Это позволяет диаграммам в ведущем приложении иметь тот же самый набор признаков, что и диаграмма в приложении работы с электронными таблицами, а также иметь мощность редактирования приложения работы с электронными таблицами при использовании диаграмм. Соответственно, создана ли диаграмма в другом ведущем приложении или внедрена из приложения работы с электронными таблицами, использование и редактирование диаграммы остается тем же самым, обеспечивая более непрерывный опыт (непрерывную работу) пользователя.

Настоящее описание сущности изобретения обеспечивается, чтобы представить выбор концепций в упрощенной форме, которые описаны ниже в подробном описании. Это описание сущности изобретения не предназначено для идентификации ключевых признаков или существенных признаков заявленного предмета изобретения и при этом не предназначено для использования в качестве помощи при определении объема заявленного предмета изобретения.

Краткое описание чертежей

Неограничивающие и неисчерпывающие варианты осуществления настоящего изобретения описаны со ссылками на нижеследующие чертежи, на которых подобные цифровые ссылочные позиции относятся к подобным частям на всех различных видах, если не определено иначе.

Фиг.1 иллюстрирует примерное вычислительное устройство, которое может использоваться в соответствии с одним примерным вариантом осуществления.

Фиг.2 иллюстрирует примерный экранный снимок диаграммы, включенной в приложение презентации.

Фиг.3 иллюстрирует другой примерный экранный снимок диаграммы, включенной в приложение презентации.

Фиг.4 иллюстрирует функциональную схему примерной системы для использования электронной таблицы в качестве источника данных диаграммы для диаграммы, включенной в ведущее приложение.

Фиг.5 иллюстрирует функциональную схему примерной структуры файла для персистентности (создания и поддержания) данных диаграммы.

Фиг. 6 иллюстрирует блок-схему примерного процесса для взаимодействия между электронной таблицей и ведущим приложением для обеспечения данных диаграммы, включенной в ведущее приложение, в соответствии с одним вариантом осуществления настоящего изобретения.

Подробное описание

Варианты осуществления настоящего изобретения описаны ниже более полно со ссылками на сопроводительные чертежи, которые формируют его часть и которые иллюстрируют конкретные примерные варианты осуществления для осуществления изобретения. Однако варианты осуществления могут быть осуществлены во многих отличных формах и не должны рассматриваться как ограниченные вариантами осуществления, сформулированными здесь; скорее, эти варианты осуществления обеспечиваются так, чтобы это раскрытие было полным и завершенным и полностью передавало объем изобретения специалистам в данной области техники. Варианты осуществления настоящего изобретения могут быть реализованы как способы, системы или устройства. Соответственно, варианты осуществления настоящего изобретения могут принимать форму выполнения полностью в виде аппаратного обеспечения, полностью в виде программного обеспечения или реализации, объединяющей аспекты программного обеспечения и аппаратного обеспечения. Нижеследующее подробное описание, поэтому, не должно быть принято в ограничивающем смысле.

Логические операции различных вариантов осуществления настоящего изобретения осуществляются (1) как последовательность осуществленных компьютером этапов, выполняющихся на вычислительной системе и/или (2) как связанные машинные модули в вычислительной системе. Реализация является вопросом выбора, зависящим от требований к производительности вычислительной системы, осуществляющей изобретение. Соответственно, логические операции, составляющие варианты осуществления настоящего изобретения, описанного здесь, альтернативно называются как операции, этапы или модули.

Со ссылками на фиг.1, одна примерная система для реализации изобретения включает в себя компьютер, такой как вычислительное устройство 100. Вычислительное устройство 100 может быть конфигурировано как клиент, сервер, мобильное устройство или любое другое вычислительное устройство. В самом основном варианте осуществления вычислительное устройство 100 типично включает в себя по меньшей мере один процессор (устройство обработки) 102 и системную память 104. В зависимости от точной конфигурации и типа вычислительного устройства системная память 104 может быть энергозависимой (такой как ОЗУ), энергонезависимой (такой как ПЗУ, флеш-память и т.д.) или некоторой их комбинацией. Системная память 104 обычно включает в себя операционную систему 105, одно или более приложений 106 и может включать в себя программные данные 107. В одном варианте осуществления приложение 106 включает в себя систему 120 интеграции диаграмм для реализации системы согласно настоящему изобретению. Дополнительно программные данные 107 включают в себя данные 122 диаграммы. Этот основной вариант осуществления иллюстрируется на фиг.1 компонентами в пределах пунктирной линии 108.

Вычислительное устройство 100 может иметь дополнительные признаки или функциональные возможности. Например, вычислительное устройство 100 может также включать в себя дополнительные запоминающие устройства (сменные и/или несменные), такие как, например, магнитные диски, оптические диски или ленту. Такая дополнительная память иллюстрируется на фиг.1 как сменная память 109 и несменная память 110. Компьютерная запоминающая среда может включать в себя энергозависимые и энергонезависимые, сменные и несменные носители, осуществленные любым способом или технологией хранения информации, например в виде считываемых компьютером команд, структур данных, программных модулей или других данных. Системная память 104, сменная память 109 и несменная память 110 - все являются примерами компьютерной запоминающей среды. Компьютерная запоминающая среда включают в себя, но не ограничивается ими, ОЗУ, ПЗУ, СППЗУ, флеш-память или память другой технологии, CD-ROM, цифровые универсальные диски (DVD) или другую оптическую память, магнитные кассеты, магнитную ленту, память на магнитных дисках или другие магнитные запоминающие устройства, или любую другую среду, которая может использоваться для хранения желательной информации и к которой можно обращаться посредством вычислительного устройства 100. Любые такие компьютерные носители памяти могут быть частью устройства 100. Вычислительное устройство 100 может также иметь устройство(а) 112 ввода, такое как клавиатура, мышь, перо, устройство ввода речи, сенсорное устройство ввода и т.д. Устройство(а) 114 вывода, такое как дисплей, громкоговорители, принтер и т.д., также может быть включено.

Вычислительное устройство 100 также содержит коммуникационные соединения 116, которые позволяют устройству обмениваться с другими вычислительными устройствами 118, например, по сети. Коммуникационное соединение 116 является одним примером среды связи. Среда связи может обычно реализовываться считываемыми компьютером командами, структурами данных, программными модулями или другими данными в модулируемом сигнале данных, таком как несущий сигнал или другой транспортный механизм, и включает в себя любую среду доставки информации. Термин "модулированный сигнал данных" означает сигнал, который имеет одну или более из его характеристик, фиксированную или изменяемую таким образом, чтобы кодировать информацию в сигнале. В качестве примера, а не ограничения, коммуникационная среда включает в себя проводные носители, такие как проводная сеть, или соединения с непосредственным проводным соединением, и беспроводные носители, такие как акустическое, РЧ, инфракрасное излучение и другие беспроводные носители. Термин "считываемые компьютером носители", используемый здесь, включает в себя как носители данных, так и коммуникационные носители.

Вариант осуществления, выполняемый вычислительным устройством 100, предусматривает использование документа электронной таблицы в качестве источника для данных 122 диаграммы для диаграмм, включенных в документы ведущего приложения. Приложение 120 интеграции диаграмм обеспечивает интеграцию данных диаграммы электронной таблицы с представлением диаграммы в ведущем приложении. Соответственно, функциональные возможности, обеспеченные электронной таблицей для диаграммы, сделаны доступными в ведущем приложении. Пользователь может редактировать диаграмму и изменять представление диаграммы согласно набору признаков, обеспеченному приложением электронных таблиц, вместо более ограниченного набора признаков.

За исключением более широкого значения, которое допускают здесь настоящее раскрытие и формула изобретения, чтобы охватить более широкое разнообразие альтернативных вариантов осуществления, следующие термины, используемые здесь и по всей формуле изобретения, в целом определяются следующим образом.

"Диаграмма" в общем относится к графику, гистограмме, линейной диаграмме, круговой диаграмме, табличной диаграмме или другому иллюстрированному описанию данных, которые могут быть включены в документ. Как используется здесь, не имеется никакого ограничения на типы диаграмм, которые могут быть включены в конкретный документ.

"Документ" в общем определяется как любая страница, лист, форма или другая конструкция приложения, которое содержит текст, графические объекты, таблицы, ячейки данных или другие типы представлений данных. Примеры документов включают в себя документы текстового процессора, электронные таблицы, диаграммы, слайды, web-страницы, рабочие листы, примечания, сообщения электронной почты, мгновенные сообщения, рисунки, схемы, изображения и другие размещения текста и/или графических объектов.

"Набор признаков" в общем определяется как набор функций или признаков, связанных с конкретным приложением. Примерный набор признаков приложения, поддерживающего создание диаграмм, включает в себя функциональные возможности сортировки, поддержки формул, поддержки типов диаграмм, а также другие функции и возможности, которые обеспечивают возможности манипуляции диаграммами.

"Ведущее приложение" в общем относится к приложению, в которое диаграмма внедрена или (с которым) связана. Ведущее приложение включает в себя визуальное представление диаграммы в документе ведущего приложения. Ведущие приложения могут включать в себя приложения презентации, приложения текстового процессора и другие приложения, которые могут включать в себя диаграмму.

"Приложение презентации" в общем относится к приложению, которое сконфигурировано для обеспечения отображения, представляемого пользователю. Например, слайд-шоу может включать в себя один или более слайдов в сформированной презентации. Эти слайды соответствуют индивидуальным документам, сформированным приложением презентации. Пример приложения презентации включает в себя программу PowerPoint (R), произведенную корпорацией Microsoft (R), Редмонд, штат Вашингтон.

"Электронная таблица" в общем определяется как документ или база данных, которая включает в себя массив ячеек, которые содержат данные. Один пример электронной таблицы включает в себя рабочий лист, сформированный в программе Excel (R), произведенной корпорацией Microsoft (R), Редмонд, штат Вашингтон. Другой пример электронной таблицы включает в себя массив данных, сформированный в программе Access (R), произведенной корпорацией Microsoft (R), Редмонд, штат Вашингтон. Каждая электронная таблица связана с функциональными возможностями для создания диаграммы, которая соответствует данным, включенным в электронную таблицу.

"Приложение для работы с электронными таблицами" вообще относится к приложению, которое сконфигурировано, чтобы сформировать электронную таблицу (см. определение "электронная таблица" выше).

Фиг.2 иллюстрирует примерный экранный снимок приложения презентации, который включает в себя диаграмму. Приложение 200 презентации соответствует предыдущей версии приложения презентации, которое обрабатывало поддержку данных диаграмм внутренне. Приложение 200 презентации включало в себя поле 210 листинга слайдов, поле 220 слайда и поле 230 данных диаграммы.

Поле 210 листинга слайдов перечисляет слайды, доступные для просмотра и редактирования, включенные в текущий файл презентации, загруженный в приложение 200 презентации. Поле 210 листинга слайдов также содержало письменную или визуальную индикацию слайда, просматриваемого в настоящее время. Листинг (список) слайдов является обычным для большинства приложений презентации и известен в данной области техники. Поэтому поле листинга слайдов ниже более подробно не описывается.

Поле 220 слайда включало в себя содержание (контент) слайда, в настоящее время просматриваемого. В данном примере содержание слайда включает в себя диаграмму 222. Диаграмма 222 показана как гистограмма. Когда диаграмма 222 была выбрана для вставки в поле 220 слайда, приложение 200 презентации также инициализировало поле 230 данных диаграммы.

Поле 230 данных диаграммы обеспечивается как всплывающее окно, наложенное на окно приложения 200 презентации. Поле данных диаграммы было частью содержания, обеспеченного приложением 200 презентации. Поле данных диаграммы включало в себя ячейки данных (например, 232), ячейки метки столбцов и строк (например, 234), ячейки данных диаграммы (например, 236) и ячейки метки оси диаграммы (например, 238). Корреляция среди данных, включенных в ячейки данных диаграммы и ячейки метки оси диаграммы, приводила к форматированию данных в пределах диаграммы 222.

С приложением 200 презентации, обеспечивающим ее собственную поддержку для ввода данных диаграммы, функциональные возможности, связанные с созданием и редактированием диаграммы, были ограничены. Кроме того, окном, соответствующим полю 230 данных диаграммы, необходимо было постоянно управлять для позиционирования и установки размеров в зависимости от части просматриваемой презентации.

Фиг.3 иллюстрирует другой примерный экранный снимок диаграммы, включенной в приложение презентации в соответствии с одним вариантом осуществления. Приложение 300 презентации подобно приложению 200 презентации, показанному на фиг.2. Приложение 300 презентации включает в себя поле 310 листинга слайдов и поле 320 слайда. Поле 320 слайда также включает в себя диаграмму 322, которая аналогична диаграмме 222, показанной на фиг.2. Однако приложение 300 презентации не включает в себя окно или поле, подобное полю 230 данных диаграммы. Вместо этого приложение 300 презентации инициализирует приложение 350 электронной таблицы для обеспечения данных диаграммы для диаграммы 322.

Приложение 350 электронной таблицы включает в себя электронную таблицу 352, которая включает в себя массив ячеек. Ячейки имеют различные типы, включая в себя ячейки данных (например, ячейка 354 данных) и ячейки метки столбца и строки (например, метку 356 столбца). В ячейке данных (например, 354) имеются ячейки, определенные данными, которые они содержат. В одном примере ячейки данных включают в себя данные, соответствующие диаграмме, такой как диаграмма 320. Один тип ячейки данных диаграммы включает в себя значение для диаграммы (например, ячейка 360 значения). Другой тип ячейки данных, связанной с диаграммой, включает в себя метку оси, которая маркирует ось или размерность диаграммы (например, метка 358 оси). Обеспечивая данные для диаграммы 322 согласно приложению 350 электронной таблицы, диаграмма 322 способна воспользоваться преимуществом полного набора признаков, обеспеченного приложением 350 электронной таблицы для управления диаграммами. Приложение 350 электронной таблицы обеспечивается для диаграммы 322, как только редактирования или манипуляции в отношении диаграммы 322 влияют на данные диаграммы. Примерный процесс для обработки редактирования и изменений данных диаграммы описаны более подробно ниже со ссылками на фиг.6. Автоматически запуская приложение 350 электронной таблицы в ответ на изменения в диаграмме 322, операция между приложением 300 презентации и приложением 350 электронной таблицы выполняется относительно гладко. В предыдущих проектах, чтобы использовать приложение электронной таблицы в качестве источника данных диаграмм, диаграмма должна была быть создана первой в электронной таблице и затем скопирована в приложение презентации. Однако скопированная диаграмма сама не могла была быть использована с одновременно полным набором признаков в ведущем приложении, который был доступен в приложении работы с электронными таблицами. Настоящее изобретение решает эти ограничения относительно гладко, обеспечивая в качестве источника данные диаграммы из приложения работы с электронными таблицами, позволяя предусмотреть полный набор признаков для диаграммы в ведущем приложении.

Хотя пример фиг.3 относится к диаграмме в приложении презентации, которое имеет данные диаграммы, обеспеченный приложением электронной таблицы, следует заметить, что могут использоваться другие комбинации приложений. Ведущее приложение необязательно должно быть приложением презентации, но может быть вместо этого другим ведущим приложением, например приложением текстового процессора, или другим приложением, в которое могут быть включены диаграммы. Дополнительно, даже при том, что данные диаграммы показываются как обеспеченные приложением работы с электронными таблицами, приложение работы с электронными таблицами может включать в себя другие приложения, такие как приложения баз данных или приложения работы с данными в массивах.

Фиг.4 иллюстрирует функциональную схему примерной системы для использования электронной таблицы в качестве источника данных диаграммы для диаграммы, включенной в ведущее приложение, в соответствии с одним вариантом осуществления. Система 400 включает в себя приложение 402 презентации, приложение 404 обработки текстов, обработчик 406 внедренного объекта, приложение 408 интеграции диаграмм, приложение 410 базы данных/электронной таблицы и таблицу 414 выполняющихся объектов. Приложение 410 работы с электронными таблицами включает в себя данные 412 диаграммы, соответствующие диаграмме, включенной в одно из ведущих приложений (402, 404). Хотя два ведущих приложения (402, 404) показаны, любое количество ведущих приложений может быть ассоциировано с системой 400.

Обработчик 406 внедренных объектов обеспечивает функциональные возможности для поддержки объектов, включенных в документы ведущего приложения, которые ассоциированы с другими программами. В одном варианте осуществления обработчик 406 внедренных объектов соответствует графической программе, которая обеспечивает код для интегрирования графических объектов в документы ведущего приложения. Обработчик 406 внедренных объектов обеспечивает интерфейс между приложением 408 интеграции диаграмм и ведущими приложениями (402, 404). Обработчик 406 внедренных объектов преобразовывает команды, обеспеченные приложением 408 интеграции диаграмм, в команды, понятые ведущими приложениями (402, 404) для управления (манипулирования) графическими объектами. В другом варианте осуществления обработчик 406 внедренных объектов не включен в систему 400, и вместо этого функциональные возможности обработчика 406 внедренных объектов обеспечиваются приложением 408 интеграции диаграмм.

Приложение 408 интеграции диаграмм обменивается с приложением 410 работы с электронными таблицами, чтобы получать и редактировать данные 412 диаграммы. В одном варианте осуществления приложение 408 интеграции диаграмм соответствует приложению 120 интеграции диаграмм, приведенному на фиг.1. Приложение 408 интеграции диаграмм сконфигурировано, чтобы синхронизировать данные 412 диаграмм, обеспеченных приложением 410 работы с электронными таблицами, с диаграммой, включенной в ведущее приложение (402, 404). Приложение 410 работы с электронными таблицами организовывает данные 412 диаграммы, отвечает на запросы от приложения 408 интеграции диаграмм и обменивается данными 412 диаграммы с приложением 408 интеграции диаграмм через набор СОМ (модель компонентных объектов от Microsoft) интерфейсов (420, 422, 424). В одном варианте осуществления СОМ интерфейс 420 ChartDataSink разрешает приложению 410 работы с электронными таблицами уведомить приложение 408 интеграции диаграмм об обновлениях данных 412 диаграмм и поместить эти обновления в приложение 412 интеграции диаграмм. В том же самом варианте осуществления СОМ интерфейс 422 ChartDataSource разрешает приложению 408 интеграции диаграмм инициализировать приложение 410 работы с электронными таблицами и направлять действия пользователя, которые влияют на данные 412 диаграммы, к приложению 410 работы с электронными таблицами. СОМ интерфейс 424 ChartDataSourceFactory разрешает приложению 408 интеграции диаграмм получить экземпляр СОМ интерфейса 422 ChartDataSource, который связан с СОМ интерфейсом 420 ChartDataSink. В связанном дальнейшем варианте осуществления уникальный экземпляр СОМ интерфейса 420 ChartDataSink и СОМ интерфейса 422 ChartDataSource существует для каждой диаграммы. Приложение 408 интеграции диаграмм может получить СОМ интерфейс 424 ChartDataSourceFactory из таблицы 414 выполняющихся объектов. Приложение 410 электронной таблицы записывает СОМ интерфейс 424 ChartDataSourceFactory в таблицу 414 выполняющихся объектов, когда приложение 410 работы с электронными таблицами инициализировано.

Таблица 414 выполняющихся объектов является компонентом СОМ системы, который дает возможность независимым процессам получать СОМ интерфейс друг от друга. Таблица 414 выполняющихся объектов используется, чтобы получить СОМ интерфейс 424 ChartDataSourceFactory от приложения 410 работы с электронными таблицами. Команды выдаются к приложению 410 работы с электронными таблицами, чтобы создать СОМ интерфейс 422 ChartDataSource, который тогда является связанным с в настоящее время открытой рабочей книгой, причем рабочая книга должна быть открыта из файловой системы, или рабочей книги, которая была внедрена в файл ведущего приложения (402, 404). Когда рабочая книга внедрена в файл ведущего приложения (402, 404), приложение 408 интеграции диаграмм является ответственным за оповещение (сигнализацию) приложения 410 работы с электронными таблицами, что требуется СОМ интерфейс (например, 424) ChartDataSourceFactory. Приложение 410 работы с электронными таблицами регистрирует экземпляр СОМ интерфейса 424 ChartDataSourceFactory в таблице 414 выполняющихся объектов, и приложение 408 интеграции диаграмм извлекает интерфейс из таблицы 414 выполняющихся объектов. Как только приложение 408 интеграции диаграмм имеет экземпляр СОМ интерфейса 424 ChartDataSourceFactory, приложение 408 интеграции диаграмм вызывает метод, который требует, чтобы экземпляр СОМ интерфейс 422 ChartDataSource быть ассоциирован с рабочей книгой, посредством задания множества параметров. Параметры включают в себя информацию, связывающую СОМ интерфейс 422 ChartDataSource с текущей рабочей книгой, новой рабочей книгой, которая должна быть заполнена типовыми данными, снабженными приложением 408 интеграции диаграмм, рабочей книгой, идентифицированной именем файла, или двоичным потоком данных, который является внедренной рабочей книгой, которая должна быть загружена приложением 410 работы с электронными таблицами. Как только СОМ интерфейс 424 ChartDataSourceFactory получен, таблица 414 выполняющихся объектов выводится из цикла обработки. Дальнейший обмен между приложением 410 работы с электронными таблицами и приложением 408 интеграции диаграмм завершается через СОМ интерфейсы (420, 422, 424). Описание фиг.6 ниже обеспечивает более подробное описание примерного процесса, относящегося к обмену между приложением 408 интеграции диаграмм и приложением 410 работы с электронными таблицами.

Фиг.5 иллюстрирует функциональную схему примерной структуры файла для персистентности (способности программного обеспечения создавать и поддерживать перманентные объекты) данных диаграммы в соответствии с одним вариантом осуществления. Этот конкретный вариант осуществления обеспечивает структуру файла для данных диаграммы, соответствующих диаграмме, включенной в презентацию из приложения презентации. Однако другие примеры могут включать в себя структуры файла для данных диаграммы, соответствующих другим документам других ведущих приложений, которые включают в себя диаграмму. Структура 500 файлов включает в себя файл 502 презентации, который соответствует презентации из приложения презентации, и внешний файл 550 электронной таблицы, который соответствует электронной таблице из приложения работы с электронными таблицами.

Файл 502 презентации организован в слайды 510, рисунки 520, диаграммы 530 и может возможно включать в себя внедренный файл 540 электронной таблицы. Слайды 510 включают в себя любое количество слайдов (например, 512, 514), связанных с конкретной презентацией. Если данные рисунка включены в слайд, то слайд (например, 512) дополнительно ассоциирован с файлом рисунка (например, 522). Если данные рисунка соответствуют диаграмме, то этот рисунок (например, 522) дополнительно ассоциирован с файлом диаграммы (например, 532). В одном варианте осуществления файл диаграммы (например, 532) включает в себя тип используемой диаграммы, представление диаграммы, формат диаграммы и другую информацию, относящуюся к представлению диаграммы в слайде. В этом варианте осуществления значения, включенные в диаграмму, получены из другого файла (например, 540, 550), связанного с электронной таблицей, но приложение презентации определяет формат для отображения этих данных. В другом варианте осуществления файл диаграммы (например, 532) более похож на указатель и направляет приложение презентации к другому файлу (например, 540, 550), который включает в себя данные диаграммы. В этом варианте осуществления приложение работы с электронными таблицами определяет как значения так и формат, который нужно использовать для диаграммы, и приложение презентации просто несет ответственность за отображение диаграммы в конкретном слайде. Фактическая реализация диаграммы в презентации может делить обязанности по форматированию диаграммы между ведущим приложением и приложением электронной таблицы по отличным строкам, чем, или в качестве особенности, в вариантах осуществления, описанных выше. Дополнительно, пользователю может быть предоставлен выбор - использовать форматирование презентации или форматирование данных, включенных в приложение электронной таблицы.

Как показано, данные для диаграммы могут быть обеспечены файлом электронной таблицы (например, 540), который внедрен в файл презентации, или обеспечен файлом электронной таблицы (например, 550), который сохранен внешне. Сохранена ли электронная таблица локально с файлом презентации или сохранена внешне и связана с файлом презентации, является выбором, который может быть сделан пользователем. Например, пользователю может быть представлено окно диалога, которое позволяет пользователю выбирать - иметь диаграмму, связанную с внешней электронной таблицей, иметь электронную таблицу, скопированную в файл презентации, или возможно только извлекать изображение диаграммы. Каждый выбор имеет преимущества и недостатки в отношении редактирования диаграммы, размера файла ведущего приложения и мобильности файла.

Фиг.6 иллюстрирует блок-схему примерного процесса для взаимодействия между электронной таблицей и ведущим приложением для обеспечения данных диаграммы, включенной в ведущее приложение, в соответствии с одним вариантом осуществления. Процесс 600 начинается, когда диаграмма вставляется в документ ведущего приложения и ожидает взаимодействия с пользователем. Обработка продолжается операцией 602 приема действия.

В операции 602 приема действия принимают действие пользователя в отношении диаграммы в приложении интеграции диаграмм (см. 408 на фиг.4). В одном варианте осуществления ведущее приложение регистрирует действие пользователя как нажатие клавиши, щелчок мыши или другой ввод данных в ведущее приложение и ассоциирует этот ввод как относящийся к диаграмме в документе ведущего приложения. Как только приложение интеграции диаграмм принимает оповещение относительно действия пользователя, обработка переходит к операции 604 принятия решения о необходимости электронной таблицы.

Операция 604 принятия решения о необходимости электронной таблицы определяет, необходима ли электронная таблица, чтобы ответить на действие пользователя, которое воздействовало на диаграмму. В некоторых сценариях действие пользователя может изменять часть диаграммы без воздействия на данные диаграммы, поданные приложением электронной таблицы. Например, позиция диаграммы в документе может изменяться. Такое изменение может быть маршрутизировано к приложению интеграции диаграмм для обработки. Однако доступ к электронной таблице для создания изменения не требуется. Если электронная таблица не является необходимой, чтобы ответить на действие пользователя, обработка переходит к операции 606 обработки диаграммы.

Операция 606 обработки диаграммы обрабатывает действие пользователя без обращения к данным диаграммы, обеспеченным электронной таблицей. В одном варианте осуществления функциональные возможности включены в ведущее приложение для обработки этих изменений в диаграмме. В другом варианте осуществления ведущим приложением выполняется вызов функции для обработки действия пользователя для диаграммы. Как только действие пользователя адресовано, процесс 600 завершается, и обработка ждет следующего действия пользователя или продолжает выполнение других задач.

Альтернативно, если электронная таблица необходима для ответа на действие пользователя, обработка продолжается операцией 608 принятия решения о видимости. Операция 608 принятия решения о видимости определяет, необходима ли видимая электронная таблица для ответа на действие пользователя. Видимая электронная таблица может быть необходима, когда действие пользователя включает в себя обеспечение пользователя возможностью изменить в диаграмме данные, формулы или другие аспекты диаграммы, обеспеченной электронной таблицей. Электронная таблица может быть необходима, чтобы позволить пользователю взаимодействовать с данными диаграммы в формате электронной таблицы. Напротив, пользователю может быть не необходимо иметь видимый экземпляр инициализированной электронной таблицы. В дополнительном варианте осуществления видимый экземпляр приложения работы с электронными таблицами и невидимый экземпляр приложения работы с электронными таблицами связаны с отдельными процессами. Когда взаимодействие с приложением электронной таблицы обеспечивается невидимым процессом, действие пользователя может соответствовать изменению, которое не требует, чтобы пользователю было разрешено взаимодействовать с данными диаграммы. Если видимая электронная таблица необходима, обработка переходит к операции 610 инициирования.

Операция 610 инициирования инициализирует видимый экземпляр приложения работы с электронными таблицами. В одном варианте осуществления приложение электронной таблицы инициализируется, и виды приложения работы с электронными таблицами и ведущего приложения отображаются мозаичным образом или синхронным образом отображаются так, чтобы оба приложения могли по существу рассматриваться в ограниченной области просмотра. Управление окнами приложения позволяет обоим просматриваться на доступной области экрана дисплея. Как только приложение электронной таблицы инициализировано, обработка продолжается на операции 614 создания ссылки.

Если вместо видимого образца электронной таблицы необходима только ссылка на электронную таблицу, то обработка переходит от операции 608 принятия решения о видимости к операции 612 определения ссылки. Операция 612 определения ссылки определяет, установлена ли уже ссылка на электронную таблицу. Например, электронная таблица может быть сохранена в файле ведущего приложения. Сохраненная внутренне по отношению к ведущему приложению ссылка на электронную таблицу не должна быть установлена. Напротив, электронная таблица может также находиться в различном местоположении в памяти, которая связана с приложением электронной таблицы, или может даже быть связана с полностью отдельным компьютером. Однако, когда электронная таблица является внешней и/или удаленной по сравнению с ведущим приложением, ссылка, возможно, уже была сделана между диаграммой, включенной в ведущее приложение, и электронной таблицей. Например, предыдущее действие пользователя возможно установило ссылку между диаграммой и электронной таблицей. Соответственно, текущее действие пользователя не должно снова установить ссылку. Если ссылка на электронную таблицу уже не была инициализирована, обработка продолжается на операции 614 создания ссылки.

Операция 614 создания ссылки инициализирует ссылку между приложением электронной таблицы и диаграммой ведущего приложения. В одном варианте осуществления инициализация ссылки подобна тому, был ли видимый экземпляр электронной таблицы инициализирован или нет. В другом варианте осуществления ссылка генерируется согласно СОМ интерфейсам, которые учитывают общий протокол передачи, который нужно использовать между диаграммой и электронной таблицей. Как только ссылка создана, обработка продолжается на операции 616 действия посылки.

Была ли ссылка предварительно доступной из операции 612 определения ссылки или ссылка была недавно сформирована согласно процессу 614 создания ссылки, как только ссылка установлена, приложение интеграции диаграмм передает уведомление о действии пользователя к приложению электронной таблицы. После того как электронная таблица принимает уведомление, обработка продолжается на операции 618 определения изменения.

Операция 618 определения изменения обнаруживает из действия пользователя, воздействовало ли действие пользователя на изменения данных диаграммы. Может быть случай, что данные диаграммы фактически не были изменены действием пользователя. Например, пользователь, возможно, выбрал просмотр данных диаграммы. В этом примере видимый экземпляр приложения работы с электронными таблицами был бы инициализирован и ссылка между диаграммой и электронной таблицей была бы создана, и требуемая операция была бы закончена. Если данные не изменены действием пользователя, то процесс 600 завершается, и обработка ожидает следующее действие пользователя или продолжает другие задачи.

Напротив, если действие пользователя изменяет данные диаграммы, обработка продолжается на операции 620 изменения данных. Операция 620 изменения данных тогда сообщает назад приложению интеграции диаграмм, что данные были изменены. Как только это сообщение об изменении данных получено, обработка продолжается на операции 622 принятия решения об обновлении.

Операция 622 принятия решения об обновлении определяет, является ли обновление диаграммы необходимым из-за изменений, которые произошли в данных диаграммы. В одном варианте осуществления обновление соответствует обновлению представления данных диаграммы в диаграмме. Если обновление не необходимо, процесс 600 завершается и обработка ждет следующего действия пользователя или продолжают другие задачи. Однако, если модификация необходима, то обработка продолжается на операции 624 запроса обновления.

Операция 624 запроса обновления запрашивает обновление данных диаграммы от приложения работы с электронными таблицами. В одном варианте осуществления запрос обновления конфигурирован как запрос о полном наборе данных диаграммы, обеспеченных приложением электронной таблицы. В другом варианте осуществления запрос обновления делается для любых частей данных диаграммы, которые были изменены, а не полного файла данных диаграммы. Как только запрос обновления послан, обработка продолжается на операции 626 приема обновления.

На операции 626 приема обновления принимают обновление данных диаграммы и применяют обновление к диаграмме в ведущем приложении. В одном варианте осуществления обновление затрагивает только те части диаграммы, которая изменилась с последнего раза, когда диаграмма была модифицирована или создана. В другом варианте осуществления обновление заменяет существующую диаграмму новой диаграммой, которая соответствует самым современным данным диаграммы, обеспеченным в ответ на запрос. Как только диаграмма обновлена, процесс 600 завершается и обработка ожидает следующего действия пользователя или продолжает другие задачи.

Хотя изобретение было описано на языке, который является специфическим для структурных особенностей и/или методологических этапов, должно быть понятно, что изобретение, определенное в прилагаемой формуле изобретения, необязательно ограничено конкретными признаками или описанными этапами. Скорее, конкретные признаки и этапы раскрыты как формы осуществления требуемого изобретения. Так как много вариантов осуществления изобретения могут быть сделаны без отрыва от сущности и объема изобретения, изобретение определяется прилагаемой формулой изобретения.

1. Реализованный компьютером способ управления и редактирования диаграммы, представленной в ведущем приложении, причем способ содержит этапы:
отображают диаграмму в ведущем приложении, при этом ведущее приложение включает в себя первый набор признаков для интегрирования с упомянутой диаграммой,
автоматически определяют, когда манипулирование, которое изменяет упомянутую диаграмму, которая отображена в ведущем приложении, требует дополнительного признака, который является недоступным в первом наборе признаков ведущего приложения,
в ответ на определение, что дополнительный признак является недоступным в первом наборе признаков:
определяют, должен ли быть сделан видимым экземпляр отдельного приложения;
в ответ на определение, что экземпляр отдельного приложения должен быть сделан видимым:
отображают упомянутую диаграмму в ведущем приложении, отображают упомянутую диаграмму в отдельном приложении, причем упомянутое отдельное приложение включает в себя упомянутый дополнительный признак, который содержится во втором наборе признаков, для взаимодействия с упомянутой диаграммой, причем второй набор признаков включает в себя больше признаков, чем первый набор признаков, для взаимодействия с упомянутой диаграммой;
обеспечивают функциональные возможности для редактирования данных, соответствующих диаграмме, в отдельном приложении, при этом представление данных в отдельном приложении является отличным от представления диаграммы в ведущем приложении; и
передают изменения в данных, которые происходят в отдельном приложении, к ведущему приложению, при этом изменения в данных отражаются в представлении диаграммы в ведущем приложении.

2. Реализованный компьютером способ по п.1, в котором манипулирование в диаграмме в ведущем приложении заключается в изменении данных в диаграмме.

3. Реализованный компьютером способ по п.2, в котором отображение диаграммы в отдельном приложении содержит отображение диаграммы во втором окне, которое отображено рядом с первым окном, отображающим диаграмму в ведущем приложении, так что и диаграмма в ведущем приложении является видимой, и диаграмма в отдельном приложении является видимой.

4. Реализованный компьютером способ по п.2, дополнительно содержащий передачу изменений в диаграмме к отдельному приложению, когда изменения в диаграмме затрагивают данные.

5. Реализованный компьютером способ по п.1, в котором обеспечение функциональных возможностей для редактирования данных, соответствующих диаграмме, дополнительно содержит инициализацию видимого экземпляра отдельного приложения, когда сделано определение, что видимый экземпляр отдельного приложения требует дополнительного признака.

6. Реализованный компьютером способ по п.5, в котором видимый экземпляр отдельного приложения обеспечивается одновременно на дисплее с видимым экземпляром ведущего приложения.

7. Реализованный компьютером способ по п.1, в котором обеспечение функциональных возможностей для редактирования данных, соответствующих диаграмме, дополнительно содержит инициализацию невидимого экземпляра отдельного приложения, когда сделано определение, что видимый экземпляр отдельного приложения не является необходимым.

8. Реализованный компьютером способ по п.1, дополнительно содержащий создание ссылки между ведущим приложением и отдельным приложением до выполнения обмена между ведущим приложением и отдельным приложением.

9. Реализованный компьютером способ по п.8, в котором ссылка соответствует по меньшей мере одному СОМ интерфейсу для осуществления связи между приложениями.

10. Реализованный компьютером способ по п.1, дополнительно содержащий изменение данных, соответствующих диаграмме с отдельным приложением, когда диаграмма редактируется в ведущем приложении, и когда данные редактируются в отдельном приложении.

11. Реализованный компьютером способ по п.1, в котором отдельное приложение соответствует приложению электронной таблицы.

12. Реализованный компьютером способ по п.1, в котором передача изменений в данных, которые происходят в отдельном приложении, к ведущему приложению дополнительно содержит обработку передачи согласно приложению интеграции диаграмм.

13. Считываемый компьютером носитель, хранящий команды, которые при выполнении выполняют реализованный компьютером способ по п.1.

14. Система управления и редактирования диаграмм, содержащая:
процессор и считываемый компьютером носитель,
операционную среду, сохраненную на считываемом компьютером носителе и выполняемую на процессоре,
приложение, работающее под управлением операционной среды и сконфигурированное как
ведущее приложение, при этом ведущее приложение включает в себя представление диаграммы в документе ведущего приложения, при этом ведущее приложение включает в себя первый набор признаков для взаимодействия с диаграммой;
приложение электронной таблицы, при этом приложение электронной таблицы сконфигурировано так, чтобы отображать электронную таблицу данных диаграммы, соответствующих диаграмме, включенной в документ ведущей программы, при этом приложение электронной таблицы включает в себя второй набор признаков, который включает в себя дополнительные признаки из первого набора признаков ведущего приложения для взаимодействия с диаграммой, причем электронная таблица автоматически запускается в ответ на определение, что манипулирование в диаграмме в рамках первого приложения изменяет упомянутую диаграмму и требует один или более дополнительных признаков приложения электронной таблицы, при этом в ответ на определение приложение электронной таблицы должно быть видимым, приложение электронной таблицы представляет другое представление диаграммы в отличном окне от представления, обеспеченного ведущим приложением; и
приложение интеграции диаграмм, которое сконфигурировано так, чтобы управлять интеграцией диаграммы, включенной в документ ведущего приложения, и данных диаграммы, обеспеченных в электронной таблице.

15. Система по п.14, в которой приложение интеграции диаграмм обменивается с приложением электронной таблицы через по меньшей мере один СОМ интерфейс.

16. Система по п.15, дополнительно содержащая таблицу выполняющихся объектов, в которой один из по меньшей мере одного СОМ интерфейса сохранен так, что другие СОМ интерфейсы связаны друг с другом так, как конкретная диаграмма связана с конкретным набором данных диаграммы.

17. Система по п.14, дополнительно содержащая обработчик внедренных объектов, который сконфигурирован так, чтобы обрабатывать отображение диаграммы, отдельной от интеграции диаграммы с данными диаграммы.

18. Система по п.14, дополнительно содержащая структурирующую память диаграммы в ведущем приложении, чтобы включать в себя ссылку между диаграммой и электронной таблицей, когда электронная таблица принадлежит одному из внедренного файла электронной таблицы и внешнего файла электронной таблицы.

19. Считываемый компьютером носитель, имеющий сохраненные на нем выполняемые компьютером команды для управления и редактирования диаграммы, представленной в ведущем приложении, при этом выполняемые компьютером команды содержат:
прием действия пользователя, связанного с диаграммой в ведущем приложении, причем ведущее приложение включает в себя первый набор признаков для взаимодействия с диаграммой,
определение, необходима ли электронная таблица согласно действию пользователя, причем определение содержит автоматическое определение, когда действие пользователя, которое ассоциировано с диаграммой в ведущем приложении, изменяет эту диаграмму и требует дополнительный признак, который не является доступным в первом наборе признаков ведущего приложения;
в ответ на определение, что действие пользователя требует дополнительный признак, который не является доступным в первом наборе признаков, определение, требуется ли видимый экземпляр электронной таблицы, чтобы обработать действие пользователя;
создание видимого экземпляра электронной таблицы;
формирование ссылки между ведущим приложением и электронной таблицей;
посылку действия пользователя к электронной таблице;
определение, изменились ли данные диаграммы; и
определение, требуется ли обновление на основании изменений.



 

Похожие патенты:

Изобретение относится к системе создания управляемого данными действия, связанного с изменением экземпляра данных сетевой формы. .

Изобретение относится к области вычислительной техники и может быть использовано для программной цифровой обработки сигналов в системах радиолокации, гидроакустики и связи.

Изобретение относится к системам и способам автоматизированного определения сетевых адресов и передачи данных между выполняющими роуминг одноранговыми узлами сети.

Изобретение относится к области развертывания решений в ферме серверов. .

Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении коммутационных средств вычислительных, управляющих и информационно-измерительных систем, а также абонентских систем связи с децентрализованным управлением.

Изобретение относится к вычислительной технике, в частности к системе проведения Интернет-экзамена по дисциплинам профессионального образования, реализующего применение новых информационных технологий в учебном процессе.

Изобретение относится к средствам синхронизации бизнес-приложений

Изобретение относится к запросам данных в форме схемы, имеющей пространство имен, события в пространстве имен и параметры для этих событий

Изобретение относится к обеспечению возможности применения команды изменения графического окна для дистанционно сгенерированного графического окна

Изобретение относится к вычислительной технике и может быть использовано при изготовлении персональных компьютеров

Изобретение относится к способам импортирования, управления и размещения драйверов

Изобретение относится к системам предоставления медиа-контента из множества источников, доступных через единый интерфейс клиентского устройства

Изобретение относится к способу обеспечения связи между клиентскими/серверными приложениями
Наверх