public class ProjectTree extends Object implements ProjectFileContainer
A classe modela uma árvore de diretórios de um projeto. A representação usa
uma JTree que pode ser recuperada com o método
getTree().
É possível definir quais arquivos serão visualizados através da árvore e quais arquivos poderão ser selecionados. Para fazer essa filtragem, deve-se utilizar objetos do pacote csbase.logic.filters
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
deleteEnabled
Indica se a remoção de arquivos está habilitada.
|
protected boolean |
refreshEnabled
Indica se a atualização de diretórios e do projeto está habilitada.
|
protected boolean |
renameEnabled
Indica se a edição de nomes de arquivos está habilitada.
|
protected boolean |
transferEnabled
Indica se a transferência de arquivos está habilitada.
|
MIME_FOR_PROJECT_FILE, PROJECT_FILE_FLAVOR| Modifier | Constructor and Description |
|---|---|
protected |
ProjectTree(Window owner,
String title)
Cria a árvore de projetos.
|
protected |
ProjectTree(Window owner,
String title,
csbase.logic.CommonClientProject project)
Cria a árvore de projetos que representará o projeto recebido.
|
protected |
ProjectTree(Window owner,
String title,
csbase.logic.CommonClientProject project,
csbase.logic.ProjectFileFilter visualFilter)
Cria a árvore de projetos que representará o projeto recebido.
|
protected |
ProjectTree(Window owner,
String title,
csbase.logic.CommonClientProject project,
csbase.logic.ProjectFileFilter visualFilter,
csbase.logic.ProjectFileFilter selectionFilter)
Cria a árvore de projetos que representará o projeto recebido.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addMouseListener()
Adiciona o MouseListener da Tree
|
void |
addProjectTreeListener(ProjectTreeListener listener)
Adiciona um listener de projeto.
|
void |
addTreeModelListener(TreeModelListener listener)
Adiciona listener de modificação do modelo da árvore.
|
boolean |
addTreeSelectionListener(ProjectTreeSelectionListener listener)
Adiciona um ouvinte que está interessado em mudanças na seleção da árvore.
|
void |
clearClipboard()
Limpa a área de clipboard.
|
void |
clearSelection()
Limpa a seleção da árvore.
|
void |
closeProject()
Fecha o projeto corrente.
|
protected boolean |
doubleClickIntercepted(csbase.logic.ClientProjectFile file)
Método de interceptação de arquivo acionado (duplo-clique) na árvore de
projetos, para que cada sistema possa eventualmente redefinir a ação para
outra coisa além de simplesmente abrir o mesmo com uma aplicação
correspondente.
|
void |
enableDeleteAction(boolean enable)
Habilita/desabilita a remoção de arquivos usando a tecla DELETE.
|
void |
enableRefreshAction(boolean enable)
Habilita/desabilita a atualização da árvore de projetos usando a tecla F5.
|
void |
enableRenameAction(boolean enable)
Habilita/desabilita edição nos nós da árvore.
|
void |
enableTransferAction(boolean enable)
Habilita/desabilita a transferência de arquivos por drag
&drop e
clipboard. |
csbase.logic.filetypefinder.FileTypeFinder |
getFileTypeFinder()
Retorna o buscador (por inferência) de tipo de arquivo que, por default, é
nulo (
null); mas pode ser redefinido pelos sistemas para seus tipos
de arquivos. |
Vector<ProjectTreeListener> |
getListeners()
Obtem os listeners interessados em mudanças na árvore
|
JPopupMenu |
getPopupDataset()
Obtem o menu pop-up de dataset.
|
JPopupMenu |
getPopupDir()
Obtem o menu pop-up de diretórios.
|
JPopupMenu |
getPopupFile()
Obtem o menu pop-up de arquivos
|
JPopupMenu |
getPopupMultSelection()
Obtem o menu pop-up de seleção múltipla.
|
JPopupMenu |
getPopupRoot()
Obtem o menu pop-up da raíz
|
csbase.logic.CommonClientProject |
getProject()
Obtém o projeto da árvore.
|
csbase.logic.ClientProjectFile |
getSelectedFile()
Obtem o arquivo selecionado na árvore.
|
csbase.logic.ClientProjectFile[] |
getSelectedFiles()
Obtém os arquivos atualmente selecionados na árvore.
|
int |
getSelectionCount() |
String |
getTitle()
Obtém o título da árvore.
|
JTree |
getTree()
Obtém o componente de interface que apresenta a árvore de diretórios.
|
Window |
getWindow()
Obtém a janela onde essa árvore está sendo exibida.
|
boolean |
hasFileToPaste()
Indica se existem arquivos na árvore marcados para copy.
|
void |
release()
Liberação da visualização da árvore.
|
void |
removeProjectTreeListener(ProjectTreeListener listener)
Remove um listener de seleção da projeto.
|
void |
removeTreeModelListener(TreeModelListener listener)
Retira listener de modificação do modelo da árvore.
|
boolean |
removeTreeSelectionListener(ProjectTreeSelectionListener listener)
Remove um ouvinte que estava interessado em mudanças na seleção da árvore.
|
void |
repaint() |
void |
resetProject()
Limpa a árvore que está sendo apresentada.
|
void |
setComparator(Comparator<ProjectTreeNode> comparator)
Modifica a forma como os nós da árvore são ordenados.
|
void |
setOutOfDate() |
void |
setPopupDataset(JPopupMenu popupDataset)
Atribui um menu pop-up para dataset.
|
void |
setPopupDir(JPopupMenu popupDir)
Atribui um menu pop-up para diretórios.
|
void |
setPopupFile(JPopupMenu popupFile)
Atribui um menu pop-up para arquivos.
|
void |
setPopupMultSelection(JPopupMenu popupMultSelection)
Atribui um menu pop-up para seleção múltipla.
|
void |
setPopupRoot(JPopupMenu popupRoot)
Atribui um menu de pop-up para a raíz da árvore.
|
void |
setProject(csbase.logic.CommonClientProject newProject)
Modifica o conteúdo da árvore que está sendo visualizada, a partir da raiz.
|
void |
setSelectedFile(csbase.logic.ClientProjectFile file)
Seleciona o arquivo ou diretório especificado na árvore
|
void |
setSelectionFilter(csbase.logic.ProjectFileFilter filter)
Ajusta filtro de seleção.
|
void |
setSelectionPath(String[] selectedPath)
Seleciona o caminho escolhido do diretório dentro da árvore de projeto.
|
void |
setSelectionPath(TreePath selectedPath)
Seleciona o caminho escolhido do diretório dentro da árvore de projeto
|
void |
setSingleSelectionMode(boolean singleSelection)
Determina se a árvore possui seleção simples ou seleção múltipla.
|
void |
setVisualFilter(csbase.logic.ProjectFileFilter filter)
Define o filtro de visualização da árvore.
|
void |
startCopyAction()
Copia os arquivos selecionados para o clipboard.
|
void |
startCutAction()
Recorta os arquivos selecionados para o clipboard.
|
void |
startPasteAction()
Transfere os arquivos que estão no clipboard.
|
void |
startRenamingAction()
Inicia a edição de um nome de um arquivo ou diretório da árvore.
|
protected boolean transferEnabled
protected boolean deleteEnabled
protected boolean renameEnabled
protected boolean refreshEnabled
protected ProjectTree(Window owner, String title)
setProject(CommonClientProject).owner - A janela pai onde a árvore será exibida.title - O título da janela pai.protected ProjectTree(Window owner, String title, csbase.logic.CommonClientProject project)
owner - A janela pai onde a árvore será exibida.title - O título da janela pai.project - O projeto que será representado.protected ProjectTree(Window owner, String title, csbase.logic.CommonClientProject project, csbase.logic.ProjectFileFilter visualFilter)
owner - A janela pai onde a árvore será exibida.title - O título da janela pai.project - O projeto que será representado.visualFilter - O filtro de visualização.protected ProjectTree(Window owner, String title, csbase.logic.CommonClientProject project, csbase.logic.ProjectFileFilter visualFilter, csbase.logic.ProjectFileFilter selectionFilter)
owner - A janela pai onde a árvore será exibida.title - O título da janela pai.project - O projeto que será representado.visualFilter - O filtro de visualização.selectionFilter - O filtro de seleção.IllegalArgumentException - Caso a janela ou o título da janela sejam
nulos (null).public void setPopupRoot(JPopupMenu popupRoot)
popupRoot - O menu pop-up da raíz.public JPopupMenu getPopupRoot()
public void setPopupFile(JPopupMenu popupFile)
popupFile - O menu pop-up de arquivos.public JPopupMenu getPopupFile()
public void setPopupMultSelection(JPopupMenu popupMultSelection)
popupMultSelection - O menu pop-up para seleção múltipla.public JPopupMenu getPopupMultSelection()
public void setPopupDataset(JPopupMenu popupDataset)
popupDataset - O menu pop-up para dataset.public JPopupMenu getPopupDataset()
public void setPopupDir(JPopupMenu popupDir)
popupDir - O menu pop-up para diretórios.public JPopupMenu getPopupDir()
public Window getWindow()
getWindow in interface ProjectFileContainerpublic String getTitle()
getTitle in interface ProjectFileContainerpublic JTree getTree()
public void clearSelection()
clearSelection in interface ProjectFileContainerpublic boolean addTreeSelectionListener(ProjectTreeSelectionListener listener)
listener - O ouvinte a ser adicionado.IllegalArgumentException - Caso seja recebido um ouvinte nulo.public boolean removeTreeSelectionListener(ProjectTreeSelectionListener listener)
listener - O ouvinte a ser removido.public void addTreeModelListener(TreeModelListener listener)
listener - listenerpublic void removeTreeModelListener(TreeModelListener listener)
listener - listenerpublic Vector<ProjectTreeListener> getListeners()
public void setSelectionPath(String[] selectedPath)
selectedPath - O caminho na árvore de projeto.public void setSelectionPath(TreePath selectedPath)
selectedPath - O componente que representa o caminho na árvore de
projeto.public csbase.logic.CommonClientProject getProject()
getProject in interface ProjectFileContainerpublic void setComparator(Comparator<ProjectTreeNode> comparator)
ProjectTreeNodeNameComparator) e por extensão (feito pelo
comparador ProjectTreeNodeExtensionComparator).comparator - comparador a ser usado para ordenar os nós da árvore.public void setProject(csbase.logic.CommonClientProject newProject)
newProject - O novo projeto a ser apresentado pela árvore.public void resetProject()
public void closeProject()
IllegalStateException - Caso não exista projeto aberto.public void setSingleSelectionMode(boolean singleSelection)
singleSelection - true, se a árvore possui seleção simples ou false,
se possui seleção múltipla.public csbase.logic.ClientProjectFile getSelectedFile()
getSelectedFile in interface ProjectFileContainerpublic csbase.logic.ClientProjectFile[] getSelectedFiles()
getSelectedFiles in interface ProjectFileContainerpublic void setOutOfDate()
public void enableTransferAction(boolean enable)
&drop e
clipboard.enableTransferAction in interface ProjectFileContainerenable - true, para habilitar a transferência, ou false, caso
contrário.public void enableRenameAction(boolean enable)
enableRenameAction in interface ProjectFileContainerenable - true, para habilitar a edição, ou false, caso contrário.public void startRenamingAction()
startRenamingAction in interface ProjectFileContainerpublic void startCutAction()
startCutAction in interface ProjectFileContainerpublic void startCopyAction()
startCopyAction in interface ProjectFileContainerpublic void startPasteAction()
startPasteAction in interface ProjectFileContainerpublic void enableDeleteAction(boolean enable)
enableDeleteAction in interface ProjectFileContainerenable - se true, habilita; caso contrário, desabilita.public void enableRefreshAction(boolean enable)
enableRefreshAction in interface ProjectFileContainerenable - se true, habilita; caso contrário, desabilita.public void clearClipboard()
clearClipboard in interface ProjectFileContainerpublic void setVisualFilter(csbase.logic.ProjectFileFilter filter)
filter - filtro (pode ser null)public void setSelectionFilter(csbase.logic.ProjectFileFilter filter)
filter - filtropublic void addMouseListener()
protected boolean doubleClickIntercepted(csbase.logic.ClientProjectFile file)
file - arquivo da árvore de projetopublic void addProjectTreeListener(ProjectTreeListener listener)
listener - Um listener de seleção a ser incluído.public void removeProjectTreeListener(ProjectTreeListener listener)
listener - Um listener de seleção a ser removido.public boolean hasFileToPaste()
public void setSelectedFile(csbase.logic.ClientProjectFile file)
file - arquivo a ser selecionadopublic int getSelectionCount()
getSelectionCount in interface ProjectFileContainerpublic void repaint()
repaint in interface ProjectFileContainerpublic void release()
public csbase.logic.filetypefinder.FileTypeFinder getFileTypeFinder()
null); mas pode ser redefinido pelos sistemas para seus tipos
de arquivos.Copyright © 2017. All rights reserved.