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 PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000009877 rendering Methods 0.000 title claims abstract description 12
- 238000010586 diagram Methods 0.000 title claims description 56
- 230000008859 change Effects 0.000 claims description 34
- 230000004044 response Effects 0.000 claims description 28
- 230000007246 mechanism Effects 0.000 claims description 10
- 230000033001 locomotion Effects 0.000 claims description 6
- 230000000007 visual effect Effects 0.000 abstract description 19
- 238000012423 maintenance Methods 0.000 abstract 1
- 230000008569 process Effects 0.000 description 15
- 238000013459 approach Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 10
- 230000003993 interaction Effects 0.000 description 10
- 238000004590 computer program Methods 0.000 description 5
- 230000002085 persistent effect Effects 0.000 description 5
- 238000004883 computer application Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 241000412611 Consul Species 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007373 indentation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction 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/04845—Interaction 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/24—Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/20—Linear translation of whole images or parts thereof, e.g. panning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling 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.
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)
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)
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 |
-
2004
- 2004-12-15 US US11/013,655 patent/US8134575B2/en active Active
-
2005
- 2005-08-02 TW TW094126264A patent/TWI410887B/zh not_active IP Right Cessation
- 2005-08-11 KR KR1020050073710A patent/KR101183351B1/ko active IP Right Grant
- 2005-08-18 AU AU2005203711A patent/AU2005203711B2/en not_active Ceased
- 2005-08-29 CA CA2517399A patent/CA2517399C/en not_active Expired - Fee Related
- 2005-08-30 MX MXPA05009277A patent/MXPA05009277A/es active IP Right Grant
- 2005-08-30 MY MYPI20054064A patent/MY150137A/en unknown
- 2005-08-31 CN CN201010587370.1A patent/CN102044083B/zh not_active Expired - Fee Related
- 2005-09-20 EP EP05108636A patent/EP1643451A1/en not_active Ceased
- 2005-09-22 JP JP2005275890A patent/JP4860218B2/ja active Active
- 2005-09-26 BR BRPI0503878-2A patent/BRPI0503878B1/pt not_active IP Right Cessation
- 2005-09-29 RU RU2010100807/08A patent/RU2524473C2/ru not_active IP Right Cessation
- 2005-09-29 RU RU2005130349/09A patent/RU2389069C2/ru not_active IP Right Cessation
-
2012
- 2012-01-31 US US13/362,879 patent/US8269790B2/en not_active Expired - Fee Related
- 2012-09-17 US US13/621,614 patent/US9619910B2/en active Active
-
2017
- 2017-03-23 US US15/467,065 patent/US10297061B2/en active Active
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. |