160 lines
		
	
	
		
			6.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			160 lines
		
	
	
		
			6.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 | ||
| <html>
 | ||
|   <head>
 | ||
|     <title>selection</title>
 | ||
|   </head>
 | ||
|   <body>
 | ||
|     <h1>selection</h1>
 | ||
| 
 | ||
|     <p>Управление X выделением</p>
 | ||
| 
 | ||
|     <h2><a name="СИНТАКСИС"></a>СИНТАКСИС</h2>
 | ||
| 
 | ||
|     <pre>
 | ||
|       <strong>selection</strong> <em>параметр</em> ?<em>арг арг...</em>?
 | ||
|     </pre>
 | ||
| 
 | ||
|     <h2><a name="ОПИСАНИЕ"></a>ОПИСАНИЕ</h2>
 | ||
| 
 | ||
|     <p>Команда предоставляет интерфейс Tcl для механизма Х выделения и
 | ||
|       реализует полный набор функций выделения, описанный в
 | ||
|       (1). Аргумент <em>параметр</em> определяет формат последующих
 | ||
|       аргументов и поведение команды. В настоящее время поддерживаются
 | ||
|       следующие формы команды:</p>
 | ||
| 
 | ||
|     <dl>
 | ||
|       <dt><strong>selection clear</strong>
 | ||
| 	?<strong>-displayof</strong> <em>окно</em>?
 | ||
| 	?<strong>-selection</strong> <em>выделение</em>?</dt>
 | ||
| 
 | ||
|       <dd>Если на дисплее окна имеются выделения, их следует очистить
 | ||
| 	так, чтобы ни одно из окон не владело выделением. Параметр
 | ||
| 	<em>выделение</em> задает X выделение, которое должно быть
 | ||
| 	очищено; его значением должно быть имя атома, например,
 | ||
| 	PRIMARY или CLIPBOARD; полное описание см. в (1). По умолчанию
 | ||
| 	значением параметра <em>выделение</em> является PRIMARY, а
 | ||
| 	параметра <em>окно</em> ".". Команда возвращает
 | ||
| 	пустую строку.</dd>
 | ||
| 
 | ||
|       <dt><strong>selection get</strong> ?<strong>-displayof</strong>
 | ||
| 	<em>окно</em> ?<strong>-selection</strong> <em>выделение</em>?
 | ||
| 	?<strong>-type</strong> <em>тип</em>?</dt>
 | ||
| 
 | ||
|       <dd>Ищет выделение на дисплее окна и возвращает его значение в
 | ||
| 	качестве результата. По умолчанию значением параметра
 | ||
| 	<em>выделение</em> является <strong>PRIMARY</strong>, а
 | ||
| 	параметра <em>окно</em> ".". Параметр <em>тип</em>
 | ||
| 	задает вид возвращаемого результата (в терминологии (1)
 | ||
| 	"цель"), его значением должно быть имя атома,
 | ||
| 	например, <strong>STRING</strong> или
 | ||
| 	<strong>FILE_NAME</strong>; полное описание см. (1). По
 | ||
| 	умолчанию он имеет значение <strong>STRING</strong>. Владелец
 | ||
| 	выделения может выбрать для его вывода любой из форматов
 | ||
| 	<strong>STRING</strong>, <strong>ATOM</strong>,
 | ||
| 	<strong>INTEGER</strong> и т.д. (этот формат отличается от
 | ||
| 	типа выделения; детально различия описаны в (1)). Если формат,
 | ||
| 	в котором выделение возвращается, не строковый, например,
 | ||
| 	<strong>INTEGER</strong> или <strong>ATOM</strong>, то команда
 | ||
| 	<strong>selection</strong> преобразует выделение в строковый
 | ||
| 	формат, представляя его в виде набора полей, разделенных
 | ||
| 	пробелами: атомы представляются своими текстовыми именами, а
 | ||
| 	все остальное преобразуется в последовательность
 | ||
| 	шестнадцатиричных цифр.</dd>
 | ||
| 
 | ||
|       <dt><strong>selection handle</strong>
 | ||
| 	?<strong>-selection</strong> <em>выделение</em>?
 | ||
| 	?<strong>-type</strong><em>тип</em>? ?<strong>-format</strong>
 | ||
| 	<em>формат</em>? <em>окно команда</em></dt>
 | ||
| 
 | ||
|       <dd><p>Создает программу обработки запросов на поиск выделения:
 | ||
| 	  при каждой попытке поиска выделения указанного типа в окне
 | ||
| 	  (например, командой <strong>selection get</strong>) будет
 | ||
| 	  выполняться <em>команда</em> . По умолчанию значением
 | ||
| 	  параметра <em>выделение</em> является PRIMARY, параметра
 | ||
| 	  <em>тип</em> STRING, и параметра <em>формат</em> тоже
 | ||
| 	  STRING. Если значением параметра <em>команда</em> является
 | ||
| 	  пустая строка, то все программы обработки для указанного
 | ||
| 	  <em>окна</em> , <em>типа</em> и <em>выделения</em>
 | ||
| 	  удаляются.</p>
 | ||
| 
 | ||
| 	<p>Если при запросе выделения окно является его владельцем и
 | ||
| 	  <em>выделение</em> имеет указанный тип, то к команде
 | ||
| 	  добавляется два числа (отделенных пробелами от имени команды
 | ||
| 	  и друг от друга) и она исполняется как команда Tcl. Эти два
 | ||
| 	  дополнительных числа представляют собой смещение и максБайт:
 | ||
| 	  смещение задает положение первого символа в выделении, а
 | ||
| 	  максБайт максимальное количество байтов для
 | ||
| 	  поиска. Возвращаемое командой значение должно начинаться с
 | ||
| 	  указанного символа в выделении и должно быть не длиннее
 | ||
| 	  максБайт. Для очень больших выделений (длина которых
 | ||
| 	  превышает максБайт) поиск будет повторяться многократно с
 | ||
| 	  возрастающими смещениями. Если длина строки, возвращаемой
 | ||
| 	  командой, меньше максБайт, то предполагается, что
 | ||
| 	  возвращенное значение включает в себя весь остаток
 | ||
| 	  выделения; если длина результата совпадает с максБайт, то
 | ||
| 	  команда будет выполняться повторно пока она не возвратит,
 | ||
| 	  наконец, строку, более короткую, чем указано параметром
 | ||
| 	  максБайт. Значение максБайт всегда довольно велико (порядка
 | ||
| 	  нескольких тысяч байтов).</p>
 | ||
| 
 | ||
| 	<p>Если в результате работы команды возникает ошибка, то
 | ||
| 	  запрос на поиск отвергается, как если бы никакого выделения
 | ||
| 	  вообще не существовало.</p>
 | ||
| 
 | ||
| 	<p>Аргумент <em>формат</em> задает представление, используемое
 | ||
| 	  для передачи выделения автору запроса (см. (1), второй
 | ||
| 	  столбец в Таблице 2), его значение по умолчанию STRING. Если
 | ||
| 	  значением аргумента <em>формат</em> является STRING, то
 | ||
| 	  <em>выделение</em> передается в виде 8-битовых символов
 | ||
| 	  ASCII (т.е. в том же виде, в каком его возвращает
 | ||
| 	  команда). Если его значение ATOM, то возвращаемое значение
 | ||
| 	  разбивается на поля, отделенные друг от друга пробелами;
 | ||
| 	  каждое поле преобразуется в свое атомарное значение и вместо
 | ||
| 	  имени атома передается 32-битовое атомарное значение. В
 | ||
| 	  любом другом формате возвращаемое командой значение
 | ||
| 	  разбивается на поля, отделенные друг от друга пробелами, и
 | ||
| 	  каждое поле преобразуется в целое 32-битовое число;
 | ||
| 	  полученный массив целых чисел передается автору запроса.</p>
 | ||
| 
 | ||
| 	<p>Аргумент <em>формат</em> необходим лишь для обеспечения
 | ||
| 	  совместимости пользователям, не использующим Tk. Если для
 | ||
| 	  поиска выделения используется Tk, то на выходе из запроса
 | ||
| 	  результат преобразуется назад в строку, поэтому аргумент
 | ||
| 	  формат не играет роли.</p>
 | ||
|       </dd>
 | ||
|       
 | ||
|       <dt><strong>selection own</strong> ?<strong>-displayof</strong>
 | ||
| 	<em>окно</em>? ?<strong>-selection</strong>
 | ||
| 	<em>выделение</em>?</dt>
 | ||
| 
 | ||
|       <dt><strong>selection own</strong>
 | ||
| 	?<strong>-command</strong> <em>команда</em>?
 | ||
| 	?<strong>-selection</strong> <em>выделение</em>?
 | ||
| 	<em>окно</em></dt>
 | ||
| 
 | ||
|       <dd><p>Первая форма команды <strong>selection own</strong>
 | ||
| 	  возвращает имя пути окна в данном приложении, владеющего
 | ||
| 	  <em>выделением</em> на дисплее, содержащем <em>окно</em>;
 | ||
| 	  если таких окон нет, то команда возвращает пустую строку. По
 | ||
| 	  умолчанию значением параметра <em>выделение</em> является
 | ||
| 	  PRIMARY, а параметра <em>окно</em> ".".</p>
 | ||
| 	
 | ||
| 	<p>Вторая форма команды <strong>selection own</strong> делает
 | ||
| 	  <em>окно</em> новым владельцем <em>выделения</em> на дисплее
 | ||
| 	  окна; она возвращает пустую строку. Текущий владелец
 | ||
| 	  <em>выделения</em> (если такой существует) получает
 | ||
| 	  сообщение о том, что он потерял выделение. Если задан
 | ||
| 	  параметр <em>команда</em>, то его значением является скрипт
 | ||
| 	  Tcl, который должен исполняться при попытке какого-либо
 | ||
| 	  другого окна заявить права на выделение вне данного окна. По
 | ||
| 	  умолчанию значением параметра <em>выделение</em> является
 | ||
| 	  PRIMARY.</p>
 | ||
|       </dd>
 | ||
|     </dl>
 | ||
| 
 | ||
|   </body>
 | ||
| </html>
 | ||
| 
 | ||
| 
 | ||
| 
 | 
