Недавно в очередном альбоме с рабочими столами увидел у кого-то большую кнопку в центре экрана для запуска Dota 2 и понял, что хочу себе такую же, чтобы запускать любимую Counter-Strike Source, в которую играю больше всего. Обычно для этого используют лаунчеры для Rainmeter'а, я же не люблю использовать сторонние программы для оформления системы.

Так что я решил написать себе гаджет для рабочего стола, давно хотел это попробовать. Итак, что такое гаджет Windows 7? Это .zip-архив с расширением .gadget. Он обязательно должен содержать манифест - файл gadget.xml. А по сути гаджет является html-страничкой, к которой прикручиваются стили, скрипты и так далее. Мой гаджет будет самым простым - картинка с навешенной на нее ссылкой.

Сначала создаем файл gadget.xml:

<?xml version="1.0" encoding="utf-8" ?>
<gadget>
<name>CSS launcher</name> <!-- Название гаджета -->
<version>1.0</version> <!-- Версия гаджета -->
<author name="John Spade"> <!-- Имя автора -->
<info url="johnspade.ru" /> <!-- Ссылка на сайт -->
</author>
<description>Просто кнопка для запуска Counter-Strike Source</description> <!-- Описание -->
<hosts>
<host name="sidebar">
<base type="HTML" apiVersion="1.0.0" src="gadget.html" /> <!-- Ссылка на html-файл -->
<permissions>full</permissions>
<platform minPlatformVersion="0.3" />
</host>
</hosts>
</gadget>

Permissions full, platform minPlatformVersion 0.3 и apiVersion 1.0.0 - обязательные параметры по спецификации. Название, имя автора и другая информация будут отображаться в центре управления гаджетами:


Еще можно указать логотип гаджета, я этого не сделал.

Теперь пишем сам гаджет, файл gadget.html:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
body {
margin: 0px;
width: 230px;
height: 108px;
}
a img {
border: none;
}
</style>
</head>
<body>
<g:background opacity="0"></g:background>
<div><a href="steam://rungameid/240"><img src="image.jpg" width="230"></a></div>
</body>
</html>

Здесь я просто вставляю картинку, которая будет кнопкой и прикрепляю к ней ссылку. Ссылка не на ярлык игры, а на запуск приложения в Стиме. IE может спросить, действительно ли вы хотите запустить стороннее приложение для обработки ссылки, можно поставить галочку "Больше не спрашивать".

Некоторые моменты в коде требуют пояснения. Стилевые параметры margin и height для body надо выставить обязательно, это размер гаджета. Я сделал его равным размеру картинки. border: none для a img убирает рамку вокруг картинок с ссылками, которую автоматически отображает Internet Explorer. g:background - специальный тег для управления фоном гаджета, opacity="0" делает его прозрачным.

Далее запаковываем все файлы нашего гаджета в .zip-архив и изменяем его расширение на .gadget. Теперь запускаем этот файл и гаджет появится в Центре гаджетов и на рабочем столе:


Сначала я хотел использовать милую кругленькую png-кнопку с прозрачностью, но в гаджете края таких картинок становятся розовыми О_о Я не знаю, в какую сторону копать, так что отказался от этой затеи.

Если вам нужно, вы можете скачать мой гаджет:


Поиск