Josef
Weidendorfer

    Josef.Weidendorfer@gmx.de

Daniel
de Souza Carvalho
Tradução
24-02-2006
3.5.1

O plug-in &fsview; para o &konqueror; é outro modo de visualização de objetos do tipo MIME `inode/pasta` para arquivos locais. Pode ser visto como uma alternativa para os diversos visualizadores de ícones e de lista para navegação no conteúdo do sistema de arquivos local.

KDE
kdeaddons
konqueror
plug-ins

## &fsview; - o visualizador de sistema de arquivos

### Introdução

O plug-in &fsview; para o &konqueror; é outro modo de visualização de objetos do tipo MIME `inode/pasta` para arquivos locais. Pode ser visto como uma alternativa para os diversos visualizadores de ícones e de lista para navegação no conteúdo do sistema de arquivos local.

A propriedade específica do &fsview; é sua capacidade de mostrar hierarquias completamente alinhadas em pasta usando a então denominada visualização de mapeamento gráfico. O mapa de árvore permite mostrar métricas dos objetos em uma estrutura alinhada: cada objeto é representado por um retângulo cuja área é proporcional a sua métrica. A métrica deve ser de tal maneira que a soma das métricas dos seus filhos (subpastas) seja igual ou menor que a métrica do objeto.

Para o &fsview;, o tamanho dos arquivos e pastas são escolhidos como métricas, onde o tamanho de uma pasta é definido como a soma dos tamanhos de seus subitens. Deste modo, os arquivos grandes mesmo estando ordenados no final na hierarquia da pasta podem ser facilmente encontrados procurando por retângulos grandes. O &fsview; pode ser visto como uma versão gráfica e interativa do comando &UNIX; `du`.

A integração do &fsview; como parte do Konqueror permite o uso dos recursos padrões como o menu de contexto de arquivo,ações sensitivas ao tipo mime. Contudo, o &fsview; não foi escolhido para implementação de atualização automática das mudanças do sistema de arquivo, deste modo: se você apagar um arquivo exibido no &fsview; fora do &konqueror;, você terá que atualizar manualmente pelo &eg; pressionando F5. O motivo para esta decisão é uma quantidade potencialmente grande de arquivos que deveriam ser observados para verificar mudanças, e desta maneira, poderia colocar um consumo desnecessário nos recursos do sistema para um aplicativo pequeno.

### Recursos de visualização

Esta seção explica a visualização gráfica do &fsview; em detalhes.

#### Opções de item de desenho

No &fsview; um item de visualização do mapa de árvore é um retângulo representando um arquivo ou pasta do sistema de arquivos. Para facilitar a navegação, retângulos têm cores significativas e opções de rotulação.

A cor de um retângulo, ajustavel através do item de menu Exibir Modo de corpode ser Profundidade para facilitar a detecção do aninhamento, ou um mapeamento de cor de atributos de diferentes arquivos como nome, proprietário, grupo ou tipo MIME.

Um retângulo pode ser rotulado com os vários atributos de arquivo arquivo ou pasta correspondente. Para um atributo, você pode escolher se ele deve ser mostrado por completo, apenas se houver espaço disponível, ou se o espaço pode ser obtido do filho (subpasta) (introduzindo, dessa maneira, erros para agrupamentos puros do desenho do mapa de árvore). Adicionalmente, você pode escolher a localização relativa do rótulo no retângulo.

#### Algoritmos de desenho do TreeMap

Para os algoritmos de desenho dos mapas de árvore, a regra que a área é proporcional à métrica de um item deve se manter verdadeira. Com o mapa de árvore no &fsview;, este objetivo as vezes não é sempre cumprido: desenhamos bordas para mostrar o aninhamento de itens, e essa borda toma o espaço de um item que é possivelmente perdido para as áreas de itens filhos. Observe que se perde menos espaço para a borda se o retângulo assume a forma de quadrado.

Similarmente, é bom para uma melhor visão geral deixar todos os retângulos pelo menos ter seu nome como rótulo, consumindo também espaço. É uma opção para sempre forçar espaços para rótulos, ou apenas para desenhar rótulos quando houver espaço vazio disponível. Nesse último caso, a dica é exibida quando paramos o mouse sobre um item por algum tempo, podendo ajudar muito. Ela mostra informações sobre o item onde o mouse está, juntamente com as relações com sua pasta superior até o item de raiz do mapa de árvore.

Cabe à implementação como o espaço de um item é dividido em sub-áreas para filhos (subpastas). Sempre é melhor tentar dividir as áreas de modo que os retângulos assumam a forma mais próxima de quadrados possível, tanto para rotular quanto minimizar o espaço perdido pelas bordas. O melhor método neste caso é Linhas, Colunas, ou Biseção recursiva.

Você pode escolher a área mínima de itens a serem desenhados pelo item de menu Exibir Parar na área. Em vez disso, uma cerquilha será desenhada em torno da área superior para sinalizar que este espaço é de fato ocupado por um item filho.

### Interface de usuário

O &fsview; suporta múltipla seleção de itens, similar aos visualizadores de ícones ou de lista. Isto permite que uma ação seja executada simultaneamente a um conjunto de arquivos. Um simples clique do mouse sempre seleciona um único item sob o ponteiro do mouse. Para selecionar um grupo de itens pressione a tecla &Shift; ou para selecionar alternadamente pressione a tecla &Ctrl; com um clique do mouse. Observe que selecionando um item, os sub-itens não podem ser selecionados. Desta maneira, a seleção de um item desmarcará todos os itens previamente selecionados na pasta.

Está disponível navegação no mapa de árvore pelo teclado: use as teclasSeta à esquerda e Seta à direita para mover os itens atuais entre a marca intermitente, e as teclasSeta Acima e Seta Abaixo para ir para cima e para baixo na hierarquia. A tecla Espaço seleciona o item, com &Shift; efetua a seleção de grupo e com &Ctrl; a seleção seletiva. Pressione Enter para executar a ação abrir no item atual.

### Créditos e licença

Originalmente o &fsview; foi considerado como um pequeno aplicativo de teste e um tutorial de utilização para o mapa de árvore (TreeMap) desenvolvido no KCachegrind.

Direitos autorais de Josef Weidendorfer, licenciado usando GPL V2.

&underGPL; &underFDL;