ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС ПЕРЕНОСА И ФИКСАЦИИ ПО НОВОМУ МЕСТУ С ШИРОКИМИ ВОЗМОЖНОСТЯМИ
RICH DRAG DROP USER INTERFACE

УРОВЕНЬ ТЕХНИКИ
Современные электронные файловые системы типично хранят файлы в иерархической древовидной структуре. Каждый узел дерева считается папкой, которая содержит один или более файлов. Типично в таких электронных файловых системах местоположение элемента ограничено определенной файловой системой организации. Например, во многих файловых системах каждый файл расположен в одной (и только одной) папке. Это означает, что объединены время существования файла и организация файла. То есть файл может существовать, только пока он имеет местоположение, организованное относительно других файлов или папок. В дополнение, файл не может размещаться в многочисленных организациях. Это означает, что если пользователь, например, желает видеть файл в многочисленных папках, пользователь должен создавать многочисленные копии файла. Это является как утомительным, так и подверженным ошибкам для пользователя, а также неэкономным по объему места хранения.
В дополнение, при выполнении операции переноса/фиксации (drag/drop) пользователю не всегда ясно, какое действие будет предпринято по завершении операции переноса/фиксации. Она может быть даже более сбивающей с толку, когда совместно были выбраны многочисленные файлы для переноса/фиксации.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Есть необходимость в более развитой электронной файловой системе и пользовательском интерфейсе, который в большей степени предоставляет пользователям возможность манипулировать файлами и другими объектами более гибким способом с использованием графического интерфейса пользователя. С этой гибкостью приходит благоприятная возможность предоставлять пользователю более богатую информацию в отношении того, что происходит, в то время как выполняются операции переноса/фиксации.
Аспекты настоящего раскрытия относятся к различным типам объектов файловых систем, которые могут быть реализованы, в том числе элементам, папкам, спискам, сохраняемым автоматическим спискам и стекам. Тогда как, например, папки содержат фактические объекты, списки и сохраняемые автоматические списки содержат ссылки, или ярлыки, на объекты в противоположность самим объектам. Сохраняемый автоматический список автоматически заполняется ссылками на объекты, имеющие свойства, которые соответствуют одному или более критериям, задаваемым сохраняемым автоматическим списком.
Дополнительные аспекты настоящего раскрытия направлены на предоставление пользователю информации предварительного обзора во время операции переноса выбранного объекта на целевой объект в графическом интерфейсе пользователя. Информация предварительного обзора указывает, какой тип(ы) действия должен предприниматься, если бы выбранный объект должен был фиксироваться на целевом объекте, тем самым снабжая пользователя благоприятной возможностью определять, желательна ли конкретная операция переноса/фиксации, до того как операция переноса/фиксации будет завершена. Конкретное действие(я), которое должно предприниматься, может зависеть от типа выбранного объекта и/или типа целевого объекта. Например, в тех случаях, когда выбранный объект является элементом, а целевой объект является сохраняемым автоматическим списком, действие может включать в себя добавление, удаление или модифицирование одного или более свойств выбранного объекта для приведения в соответствие одному или более критериям, задаваемым сохраняемым автоматическим списком.
Еще дополнительные аспекты настоящего раскрытия направлены на предоставление пользователю численной обратной связи, когда выбраны многочисленные объекты. Например, в тех случаях, когда выбраны семь объектов, текстовое число «7» может появляться рядом с курсором. Это может иметь результатом более легкий для понимания пользовательский интерфейс, чем в прошлых интерфейсах, где многочисленные объекты разбросаны по экрану, в то время как они перемещаются. В традиционных интерфейсах пользователю иногда трудно определить, сколько объектов было выбрано.
Еще дополнительные аспекты настоящего изобретения направлены на выполнение различных типов действий в ответ на разные комбинации переноса/фиксации. Конкретный тип выполняемого действия может определяться типом фиксируемого объекта и/или типом целевого объекта, на котором происходит фиксация.
Эти и другие аспекты раскрытия, приведенного в материалах настоящей заявки, будут очевидны после рассмотрения последующего подробного описания иллюстративных вариантов осуществления.
ПЕРЕЧЕНЬ ФИГУР ЧЕРТЕЖЕЙ
Вышеизложенное краткое описание сущности изобретения, а также последующее подробное описание иллюстративных вариантов осуществления лучше понятно, когда читается в соединении с прилагаемыми чертежами, которые включены в качестве примера, а не в качестве ограничения в отношении заявленного изобретения.
Фиг.1 - функциональная структурная схема иллюстративного вычислительного окружения.
Фиг.2 - таблица, показывающая иллюстративные действия, которые могут предприниматься в ответ на конкретные операции переноса/фиксации.
Фиг.3-10 показывают иллюстративные варианты обратной связи предварительного обзора, которые могут представляться в ответ на различные операции переноса/фиксации.
Фиг.11-13 показывают иллюстративные моментальные снимки экрана, где операция переноса/фиксации обуславливает представление варианта обратной связи предварительного обзора либо возле курсора, либо в другом местоположении на экране.
Фиг.14 показывает иллюстративные варианты обратной связи предварительного обзора, которые могут представляться в ответ на перенос элемента над различными типами целевых объектов.
Фиг.15-18 показывают иллюстративные варианты обратной связи предварительного обзора, каждая из которых включает в себя поясняющий текст.
Фиг.19-23 показывают иллюстративный ответ на перенос объекта над целевым объектом, имеющим дочерние объекты под ним в иерархии.
ПОДРОБНОЕ ОПИСАНИЕ ИЛЛЮСТРАТИВНЫХ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
Иллюстративная вычислительная среда
Фиг.1 иллюстрирует пример подходящего вычислительного окружения 100, в которой могут быть реализованы функции распознавания рукописного текста и/или создания, модификации и/или обучения нейронной сети. Вычислительное окружение 100 является только одним из примеров подходящего вычислительного окружения и не подразумевается предлагающим какое-либо  ограничение в отношении объема использования или функциональных возможностей изобретения. Вычислительное окружение 100 также не должно трактоваться в качестве имеющего какие бы то ни было зависимость или требование, относящиеся к любому одному или сочетанию компонентов, проиллюстрированных в иллюстративной вычислительной среде 100.
Могут использоваться другие окружения или конфигурации вычислительных систем общего применения или специального назначения. Примеры широко известных вычислительных систем, окружений и/или конфигураций включают в себя, но не в качестве ограничения, персональные компьютеры (ПК, PC); серверные компьютеры; карманные или другие портативные устройства, такие как персональные цифровые секретари (PDA), планшетные ПК или дорожные ПК; многопроцессорные системы; основанные на микропроцессорах системы; телевизионные абонентские приставки; программируемую бытовую электронику; сетевые ПК; миникомпьютеры; универсальные вычислительные машины; распределенные вычислительные среды, которые включают в себя любые из вышеприведенных систем или устройств; и тому подобное.
Раскрытие, приведенное в материалах настоящей заявки, иногда описывается в общем контексте машиноисполняемых инструкций, таких как программные модули, являющиеся выполняемыми компьютером. Как правило, программные модули включают в себя процедуры, программы, объекты, компоненты, структуры данных и т.п., которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Распределенное вычислительное окружение, кроме того, может использоваться в тех случаях, когда задачи выполняются удаленными устройствами обработки, которые связаны через сеть связи. В распределенном вычислительном окружении программные модули могут быть расположены на запоминающих носителях как локального, так и удаленного компьютера, в том числе запоминающих устройствах памяти.
Со ссылкой на фиг.1 иллюстративное вычислительное окружение 100 включает в себя вычислительное устройство общего применения в виде компьютера 100. Компоненты компьютера 100 могут включать в себя, но не в качестве ограничения, процессор 120 (устройство обработки данных), системную память 130 и системную шину 121, которая присоединяет различные системные компоненты, в том числе системную память 130, к процессору 120. Системная шина 121 может относится к одному из некоторых типов шинных структур, включающих в себя шину памяти или контроллер памяти, периферийную шину и локальную шину, используя любую из многообразия шинных архитектур. В качестве примера, но не ограничения, такие архитектуры включают в себя шину стандартной промышленной архитектуры (ISA), шину микроканальной архитектуры (MCA), шину расширенной ISA (EISA), локальную шину Ассоциации по стандартам в области видеоэлектроники (VESA), шину ускоренного графического порта (AGP) и шину межсоединения периферийных компонентов (PCI), также известную как мезонинная шина.
Компьютер 100 типично включает в себя многообразие машиночитаемых носителей. Машиночитаемыми носителями могут быть любые пригодные носители, к которым компьютер 100 может осуществлять доступ, такие как энергозависимые, энергонезависимые, съемные и несъемные носители. В качестве примера, а не ограничения, машиночитаемые носители могут включать в себя компьютерные запоминающие носители и среды связи. Компьютерные запоминающие носители могут включать в себя энергозависимые, энергонезависимые, съемные и несъемные носители, реализованные любым способом или технологией для хранения информации, такой как машиночитаемые инструкции, структуры данных, программные модули или другие данные. Компьютерные запоминающие носители включают в себя, но не в качестве ограничения, оперативное запоминающее устройство (ОЗУ, RAM), постоянное запоминающее устройство (ПЗУ, ROM), электрически стираемое программируемое ПЗУ (ЭСППЗУ, EEPROM), флэш-память или память другой технологии, ПЗУ на компакт-диске (CD-ROM), многофункциональный цифровой диск (DVD) или другое оптическое дисковое запоминающее устройство, магнитные кассеты, магнитную ленту, магнитное дисковое запоминающее устройство, или другие магнитные запоминающие устройства, или любой другой носитель, который может использоваться для хранения требуемой информации и к которому компьютер 100 может осуществлять доступ. Среды связи типично воплощают машиночитаемые инструкции, структуры данных, программные модули или другие данные в модулированном информационном сигнале, таком как сигнал несущей или другой транспортный механизм, и включают в себя любые среды доставки информации. Термин «модулированный информационный сигнал» означает сигнал, одна или более характеристик которого установлены или изменяются таким образом, чтобы кодировать информацию в этом сигнале. В качестве примера, а не ограничения, среды связи включают в себя проводные среды, такие как проводная сеть или непосредственное проводное соединение, и беспроводные среды, такую как акустическая, радиочастотная (РЧ, RF) (например, BLUETOOTH, WiFi, UWB (сверхширокополосная)), оптические (например, инфракрасная) и другие беспроводные среды.
Системная память 130 включает в себя компьютерные запоминающие носители в виде энергозависимой и/или энергонезависимой памяти, такой как ПЗУ 131 и ОЗУ 132. Базовая система 133 ввода/вывода (BIOS), содержащая базовые процедуры, которые помогают передавать информацию между элементами в пределах компьютера 100, к примеру, во время запуска, типично хранится в ПЗУ 131. ОЗУ 132 типично содержит данные и/или программные модули, которые доступны непосредственно и/или обрабатываются в текущий момент процессором 120. В качестве примера, а не ограничения, фиг.1 иллюстрирует программное обеспечение в виде машиноисполняемых инструкций, в том числе операционную систему 134, прикладные программы 135, другие программные модули 136 и данные 137 программ.
Компьютер 100 также может включать в себя другие компьютерные запоминающие носители. Только в качестве примера, фиг.1 иллюстрирует накопитель 141 на жестких дисках, который считывает с или записывает на несъемные энергонезависимые носители, магнитный дисковод 151, который считывает с или записывает на съемный энергонезависимый магнитный диск 152, и оптический дисковод 155, который считывает с или записывает на съемный энергонезависимый оптический диск 156, такой как CD-ROM, DVD или другие оптические носители. Другие компьютерные запоминающие носители, которые могут использоваться в иллюстративном рабочем окружении, включают в себя, но не в качестве ограничения, кассеты с магнитной лентой, карты флэш-памяти, цифровую видеоленту, твердотельное ОЗУ, твердотельное ПЗУ и тому подобное. Накопитель 141 на жестких дисках типично присоединен к системной шине 121 через интерфейс несъемной памяти, такой как интерфейс 140, а магнитный дисковод 151 и оптический дисковод 155 типично присоединены к системной шине 121 интерфейсом съемной памяти, таким как интерфейс 150.
Дисководы и накопители и ассоциированные с ними компьютерные запоминающие носители, обсужденные выше и проиллюстрированные на фиг.1, обеспечивают хранение машиночитаемых инструкций, структур данных, программных модулей и других данных для компьютера 100. На фиг.1, например, накопитель 141 на жестких дисках проиллюстрирован в качестве хранящего операционную систему 144, прикладные программы 145, другие программные модули 146 и данные 147 программ. Отметим, что эти компоненты могут быть либо такими же, как либо отличными от операционной системы 134, прикладных программ 135, других программных модулей 136 и данных 137 программ соответственно. Операционной системе 144, прикладным программам 145, другим программным модулям 146 и данным 147 программ назначены другие номера на фиг.1, чтобы проиллюстрировать, что они могут быть другими копиями. Пользователь может вводить команды и информацию в компьютер 100 через устройства ввода, такие как клавиатура 162, сенсорная панель 165 (такая как цифровой планшет) и перо 166, и координатно-указательное устройство 161 (обычно указываемое ссылкой как мышь, шаровой манипулятор или сенсорная панель). Сенсорная панель 165 может быть отдельным физическим устройством или может быть интегрирована с устройством отображения, таким как монитор 191. Другие устройства ввода (не показаны) могут включать в себя микрофон, джойстик, игровую панель, спутниковую антенну, сканер или тому подобное. Эти и другие устройства ввода данных часто присоединяются к процессору 120 через интерфейс 160 пользовательского ввода, который присоединен к системной шине 121, но могут присоединяться к другим интерфейсным и шинным структурам, таким как параллельный порт, игровой порт, универсальная последовательная шина (USB) или последовательная шина стандарта IEEE 1394 (FIREWIRE). Монитор 191 или другой тип устройства отображения также присоединен к системной шине 121 через интерфейс, такой как видеоинтерфейс 190. Видеоинтерфейс 190 может содержать расширенные возможности (двумерной) 2D или (трехмерной) 3D графики в дополнение к своим собственным специализированным процессору и памяти. Компьютер 100 также может включать в себя другие периферийные устройства вывода, такие как динамики 197 и принтер 196, которые могут быть присоединены через периферийный интерфейс 195 вывода.
Компьютер 100 может работать в сетевом окружении с использованием логических соединений с одним или более удаленными компьютерами, такими как удаленный компьютер 180. Удаленный компьютер 180 может быть персональным компьютером, сервером, маршрутизатором, сетевым ПК, одноранговым устройством или другим общим узлом сети и типично включает в себя многие или все из элементов, описанных выше относительно компьютера 100, хотя только запоминающее устройство 181 было проиллюстрировано на фиг.1. Логические соединения, изображенные на фиг.1, включают в себя локальную сеть 171 (LAN) и глобальную сеть 173 (WAN), но, в качестве альтернативы, также могут включать в себя другие сети, такие как сеть Интернет. Такие сетевые среды являются обычными в домах, офисах, корпоративных компьютерных сетях, сетях интранет (локальных сетях, основанных на технологиях Интернет) и сети Интернет.
При использовании в сетевой среде LAN компьютер 100 присоединен к LAN 171 через сетевой интерфейс или адаптер 170. При использовании в сетевой среде WAN компьютер 100 может включать в себя модем 172 или другое устройство для установления связи через WAN 173, такую как сеть Интернет. Модем 172, который может быть внутренним или внешним, может быть присоединен к системной шине 121 через интерфейс 160 пользовательского ввода или другой подходящий механизм. В сетевой среде программные модули, изображенные относительно компьютера 100, или их части могут храниться удаленно, к примеру, в удаленном запоминающем устройстве 181. В качестве примера, а не ограничения, фиг.1 иллюстрирует удаленные прикладные программы 182 в качестве находящихся в запоминающем устройстве 181. Будет приниматься во внимание, что показанные сетевые соединения являются иллюстративными и может использоваться другое средство установления линии связи между компьютерами.
Организация файловой системы
Электронная файловая система может быть реализована компьютером 100 для управления файлами и другими объектами, сохраненными на различных электронных носителях, к которым компьютер 100 имеет доступ. Файловая система может быть частью других программных модулей 136 и/или частью операционной системы 134. Файловая система может быть традиционной файловой системой или может быть передовой системой регистрации документов, которая может быть приводимой в действие базой данных. Во многих традиционных файловых системах, таких как основанная на таблице размещения файлов (FAT) файловая система, традиционный каталожный доступ к файлам предполагает, что пользователи желают содержать свои файлы в иерархическом дереве каталогов. Местоположения файлов и структура каталогов являются зависимыми друг от друга, пользователь не может перемещать файлы в другое местоположение, не изменяя структуру каталогов.
С другой стороны, может использоваться более передовая файловая система, которая использует ссылки по ярлыку, таким образом предоставляя файлам и другим объектам возможность оказываться в одном или более местоположений наряду с фактическим нахождением в другом отличном местоположении. Такая файловая система может определять различные типы объектов, которые предусматривают гораздо более гибкий способ управления файлами и другими объектами.
Например, одним из типов объекта является список. Для целей настоящего раскрытия и формулы изобретения список является объектом, который ссылается на набор других объектов в конкретном порядке. Термин «набор» объектов в качестве используемого в настоящем раскрытии и формуле изобретения предполагается включающим в себя как набор из множества объектов, так и набор, содержащий только одиночный объект. Объекты, на которые ссылается список, например, могут быть произвольным набором объектов, каждый из которых добавлен в список пользователем вручную. Однако объекты, на которые ссылается список, фактически не хранятся в списке, как это имеет место в традиционной папке. Таким образом, более чем один список может одновременно ссылаться на один и тот же объект.
Еще одним типом объекта, который может поддерживаться файловой системой, является сохраняемый автоматический список. Сохраняемый автоматический список подобен списку за исключением того, что набор объектов, на которые ссылается сохраняемый автоматический список, определяется запросом. Запрос может определять один или более критериев. Таким образом, для целей настоящего раскрытия и формулы изобретения сохраняемый автоматический список определен в качестве списка, содержащего набор объектов, которые удовлетворяют одному или более критериям, ассоциированным с сохраняемым автоматическим списком. Содержимое сохраняемого автоматического списка является динамическим; набор объектов, включенных в список в сохраняемом автоматическом списке, может изменяться в соответствии с изменением свойств различных объектов. Например, сохраняемый автоматический список, сконфигурированный для удерживания ссылок на все документы, созданные автором Джоном Доу (критериями запроса в этом случае являются тип = документы и автор = «Джон Доу»), может обновляться, когда Джон Доу создает новый файл или удаляет один из этих файлов. Критерии, ассоциированные с сохраняемым автоматическим списком, могут включать в себя любые критерии, такие как тип объекта, автор, наименование, содержание, дата создания, дата редактирования, местоположение в файловой системе (также упоминаемые в материалах настоящей заявки как «область действия»), специальные внутренние свойства и т.п. К тому же, как обсуждено ниже, списки предусматривают возможность определения внутренних свойств для объектов, на которые ссылаются такие списки и сохраняемые автоматические списки.
Каждый объект, управляемый файловой системой, может включать в себя или иным образом ассоциироваться с одним или более свойствами. Эти свойства грубо могут распределяться по двум группам: внешние свойства и внутренние свойства. Один или более критериев, ассоциированных с сохраняемым автоматическим списком, образуют запрос по внутренним свойствам объектов.
Внешнее свойство является свойством объекта, которое хранится отдельно от объекта. В контексте списка, например, пользователь может добавлять столбец «Списочные примечания», который размещает комментарии только в пределах контекста списка, а не по самим объектам, на которые ссылается список. Это может предоставлять пользователю возможность создавать комментарии по объектам, например, которые пользователь не имеет права модифицировать. Внешние свойства не перемещаются с такими объектами за пределы контекста такого списка. Таким образом, другой список, который ссылается на один или более из тех же самых объектов, не включал бы в себя свойство «Списочные примечания» любого из таких элементов, если, конечно, пользователь не добавлял такое свойство к элементам в контексте этого другого списка. Внешние свойства могут добавляться вручную пользователем или добавляться автоматически файловой системой, операционной системой и/или другим программным модулем.
Внутреннее свойство является свойством, которое хранится с элементом. Например, наименование файла может считаться являющимся внутренним свойством файла в тех случаях, когда наименование перемещается вместе с файлом. Если файл, например, добавлялся в конкретную папку или список, файл по-прежнему имел бы свое наименование. Содержимое объекта также является внутренним свойством объекта. К тому же, местоположение объекта в пределах файловой системы является еще одним внутренним свойством объекта.
Еще одним другим типом объекта, который может поддерживаться файловой системой, является традиционная папка. Папка определена для целей настоящего раскрытия и формулы изобретения в качестве объекта, который содержит набор других объектов. Родственным типом объекта является стек, который является виртуальным контейнером в виде представления набора элементов, которые удовлетворяют заданному требованию. Например, пользователь может собирать в стек сохраняемый автоматический список или результаты запроса по «автору», а затем просматривать все результаты по тому, кто писал их. Стек мог бы представляться для каждого автора, где каждый стек может иметь разную высоту, основанную на количестве объектов, записанных каждым автором.
Еще одним другим типом объекта, который может поддерживаться файловой системой, является элемент. Элемент, например, может быть файлом, электронным письмом, деловым контактом или предписанием.
Объекты, на которые ссылаются списки и сохраняемые автоматические списки, а также объекты, содержащиеся в папках и стеках, могут быть любыми типами объектов в любом сочетании. Например, список, сохраняемый автоматический список, папка или стек каждый может содержать один или более файлов, электронных писем, списков, сохраняемых автоматических списков, папок, стеков и/или любых других типов объектов.
Файловая система может быть организована в один или более томов. Том определен для целей настоящего раскрытия и формулы изобретения в качестве физического запоминающего носителя или предопределенной его части, представленных файловой системой в качестве отдельного ресурса хранения.
Перенос/Фиксация объектов
Операционная система и/или файловая система могут иметь графический интерфейс пользователя, который представляет пиктограмму или другой визуальный элемент, который олицетворяет каждый объект, управляемый файловой системой. Графический интерфейс пользователя дополнительно может предоставлять пользователю возможность переносить и фиксировать визуальные элементы, олицетворяющие объекты, на другие визуальные элементы, олицетворяющие другие объекты, традиционным образом. Термины «перенос/фиксация» или «перенос и фиксация по новому месту» первого объекта поверх или на втором объекте и их вариации будут использоваться в материалах настоящей заявки в качестве языка условного обозначения для традиционного переноса и фиксации визуального элемента, олицетворяющего первый объект, на визуальный элемент, олицетворяющий второй объект. Многие системы, такие как линейка операционных систем WINDOWS корпорации Microsoft, традиционно предусматривают функциональные возможности переноса/фиксации. Перенос и фиксация могут иметь разные значения в разных контекстах. Например, перенос файла на папку типично обуславливает перемещение файла во внутрь папки. Другими словами, изменяется местоположение самого реального объекта файла в файловой системе. К тому же, перенос документа на объект принтера типично обуславливает печать этого документа на принтере, ассоциированном с объектом принтера. Должно быть отмечено, что многие такие операционные системы и файловые системы также предусматривают функциональные возможности вырезки/копирования/вставки. Таковые считаются альтернативными операциями пользователя, которые достигают того же самого результата. Например, перенос и фиксация файла в списке, в качестве альтернативы, могут совершаться копированием файла и вставкой файла в список.
Однако необходимо установить смысл переноса/фиксации между различными комбинациями объектов и для контекстов, которые ранее не поддерживались в традиционных системах. Например, что значит зафиксировать элемент в существующем сохраняемом автоматическом списке? Примеры смысла такого переноса/фиксации обсуждены в материалах настоящей заявки со ссылкой на фиг.2. Фиг.2 показывает, какое действие(я) должно выполняться в ответ на ввод переноса/фиксации, производимый пользователем. Каждая строка на фиг.2 соответствует разному типу объекта, который должен фиксироваться («выбранного объекта»), а каждый столбец соответствует разному типу объекта («целевого объекта»), на котором должен фиксироваться выбранный объект.
Таким образом, фиг.2 имеет дело с шестью разными возможными типами выбранных объектов: одиночным элементом, группой многочисленных элементов, папкой, списком, сохраняемым автоматическим списком и стеком. Фиг.2 также имеет дело с шестью разными возможными типами целевых объектов: папкой в пределах того же тома, что и выбранный объект, папкой в томе, отличном от выбранного объекта, списком в пределах того же тома, что и выбранный объект, списком в томе, отличном от выбранного объекта, автоматическим списком, определяющим область действия (например, местоположение в файловой системе), который включает в себя выбранный объект, и автоматическим списком, определяющим область действия, которая не включает в себя выбранный объект.
Фиг.2 далее будет обсуждена столбец за столбцом. Со ссылкой на столбец «Папка (тот же том)» по фиг.2 в случаях, когда целевым объектом является папка в том же томе, что и выбранный объект, тогда предпринимаемое действие состоит в том, чтобы переместить выбранный объект, чтобы был в пределах целевого объекта независимо от типа выбранного объекта. Это имеет смысл, так как является наиболее вероятным намерением пользователя, когда выбранный объект и целевой объект находятся в пределах одного и того же тома.
Подобным образом со ссылкой на столбец «Папка (другой том)» в тех случаях, когда целевым объектом является папка в томе, отличном от выбранного объекта, тогда предпринимаемое действие состоит в том, чтобы копировать выбранный объект и помещать копию в пределах целевого объекта независимо от типа выбранного объекта. Вновь наиболее вероятное намерение пользователя в этом случае состоит в том, чтобы в целевом объекте размещалась копия выбранного объекта, а не сам оригинальный выбранный объект, тогда как целевой объект находится в другом томе. Однако есть исключение в тех случаях, когда выбранным объектом является стек. В этом случае перенос/фиксация выбранного стека на целевую папку имеет результатом создание сохраняемого автоматического списка, который олицетворяет выбранный стек в целевой папке.
Со ссылкой на столбцы «Список (тот же том)» и «Список (другой том)» по фиг.2, где целевым объектом является список, операция переноса/фиксации послужила бы причиной того, что ссылка, или ярлык, на выбранный объект помещается в список. Это справедливо не зависимо от того, находится ли целевой список в пределах того же тома, что и выбранный объект. Однако есть исключение в тех случаях, когда выбранным объектом является стек. В этом случае перенос выбранного стека в целевой список из сохраняемого автоматического списка имеет результатом создание ярлыка на определение сохраняемого автоматического списка, который встраивается в целевой список (не сохраняемый в качестве отдельного файла). Вновь таковые являются наиболее вероятными намерениями пользователя, когда пользователь выполняет такую операцию переноса/фиксации.
Со ссылкой на столбец «Автоматический список (та же область действия)» по фиг.2 перенос любого выбранного элемента(ов) в сохраняемый автоматический список, определяющий область действия, которая включает в себя выбранный объект, обуславливает модификацию, удаление или добавление одного или более свойств выбранного объекта, так что выбранный объект подпадает под критерий или критерии, определенные целевым сохраняемым автоматическим списком. Например, допустим, что целевой сохраняемый автоматический список определяет критерии, что объектами, на которые ссылается сохраняемый автоматический список, должны быть (тип = документ) и (автор = «Джон Доу») с областью действия папки c:\work\clientxyz. В этом случае в сохраняемом автоматическом списке автоматически были бы перечислены все объекты в пределах своей области действия, которые удовлетворяют таким критериям. Например, допустим, что документ находится в пределах определенной области действия, но либо не имеет назначенного автора, либо имеет другое свойство автора, назначенное ему. Операция переноса и фиксации документа на целевом сохраняемом автоматическом списке обусловила бы такую обстановку свойств документа, если возможно, чтобы удовлетворять критериям, требуемым сохраняемым автоматическим списком. В этом примере свойство автора документа заменялось бы на «Джон Доу», так что документ может надлежащим образом быть приведен в сохраняемом автоматическом списке.
В определенных ситуациях, вероятно, что компьютер 100 определяет, что не возможно изменять свойства, с тем чтобы удовлетворить все критерии. Например, если бы объект, фиксируемый на таком же целевом сохраняемом автоматическом списке, не был документом, то не было бы смысла изменять свойство типа такого объекта, чтобы стал документом (поскольку фактически он не является документом). В таком случае операция переноса/фиксации может быть отклонена.
В тех случаях, когда выбранный объект, который должен переноситься/фиксироваться на целевом сохраняемом автоматическом списке в той же области действия, что и выбранный объект, является папкой, тогда свойства, которые изменены, чтобы удовлетворять критериям сохраняемого автоматического списка, обуславливает то, что сохраняемый автоматический список ссылается на элементы в папке (но не саму папку). Подобным образом свойства элементов в выбранной папке изменяются в тех случаях, когда возможно удовлетворить критериям целевого сохраняемого автоматического списка.
В тех случаях, когда выбранный объект является сохраняемым автоматическим списком, тогда перенос/фиксация его на другом целевом сохраняемом автоматическом списке будет настраивать свойства на результаты сохраняемого автоматического списка. Другими словами, свойства всех из элементов, которые соответствовали выбранному автоматическому списку, изменяются, удаляются или добавляются из условия, чтобы они также соответствовали целевому автоматическому списку.
В тех случаях, когда выбранный объект является стеком, тогда перенос/фиксация его на целевом сохраняемом автоматическом списке будет настраивать свойства, где, возможно, содержимого стека, чтобы удовлетворять критериям целевого сохраняемого автоматического списка.
Обращаясь к столбцу «Автоматический список (другая область действия)» по фиг.2, этот столбец относится к тем же ситуациям, что и предыдущий столбец, за исключением того, что теперь выбранный объект находится вне области действия целевого сохраняемого автоматического списка. В этих случаях сначала выбранный объект (или объекты, на которые ссылаются выбранным объектом, такие как объекты, приведенные в выбранном списке) копируется, а копия размещается в пределах области действия целевого сохраняемого автоматического списка. Затем выполняются действия, идентичные тем, что указаны в столбце «Автоматический список (та же область действия)», за исключением того, что действия выполняются над копией вместо оригинального выбранного объекта.
Модификаторы переноса/фиксации
Действия, являющиеся следствием различных операций переноса/фиксации, обсужденных в примерах, приведенных выше касательно фиг.2, являются действиями по умолчанию. Действия по умолчанию пытаются предсказать, каковы намерения пользователя при выполнении каждой операции переноса/фиксации. Однако пользователь может вручную заменить действия, которые должны предприниматься, предоставлением дополнительного ввода наряду с операцией переноса/фиксации. Например, пользователь может нажать клавишу на клавиатуре 162, в то время как выполняется операция переноса/фиксации. Например, нажатие клавиши Shift может обусловить то, что любые действия по копированию станут действиями по перемещению, а нажатие клавиши Ctrl может обусловить то, что любые действия по перемещению взамен станут действиями по копированию.
В качестве дополнительных примеров при переносе на список нажатие клавиши Shift наряду с переносом может вынуждать выбранный объект перемещаться в ответвленную папку целевого списка, которая является местоположением, где целевой список размещает объекты, когда он накапливает объекты. Либо при переносе в список наряду с нажатием клавиши Ctrl это может вынуждать выбранный объект копироваться в ответвленную папку списка. При переносе на сохраняемый автоматический список, следовательно, нажатие клавиши Shift наряду с переносом может вынуждать выбранный объект перемещаться в ответвленную папку целевого сохраняемого автоматического списка, которая является местоположением, где размещаются объекты, когда они копируются в область действия целевого автоматического списка. Либо при переносе в сохраняемый автоматический список наряду с нажатием клавиши Ctrl это может вынуждать выбранный объект копироваться в папку по умолчанию целевого сохраняемого автоматического списка.
Предварительный обзор переноса/фиксации
Так как в настоящее время есть широкое многообразие возможных действий, которые могут предприниматься в ответ на операцию переноса/фиксации, пользователь может легко приходить в замешательство в отношении того, что может означать конкретная операция переноса/фиксации. Это может быть справедливым, даже если система может быть сконфигурирована, чтобы предпринимать наиболее вероятно предполагаемые действия. Соответственно, может быть желательным представлять пользователю обратную связь в виде предварительного обзора некоторых или всех действий, которые касаются того, что происходит в результате заданной операции переноса/фиксации, и/или текущее состояние операции переноса/фиксации. На основании этой обратной связи пользователь затем может решать, продолжить, прекратить или модифицировать операцию переноса/фиксации, по желанию.
Эта обратная связь предварительного обзора может быть представлена в любом требуемом виде. Например, обратная связь может быть в виде символического, графического, текстового или другого типа обратной связи и может представляться на любом постоянном или непостоянном участке отображения. Обратная связь может быть видимой и/или слышимой. Более того, обратная связь может перемещаться с курсором и/или может представляться близкой к курсору.
Примеры такой обратной связи предварительного обзора показаны на фиг.3-10. Показанные варианты обратной связи являются только иллюстративными. Фиг.3 показывает пример видимой обратной связи, которая может возникать во время находящейся в процессе выполнения операции переноса/фиксации, когда операция не может быть завершена. Это может происходить, например, в ответ на то, что пользователь приносит элемент над сохраняемым автоматическим списком в тех случаях, когда свойства этого элемента не могут быть модифицированы для удовлетворения критериев этого сохраняемого автоматического списка.
Фиг.4 показывает пример видимой обратной связи, которая может иметь место во время находящейся в процессе выполнения операции переноса/фиксации, указывая, что выбранный объект будет копироваться в ответ на завершение операции переноса/фиксации. Это может происходить, например, в ответ на то, что пользователь перенес элемент в папку в другом томе.
Фиг.5 показывает пример видимой обратной связи, которая может возникать во время находящейся в процессе выполнения операции переноса/фиксации, указывая, что были выбраны многочисленные элементы. В этом примере были выбраны четырнадцать элементов. Количество может изменяться динамически, чтобы указывать фактическое количество выбранных элементов по мере того, как каждый новый элемент добавляется к выбору. Во многих традиционных файловых системах с графическим интерфейсом пользователя выбор многочисленных файлов указывается различными пиктограммами файлов, перемещающимися из своих исходных отображаемых позиций в новые относительные позиции в соответствии с курсором. В такой ситуации пользователю может быть трудно понять, что происходит и сколько файлов было выбрано, как только их пиктограммы начинают перемещение. На фиг.5, однако, состояние количества многочисленных выбранных элементов легко просматривается пользователем. Пиктограмма слева от числа на фиг.5 может быть миниатюрным изображением одного из выбранных элементов, такого как первый выбранный элемент или самый последний выбранный элемент. Также может выдаваться другая информация, такая как количество выбранных байтов.
Фиг.6 показывает пример видимой обратной связи, которая может возникать во время находящейся в процессе выполнения операции переноса/фиксации, указывая, что выбранный объект будет добавлен в целевой список или целевой сохраняемый автоматический список в ответ на завершение операции переноса/фиксации.
Фиг.7 показывает пример видимой обратной связи, которая может возникать во время находящейся в процессе выполнения операции переноса/фиксации, указывая, что свойство выбранного объекта должно быть добавлено, удалено или модифицировано в ответ на завершение операции переноса/фиксации.
Фиг.8 показывает пример видимой обратной связи, которая может возникать во время находящейся в процессе выполнения операции переноса/фиксации, указывая, что сохраняемый автоматический список должен создаваться в ответ на завершение операции переноса/фиксации. Сохраняемый автоматический список может создаваться в ответ на операцию переноса/фиксации, например, когда пользователь переносит конкретный стек из существующего набора результатов запроса и где-нибудь фиксирует стек. В этом случае новый сохраняемый автоматический список может создаваться автоматически в ответ на операцию переноса/фиксации, в котором сохраняется определение такого запроса.
Фиг.9 показывает пример видимой обратной связи, которая может возникать во время находящейся в процессе выполнения операции переноса/фиксации, указывая, что выбранный объект должен быть перемещен в ответ на завершение операции переноса/фиксации.
В тех случаях, когда должно предприниматься более чем однократное действие, различные варианты обратной связи, такие как пиктограммы на фиг.4-9, могут комбинироваться. Например, фиг.10 показывает пример видимой обратной связи, которая может возникать во время находящейся в процессе выполнения операции переноса/фиксации, указывая, что определенные многочисленные действия должны предприниматься в ответ на завершение операции переноса/фиксации. В этом примере в ответ на завершение находящейся в процессе выполнения операции переноса/фиксации будет предприниматься три действия: выбранный объект будет скопирован, будет добавлено, удалено или модифицировано по меньшей мере одно из свойств и будет создан новый сохраняемый автоматический список. Хотя в этом примере различные пиктограммы показаны скомпонованными горизонтально, они могут быть скомпонованы вертикально или любым другим образом.
За исключением обратной связи, показанной на фиг.5, каждый из этих вариантов обратной связи может представляться пользователю в ответ на выбранный объект, являющийся перемещаемым вблизи (например, в пределах порогового расстояния от или с перекрытием) цели. Например, со ссылкой на фиг.11 показан экран 1100, на котором пользователь осуществляет перенос выбранного объекта 1101 на целевой объект 1102 с использованием курсора 1103. Со ссылкой на фиг.12 выбранный объект 1101 теперь был перенесен и теперь является приближенным (и в самом деле в этом случае с перекрытием) к целевому объекту 1102. В ответ представлена обратная связь 1201, приближенная к курсору 1103. В качестве альтернативы или дополнительно со ссылкой на фиг.13 обратная связь 1301 может быть представлена в местоположении на экране 1100, не связанном с позицией курсора 1103, например в заранее существующей строке состояния или во всплывающем окне.
Как уже упомянуто, конкретная обратная связь, выданная пользователю, зависит от того, какое действие(я) должно быть предпринято по завершении операции переноса/фиксации. Пример обратной связи, которая может выдаваться, показан на фиг.14 со ссылкой на строку «Элемент» таблицы на фиг.2. В тех случаях, когда элемент 1401 проносится над папкой 1402 в том же самом томе, выдается обратная связь, как на фиг.9, указывающая, что элемент 1401 был бы перемещен в папку 1402 после фиксации элемента 1401 на ней. В тех случаях, когда элемент 1401 заносится над папкой 1403 в другом томе, выдается обратная связь, как на фиг.4, указывающая, что элемент 1401 был бы скопирован в папку 1403 после фиксации элемента 1401 на ней. В тех случаях, когда элемент 1401 проносится над списком 1404 в этом же томе, выдается обратная связь, как на фиг.6, указывающая, что ссылка на элемент 1401 была бы добавлена в список 1404 после фиксации элемента 1401 на нем. То же самое указывается в тех случаях, когда элемент 1401 проносится над списком 1405 в другом томе. В тех случаях, когда элемент 1401 проносится над сохраняемым автоматическим списком 1405 и когда элемент 1401 находится в пределах области действия сохраняемого автоматического списка 1405, выдается обратная связь, как на фиг.7. Такая обратная связь указывает, что одно или более свойств элемента 1401 будут модифицированы, так что элемент 1401 будет включен в список в сохраняемом автоматическом списке 1405 после фиксации элемента 1401 на нем. В тех случаях, когда элемент 1401 проносится над сохраняемым автоматическим списком 1406 и когда элемент 1401 находится вне области действия сохраняемого автоматического списка 1405, выдается обратная связь, как на фиг.4 и 7.
Такая обратная связь указывает, что элемент 1401 будет скопирован в местоположение в пределах области действия и что одно или более свойств копии элемента 1401 будут модифицированы, так что копия элемента 1401 будет включена в список в сохраняемом автоматическом списке 1405 после фиксации элемента 1401 на нем.
Согласно фиг.15-18 обратная связь в виде предварительно обзора, дополнительно или в качестве альтернативы, может включать в себя текстовое пояснение, которое полнее разъясняет подробности каждого действия, которое должно предприниматься. Например, вариант обратной связи на фиг.15 указывает пользователю, что свойства выбранного элемента будут изменены и, в частности, метки «Проекты» и «Работа» будут добавлены в качестве внутренних свойств к элементу. Вариант обратной связи на фиг.16 указывает пользователю, что выбранный элемент будет копироваться, а его свойства будут модифицироваться, и, в частности, что выбранный элемент будет скопирован в местоположение Рабочий стол, а метки «Срочное» и «Личное» будут добавлены в качестве внутренних свойств к выбранному элементу.
Вариант обратной связи на фиг.17 также выдает подробную информацию пользователю. В этом случае выбранный элемент будет копироваться в местоположение Рабочая папка клиентов и различные индикаторные метки будут добавлены в качестве свойств к элементу. Должно быть отмечено, что в тех случаях, когда описательный текст становится слишком длинным, как на фиг.17, текст может постепенно исчезать по мере того, как показывается. Вариант обратной связи на фиг.18 указывает не только, что операция переноса/фиксации не будет работать, но также и то, почему она не будет работать. В этом примере операция не будет работать, так как недокумент проносится над сохраняемым автоматическим списком, определяющим критерии, которые допускают ссылки только на документы.
Перенос/фиксация на дочерние объекты в иерархии
До сих пор предполагалось, что целевой объект отображался на экране во время переноса. Однако все из обсуждения, приведенного в материалах настоящей заявки, также применяется к переносу на целевые объекты, которые являются дочерними по отношению к таким объектам и которые не отображаются на экране в начале переноса. Например, основной объект, такой как папка, список или сохраняемый автоматический список, может содержать дочерние объекты. Пользователь может пожелать фиксировать выбранный объект на одном из дочерних объектов, даже если в текущий момент отображается только основной объект. Это может делаться, как иллюстративно описано со ссылкой на фиг.19-23.
На фиг.19 пользователь может выбирать объект 1901 для переноса. Допустим, что пользователь решает зафиксировать объект 1901 на дочернем объекте папки 1902. Таким образом, со ссылкой на фиг.20 пользователь проносит объект 1901 над папкой 1902. В ответ компьютер 100 отображает окно 2001, перечисляющее дочерние объекты, содержащиеся в папке 1902. Согласно фиг.21 пользователь затем может переносить объект 1901 вниз по окну 2001, чтобы, по желанию, выбрать конкретный дочерний объект, приведенный в списке. По мере того как объект 1901 переносится над каждым дочерним объектом, надлежащая обратная связь в виде предварительного обзора может выдаваться пользователю. Например, в то время как объект 1901 проносится над первым из перечисленных дочерних объектов («Сохраняемый автоматический список A»), обратная связь 2101 в виде предварительного обзора, указывающая, что если бы объект 1901 был зафиксирован на этом месте, свойства объекта 1901 были бы модифицированы для добавления «Рабочий» в его свойство Ключевое слово и «Клиент XYZ» в его свойство Клиент. Это, насколько можно ожидать, происходит, так как сохраняемый автоматический список A определяет критерии, которые требуют этих свойств у любого объекта, на который он ссылается.
По мере того как пользователь продолжает переносить объект 1901 вниз по окну 2001, объект 1901, в итоге, может располагаться над Списком E, как показано на фиг.22. В этом случае представляется обратная связь 2201 в виде предварительного обзора, которая указывает, что на объект 1901 ссылался бы Список E после фиксации объекта 1901 по нему. Пользователь может предпочесть поступить таким образом. В качестве альтернативы пользователь может предпочесть не фиксировать объект 1901 на каком бы то ни было из дочерних объектов, показанных в окне 2001, а взамен либо отменить перенос/фиксацию, либо осуществить перенос на совершенно другую папку. В этом случае пользователь может уносить объект 1901 с папки 1902 и окна 2001, как показано на фиг.23. Как показано, в ответ на унесение объекта 1901 с папки 1902 и/или окна 2001 окно 2001 автоматически исчезает. Это может предусматривать традиционный способ для пользователя, чтобы фиксировать объект на других объектах, расположенных в глубине иерархии, не вынуждая вручную открывать и закрывать контейнерные объекты, такие как папки, списки и сохраняемые автоматические списки.
Вывод
Таким образом был описан усовершенствованный способ управления объектами в электронной файловой системе. В соответствии с различными аспектами настоящего раскрытия операция переноса/фиксации стала мощным инструментом, например, для обращения с понятиями списков, сохраняемых автоматических списков и стеков. В дополнение, чтобы иметь дело с этой растущей мощью и связанной с ней сложностью, пользователь теперь способен предварительно просматривать, какие из некоторого количества разных возможных действий будут предприниматься в ответ на завершенную операцию переноса/фиксации.