• Как поменять тему оформления в произвольном Java-приложении?

    KhanTengri
    @KhanTengri
    Вообще, я не вижу серьезной проблемы в этом…

    Сперва скажу, что получать список существующих тем смысла нет.
    Для каждой конкретной версии jdk они всегда и везде одинаковы.
    Например, для jdk6, как выше и написали уже, они будут такими:

    Metal
    javax.swing.plaf.metal.MetalLookAndFeel
    Nimbus
    com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel
    CDE/Motif
    com.sun.java.swing.plaf.motif.MotifLookAndFeel
    

    Исключением является только Mac, где добавляется тема:

    Mac OS X
    com.apple.laf.AquaLookAndFeel
    

    Все остальные темы, вроде Alloy, Stubstance, Synthetica etc. вы добавляете сами, руками.

    Конкретно по вашему вопросу…
    Я не думаю, что вот эти вот цветовые изменения, которые вы хотие делать, можно делать параметрами при запуске.
    Все изменения цветов рамочек, фонов и проч. — это все кастомизация интерфейса.
    Для примера, вы можете глянуть приложение Metalworks, которое поставляется со всеми jdk от компании Oracle.
    Вы можете найти его здесь: <JAVA_HOME>/demo/jfc/Metalworks/Metalworks.jar
    Загляните в код(в папке рядом) и увидете, что все цветовые схемы там прописаны мануально (вызовами методов или чтением собственных конфигов)

    Самый лучший вариант для вас, как я считаю — это написать собственный класс, который расширяет одну из тем, например, javax.swing.plaf.metal.MetalLookAndFeel и прописать там какого цвета рамочка вам нужна. Как вариант, вы можете этот класс написать таким образом, чтобы он просто считывал рядом лежащий properties файл. Это даст вам возможность легко менять цвета, без перекомпиляции класса. Затем, скомпилировав этот класс, просто положите его туда, где jdk сможет его найти (что бы не править постоянно CLASSPATH) и запускайте ваш NetBeans с названием этого вашего класса LaF…
    Это даже проще, потому что вам не придется постоянно помнить названия sun'овских пакетов…
    Ваши com.example.laf.CustomTheme
    против sun'овских com.sun.java.swing.plaf.motif.MotifLookAndFeel, например…
    Ответ написан
    Комментировать
  • Простой и удобный графический редактор для MAC OS?

    KhanTengri
    @KhanTengri
    Немного не в тему, но все же… Попробуйте нечто совсем иное — picnik.com
    Это даст вам возможность и на PC и на Mac работать с одной и той же программой.
    Ответ написан
  • Как указать mod_rewrite исключения, к которым не следует применять правило?

    KhanTengri
    @KhanTengri Автор вопроса
    Просто задачи, которые мне предстоит решать требуют того, чтобы сервлет-контейнер был как можно ближе к корню / притянут. Изначально все так и было, как вы предлагаете. Сервлет-контейнер обрабатывал всё в контексте /app/ В таком случае даже конструкцию RewriteCond с REQUEST_URI, которую вы предлагаете, писать не нужно. Достаточно только:

    RewriteRule ^/([A-Za-z0-9_-]+)$ /app/user?name=$1 [PT,L]
    

    И все запросы виртуальных директорий просто не будут касаться той, которую обрабатывает сервлет-контейнер. Однако в таком случае страница index в корне не может быть динамической… Она будет либо html(http://example.com/index.html) либо ее тоже rewrite'ом надо будет маппить на jsp или servlet в директории /app/, что неправильно.
    В моем же примере index-страница может быть динамической(http://example.com/index.jsp) без rewrite'ов

    Относительно того, что каждый сервлет придется прописывать в ручную — их не так много и они не так часто меняются/добавляются.
    Ответ написан