BRPI0809015A2 - Técnicas para compartilhar informação entre programas de aplicação. - Google Patents

Técnicas para compartilhar informação entre programas de aplicação. Download PDF

Info

Publication number
BRPI0809015A2
BRPI0809015A2 BRPI0809015-7A BRPI0809015A BRPI0809015A2 BR PI0809015 A2 BRPI0809015 A2 BR PI0809015A2 BR PI0809015 A BRPI0809015 A BR PI0809015A BR PI0809015 A2 BRPI0809015 A2 BR PI0809015A2
Authority
BR
Brazil
Prior art keywords
note
target item
application program
notes
visual indicator
Prior art date
Application number
BRPI0809015-7A
Other languages
English (en)
Inventor
Olya Veselova
David Garber
Ryan Gregg
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=39796469&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=BRPI0809015(A2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of BRPI0809015A2 publication Critical patent/BRPI0809015A2/pt
Publication of BRPI0809015A8 publication Critical patent/BRPI0809015A8/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Description

“TÉCNICAS PARA COMPARTILHAR INFORMAÇÃO ENTRE PROGRAMAS DE APLICAÇÃO”
Antecedentes
Informação de usuário pode ser criada e mantida usando muitos programas de aplicação e sistemas diferentes. Em alguns casos, informação de um programa de aplicação pode ser tornada disponível para outro programa de aplicação, essencialmente tornando-se informação compartilhada. Por exemplo, um programa de aplicação de processamento de textos pode ser usado para gerar um documento de processamento de textos contendo informação de planilha eletrônica embutida mantida por uma aplicação de planilha eletrônica separada. Conforme são feitas modificações à informação da planilha eletrônica, as modificações são replicadas automaticamente para a informação de planilha eletrônica embutida de uma maneira dinâmica. Uma vez que informação compartilhada é gerenciada por múltiplos programas de aplicação, porém, acessar a informação compartilhada de um ou mais programas de aplicação poderia ser ineficiente ou incômodo de uma perspectiva do usuário. Por conseguinte, pode haver uma necessidade por técnicas melhoradas para gerenciar e acessar informação compartilhada entre múltiplos programas de aplicação de uma maneira eficiente e efetiva para solucionar estes e outros problemas.
Sumário
Este Sumário é fornecido para introduzir uma seleção de conceitos em uma forma simplificada que são também descritos abaixo na Descrição Detalhada. Este Sumário não é intencionado identificar características fundamentais ou características essenciais do assunto reivindicado, nem é intencionado ser usado para limitar o escopo do assunto reivindicado.
Várias modalidades são em geral direcionadas a técnicas para compartilhar informação entre programas de aplicação. Algumas modalidades são particularmente direcionadas a técnicas para acessar informação de um programa de aplicação que é gerenciado ou mantido por outro programa de aplicação. Em uma modalidade, por exemplo, um aparelho tal como um dispositivo ou sistema de computação pode incluir um primeiro programa de aplicação para criar informação na forma de notas para o operador ou usuário. Um segundo programa de aplicação pode ser usado para gerar ou exibir um item alvo. Um módulo de interface de nota pode ser disposto para associar uma ou mais notas com o item alvo, e exibir um indicador visual no item alvo indicando se qualquer nota foi associada ao item alvo. Indicador ou indicadores visuais podem ser usados para carregar informação de estado para um operador. Por exemplo, o indicador visual pode ter um estado para indicar que uma ou mais notas foram associadas ao item alvo, e outro estado para indicar que nenhuma nota foi associada ao item alvo. O operador pode usar o indicador visual para abrir uma vista de nota enquanto mantendo um contexto para o segundo programa de aplicação. Desta maneira, um operador pode ser provido com uma experiência de usuário consistente ao acessar ou ver a informação compartilhada. Outras modalidades são descritas e reivindicadas. Breve Descricão dos Desenhos
FIG. 1 ilustra uma modalidade de um sistema de computação.
FIG. 2 ilustra uma modalidade de informação compartilhada.
FIG. 3 ilustra uma modalidade de um fluxo lógico.
FIG. 4 ilustra uma modalidade de uma arquitetura de sistema de computação.
Descricão Detalhada
Várias modalidades podem compreender um ou mais elementos. Um elemento pode compreender qualquer recurso, característica, estrutura ou operação descritas com relação a uma modalidade. Exemplos de elementos podem incluir elementos de hardware, elementos de software, elementos físicos, ou qualquer combinação dos mesmos. Embora uma modalidade possa ser descrita com um número limitado de elementos em um certo arranjo por via de exemplo, a modalidade pode incluir mais ou menos elementos em arranjos alternados como desejado para uma implementação dada. Vale a pena observar que qualquer referência a “a modalidade” ou “uma modalidade” não necessariamente está referindo à mesma modalidade.
Várias modalidades podem ser direcionadas às técnicas para melhorar o compartilhamento de informação entre programas de aplicação múltiplos. Por exemplo, um dispositivo de computação pode incluir um primeiro programa de aplicação para criar informação tal como notas para um operador, e um segundo programa de aplicação para gerar ou exibir um item alvo. Em uma modalidade, por exemplo, os primeiro e segundo programas de aplicação podem ser do conjunto de programas de aplicação MICROSOFT® OFFICE, feito pela Microsoft Corporation, Redmond, Washington. Um exemplo de um primeiro programa de aplicação pode incluir, mas não é limitado a, um programa de aplicação MICROSOFT OFFICE ONENOTE®, usualmente referido como MICROSOFT ONENOTE. Um exemplo de um segundo programa de aplicação pode incluir, mas não é limitado a, um programa de aplicação MICROSOFT OFFICE OUTLOOK®, usualmente referido como MICROSOFT OUTLOOK.
Várias modalidades podem incluir um módulo de interface de nota. O módulo de interface de nota pode ser disposto para gerenciar a informação compartilhada ou pode ser associado entre os primeiro e segundo programas de aplicação. Por exemplo, a interface de nota pode ser disposta para associar uma ou mais notas criadas e gerenciadas por MICROSOFT ONENOTE com um item alvo de MICROSOFT OUTLOOK, tal como um item de tarefa, um item de calendário, um item de contato, um item de e-mail, um item de reunião, e assim sucessivamente. O módulo de interface de nota pode exibir um indicador visual, tal como um ícone ou símbolo indicador habitual, no item alvo indicando se qualquer nota foi associada ao item alvo. O indicador visual pode ter um estado para indicar que uma ou mais notas foram associadas ao item alvo, e outro estado para indicar que não há nenhuma nota associada ao item alvo. Como resultado, um operador pode rapidamente avaliar se exploração ou navegação adicional é necessária para recuperar as notas com um item.
Várias modalidades podem manter um contexto de usuário ou vista de usuário con5 sistente para a informação compartilhada ou associada entre os programas de aplicação. O operador pode usar o indicador visual, tal como clicando em um ícone, para abrir uma vista de nota enquanto mantendo um contexto de usuário para o segundo programa de aplicação. Por exemplo, uma janela de interface gráfica do usuário (GUI) pode ser aberta para exibir a nota. Ajanela de GUI nova pode ser sobreposta na janela de GUI usada para exibir o pro10 grama de aplicação MICROSOFT OUTLOOK ou um item alvo, ou ambas as janelas podem ser dimensionadas para permitir um operador ver ambas as janelas em uma tela ou monitor dado. Desta maneira, um operador pode ser provido com uma experiência de usuário consistente ao acessar ou ver a informação compartilhada.
FIG. 1 ilustra um diagrama de blocos de um sistema de computação 100. O sistema de computação 100 pode representar qualquer sistema de computação, arquitetura, ou infraestrutura disposta(o) para armazenar, processar, comunicar, e do contrário gerenciar os processos ou operações de informação compartilhada ou associada para um sistema eletrônico ou coletânea de sistemas eletrônicos. Como mostrado na FIG. 1, uma modalidade do sistema de computação 100 pode incluir um dispositivo de computação 102 acoplado a um ou mais dispositivos de computação remotos 108. Dispositivo de computação 102 pode compreender dois ou mais módulos de aplicação 104-1-/7? acoplados a um módulo de interface de nota 106. Dispositivo de computação remoto 108 pode incluir um módulo de aplicação 110. Em alguns casos, os módulos 104, 110 podem ser os mesmos módulos ou similares. Em outros casos, os módulos 104, 110 podem ser dispostos como aplicações de cliente-servidor ou aplicações de ponto-a-ponto conforme desejado para uma implementação dada. Detalhes adicionais para uma modalidade de dispositivo de computação 102 e dispositivo de computação remoto 108 podem ser também ilustrados e descritos com referência à FIG. 4.
Como aqui usado o termo “módulo” pode incluir qualquer estrutura implementada 30 usando elementos de hardware, elementos de software, ou uma combinação de elementos de hardware e de software. Em uma modalidade, por exemplo, os módulos descritos aqui são tipicamente implementados como elementos de software armazenados em memória e executados por um processador para executar certas operações definidas. Pode ser apreciado que as operações definidas podem ser implementadas usando mais ou menos módulos 35 conforme desejado para uma implementação dada. Pode ser também apreciado que as operações definidas podem ser implementadas usando elementos de hardware com base em várias restrições de projeto e de desempenho. As modalidades não estão limitadas neste contexto.
Em várias modalidades, o sistema de computação 100 pode ser usado para armazenar, processar, comunicar, e do contrário gerenciar processos ou operações de informação compartilhada entre programas de aplicação 104-1-m e/ou 110. Com respeito ao dispo5 sitivo de computação 102 e/ou dispositivo de computação remoto 108, o módulo de interface de nota 106, os programas de aplicação 104-1 -m e 110, e/ou qualquer informação compartilhada ou associada podem ser armazenados e acessados por meio de qualquer número de unidades de memória, meios de armazenamento, meios legíveis por máquina, ou meios legíveis por computador implementados para um dispositivo de computação dado. Dispositi10 vo de computação 102 e dispositivo de computação remoto 108 podem representar qualquer tipo de dispositivo eletrônico tendo o hardware, software apropriados ou combinação de hardware e software disposto para executar as operações dos módulos de aplicação 104-1-/77, módulo de interface de nota 106, e/ou do módulo de aplicação 110.
Em várias modalidades, o módulo de interface de nota 106 pode permitir os móduIos de aplicação 104-1-m e/ou 110 compartilharem informação eficientemente, tal como informação de nota ou notas. Por exemplo, considere que o módulo de aplicação 104-1 seja implementado como um programa de aplicação MICROSOFT ONENOTE. O programa de aplicação MICROSOFT ONENOTE é uma ferramenta para fazer anotações, reunir informação, e colaboração de multiusuários. As notas podem ser categorizadas juntamente em cademos. O módulo de interface de nota 106 pode permitir as notas do módulo de aplicação 104-1 serem compartilhadas por um ou mais dos outros programas de aplicação 104-2-/77. Por exemplo, considere que o módulo de aplicação 104-2 seja implementado como um programa de aplicação MICROSOFT OUTLOOK. O Programa de aplicação MICROSOFT OUTLOOK é um gerenciador de informação pessoal (PIM) que pode ser usado para gerenciar e-mail, um calendário, tarefas, gerenciamento de contatos, fazer anotações, e um diário. Como um PIM, o programa de aplicação 104-2 pode ter numerosos itens alvos, tais como itens de tarefa, itens de calendário, itens de contato, itens de e-mail, itens de reuniões, e assim sucessivamente. O módulo de interface de nota 106 pode permitir notas gerenciadas pelo módulo de aplicação 104-1 serem associadas a um ou mais dos vários itens alvos gerendados pelo módulo de aplicação 104-2. Por exemplo, uma nota de usuário para uma agenda de reunião pode ser associada a um item de calendário tendo uma data e hora de reunião.
Em alguns casos, porém, pode ser difícil ou incômodo um usuário determinar ou avaliar se uma nota do módulo de aplicação 104-1 foi associada a um item alvo dado do módulo de aplicação 104-2. Por exemplo, considere que o usuário faça anotações em alguma tarefa futura esclarecendo o que necessita ser feito, ou faz uma lista de verificação de itens que não deveriam ser esquecidos como parte daquela tarefa. Em uma semana ou duas, quando o usuário vê o item de tarefa na barra “A Fazer” ou no espaço de calendário para o programa de aplicação 104-1, o usuário pode esquecer que mais informação está disponível. Para reuniões, poderia ser um problema se o usuário fizesse anotações da agenda de antemão vários dias antes da reunião e depois esquecesse de olhá-las durante a reunião.
Várias modalidades tentam solucionar estes e outros problemas. O módulo de inter
face de nota 106 pode implementar várias técnicas ou fornecer várias interfaces de programas de aplicação (API) para permitir um usuário criar notas com o programa de aplicação 104-1, associar as notas com itens alvos particulares para o programa de aplicação 104-2 (ou outros programas de aplicação), e ver as notas associadas. Também, o módulo de inter10 face de nota 106 pode permitir um usuário permanecer no contexto de usuário ou experiência de usuário do programa de aplicação 104-2 ao criar, associar e ver as notas usando o programa de aplicação 104-1. Por exemplo, de dentro da experiência de usuário e GUI do programa de aplicação 104-2, um usuário pode fazer anotações sobre várias tarefas ou itens. Quando o usuário criar notas sobre um item usando o programa de aplicação 104-2, o 15 usuário pode escolher a localização onde as notas deveriam entrar no armazenamento ou hierarquia de pasta do programa de aplicação 104-1. Além de criar e associar as notas novas com um item alvo, um usuário pode associar as notas existentes com vários itens alvos. As notas podem ser feitas ou vistas enquanto ainda olhando para na GUI para o programa de aplicação 104-2.
Vale a pena observar que notas compartilhadas podem ser localmente armazena
das pelo dispositivo de computação 102, ou remotamente pelo dispositivo de computação remoto 108, e ainda caem dentro do escopo das modalidades. Por exemplo, o dispositivo de computação remoto 108 pode ser implementado como um servidor de rede acessível pelos programas de aplicação 104-1 e/ou 104-2 por meio de uma conexão de rede com fios ou sem fios. As modalidades não estão limitadas neste contexto.
Em operação geral, a disponibilidade de notas gerenciadas pelo programa de aplicação 104-1 para qualquer item dado gerenciado pelo programa de aplicação 104-2 é visível no programa de aplicação 104-2 sem a necessidade de abrir o item, pairar sobre ele, ou selecionar o mesmo. Isto pode ser realizado usando vários tipos de indicadores visuais que 30 são exibidos no item alvo. Exemplos de indicadores visuais podem incluir sem limitação qualquer tipo de gráfico, imagem, ícone, símbolo, animação, desenho, fotografia, imagem digital, ou qualquer outra sugestão visível para o usuário. O usuário pode abrir as notas associadas em um clique usando o indicador visual. Quando o usuário clica no indicador visual para o item alvo do programa de aplicação 104-2, o módulo de interface de nota 106 segue 35 esta lógica para localizar o item no programa de aplicação 104-1.
Em uma modalidade, por exemplo, o módulo de interface de nota 106 pode exibir um ou mais indicadores visuais no item alvo que indica se uma nota é associada ao item alvo. Os indicadores visuais podem ter um estado para indicar que uma ou mais notas foram associadas ao item alvo, e outro estado para indicar que não há nenhuma nota associada ao item alvo. Por exemplo, um indicador visual pode compreender um ícone de indicador habitual, com a presença de características adicionais no ícone de indicador habitual indicando notas associadas, e a ausência de características adicionais no ícone de indicador habitual não indicando nenhuma nota associada. Um exemplo de uma tal característica distintiva pode ser a apresentação de um ícone com uma característica aparecendo como uma “cadeia ligada” no ícone para indicar o primeiro estado, e a ausência da cadeia ligada no ícone para indicar o segundo estado. Em outro exemplo, o indicador visual pode compreender múltiplos ícones de indicadores habituais, com um primeiro ícone de indicador habitual representando o primeiro estado e o segundo ícone de indicador habitual representando o segundo estado. Pode ser apreciado que o uso de um indicador visual só ou indicadores visuais múltiplos não é limitado contanto que a implementação carregue estados múltiplos representando tipos diferentes de informação ao operador. Também, os estados múltiplos podem ser implementados usando qualquer número de indicadores visuais transmitidos em tempo real ou recuperados dos meios de armazenamento. As modalidades não são limitadas neste contexto.
Em uma modalidade, por exemplo, o programa de aplicação 104-2 pode fornecer um método modelo de objeto que permite transmitir um ícone de indicador habitual nos itens alvos. O indicador será transmitido ou não será transmitido com base no valor de uma propriedade especial que o programa de aplicação 104-2 adicionará ou permitirá o módulo de interface de nota 106 adicionar como parte do método modelo de objeto.
Em uma modalidade, por exemplo, o módulo de interface de nota 106 pode ser disposto para detectar se o item alvo foi selecionado, recuperar um identificar universal único (GUID) para o item alvo, e determinar se qualquer nota do primeiro programa de aplicação está associado ao item alvo. Para que o programa de aplicação 104-1 mantenha trilha das notas associadas para o programa de aplicação 104-2, o módulo de interface de nota 106 pode gerar um GUID para uma nota como uma propriedade habitual. O programa de aplicação 104-2 pode armazenar o GUID como propriedade textual assim este torna-se indexado e uma pesquisa rápida pode ser executada por um serviço de pesquisa, tal como um serviço de MICROSOFT WINDOWS® Desktop Search (WDS), por exemplo. O programa de aplicação 104-2 deveria ter suporte para pesquisa rápida de propriedades habituais com base em não-texto para facilitar tais operações. O programa de aplicação 104-2 pode também armazenar uma hiperligação para a página associada no caso de o caderno para o programa de aplicação 104-1 não estiver aberto no dispositivo de computação 102. O módulo de interface de nota 106 pode também estabelecer uma propriedade que faça com que o indicador visual seja transmitido no programa de aplicação 104-2. Para as notas associadas, o programa de aplicação 104-1 pode armazenar um ou mais GUIDs que foram armazenados no item alvo para o programa de aplicação 104-2. Além disso, o programa de aplicação 104-1 pode armazenar um item ID para o item alvo para melhorar a eficiência. Informação adicional pode também ser armazenado com as notas 5 para ajudar a localizar as notas se elas não puderem ser encontrados pelo GUID ou item ID1 tal como palavras chaves, sugestões de contexto, e assim sucessivamente. Uma ou mais ligações de retorno ao item alvo, ou marcadores de tarefa, podem ser armazenadas com as notas para permitir um usuário navegar de volta ao item alvo.
Para navegar do programa de aplicação 104-2 para o programa de aplicação 104-1 10 quando um usuário clicar, pairar ou do contrário selecionar o indicador visual, o módulo de interface de nota 106 utiliza a lógica a seguir para localizar a nota no programa de aplicação 104-1. O programa de aplicação 104-1 pode procurar uma página de caderno que contém o GUID armazenado com o item alvo. Se a página não for encontrada, o programa de aplicação 104-1 usa a hiperligação armazenada com o item alvo. Se um usuário percorrer uma 15 lista de cadernos abertos para o programa de aplicação 104-1 por meio da GUI do programa de aplicação 104-2, o módulo de interface de nota 106 poderia oferecer abrir e pesquisar qualquer caderno que não esteja correntemente aberto. Se o GUID ou hiperligação alvo não puder ser encontrada(o), o módulo de interface de nota 106 pode exibir uma mensagem de erro, tal como:
“OneNote não pode encontrar as notas associadas a este item. Elas podem estar
em um caderno que não esteja correntemente aberto, ou elas podem ter sido deletadas. Você quer remover a ligação de nota do item do OUTLOOK?”
Para navegar do programa de aplicação 104-1 para o programa de aplicação 104-2, o módulo de interface de nota 106 pode usar um GUID de tarefa especial para procurar a tarefa ou item no programa de aplicação 104-2. Para outros itens, se o usuário clicar na hiperligação “Ligar de volta ao OUTLOOK”, o programa de aplicação 104-1 vai: (1) usar WDS para recuperar o item alvo que contém o GUID e adquirir o item ID, ou se o item alvo não for encontrado em WDS, usar o item armazenado de ID no programa de aplicação 104-1; (2) recuperar o item alvo através do item ID; e (3) uma vez o item alvo é encontrado, abrir seu inspetor. Se o item alvo não puder ser encontrado através do item ID1 e acontecer ser um item de reunião, é possível que o usuário esteja clicando a ligação em uma página de notas de reunião tomada por algum outro usuário em um caderno compartilhado. Ainda pode ser valioso tentar localizar a cópia do usuário atual da reunião no programa de aplicação 104-2. O módulo de interface de nota 106 pesquisará por título e data e hora da reunião. Se o item alvo for encontrado, o programa de aplicação 104-1 inserirá a associação com as notas naquele item. Se o item alvo não puder ser encontrado através do item ID, o módulo de interface de nota 106 pode exibir uma mensagem de erro, tal como: “OneNote não pode encontrar o item de OUTLOOK. Ele pode ter sido deletado do OUTLOOK, ou pertencer a outro usuário. ”
Em várias modalidades, a interface de módulo de nó 106 pode ser usada para executar operações de sincronização periódicas para determinar a existência de notas associadas entre os programas de aplicação 104-1, 104-2. Por exemplo, o programa de aplicação 104-1 pode executar operações de sincronização periódicas com o programa de aplicação 104-2 para restabelecer ligações de nota perdida ou corrompidas nos itens alvos. Um exemplo do caso posterior é quando a propriedade habitual no item alvo é deletada de alguma maneira ou é corrompida. Um exemplo do caso anterior é quando outro usuário tomou as notas de reunião em um caderno compartilhado, e o módulo de interface de nota 106 pode mostrar o indicador de nota na circunstância de reunião do usuário atual. Vale a pena observar que o módulo de interface de nota 106 tipicamente não usa as operações de sincronização para remover os indicadores para notas deletadas, por causa da dificuldade envolvida em diferenciar deleção de notas sendo movidas correntemente para algum caderno compartilhado aberto.
As operações de sincronização podem ser executadas, por exemplo, após um período de tempo definido de inatividade profunda quando o dispositivo de computação 102 não estiver em uso. As operações de sincronização podem ocorrer a qualquer intervalo de tempo desejado, embora uma vez por dia possa ser tipicamente suficiente para muitas aplicações. Para iniciar as operações de sincronização, o módulo de interface de nota 106 pode recuperar a lista de todas as páginas que são associadas aos itens alvos. Para cada item, o módulo de interface de nota 106 pode chamar o programa de aplicação 104-2 e encontrar o item alvo correspondente. Se o item alvo for uma tarefa, o módulo de interface de nota 106 atualizará o estado de tarefa no programa de aplicação 104-1 para corresponder ao estado de tarefa do programa de aplicação 104-2. Se o item alvo não for encontrado pelo GUID ou item ID, o módulo de interface de nota 106 tentará encontrá-lo por objeto, e data e hora para ocorrências de reunião. Se o item for encontrado e não tiver associação com o programa de aplicação 104-1, o módulo de interface de nota 106 adicionará a associação apropriada. Se o programa de aplicação 104-2 tiver que ser iniciado para executar as operações de sincronização, será fechado após as operações de sincronização terem terminado.
Em uma modalidade, por exemplo, o módulo de interface de nota 106 pode ser disposto para receber uma instrução do operador que seleciona o indicador visual, e exibir a nota usando uma vista de nota separada exibida substancialmente de modo simultâneo com uma vista de item alvo para o segundo programa de aplicação. O operador pode usar o indi35 cador visual, tal como clicando em um ícone, abrir uma vista de nota enquanto mantendo um contexto para o segundo programa de aplicação. Por exemplo, uma janela de GUI nova pode ser aberta para exibir a nota. A janela de GUI nova pode ser sobreposta na janela de GUI usada para exibir o programa de aplicação 104-2 ou um item alvo para o programa de aplicação 104-2. Alternativamente, ambas as janelas podem ser automaticamente dimensionada para permitir um operador ver ambas as janelas em uma tela ou monitor dado. Por exemplo, quando o usuário tomar/ver as notas em um item alvo, as notas podem ser exibi5 das em uma janela de GUI ancorada à área de trabalho, que pode ser depois maximizada se desejado. O módulo de interface de nota 106 deveria ser capaz de levar as notas a ser criadas ou abertas na janela de GUI de vista de nota ancorada. O módulo de interface de nota 106 pode abrir a janela ancorada se já não aberta, e se o usuário não desabilitou a nota visualizar a característica a ser aberta em modo de janela ancorada. O módulo de interfa10 ce de nota 106 pode navegar para a página com o ID dado na janela ancorada ATIVA.
Operações para o sistema de computação 100 podem ser também descritas com referência a um ou mais fluxos lógicos. Pode ser apreciado que os fluxos lógicos representativos não necessariamente têm que ser executados na ordem apresentada, ou em qualquer ordem particular, a menos que do contrário indicado. Além disso, várias atividades descritas 15 com respeito aos fluxos lógicos podem ser executadas em maneira serial ou paralela. Os fluxos lógicos podem ser implementados usando um ou mais elementos do sistema de computação 100 ou elementos alternativos como desejado para um conjunto dado de restrições de projeto e de desempenho.
FIG. 2 ilustra um fluxo lógico 200. O fluxo lógico 200 pode ser representativo das 20 operações executadas por uma ou mais modalidades descritas aqui. Como mostrado na FIG. 2, o fluxo lógico 200 pode criar notas com um primeiro programa de aplicação no bloco 202. O fluxo lógico 200 pode determinar se um item alvo para um segundo programa de aplicação está associado a uma nota do primeiro programa de aplicação no bloco 204. O fluxo lógico 200 pode exibir um indicador visual no item alvo indicando se uma nota está 25 associada ao item alvo de acordo com a determinação no bloco 206. As modalidades não são limitadas neste contexto.
FIG. 3 ilustra um diagrama lógico 300. O diagrama lógico 300 ilustra programas de aplicação 302, 312. Os programas de aplicação 302, 312 podem ser representativos de um ou mais dos programas de aplicação 104-1-m e/ou 110, tais como os programas de aplica30 ção representados pelos respectivos módulos de aplicação 104-1, 104-2. O programa de aplicação 302 pode ter itens alvos múltiplos 304-1 -n. Os itens alvos 304-1 -n podem representar itens ou objetos individuais para o programa de aplicação 302. Os itens alvos 304-1 -n cada podem incluir os respectivos indicadores visuais 306-1-p. Em uma modalidade, por exemplo, os indicadores visuais 306-1-p podem compreender ícones de indicador habitual 35 de tamanhos variados, formas, cores, conteúdo, e assim sucessivamente.
Em uma modalidade, por exemplo, um operador pode criar notas diretamente com o programa de aplicação 312 do programa de aplicação 312 ou por meio do programa de aplicação 302. O programa de aplicação 302 ou o módulo de interface de nota 106 pode determinar se um item alvo 304-1 -n para o programa de aplicação 302 está associado a uma nota do programa de aplicação 312. O programa de aplicação 302 ou o módulo de interface de nota 106 pode exibir um indicador visual no item alvo 304-1 -n indicando se uma nota está associada ao item alvo 304-1 -n de acordo com a determinação anterior.
Como mostrado na FIG. 3, um item alvo tal como os itens alvos 304-1, 304-2 podem cada um incluir um indicador visual tal como os respectivos indicadores visuais 306-1, 306-2. Os indicadores visuais 306-1, 306-2 podem ser localizados em um gráfico ou podem ser vistos para os respectivos itens alvos 304-1, 304-2, assim permitindo um operador facil10 mente visualizar os indicadores visuais 306-1, 306-2 sem necessariamente abrir os itens alvos 304-1, 304-2 e trocar o contexto de usuário ou vista de usuário.
Em uma modalidade, por exemplo, o indicador visual 306-1 pode ter um primeiro estado indicando uma ou mais notas 314-1-rcomo gerenciadas pelo programa de aplicação 312 estão associadas ao item alvo 304-1. O indicador visual 306-1 pode também ter um se15 gundo estado no evento de não haver nenhuma nota associada ao item alvo 304-1. Similarmente, o indicador visual 306-2 pode ter um primeiro e segundo estados indicando se uma ou mais notas 316-1-s como gerenciadas pelo programa de aplicação 312 foram associadas ao item alvo 304-2. Como previamente descrito, os estados diferentes podem implicar indicadores visuais diferentes, com os indicadores visuais diferentes modificando uma 20 ou mais de uma dimensão de tamanho, dimensão de forma, dimensão de cor, dimensão de conteúdo, e assim sucessivamente. Qualquer tipo ou número de indicadores visuais pode ser usado contanto que a implementação possua estados diferentes, com cada estado indicando se qualquer nota foi associada a um item alvo dado.
Em várias modalidades, um operador pode acessar uma nota para um item alvo 25 usando o indicador visual. Como mostrado na FIG. 3, o módulo de interface de nota 106 pode ser usado para associar o conjunto dado de notas 314-1-r com o item alvo 304-1 do programa de aplicação 302, e o conjunto dado de notas 316-1-s com o item alvo 304-2 do programa de aplicação 302. Para acessar o respectivo conjunto de notas 314, 316, um operador pode clicar, pairar sobre, ou do contrário selecionar o indicador visual apropriado 306- 30 1, 306-2. O módulo de interface de nota 106 pode receber a seleção do operador, e gerar uma vista de nota para exibir uma nota associada ao item alvo enquanto mantendo um contexto para o segundo programa de aplicação.
Em várias modalidades, o módulo de interface de nota 106 pode gerar uma vista de nota para exibir um primeiro conjunto de notas explicitamente associadas ao item alvo. Por exemplo, o módulo de interface de nota 106 pode gerar uma vista de nota para exibir as notas 314-1-r como um conjunto de notas explícitas 320. As notas explícitas 320 podem incluir aquelas notas que foram explicitamente associadas ao item alvo 304-1 por um operador. O operador pode criar uma nota para o item alvo 304-1 selecionando o item alvo 304-1 e selecionando um botão criar nota para o programa de aplicação 302, selecionando o indicador visual 306-1, usando uma GUI para o programa de aplicação 312, ou alguma outra técnica. O operador pode depois associar a nota recentemente criada com o item alvo 304- 5 1. Alternativamente, o operador pode abrir um caderno para o programa de aplicação 312 por meio da GUI para o programa de aplicação 302 ou o programa de aplicação 312, selecionar uma nota previamente criada, e associar a nota selecionada com o item alvo 304-1.
Em várias modalidades, o módulo de interface de nota 106 pode gerar uma vista de nota para exibir um segundo conjunto de notas implicitamente associadas ao item alvo. Por 10 exemplo, o módulo de interface de nota 106 pode gerar uma vista de nota para exibir as notas 316-1-s como um conjunto de notas implícitas 330. As notas implícitas 330 podem incluir aquelas notas que foram implicitamente associadas ao item alvo 304-2 de acordo com um conjunto de regras de associação implícitas. Exemplos de regras de associação implícitas podem incluir pesquisa por notas que têm palavras chaves similares, identificado15 res de usuário, informação de hora/data, identificadores de aplicação, heurística, e qualquer outra regra que forneça agrupamento inteligente de notas. Os resultados de pesquisa podem ser depois associados ao item alvo 304-2 como as notas implícitas 330 compreendendo as notas 316-1-s.
FIG. 4 ilustra um diagrama de blocos de uma arquitetura de sistema de computação 20 900 adequado para implementar várias modalidades, incluindo o sistema de computação 100. Pode ser apreciado que a arquitetura de sistema de computação 900 é apenas um exemplo de um ambiente de computação adequado e não é intencionado sugerir qualquer limitação sobre o escopo de uso ou funcionalidade das modalidades. Nem deve a arquitetura de sistema de computação 900 ser interpretada como tendo qualquer dependência ou 25 requerimento relativo a qualquer um ou combinação de componentes ilustrados na arquitetura de sistema de computação exemplar 900.
Várias modalidades podem ser descritas no contexto geral de instruções executáveis por computador, tais como módulos de programa, que são executadas por um computador. Em geral, módulos de programa incluem qualquer elemento de software disposto para 30 executar operações particulares ou implementar tipos de dados abstratos particulares. Algumas modalidades podem ser também praticadas em ambientes de computação distribuídos onde as operações são executadas por um ou mais dispositivos de processamento remotos que são ligados através de uma rede de comunicações. Em um ambiente de computação distribuído, os módulos de programa podem ser localizados em meios de armazena35 mento de computador locais e remotos incluindo dispositivos de armazenamento de memória.
Como mostrado na FIG. 4, a arquitetura de sistema de computação 900 inclui um dispositivo de computação de propósito geral tal como um computador 910. O computador 910 pode incluir vários componentes tipicamente encontrados em um computador ou sistema de processamento. Alguns componentes ilustrativos de computador 910 podem incluir, mas não são limitados a, uma unidade de processamento 920 e uma unidade de memória 930.
Em uma modalidade, por exemplo, o computador 910 pode incluir uma ou mais unidades de processamento 920. Uma unidade de processamento 920 pode compreender qualquer elemento de hardware ou elemento de software disposto para processar informação ou dados. Alguns exemplos da unidade de processamento 920 podem incluir, sem Iimi10 tação, um microprocessador de computador de conjunto de instruções complexo (CISC), um microprocessador de computação de conjunto de instruções reduzido (RISC), um microprocessador de palavra de instrução muito longa (VLIW), um processador que implementa uma combinação de conjuntos de instruções, ou outro dispositivo processador. Em uma modalidade, por exemplo, a unidade de processamento 920 pode ser implementada como um pro15 cessador de propósito geral. Alternativamente, a unidade de processamento 920 pode ser implementada como um processador dedicado, tal como um controlador, microcontrolador, processador embutido, um processador de sinal digital (DSP), um processador de rede, um processador de meios, um processador de entrada/saída (E/S), um processador de controle de acesso dos meios (MAC), um processador de banda base de rádio, um arranjo de portão 20 programável por campo (FPGA), um dispositivo lógico programável (PLD), uma circuito integrado aplicação-específico (ASIC), e assim sucessivamente. As modalidades não são limitadas neste contexto.
Em uma modalidade, por exemplo, o computador 910 pode incluir uma ou mais unidades de memória 930 acopladas à unidade de processamento 920. Uma unidade de memória 930 pode ser qualquer elemento de hardware disposto a armazenar informação ou dados. Alguns exemplos de unidades de memória podem incluir, sem limitação, memória de acesso aleatório (RAM), RAM dinâmica (DRAM), DRAM de Taxa de Dados Dupla (DDRAM), DRAM síncrona (SDRAM), RAM estática (SRAM), memória exclusiva de leitura (ROM), ROM programável (PROM), ROM programável deletável (EPROM), EEPROM, ROM de Disco Laser (CD-ROM), Disco Laser Gravável (CD-R), Disco Laser Regravável (CD-RW), memória instantânea (por exemplo, memória instantânea NOR ou NAND), memória endereçável de conteúdo (CAM), memória de polímero (por exemplo, memória de polímero ferroelétrico), memória de alteração de fase (por exemplo, memória ovônica), memória ferroelétrica, memória de silício-óxido-nitreto-óxido-silício (SONOS), disco (por exemplo, disco flexível, unidade rígida, disco óptico, disco magnético, disco magneto-óptico), ou cartão (por exemplo, cartão magnético, cartão óptico), fita, cassete, ou qualquer outro meio que possa ser usado para armazenar a informação desejada e que possa ser acessado através do computador 910. As modalidades não estão limitadas neste contexto.
Em uma modalidade, por exemplo, o computador 910 pode incluir um barramento do sistema 921 que acopla vários componentes do sistema incluindo a unidade de memória 930 à unidade de processamento 920. Um barramento do sistema 921 pode ser quaisquer 5 de vários tipos de estruturas de barramento incluindo um barramento de memória ou controlador de memória, um barramento periférico, e um barramento local usando qualquer de uma variedade de arquiteturas de barramento. Por via de exemplo, e não limitação, tais arquiteturas incluem barramento de Arquitetura de Padrão Industrial (ISA), barramento de Arquitetura de Micro Canal (MCA), barramento de ISA Otimizada (EISA), barramento local da 10 Associação dos Padrões de Eletrônicos de Vídeo (VESA), barramento de Interconexão de Componentes Periféricos (PCI) também conhecido como barramento de Mezanino, e assim sucessivamente. As modalidades não são limitadas neste contexto.
Em várias modalidades, o computador 910 pode incluir vários tipos de meios de armazenamento. Meios de armazenamento podem representar quaisquer meios de armazenamento capazes de armazenar dados ou informação, tais como memória volátil ou nãovolátil, memória removível ou não-removível, memória deletável ou não-deletável, memória regravável ou não-regravável, e assim sucessivamente. Meios de armazenamento podem incluir dois tipos gerais, incluindo meios legíveis por computador ou meios de comunicação. Meios legíveis por computador podem incluir meios de armazenamento adaptados para Ier e escrever em um sistema de computação, tal como a arquitetura de sistema de computação 900. Exemplos de meios legíveis por computador para arquitetura de sistema de computação 900 podem incluir, mas não são limitados a, memória volátil e/ou não-volátil tal como ROM 931 e RAM 932. Meios de comunicação tipicamente incorporam instruções legíveis por computador, estruturas de dados, módulos de programa ou outros dados em um sinal de dados modulado tal como uma onda portadora ou outro mecanismo de transporte e incluem quaisquer meios de liberação de informação. O termo “sinal de dados modulado” significa um sinal tendo uma ou mais de suas características fixadas ou alteradas em uma tal maneira a codificar a informação no sinal. Por via de exemplo, e não limitação, meios de comunicação incluem meios com fios tais como uma rede com fios ou conexão com fios direta, e meios sem fios tais como acústico, espectro de radiofreqüência (RF), infravermelho e outros meios sem fios. Combinações de qualquer um dos acima devem ser também incluídas dentro do escopo de meios legíveis por computador.
Em várias modalidades, a unidade de memória 930 inclui meios de armazenamento de computador na forma de memória volátil e/ou não-volátil tal como ROM 931 e RAM 932. Um sistema básico de entrada/saída 933 (BIOS), contendo as rotinas básicas que ajudam a transferir informação entre os elementos dentro do computador 910, tal como durante a inicialização, é tipicamente armazenado na ROM 931. RAM 932 tipicamente contém dados e/ou módulos de programa que são imediatamente acessíveis e/ou presentemente sendo operados através da unidade de processamento 920. Por via de exemplo, e não limitação, FIG. 4 ilustra sistema operacional 934, programas de aplicação 935, outros módulos de programa 936, e dados de programa 937.
O computador 910 pode também incluir outros meios de armazenamento de com
putador removíveis/não-removíveis, voláteis/não-voláteis. Por via de exemplo apenas, FIG.
4 ilustra uma unidade de disco rígido 940 que lê ou escreve em meios magnéticos nãoremovíveis, não-voláteis, uma unidade de disco magnético 951 que lê ou escreve em um disco magnético removível, não-volátil 952, e uma unidade de disco óptico 955 que lê ou 10 escreve em um disco óptico removível, não-volátil 956 tal como um CD ROM ou outros meios ópticos. Outros meios de armazenamento de computador removíveis/não-removíveis, voláteis/não-voláteis que podem ser usados no ambiente operacional exemplar incluem, mas não são limitados a, cassetes de fita magnética, cartões de memória instantânea, discos versáteis digitais, fita de vídeo digital, RAM de estado sólido, ROM de estado sólido, e 15 outros. A unidade de disco rígido 941 é tipicamente conectada ao barramento do sistema 921 através de uma interface de memória não-removível tal como interface 940, e a unidade de disco magnético 951 e a unidade de disco óptico 955 são tipicamente conectadas ao barramento do sistema 921 por uma interface de memória removível, tal como interface 950.
As unidades e seus meios de armazenamento de computador associados debatidos acima e ilustrados na FIG. 4, proveem armazenamento de instruções legíveis por computador, estruturas de dados, módulos de programa e outros dados para o computador 910. Na FIG. 4, por exemplo, a unidade de disco rígido 941 é ilustrada como armazenando o sistema operacional 944, programas de aplicação 945, outros módulos de programa 946, e dados de programa 947. Observe que estes componentes ou podem ser iguais a ou diferentes do sistema operacional 934, programas de aplicação 935, outros módulos de programa 936, e dados de programa 937. Sistema operacional 944, programas de aplicação 945, outros módulos de programa 946, e dados de programa 947 são números diferentes dados aqui para ilustrar que, a um mínimo, eles são cópias diferentes. Um usuário pode entrar os comandos e informação no computador 910 através de dispositivos de entrada tais como um teclado 962 e dispositivo de apontamento 961, comumente referidos como um mouse, trackball ou mesa de toque. Outros dispositivos de entrada (não mostrados) podem incluir um microfone, joystick, acionador de jogo, disco satélite, escâner, ou outros. Estes e outros dispositivos de entrada são frequentemente conectados à unidade de processamento 920 através de uma interface de entrada do usuário 960 que é acoplada ao barramento do sistema, mas podem ser conectados por outra interface e estruturas de barramento, tais como uma porta paralela, porta de jogo ou um barramento serial universal (USB). Um monitor 991 ou outro tipo de dispositivo de exibição é também conectado ao barramento do sistema 921 por meio de uma interface, tal como uma interface de vídeo 990. Além do monitor 991, os computadores podem também incluir outros dispositivos de saída periféricos tais como altofalantes 997 e impressora 996 que podem ser conectados através de uma interface de saída periférica 990.
O computador 910 pode operar em um ambiente em rede usando conexões lógicas para um ou mais computadores remotos, tais como um computador remoto 980. O computador remoto 980 pode ser um computador pessoal (PC), um servidor, um roteador, um PC de rede, um dispositivo de ponto ou outro nó de rede comum, e tipicamente inclui muitos ou todos os elementos descritos acima com relação ao computador 910, embora apenas um dispositivo de armazenamento de memória 981 tenha sido ilustrado na FIG. 4 para clareza. As conexões lógicas descritas na FIG. 4 incluem uma rede local (LAN) 971 e uma rede de longa distância (WAN) 973, mas podem também incluir outras redes. Tais ambientes de gestão de redes são comuns em escritórios, redes de computador de grandes empresas, intranets e a Internet.
Quando usado em um ambiente de gestão de redes LAN, o computador 910 é conectado à LAN 971 através de uma interface ou adaptador de rede 970. Quando usado em um ambiente de gestão de redes WAN, o computador 910 tipicamente inclui um modem 972 ou outra técnica adequada para estabelecer comunicações na WAN 973, tal como a Internet. O modem 972, que pode ser interno ou externo, pode ser conectado ao barramento do sistema 921 por meio da interface de entrada do usuário 960, ou outro mecanismo apropriado. Em um ambiente em rede, os módulos de programa descritos com relação ao computador 910, ou porções dos mesmos, podem ser armazenados no dispositivo de armazenamento de memória remoto. Por via de exemplo, e não limitação, FIG. 4 ilustra programas de aplicação remotos 985 como residindo no dispositivo de memória 981. Será apreciado que as conexões de rede mostradas são técnicas exemplares e outras para estabelecer um vínculo de comunicações entre os computadores podem ser usadas. Também, as conexões de rede podem ser implementadas como conexões com fios ou sem fios. No caso posterior, a arquitetura de sistema de computação 900 pode ser modificada com vários elementos adequados para comunicações sem fios, tais como uma ou mais antenas, transmissores, receptores, transceptores, rádios, amplificadores, filtros, interfaces de comunicações, e outros elementos sem fios. Um sistema de comunicação sem fios comunica a informação ou dados em um meio de comunicação sem fios, tal como uma ou mais porções ou bandas de espectro RF, por exemplo. As modalidades não são limitadas neste contexto.
Alguns ou todo do sistema de computação 100 e/ou arquitetura de sistema de computação 900 pode ser implementada(o) como uma parte, componente ou subsistema de um dispositivo eletrônico. Exemplos de dispositivos eletrônicos podem incluir, sem limitação, um sistema de processamento, computador, servidor, posto de trabalho, aplicação, terminal, computador pessoal, laptop, ultralaptop, computador de mão, minicomputador, mainframe, sistema de computação distribuído, sistemas de multiprocessador, sistemas com base em processador, eletrônicos do consumidor, eletrônicos programáveis pelo consumidor, assistente digital pessoal, televisão, televisão digital, dispositivo eletrônico, telefone, telefone mó5 vel, telefone celular, telefone de mão, ponto de acesso sem fios, estação de base, estação de assinatura, centro de assinatura móvel, controlador de rede de rádio, roteador, concentrador, porta de comunicação, ponte, interruptor, máquina, ou combinação dos mesmos. As modalidades não estão limitadas neste contexto.
Em alguns casos, várias modalidades podem ser implementadas como um artigo 10 de fabricação. O artigo de fabricação pode incluir um meio de armazenamento disposto para armazenar lógica e/ou dados para executar várias operações de uma ou mais modalidades. Exemplos de meios de armazenamento podem incluir, sem limitação, aqueles exemplos como previamente descritos. Em várias modalidades, por exemplo, o artigo de fabricação pode compreender um disco magnético, disco óptico, memória instantânea ou firmware con15 tendo instruções de programa de computação adequadas para execução por um processador de propósito geral ou processador aplicação-específico. Porém, as modalidades não são limitadas neste contexto.
Várias modalidades podem ser implementadas usando elementos de hardware, eIementos de software, ou uma combinação de ambos. Exemplos de elementos de hardware podem incluir quaisquer dos exemplos previamente como fornecidos para um dispositivo lógico, e também incluindo microprocessadores, circuitos, elementos de circuito (por exemplo, transistores, resistências, condensadores, indutores, e assim sucessivamente), circuitos integrados, portões lógicos, registros, dispositivo semicondutor, circuito integrado, microcircuitos integrados, conjuntos de circuitos integrados, e assim sucessivamente. Exemplos de elementos de software podem incluir componentes de software, programas, aplicações, programas de computação, programas de aplicação, programas de sistema, programas de máquina, software de sistema operacional, middleware, firmware, módulos de software, rotinas, sub-rotinas, funções, métodos, procedimentos, interfaces de software, interfaces de programas de aplicação (API), conjuntos de instruções, código de computação, código de computador, segmentos de código, segmentos de código de computador, palavras, valores, símbolos, ou qualquer combinação dos mesmos. Determinar se uma modalidade é implementada usando elementos de hardware e/ou elementos de software pode variar de acordo com qualquer número de fatores, tais como taxa computacional desejada, níveis de potência, tolerâncias a calor, previsão do ciclo de processamento, taxas de dados de entrada, taxas de dados de saída, recursos de memória, velocidades do barramento de dados e outras restrições de projeto ou de desempenho, como desejado para uma implementação dada.
Algumas modalidades podem ser descritas usando a expressão “acoplado” e “conectado” junto com seus derivados. Estes termos não necessariamente são intencionados como sinônimos um do outro. Por exemplo, algumas modalidades podem ser descritas usando os termos “conectado” e/ou “acoplado” para indicar que dois ou mais elementos estão em contato físico direto ou elétrico entre si. O termo “acoplado”, porém, pode também signi5 fica que dois ou mais elementos não entram em contato direto um com o outro, mas ainda cooperam ou interagem entre si.
É enfatizado que o Resumo da Revelação é fornecido para satisfazer a 37 C.F.R. Seção 1.72(b), requerendo um resumo que permitirá o leitor rapidamente averiguar a natureza da revelação técnica. É submetido com a compreensão que não será usado para inter
pretar ou limitar o escopo ou significado das reivindicações. Além disso, na Descrição Detalhada anterior, pode ser visto que várias características são agrupadas em uma modalidade simples para o propósito de agilizar a revelação. Este método de revelação não será interpretado como refletindo uma intenção que as modalidades reivindicadas requerem mais características que expressamente citadas em cada reivindicação. Do contrário, como as 15 reivindicações a seguir refletem, o assunto inventivo jaz em menos que todas as características de uma modalidade revelada só. Desse modo as reivindicações a seguir são por este meio incorporadas na Descrição Detalhada, com cada reivindicação valendo por si só como uma modalidade separada. Nas reivindicações em anexo, os termos “incluindo” e “em que” são usados como os equivalentes do bom e claro português dos respectivos termos “com20 preendendo” e “no qual”, respectivamente. Além disso, os termos “primeiro”, “segundo”, “terceiro”, e assim sucessivamente, são usados meramente como marcações, e não são intencionados impor requerimentos numéricos em seus objetivos.
Embora o assunto tenha sido descrito em linguagem específica às características estruturais e/ou ações metodológicas, é para ser entendido que o assunto definido nas reivindicações em anexo não necessariamente é limitado às características ou ações específicas descritas acima. Do contrário, as características e ações específicas descritas acima são reveladas como formas exemplares de implementar as reivindicações.

Claims (20)

1.Método, CARACTERIZADO pelo fato de que compreende: criar (202) notas com um primeiro programa de aplicação (312); determinar (204) se um item alvo (304) para um segundo programa de aplicação (302) está associado a uma nota (314, 316) do primeiro programa de aplicação; e exibir (206) um indicador visual (306) no item alvo indicando se uma nota (314, 316) está associada ao item alvo de acordo com a determinação.
2.Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que compreende exibir o indicador visual no item alvo com um primeiro estado indicando uma nota está associado ao item alvo.
3.Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que compreende exibir o indicador visual no item alvo com um segundo estado indicando uma nota não está associada ao item alvo.
4.Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que compreende associar uma nota com o item alvo para o segundo programa de aplicação.
5.Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que compreende acessar a nota usando o indicador visual.
6.Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que compreende gerar uma vista de nota para exibir uma nota associada ao item alvo enquanto mantendo um contexto para o segundo programa de aplicação.
7.Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que compreende gerar uma vista de nota para exibir um primeiro conjunto de notas explicitamente associadas ao item alvo.
8.Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que compreende gerar uma vista de nota para exibir um segundo conjunto de notas implicitamente associadas ao item alvo.
9.Artigo, CARACTERIZADO pelo fato de que compreende um meio de armazenamento contendo instruções que se executadas permitem um sistema: criar uma nota com um primeiro programa de aplicação; associar a nota com um item alvo para um segundo programa de aplicação; e exibir um indicador visual no item alvo com um primeiro estado indicando a nota está associada ao item alvo.
10.Artigo, de acordo com a reivindicação 9, CARACTERIZADO pelo fato de que adicionalmente compreende instruções que se executadas permitem o sistema exibir o indicador visual no item alvo com um segundo estado indicando uma nota não está associada ao item alvo.
11.Artigo, de acordo com a reivindicação 9, CARACTERIZADO pelo fato de que adicionalmente compreende instruções que se executadas permitem o sistema acessar a nota selecionando o indicador visual.
12.Artigo,de acordo com a reivindicação 9, CARACTERIZADO pelo fato de que adicionalmente compreende instruções que se executadas permitem o sistema gerar uma vista de nota para exibir a nota associada ao item alvo enquanto mantendo um contexto para o segundo programa de aplicação.
13.Artigo,de acordo com a reivindicação 9, CARACTERIZADO pelo fato de que adicionalmente compreende instruções que se executadas permitem o sistema gerar uma vista de nota para exibir um primeiro conjunto de notas explicitamente associadas ao item alvo.
14.Artigo,de acordo com a reivindicação 9, CARACTERIZADO pelo fato de que adicionalmente compreende instruções que se executadas permitem o sistema gerar uma vista de nota para exibir um segundo conjunto de notas implicitamente associadas ao item alvo.
15.Artigo, de acordo com a reivindicação 9, CARACTERIZADO pelo fato de que adicionalmente compreende instruções que se executadas permitem o sistema exibir a nota de dentro do segundo programa de aplicação em resposta a uma instrução do operador.
16.Aparelho, CARACTERIZADO pelo fato de que compreende: um primeiro programa de aplicação (312) para criar notas (314, 316) para um operador; um segundo programa de aplicação (302) para exibir um item alvo (304); e um módulo de interface de nota (106) para associar a nota com o item alvo, e exibir um indicador visual (306) no item alvo indicando se uma nota (314, 316) está associada ao item alvo.
17.Aparelho, de acordo com a reivindicação 16, CARACTERIZADO pelo fato de que o módulo de interface de nota para exibir um indicador visual no item alvo com um primeiro estado indicando uma nota está associado ao item alvo.
18.Aparelho, de acordo com a reivindicação 16, CARACTERIZADO pelo fato de que o módulo de interface de nota para exibir um indicador visual no item alvo com um segundo estado indicando uma nota não está associado ao item alvo.
19.Aparelho, de acordo com a reivindicação 16, CARACTERIZADO pelo fato de que o módulo de interface de nota para detectar se o item alvo foi selecionado, recuperar um identificar universal único para o item alvo, e determinar se quaisquer notas do primeiro programa de aplicação estão associadas ao item alvo.
20.Aparelho, de acordo com a reivindicação 16, CARACTERIZADO pelo fato de que o módulo de interface de nota recebe uma instrução do operador selecionando o indicador visual, e exibe a nota usando uma vista de nota separada exibida substancialmente de modo simultâneo com uma vista de item alvo para o segundo programa de aplicação.
BRPI0809015A 2007-03-30 2008-03-25 Técnicas para compartilhar informação entre programas de aplicação BRPI0809015A8 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/731.512 2007-03-30
US11/731,512 US20080244442A1 (en) 2007-03-30 2007-03-30 Techniques to share information between application programs
PCT/US2008/058160 WO2008121623A1 (en) 2007-03-30 2008-03-25 Techniques to share information between application programs

Publications (2)

Publication Number Publication Date
BRPI0809015A2 true BRPI0809015A2 (pt) 2014-09-16
BRPI0809015A8 BRPI0809015A8 (pt) 2016-12-20

Family

ID=39796469

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0809015A BRPI0809015A8 (pt) 2007-03-30 2008-03-25 Técnicas para compartilhar informação entre programas de aplicação

Country Status (9)

Country Link
US (1) US20080244442A1 (pt)
EP (1) EP2143008A4 (pt)
JP (1) JP5216845B2 (pt)
KR (1) KR20090122953A (pt)
CN (1) CN101647010A (pt)
AU (1) AU2008232816B2 (pt)
BR (1) BRPI0809015A8 (pt)
RU (1) RU2468421C2 (pt)
WO (1) WO2008121623A1 (pt)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090070661A1 (en) * 2007-09-10 2009-03-12 Affixion Bv Management of user knowledge about computer applications
US8190987B2 (en) * 2007-10-25 2012-05-29 Microsoft Corporation Private views of data and local calculations during real time collaboration
US20090307607A1 (en) * 2008-06-10 2009-12-10 Microsoft Corporation Digital Notes
US10127524B2 (en) 2009-05-26 2018-11-13 Microsoft Technology Licensing, Llc Shared collaboration canvas
US20100306018A1 (en) * 2009-05-27 2010-12-02 Microsoft Corporation Meeting State Recall
KR101718027B1 (ko) 2010-09-09 2017-03-20 엘지전자 주식회사 이동 단말기 및 그의 메모 관리방법
US9208222B2 (en) * 2010-11-26 2015-12-08 Htc Corporation Note management methods and systems
US9383888B2 (en) 2010-12-15 2016-07-05 Microsoft Technology Licensing, Llc Optimized joint document review
US9118612B2 (en) 2010-12-15 2015-08-25 Microsoft Technology Licensing, Llc Meeting-specific state indicators
US9864612B2 (en) 2010-12-23 2018-01-09 Microsoft Technology Licensing, Llc Techniques to customize a user interface for different displays
US8682973B2 (en) 2011-10-05 2014-03-25 Microsoft Corporation Multi-user and multi-device collaboration
US9544158B2 (en) 2011-10-05 2017-01-10 Microsoft Technology Licensing, Llc Workspace collaboration via a wall-type computing device
US9996241B2 (en) 2011-10-11 2018-06-12 Microsoft Technology Licensing, Llc Interactive visualization of multiple software functionality content items
US10198485B2 (en) 2011-10-13 2019-02-05 Microsoft Technology Licensing, Llc Authoring of data visualizations and maps
US9747257B2 (en) * 2012-01-02 2017-08-29 Microsoft Technology Licensing, Llc Updating document previews of embedded files
US9449303B2 (en) * 2012-01-19 2016-09-20 Microsoft Technology Licensing, Llc Notebook driven accumulation of meeting documentation and notations
EP2626822A1 (en) * 2012-02-13 2013-08-14 HTC Corporation Method and electronic apparatus for associating note and calendar event
US9720574B2 (en) 2012-03-19 2017-08-01 Microsoft Technology Licensing, Llc Personal notes on a calendar item
US9508056B2 (en) * 2012-03-19 2016-11-29 Microsoft Technology Licensing, Llc Electronic note taking features including blank note triggers
US10032135B2 (en) 2012-03-19 2018-07-24 Microsoft Technology Licensing, Llc Modern calendar system including free form input electronic calendar surface
US9218167B2 (en) * 2012-08-22 2015-12-22 Intel Corporation Augmenting user interface with additional information
US9071659B2 (en) * 2012-11-29 2015-06-30 Citrix Systems, Inc. Systems and methods for automatically identifying and sharing a file presented during a meeting
CN103929442A (zh) * 2013-01-10 2014-07-16 中兴通讯股份有限公司 一种资源共享方法及装置
US9910644B2 (en) 2015-03-03 2018-03-06 Microsoft Technology Licensing, Llc Integrated note-taking functionality for computing system entities
CN106298418B (zh) * 2015-05-18 2018-10-16 中微半导体设备(上海)有限公司 电感耦合等离子体处理系统及处理方法
US10409786B2 (en) * 2016-09-19 2019-09-10 Microsoft Technology Licensing, Llc Deployment of applications confirming to application data sharing and decision service platform schema
CN106775202B (zh) * 2016-11-22 2020-07-03 北京小米移动软件有限公司 一种信息传输的方法及装置
CN108829528B (zh) * 2018-06-11 2021-06-25 腾讯科技(深圳)有限公司 内容分享方法和装置、消息处理方法和装置
CN109558197B (zh) * 2018-11-27 2023-06-30 北京小米移动软件有限公司 信息推荐方法及装置
US11693676B2 (en) 2019-10-11 2023-07-04 Kahana Group Inc. Computer based unitary workspace leveraging multiple file-type toggling for dynamic content creation
US11397844B2 (en) 2019-10-11 2022-07-26 Kahana Group Inc. Computer based unitary workspace leveraging multiple file-type toggling for dynamic content creation
CN111427709B (zh) * 2020-03-30 2023-07-21 努比亚技术有限公司 一种应用程序分身控制方法、设备及计算机可读存储介质

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0672277B1 (en) * 1992-12-01 1998-05-13 Microsoft Corporation A method and system for in-place interaction with embedded objects
US5806079A (en) * 1993-11-19 1998-09-08 Smartpatents, Inc. System, method, and computer program product for using intelligent notes to organize, link, and manipulate disparate data objects
CA2181342A1 (en) * 1994-01-27 1995-08-03 David T. Berquist Software notes
JPH09223053A (ja) * 1996-02-20 1997-08-26 Fujitsu F I P Kk データ連携装置
US5838321A (en) * 1996-05-06 1998-11-17 Ast Research, Inc. User interface with embedded objects for personal computers and the like
US5760770A (en) * 1996-05-15 1998-06-02 Microsoft Corporation System and method for defining a view to display data
US5842009A (en) * 1996-09-30 1998-11-24 Apple Computer, Inc. System for automatically retrieving information relevant to a user's scheduled event
US6334117B1 (en) * 1996-11-27 2001-12-25 Diebold, Incorporated Automated banking machine and system
US6944819B2 (en) * 1997-01-10 2005-09-13 Eastman-Kodak Company Computer method and apparatus for previewing files outside of an application program
US6041335A (en) * 1997-02-10 2000-03-21 Merritt; Charles R. Method of annotating a primary image with an image and for transmitting the annotated primary image
US6452615B1 (en) * 1999-03-24 2002-09-17 Fuji Xerox Co., Ltd. System and apparatus for notetaking with digital video and ink
US6633878B1 (en) * 1999-07-30 2003-10-14 Accenture Llp Initializing an ecommerce database framework
US7069220B2 (en) * 1999-08-13 2006-06-27 International Business Machines Corporation Method for determining and maintaining dialog focus in a conversational speech system
JP5112598B2 (ja) * 2001-04-24 2013-01-09 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 情報ブロックに関する連続的領域のマッピング
DE60218899T2 (de) * 2001-12-26 2007-12-06 Research In Motion Ltd., Waterloo Benutzerschnittstelle und verfahren zum betrachten von einheitlichen kommunikationsereignissen in einem mobilen gerät
JP4163870B2 (ja) * 2001-12-28 2008-10-08 富士通株式会社 構造化文書変換装置
JP2005514705A (ja) * 2002-01-08 2005-05-19 エスエイピー エイジー 強化された電子メール管理システム
US7730014B2 (en) * 2003-03-25 2010-06-01 Hartenstein Mark A Systems and methods for managing affiliations
US7565425B2 (en) * 2003-07-02 2009-07-21 Amazon Technologies, Inc. Server architecture and methods for persistently storing and serving event data
US7962843B2 (en) * 2003-12-15 2011-06-14 Microsoft Corporation Browser session overview
EP1743268A4 (en) * 2004-03-31 2007-09-19 Neptec Design Group Ltd SYSTEMS FOR MEDICAL PATIENT MONITORING AND DATA INPUT, METHOD AND USER INTERFACES
JP2005316848A (ja) * 2004-04-30 2005-11-10 Dowango:Kk 携帯電話端末、商品販売システム及び商品販売方法並びにコンピュータプログラム
US7562085B2 (en) * 2005-05-24 2009-07-14 Palo Alto Research Center Incorporated Systems and methods for displaying linked information in a sorted context
JP4965836B2 (ja) * 2005-09-13 2012-07-04 キヤノン株式会社 情報表示装置及びその制御方法
US20110055209A1 (en) * 2007-02-23 2011-03-03 Anthony Novac System and method for delivering content and advertisments

Also Published As

Publication number Publication date
EP2143008A1 (en) 2010-01-13
EP2143008A4 (en) 2011-05-25
AU2008232816B2 (en) 2012-03-29
CN101647010A (zh) 2010-02-10
JP2010524084A (ja) 2010-07-15
WO2008121623A1 (en) 2008-10-09
BRPI0809015A8 (pt) 2016-12-20
AU2008232816A1 (en) 2008-10-09
KR20090122953A (ko) 2009-12-01
US20080244442A1 (en) 2008-10-02
JP5216845B2 (ja) 2013-06-19
RU2468421C2 (ru) 2012-11-27
RU2009136182A (ru) 2011-04-10

Similar Documents

Publication Publication Date Title
BRPI0809015A2 (pt) Técnicas para compartilhar informação entre programas de aplicação.
US10013413B2 (en) Smart fill
US7496595B2 (en) Methodology for directory categorization for categorized files
US10168870B2 (en) System for retrieving, visualizing and editing semantic annotations
US20060184894A1 (en) Global window management for parent/child relationships
US9946702B2 (en) Digital processing system for transferring data for remote access across a multicomputer data network and method thereof
BRPI0502443B1 (pt) interface de usuário para fornecer gerenciamento de tarefas e informações de calendário
EP2990965B1 (en) Versatile data model
US20080052623A1 (en) Accessing data objects based on attribute data
US8914397B2 (en) Rich-context tagging of resources
US11645450B2 (en) Annotation editor with graph
BRPI0710785A2 (pt) edição de conteúdo em visualização protegida
Al-Ubaydli Handheld computers
US8924876B1 (en) File-driven drag and drop
US8266228B2 (en) Tagging communication files based on historical association of tags
CN106547438B (zh) 一种查看电子笔记的方法和装置
US9886674B2 (en) Describing a paradigmatic member of a task directed community in a complex heterogeneous environment based on non-linear attributes
US20110060778A1 (en) Processing special attributes within a file
US10733236B1 (en) Systems and methods for producing message search recommendations
WO2018208423A1 (en) Adaptive metadata filters
US9552358B2 (en) Guiding a user to identified content in a document
CN109144948A (zh) 应用文件定位的方法、装置、电子设备和存储器
Dinneen et al. Towards Data‐driven GIM tools: Two Prototypes
US11886384B2 (en) Destination-agnostic item-keeping UI for heterogenous digital items
US9501586B2 (en) Displaying data sets across a plurality of views of a user interface

Legal Events

Date Code Title Description
B25A Requested transfer of rights approved

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC (US)

B06T Formal requirements before examination [chapter 6.20 patent gazette]

Free format text: PARECER 6.20

B08F Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette]

Free format text: REFERENTE A 11A ANUIDADE.

B08K Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette]

Free format text: EM VIRTUDE DO ARQUIVAMENTO PUBLICADO NA RPI 2508 DE 29-01-2019 E CONSIDERANDO AUSENCIA DE MANIFESTACAO DENTRO DOS PRAZOS LEGAIS, INFORMO QUE CABE SER MANTIDO O ARQUIVAMENTO DO PEDIDO DE PATENTE, CONFORME O DISPOSTO NO ARTIGO 12, DA RESOLUCAO 113/2013.