forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Monkey (http://forum.boolean.name/forumdisplay.php?f=163)
-   -   Jentos.Code (http://forum.boolean.name/showthread.php?t=19012)

Жека 07.04.2014 12:23

Ответ: Jentos IDE
 
Mr_F_, спасибо!

wolfhound512, может инфа устарела? у меня в аккаунте пэйпала указан российский адрес. при этом он позволяет создавать кнопки пожертвований.
при создании кнопки есть такое примечание:
Данная кнопка предназначена для сбора средств. Если вы не собираете средства на какой-либо проект, выберите другую функцию. Некоммерческим организациям следует подтвердить свой статус, чтобы иметь возможность выводить со счета получаемые пожертвования. Пользователи, представляющие некоммерческие организации, не прошедшие проверку, должны продемонстрировать распределение пожертвований, как только их общая сумма достигнет 10 000 долл. США.

Я не уверен смогу ли подтвердить свой статус, организации как таковой нет.
Кто-нибудь шарит в этом? Дайте совет.

Жека 08.04.2014 09:32

Ответ: Jentos IDE
 
На счёт доната - я указал, что пожертвование делается лично для меня; полагаю, это устраняет проблему "некоммерческая организация".

Залил исходники: https://github.com/engor/Jentos_IDE

Жека 08.04.2014 14:24

Ответ: Jentos IDE
 
Товарищ с форума monkey-x.com собрал версию для OS X.
http://yadi.sk/d/vkMnvW7wM2TEN

Какой-то японец задонатил $20. :)

Жека 09.04.2014 14:31

Ответ: Jentos IDE
 
Тот же товарищ собрал версию для линукса.
http://yadi.sk/d/Z5G_G4YbM5uc5

Жека 10.04.2014 08:48

Ответ: Jentos IDE
 
Вложений: 1
Товарищи, нужна помощь по улучшению тёмного варианта справки.
У меня сейчас вот такие моменты есть:
Вложение 20381
т.е. белый фон в таблицах, который не в тему.
С помощью инспектора элементов не смог понять, где этот цвет устанавливается.

Подскажите, где изменить этот цвет в стилях?

Randomize 10.04.2014 09:42

Ответ: Jentos IDE
 
PHP код:

table td{
   
background-color#ccc;



Жека 10.04.2014 11:16

Ответ: Jentos IDE
 
Randomize, ты в теории сказал, но всё равно это привело меня к решению.:)

Оказывается есть заморочка в css, позволяющая задать стиль каждому n-му элементу:
Код:

.content table tr:nth-child(even) > td {
  background-color: #f9f9f9;
}


Randomize 10.04.2014 12:38

Ответ: Jentos IDE
 
Цитата:

Сообщение от Жека (Сообщение 278709)
Randomize, ты в теории сказал

Вопрос был задан в теории. Я могу только предрасполагать каким образом ты переопределяешь стандартный css справки. Твой стиль задаётся после основного стиля от Марка или ты правишь конкретно его CSS?
Так же можно использовать флаг !important для css правил, хотя не рекомендую потому что это костыль.

Жека 10.04.2014 14:34

Ответ: Jentos IDE
 
Да, я не уточнил что речь идёт про файл pagestyle.css - переделанный мной вариант дефолтного файла.
Я правил сам файл, закомментировав значения, которые требовали замены.
Приведённый мной выше кусок стилей - то что было по дефолту.

Жека 13.04.2014 08:29

Ответ: Jentos IDE
 
Создал страничку проги в гугл+.

Жека 03.06.2014 08:07

Ответ: Jentos IDE
 
Понял, что пришло время почитать.
http://netzor.org/uploads/posts/2009...76857_qt45.jpg

Пилю потихоньку новую версию.

Жека 09.06.2014 08:39

Ответ: Jentos IDE
 
Похоже, я приготовил винегрет из сигналов и слотов, - не могу отловить из-за чего крашится прога.

Делаю анализ импортов (import myfile).

Проблема такая: есть пара исходных файлов, в первый файл импортим второй. Далее открываем обы файла в иде и нормально можно редактировать оба, навигация по коду будет и всё прочее. Потом закрываем второй файл. Т.к. он есть в импорте первого, то в codetree видим оба, но теперь при выборе элемента в дереве из второго класса - слетает прога.
Есть подсказка: QtGui.dll.

(пишу в надежде на принцип "как только выскажешь, так и решение находится")

Жека 11.06.2014 10:44

Ответ: Jentos IDE
 
Проблема оказалась неожиданной.
Код мы пишем в элементе QTextDocument. Каждая строчка - это QTextBlock. Я в момент парсинга запоминаю в элементе ссылку на блоки, в которых объявлены классы/переменные/функции.
Для юзерских файлов нет проблем, т.к. документ открыт и все блоки "живы".
Но вот для парсинга модулей манки процедура та же, но после выхода из парсинга документ удаляется, соответственно и ссылки на его блоки становятся кривыми.

У меня такая проверка была:
Код:

if( block.isValid() ) {
    //тут переходим к нужной строчке в файле, если файла нет - открываем
    int line = block.blockNumber(); //вот тут вылетала прога!
}

Я полагал, что проверка блока на валидность меня спасёт. Ан-нет.
В итоге начал переходить просто по ранее запомненному (на этапе парсинга) номеру блока, и всё пашет.

Ещё:

Переделал систему выбора элементов в codetree и sourcelist.
Завёл две хэшмапы для хранения ссылок на элементы анализатора кода.
Нужность их подкрепляется тем, что есть перегрузка методов, а значит одинаковые названия методов могут быть в разных классах. Но это тоже пофиг. Не пофиг стало после того, как я сделал опцию "Показывать родительские элементы" для списка sourcelist. Теперь 1 экземпляр из анализатора может попадать в несколько классов. Я в самом экземпляре хранил ссылку на пункт в codetree для мгновенного доступа к элементу при щелчке, но теперь ссылка затирается последней, т.е. в базовом классе ссылка будет на тот что его унаследовал.

Сделал по простому, строю полный "путь" для пункта в codetree и для самого элемента анализатора codeitem.
пример полного пути:
Код:

test.monkey$A$my_method:Void()
имя_файла$имя_класса$имя_члена_класса

Теперь можно однозначно получать ссылки на элементы, с любой вложенностью.

В данный момент доделываю определение типов переменных при "неявном назначении" через :=.
Примеры:
Код:

'
Local s1:String = "s1"
Local s2 := s1    's2 становится типом String, после точки выдаются все методы для строк
'
Local lst := new List<String>    'lst становится типом List<String>, после точки выдаются все методы для списка

Скоро релиз.:rolleyes:

Жека 19.06.2014 10:07

Ответ: Jentos IDE
 
Вложений: 1
Кроме прочего сделал поиск использований переменной (Find Usages).
Доделываю Rename и выкладываю.
Вложение 20632

Жека 19.06.2014 12:50

Ответ: Jentos IDE
 
Сделал переименование. Пора делать промо: скрины, новое описание на сайт и на форумы.
Просто для прикола функция замены:
Код:

void MainWindow::onUsagesRename() {
    QString newIdent = _ui->editUsagesRename->text();
    if(newIdent == "") {
        QMessageBox::information(this,"Rename","Field 'Rename with' is empty! Enter correct value.");
        return;
    }
    QWidget *w = _ui->usagesTabWidget->currentWidget();
    w = w->layout()->itemAt(0)->widget();
    QTreeWidget *tree = dynamic_cast<QTreeWidget*>(w);
    if(!tree)
        return;
    int newLen = newIdent.length();
    bool selOnly = _ui->chbUsageSelectedOnly->isChecked();
    QTreeWidgetItem *root = tree->invisibleRootItem();
    for(int k = 0; k < root->childCount(); ++k) {
        QTreeWidgetItem *item = root->child(k);
        bool first = true;
        int delta = 0;
        for(int j = 0; j < item->childCount(); ++j) {
            QTreeWidgetItem *sub = item->child(j);
            if(selOnly && sub->checkState(0) != Qt::Checked) {
                continue;
            }
            UsagesResult *u = UsagesResult::item(sub);
            if(u) {
                if(first) {
                    openFile(u->path, true);
                    first = false;
                }
                if(_codeEditor) {
                    int from = u->positionStart+delta;
                    int to = u->positionEnd+delta;
                    _codeEditor->replaceInRange(from, to, newIdent);
                    delta += (newLen - u->ident.length());
                }
            }
        }
    }
}



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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot