Alguns tipos de janela descritos nesta seção são relacionadas a versões antigas de 4D e de SO. Este tema assim como o comando Open window agora só são mantidos por razões de compatibilidade. Quando escrever código novo ou gerenciar janelas, recomendamos usar o comando Open form window que é mais adequado para as interfaces atuais
Se passar uma destas constantes a Open window, abre uma janela padrão. Para abrir uma janela flutuante, passe um tipo de janela negativo a Open window.
A principal característica das janelas flutuantes é que permaneçam em primeiro plano, mesmo se o usuário clicar em outra janela do processo. As janelas flutuantes são utilizadas geralmente para mostrar informação permanente ou barras de ferramentas.
Uma janela modal coloca ao usuário em um estado (ou “modo”) onde apenas pode atuar dentro desta janela. Enquanto a janela modal é mostrada, os comandos de menu e as outras janelas da aplicação são inacessíveis. Para fechar uma janela modal, o usuário deve validá-la, cancelá-la, ou escolher uma das opções que oferece. As caixas de diálogo de alerta são exemplos típicos de janelas modais.
Em 4D, as janelas de tipo 1 e 5 são janelas modais.
Nota: uma janela modal sempre permanece no primeiro plano. Por causa disso, quando uma janela modal chamará uma janela não modal, esta última janela é mostrada ao fundo, mesmo se for chamado depois da janela modal. Portanto evite este tipo de operação.
Pelo contrário, quando uma janela modal chamar a outra janela modal, a última janela se mostrará no primeiro plano.
Nota: Com este tipo de janela o conjunto de valores (constante + opção) deve sempre ser passada com um valor negativo. Tenha certeza que passe, por exemplo, -(Palette window+6) e não (-Palette window+6).
As janelas folha (sheet windows) são específicas para Mac OS X. Estas janelas “descem” da barra de título da janela principal utilizando uma animação e são mostradas sobre a janela principal. São centradas automaticamente na janela principal. Suas propriedades são idênticas às das caixas de diálogo modais. Geralmente são utilizadas para realizar uma ação diretamente relacionada com a que é realizada na janela principal.
Pode criar uma janela folha apenas em Mac OS X se a última janela aberta for visível e de tipo documento (form).
O comando abre uma janela de tipo 1 (diálogo modal) ao invés de uma de tipo 33 ou de tipo 8 (janela padrão) ao invés de uma de tipo 34:
se a última janela aberta não for visível ou não for de tipo documento,
em windows.
Como uma janela folha deve ser criada sobre um formulário, sua visualização é recusada no evento On load do primeiro formulário carregado na janela (ver o exemplo 4 do comando Open window).
Uso: DIALOG, ADD RECORD ou equivalente, em Mac OS (não é padrão em Windows).
Este tipo de janela tem as características essenciais do tipo Diálogo simples (2) e dispõe de propriedades avançadas específicas:
A janela é fechada automaticamente e o evento "cancelar" se passar para a janela quando:
ocorrer um clique fora da janela;
a janela de fundo ou a janela MDI (Multiple Document Interface) se move;
o usuário clica na tecla Esc.
Esta janela se mostra adiante de sua janela "pai" (não deve ser utilizado como janela principal do processo). A janela de fundo não está desativada. Entretanto, não recebe mais eventos.
Não é possível redimensionar ou mover a janela utilizando o mouse; entretanto, ao realizar estas ações por programação, se otimiza o redimensionamento dos elementos do fundo.
Uso: Este tipo de janela se adapta particularmente ao manejo dos pop-up menus associados aos botões 3D de tipo “bevel” ou “barras de ferramentas”.
Limitação:
não é possível exibir objetos pop up dentro desse tipo de janela
a partir da versão 13 de 4D, este tipo de janela não permite mostrar mensagens de ajuda em Mac OS.
Em Mac OS, é possível aplicar o aspecto metálico às janelas. Este tipo de aparência se encontra com frequência na interface Macintosh. Em windows, esta propriedade não tem efeito.
Para aplicar a aparência metálica a uma janela criada pelo comando Open window, pode adicionar a constante Texture appearance ao tipo de janela definido no parâmetro tipo. Por exemplo:
A opção de "tela completa" está disponível a partir de 4D v14 em OS X para as janelas de tipo de documento. Quando se utiliza esta opção, o botão "Tela completa" se mostra na esquina superior direita da janela:
Quando o usuário fizer clique neste ícone, a janela passa a tela completa e 4D oculta automaticamente a barra de ferramentas principal. Para utilizar esta opção, adicione a constante Has full screen mode Mac ao parâmetro tipo para os comandos Open window, Open form window e _o_Open external window. Por exemplo, este código cria uma janela formulário com botão tela completa sob OS X: