Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Общие вопросы о Flash (не затрагивающие ActionScript) (http://www.flasher.ru/forum/forumdisplay.php?f=60)
-   -   Создание «продуманных» сниппетов в FlashDevelop (http://www.flasher.ru/forum/showthread.php?t=138549)

koIIImarik 10.04.2010 16:37

Создание «продуманных» сниппетов в FlashDevelop
 
Всем привет.

Интересно обсудить с кем-нибудь, кто пользуется FlashDevelop, как вы создаёте сниппеты, которые работают немного сложнее, чем обычные вставки кода. Вот пример одного моего сниппета для создания get/set подобных функций, почему я не люблю использовать стандартный Shift + Ctl + 1 и создание тру get/set это уже другой вопрос, так что просто пример моего сниппета:

Код AS3:

/**
 * Functions for work with parameter $(Clipboard).
 */

 
/**
 * Function to set scores $(Clipboard) value.
 *
 * @param        value new value of $(Clipboard) parameter.
 */

public function set$(Clipboard)(value:String):void
{
        this.$(Clipboard) = value;
}
 
/**
 * Function to set scores $(Clipboard) value.
 *
 * @return        value of $(Clipboard) parameter.
 */

public function get$(Clipboard)():String
{
        return this.$(Clipboard);
}

Запись $(Clipboard) означает, что на это место будет вставлен текст, который я перед этим скопировал. То есть если я скопировал название переменной scores, то получится следующий текст:

Код AS3:

/**
 * Functions for work with parameter scores.
 */

 
/**
 * Function to set scores scores value.
 *
 * @param        value new value of scores parameter.
 */

public function setscores(value:String):void
{
        this.scores = value;
}
 
/**
 * Function to set scores scores value.
 *
 * @return        value of scores parameter.
 */

public function getscores():String
{
        return this.scores;
}

Как видно из кода, функции будут названы setscores и getscores, что не очень правильно, а правильным было бы setScores и getScores.

Вопрос: сталкивался ли кто-нибудь с подобной проблемой и, если да, то как вы её решали?

Ещё интересует, можно ли как-нибудь использовать русский текст в сниппетах? Просто, когда я пытался вставлять русский текст в сниппет, он в коде вставлялся в качестве каких-то иероглифов.

Zik. 10.04.2010 16:54

Может скопировать "Scores", не?

koIIImarik 10.04.2010 16:57

2 ZIK68:
Тогда будут получаться записи наподобие return this.Scores;, что тоже не правильно.

Понятно, что всегда можно подправить «неудачные» моменты вручную, я так сейчас и делаю, но хотелось бы узнать, есть ли способ полностью автоматизировать эту работу.

iNils 10.04.2010 17:07

Я использую такой
Код AS3:

$$(access=public,private,internal,protected) $$(override=,override )$$(static=,static )function get $$(name) ():$$(type=Number,String,Boolean,int,uint) {
        return _$$(name);
}
$$(access=public,private,internal,protected) $$(override=,override )$$(static=,static )function set $$(name) (value:$$(type)):void {
        if (value == _$$(name)) {
                return;
        }
        _$$(name) = value$(EntryPoint);
}


koIIImarik 10.04.2010 17:11

2 iNils:
Спасибо огромное, очень крутой сниппет. Скажите пожалуйста, где вы узнали о подобных конструкциях и о возможностях создавать диалоговые окна для сниппетов? Я первый раз встречаю такое.

И, может быть, вы знаете как обойти баг с кириллицей в сниппетах?

iNils 10.04.2010 18:47

Их добавили в одной из версии, не помню в какой. А узнать о новинках можно на форуме фд, с каждым релизом есть текст с описанием, что добавили и пофиксили. Более подробно можно узнать из комментариев в svn к каждой ревизии. Например к ревизии 941.

К слову об удобстве. Это конечно большой шаг вперед, но хочется больше возможностей. И радиобаттоны, и выпадающие списки, и условия, и произвольный порядок.

А кириллица... просто кодировка сниппета и документа не совпадает. Но смена вручную мало чем поможет, там другой баг есть, но про него Mur4ik уже написал. Так что когда (ну когда же!?) выйдет релиз 3.1 баг уже наверно поправят.

koIIImarik 10.04.2010 22:13

Клёво, спасибо за подробное описание ещё раз =) Но вроде как, если сниппеты сохраняются в кодировке UTF-8, которая, как я понимаю, по-хорошему должна использоваться там, чтобы поддерживать мультиязычность, то сниппеты и документы у меня используют одинаковую кодировку.

В общем будем ждать следующего релиза =)


Часовой пояс GMT +4, время: 07:21.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.