<!DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN>
<html>
  <head>
    <title>tk_bisque, tk_setPalette</title>
  </head>
  <body>
    <h1>tk_bisque, tk_setPalette</h1>

    <p>Модифицирует цветовую палитру Tk.</p>

    <h2><a name=СИНТАКСИС></a>СИНТАКСИС</h2> 

    <pre>
      <strong>tk_setPalette</strong> <em>фон</em>
      <strong>tk_setPalette</strong> <em>имя значение</em> ?<em>имя значение ...</em>
      <strong>tk_bisque</strong>
    </pre>

    <h2><a name=ОПИСАНИЕ></a>ОПИСАНИЕ</h2> 

    <p>Процедура <strong>tk_setPalette</strong> изменяет цветовую
      схему Tk. Это происходит за счет изменения цветов в существующих
      примитивах и внесения изменений в базу данных параметров, в
      результате чего будущие примитивы будут пользоваться новой
      цветовой схемой. При выполнении команды
      <strong>tk_setPalette</strong> с единственным аргументом, этим
      аргументом является имя цвета, который становится нормальным
      цветом фона; процедура <strong>tk_setPalette</strong> вычисляет
      всю палитру цветов на основе этого цвета фона. Если же аргументы
      команды <strong>tk_setPalette</strong> включают несколько пар
      <em>имя-значение</em>, то имя это имя параметра, а второй
      элемент пары представляет собой новое значение параметра. В
      настоящее время поддерживаются следующие имена параметров в базе
      данных:</p>

    <ul>
      <li><strong>activeBackground</strong></li> 
      <li><strong>activeForeground</strong></li> 
      <li><strong>background</strong></li> 
      <li><strong>disabledForeground</strong></li> 
      <li><strong>foreground</strong></li> 
      <li><strong>highlightBackground</strong></li> 
      <li><strong>highlightColor</strong></li> 
      <li><strong>insertBackground</strong></li> 
      <li><strong>selectBackground</strong></li> 
      <li><strong>selectColor</strong></li> 
      <li><strong>selectForeground</strong></li> 
      <li><strong>troughColor</strong></li> 
    </ul>

    <p>Процедура <strong>tk_setPalette</strong> пытается вычислить
      разумные значения по умолчанию для любого незаданного
      параметра. Можно указать и параметры, отличные от приведенных
      выше, и Tk изменит значения и этих параметров. Такая возможность
      полезна при использовании специальных примитивов с
      дополнительными цветовыми параметрами.</p>

    <p>После того, как новое значение каждого из цветовых параметров
      вычислено, <strong>tk_setPalette</strong> просматривает иерархию
      примитивов, чтобы изменить значения параметров всех существующих
      примитивов. Для каждого примитива она проверяет, определен ли
      для него какой-либо из заданных параметров. Если это так и если
      текущее значение параметра совпадает со значением по умолчанию,
      то это значение заменяется новым; если же текущее значение
      отлично от значения по умолчанию, то
      <strong>tk_setPalette</strong> не изменяет его. Значением
      параметра по умолчанию является то, которое порождено примитивом
      <strong>([lindex [ configure ] 3])</strong> или, если
      процедура <strong>tk_setPalette</strong> выполнялась и раньше,
      то значение, установленное ее предыдущим выполнением.</p>

    <p>После модификации всех примитивов в приложении
      <strong>tk_setPalette</strong> добавляет параметры в базу данных
      параметров, изменяя значения по умолчанию для будущих
      примитивов. Новые параметры добавляются с приоритетом
      widgetDefault, поэтому они будут подавлены параметрами из файла
      <strong>.Xdefaults</strong> или параметрами, заданными в
      командной строке, создающей примитив.</p>

    <p>Процедура <strong>tk_bisque</strong> обеспечивает совместимость
      с предыдущими версиями: она задает схему &quot;bisque&quot; на
      основе светло-коричневого (бисквитного) цвета, которая
      использовалась в Tk 3.6 и более ранних версиях.</p>

  </body>
</html>