LINUX.ORG.RU

java, ненависть, дефолтный внешний вид (gtk)

 , ,


0

2

решил я в свою игру писаную на libGDX добавить диалог. Ну реализовал интерфейс(если правильно понял как это называется, неважно сейчас), под андроид запилил нативный. И стал вопрос десктопа. Погуглил, прочитал про Swing. Подумал что это то что нужно, мне же простой диалог(вы уверены что хотите выйти с игры) нужно было сделать. Написал такой код

try {
    UIManager.setLookAndFeel("com.sun.java.swing.plaf.gtk.GTKLookAndFeel");
}
catch (Exception e) {
    //Exception handle
}

//

Object[] options = {"Yes, please",
        "No, thanks",
        "No eggs, no ham!"};

int n = JOptionPane.showOptionDialog(f,
        "Would you like some green eggs to go "
                + "with that ham?",
        "A Silly Question",
        JOptionPane.YES_NO_CANCEL_OPTION,
        JOptionPane.QUESTION_MESSAGE,
        null,
        options,
        options[2]);

Компилирую это и получаю

Error parsing gtk-icon-sizes string: ''
Иду в гугл, узнаю в чем проблема, дальше редактирую свою тему(Numix, одна из стандартных тем в xubuntu) выполняя следующее:
in <YOUR THEME>/gtk-2.0/gtkrc:
gtk-icon-sizes =
"panel-menu=24,24:panel=20,20:gtk-button=18,18:gtk-large-toolbar=24,24"

Заработало, выглядит почти красиво. Но теперь собственно вопрос. А ЭТО ВООБЩЕ НОРМАЛЬНО? Такое поведение на одной из стандартных тем в xubutnu. Этот тупой Swing валится из-за того что не нашел какую-то строку? А вариант реализовать некое дефолтное знание в таком случае не судьба? В общем это долбаная джава меня достала. Сначала тупая idea почему-то решила загрузить i7 на ~50% на несколько минут, то прозрачные окна, то просто отвратительная графика(А ведь я не дизайнер, я пользуюсь простенькой xfce и не хочу каких-то красивых эффектов). Но поскольку ничего лучшего нет((Хочу плакать и умирать) то задам вопрос.

А что мне собственно делать в этой конкретной ситуации? Может убрать к чертям этот диалог из игры на десктопе(Я про эту игру)(все равно многие закрывают просто кликнув по крестику, а не через Esc). Или может убрать вот эту строчку

UIManager.setLookAndFeel("com.sun.java.swing.plaf.gtk.GTKLookAndFeel");

И использовать джавашный(крайне убогий) стиль? Или swing это просто неудачный выбор и есть что-то годное?

★★★

Ответ на: комментарий от asaw

Они тебе русским языком пишут: «The minimum version we require is glibc 2.14».

Если бы это было requirement, то об этом приложение должно русским языком говорить при запуске, а не падать в корку. А сейчас узнать об этом можно либо из багтрекера, либо из вывода ldd.

Выполняй это требование и нет проблем.

я не выполняю это требование и запускаю эклипс с GTK2, т.е. это не требование, а прихоть.

Либо не используй GTK3.

я использую GTK3 и он отлично работает, скорее нужно сказать не используй бажный SWT.

maloi ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.