• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

为JEdit设置墙纸(add wallpaper for je

servlet/jsp 搞代码 7年前 (2018-06-18) 136次浏览 已收录 0个评论

1). 前提(condition)+ jedit4.2final+ jdk 1.42). 步骤(steps)1. add this at org.gjt.sp.jedit.textarea.TextAreaPainterin method paintComponent(…)after:        extensionMgr.paintScreenLineRange(textArea, gfx, firstInvalid,                lastInvalid, y, height);add:        { // paint wallpaper after all that should be paint        Rectangle rect = this.getVisibleRect();        Wallpaper.paintWallpaper(gfx, rect.x, rect.y, rect.width,                rect.width, this);        }        2. add in org.gjt.sp.jedit.textarea.JEditTextArea        //    {{{ changeWallpaperDialog() method   // for change the wallpaper    /**         * Displays the ‘changeWallpaperDialog’ dialog box.     * @author neoedmund     */    public void changeWallpaperDialog()    {            if (Wallpaper.changeWallpaper(this)){            repaint();                }    } //}}}3. add new class org.gjt.sp.jedit.textarea.Wallpaper/* * Created on 2005-3-26 */package org.gjt.sp.jedit.textarea;import java.awt.AlphaComposite;import java.awt.Composite;import java.awt.Graphics2D;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import javax.imageio.ImageIO;import javax.swing.JComponent;import javax.swing.JFileChooser;/** * @author neoe */public class Wallpaper {        static BufferedImage pic;    private static final String DEFALUT_IMG = "org/gjt/sp/jedit/icons/wallpaper.jpg";    static{        System.out.println("hello Wallpaper");        loadPic(ClassLoader                .getSystemResourceAsStream(DEFALUT_IMG));            }        static AlphaComposite alpha = AlphaComposite.getInstance(            AlphaComposite.SRC_OVER, 0.2f);    /**     * @param gfx     * @param width     * @param height     */    public static void paintWallpaper(Graphics2D g, int cx, int cy, int width, int height, JComponent view) {        if (pic==null){            return;        }        int y = 0;        int w = pic.getWidth();        int h = pic.getHeight();        Composite old = g.getComposite();        g.setComposite(alpha);        while (true) {            int x = 0;            while (true) {                g.drawImage(pic, cx+x, cy+y, view);                x += w;                if (w <= 0 || x >= width) {                    break;                }            }            y += h;            if (h <= 0 || y >= height) {                break;            }        }        g.setComposite(old);    }    /**     * @param in     */    private static void loadPic(InputStream in) {        try {            pic = ImageIO.read(in);        } catch (IOException e) {                        e.printStackTrace();        }            }    static File f;    /**     *      */    public static boolean changeWallpaper(JComponent parent) {        JFileChooser jfc = new JFileChooser(f);        int returnVal = jfc.showOpenDialog(parent);        if (returnVal == JFileChooser.APPROVE_OPTION) {            f = jfc.getSelectedFile();            try {                loadPic(new FileInputStream(f));                return true;            } catch (IOException e1) {                e1.printStackTrace();            }        }        return false;    }}4. copy default wallpaper whatever you like into org/gjt/sp/jedit/icons/wallpaper.jpg5. add this into org/gjt p/jedit/actions.xml<ACTION NAME="change-wallpaper">    <CODE>        textArea.changeWallpaperDialog();    </CODE></ACTION>6. change org/gjt p/jedit/jedit_gui.props, add "change-wallpaper" in tool bar#{{{ Tool barview.toolbar=new-file open-file close-buffer save – print page-setup – /    undo redo cut copy paste – find find-next – new-view unsplit /    split-horizontal split-vertical – buffer-options global-options – /    plugin-manager – help – change-wallpaper………change-wallpaper.icon=Help.png……..change-wallpaper.label=Change $Wallpaper7. last step, rebuild source, restart jedit, have fun. notes: I don`t know if it is something slowdown, but I like it :)

欢迎大家阅读《为JEdit设置墙纸(add wallpaper for je》,跪求各位点评,若觉得好的话请收藏本文,by 搞代码


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:为JEdit设置墙纸(add wallpaper for je
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址