A plataforma cross-linux X11 é livre de peculiaridades de plataforma?

1

O X11 funciona em todos os sistemas operacionais Linux? Se eu codificar um aplicativo que tenha uma janela do X11, ele irá parecer e operar o mesmo em todos os sistemas operacionais do Linux ou terei diferentes ajustes que preciso executar?

  • Existe uma alternativa ao X11 que está em c / c ++ e plataforma de cross linux de baixo nível? * Estou ciente do QT e do GTK.
  • Qual é o sistema gráfico / sistema de janelas do nível mais baixo?
por Jake M 26.05.2016 / 12:47

1 resposta

5

If I code a application that has an X11 window, will it look and operate the same across linux os's

Sim, mas não pelo motivo que você pensa. X11 é muito baixo nível, e se preocupa basicamente com desenho primitivos gráficos e fornecendo um razoavelmente padronizado (note que isso não significa sane; X11 pode ser chamado muitas coisas, mas duvido "bem projetado para um ambiente moderno "seria o primeiro que muitas pessoas alcançariam" interface entre os dispositivos de entrada de hardware e o software. Ele nem tem muito em termos de suporte a fontes e desenhos de texto; é por isso que bibliotecas como o Pango foram desenvolvidas.

Na verdade, é por isso que kits de ferramentas como o Qt e o GTK existem: não são alternativas ao X11 , mas construídos em cima para tornar a programação de aplicativos gráficos muito menos dor de cabeça. Como eles abstraem todos os detalhes básicos de como desenhar na tela eles também permitem a portabilidade de aplicativos gráficos para plataformas alternativas que não suportam nativamente aplicativos X11, como o Windows.

Se você quer uma alternativa para X11 , então você está procurando algo como Wayland que é ganhando algum impulso .

Se você estiver trabalhando com X11 puro, o conteúdo da janela (não a decoração da janela, como barra de título, bordas de janela, etc .; o X11 puro não decora a janela, essa tarefa é delegado ao gerenciador de janelas) deve sempre parecer o mesmo, porque o seu programa está fazendo todo o desenho em si e, portanto, para melhor ou pior, você tem controle total sobre a aparência dos resultados.

Se você está confiando em alguma biblioteca intermediária como GTK, Qt ou outros, a aparência do seu aplicativo pode depender de como o usuário configurou essa biblioteca específica para seus gostos pessoais. Se você quiser que seu aplicativo seja bem recebido, seria bem aconselhável aceitar essas escolhas feitas pelo usuário e garantir que o aplicativo se adapte a elas de maneira elegante.

    
por 26.05.2016 / 14:40

Tags