BRPI0503878B1 - Method implemented by computer and system for rendering hierarchical diagrams graphics for display by an exposure device - Google Patents

Method implemented by computer and system for rendering hierarchical diagrams graphics for display by an exposure device Download PDF

Info

Publication number
BRPI0503878B1
BRPI0503878B1 BRPI0503878-2A BRPI0503878A BRPI0503878B1 BR PI0503878 B1 BRPI0503878 B1 BR PI0503878B1 BR PI0503878 A BRPI0503878 A BR PI0503878A BR PI0503878 B1 BRPI0503878 B1 BR PI0503878B1
Authority
BR
Brazil
Prior art keywords
graphic
definition
content
diagram
property
Prior art date
Application number
BRPI0503878-2A
Other languages
English (en)
Inventor
K. Wong Karen
A. Sherman Scott
Wright Dawn
J. Kotler Matthew
Berker Ilan
Original Assignee
Microsoft Technology Licensing, Llc
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
Priority claimed from US10/957,103 external-priority patent/US8510657B2/en
Application filed by Microsoft Technology Licensing, Llc filed Critical Microsoft Technology Licensing, Llc
Publication of BRPI0503878A publication Critical patent/BRPI0503878A/pt
Publication of BRPI0503878B1 publication Critical patent/BRPI0503878B1/pt

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/20Linear translation of whole images or parts thereof, e.g. panning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)
  • Digital Computer Display Output (AREA)

Abstract

"manutenção de apresentações gráficas baseadas em personalizações de usuário". trata-se de um método e um sistema para renderizar gráficos com base em personalizações de usuário em uma aplicação de gráficos de computador. as personalizações referem-se a diversas propriedades de um ou mais elementos gráficos do gráfico. tais propriedades incluem posicionamento, tamanho, formatação e demais atributos visuais associados aos elementos gráficos. estas propriedades podem ser definidas ou como propriedades semânticas ou como propriedades de a-presentação. as propriedades semânticas persistem através de todas as definições de gráfico. as propriedades de apresen-tação são específicas da definição de gráfico à qual cada gráfico específico pertence. assim, uma personalização para uma propriedade semântica de um gráfico exibido é preservada em memória para aplicação não só ao gráfico exibido atualmente, mas também a todas as demais definições de gráfico que podem ser exibidas no futuro. em contraste, uma personalização para uma propriedade de apresentação só é preservada para o gráfico exibido atualmente e, portanto, não é preservada para todas as demais definições de gráfico.

Description

Relatório Descritivo da Patente de Invenção para "MÉTODO IMPLEMENTADO POR COMPUTADOR E SISTEMA PARA RENDERIZAR DIAGRAMAS HIERÁRQUICOS GRÁFICOS PARA EXIBIÇÃO POR UM DISPOSITIVO DE EXIBIÇÃO".
Pedidos Afins [001] Este pedido é uma continuação em parte do pedido de patente para “Editing The Text Of An Arbitrary Graphic Via A Hierarchical List”, depositado a 30 de setembro de 2004 e cedido No. de Série 10/957 103, cuja revelação é por este incorporada à guisa de referência em sua totalidade.
Campo Técnico [002] A presente invenção refere-se de maneira geral à criação e edição de apresentações visuais e, mais especificamente, à exibição de gráficos com base em personalizações de usuário.
Antecedentes de Invenção [003] Os indicadores de atenção visuais ajudam as pessoas a entender informações. A transmissão de informações para ou entre grupos de pessoas requer quase necessariamente a criação de apresentações visuais que corporificam as informações. Os programas de aplicação de gráficos, tais como a aplicação de apresentação PowerPoint® da Microsoft®, têm ajudado a automatizar a tarefa de criar tais apresentações visuais. Tais programas de aplicação de gráficos permitem aos usuários transmitir informações de maneira mais eficaz e efetiva pela colocação dessas informações em um formato facilmente inteligível, referido aqui como gráfico.
[004] Um gráfico é uma representação visual, como um diagrama ou outro desenho, de uma ideia, Um gráfico é tipicamente composto de vários elementos gráficos que representam o conteúdo que corpori-fiea a ideia, como, por exemplo, uma lista com marcador. Cada elemento gráfico é uma parte do gráfico exibido. Um elemento gráfico po- de ter características tanto textuais quanto gráficas. Ao passo que as características gráficas se referem geralmente a aspectos pictoriais e a outros aspectos visuais de um elemento gráfico, as características textuais referem-se geralmente à matéria escrita dentro do elemento gráfico. Dependendo das informações e da audiência, o usuário de um programa de aplicação de gráficos geralmente determina o gráfico específico que melhor ensinará ou transmitirá as informações subjacentes. Geralmente, os programas de aplicação de gráficos convencionais proporcionam uma de duas abordagens para a criação de um gráfico.
[005] Por um lado, alguns programas de aplicação de gráficos convencionais utilizam uma abordagem de desenho manual na qual os usuários têm flexibilidade total na criação e edição do gráfico. Sendo assim, o usuário pode posicionar e personalizar a aparência dos elementos gráficos no gráfico à medida que lhe pareça adequado. Por apresentar tais “domínios livres” na edição de gráficos, contudo, esta abordagem manual resulta em que o usuário tem que reposicionar e realinhar os elementos gráficos do gráfico afetados pela personalização e/ou reposicionamento dos demais elementos gráficos do gráfico. Como se pode imaginar, esta abordagem geralmente requer bastante tempo para se manipular os aspectos visuais do gráfico em vez de se focalizar na mensagem que deverá ser exibida no gráfico. Além do mais, esta abordagem requer, pelo menos em alguma medida, capacidades de desenho gráfico. Os usuários que não tenham habilidades de desenho acentuadas são limitados ainda mais pela abordagem manual.
[006] Por outro lado, alguns programas de aplicação de gráficos convencionais utilizam uma abordagem de desenho automático na qual o layout e a aparência para cada gráfico são definidos automaticamente com base no tipo de gráfico desejado pelo usuário e nos elementos gráficos predeterminados para o gráfico. Nesta abordagem, o encargo de alinhar e posicionar os elementos gráficos no gráfico é retirado do usuário e transferido para o programa de aplicação. Entretanto» esta abordagem é problemática no sentido de que ao usuário é tipicamente apresentado apenas um conjunto fixo limitado de definições gráficas do qual escolher, Além disto, o usuário não tem o poder de personalizar o gráfico com base em suas necessidades sem primeiro abandonar completa mente a funcionalidade de desenho automático, anulando assim a finalidade de utilização desta abordagem em primeiro lugar.
[007] É com relação a estas e outras considerações que a presente invenção foi concebida.
Sumário da Invenção [008] De acordo com a presente invenção, é apresentado um método implementado por computador para renderizar um gráfico em uma tela de exibição. O gráfico é uma representação visual de conteúdo na qual os itens podem ou não ser dispostos em uma estrutura predeterminada. Diversas formas de conteúdo podem ser representadas utilizando-se o gráfico, mas para fins de ilustração, o conteúdo é descrito aqui como conteúdo textual. No recebimento do conteúdo, o método inclui o recebimento de uma seleção de uma definição de gráfico que é a de representar visualmente o conteúdo. A definição de gráfico selecionada especifica propriedades pré-definidas para a aparência e o layout dos elementos gráficos para os gráficos criados de acordo com a definição de gráfico. Em seguida, o método cria o gráfico de modo a incluir elementos gráficos correspondentes aos itens do conteúdo e de acordo com uma personalização de pelo menos uma das propriedades pré-definidas ante ri o rmente aplicadas a um gráfico renderizado para o conteúdo com base em uma definição de gráfico diferente. O gráfico criado é então transmitido a um módulo de exibição para exibição ao usuário.
[009] De acordo com as modalidades da invenção, a personalização é identificada analisando-se um conjunto de propriedades persistentes através de todas as definições de gráfico possíveis, em que este conjunto de propriedades é especificado em um modelo “semântico”. Assim, o modelo semântico define as propriedades que são aplicáveis aos gráficos que correspondem a todas as definições de gráfico possíveis. De acordo com ainda outra modalidade, a criação do gráfico pode levar também em conta personalizações que sejam específicas da definição de gráfico específica para o gráfico que está sendo rende-rizado atualmente. Estas personalizações são mantidas em um modelo de “apresentação” que é recuperado juntamente com o modelo semântico em resposta à seleção da definição de gráfico afim.
[0010] Em ainda outras modalidades, a presente invenção apresenta um sistema para representar visualmente um conteúdo. O sistema inclui uma série de definições de gráfico possíveis, cada uma delas especificando propriedades pré-definidas para um gráfico afim aci-onável para representar o conteúdo. O sistema inclui também um modelo semântico que define propriedades “semânticas” para todas as definições de gráfico possíveis, de modo que cada gráfico afim represente um item semelhante no conteúdo utilizando-se uma propriedade semântica semelhante. Além disto, o sistema de acordo com esta modalidade inclui um mecanismo de personalização acionável para definir gráficos de acordo com diferentes definições de gráfico e o modelo semântico.
[0011] De acordo com ainda outra modalidade, o sistema inclui uma série de modelos de apresentação. Um ou mais dos modelos de apresentação estão associados com uma ou mais da série de definições de gráfico possíveis. Cada um dos modelos de apresentação define propriedades de apresentação específicas da definição de gráfico à qual cada um do modelo ou modelos de apresentação está associa- do. Em resposta à seleção de uma definição de gráfico específica para exibição, o mecanismo de personalização renderiza um gráfico de acordo com a definição selecionada, o modelo semântico, que é persistente através de todas as definições de gráfico, e um ou mais modelos de apresentação associados à definição selecionada. Assim, o gráfico é exibido com base na definição selecionada, mas tem as propriedades de aparência e layout personalizadas conforme determinado no(s) modelo(s) de apresentação e no modelo semântico afins.
[0012] De acordo com ainda outra modalidade, a presente invenção refere-se a um método para personalizar um gráfico que tem elementos gráficos exibidos em uma tela de exibição. Em resposta ao recebimento de um pedido para modificar o gráfico, o método inclui modificar o gráfico com base no pedido mantendo-se ao mesmo tempo a personalização aplicada anteriormente ao gráfico. Especificamente, a personalização refere-se a uma propriedade de um primeiro elemento gráfico do gráfico com relação a um segundo elemento gráfico do gráfico. Por exemplo, a personalização pode referir-se ao posicionamento ou tamanho do primeiro elemento gráfico com relação ao segundo elemento gráfico. Em uma modalidade, o pedido de modificação cor-porifica uma instrução para acrescentar um elemento gráfico ao gráfico.
[0013] As diversas modalidades da presente invenção podem ser implementadas como um processo de computador, um sistema de computação ou um artigo de fabricação, como, por exemplo, um produto de programa de computador ou meios passíveis de leitura por computador. O produto de programa de computador pode ser um meio de armazenamento passível de leitura por um sistema de computador e que codifica um programa de computador de instruções para executar um processo de computador. O produto de programa de computador pode ser também um sinal propagado em uma portadora passível de leitura por um sistema de computação e que corporifica um programa de computador de instruções para executar um processo de computador.
[0014] Estes e diversos outros aspectos assim, como vantagens, que caracterizam a presente invenção, se tornarão evidentes com a leitura da descrição detalhada seguinte e com o exame dos desenhos anexos.
Breve Descrição dos Desenhos [0015] A Figura 1 mostra uma interface de usuário de uma aplicação de gráficos de computador para criar e editar gráficos de acordo com uma modalidade da presente invenção.
[0016] Â Figura 2 mostra um sistema de computador exemplar no qual as modalidades da presente invenção podem ser implementadas.
[0017] A Figura 3 é um diagrama funcional que mostra diversos componentes de uma aplicação de gráficos de computador, que inclui um sistema de personalização, de acordo com uma modalidade da presente invenção.
[0018] A Figura 4 é um diagrama funcional que mostra mais detalhadamente o sistema de personalização da Figura 3 de acordo com uma modalidade da presente invenção.
[0019] As Figuras 5A-5C mostram o funcionamento em sequência do sistema de personalização da Figura 4 para gerenciar a personalização dos gráficos que são editados na aplicação de gráficos de computador.
[0020] A Figura 6 é um diagrama de fluxo que mostra as características operacionais de um processo para exibir (“processo de exibição"} um gráfico com base na personalização de usuário de acordo com uma modalidade da presente invenção.
Descrição Detalhada da Invenção [0021] A presente invenção será agora descrita mais completa- mente a seguir com referência aos desenhos anexos, nos quais são mostradas as modalidades da invenção. Esta invenção pode, contudo, ser corporificada sob formas diferentes e não deve ser entendida como limitada às modalidades apresentadas aqui; antes, estas modalidades são apresentadas de modo que esta revelação seja abrangente e completa e transmita completamente o alcance da invenção aos versados na técnica. Os mesmos números referem-se aos mesmos elementos por toda parte.
[0022] Em geral, a presente invenção refere-se à personalização da representação visual do conteúdo exibido em um ou mais gráficos. O conteúdo pode ser qualquer forma de informação, mas é descrito aqui como dados textuais de acordo com uma modalidade exemplar da presente invenção. O conteúdo pode ser apresentado pelo usuário (por meio de teclado, mouse, etc., por exemplo), por um programa de aplicação ou por uma combinação de ambos. Cada gráfico inclui pelo menos um elemento gráfico, que pode ter características textuais, características gráficas ou ambas.
[0023] De acordo com uma modalidade, a presente invenção apresenta um método implementado por computador para exibir (referido aqui como “processo de exibição”) um gráfico com base em personalizações de usuário para propriedades de aparência e layout de um ou mais elementos gráficos no gráfico. Tais propriedades incluem cor, posicionamento, tamanho, conformação, formatação e outros atributos visuais associados aos elementos gráficos.
[0024] O processo de exibição é corporificado em uma aplicação de gráficos de computador que tem uma interface de usuário (UI) para criar e editar gráficos. A aplicação de gráficos de computador pode ser ou uma aplicação de computador independente ou um sub-componente de outra aplicação de computador, como, por exemplo, sem limitação, uma aplicação de apresentação, uma aplicação de pro- cessamento de texto, uma aplicação de desenho ou uma aplicação de planilha. Os versados na técnica entenderão a aplicabilidade da aplicação de gráficos de computador a estas outras formas de aplicação de computador, que são tipicamente reunidas em um conjunto de escritório de aplicações, como o Office® e o OpenOffice da Microsoft.
[0025] A presente invenção é descrita no contexto geral das instruções executáveis por computador (módulos de programa, por exemplo) executadas por um ou mais computadores ou outros dispositivos. A funcionalidade dos módulos de programa pode ser combinada ou distribuída conforme desejado em diversas modalidades. Os módulos de programa incluem uma ou mais rotinas, programas, objetos, componentes, estruturas de dados, etc., que executam tarefas específicas ou implementam tipos de dados abstratos específicos.
[0026] Com referência agora à Figura 1, uma UI exemplar 102 para uso na criação e edição de gráficos em uma aplicação de gráficos de computador é mostrada de acordo com uma modalidade da presente invenção. A UI 102 é dividida em uma série de regiões, ou “painéis”, cada um responsável por diversos aspectos da funcionalidade da aplicação de gráficos de computador. Em uma modalidade, a série de painéis inclui um painel de conteúdo 104, um painel de gráfico 106 e um painel de galeria 105.
[0027] O painel de gráficos 106 exibe um conteúdo gráfico 108 criado pela aplicação de gráficos de computador utilizando conteúdo do painel de conteúdo 104. O conteúdo gráfico 108 pode ser qualquer forma de uma apresentação visual, como, por exemplo, um desenho, diagrama, etc., e é referido aqui como “gráfico” para fins de nomenclatura. O painel de galeria 105 fornece ao usuário uma série de definições de gráfico selecionáveis (como, por exemplo, 109a, 109b) que podem ser aplicadas ao conteúdo no painel de conteúdo 104 e rende-rizadas no painel de gráficos 106 como um gráfico 108. Cada um des- tes três painéis (104, 105 e 106) é agora descrito por sua vez mais detalhadamente com relação ao funcionamento da aplicação de gráficos de computador de acordo com diversas modalidades da presente invenção.
[0028] O painel de gráficos 106, que é também referido na Figura 1 como “painel de tela de desenho”, é uma janela, uma vidraça, uma classe de vista de gráficos ou outra área de exibição que permite ao usuário visualizar e editar conteúdo gráfico renderizado através da UI 102 pela aplicação de gráficos de computador. Como tal, o painel de gráficos 106 contém o gráfico 108 renderizado pela aplicação de gráficos de computador e fornece ao usuário da aplicação a funcionalidade para editar, ou personalizar, o gráfico 108 conforme o seu gosto. O gráfico 108 inclui um ou mais elementos gráficos, como os elementos gráficos 122-131, que representam o conteúdo introduzido no painel de conteúdo 104. A personalização do gráfico 108 refere-se à edição de qualquer tipo de propriedade associado ao gráfico, incluindo, sem limitação, os atributos visuais e as posições dos elementos gráficos 122-131 assim como qualquer texto dentro destes elementos.
[0029] O gráfico 108 é mostrado na Figura 1 como um gráfico de diagrama de roda para fins de ilustração. Deve ficar entendido que qualquer tipo de gráfico que tenha qualquer número de elementos gráficos, como, por exemplo, 122-131, é contemplado dentro do alcance da presente invenção. Para isto, os elementos gráficos 122-131 podem incluir, mas não se limitam a, nós, transições, chamadas ou cli-part. Um nó pode ser uma das conformações dentro do conteúdo gráfico. Exemplos de nó podem incluir círculos, quadrados, triângulos ou partes de conformações, como segmentos. Os versados na técnica reconhecerão tipos diferentes de nós. Uma transição é uma representação gráfica de uma inter-relação entre nós. A transição é tipicamente uma linha, seta ou outra conformação que conote uma relação entre dois nós.
[0030] O painel de conteúdo 104 é uma janela, uma vidraça, uma classe de vista de contorno ou outra área de exibição que permite ao usuário introduzir um corpo de conteúdo 115 (daqui por diante referido como “conteúdo”) na UI 102 da aplicação de gráficos de computador. Como tal, o painel de conteúdo 104 é acionável para aceitar conteúdo 115 para uso da aplicação de gráficos de computador na criação do gráfico 108. Basicamente, o conteúdo 115 é uma ideia que o usuário pretende que o gráfico 108 renderizado transmita. Em uma modalidade, o conteúdo 115 inclui dados textuais, que pode ou não ser dispostos com base em propriedades de formatação específicas ou em uma “estrutura predeterminada”. A Figura 1 mostra o conteúdo 115 sendo de dados textuais dispostos com base em propriedades de formatação específicas de acordo com esta modalidade, na qual estes dados textuais 115 representam uma lista hierárquica de idéias que têm inter-relações. Em outras modalidades, o conteúdo 115 pode incluir informações que não sejam textuais, como, por exemplo, qualquer outra forma de dados que inclua, mas não se limite a, clip art, imagens, vídeos, sons ou outros materiais audiovisuais.
[0031] Em uma modalidade, o painel de conteúdo 104 é acionável de modo a receber entrada do usuário e exibir essa entrada como o conteúdo 115 para edição pelo usuário. Sob este aspecto, o conteúdo 115 pode ser ou introduzido manualmente (por meio de teclado, por exemplo) no painel de conteúdo 104 pelo usuário ou passado de outra área da aplicação de gráficos de computador ou inteiramente de outro programa de aplicação. De acordo com outra modalidade, o conteúdo 115 no painel de conteúdo 104 pode ser conectado a outra aplicação ou programa, de modo que, à medida que os dados de conteúdo no outro programa são criados ou modificados, o conteúdo 115 dentro do painel de conteúdo 104 apareça automaticamente ou seja modificado.
Em ainda outras modalidades, o usuário pode renovar manualmente os dados conectados, de modo que o usuário force a atualização dos dados de conteúdo no painel de conteúdo 104 em lugar de ter a aplicação de gráficos ou outro programa atualizado automaticamente. Em ainda outras modalidades, o usuário pode solicitar e receber dados de conteúdo de outro programa, como um banco de dados. Alternativamente, o conteúdo 115 pode ser introduzido no painel de conteúdo 104 automaticamente (isto é, sem interação com o usuário) pela aplicação de gráficos de computador ou por outra aplicação.
[0032] O painel de galeria 105 é uma janela ou outro componente de interface de usuário gráfica acionável para apresentar diversos tipos de definição de gráfico, como as definições de gráfico 109a e 109b mostradas para fins de ilustração. As definições de gráfico 109a e 109b podem ser escolhidas pelo usuário para aplicação ao conteúdo 115 do painel de conteúdo 104, de modo a se renderizar o gráfico 108. Em uma modalidade, o painel de galeria 105 permite ao usuário comutar entre as diferentes definições de gráfico 109a e 109b e aplicar o mesmo conteúdo às definições de gráfico escolhidas, como, por exemplo, 109a e 109b, sem necessidade de se criar cada gráfico 108 a partir de rabiscos.
[0033] Cada definição de gráfico, como, por exemplo, 109a e 109b, está associada a um conjunto pré-definido de propriedades para o gráfico 108. Em uma modalidade, estas propriedades referem-se a qualquer característica visual ou não visual que corporifique o layout e a aparência dos elementos gráficos, como, por exemplo, 122-131, dentro do gráfico 108. Em resposta à seleção, pelo usuário, de uma definição de gráfico específica 109a ou 109b, a aplicação de gráficos de computador utiliza a definição de gráfico 109a ou 109b selecionada como a estrutura para o layout e a aparência do gráfico 108. De acordo com uma modalidade da presente invenção, a aplicação de gráficos de computador renderiza dinamicamente o gráfico 108 com base nas propriedades definidas na seleção 109a ou 109b definida, conforme atualmente especificado de acordo com quaisquer personalizações que tenham sido aplicadas ou a (1) qualquer uma destas propriedades persistente através de todas as definições de gráfico (como, por exemplo, 109a e 109b) ou a (2) qualquer uma destas propriedades que sejam estritamente aplicáveis à definição de gráfico 109a ou 109b selecionada. A geração dinâmica do gráfico 108 refere-se, portanto, às diferentes propriedades que podem ser especificadas para o gráfico 108 em pontos diferentes no tempo nos quais uma definição de gráfico específica, como 109a ou 109b, por exemplo, é selecionada pelo usuário.
[0034] O painel de galeria 105 mostrado na Figura 1 é uma galeria simplificada de definições de gráfico, como, por exemplo, 109a e 109b. Na verdade, apenas duas escolhas de definição de gráfico, isto é, 109a e 109b, são mostradas na Figura 1. Entretanto, a presente invenção não está limitada a tal seleção limitada, mas, antes, o painel de galeria 105 pode apresentar ao usuário qualquer número de definições de gráfico, como, por exemplo, 109a e 109b, das quais escolher. A primeira definição de gráfico 109a representa um diagrama de roda. A segunda definição de gráfico 109b representa um diagrama de pirâmide. De acordo com uma modalidade, a primeira (109a) e a segunda (109b) definições de gráfico são representadas na Figura 1 como miniaturas. Em outras modalidades, as definições de gráfico 109a e 109b podem ser representadas em um menu ou lista de nomes descritivos que permite ao usuário escolher um nome da lista. Os versados na técnica reconhecerão que outras maneiras de apresentar as definições de gráfico 109a e 109b dentro do painel de galeria 105 estão incluídas na presente invenção [0035] Com as estruturas precedentes da UI 102 em mente, o fun- cionamento da aplicação de gráficos de computador é agora descrito com referência à Figura 1 de acordo com uma modalidade da presente invenção. O painel de gráficos 106 exibe o gráfico 108 renderizado criado a partir do conteúdo 115 no painel de conteúdo 104 e a definição de gráfico 109a ou 109b selecionada, as propriedades especificadas pelas quais podem ser personalizados conforme descrito brevemente acima. O gráfico 108 inclui os elementos de gráfico 122-131 que representam os diversos itens (como, por exemplo, 116a, 116b, 118a e 118b), ou “entradas”, contidos no corpo do conteúdo 115. Na modalidade mostrada na Figura 1, cada elemento gráfico 122-131 corresponde a um único item do conteúdo 115. Entretanto, outras modalidades incluem um único elemento gráfico, como, por exemplo, 122-131, que representa vários itens do conteúdo 115, e ainda outras modalidades incluem um único item do conteúdo 115, que é representado por vários elementos gráficos, como, por exemplo, 122-131.
[0036] O conteúdo 115 pode ser introduzido no painel de conteúdo 104 e uma definição de gráfico 109a ou 109b pode ser selecionada em qualquer seqüência sem que se abandone o alcance da presente invenção. Se uma definição de gráfico 109a ou 109b é selecionada pelo usuário antes da introdução de qualquer conteúdo 115 no painel de conteúdo 104, um gráfico 108 é exibido sem qualquer conteúdo ou, alternativamente, com um conjunto de conteúdos de amostra. Em contraste, o usuário pode introduzir dados no painel de conteúdo 104 para entrada como o conteúdo 115 antes da seleção de uma definição de gráfico 109a ou 109b. Em uma modalidade neste caso, a aplicação de gráficos de computador pode oferecer ao usuário uma escolha pré-definida para a definição de gráfico 109a ou 109b; assim, à medida que o conteúdo é introduzido, o painel de gráficos 106 pode exibir um gráfico 108 da definição de gráfico 109a ou 109b pré-definida que cresce em elementos gráficos (como, por exemplo, 122-131) à medida que o usuário continua a acrescentar o conteúdo 115. Alternativamente, o painel de gráficos 106 permanece branco (isto é, sem o gráfico 108) até que o usuário selecione uma definição de gráfico 109a ou 109b do painel de galeria 105.
[0037] A Figura 1 mostra uma modalidade exemplar da presente invenção, na qual o usuário introduziu o conteúdo 115 sob a forma de conteúdo textual e, mais precisamente, sob a forma de uma lista hierárquica. Além disto, o usuário selecionou a definição de gráfico 109a do diagrama de roda. O painel de gráficos 106 exibe o gráfico 108, que é do tipo de diagrama de roda 109a devido à seleção do usuário. O gráfico 108 de diagrama de roda representa a lista hierárquica 115. Cada um dos elementos gráficos 122-131 do gráfico 108 corresponde a um item (isto é, linha de texto) da lista hierárquica 115. Conforme observado acima, contudo, outras modalidades incluem cada um dos elementos gráficos 122-131 correspondentes a vários itens da lista hierárquica 115, e ainda outras modalidades incluem mais de um dos elementos gráficos 122-131 correspondentes a um único item da lista hierárquica 115.
[0038] Em uma modalidade, a estrutura do conteúdo textual 115 no painel de conteúdo 104 determina a estrutura e a aparência dos elementos gráficos 122-131 mostrados no painel de gráficos 106. Por exemplo, uma primeira camada do gráfico de diagrama de roda 108 é um elemento superior 131 que corresponde à primeira linha primária 116a do conteúdo textual 115 do painel de conteúdo 104. Uma segunda camada do gráfico de diagrama de roda 108 inclui os elementos 126, 127, 128, 129 e 130, que estão subordinados ao elemento superior 131 e são, portanto, referidos como “elementos secundários”. Os elementos secundários 126, 127, 128, 129 e 130 correspondem às linhas 118a do conteúdo textual 115 endentadas sob a primeira linha 116a. Uma terceira camada do gráfico de diagrama de roda 108 é também um elemento superior 125 e corresponde à segunda linha primária 116b do conteúdo textual 115. Finalmente, uma quarta camada do gráfico de diagrama de roda 108 inclui os elementos secundários 122, 123 e 124, que são subordinados ao elemento superior 125. Os elementos secundários 122, 123 e 124 correspondem às linhas 118b do conteúdo textual 115 endentadas sob a segunda linha primária 116b. Com o exemplo precedente, deve ficar entendido que o conteúdo textual 115 do painel de conteúdo 104 é representado pelos diversos elementos gráficos 122-131 do gráfico 108, e a estrutura do conteúdo textual 115 é representada pela estrutura dos elementos gráficos 122-131 do gráfico 108.
[0039] Com o exemplo acima em mente, uma modalidade da presente invenção inclui a modificação do gráfico 108 em resposta a alterações dentro do conteúdo textual 115. Por exemplo, se a endentação da linha de topo das linhas 118a mostradas na Figura 1 como sendo subordinadas à primeira linha primária 116a fosse removida, uma nova camada seria criada no gráfico de diagrama de roda 108 entre a primeira camada e a segunda camada. Esta nova camada incluiría o elemento gráfico 129. A alteração significaria que os elementos gráficos secundários 126, 127, 128 e 130 se tornariam filhos do elemento gráfico 129 porque a linha de topo das linhas 118a é agora uma “linha primária” que tem filhos subordinados a ela.
[0040] Um exemplo de ambiente operacional adequado no qual a invenção pode ser implementada é mostrado na Figura 2. O ambiente operacional é apenas um exemplo de um ambiente operacional adequado e não pretende sugerir qualquer limitação ao alcance de uso ou funcionalidade da invenção. Outros sistemas de computação, ambientes e/ou configurações notoriamente conhecidos que podem ser adequados para uso com a invenção incluem, mas não se limitam a, computadores pessoais, computadores servidores, dispositivos de mão ou laptop, sistemas multiprocessadores, sistemas baseados em microprocessador, eletrônicos para consumo programáveis, PCs de rede, minicomputadores, computadores de grande porte, ambientes de computação distribuídos que incluem qualquer um dos sistemas ou dispositivos acima e semelhantes.
[0041] Com referência à Figura 2, um sistema exemplar para implementar a invenção inclui um dispositivo de computação, como o dispositivo de computação 200. Em sua configuração mais básica, o dispositivo de computação 200 inclui tipicamente pelo menos uma unidade de processamento 202 e uma memória 204. Dependendo da configuração e tipo exatos do dispositivo de computação, a memória 204 pode ser volátil (como uma RAM), não volátil (como uma ROM, memória flash, etc.) ou alguma combinação das duas. A configuração mais básica do dispositivo de computação 200 é mostrada na Figura 2 pela linha tracejada 206. Além disto, o dispositivo 200 pode também ter recursos/funcionalidade adicionais. Por exemplo, o dispositivo 200 pode incluir também armazenamento adicional (removível e/ou não removível), inclusive, mas não limitando-se a, discos ou fita magnética ou óptica. Tal armazenamento adicional é ilustrado na Figura 2 pelo armazenamento removível 208 e pelo armazenamento não removível 210. Os meios de armazenamento em computador incluem meios voláteis e não voláteis, removíveis e não removíveis implementados em qualquer método ou tecnologia para armazenamento de informações, como instruções passíveis por computador, estruturas de dados, módulos de programa ou outros dados. A memória 204, o armazenamento removível 208 e o armazenamento não removível 210 são todos exemplos de meios de armazenamento em computador. Os meios de armazenamento em computador incluem, mas não se limitam a, RAM, ROM, EEPROM, memória flash ou outra tecnologia de memória, CD-ROM, discos versáteis digitais (DVD) ou outro armazenamento óptico, cassetes magnéticos, fita magnética, armazenamento de disco magnético ou outros dispositivos de armazenamento magnéticos, ou qualquer outro meio que possa ser utilizado para armazenar as informações desejados e que possa ser acessado pelo dispositivo 200. Quaisquer meios de armazenamento em computador que tais podem ser parte do dispositivo 200.
[0042] O dispositivo 200 pode também conter conexão (ões) de comunicação 212 que permitam ao dispositivo comunicar-se com outros dispositivos. A(s) conexão(ões) 212 é(são) um exemplo de meios de comunicação. Os meios de comunicação corporificam tipicamente instruções passíveis de leitura por computador, estruturas de dados, módulos de programa ou outros dados em um sinal de dados modulado, como, por exemplo, uma onda portadora ou outro mecanismo de transporte, e incluem quaisquer meios de transmissão de informação. O termo “sinal de dados modulado” significa um sinal que tem um ou mais de suas características fixadas ou alteradas de modo a se codificarem informações no sinal. À guisa de exemplo, e não de limitação, os meios de comunicação incluem meios conectados, como, por exemplo, uma rede conectada ou conexão conectada direta e meios sem fio, tais como meios acústicos, RF, infravermelhos e outros meios sem fio.
[0043] O dispositivo 200 pode ter também dispositivo(s) de entrada 214, como teclado, mouse, caneta, dispositivo de entrada de voz, dispositivo de entrada por toque, etc. O(s) dispositivo(s) de saída 216, como um monitor, alto-falantes, impressora, etc., podem ser também incluídos. Os dispositivos podem ajudar a formar a interface de usuário 102 discutida acima. Todos estes dispositivos são notoriamente conhecidos na técnica e não é necessário analisa todos detalhadamente aqui.
[0044] O dispositivo de computação 200 inclui tipicamente pelo menos alguma forma de meios passíveis de leitura por computador. Os meios passíveis de leitura por computador podem ser quaisquer meios existentes que possam ser acessados pela unidade de processamento 202. À guisa de exemplo, e não de limitação, os meios passíveis de leitura por computador podem compreender meios de armazenamento em computador e meios de comunicação. Combinações de quaisquer dos acima referidos devem ser incluídas dentro do alcance dos meios passíveis de leitura por computador.
[0045] O dispositivo de computação 200 pode operar em um ambiente de comunicação inter-rede utilizando conexões lógicas com um ou mais computadores remotos (não mostrados). O computador remoto pode ser um computador pessoal, um sistema de computador servidor, um roteador, um PC de rede, um dispositivo de peer ou outro nó de rede comum e inclui tipicamente muitos ou todos os elementos descritos acima com relação ao dispositivo computador 200. As conexões lógicas entre o dispositivo computador 200 e o computador remoto podem incluir uma rede de área local (LAN) ou uma rede de área estendida (WAN), mas podem incluir também outras redes. Tais ambientes de comunicação inter-rede são comuns em escritórios, redes de computadores com abrangência de empresa, intranets e a Internet.
[0046] Quando utilizado em um ambiente de comunicação inter-rede LAN, o dispositivo computador 200 é conectado à LAN através de uma interface ou adaptador de rede. Quando utilizado em um ambiente de comunicação inter-rede WAN, o dispositivo computador 200 inclui tipicamente um modem ou outro dispositivo para estabelecer comunicações através da WAN, como a Internet. O modem, que pode ser interno ou externo, pode ser conectado ao processador de computador 202 por meio das conexões de comunicação 212, ou de outro mecanismo apropriado. Em um ambiente de comunicação inter-rede, os módulos de programa ou partes deles podem ser armazenadas no dispositivo de armazenamento em memória remoto. À guisa de exemplo, e não de limitação, um programa de aplicação remoto pode residir em um dispositivo de memória conectado ao sistema de computador remoto. Ficará entendido que as conexões de rede explicadas são exemplares e outros dispositivos para estabelecer um link de comunicação entre os computadores podem ser utilizados.
[0047] Com o ambiente de computação da Figura 2 em mente, a Figura 3 mostra um diagrama funcional que corporifica os componentes da aplicação de gráficos de computador 100 de acordo com uma modalidade da presente invenção. A aplicação de gráficos de computador 100 inclui a interface de usuário (UI) 102, que, conforme observado com relação à Figura 1, tem um painel de conteúdo 104, um painel de gráficos 106 e um painel de galeria 105. As setas funcionais (de blocos) 308, 310 e 312 representam a interação do usuário com o painel de conteúdo 104, o painel de gráficos 106 e o painel de galeria 105, respectivamente, de modo a se acionar a aplicação de gráficos de computador 100.
[0048] Mais especificamente, a interação de usuário 308 com o painel de conteúdo 104 resulta na introdução do conteúdo 115 na aplicação de gráficos de computador 100. Em resposta a tal introdução, a aplicação de gráficos de computador 100 exibe este conteúdo 115 dentro do painel de conteúdo 104 para exibição e para permitir a edição pelo usuário. Além disto, conforme descrito acima, a aplicação de gráficos de computador 100 cria um gráfico 108 que representa este conteúdo 115 e exibe este gráfico 108 através do painel de gráficos 106. A interação de usuário 310 com o painel de gráficos 106 resulta na edição do gráfico 108 exibido nele. Sendo assim, a interação de usuário 310 representa a personalização para o gráfico 108 exibido no painel de gráficos 106. A interação de usuário 312 com o painel de galeria 105 resulta na seleção de uma definição de gráfico específica a partir de uma série de definições de gráfico, como, por exemplo, 109a e 109b, cujas representações gráficas são exibidas através do painel de galeria 105 por ícone, menu, barra de ferramentas, miniatura ou outro componente de UI selecionável conhecido. Assim, a seleção de uma definição de gráfico 109a ou 109b específica através do painel de galeria 105 produz a renderização de um gráfico 108 no painel de gráficos 106 com base na seleção 109a ou 109b selecionada.
[0049] Além dos componentes de interface de usuário descritos acima, a aplicação de gráficos de computador 100 inclui também um sistema de personalização 300 e um mecanismo de layout 303. O sistema de personalização 300 e o mecanismo de layout 303 funcionam juntos de modo a fornecer à interface de usuário 102 o gráfico 108 apropriado para ser renderizado no painel de gráficos 106. Para conseguir isto, o sistema de personalização 300 passa os dados 301, que corporificam as propriedades de aparência e layout especificadas pela definição de gráfico 109a ou 109b selecionada, e quaisquer personalizações associadas a ela, para o mecanismo de layout 303. Para fins de nomenclatura, estes dados 301 são daqui por diante referidos como “dados de personalização”. Os dados de personalização 301 definem coletivamente as propriedades com base nas quais o gráfico 108 deverá ser renderizado, conforme especificado na definição de gráfico 109a ou 109b selecionada e de acordo com quaisquer personalizações que tenham sido aplicadas ou a (1) qualquer uma destas propriedades que persistem através de todas as definições de gráfico (referidas a seguir como propriedades “semânticas” ou a (2) qualquer uma destas propriedades que são estritamente aplicáveis à definição de gráfico 109a ou 109b selecionada (referidas a seguir como propriedades de “apresentação”)). Uma ilustração mais detalhada do sistema de personalização 300 é apresentada a seguir com referência à Figura 4.
[0050] O mecanismo de layout 303 interpreta os dados de perso- nalização 301 de modo a gerar uma árvore de layouts 302 para o gráfico 108 que é renderizado. A árvore de layouts 302 é então atravessada de modo a se identificarem as propriedades de aparência e la-yout para uso na renderização do gráfico 108. Em uma modalidade, o cruzamento da árvore de layouts 302 é feito por um componente do mecanismo de layout 303 referido como “mecanismo de saída” 304. Nesta modalidade, o mecanismo de saída 304 renderiza o gráfico 108 que será fornecido ao painel de gráficos 106 para exibição e edição. No recebimento do gráfico 108, o painel de gráficos 106 exibe o gráfico 108 para o usuário para que seja visto e editado. A funcionalidade e a estrutura do mecanismo de layout 303 são descritas mais detalhadamente de acordo com uma modalidade da presente invenção no pedido de patente norte-americano co-cedido para “Method, System and Computer Readable Médium for Creating and Laying out a Gra-phic Within an Application Program”, depositado a 30 de setembro de 2004 e cedido No. de Série 10/955 271, cuja revelação é por este incorporada à guisa de referência em sua totalidade. Deve ser entendido que o gráfico 108 pode ser construído utilizando-se os dados de personalização 301 por outro dispositivo que não o mecanismo de layout 303, que é descrito acima apenas para fins de ilustração de modo a se transmitir uma modalidade exemplar da presente invenção.
[0051] Com referência agora à Figura 4, o sistema de personalização 300 é mostrado em formato de diagrama funcional de acordo com uma modalidade da presente invenção. O sistema de personalização 300 inclui o mecanismo de personalização 412 e a biblioteca de modelos gráficos 402. a biblioteca de modelos gráficos 402 é uma estrutura de dados que mantém uma série de modelos de apresentação (408 e 410, por exemplo) e o modelo semântico 404. O mecanismo de personalização 412 utiliza os modelos de apresentação (408 e 410, por exemplo) e o modelo semântico 404 para criar os dados de personali- zação 301 a serem submetidos ao mecanismo de layout 303 para criação dos gráficos 108.
[0052] Em uma modalidade, a biblioteca de modelos gráficos 402 é específica de cada instância e/ou sessão da aplicação de gráficos de computador 100. Sendo assim, a biblioteca de modelos gráficos 402 e seus componentes são mostrados em linhas tracejadas para se ilustrar a instanciação da biblioteca 402 e dos modelos 408, 410 e 404 em memória para cada instância da aplicação de gráficos de computador 100. Por exemplo, se o usuário estiver criando e/ou editando dois gráficos 108 diferentes ao mesmo tempo utilizando a aplicação de gráficos de computador 100, uma biblioteca de modelos gráficos 402 e os modelos 408, 410 e 404 afins são criados para cada um dos dois gráficos 108 diferentes. Alternativamente, a biblioteca de modelos gráficos 402 e seus componentes podem persistir através de mais de uma instância e /ou sessão da aplicação de gráficos de computador 100. A implementação é uma questão de escolha, e ambas são completamente contempladas dentro do alcance da presente invenção.
[0053] Os modelos de apresentação (408 e 410, por exemplo) são estruturas de dados que mantêm as propriedades atuais específicas de cada uma das definições de gráfico 109a e 109b que podem ser selecionadas através do painel de galeria 105. As modalidades da presente invenção são descritas ilustrativamente com uma correlação de 1:1 de modelos de apresentação com as definições de gráfico 109a e 109b. Sendo assim, a Figura 1 mostra a obtenibilidade das duas definições de gráfico 109a e 109b que podem ser selecionadas através do painel de galeria 105 e, assim, apenas dois modelos de apresentação 408 e 410 são mantidos na biblioteca de modelos gráficos 402 mostrada na Figura 4. Deve ser entendido que o painel de galeria 105 pode ser acionável para selecionar qualquer número de definições de gráficos 109a e 109b, e a biblioteca de modelos gráficos 402 pode in- cluir qualquer número de modelos de apresentação (como, por exemplo, 408 e 410).
[0054] O modelo semântico 404 é uma estrutura de dados que mantém as propriedades atuais que persistem através de todas as definições de gráfico 109a e 109b que podem ser selecionadas pelo usuário através do painel de galeria 105. Sendo assim, existe apenas um modelo semântico 404 dentro da biblioteca de modelos gráficos 402. Mais uma vez, uma modalidade da presente invenção observada acima inclui a manutenção de um modelo semântico 404 com cada instância e/ou sessão da aplicação de gráficos de computador 100, e é possível, portanto, se ter mais de um modelo semântico 404.
[0055] Em resposta ao recebimento de uma seleção de definição de gráfico 109a ou 109b através do painel de galeria 105, o mecanismo de personalização 412 recupera o modelo de apresentação 408 ou 410 apropriado (isto é, o modelo de apresentação 408 associado à definição de gráfico 306 selecionada) e o modelo semântico 404. O mecanismo de personalização 412 cria então os dados de personalização 301 com base nas propriedades atuais definidas para a definição de gráfico 109a ou 109b selecionada, conforme especificado no modelo de apresentação 408 afim, e no modelo semântico 404.
[0056] As propriedades especificadas nos modelos de apresentação 408 e 410 e no modelo semântico 404 são atualizadas dinamicamente com base na entrada do painel de conteúdo 104 e do painel de gráficos 106. Com relação ao painel de conteúdo 104, à medida que o usuário está acrescentando o conteúdo 115 através da interação de usuário 308, os modelos de apresentação 408 e 410 e o modelo semântico 404 são atualizados de modo a refletirem o acréscimo de tal conteúdo 115. Por exemplo, se uma lista hierárquica tiver as linhas de conteúdo textual “A”, “B” e “C”, então cada um dos modelos de apresentação 408 e 410 e o modelo semântico 404 da biblioteca de mode- los gráficos 402 têm representações em memória para um elemento gráfico correspondente a cada uma das linhas de conteúdo textual “A”, “B” e “C”. Em resposta ao acréscimo, pelo usuário, de uma quarta linha de conteúdo textual “D”, o mecanismo de personalização 412 atualiza cada um dos modelos de apresentação 408 e 410 e o modelo semântico 404 de modo a incluir uma representação em memória para um elemento gráfico correspondente a esta nova linha de conteúdo textual. Portanto, os dados de personalização 301 criados pelo mecanismo de personalização 412 incluirão o acréscimo deste novo elemento gráfico em virtude da especificação, pelo modelo de apresentação 408 ou 410 apropriado e o modelo semântico 404, do mesmo.
[0057] Com relação ao painel de gráficos 106, à medida que o usuário estiver editando um gráfico 108 renderizado através da interação de usuário 310, o mecanismo de personalização 412 atualiza o modelo de apresentação (como, por exemplo, 408 ou 410) correspondente à definição de gráfico 306 associada ao gráfico 108 editado ou, alternativamente, o modelo semântico 404 de modo a refletir as personalização do usuário. A este respeito, o mecanismo de personalização 412 atualiza o modelo de apresentação apropriado (408 ou 410, por exemplo) se a personalização for uma alteração em uma propriedade de apresentação, isto é, uma “alteração de apresentação”. Em contraste, o mecanismo de personalização 412 atualiza o modelo semântico 404 se a personalização for uma alteração em uma propriedade semântica, isto é, uma “alteração semântica”.
[0058] Geralmente, a categorização de uma alteração em qualquer propriedade de um gráfico 108 como sendo uma alteração de “apresentação” ou uma alteração “semântica” é uma questão de escolha, e quaisquer categorizações que tais estão dentro do alcance da presente invenção. Para fins de exemplificação apenas, uma alteração semântica exemplar é aqui descrita como sendo uma alteração na cor de um elemento gráfico, e uma alteração de apresentação exemplar é aqui descrita como sendo uma alteração no tamanho de um elemento gráfico. Com estas exemplificações em mente, as Figuras 5A-5C mostram os aspectos operacionais da presente invenção com relação à atualização de um modelo de apresentação 408 e de um modelo semântico 404 em resposta à interação de usuário introduzida no painel de gráficos 106.
[0059] A Figura 5A mostra um gráfico 500 que tem os elementos gráficos 502, 504, 506, 508 e 510 que são exibidos através do painel de gráficos 106. Os elementos gráficos 502, 506 e 510 correspondem a linhas de conteúdo textual, ou entidades, “A”, “B” e “C”, respectivamente, incluídas no conteúdo 115 do painel de conteúdo 104. O gráfico ainda não foi editado pelo usuário e, portanto, não tem personalizações. Sendo assim, o gráfico 500 é mostrado no painel de gráficos 106 utilizando-se propriedades pré-definidas definidas pela definição de gráfico 109a ou 109b à qual o gráfico 500 pertence. O modelo de apresentação 408 e o modelo semântico 404 para o gráfico 500 são mostrados com estas propriedades pré-definidas, que, com efeito, foram utilizadas pelo mecanismo de personalização 412 para gerar os dados de personalização 301 para este gráfico 500 específico. Assim, o gráfico 500 renderizado corporifica propriedades especificadas pela definição de gráfico 109a ou 109b selecionada, sem personalizações.
[0060] Conforme observado acima, o modelo de apresentação 408 e o modelo semântico 404 são representações em memória e, assim, mostrados por meio de linhas tracejadas. Cada um destes modelos 404 e 408 incluem representações correspondentes a cada um dos elementos gráficos 502, 504, 506, 508 e 510 incluídos no gráfico 500. Especificamente, o modelo de apresentação 408 inclui as representações 502’, 504’, 506’, 508’ e 510’ que correspondem aos elementos gráficos 502, 504, 506, 508 e 510, respectivamente, e mantêm propri- edades associadas a cada respectivo elemento gráfico. Estas propriedades são propriedades de “apresentação” que são específicas apenas da definição de gráfico 109a ou 109b à qual o gráfico 500 pertence. Na modalidade exemplar para ilustrar as Figuras 5A-5C, o tamanho destes elementos gráficos 502, 504, 506, 508 e 510 constitui uma propriedade de apresentação.
[0061] De maneira semelhante, o modelo semântico 404 inclui as representações 502”, 504”, 506”, 508” e 510”, que correspondem aos elementos gráficos 502, 504, 506, 508 e 510, respectivamente, e mantêm propriedades associadas a cada respectivo elemento gráfico. Estas propriedades são propriedades “semânticas” que são persistentes através de todas as definições de gráfico 109a e 109b que podem ser selecionadas através do painel de galeria 105. Na modalidade exemplar para ilustração das Figuras 5A-5C, a cor destes elementos gráficos 502, 504, 506 e 510 constitui uma propriedade semântica.
[0062] A Figura 5B mostra os resultados da edição, pela interação de usuário 310, da cor do elemento gráfico 502 e do tamanho do elemento gráfico 506. Uma vez que a cor dos elementos gráficos constitui uma propriedade semântica de acordo com a modalidade exemplar descrita aqui, o mecanismo de personalização 412 atualiza a representação 502” no modelo semântico 404 que corresponde ao elemento gráfico 502 de modo a acomodar a alteração na cor. Uma vez que o tamanho dos elementos gráficos constitui uma propriedade de apresentação de acordo com a modalidade exemplar descrita aqui, o mecanismo de personalização 412 atualiza a representação 506’ no modelo de apresentação 408 que corresponde ao elemento gráfico 506 de modo a acomodar a alteração no tamanho.
[0063] A Figura 5C mostra a renderização no painel de gráficos 106 de um gráfico 511 que corresponde a uma definição de gráfico 109a ou 109b diferente do gráfico 500 mostrado nas Figuras 5A-5B. O gráfico 511 inclui os elementos gráficos 512, 514, 516, 518 e 520. Este gráfico 511 é renderizado no painel de gráficos 106 em resposta ao pedido do usuário, através do painel de galeria 105, para comutar as definições de gráfico 109a e 109b de modo a ver o conteúdo 115 (“A”, “B” e “C”, por exemplo). Ao receber tal pedido, o mecanismo de personalização 412 recupera o modelo de apresentação 410 associado à nova definição de gráfico 109a ou 109b e ao modelo semântico 404.
[0064] Uma vez que um gráfico (511, por exemplo) correspondente à definição de gráfico 109a ou 109b solicitado ainda não foi renderizado no painel de gráfico 106, o usuário ainda não teve uma oportunidade de personalizar qualquer uma das propriedades de apresentação. Sendo assim, o modelo de apresentação 410 recuperado especifica propriedades pré-definidas para os elementos gráficos, de acordo com a definição de gráfico 109a ou 109b afim, e o mecanismo de personalização 412 cria os dados de personalização 301, que não especificam alterações de apresentação. Assim, uma vez que a alteração de tamanho no elemento gráfico 506 é considerada para fins desta exem-plificação de alteração de “apresentação”, essa personalização específica não persiste no gráfico 511. De fato, todas as propriedades de apresentação especificadas no modelo de apresentação 410 recuperado são propriedades pré-definidas para a definição de gráfico 109a e 109b selecionada. Entretanto, uma vez que o modelo semântico 404 foi atualizado por alteração semântica (isto é, cor) no gráfico 500 mostrado na Figura 5B, essa personalização específica persiste no gráfico 511.
[0065] Os exemplos mostrados nas Figuras 5A-5C e descritos acima exemplificam modalidades da presente invenção a um nível elevado. Na verdade, a cor e o tamanho dos elementos gráficos corporifi-cam apenas duas propriedades que podem ser definidas para gráficos utilizando-se modelos de apresentação e um modelo semântico de acordo com a presente invenção. Conforme observado acima, qualquer outra propriedade relacionada com a aparência e o layout de elementos gráficos em um gráfico pode constituir uma propriedade de apresentação ou uma propriedade semântica. Tais propriedades incluem, por exemplo, a posição de um elemento gráfico com relação a outros elementos gráficos em um gráfico, a graduação de um elemento gráfico com relação a outros elementos gráficos em um gráfico, o tamanho de fonte dos dados textuais dentro de um elemento gráfico, o grau de rotação de um elemento gráfico, a ordem z de um elemento gráfico com relação a outros elementos gráficos em um gráfico e qualquer outra propriedade de formatação e layout que pode aplicar-se aos elementos gráficos dentro de um gráfico ou ao gráfico como um todo.
[0066] Por exemplo, a posição de um elemento gráfico com relação a outros elementos gráficos pode constituir um propriedade de apresentação ou semântica que é especificada por um modelo de apresentação ou um modelo semântico, respectivamente. Em um ou no outro caso, a aplicação de gráficos de computador 100 aplica personalizações graduando os deslocamentos tanto x quanto y aplicados ao elemento gráfico reposicionado em resposta ao acréscimo de um novo elemento gráfico ao gráfico. Alternativamente, os deslocamentos x e y corporificam um deslocamento radial baseado em coordenadas polares. Em uma modalidade, os movimentos posicionais com relação a gráficos que são de natureza retangular (como, por exemplo, quadrado, retângulo, etc.) são aplicados com base em deslocamentos x e y, ao passo que os movimentos posicionais com relação a gráficos que são de natureza circular (como, por exemplo, oval, círculo, etc.) são aplicados com base em um deslocamento radial.
[0067] Para personalizações posicionais tanto radiais quanto lineares, a distância na qual um elemento gráfico foi movido com relação à sua posição pré-definida é armazenada em um modelo de apresenta- ção ou semântico, dependendo se as alterações posicionais forem de “apresentação” ou “semânticas”. Sendo assim, estas personalizações são mantidas com o gráfico e, se armazenadas como alteração semântica, então através de gráficos que correspondem a outras definições de gráfico, mesmo após a modificação do(s) gráfico(s). Em resposta a uma alteração no layout de um gráfico (como, por exemplo, o acréscimo ou a supressão de um elemento gráfico), na qual um elemento gráfico foi reposicionado, a aplicação de gráficos de computador 100 determina uma nova posição para o elemento gráfico anteriormente reposicionado com base na alteração relativa armazenada. Para personalizações lineares, este processo envolve a utilização do deslocamento do elemento gráfico anteriormente reposicionado de outro elemento gráfico no gráfico. Para personalizações radiais, este processo envolve a utilização do raio, do ângulo de posição de conformação e do ângulo entre os elementos gráficos.
[0068] Com referência agora à Figura 6, é mostrado um diagrama de fluxo que mostra as características operacionais da corporificação de um processo 600 para exibir gráficos com base em personalizações de usuário de acordo com uma modalidade da presente invenção. Para fins de exemplificação, este processo 600 é referido aqui como “processo de exibição” e descrito com referência à aplicação de gráficos de computador 100 mostrada nas Figuras 1-4. Sendo assim, o processo de exibição 600 é descrito aqui de acordo com uma modalidade exemplar como sendo executado pelo programa de gráficos de computador 100, e os diversos componentes descritos em conjunto com ele são descritos com referência à Figura 6 utilizando-se os mesmos números de referência e a mesma terminologia.
[0069] O processo de exibição 600 é executado utilizando-se um fluxo de operações que começa com a operação de partida 602 e que termina com a operação de conclusão 630. A operação de partida 602 é iniciada em resposta ao lançamento, pelo usuário ou outro programa de aplicação, da aplicação de gráficos de computador 100 para a criação ou edição de um gráfico 108 que representa o conteúdo 115 introduzido na aplicação 100. Da operação de partida 602, o fluxo de operações passa para a operação de receber conteúdo 604.
[0070] A operação de receber conteúdo 604 recebe o conteúdo 115 cuja representação visual no gráfico 108 o usuário ou programa de aplicação está solicitando. Em uma modalidade, este conteúdo 115 é um conteúdo textual, que pode ou não ser disposto em um formato. Um conteúdo textual exemplar de acordo com esta modalidade é uma lista estruturada. Além disto, em uma modalidade, o conteúdo 115 recebido pela primeira operação de receber 604 é exibido para o usuário através do painel de conteúdo 104 da interface de usuário 102 para a aplicação de gráficos de computador 100. Da operação de receber conteúdo 604, o fluxo de operações passa para a operação de criar 606.
[0071] A operação de criar 606 cria o modelo de apresentação 408 ou 410 e o modelo semântico 404 para utilização com a instância da aplicação de gráficos de computador 100 lançada na operação de partida 602. O modelo semântico 404 criado especifica propriedades semânticas pré-definidas que são persistentes através de todas as definições de gráfico 109a e 109b possíveis. O modelo semântico 408 ou 410 criado especifica as propriedades semânticas pré-definidas que são persistentes através de todas as definições de gráfico 109a e 109b possíveis. O modelo de apresentação 408 ou 410 criado especifica as propriedades de apresentação pré-definidas por uma definição de gráfico 109a ou 109b selecionada.
[0072] De acordo com uma modalidade, a definição de gráfico 109a ou 109b, selecionada na qual o modelo de apresentação 408 ou 410 é baseado é uma definição de gráfico pré-definida, como, por exemplo, 109a ou 109b, predeterminada para todas as instâncias da aplicação de gráficos de computador 100. Nesta modalidade, a aplicação de gráficos de computador 100 é programada previamente de modo que o início da aplicação 100 renderize uma seleção da definição de gráfico 109a ou 109b pré-definida para uso do usuário até que o usuário solicite uma comutação de gráfico para outra definição de gráfico 109a ou 109b. De acordo com uma modalidade alternativa, a aplicação de gráficos de computador 100 pode apresentar ao usuário uma tela de seleção (diálogos de UI, por exemplo) que permita ao usuário selecionar uma definição de gráfico 109a ou 109b específica para ren-derização de um gráfico 108 inicial dentro do painel de gráficos 106. Sendo assim, a operação de criar 606 cria o modelo de apresentação 408 ou 410 com base na definição de gráfico 109a ou 109b selecionada.
[0073] Depois que o modelo de apresentação 408 ou 410 e o modelo semântico 404 tiverem sido criados, o fluxo de operações passa em seqüência para a operação de renderizar 612. A operação de ren-derizar 612 renderiza o gráfico 108 em uma tela de exibição para ser visto e editado pelo usuário. As características visuais (isto é, o layout e a aparência dos elementos gráficos) do gráfico 108 são definidas pela operação de renderizar 612 com base nas especificações de propriedade do modelo semântico 404 e do modelo de apresentação 408 ou 410 criados pela operação de criar 606. Conforme descrito acima, o modelo semântico 404 não é utilizado apenas para definir determinadas propriedades visuais, isto é, “propriedades semânticas”, para o gráfico 108 exibido pela operação de renderizar 612, mas todos os gráficos 108 pertencentes a todas as definições de gráfico 109a e 109b que possam ser renderizados na aplicação de gráficos de computador 100. Em contraste, contudo, o modelo de apresentação 408 ou 410 é utilizado apenas para definir determinadas propriedades vi- suais, isto é, “propriedades de apresentação”, para o gráfico 108 que é renderizado e para nenhum outro. De fato, um gráfico 108 correspondente à outra definição de gráfico 109a ou 109b assume apenas as propriedades de apresentação especificadas no modelo de apresentação 408 ou 410 correspondente a essa definição de gráfico 109a ou 109b. Depois que o gráfico 108 é renderizado na tela de exibição, o fluxo de operações passa para a primeira operação de consulta 614.
[0074] A primeira operação de consulta 614 determina se a instância da aplicação de gráficos de computador 100 lançado para chamar a operação de partida 602 foi concluída, significando assim que nenhuma outra entrada referente a conteúdo, personalizações ou seleção das definições de gráfico 109a e 109b será recebida, a menos que a aplicação de gráficos de computador 100 seja chamada em seguida para criar uma nova instância.
[0075] Se a instância tiver sido concluída, o fluxo de operações é concluído na operação de terminar 630. Caso contrário, o fluxo de operações se ramifica “Não” na segunda operação de consulta 616. A segunda operação de consulta 616 determina se o gráfico 108 renderizado atualmente no painel de gráficos 106 foi editado (isto é, personalizado) de qualquer maneira. Se este for o caso, a segunda operação de consulta 616 ramifica o fluxo operacional “Sim” na terceira operação de consulta 618. Caso contrário, a segunda operação de consulta 616 ramifica o fluxo operacional “Não” na quarta operação de consulta 624.
[0076] A terceira operação de consulta 618 examina a personalização detectada pela segunda operação de consulta 616 de modo a determinar se a personalização se refere a uma alteração de apresentação ou a uma alteração semântica. Conforme observado repetidamente acima, uma alteração de apresentação é uma alteração que é destinada a afetar apenas a definição de gráfico 109a e 109b específi- ca à qual o gráfico 108 exibido atualmente corresponde. Em contraste, uma alteração semântica é uma alteração que é destinada a afetar todas as definições de gráfico 109a e 109b que podem ser selecionadas pela aplicação de gráficos de computador 100. Qualquer propriedade que possa referir-se a um gráfico (108, por exemplo) ou a elementos gráficos dele, pode ser rotulada ou como uma propriedade de apresentação, e portanto submetida a alterações de apresentação, ou como uma propriedade semântica, e portanto sujeita a alterações semânticas. A implementação é uma questão de escolha e, para fins de exemplificação apenas, o tamanho de um elemento gráfico está sendo descrito aqui como uma propriedade de apresentação exemplar e a cor de um elemento gráfico está sendo descrita aqui como uma propriedade semântica exemplar.
[0077] Se a terceira operação de consulta 618 determinar que a personalização é uma alteração de apresentação, o fluxo de operações é ramificado “P” na primeira operação de atualização 620. A primeira operação de atualização 620 atualiza o modelo de apresentação 408 ou 410 recuperado com a personalização. Por outro lado, se a terceira operação de consulta 618 determinar que a personalização é uma alteração semântica, o fluxo de operações é ramificado “S” na segunda operação de atualização 622. A segunda operação de atualização 622 atualiza o modelo semântico 404 criado pela operação de criar 606 com a personalização. Tanto da primeira operação de atualização 620 quanto da segunda operação de atualização 622, o fluxo de operações passa de volta à operação de renderizar 612, que renderiza o gráfico 108 com base no modelo atualizado (isto é, ou o modelo de apresentação ou o modelo semântico). O fluxo de operações continua então conforme descrito anteriormente.
[0078] Nas circunstâncias em que a segunda operação de consulta 616 ramifica o fluxo operacional “Não”, a quarta operação de cônsul- ta 624 é chamada. A quarta operação de consulta 624 determina se o usuário ou outro programa de aplicação selecionou uma nova definição de gráfico 109a ou 109b para exibição no painel de gráficos 106. Tal seleção é interpretada como o desejo do usuário ou outro programa de aplicação de ver o conteúdo 115 recebido na operação de receber 604 com base em uma definição de gráfico 109a ou 109b diferente. Se a quarta operação de consulta 624 determinar que tal seleção fosse feita, o fluxo de operações passa para a operação de comutar 626.
[0079] A operação de comutar 626 cria o modelo de apresentação 408 ou 410 (ou recupera, se este modelo de apresentação já tiver sido criado) associado à nova definição de gráfico 109a ou 109b selecionada e em seguida passa o fluxo de operações de volta à operação de renderizar 612. A operação de renderizar 612 em seguida renderiza o gráfico 108 com base no modelo semântico 404 atual (isto é, ou o modelo semântico criado pela operação de criar 606 ou uma versão atualizada do mesmo) e no modelo de apresentação 408 ou 410 criado ou recuperado pela operação de comutar 626.
[0080] Entretanto, se a quarta operação de consulta 624 determinar que a seleção de uma nova definição de gráfico 109a 109b não ocorreu, o fluxo de operações se ramifica “Não” na quinta operação de consulta 627. A quinta operação de consulta 627 determina se o usuário ou outro programa de aplicação tem informações de entrada que resultam numa alteração na estrutura do conteúdo 115. Tal alteração na estrutura pode resultar do acréscimo ou supressão do conteúdo que correspondeu de fato (se removido) ou correspondería (se acrescentado) a um elemento gráfico no gráfico 108. Tal remoção ou supressão pode incluir a formatação de alterações que resulte no acréscimo ou supressão dos elementos gráficos. Se a quinta operação de consulta 627 detectar uma alteração no conteúdo 115 que resulte em uma alteração estrutural no gráfico 108, o fluxo de operações é ramificado “Sim” na terceira operação de atualização 628. Caso contrário, o fluxo de operações ramifica-se “Não” na primeira operação de consulta 614 e continua conforme descrito anteriormente.
[0081] A terceira operação de atualização 628 atualiza tanto o modelo de apresentação 408 ou 410 atualmente em uso (isto é, ou o modelo de apresentação criado pela operação de criar 606 ou um modelo de apresentação criado ou recuperado pela operação de comutar 626) quanto o modelo semântico 404 de modo a refletir as alterações no conteúdo 115. Da terceira operação de atualização 628, o fluxo de operações passa para a operação de renderizar 612, que renderiza o gráfico 108 com base no modelo de apresentação 408 ou 410 atualizado e no modelo semântico 404 atualizado. Da operação de renderizar 612, o fluxo de operações continua conforme descrito anteriormente.
[0082] Embora a presente invenção tenha sido descrita em linguagem específica dos aspectos estruturais, atos metodológicos e meios passíveis de leitura por computador que contêm tais atos, deve ficar entendido que a presente invenção definida nas reivindicações anexas não está limitada necessariamente à estrutura, atos ou meios específicos descritos. Os versados na técnica reconhecerão outras modalidades ou aperfeiçoamentos que estejam dentro do alcance e espírito da presente invenção. Por exemplo, a seqüência de execução das operações dentro do processo de exibição 600 é mostrada de acordo com uma modalidade preferida. De acordo com outras modalidades, a seqüência de execução destas operações pode ser alterada. Por exemplo, a operação de criar 606 pode ser executada no tempo antes da operação de recuperar conteúdo 604 sem que abandone o alcance da presente invenção.
[0083] Além disto, embora seja descrita uma correlação de 1:1 en- tre os modelos de apresentação (408 e 410, por exemplo) e as definições de gráfico (109a e 109b, por exemplo), mais de um modelo de apresentação (408 e 410, por exemplo) pode estar associado a uma única definição de gráfico 109a ou 109b de acordo com uma modalidade da presente invenção. Além do mais, deve-se entender que a UI 102 pode ser construída de modo a ter menos ou mais que três painéis (104, 105 e 106, por exemplo). Na verdade, a funcionalidade em um destes painéis (104, 105 e 106, por exemplo) pode ser alternativa ou adicionalmente apresentada em outros tipos de componentes de interface de usuário gráfica, tais como, por exemplo, barras de ferramentas, miniaturas, barras de menu, linhas de comando, caixas de diálogos, etc.
[0084] Além disso também, embora os modelos de apresentação (408, 410, por exemplo) sejam descritos aqui como sendo específicos de cada definição de gráfico, como, por exemplo, 109a e 109b, outras modalidades contempladas dentro do alcance da presente invenção referem-se a modelos de apresentação (408, 410, por exemplo) que persistem através de várias definições de gráfico 306. Nestas modalidades, as definições de gráfico, como 109a e 109b, por exemplo, com características semelhantes são agrupadas em conjunto em classificações de gráfico, e os modelos de apresentação são específicos destas classificações e não individualmente dos tipos que constituem as classificações. Por exemplo, uma classificação pode agrupar em conjunto todas as definições de gráfico, como 109a e 109b, que tenham elementos gráficos acionáveis para movimento posicionai de maneira radial, de modo que estes movimentos persistam através de todas as definições de gráfico nesta classificação. De maneira semelhante, outra classificação pode agrupar em conjunto todas as definições de gráfico, como 109a e 109b, por exemplo, acionáveis para movimento posicionai com relação a um sistema de coordenadas x-y.
REIVINDICAÇÕES

Claims (14)

1. Método implementado por computador para renderizar diagramas hierárquicos gráficos para exibição por um dispositivo de exibição caracterizado pelo fato de que compreende: recebendo texto de conteúdo em um painel de conteúdo, o texto do conteúdo a ser representado visualmente em um primeiro diagrama hierárquico gráfico; recebendo a seleção de uma primeira definição gráfica para renderizar o primeiro diagrama hierárquico gráfico a partir de um painel de galeria, a primeira definição gráfica especificando um primeiro elemento gráfico; renderizar o primeiro diagrama hierárquico gráfico em um painel de desenho no dispositivo de exibição com base no texto de conteúdo e na primeira definição gráfica, o primeiro diagrama gráfico hierárquico compreendendo o primeiro elemento gráfico especificado pela primeira definição gráfica, o primeiro elemento gráfico incluindo o texto de conteúdo recebido no painel de conteúdo; receber uma primeira personalização para uma propriedade de apresentação do primeiro elemento gráfico no painel de desenho e em resposta à primeira personalização: atualizar a propriedade de apresentação do primeiro elemento gráfico com a primeira personalização, de modo que o primeiro elemento gráfico inclua a propriedade de apresentação atualizada; receber uma segunda personalização para uma propriedade semântica do primeiro elemento gráfico no painel de desenho e em resposta à segunda personalização: atualizar a propriedade semântica do primeiro elemento gráfico com a segunda personalização, de modo que o primeiro elemento gráfico inclua a propriedade semântica atualizada; e receber uma seleção de uma segunda definição gráfica, em que a segunda definição gráfica não compreende a propriedade semântica atualizada e a propriedade de apresentação atualizada; e em resposta à seleção da segunda definição gráfica, rende-rizar um segundo diagrama hierárquico gráfico que compreende um segundo elemento gráfico que inclui o texto de conteúdo e a propriedade semântica atualizada, mas não a propriedade de apresentação atualizada.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o texto de conteúdo possui itens e em que a primeira definição gráfica selecionada é uma dentre uma pluralidade de possíveis definições gráficas, o método ainda compreendendo: ao receber a primeira personalização, atualizar um modelo de apresentação definindo propriedades de apresentação para a primeira definição gráfica com a propriedade de apresentação atualizada do primeiro elemento gráfico; e ao receber a segunda personalização, atualizar um modelo semântico definindo propriedades semânticas para todas as definições gráficas possíveis com a propriedade semântica atualizada do primeiro elemento gráfico.
3. Método, de acordo com a reivindicação 2, caracterizado pelo fato de que ainda compreende: receber um pedido para representar visualmente o texto do conteúdo usando uma nova definição gráfica; e criar um novo diagrama hierárquico gráfico baseado na nova definição gráfica e no modelo semântico atualizado, de modo que o novo diagrama hierárquico gráfico seja exibido com a segunda personalização.
4. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o texto de conteúdo compreende linhas hierárquicas de texto.
5. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a segunda personalização refere-se ao movimento posicionai do elemento gráfico no primeiro diagrama hierárquico gráfico em relação a outros elementos gráficos no primeiro diagrama hierárquico gráfico.
6. Sistema para renderizar gráficos para exibição em uma tela de exibição caracterizado pelo fato de que compreende: um processador para executar instruções executáveis do computador: e um meio de armazenamento por computador armazenando instruções executáveis por computador que, quando executadas, fornecem: uma pluralidade de possíveis definições gráficas, cada uma das possíveis definições gráficas especificando propriedades padrão para gráficos associados operáveis para representar o conteúdo; um mecanismo de personalização operável para criar um primeiro diagrama hierárquico gráfico correspondente a uma primeira definição gráfica e um segundo diagrama hierárquico gráfico correspondente a uma segunda definição gráfica, de modo que o primeiro diagrama hierárquico gráfico e o segundo diagrama hierárquico gráfico tenham propriedades semelhantes; e uma interface de usuário que apresenta uma representação gráfica para cada uma da pluralidade de possíveis definições gráficas para seleção por um usuário, a interface de usuário incluindo: um painel de conteúdo para receber entrada a partir do usuário e exibir o conteúdo para edição pelo usuário; um painel gráfico que permite a visualização e edição de conteúdo gráfico; um painel de galeria que apresenta a pluralidade de possíveis definições gráficas; em que: em resposta à seleção da primeira representação gráfica associada à primeira definição gráfica, exibe o primeiro diagrama hierárquico gráfico na tela de exibição conforme definido pelo mecanismo de personalização; em resposta a receber uma primeira personalização para uma propriedade de apresentação associada ao conteúdo gráfico no painel de gráficos, atualiza a propriedade de apresentação com a primeira personalização no primeiro diagrama hierárquico gráfico; em resposta a receber uma segunda personalização para uma propriedade semântica associada ao conteúdo gráfico no painel de gráficos, atualiza a propriedade semântica com a segunda personalização no primeiro diagrama hierárquico gráfico; e em resposta à seleção da segunda representação gráfica associada à segunda definição gráfica, em que a segunda definição gráfica não compreende a primeira personalização e a segunda personalização, exibe o segundo diagrama hierárquico gráfico que compreende conteúdo gráfico que inclui a propriedade semântica atualizada, mas não a propriedade de apresentação atualizada.
7. Sistema, de acordo com a reivindicação 6, caracterizado pelo fato de que um modelo de apresentação responde à seleção da primeira definição gráfica na interface de usuário ao permitir que o mecanismo de personalização personalize o primeiro diagrama hierárquico gráfico, em que o mecanismo de personalização usa um modelo semântico e o modelo de apresentação específico para a primeira definição gráfica para definir o primeiro diagrama hierárquico gráfico com propriedades semânticas semelhantes a todas as definições gráficas possíveis e propriedades de apresentação específicas para a primeira definição gráfica.
8. Sistema, de acordo com a reivindicação 6, caracterizado pelo fato de que a interface de usuário compreende: o painel da galeria exibindo as representações gráficas para cada uma da pluralidade de definições gráficas possíveis para seleção pelo usuário; e o painel de gráficos exibindo o primeiro diagrama hierárquico gráfico para edição pelo usuário em resposta à seleção da primeira definição gráfica no painel da galeria.
9. Sistema, de acordo com a reivindicação 6, caracterizado pelo fato de que o mecanismo de personalização atualiza um modelo semântico em resposta ao recebimento da segunda personalização enquanto o primeiro diagrama hierárquico gráfico é exibido no painel de gráficos de modo que, em resposta a uma seleção subseqüente pelo usuário da segunda definição gráfica através do painel da galeria, o mecanismo de personalização define o segundo diagrama hierárquico gráfico para ter a propriedade semântica atualizada.
10. Sistema, de acordo com a reivindicação 8, caracterizado pelo fato de que o mecanismo de personalização atualiza um modelo de apresentação específico para a primeira definição gráfica em resposta à recepção da primeira personalização, enquanto o primeiro diagrama hierárquico gráfico é exibido no painel de gráficos para uso posterior pelo mecanismo de personalização para definir o primeiro diagrama hierárquico gráfico.
11. Método implementado pelo computador para renderizar um ou mais diagramas gráficos para exibição por um dispositivo de exibição caracterizado pelo fato de que compreende: receber o texto de conteúdo para ser representado visualmente em um primeiro diagrama gráfico em um painel de conteúdo; receber a seleção de uma primeira definição gráfica para renderizar o primeiro diagrama gráfico a partir de um painel de galeria, a primeira definição gráfica especificando um primeiro elemento gráfico; renderizar o primeiro diagrama gráfico em um painel de desenho no dispositivo de exibição com base no texto de conteúdo e na primeira definição gráfica, o primeiro diagrama gráfico compreendendo o texto de conteúdo dentro do primeiro elemento gráfico; em resposta a receber uma alteração no texto do conteúdo, atualizar o texto gráfico no primeiro elemento gráfico do primeiro diagrama gráfico; em resposta a receber uma alteração em uma propriedade de apresentação do primeiro elemento gráfico, atualizar a propriedade de apresentação no primeiro elemento gráfico; em resposta a receber uma alteração em uma propriedade semântica do primeiro elemento gráfico, atualizar a propriedade semântica no primeiro elemento gráfico; e em resposta a receber uma seleção de uma segunda definição gráfica para renderizar um segundo diagrama gráfico especificando um segundo elemento gráfico, em que a segunda definição gráfica não compreende a propriedade semântica atualizada e a propriedade de apresentação atualizada, renderizar o segundo diagrama gráfico incluindo o texto gráfico atualizado e a propriedade semântica atualizada, mas não a propriedade de apresentação atualizada no segundo elemento gráfico.
12. Método, de acordo com a reivindicação 11, caracterizado pelo fato de que o primeiro diagrama gráfico é hierárquico.
13. Método, de acordo com a reivindicação 12, caracterizado pelo fato de que o primeiro diagrama gráfico é um diagrama de roda.
14. Método, de acordo com a reivindicação 12, caracterizado pelo fato de que o segundo diagrama gráfico é um diagrama de pirâmide.
BRPI0503878-2A 2004-09-30 2005-09-26 Method implemented by computer and system for rendering hierarchical diagrams graphics for display by an exposure device BRPI0503878B1 (pt)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US10/957.103 2004-09-30
US10/957,103 US8510657B2 (en) 2004-09-30 2004-09-30 Editing the text of an arbitrary graphic via a hierarchical list
US11/013.655 2004-12-15
US11/013,655 US8134575B2 (en) 2004-09-30 2004-12-15 Maintaining graphical presentations based on user customizations

Publications (2)

Publication Number Publication Date
BRPI0503878A BRPI0503878A (pt) 2006-05-16
BRPI0503878B1 true BRPI0503878B1 (pt) 2017-11-14

Family

ID=35447284

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0503878-2A BRPI0503878B1 (pt) 2004-09-30 2005-09-26 Method implemented by computer and system for rendering hierarchical diagrams graphics for display by an exposure device

Country Status (12)

Country Link
US (4) US8134575B2 (pt)
EP (1) EP1643451A1 (pt)
JP (1) JP4860218B2 (pt)
KR (1) KR101183351B1 (pt)
CN (1) CN102044083B (pt)
AU (1) AU2005203711B2 (pt)
BR (1) BRPI0503878B1 (pt)
CA (1) CA2517399C (pt)
MX (1) MXPA05009277A (pt)
MY (1) MY150137A (pt)
RU (2) RU2524473C2 (pt)
TW (1) TWI410887B (pt)

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080143725A1 (en) * 2004-02-09 2008-06-19 Smart Technologies Inc. Connected and overlapped shapes enhancements
US8134575B2 (en) 2004-09-30 2012-03-13 Microsoft Corporation Maintaining graphical presentations based on user customizations
US8510657B2 (en) 2004-09-30 2013-08-13 Microsoft Corporation Editing the text of an arbitrary graphic via a hierarchical list
US7348982B2 (en) * 2004-09-30 2008-03-25 Microsoft Corporation Method, system, and computer-readable medium for creating and laying out a graphic within an application program
US7567565B2 (en) 2005-02-01 2009-07-28 Time Warner Cable Inc. Method and apparatus for network bandwidth conservation
US20070157117A1 (en) * 2005-12-20 2007-07-05 Nokia Corporation Apparatus, method and computer program product providing user interface configurable command placement logic
US9170987B2 (en) * 2006-01-18 2015-10-27 Microsoft Technology Licensing, Llc Style extensibility applied to a group of shapes by editing text files
US8438486B2 (en) * 2006-02-09 2013-05-07 Microsoft Corporation Automatically converting text to business graphics
US8458753B2 (en) 2006-02-27 2013-06-04 Time Warner Cable Enterprises Llc Methods and apparatus for device capabilities discovery and utilization within a content-based network
US8170065B2 (en) 2006-02-27 2012-05-01 Time Warner Cable Inc. Methods and apparatus for selecting digital access technology for programming and data delivery
US7589750B1 (en) * 2006-03-15 2009-09-15 Adobe Systems, Inc. Methods and apparatus for arranging graphical objects
US8006179B2 (en) * 2006-07-31 2011-08-23 Microsoft Corporation Wrapping nodes in a drawing canvas
US7743079B1 (en) * 2006-07-31 2010-06-22 Microsoft Corporation Managing data across a semantic data view and a presentation data view
US20080235746A1 (en) 2007-03-20 2008-09-25 Michael James Peters Methods and apparatus for content delivery and replacement in a network
US7770200B2 (en) * 2007-07-24 2010-08-03 Time Warner Cable Inc. Methods and apparatus for format selection for network optimization
US7802286B2 (en) * 2007-07-24 2010-09-21 Time Warner Cable Inc. Methods and apparatus for format selection for network optimization
US8561116B2 (en) 2007-09-26 2013-10-15 Charles A. Hasek Methods and apparatus for content caching in a video network
US8099757B2 (en) 2007-10-15 2012-01-17 Time Warner Cable Inc. Methods and apparatus for revenue-optimized delivery of content in a network
US8813143B2 (en) 2008-02-26 2014-08-19 Time Warner Enterprises LLC Methods and apparatus for business-based network resource allocation
US8411085B2 (en) * 2008-06-27 2013-04-02 Microsoft Corporation Constructing view compositions for domain-specific environments
US8620635B2 (en) * 2008-06-27 2013-12-31 Microsoft Corporation Composition of analytics models
US20090322739A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Visual Interactions with Analytics
US9866609B2 (en) 2009-06-08 2018-01-09 Time Warner Cable Enterprises Llc Methods and apparatus for premises content distribution
US20100318898A1 (en) * 2009-06-11 2010-12-16 Hewlett-Packard Development Company, L.P. Rendering definitions
US9330503B2 (en) 2009-06-19 2016-05-03 Microsoft Technology Licensing, Llc Presaging and surfacing interactivity within data visualizations
US8531451B2 (en) * 2009-06-19 2013-09-10 Microsoft Corporation Data-driven visualization transformation
US8692826B2 (en) * 2009-06-19 2014-04-08 Brian C. Beckman Solver-based visualization framework
US8866818B2 (en) * 2009-06-19 2014-10-21 Microsoft Corporation Composing shapes and data series in geometries
US8788574B2 (en) * 2009-06-19 2014-07-22 Microsoft Corporation Data-driven visualization of pseudo-infinite scenes
US20100325564A1 (en) * 2009-06-19 2010-12-23 Microsoft Corporation Charts in virtual environments
US8493406B2 (en) * 2009-06-19 2013-07-23 Microsoft Corporation Creating new charts and data visualizations
US9513403B2 (en) * 2009-07-27 2016-12-06 Peck Labs, Inc Methods and systems for displaying customized icons
US8799325B2 (en) 2010-03-12 2014-08-05 Microsoft Corporation Reordering nodes in a hierarchical structure
US9043296B2 (en) 2010-07-30 2015-05-26 Microsoft Technology Licensing, Llc System of providing suggestions based on accessible and contextual information
CA2714228C (en) * 2010-09-16 2011-10-11 Ibm Canada Limited - Ibm Canada Limitee Complex input to image transformation for distribution
JP5724344B2 (ja) * 2010-12-06 2015-05-27 株式会社リコー 画像形成装置、カスタマイズ制御方法及びカスタマイズ制御プログラム
US20120169739A1 (en) * 2010-12-29 2012-07-05 Thomas Meder 360° multidimensional analytical visualizations
US8786620B2 (en) * 2011-11-14 2014-07-22 Microsoft Corporation Discarding idle graphical display components from memory and processing
US9996566B2 (en) * 2012-02-20 2018-06-12 Wix.Com Ltd. Visual design system for generating a visual data structure associated with a semantic composition based on a hierarchy of components
US11188509B2 (en) 2012-02-20 2021-11-30 Wix.Com Ltd. System and method for generating a visual data structure associated with business information based on a hierarchy of components
US20140282188A1 (en) * 2013-03-15 2014-09-18 Moresteam Development Llc Computer graphical user interface, system, and method
USD737833S1 (en) * 2013-06-09 2015-09-01 Apple Inc. Display screen or portion thereof with graphical user interface
USD742893S1 (en) * 2013-06-09 2015-11-10 Apple Inc. Display screen or portion thereof with graphical user interface
US9619128B2 (en) 2013-07-01 2017-04-11 Microsoft Technology Licensing, Llc Dynamic presentation prototyping and generation
US20150070358A1 (en) * 2013-09-12 2015-03-12 Marcello Judah Sachs Thotput
WO2015042901A1 (en) 2013-09-29 2015-04-02 Microsoft Technology Licensing, Llc Media presentation effects
US9349142B2 (en) 2013-10-09 2016-05-24 Ebay Inc. Reflow of data presentation using tracking data
US10157593B2 (en) 2014-02-24 2018-12-18 Microsoft Technology Licensing, Llc Cross-platform rendering engine
US10846336B2 (en) * 2014-10-30 2020-11-24 Microsoft Technology Licensing, Llc Authoring tools for synthesizing hybrid slide-canvas presentations
US9971334B2 (en) 2015-04-09 2018-05-15 Kwik Mark, Inc. Inscription positioning apparatuses, systems, and methods of making and using the same
RU2606309C2 (ru) * 2015-06-09 2017-01-10 Общество С Ограниченной Ответственностью "Яндекс" Способ создания аннотированного поискового индекса и сервер, используемый в нем
USD788161S1 (en) 2015-09-08 2017-05-30 Apple Inc. Display screen or portion thereof with graphical user interface
US9851882B2 (en) * 2015-12-27 2017-12-26 Thunder Power New Energy Vehicle Development Company Limited Fully designable vehicle information panel interface
US10687115B2 (en) 2016-06-01 2020-06-16 Time Warner Cable Enterprises Llc Cloud-based digital content recorder apparatus and methods
USD825612S1 (en) 2016-07-27 2018-08-14 Apple Inc. Display screen or portion thereof with graphical user interface
USD962954S1 (en) 2016-09-06 2022-09-06 Apple Inc. Display screen or portion thereof with graphical user interface
USD841677S1 (en) 2017-06-04 2019-02-26 Apple Inc. Display screen or portion thereof with graphical user interface
US10984195B2 (en) * 2017-06-23 2021-04-20 General Electric Company Methods and systems for using implied properties to make a controlled-english modelling language more natural
USD873284S1 (en) 2017-09-09 2020-01-21 Apple Inc. Electronic device with graphical user interface
USD987669S1 (en) 2017-09-11 2023-05-30 Apple Inc. Electronic device with graphical user interface
US10409895B2 (en) * 2017-10-17 2019-09-10 Qualtrics, Llc Optimizing a document based on dynamically updating content
US20190129615A1 (en) * 2017-10-30 2019-05-02 Futurewei Technologies, Inc. Apparatus and method for simplifying repeat performance of a prior performed task based on a context of a mobile device
CA2990205A1 (en) * 2017-12-28 2019-06-28 Techinsights Inc. Reverse engineering data analysis system, and integrated circuit component data processing tool and method thereof
US10939142B2 (en) 2018-02-27 2021-03-02 Charter Communications Operating, Llc Apparatus and methods for content storage, distribution and security within a content distribution network
USD880495S1 (en) 2018-06-03 2020-04-07 Apple Inc. Electronic device with graphical user interface
USD962244S1 (en) 2018-10-28 2022-08-30 Apple Inc. Electronic device with graphical user interface
WO2020206052A1 (en) * 2019-04-02 2020-10-08 Material Technologies, Llc Electronic palette apparatus and methods
USD913315S1 (en) 2019-05-31 2021-03-16 Apple Inc. Electronic device with graphical user interface
USD924912S1 (en) 2019-09-09 2021-07-13 Apple Inc. Display screen or portion thereof with graphical user interface
US11520842B2 (en) 2020-07-16 2022-12-06 International Business Machines Corporation Figure driven search query
US11200715B1 (en) 2021-04-14 2021-12-14 International Business Machines Corporation Automated creation and design of presentation charts

Family Cites Families (150)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1982000726A1 (en) 1980-08-13 1982-03-04 Inc Comshare A machine for generating graphic charts
US4531150A (en) 1982-11-05 1985-07-23 Konishiroku Photo Industry Co., Ltd. Image display system
US4686522A (en) 1985-02-19 1987-08-11 International Business Machines Corporation Method of editing graphic objects in an interactive draw graphic system using implicit editing actions
US5337402A (en) 1986-06-12 1994-08-09 Keiji Kitagawa Graphic data processing apparatus using displayed graphics for application program selection
JPS6438866A (en) 1987-08-05 1989-02-09 Hitachi Ltd Document editing device
US5214755A (en) * 1989-04-25 1993-05-25 Microsoft Corporation Document processing method and system
JPH03177964A (ja) 1989-12-07 1991-08-01 Toshiba Corp 文書整形装置
JP3093247B2 (ja) 1990-09-21 2000-10-03 株式会社東芝 プレゼンテーション支援環境システム
US5649216A (en) * 1991-05-17 1997-07-15 Joseph S. Sieber Method and apparatus for automated layout of text and graphic elements
CA2048039A1 (en) * 1991-07-19 1993-01-20 Steven Derose Data processing system and method for generating a representation for and random access rendering of electronic documents
US5903454A (en) 1991-12-23 1999-05-11 Hoffberg; Linda Irene Human-factored interface corporating adaptive pattern recognition based controller apparatus
US5404439A (en) * 1992-04-15 1995-04-04 Xerox Corporation Time-space object containment for graphical user interface
US5426729A (en) * 1992-06-24 1995-06-20 Microsoft Corporation Method and system for nonuniformly adjusting a predefined shape
JPH08506670A (ja) * 1993-01-22 1996-07-16 タリジェント インコーポレイテッド フレキシブル・ネットワーク・システム
JP2620576B2 (ja) 1993-04-15 1997-06-18 インターナショナル・ビジネス・マシーンズ・コーポレイション ユーザが要求したフォントに従ってグラフィカル・ユーザ・インターフェースを調節する方法及びシステム
EP0622728B1 (en) * 1993-04-30 2000-03-01 International Business Machines Corporation Region layout in a view on a graphical display screen
US5909220A (en) * 1993-05-10 1999-06-01 Sandow; Robin Interactive computerized image coloring systems and methods for processing combinations of color with automated subroutines and color standardization for diverse color systems
US5479593A (en) 1993-06-21 1995-12-26 Electronic Data Systems Corporation System and method for improved solving of equations employed during parametric geometric modeling
US5535134A (en) * 1994-06-03 1996-07-09 International Business Machines Corporation Object placement aid
US5596691A (en) * 1994-06-15 1997-01-21 Claris Corporation Computer system and method for manipulating the display of drawings
WO1996013006A1 (en) * 1994-10-20 1996-05-02 Mark Alan Zimmer Digital mark-making method
US5748964A (en) * 1994-12-20 1998-05-05 Sun Microsystems, Inc. Bytecode program interpreter apparatus and method with pre-verification of data type restrictions
US5669006A (en) * 1995-02-23 1997-09-16 International Business Machines Corporation Method for automatically obtaining spatial layout for multimedia presentations
US5619631A (en) * 1995-06-07 1997-04-08 Binaryblitz Method and apparatus for data alteration by manipulation of representational graphs
US5673401A (en) 1995-07-31 1997-09-30 Microsoft Corporation Systems and methods for a customizable sprite-based graphical user interface
US5999189A (en) * 1995-08-04 1999-12-07 Microsoft Corporation Image compression to reduce pixel and texture memory requirements in a real-time image generator
US5872867A (en) * 1995-08-04 1999-02-16 Sarnoff Corporation Method and apparatus for generating image textures
JPH09109351A (ja) 1995-10-16 1997-04-28 Toppan Printing Co Ltd 表示情報レイアウト装置
US7124359B2 (en) 1996-01-11 2006-10-17 Canon Kabushiki Kaisha Image edit device adapted to rapidly lay-out photographs into templates with means for preview and correction by user
US6173286B1 (en) * 1996-02-29 2001-01-09 Nth Degree Software, Inc. Computer-implemented optimization of publication layouts
US5818447A (en) * 1996-06-06 1998-10-06 Microsoft Corporation System and method for in-place editing of an electronic mail message using a separate program
US6057858A (en) * 1996-08-07 2000-05-02 Desrosiers; John J. Multiple media fonts
JP4138011B2 (ja) 1996-09-09 2008-08-20 マイクロソフト コーポレーション 媒体でデザインするためのコンテンツの自動的なレイアウトおよび書式設定
US5903902A (en) * 1996-09-09 1999-05-11 Design Intelligence, Inc. Design engine with tree and component structure
US5956737A (en) * 1996-09-09 1999-09-21 Design Intelligence, Inc. Design engine for fitting content to a medium
US5973692A (en) 1997-03-10 1999-10-26 Knowlton; Kenneth Charles System for the capture and indexing of graphical representations of files, information sources and the like
US6061659A (en) 1997-06-03 2000-05-09 Digital Marketing Communications, Inc. System and method for integrating a message into a graphical environment
US6321243B1 (en) 1997-06-27 2001-11-20 Microsoft Corporation Laying out a paragraph by defining all the characters as a single text run by substituting, and then positioning the glyphs
US6288726B1 (en) 1997-06-27 2001-09-11 Microsoft Corporation Method for rendering glyphs using a layout services library
US5956043A (en) * 1997-09-18 1999-09-21 Novell, Inc. Textured tile rotation system and method
US6774899B1 (en) 1997-09-18 2004-08-10 Mitsubishi Electric Research Laboratories, Inc. Drawing graphs using user selectable visual oragnization features and/or other user controlled constraints
AU761202B2 (en) 1997-09-22 2003-05-29 Sony Corporation Generation of a bit stream containing binary image/audio data that is multiplexed with a code defining an object in ascii format
US6289502B1 (en) * 1997-09-26 2001-09-11 Massachusetts Institute Of Technology Model-based software design and validation
US6204859B1 (en) * 1997-10-15 2001-03-20 Digital Equipment Corporation Method and apparatus for compositing colors of images with memory constraints for storing pixel data
KR100243385B1 (ko) 1997-10-28 2000-02-01 정선종 멀티미디어 프리젠테이션 문서 작성 방법
US6072480A (en) * 1997-11-05 2000-06-06 Microsoft Corporation Method and apparatus for controlling composition and performance of soundtracks to accompany a slide show
AUPP027397A0 (en) 1997-11-07 1997-12-04 Documotion Research, Inc. Tamper-evident form for securely carrying confidential information
JP3377419B2 (ja) * 1997-11-11 2003-02-17 インターナショナル・ビジネス・マシーンズ・コーポレーション 命令列生成方法及び装置、変換方法、及びコンピュータ
US6289505B1 (en) * 1997-11-18 2001-09-11 Sun Microsystems, Inc. Method, apparatus and computer programmed product for binary re-optimization using a high level language compiler
RU2142162C1 (ru) 1998-01-19 1999-11-27 Кашик Алексей Сергеевич Способ динамической визуализации данных об объекте
US6081816A (en) * 1998-03-18 2000-06-27 Microsoft Corporation Method for placing text around polygons and other constraints
US6189132B1 (en) * 1998-04-09 2001-02-13 International Business Machines Corporation Design rule correction system and method
AU3966099A (en) 1998-04-24 1999-11-16 Starmine, L.L.C. Security analyst performance tracking and analysis system and method
US6256650B1 (en) * 1998-05-18 2001-07-03 Microsoft Corporation Method and system for automatically causing editable text to substantially occupy a text frame
US6301704B1 (en) * 1998-06-16 2001-10-09 Silicon Graphics, Inc. Method, system, and computer program product for using static single assignment form as a program representation and a medium for performing global scalar optimization
US6405225B1 (en) * 1998-06-17 2002-06-11 Microsoft Corporation Integrating email functionality into a word processor by incorporating an email GUI within the word processor
US6204849B1 (en) 1998-07-17 2001-03-20 Autodesk, Inc. Non-ambiguous graphics selection
US6161098A (en) 1998-09-14 2000-12-12 Folio (Fn), Inc. Method and apparatus for enabling small investors with a portfolio of securities to manage taxable events within the portfolio
US6166738A (en) * 1998-09-14 2000-12-26 Microsoft Corporation Methods, apparatus and data structures for providing a user interface, which exploits spatial memory in three-dimensions, to objects
US6715130B1 (en) 1998-10-05 2004-03-30 Lockheed Martin Corporation Software requirements metrics and evaluation process
US6305012B1 (en) * 1998-12-03 2001-10-16 International Business Machines Corporation Method and apparatus for dynamic selection of instructions for compiling using tags
US6957191B1 (en) 1999-02-05 2005-10-18 Babcock & Brown Lp Automated financial scenario modeling and analysis tool having an intelligent graphical user interface
US6456305B1 (en) 1999-03-18 2002-09-24 Microsoft Corporation Method and system for automatically fitting a graphical display of objects to the dimensions of a display window
US6308322B1 (en) * 1999-04-06 2001-10-23 Hewlett-Packard Company Method and apparatus for reduction of indirect branch instruction overhead through use of target address hints
US6691282B1 (en) 1999-06-22 2004-02-10 Nortel Networks Limited Method and apparatus for displaying and navigating containment hierarchies
US6667750B1 (en) * 1999-07-30 2003-12-23 Curl Corporation Multiple pass layout of graphical objects with elastics
US6826727B1 (en) * 1999-11-24 2004-11-30 Bitstream Inc. Apparatus, methods, programming for automatically laying out documents
US7246316B2 (en) * 1999-11-30 2007-07-17 Siebel Systems, Inc. Methods and apparatus for automatically generating presentations
EP1111543A3 (en) 1999-12-22 2002-11-27 Adobe Systems, Inc. Method and apparatus for painting groups of objects
US6593933B1 (en) * 2000-01-13 2003-07-15 Microsoft Corporation Block-based synthesis of texture in computer rendered images
US6448973B1 (en) * 2000-01-13 2002-09-10 Microsoft Corporation Virtual texture
US7055095B1 (en) * 2000-04-14 2006-05-30 Picsel Research Limited Systems and methods for digital document processing
US20010032151A1 (en) 2000-04-18 2001-10-18 Glenn Paul Internet presentation system
US20010051962A1 (en) * 2000-06-08 2001-12-13 Robert Plotkin Presentation customization
US20020111969A1 (en) * 2000-09-28 2002-08-15 Halstead Robert H. System and method for processing graphical objects for layout using an elastic difference operation
US6774889B1 (en) * 2000-10-24 2004-08-10 Microsoft Corporation System and method for transforming an ordinary computer monitor screen into a touch screen
US7231602B1 (en) 2000-11-29 2007-06-12 Microsoft Corporation Live preview for reformatting document text
US20020065852A1 (en) * 2000-11-30 2002-05-30 Matt Hendrickson Online guided resume creation system that allows dynamic style formatting
US6944830B2 (en) * 2000-12-21 2005-09-13 Xerox Corporation System and method for browsing hierarchically based node-link structures based on an estimated degree of interest
US6950981B2 (en) 2000-12-29 2005-09-27 International Business Machines Corporation Method and system for providing task information in a place
US6973618B2 (en) 2000-12-29 2005-12-06 International Business Machines Corporation Method and system for importing MS office forms
US6791582B2 (en) 2000-12-29 2004-09-14 International Business Machines Corporation Method and system for identifying and displaying information that is new or has been updated in a place
US6701311B2 (en) * 2001-02-07 2004-03-02 International Business Machines Corporation Customer self service system for resource search and selection
US6941478B2 (en) 2001-04-13 2005-09-06 Nokia, Inc. System and method for providing exploit protection with message tracking
CN1384454A (zh) 2001-05-01 2002-12-11 株式会社东芝 信息概括系统和信息概括方法
MXPA03011976A (es) 2001-06-22 2005-07-01 Nervana Inc Sistema y metodo para la recuperacion, manejo, entrega y presentacion de conocimientos.
US6826729B1 (en) * 2001-06-29 2004-11-30 Microsoft Corporation Gallery user interface controls
US20040205602A1 (en) * 2001-07-25 2004-10-14 Douglas Croeni Page layout design using geometric interference schema
JP2003044464A (ja) 2001-07-31 2003-02-14 Seiko Epson Corp レイアウト装置及びレイアウトプログラム
JP2003052582A (ja) 2001-08-10 2003-02-25 Toshiba Tec Corp 掃除装置
EP1298524A1 (en) 2001-09-28 2003-04-02 Ricoh Company, Ltd. Conference support apparatus, information processor, teleconference system and computer product
RU2218602C2 (ru) * 2001-11-08 2003-12-10 Карев Павел Викторович Способ цветокодового отображения переменных многопараметрических состояний системы или процесса
AUPR962001A0 (en) 2001-12-19 2002-01-24 Redbank Manor Pty Ltd Document display system and method
US20050001837A1 (en) 2002-03-01 2005-01-06 Shannon Michael P. Method and internet based software for graphing sport statistics
US20030218641A1 (en) 2002-05-23 2003-11-27 International Business Machines Corporation Method and system for navigating a hierarchical structure in a data processing system
TW578067B (en) 2002-06-21 2004-03-01 Inst Information Industry Knowledge graphic system and method based on ontology
US20040001106A1 (en) 2002-06-26 2004-01-01 John Deutscher System and process for creating an interactive presentation employing multi-media components
US6894726B2 (en) 2002-07-05 2005-05-17 Thomson Licensing S.A. High-definition de-interlacing and frame doubling circuit and method
US7107525B2 (en) * 2002-07-23 2006-09-12 Xerox Corporation Method for constraint-based document generation
US7058902B2 (en) 2002-07-30 2006-06-06 Microsoft Corporation Enhanced on-object context menus
US20040041838A1 (en) 2002-09-04 2004-03-04 Adusumilli Venkata J.R.B. Method and system for graphing data
US7945846B2 (en) * 2002-09-06 2011-05-17 Oracle International Corporation Application-specific personalization for data display
US20040145603A1 (en) 2002-09-27 2004-07-29 Soares Stephen Michael Online multimedia presentation builder and presentation player
KR100504476B1 (ko) 2002-10-30 2005-08-01 엘지전자 주식회사 아이콘 제어를 위한 방법 및 디스플레이 시스템
KR20040041979A (ko) 2002-11-12 2004-05-20 한국전자통신연구원 그래픽 사용자 인터페이스
AU2002952711A0 (en) 2002-11-18 2002-11-28 Typefi Systems Pty Ltd A method of formatting documents
KR100484181B1 (ko) 2002-12-02 2005-04-20 삼성전자주식회사 멀티미디어 문서 저작 장치 및 방법
CA2414047A1 (en) * 2002-12-09 2004-06-09 Corel Corporation System and method of extending scalable vector graphics capabilities
JP4241325B2 (ja) 2002-12-25 2009-03-18 セイコーエプソン株式会社 レイアウトシステム
TW562221U (en) * 2002-12-27 2003-11-11 Hon Hai Prec Ind Co Ltd Mounting device for disk drive
US20040133854A1 (en) * 2003-01-08 2004-07-08 Black Karl S. Persistent document object model
WO2004068320A2 (en) * 2003-01-27 2004-08-12 Vincent Wen-Jeng Lue Method and apparatus for adapting web contents to different display area dimensions
KR100459507B1 (ko) 2003-02-15 2004-12-03 (주) 이모션 그래픽 컨텐츠를 제작하는 장치
US20040172584A1 (en) * 2003-02-28 2004-09-02 Microsoft Corporation Method and system for enhancing paste functionality of a computer software application
US7325186B2 (en) 2003-02-28 2008-01-29 Microsoft Corporation Method and system for showing unannotated text nodes in a data formatted document
US7339598B2 (en) * 2003-07-11 2008-03-04 Vistaprint Technologies Limited System and method for automated product design
US7406660B1 (en) 2003-08-01 2008-07-29 Microsoft Corporation Mapping between structured data and a visual surface
US20050034083A1 (en) 2003-08-05 2005-02-10 Denny Jaeger Intuitive graphic user interface with universal tools
US7554689B2 (en) * 2003-10-15 2009-06-30 Canon Kabushiki Kaisha Document layout method
US7548334B2 (en) 2003-10-15 2009-06-16 Canon Kabushiki Kaisha User interface for creation and editing of variable data documents
US20050091584A1 (en) * 2003-10-23 2005-04-28 Microsoft Corporation Methods for applying styles to visual aspects of user interface elements
GB2407677A (en) 2003-10-31 2005-05-04 Hewlett Packard Development Co Post-rendering document space based on rules
US7178102B1 (en) * 2003-12-09 2007-02-13 Microsoft Corporation Representing latent data in an extensible markup language document
US7395510B2 (en) * 2003-12-16 2008-07-01 Hewlett-Packard Development Company, L.P. Method of, and system for, adjusting a document configuration
US7536048B2 (en) * 2004-01-15 2009-05-19 Xerox Corporation Method and apparatus for automatically determining image foreground color
JP2005275890A (ja) 2004-03-25 2005-10-06 Nec Corp プレゼンス情報発行装置およびシステムならびにプログラム
JP4448537B2 (ja) * 2004-04-26 2010-04-14 コダック グラフィック コミュニケーションズ カナダ カンパニー グラフィック要素を含む文書同士を比較するシステム及び方法
US20050289466A1 (en) * 2004-06-24 2005-12-29 Kaihu Chen Multimedia authoring method and system using bi-level theme templates
US20060064642A1 (en) * 2004-09-22 2006-03-23 Edurite Technologies Pvt. Ltd. Seamless presentation integrator
US7348982B2 (en) * 2004-09-30 2008-03-25 Microsoft Corporation Method, system, and computer-readable medium for creating and laying out a graphic within an application program
US8134575B2 (en) 2004-09-30 2012-03-13 Microsoft Corporation Maintaining graphical presentations based on user customizations
US8510657B2 (en) 2004-09-30 2013-08-13 Microsoft Corporation Editing the text of an arbitrary graphic via a hierarchical list
US7209815B2 (en) 2004-12-28 2007-04-24 Snap-On Incorporated Test procedures using pictures
US7478079B2 (en) 2005-01-14 2009-01-13 Microsoft Corporation Method for displaying a visual representation of mapping between a source schema and a destination schema emphasizing visually adjusts the objects such that they are visually distinguishable from the non-relevant and non-selected objects
US7743325B2 (en) * 2005-03-15 2010-06-22 Microsoft Corporation Method and computer-readable medium for fitting text to shapes within a graphic
US7750924B2 (en) * 2005-03-15 2010-07-06 Microsoft Corporation Method and computer-readable medium for generating graphics having a finite number of dynamically sized and positioned shapes
US20060277476A1 (en) * 2005-06-02 2006-12-07 Hsuan-Cheng Lai Method and system for dynamic generation of graphical content using a markup language
US7555711B2 (en) * 2005-06-24 2009-06-30 Hewlett-Packard Development Company, L.P. Generating a text layout boundary from a text block in an electronic document
US7747944B2 (en) * 2005-06-30 2010-06-29 Microsoft Corporation Semantically applying style transformation to objects in a graphic
EP1907948B1 (en) 2005-07-20 2011-10-19 Obigo Korea Co., Ltd. Method and arrangement in a display system
US7423646B2 (en) * 2005-11-08 2008-09-09 Microsoft Corporation Smart shape insert
US8042065B2 (en) * 2005-11-17 2011-10-18 Microsoft Corporation Smart copy/paste of graphical nodes
US8438486B2 (en) 2006-02-09 2013-05-07 Microsoft Corporation Automatically converting text to business graphics
CN101231645B (zh) 2007-01-23 2012-03-28 鸿富锦精密工业(深圳)有限公司 树型目录动态展现系统及方法
US7949948B2 (en) * 2007-05-09 2011-05-24 Microsoft Corporation Constraint and rule-based page layout
US8225278B2 (en) * 2007-05-14 2012-07-17 International Business Machines Corporation Method of visualizing modifications of a hierarchical state diagram
US8479218B2 (en) * 2007-07-09 2013-07-02 National Instruments Corporation Automatically arranging objects in a graphical program block diagram
US8826174B2 (en) * 2008-06-27 2014-09-02 Microsoft Corporation Using visual landmarks to organize diagrams
US8176412B2 (en) 2009-08-25 2012-05-08 International Business Machines Corporation Generating formatted documents
US8799325B2 (en) 2010-03-12 2014-08-05 Microsoft Corporation Reordering nodes in a hierarchical structure

Also Published As

Publication number Publication date
US10297061B2 (en) 2019-05-21
CA2517399A1 (en) 2006-03-30
EP1643451A1 (en) 2006-04-05
KR20060050401A (ko) 2006-05-19
KR101183351B1 (ko) 2012-09-14
US9619910B2 (en) 2017-04-11
CN102044083B (zh) 2014-06-04
US20060066632A1 (en) 2006-03-30
TW200620155A (en) 2006-06-16
RU2389069C2 (ru) 2010-05-10
RU2005130349A (ru) 2007-04-10
RU2010100807A (ru) 2011-07-20
RU2524473C2 (ru) 2014-07-27
CA2517399C (en) 2015-02-17
AU2005203711A1 (en) 2006-04-13
US20170193683A1 (en) 2017-07-06
US20120127178A1 (en) 2012-05-24
JP4860218B2 (ja) 2012-01-25
US20130024791A1 (en) 2013-01-24
MXPA05009277A (es) 2006-04-05
US8269790B2 (en) 2012-09-18
BRPI0503878A (pt) 2006-05-16
MY150137A (en) 2013-11-29
CN102044083A (zh) 2011-05-04
JP2006107491A (ja) 2006-04-20
US8134575B2 (en) 2012-03-13
TWI410887B (zh) 2013-10-01
AU2005203711B2 (en) 2010-11-18

Similar Documents

Publication Publication Date Title
BRPI0503878B1 (pt) Method implemented by computer and system for rendering hierarchical diagrams graphics for display by an exposure device
ZA200506945B (en) Maintaining graphical presentations based on user customizations
CA2780330C (en) System, method and computer program for creating and manipulating data structures using an interactive graphical interface
US7191394B1 (en) Authoring arbitrary XML documents using DHTML and XSLT
KR101433936B1 (ko) 응용 프로그램 내에 그래픽을 생성하고 레이아웃하기 위한방법, 시스템 및 컴퓨터 판독가능한 매체
US7555722B2 (en) Dynamic link control object for dynamically presenting link options in connection with a content management server system
BRPI0615817A2 (pt) integração de gráficos em documentos
US20160062961A1 (en) Hotspot editor for a user interface
CN112204595A (zh) 文档状态管理系统
US20050278475A1 (en) Placeholder control object for creating and viewing content in connection with a content management server system
BR112019025644A2 (pt) sistema de construção de site da web e método para um sistema de construção de site da web
US20200150935A1 (en) Layer-based conversion with functionality retention
Heller et al. Efficient course creation with templates in the OPAL learning management system
Nilsson et al. The FLUIDE Specification Languages with an Accompanying Method
Englisch et al. Generic Templates for courses with multilingual content in Learning Management Systems
Walczak et al. Managing Multimedia Educational Contents in Databases.
Kavran et al. Combining open source technologies for educational purposes

Legal Events

Date Code Title Description
B25A Requested transfer of rights approved

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC (US)

B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]
B21F Lapse acc. art. 78, item iv - on non-payment of the annual fees in time

Free format text: REFERENTE A 15A ANUIDADE.

B24J Lapse because of non-payment of annual fees (definitively: art 78 iv lpi, resolution 113/2013 art. 12)

Free format text: EM VIRTUDE DA EXTINCAO PUBLICADA NA RPI 2599 DE 27-10-2020 E CONSIDERANDO AUSENCIA DE MANIFESTACAO DENTRO DOS PRAZOS LEGAIS, INFORMO QUE CABE SER MANTIDA A EXTINCAO DA PATENTE E SEUS CERTIFICADOS, CONFORME O DISPOSTO NO ARTIGO 12, DA RESOLUCAO 113/2013.