b'\n_START_ARTICLE_\nJanela (inform\xc3\xa1tica)\n_START_PARAGRAPH_\nEm inform\xc3\xa1tica, uma janela \xc3\xa9 uma \xc3\xa1rea visual contendo algum tipo de interface do utilizador, permitindo a sa\xc3\xadda do sistema ou permitindo a entrada de dados. Uma interface gr\xc3\xa1fica do utilizador que use janelas como uma de suas principais met\xc3\xa1foras \xc3\xa9 chamada sistema de janelas, como um gerenciador de janela._NEWLINE_As janelas s\xc3\xa3o geralmente apresentadas como objetos bidimensionais e retangulares, organizados em uma \xc3\xa1rea de trabalho. Normalmente um programa de computador assume a forma de uma janela para facilitar a assimila\xc3\xa7\xc3\xa3o pelo utilizador. Entretanto, o programa pode ser apresentado em mais de uma janela, ou at\xc3\xa9 mesmo sem uma respectiva janela._NEWLINE_As janelas s\xc3\xa3o widgets de diversas interfaces gr\xc3\xa1ficas do utilizador, sobretudo as que implementam o conceito WIMP (window, icon, menu, pointer, do ingl\xc3\xaas, "janela, \xc3\xadcone, menu e ponteiro").\n_START_SECTION_\nHist\xc3\xb3ria\n_START_PARAGRAPH_\nO come\xc3\xa7o das pesquisas com janelas est\xc3\xa3o no Instituto de Pesquisa de Stanford, com Douglas Engelbart e sua inven\xc3\xa7\xc3\xa3o, o rato (mouse). Em 1964, o primeiro prot\xc3\xb3tipo do rato foi usado em uma inteface gr\xc3\xa1fica do utilizador que continha uma janela. Posteriormente, a pesquisa das janelas foi continuada no Xerox Palo Alto Research Center (PARC) sob lideran\xc3\xa7a do cientista da computa\xc3\xa7\xc3\xa3o Alan Kay._NEWLINE_Introduzido no mercado em 1984, o Macintosh representou o primeiro uso comercial de janelas. Al\xc3\xa9m de janelas, o sistema gr\xc3\xa1fico desse computador tamb\xc3\xa9m apresentava \xc3\xadcones, menus em cascata e um rato. Ele foi resultado de uma visita Steve Jobs (co-fundador da Apple Inc.) ao PARC, que viu naquelas pesquisas de interfaces gr\xc3\xa1ficas com janela um potencial comercial. Originalmente trabalhando junto com a PARC da Xerox, a Apple eventualmente rompeu e desenvolveu pesquisas por conta pr\xc3\xb3pria para o Apple Lisa, lan\xc3\xa7ado em 1983._NEWLINE_Em novembro de 1983 a Microsoft anunciou que estava desenvolvendo um computador pessoal dotado de interface gr\xc3\xa1fica do utilizador. A vers\xc3\xa3o inicial do sistema operacional foi o Windows 1.0, lan\xc3\xa7ado em novembro de 1985. Esse sistema fazia uso de janelas, mas que n\xc3\xa3o podiam se sobrepor, e tamb\xc3\xa9m n\xc3\xa3o havia \xc3\xadcones. Lan\xc3\xa7ada dois anos ap\xc3\xb3s, a segunda vers\xc3\xa3o do Windows incorporava \xc3\xadcones e janelas que podiam se sobrepor._NEWLINE_Outro sistema gr\xc3\xa1fico, o X Window System foi desenvolvido no in\xc3\xadcio da d\xc3\xa9cada de 1980 no Instituto Tecnol\xc3\xb3gico de Massachusetts (MIT). Ele se tornou posteriormente uma base para sistemas de janelas de praticamente todos os sistemas operacionais derivados do Unix.\n_START_SECTION_\nPropriedades\n_START_PARAGRAPH_\nDependendo do gerenciador de janela em uso, as janelas possuem um certo conjunto de propriedades._NEWLINE_Uma das propriedades mais comuns \xc3\xa9 a posi\xc3\xa7\xc3\xa3o. Uma janela pode ser movida horizontalmente e verticalmente pela \xc3\xa1rea de trabalho. Para mover uma janela, geralmente se clica, arrasta e larga sua barra de t\xc3\xadtulo (ver se\xc3\xa7\xc3\xa3o "Estrutura" abaixo). Utilizando-se uma determinada tecla de atalho tamb\xc3\xa9m se pode mover a janela atrav\xc3\xa9s das setas direcionais do teclado._NEWLINE_Outra propriedade \xc3\xa9 o tamanho, que pode ser redimensionado horizontalmente, verticalmente ou para ambos. Para redimensionar uma janela, geralmente se clica, arrasta e larga as bordas. Uma janela que ocupa todo o espa\xc3\xa7o disponibilizado pela \xc3\xa1rea de trabalho encontra-se maximizada, e n\xc3\xa3o pode ser movida._NEWLINE_A visibilidade \xc3\xa9 outra propriedade de janelas. Uma janela minimizada est\xc3\xa1 oculta (invis\xc3\xadvel), e geralmente est\xc3\xa1 acess\xc3\xadvel somente atrav\xc3\xa9s duma liga\xc3\xa7\xc3\xa3o na barra de tarefas. O restauro da janela ap\xc3\xb3s minimiza\xc3\xa7\xc3\xa3o a torna novamente vis\xc3\xadvel ao utilizador. Uma janela invis\xc3\xadvel n\xc3\xa3o se encontra fechada: suas informa\xc3\xa7\xc3\xb5es ainda residem no sistema a fim de serem usadas caso a janela seja restaurada._NEWLINE_Mesmo estando vis\xc3\xadvel de acordo com a propriedade da visibilidade, quando uma janela \xc3\xa9 sobreposta por outra, a parte sobreposta n\xc3\xa3o \xc3\xa9 vis\xc3\xadvel ao utilizador. O crit\xc3\xa9rio de sobreposi\xc3\xa7\xc3\xa3o geralmente \xc3\xa9 o foco: janelas acessadas mais recentemente est\xc3\xa3o "acima" das outras. Mais uma propriedade das janelas \xc3\xa9 estar sempre acima das outras, de forma que outra nunca a sobrep\xc3\xb5e mesmo tendo sido acessada mais recentemente._NEWLINE_Entre diversas janelas em uma \xc3\xa1rea de trabalho, no m\xc3\xa1ximo uma delas possui o foco: a \xc3\xbaltima janela acessada, chamada janela ativa. Focar uma janela sobreposta por outras a coloca "sobre" as outras, e a janela ativa passa a ler a entrada do rato e do teclado. Para focar uma janela geralmente clica-se nela ou seleciona-se a janela num menu de sele\xc3\xa7\xc3\xa3o de janelas, mas alguns gerenciadores de janelas tamb\xc3\xa9m permitem o foco somente ao apontar em sua \xc3\xa1rea vis\xc3\xadvel. Uma janela restaurada \xc3\xa9 focada._NEWLINE_Outra propriedade das janelas \xc3\xa9 a modalidade. Uma janela modal n\xc3\xa3o perde foco enquanto estiver aberta. Isto significa que, depois de aberta, o utilizador deve necessariamente interagir com ela a fim de fech\xc3\xa1-la, para ent\xc3\xa3o voltar a usar o sistema. A modalidade pode dizer respeito somente a aplica\xc3\xa7\xc3\xa3o ou a todo o sistema. Quando diz respeito a aplica\xc3\xa7\xc3\xa3o, o sistema ainda pode ser focado, mas somente a janela modal pode ser focada entre as janelas da aplica\xc3\xa7\xc3\xa3o que a abriu. Um exemplo \xc3\xa9 um editor de texto, que geralmente abre uma janela modal somente a aplica\xc3\xa7\xc3\xa3o para confirmar o salvamento de um arquivo aberto. Enquanto a confirma\xc3\xa7\xc3\xa3o n\xc3\xa3o \xc3\xa9 respondida, a janela do documento aberto n\xc3\xa3o pode ser focada. Quando diz respeito a todo o sistema, nenhuma outra janela aberta no sistema pode ser focada, independente da aplica\xc3\xa7\xc3\xa3o. Um exemplo s\xc3\xa3o opera\xc3\xa7\xc3\xb5es cr\xc3\xadticas do sistema, como o pedido de acesso administrativo de alguns sistemas operacionais._NEWLINE_Uma propriedade recente de janelas \xc3\xa9 a transpar\xc3\xaancia, disponibilizada em gerenciadores de janela com suporte a acelera\xc3\xa7\xc3\xa3o gr\xc3\xa1fica. A transpar\xc3\xaancia permite a visualiza\xc3\xa7\xc3\xa3o da \xc3\xa1rea de trabalho sendo sobreposta por uma janela. Por exemplo, mesmo uma janela ativa sobrepondo outra janela permite a visualiza\xc3\xa7\xc3\xa3o da parte sobreposta, mesmo que parcialmente. Outra propriedade relacionada \xc3\xa9 a translucidez, uma forma de transpar\xc3\xaancia que n\xc3\xa3o permite a visualiza\xc3\xa7\xc3\xa3o n\xc3\xadtida da \xc3\xa1rea sobreposta.\n_START_SECTION_\nTipos\n_START_PARAGRAPH_\nGerenciadores de janelas podem oferecer diferentes tipos de janelas, de acordo com suas propriedades.\n_START_SECTION_\nJanela de aplica\xc3\xa7\xc3\xa3o/documento\n_START_PARAGRAPH_\nUma janela de aplica\xc3\xa7\xc3\xa3o/documento \xc3\xa9 o tipo mais comum, contendo documentos ou dados de aplica\xc3\xa7\xc3\xb5es. \xc3\x89 o tipo mais flex\xc3\xadvel, podendo ser redimensionado, escondido ou restaurado._NEWLINE_Cada programa de computador define a estrutura das janelas que o comp\xc3\xb5em, os widgets que ser\xc3\xa3o inseridos em seu conte\xc3\xbado. Entretanto, para janelas de aplica\xc3\xa7\xc3\xa3o/documento um esquema muito utilizado est\xc3\xa1 representado na figura ao lado._NEWLINE_Na parte superior da janela encontra-se a barra de t\xc3\xadtulo, que, al\xc3\xa9m de informar o nome do programa, fornece acesso \xc3\xa0s propriedades da janela, como minimiza\xc3\xa7\xc3\xa3o, maximiza\xc3\xa7\xc3\xa3o, redimensionamento, mo\xc3\xa7\xc3\xa3o, etc.. Logo abaixo est\xc3\xa1 localizada a barra de menu, com listas em cascata de a\xc3\xa7\xc3\xb5es da aplica\xc3\xa7\xc3\xa3o. Abaixo da barra de menu pode haver uma barra de ferramentas, com bot\xc3\xb5es de acesso r\xc3\xa1pido \xc3\xa0s a\xc3\xa7\xc3\xb5es da aplica\xc3\xa7\xc3\xa3o. Em uma interface de documento tabulada, abaixo da barra de menu ou da barra de ferramentas (se houver) geralmente est\xc3\xa3o localizadas as tabula\xc3\xa7\xc3\xb5es._NEWLINE_Na parte inferior da janela encontra-se a barra de status, que fornece informa\xc3\xa7\xc3\xb5es sobre o estado atual da aplica\xc3\xa7\xc3\xa3o._NEWLINE_Entre a parte superior e inferior da janela encontra-se o documento a janela, que pode conter em suas bordas uma barra de rolagem caso o conte\xc3\xbado a ser apresentado seja maior que o espa\xc3\xa7o vis\xc3\xadvel disponibilizado pela janela, horizontalmente ou verticalmente.\n_START_SECTION_\nJanela de utilidade\n_START_PARAGRAPH_\nUma janela de utilidade est\xc3\xa1 localizada acima das outras, fornecendo ferramentas e informa\xc3\xa7\xc3\xb5es sobre a aplica\xc3\xa7\xc3\xa3o. S\xc3\xa3o geralmente pequenas para evitar a sobreposi\xc3\xa7\xc3\xa3o de outras janelas._NEWLINE_Uma aplica\xc3\xa7\xc3\xa3o comum s\xc3\xa3o os widgets da \xc3\xa1rea de trabalho.\n_START_SECTION_\nCaixa de di\xc3\xa1logo\n_START_PARAGRAPH_\nUma caixa de di\xc3\xa1logo (ou caixa de mensagem) \xc3\xa9 uma janela usada para apresentar uma informa\xc3\xa7\xc3\xa3o ao utilizador ou para obter dados. \xc3\x89 chamada dessa forma pois forma um di\xc3\xa1logo entre o computador e o utilizador. Quando o teor do di\xc3\xa1logo \xc3\xa9 cr\xc3\xadtico ao sistema, a janela \xc3\xa9 modal. Esse tipo de janela \xc3\xa9 geralmente mais simples, menos flex\xc3\xadvel. Por exemplo, raramente uma caixa de di\xc3\xa1logo pode ser redimensionada, o que inclui tamb\xc3\xa9m maximiza\xc3\xa7\xc3\xa3o e minimiza\xc3\xa7\xc3\xa3o. Boas pr\xc3\xa1ticas de desenvolvimento de interfaces gr\xc3\xa1ficas indicam que uma caixa de di\xc3\xa1logo deve ser usada somente quando a aten\xc3\xa7\xc3\xa3o imediata do utilizador \xc3\xa9 necess\xc3\xa1ria._NEWLINE_O tipo mais simples \xc3\xa9 o alerta, que apresenta uma mensagem e requer somente a indica\xc3\xa7\xc3\xa3o que o utilizador leu a mensagem (ao clicar um bot\xc3\xa3o "OK", por exemplo). \xc3\x89 usada para prover confirma\xc3\xa7\xc3\xa3o de uma a\xc3\xa7\xc3\xa3o, ou para noticiar o t\xc3\xa9rmino de um programa. Outro tipo comum \xc3\xa9 a pergunta seguida de op\xc3\xa7\xc3\xb5es de resposta, como sim ou n\xc3\xa3o, para pedir a confirma\xc3\xa7\xc3\xa3o de uma a\xc3\xa7\xc3\xa3o._NEWLINE_Na World Wide Web, caixas de di\xc3\xa1logos popularmente conhecidas como janelas pop-up s\xc3\xa3o usadas para fins de propaganda, fazendo uso da caracter\xc3\xadstica chamativa desse tipo de janela.\n_START_SECTION_\nOrganiza\xc3\xa7\xc3\xa3o\n_START_PARAGRAPH_\nUm programa de computador assume a forma de uma janela para facilitar a assimila\xc3\xa7\xc3\xa3o pelo utilizador. Entretanto, um programa de computador pode ser apresentado em mais de uma janela, ou at\xc3\xa9 mesmo sem uma respectiva janela. Para programas compostos por mais de uma janela, h\xc3\xa1 diversas formas de organizar as janelas a fim de otimizar a intera\xc3\xa7\xc3\xa3o do utilizador._NEWLINE_Uma op\xc3\xa7\xc3\xa3o \xc3\xa9 o m\xc3\xa9todo da interface de documento \xc3\xbanico (SDI), em que uma aplica\xc3\xa7\xc3\xa3o carrega diversas janelas distintas, de forma que o gerenciamento \xc3\xa9 feito pelo gerenciador de janela. N\xc3\xa3o h\xc3\xa1 hierarquia de janelas, isto \xc3\xa9, uma janela n\xc3\xa3o cont\xc3\xa9m outra. Como s\xc3\xa3o as janelas s\xc3\xa3o independentes, elas geralmente n\xc3\xa3o podem compartilhar recursos em comum como uma barra de menu ou uma barra de ferramentas \xc3\xbanica para todos os documentos abertos._NEWLINE_Outro m\xc3\xa9todo de organiza\xc3\xa7\xc3\xa3o \xc3\xa9 a interface de documentos m\xc3\xbaltiplos (MDI), em que, diferente da interface de documento \xc3\xbanico, h\xc3\xa1 hierarquia de janelas. Nesse m\xc3\xa9todo, existe uma janela da aplica\xc3\xa7\xc3\xa3o em que todas as outras janelas residem (exceto por janelas modais). Para o gerenciador de janela h\xc3\xa1 somente uma janela aberta pela aplica\xc3\xa7\xc3\xa3o. Por conta da hierarquia, a janela principal pode fornecer recursos compartilh\xc3\xa1veis entre as janelas filhas, como uma barra de ferramentas._NEWLINE_Em MDI, a janela principal da aplica\xc3\xa7\xc3\xa3o pode opcionalmente fazer o papel de gerenciador de janela e prover uma forma de listar as janelas que nela residem, o que \xc3\xa9 \xc3\xbatil caso v\xc3\xa1rias janelas filhas estejam sendo usadas concorrentemente. Esse pensamento levou ao desenvolvimento de uma varia\xc3\xa7\xc3\xa3o da interface de documentos m\xc3\xbaltiplos em que \xc3\xa9 apresentada uma barra de tarefas tal qual a do gerenciador de janela, mas embarcada na janela principal. A barra de tarefas embarcada \xc3\xa9 chamada tabula\xc3\xa7\xc3\xa3o, contendo abas, e resultou na varia\xc3\xa7\xc3\xa3o do m\xc3\xa9todo MDI, a interface de documento tabulada. Uma aplica\xc3\xa7\xc3\xa3o comum \xc3\xa9, por exemplo, o uso de abas em navegadores. Uma \xc3\xbanica janela de navegador pode conter diversas abas, cada uma apontando para um s\xc3\xadtio espec\xc3\xadfico._NEWLINE_Mais um m\xc3\xa9todo de organiza\xc3\xa7\xc3\xa3o \xc3\xa9 a interface baseada em di\xc3\xa1logos, na sequ\xc3\xaancia de di\xc3\xa1logos. Nela, o foco n\xc3\xa3o est\xc3\xa1 no acesso concorrente a recursos como documentos, mas sim no di\xc3\xa1logo cont\xc3\xadnuo entre utilizador e computador a fim de realizar uma tarefa. Uma caixa de di\xc3\xa1logo \xc3\xa9 apresentada ao utilizador, e atrav\xc3\xa9s dos dados entrados outra caixa \xc3\xa9 aberta com novas informa\xc3\xa7\xc3\xb5es ou requisi\xc3\xa7\xc3\xb5es, e assim por diante at\xc3\xa9 a conclus\xc3\xa3o do sistema. Esse m\xc3\xa9todo \xc3\xa9 mais usado em utilit\xc3\xa1rios, como instaladores.'