亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? swtcalendar.java

?? Swt 日歷控件
?? JAVA
字號:
/*
 *  SWTCalendar.java  - A calendar component for SWT
 *  Author: Mark Bryan Yu
 *  Modified by: Sergey Prigogin
 *  swtcalendar.sourceforge.net
 *
 *  Permission is hereby granted, free of charge, to any person obtaining a copy of
 *  this software and associated documentation files (the "Software"), to deal in the
 *  Software without restriction, including without limitation the rights to use, copy,
 *  modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
 *  and to permit persons to whom the Software is furnished to do so, subject to the
 *  following conditions:
 *
 *  The above copyright notice and this permission notice shall be included in all copies
 *  or substantial portions of the Software.
 *
 *  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
 *  INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 *  PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL SIMON TATHAM BE LIABLE FOR ANY CLAIM,
 *  DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 *  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 */
package org.vafada.swtcalendar;

import java.util.Calendar;
import java.util.Locale;

import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Spinner;


public class SWTCalendar extends Composite {
    /**
     * Style constant for making Sundays red.
     */
    public static final int RED_SUNDAY = SWTDayChooser.RED_SUNDAY;
    /**
     * Style constant for making weekends red.
     */
    public static final int RED_WEEKEND = SWTDayChooser.RED_WEEKEND;

    private boolean settingDate;

    private Spinner yearChooser;
    private SWTMonthChooser monthChooser;
    private SWTDayChooser dayChooser;
    private boolean settingYearMonth;

    /**
     * Constructs a calendar control.
     *
     * @param parent a parent container.
     * @param style  FLAT to make the buttons flat, or NONE.
     */
    public SWTCalendar(Composite parent, int style) {
        super(parent, (style & ~(SWT.FLAT | RED_WEEKEND)));

        Calendar calendar = Calendar.getInstance();

        {
            final GridLayout gridLayout = new GridLayout();
            gridLayout.marginHeight = 0;
            gridLayout.marginWidth = 0;
            gridLayout.horizontalSpacing = 2;
            gridLayout.verticalSpacing = 2;
            setLayout(gridLayout);
        }

        final Composite header = new Composite(this, SWT.NONE);

        {
            {
                final GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
                header.setLayoutData(gridData);
                final GridLayout gridLayout = new GridLayout();
                gridLayout.numColumns = 3;
                gridLayout.marginWidth = 0;
                gridLayout.marginHeight = 0;
                header.setLayout(gridLayout);
            }

            final RepeatingButton prevMonthButton = new RepeatingButton(header, SWT.ARROW | SWT.LEFT | SWT.CENTER | (style & SWT.FLAT));
            prevMonthButton.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_FILL));
            prevMonthButton.setRepeatDelay(100);
            prevMonthButton.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    previousMonth();
                }
            });

            final Composite composite = new Composite(header, SWT.NONE);
            composite.setLayoutData(new GridData(GridData.GRAB_HORIZONTAL | GridData.HORIZONTAL_ALIGN_CENTER));
            {
                final GridLayout gridLayout = new GridLayout();
                gridLayout.numColumns = 2;
                gridLayout.marginWidth = 0;
                gridLayout.marginHeight = 0;
                composite.setLayout(gridLayout);
            }
            header.setTabList(new Control[]{composite});

            monthChooser = new SWTMonthChooser(composite);
            monthChooser.setLayoutData(new GridData(GridData.FILL_VERTICAL));
            monthChooser.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    if (!settingYearMonth) {
                        dayChooser.setMonth(monthChooser.getMonth());
                    }
                }
            });

            yearChooser = new Spinner(composite, SWT.BORDER);
            yearChooser.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_FILL));
            yearChooser.setMinimum(1);
            yearChooser.setMaximum(9999);
            yearChooser.setIncrement(1);
            yearChooser.setPageIncrement(10);
            yearChooser.setSelection(calendar.get(Calendar.YEAR));
            yearChooser.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    if (!settingYearMonth) {
                        dayChooser.setYear(yearChooser.getSelection());
                    }
                }
            });

            final RepeatingButton nextMonthButton = new RepeatingButton(header, SWT.ARROW | SWT.RIGHT | SWT.CENTER | (style & SWT.FLAT));
            nextMonthButton.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_FILL));
            nextMonthButton.setRepeatDelay(100);
            nextMonthButton.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    nextMonth();
                }
            });
        }

        {
            dayChooser = new SWTDayChooser(this, SWT.BORDER | (style & RED_WEEKEND));
            GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
            gridData.horizontalSpan = 3;
            dayChooser.setLayoutData(gridData);
            dayChooser.addSWTCalendarListener(new SWTCalendarListener() {
                public void dateChanged(SWTCalendarEvent event) {
                    refreshYearMonth(event.getCalendar());
                }
            });
        }

        setTabList(new Control[]{header, dayChooser});

        setFont(parent.getFont());
    }

    public SWTCalendar(Composite parent) {
        this(parent, SWT.FLAT);
    }

    public void setCalendar(Calendar cal) {
        settingDate = true;
        try {
            refreshYearMonth(cal);
            dayChooser.setCalendar(cal);
        } finally {
            settingDate = false;
        }
    }

    private void refreshYearMonth(Calendar cal) {
        settingYearMonth = true;
        yearChooser.setSelection(cal.get(Calendar.YEAR));
        monthChooser.setMonth(cal.get(Calendar.MONTH));
        settingYearMonth = false;
    }

    public void nextMonth() {
        Calendar cal = dayChooser.getCalendar();
        cal.add(Calendar.MONTH, 1);
        refreshYearMonth(cal);
        dayChooser.setCalendar(cal);
    }

    public void previousMonth() {
        Calendar cal = dayChooser.getCalendar();
        cal.add(Calendar.MONTH, -1);
        refreshYearMonth(cal);
        dayChooser.setCalendar(cal);
    }

    public Calendar getCalendar() {
        return dayChooser.getCalendar();
    }

    public void addSWTCalendarListener(SWTCalendarListener listener) {
        dayChooser.addSWTCalendarListener(listener);
    }

    public void removeSWTCalendarListener(SWTCalendarListener listener) {
        dayChooser.removeSWTCalendarListener(listener);
    }

    public void setLocale(Locale locale) {
        monthChooser.setLocale(locale);
        dayChooser.setLocale(locale);
        yearChooser.setSelection(getCalendar().get(Calendar.YEAR));
    }

    /* (non-Javadoc)
     * @see org.eclipse.swt.widgets.Control#setFont(org.eclipse.swt.graphics.Font)
     */
    public void setFont(Font font) {
        super.setFont(font);
        monthChooser.setFont(font);
        yearChooser.setFont(font);
        dayChooser.setFont(font);
    }

    public boolean isSettingDate() {
        return settingDate;
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91黄视频在线| 日韩精品一区国产麻豆| 国产在线视视频有精品| 精品无人码麻豆乱码1区2区| 久久国产欧美日韩精品| 国产伦精品一区二区三区视频青涩| 国产大陆a不卡| 99re在线精品| 日韩久久久久久| 中文字幕在线观看不卡| 偷偷要91色婷婷| av在线一区二区三区| 69久久99精品久久久久婷婷| 国产日韩欧美一区二区三区综合| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 亚洲午夜精品在线| 国产一区二区免费在线| 国产99久久久精品| 欧美无砖砖区免费| 精品国产一区二区国模嫣然| 亚洲天堂2014| 国产传媒欧美日韩成人| 欧美精品18+| 亚洲另类春色国产| 国产黄色精品网站| 欧美猛男男办公室激情| 国产日产欧产精品推荐色| 午夜激情一区二区| 日韩av一级电影| 95精品视频在线| 欧美刺激午夜性久久久久久久| 最新久久zyz资源站| 国产一区视频在线看| 欧美视频中文字幕| 国产精品日产欧美久久久久| 免费在线观看不卡| 色婷婷综合久久久| 国产精品国产精品国产专区不蜜| 免费高清视频精品| 欧美三级资源在线| 中文字幕精品一区二区精品绿巨人 | 日韩国产欧美在线视频| 99精品一区二区| 中文字幕巨乱亚洲| 粉嫩绯色av一区二区在线观看| 日韩视频一区二区三区| 性做久久久久久免费观看| 97精品视频在线观看自产线路二| 日韩精品一区二区在线| 婷婷激情综合网| 欧美影院一区二区三区| 亚洲靠逼com| 91在线看国产| 中文字幕中文字幕中文字幕亚洲无线| 国产一区二区在线视频| 欧美tk—视频vk| 久久国产乱子精品免费女| 日韩欧美激情在线| 精品一区二区三区在线视频| 亚洲精品一区二区在线观看| 久久www免费人成看片高清| 欧美成人aa大片| 久久99热这里只有精品| 久久久久国产精品麻豆ai换脸 | 亚洲免费看黄网站| 在线观看日韩av先锋影音电影院| 中文字幕一区二区在线观看| 丁香五精品蜜臀久久久久99网站| 国产精品久久久久久久久动漫 | 久久精品久久精品| 久久综合九色综合97婷婷| 国产一区高清在线| 国产精品狼人久久影院观看方式| 91亚洲精华国产精华精华液| 亚洲最色的网站| 欧美一区二区三区日韩| 国产精品综合在线视频| 国产精品久久久久久久久晋中 | 欧美午夜精品一区二区蜜桃| 日韩av不卡在线观看| 精品国产乱码久久| 色综合久久88色综合天天6| 亚洲福利视频一区二区| 久久影视一区二区| 97aⅴ精品视频一二三区| 日韩影院在线观看| 日本一区二区三级电影在线观看| 一本色道亚洲精品aⅴ| 日韩国产在线一| 中文在线一区二区 | 欧美人牲a欧美精品| 国产精品亚洲第一区在线暖暖韩国| 国产精品不卡在线观看| 欧美一区二区国产| 色综合天天天天做夜夜夜夜做| 日韩成人一区二区三区在线观看| 欧美mv日韩mv| 欧美亚洲动漫精品| 国产成人h网站| 视频在线观看一区二区三区| 亚洲国产高清在线| 91精品国产综合久久久蜜臀图片| 国产sm精品调教视频网站| 午夜久久久久久久久久一区二区| 国产日韩v精品一区二区| 91精品在线免费观看| 91色porny在线视频| 国产一区福利在线| 日韩成人dvd| 亚洲午夜在线观看视频在线| 国产精品私人影院| 制服丝袜av成人在线看| av一本久道久久综合久久鬼色| 久久99精品国产麻豆婷婷| 亚洲午夜精品网| 国产精品二三区| 久久久久久久久免费| 91精品国产乱| 欧洲一区在线电影| 99国产精品久| 成人黄动漫网站免费app| 另类调教123区 | 亚洲女厕所小便bbb| 久久亚洲精华国产精华液| 777色狠狠一区二区三区| 一本大道综合伊人精品热热 | 国产精品久久久久永久免费观看| 欧美videofree性高清杂交| 欧美精品高清视频| 在线观看一区二区视频| 91色porny蝌蚪| youjizz国产精品| 成人精品国产福利| 成人动漫av在线| 激情六月婷婷久久| 黄网站免费久久| 国产原创一区二区| 国产揄拍国内精品对白| 国产一区二区三区免费播放| 久久国产婷婷国产香蕉| 精品在线亚洲视频| 国产精品一二一区| 国产成人午夜高潮毛片| 国产精品自在欧美一区| 国产精品一区二区三区99| 国产精品2024| 成人性色生活片免费看爆迷你毛片| 国产成人午夜精品影院观看视频| 国产白丝网站精品污在线入口| 成人免费黄色在线| 91社区在线播放| 欧美日韩国产首页在线观看| 日韩欧美中文一区| 久久这里只有精品视频网| 国产亚洲视频系列| 国产精品传媒视频| 亚洲国产精品久久人人爱| 午夜精品久久久久久久| 老色鬼精品视频在线观看播放| 精品写真视频在线观看| 国产成人欧美日韩在线电影| 99麻豆久久久国产精品免费| 欧美综合久久久| 欧美一级欧美一级在线播放| 精品国产凹凸成av人导航| 欧美激情一区二区在线| 亚洲人成伊人成综合网小说| 五月婷婷激情综合| 国产在线一区观看| 99久久伊人精品| 欧美亚洲一区三区| 精品日韩在线观看| 国产精品久久久久影视| 亚洲国产精品久久不卡毛片| 狠狠色2019综合网| 色综合激情五月| 欧美成人激情免费网| 国产精品久久久久久久久久免费看 | 麻豆成人久久精品二区三区小说| 国产精品综合二区| 欧美怡红院视频| 欧美xxxxx裸体时装秀| 国产精品成人免费| 美女脱光内衣内裤视频久久影院| 精品国免费一区二区三区| 中文字幕不卡在线播放| 日韩在线一区二区| av成人动漫在线观看| 欧美裸体一区二区三区| 国产精品色呦呦| 麻豆精品视频在线观看视频| 成人av免费在线| 日韩精品一区在线| 亚洲午夜电影在线| 9人人澡人人爽人人精品| 欧美一区二区免费| 亚洲精选视频免费看| 国产精品亚洲一区二区三区在线| 欧美另类z0zxhd电影| 最近日韩中文字幕|