Pergunta

Eu tenho um painel de preferências no meu aplicativo no qual eu tenho um NSColorWell para definir alguma cor de fundo e um botão que abre uma NSFontPanel para a escolha de uma fonte.

O comportamento que eu quero ter é o seguinte:

  • Quando clico no NSColorWell em seguida, arraste sobre um pouco de cor no painel, eu quero mudar o cor de fundo na minha área "preview" como arraste I.

  • Quando clico no "font Change ...", eu mostro minha NSFontPanel e como eu escolher uma fonte que deve mudar na minha área "preview" também. Digamos que eu clicar no cor botão do NSFontPanel, eu quero mudar o cor da minha fonte .

Em essência, eu estou tentando fazer ambos os painéis de cor (embora pelo que tenho visto não há realmente apenas um painel compartilhada por app) trabalho de forma independente.

Agora, dizer que tenho os painéis de fonte e cor abertas. Quando eu clicar sobre a cor bem na minha janela ativa, então se eu clicar no botão de cor no painel de fonte a cor não afeta a fonte, mas sim o fundo, como as estadias bem cor ativado e porque eu registrado para mudança de cor notificações em minha classe de controlador.

Alguém poderia me dar um exemplo de uma maneira específica para o código este tipo de comportamento? Parece haver um monte de maneiras diferentes de fazer a NSFontPanel e NSColorPanel aparecer (NSFontPanel ou NSFontManager?), Bem como muitas maneiras de lidar com os eventos que vêm dos próprios painéis (notificações? Delegados (no NSFontManager ou NSFontPanel)? inserindo o controlador para a cadeia respondedor?). Eu não encontrei quaisquer orientações sobre a maneira ideal de lidar com mais de uma fonte de cor de uma vez e eu estou um pouco perdido.

Agradecemos antecipadamente!

Foi útil?

Solução

O mecanismo Color Picker é projetado especificamente para que você possa "ativar" vários poços de cor, em seguida, defina sua cor ao mesmo tempo. Acredito que a razão pela qual botão de cor do painel de fonte não "let go" do seletor de cores é porque não é, aparentemente, na verdade, uma "cor bem". Eu não tenho notado esse comportamento diretamente, mas é facilmente reprodutível com um xib fresco simples com uma cor bem e uma vista de texto padrão.

Essencialmente, você pode clicar tanto o bem e a cor da fonte e tanto o texto bem e selecionado muda para a cor escolhida. Você pode até mesmo desligar o bem e apenas o texto vai mudar. Você não pode, no entanto, tornar o painel da fonte "let go" do seletor de cores até que você fechar o painel de fonte.

Eu chamaria isso um erro: http://bugreport.apple.com

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top