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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? spooleruserpanel.java

?? 打印管理程序,測試完全通過.windows開發(fā)環(huán)境.
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
package jp.co.ntl.swing.ext.spooler;

import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.List;
import java.util.Vector;

import javax.swing.BorderFactory;
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.JApplet;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JSeparator;
import javax.swing.ListSelectionModel;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.table.TableColumn;

import jp.co.ntl.Net;
import jp.co.ntl.NetworkException;
import jp.co.ntl.Page;
import jp.co.ntl.ServerException;
import jp.co.ntl.SpoolerException;
import jp.co.ntl.TimeOutException;
import jp.co.ntl.Util;
import jp.co.ntl.ext.ButtonSelectionEvent;
import jp.co.ntl.ext.ButtonSelectionListener;
import jp.co.ntl.ext.ButtonStateEvent;
import jp.co.ntl.ext.ButtonStateListener;
import jp.co.ntl.spooler.SpoolerInfo;
import jp.co.ntl.preference.PreferenceInfo;
import jp.co.ntl.swing.TableSorter;
import jp.co.ntl.swing.ext.MsgUtil;
import jp.co.ntl.swing.ext.PrinterButtonUtil;
import jp.co.ntl.swing.ext.SimpleButton;
import jp.co.ntl.swing.ext.ImageInfo;
import jp.co.ntl.swing.ext.MultiLineLabel;

public class SpoolerUserPanel extends AbstractSpoolerPanel implements ActionListener, ListSelectionListener, ButtonSelectionListener {
	//private static Logger log = Logger.getLogger(SpoolerUserPanel.class);
	public static final String	COM_REPAINTFRAME			= "RepaintFrame";
	
	private static final String	PANEL_JOB_LIST				= "JobList";
	private static final String	PANEL_DETAIL_INFO			= "DetailInfo";
	private static final String	PANEL_CONFIRM_DELETE		= "ConfirmDelete";
	
	private static final long serialVersionUID = 1L;
	private JTable					tblSpooler;
	private SpoolerTableModel		mdlSpooler;
	private ListSelectionModel 	mdlSpoolerSelect;
	private JScrollPane			scrSpooler;
	private JLabel					lblStatus;
	private JTable					tblDetail;
	private JScrollPane			scrDetail;
//	private JobDetailTableModel	mdlDetail;
	private JobDetailTableModelBase	mdlDetail;
	private SimpleButton			btnClose;
	private JPanel					cardPanel;
	private MultiLineLabel			lblDelete;
	private SimpleButton			btnYes;
	private SimpleButton			btnNo;
	
	private Vector					vcSpoolerInfo;
	private SpoolerInvoker			invoker;
	private TableSorter			sorter;
	
	private int					queType;
	
	private List					lstBtnStateListener;
	private boolean				accessible;
	private SpoolerUtil			su;
	private CardLayout				layout = null;
	private SpoolerInfo			detailSpoolerInfo;
	
	private JPanel					panelJobList;
	private JPanel					panelConfirm;
	private JPanel					panelDetail;
	
// 2007.10.22 lium 暋悢僾儕儞僞懳墳 mod start
	private	PrinterButtonUtil 		prtBtnUtil;
	
	public SpoolerUserPanel(Container parent, Net net, Object keyInfo, int queType, PrinterButtonUtil prtBtnUtil) {
		this.parent = (JFrame)parent;
		commonConstractor(net, false, keyInfo, queType, prtBtnUtil);
	}
	
	public SpoolerUserPanel(JApplet appl, Net net, Object keyInfo, int queType, PrinterButtonUtil prtBtnUtil) {
		this.app = appl;
		commonConstractor(net, false, keyInfo, queType, prtBtnUtil);
	}
	
	private void commonConstractor(Net net, boolean admin, Object keyInfo, int queType, PrinterButtonUtil prtBtnUtil) {
		lstBtnStateListener = new ArrayList();
		this.prtBtnUtil = prtBtnUtil;
		this.queType = queType;
		super.commonConstractor(net, admin, keyInfo);
	}
// 2007.10.22 lium 暋悢僾儕儞僞懳墳 mod end
	
	protected void buildComponents() {
		Resource.load(loc);
		
		setOpaque(false);
		
	    Page.initialize(net);
	    invoker = SpoolerInvoker.getInstance(net);
	
		setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));

	    JPanel	panelStatus = new JPanel();
	    panelStatus.setOpaque(false);
	    panelStatus.setLayout(new BoxLayout(panelStatus, BoxLayout.X_AXIS));
	    panelStatus.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));
	    
	    lblStatus = new JLabel(Resource.getString(Resource.STATUS));
	    lblStatus.setFont(new Font(null, Font.BOLD, 18));
	    panelStatus.add(lblStatus);
	    panelStatus.add(Box.createHorizontalGlue());
	    add(panelStatus);
	    setStatus(Resource.getString(Resource.STATUS_IDLE));
	    
	    JSeparator separator = new JSeparator();
	    add(separator);
		
		cardPanel = new JPanel();
		layout = new CardLayout();
		cardPanel.setLayout(layout);
		cardPanel.setOpaque(false);
		
		panelJobList = new JPanel();
		panelJobList.setLayout(new BoxLayout(panelJobList, BoxLayout.Y_AXIS));
		panelJobList.setOpaque(false);
		
	    vcSpoolerInfo = new Vector();
	    mdlSpooler = new SpoolerTableModel(admin, vcSpoolerInfo, loc.getLanguage());
	    sorter = new TableSorter(mdlSpooler);
	    tblSpooler = new JTable(sorter);
	    sorter.setTableHeader(tblSpooler.getTableHeader());
	    scrSpooler = new JScrollPane(tblSpooler);
	    tblSpooler.setRowHeight(50);
	    tblSpooler.getTableHeader().setReorderingAllowed(false);
	    tblSpooler.setOpaque(false);
	    scrSpooler.setOpaque(false);
	    
	    TableColumn	column;
	    column = tblSpooler.getColumn(SpoolerTableModel.columnSIZE);
	    column.setPreferredWidth(30);
	    column = tblSpooler.getColumn(SpoolerTableModel.columnCOPY);
	    column.setPreferredWidth(30);
	    column = tblSpooler.getColumn(SpoolerTableModel.columnPAGE);
	    column.setPreferredWidth(30);
	    
	    panelJobList.add(scrSpooler);
	    
	    cardPanel.add(PANEL_JOB_LIST, panelJobList);

	    panelDetail = new JPanel();
	    panelDetail.setLayout(new BoxLayout(panelDetail, BoxLayout.Y_AXIS));
	    panelDetail.setOpaque(false);
	    
//	    vcPaperInfo = new Vector();
//		mdlDetail = new JobDetailTableModel(detailSpoolerInfo, /*vcPaperInfo,*/ loc.getLanguage());
	    detailSpoolerInfo = new SpoolerInfo();
	    if (Util.getPreferenceInfo().getAuthType() == PreferenceInfo.AUTH_LOGIN) {
	    	mdlDetail = new JobDetailLoginTableModel(detailSpoolerInfo, loc.getLanguage());
	    } else {
	    	mdlDetail = new JobDetailTableModel(detailSpoolerInfo, loc.getLanguage());
	    }
		tblDetail = new JTable(mdlDetail);
		scrDetail = new JScrollPane(tblDetail);
		tblDetail.getTableHeader().setReorderingAllowed(false);
		tblDetail.setColumnSelectionAllowed(false);
		tblDetail.setOpaque(false);
		scrDetail.setOpaque(false);
		tblDetail.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
		
		column = tblDetail.getColumnModel().getColumn(1);
		column.setPreferredWidth(300);
		
		panelDetail.add(scrDetail);
		
		JPanel	panelButton = new JPanel();
		panelButton.setOpaque(false);
		panelButton.setLayout(new BoxLayout(panelButton, BoxLayout.X_AXIS));
		panelButton.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));
		panelButton.add(Box.createHorizontalGlue());
		
		Image[]	img = new Image[] {
				ImageInfo.getImage(ImageInfo.BTN_CLOSE_UP),
				ImageInfo.getImage(ImageInfo.BTN_CLOSE_DOWN),
				ImageInfo.getImage(ImageInfo.BTN_CLOSE_UP)
		};
		
		btnClose = new SimpleButton(img[0], img[1], img[2]);
		btnClose.setOpaque(false);
		panelButton.add(btnClose);
		panelDetail.add(panelButton);
		btnClose.addActionListener(this);
		
		cardPanel.add(PANEL_DETAIL_INFO, panelDetail);
		
		panelConfirm = new JPanel();
		panelConfirm.setLayout(new BoxLayout(panelConfirm, BoxLayout.Y_AXIS));
		panelConfirm.setOpaque(false);
		panelConfirm.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));
		
		JPanel	panelDeleteLabel = new JPanel();
		panelDeleteLabel.setLayout(new BorderLayout());
		panelDeleteLabel.setOpaque(false);
		
		lblDelete = new MultiLineLabel("", new Font(null, Font.BOLD, 18), getForeground(), getBackground(), MultiLineLabel.CENTER);
		panelDeleteLabel.add(lblDelete, BorderLayout.CENTER);
		panelConfirm.add(panelDeleteLabel);
		
		panelConfirm.add(Box.createVerticalGlue());
		
		JPanel	panelConfirmButton = new JPanel();
		panelConfirmButton.setOpaque(false);
		panelConfirmButton.setLayout(new BoxLayout(panelConfirmButton, BoxLayout.X_AXIS));
		panelConfirmButton.add(Box.createHorizontalGlue());
		
		img = new Image[] {
				ImageInfo.getImage(ImageInfo.BTN_YES_UP),
				ImageInfo.getImage(ImageInfo.BTN_YES_DOWN),
				ImageInfo.getImage(ImageInfo.BTN_YES_UP),
		};
		btnYes = new SimpleButton(img[0], img[1], img[2]);
		btnYes.setOpaque(false);
		btnYes.addActionListener(this);
	
		img = new Image[] {
				ImageInfo.getImage(ImageInfo.BTN_NO_UP),
				ImageInfo.getImage(ImageInfo.BTN_NO_DOWN),
				ImageInfo.getImage(ImageInfo.BTN_NO_UP)
		};
		btnNo = new SimpleButton(img[0], img[1], img[2]);
		btnNo.setOpaque(false);
		btnNo.addActionListener(this);
				
//		if (GlobalContext.getInstance().getPreferenceInfo().getClientKind() == PreferenceInfo.CLIENT_MAC) {
		if (Util.getPreferenceInfo().getClientKind() == PreferenceInfo.CLIENT_MAC) {
			panelConfirmButton.add(btnNo);
			panelConfirmButton.add(Box.createRigidArea(new Dimension(10, 0)));
			panelConfirmButton.add(btnYes);
		} else {
			panelConfirmButton.add(btnYes);
			panelConfirmButton.add(Box.createRigidArea(new Dimension(10, 0)));
			panelConfirmButton.add(btnNo);
		}
		panelConfirm.add(panelConfirmButton);
		
		cardPanel.add(PANEL_CONFIRM_DELETE, panelConfirm);

	    layout.show(cardPanel, PANEL_JOB_LIST);
	    add(cardPanel);
	    
	    mdlSpoolerSelect = tblSpooler.getSelectionModel();
	    mdlSpoolerSelect.addListSelectionListener(this);
	    mdlSpoolerSelect.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
	    
	    // 2007.10.19 lium 堦妵報(bào)嶞儃僞儞捛壛 mod start
	    tblSpooler.setColumnSelectionAllowed(false);
	    su = new SpoolerUtil(this, tblSpooler, sorter, mdlSpooler, invoker);
	    
	    setButtonState();
	    
//	    spoolerThread.setSendEvent(false);
//	    spoolerThread.start();
//	    spoolerThread.addActionListener(this);
	    startGetSpoolerInfoTimer(true, SPOOLERTHREAD_PERIOD);
	    
	    //su = new SpoolerUtil(this, tblSpooler, sorter, mdlSpooler, invoker);
	    // 2007.10.19 lium 堦妵報(bào)嶞儃僞儞捛壛 mod end
	}
	
	public void beginPanel(Object info, boolean bInit, String targetPrinterName) throws NetworkException, ServerException, TimeOutException {
		this.targetPrinterName = targetPrinterName;
		this.keyInfo = info;
		if (bInit) {
			this.bInit[queType] = false;
			mdlSpooler.deleteAllInfos();
		}
		start();
	}
	
	public void finalize() throws Throwable {
//		if (spoolerThread != null) {
//			if (spoolerThread.isAlive()) {
//				spoolerThread.setEndThreadFlag(true);
//				spoolerThread.interrupt();
//			}
//			spoolerThread = null;
//		}		
		cancelGetSpoolerInfoTimer();
		
		stop();
		super.finalize();
	}
	
	public boolean start() {
//		if (spoolerThread != null) {
//			spoolerThread.setSendEvent(true);		
		if (isGetSpoolerInfoTimerStarted()) {
			setExecGetSpoolerInfo();			
		    if (!bInit[queType]) {
		    	setStatus(MsgUtil.getMessage(MsgUtil.MSG_GETTING_SPOOL_INFO, null));
		    	super.doRefresh();
		    }
		} else {
//			setStatus(MsgUtil.getMessage(MsgUtil.MSG_GETTING_SPOOL_INFO, null));
//			spoolerThread = new SPSToolThread(SPOOLERTHREAD_PERIOD);
//			spoolerThread.setSendEvent(true);
//			spoolerThread.start();
//			spoolerThread.addActionListener(this);
			startGetSpoolerInfoTimer(false, SPOOLERTHREAD_PERIOD);
		}
		
		setAccessible(true);
		
	    setButtonState();

	    return true;
	}
	
	public void stop() {
//		if (spoolerThread != null) {
//			spoolerThread.setSendEvent(false);
//		}
		setIgnoreGetSpoolerInfo();
		
		if (panelDetail.isShowing() || panelConfirm.isShowing()) {
			closeDialog();
		}
		
		setAccessible(false);
	}
	
	public void endPanel() {
		try {
			finalize();
		} catch (Throwable e) {
		}
	}
	
	// 2007.10.19 lium 堦妵報(bào)嶞儃僞儞捛壛 mod start
//	private void setButtonState() {
//		if (panelConfirm.isShowing() || panelDetail.isShowing()) {
//			buttonStateChanged(
//					new int[] {ButtonStateEvent.BTN_PRINT, /*ButtonStateEvent.BTN_CANCEL,*/ ButtonStateEvent.BTN_DELETE, ButtonStateEvent.BTN_DETAIL, ButtonStateEvent.BTN_REFRESH}, 
//					new boolean[] {false, /*false,*/ panelConfirm.isShowing(), panelDetail.isShowing(), false});
//		} else {
//			if (tblSpooler.getSelectedRowCount() == 0) {	
//				buttonStateChanged(
//						new int[] {ButtonStateEvent.BTN_PRINT, /*ButtonStateEvent.BTN_CANCEL,*/ ButtonStateEvent.BTN_DELETE, ButtonStateEvent.BTN_DETAIL, ButtonStateEvent.BTN_REFRESH}, 
//						new boolean[] {false, /*false,*/ false, false, true});
//			} else {
//				boolean	bPrint = false/*, bCancel = false*/;
//			
//				boolean[]	ret = su.checkJobStatus();
//				bPrint = ret[SpoolerUtil.CHECKJOBSTATUS_IDX_RET_PRINT];
/////				bCancel = ret[SpoolerUtil.CHECKJOBSTATUS_IDX_RET_CANCEL];
//	
//				if (tblSpooler.getSelectedRowCount() > 1) {
//					buttonStateChanged(
//							new int[] {ButtonStateEvent.BTN_PRINT, /*ButtonStateEvent.BTN_CANCEL,*/ ButtonStateEvent.BTN_DELETE, ButtonStateEvent.BTN_DETAIL, ButtonStateEvent.BTN_REFRESH}, 
//							new boolean[] {false, /*bCancel,*/ true, false, true});
//				} else {
//					buttonStateChanged(
//							new int[] {ButtonStateEvent.BTN_PRINT, /*ButtonStateEvent.BTN_CANCEL,*/ ButtonStateEvent.BTN_DELETE, ButtonStateEvent.BTN_DETAIL, ButtonStateEvent.BTN_REFRESH}, 
//							new boolean[] {bPrint, /*bCancel,*/ true, true, true});
//				}
//			}
//		}
//	}
	private void setButtonState() {
		if (panelConfirm.isShowing() || panelDetail.isShowing()) {
			buttonStateChanged(
					new int[] {ButtonStateEvent.BTN_PRINT, 
								ButtonStateEvent.BTN_PRINTALL, 
								ButtonStateEvent.BTN_DELETE, 
								ButtonStateEvent.BTN_DETAIL, 
								ButtonStateEvent.BTN_REFRESH,
								ButtonStateEvent.BTN_HEAD_1,
								ButtonStateEvent.BTN_HEAD_2,
								ButtonStateEvent.BTN_HEAD_3,
								ButtonStateEvent.BTN_HEAD_4,
								ButtonStateEvent.BTN_HEAD_5
					}, 
					new boolean[] {false, 
								false,
								panelConfirm.isShowing(), 
								panelDetail.isShowing(), 
								false
								,false, false, false, false, false
					});
		} else {
			// 報(bào)嶞壜偺僕儑僽偑偁傞応崌丄true傪栠傞
			boolean bPrintAll = su.hasPrintableJob();

			if (tblSpooler.getSelectedRowCount() == 0) {	
				buttonStateChanged(
						new int[] {ButtonStateEvent.BTN_PRINT, 
								ButtonStateEvent.BTN_PRINTALL, 
								ButtonStateEvent.BTN_DELETE, 
								ButtonStateEvent.BTN_DETAIL, 
								ButtonStateEvent.BTN_REFRESH,
								
								ButtonStateEvent.BTN_HEAD_1,
								ButtonStateEvent.BTN_HEAD_2,
								ButtonStateEvent.BTN_HEAD_3,
								ButtonStateEvent.BTN_HEAD_4,
								ButtonStateEvent.BTN_HEAD_5
								}, 
						new boolean[] {false, bPrintAll, false, false, true
									 	,true, true, true, true, true
						});
			} else {
				boolean	bPrint = false;				

				boolean[]	ret = su.checkJobStatus();
				bPrint = ret[SpoolerUtil.CHECKJOBSTATUS_IDX_RET_PRINT];
				
				if (tblSpooler.getSelectedRowCount() > 1) {

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
综合久久久久久| 丝袜亚洲精品中文字幕一区| 欧美视频一区在线| 国产一区二区久久| 一区二区高清免费观看影视大全| 日韩午夜激情av| 色综合久久88色综合天天| 久久99国产精品久久99| 亚洲日本一区二区| 久久免费视频色| 91精品在线麻豆| 在线观看欧美精品| 成人h动漫精品一区二| 久久99精品久久只有精品| 亚洲大片一区二区三区| 日韩一区欧美小说| 久久伊人蜜桃av一区二区| 欧美日韩一卡二卡三卡| 色综合欧美在线| 粉嫩一区二区三区性色av| 久久精工是国产品牌吗| 亚洲h动漫在线| 亚洲精品视频在线看| 日本一区二区三区久久久久久久久不| 91麻豆精品国产91久久久久 | 亚洲色图视频网| 久久久国际精品| 亚洲精品在线观| 日韩精品一区二区三区三区免费| 欧美午夜电影网| 在线视频综合导航| 91亚洲永久精品| 91小宝寻花一区二区三区| 国产成人99久久亚洲综合精品| 捆绑调教美女网站视频一区| 天天射综合影视| 丝袜亚洲另类丝袜在线| 五月天精品一区二区三区| 亚洲一区二区五区| 亚洲一区在线免费观看| 亚洲黄色小视频| 夜夜爽夜夜爽精品视频| 一区二区三区四区不卡在线| 亚洲六月丁香色婷婷综合久久 | 美国欧美日韩国产在线播放| 日韩精品一二三四| 日本少妇一区二区| 蜜桃一区二区三区在线观看| 美女视频一区二区| 国产一区免费电影| 国产盗摄精品一区二区三区在线 | 中文在线一区二区| 中文无字幕一区二区三区| 国产精品欧美极品| 亚洲色图都市小说| 亚洲一级二级在线| 日韩av网站免费在线| 国产揄拍国内精品对白| 国产宾馆实践打屁股91| 色综合久久88色综合天天免费| 日本伦理一区二区| 欧美一级片在线| 久久影院午夜论| 日韩一区中文字幕| 日韩成人一区二区三区在线观看| 日本欧美加勒比视频| 国产福利91精品一区二区三区| 成人av资源在线观看| 色综合久久久网| 日韩欧美国产三级| 中文字幕视频一区二区三区久| 一区二区三区在线观看国产| 日韩电影免费在线观看网站| 国产suv一区二区三区88区| 成人18视频日本| 在线播放欧美女士性生活| 欧美精品一区二区三区视频| 国产精品每日更新在线播放网址| 亚洲美女偷拍久久| 久久精品国产第一区二区三区| 国产精品一品二品| 91成人免费网站| 日韩欧美一二三| 亚洲色图制服丝袜| 狠狠网亚洲精品| 91福利精品视频| 久久精品视频免费| 丝袜亚洲另类欧美| 91日韩精品一区| 日韩亚洲欧美在线| 亚洲精品日日夜夜| 国产成人h网站| 在线观看91av| 亚洲男人电影天堂| 国内精品在线播放| 午夜精品久久久久久久久久久 | 99视频精品在线| 91麻豆精品国产91久久久| 日韩一区有码在线| 国产精品综合网| 欧美丝袜丝交足nylons| 欧美国产激情一区二区三区蜜月| 亚洲国产日韩一级| www.av亚洲| 精品999在线播放| 日日欢夜夜爽一区| 91色|porny| 国产精品―色哟哟| 国内久久精品视频| 91精品国产入口| 亚洲精品视频一区二区| 国产不卡在线视频| 久久综合九色综合欧美亚洲| 亚洲不卡一区二区三区| 色综合久久综合| 中文字幕不卡一区| 国精产品一区一区三区mba桃花| 欧美体内she精视频| 亚洲精品自拍动漫在线| 不卡在线观看av| 国产欧美一区二区精品性色超碰 | 六月婷婷色综合| 欧美精选午夜久久久乱码6080| 亚洲人成在线播放网站岛国 | 精品国产乱码久久久久久蜜臀| 亚洲国产视频一区| 91国偷自产一区二区使用方法| 国产三区在线成人av| 国产资源精品在线观看| 欧美一区二区黄色| 美国十次了思思久久精品导航| 欧美人与禽zozo性伦| 亚洲成人自拍偷拍| 欧美日韩中文字幕精品| 亚洲午夜日本在线观看| 欧美在线小视频| 亚洲国产cao| 欧美日韩精品福利| 肉色丝袜一区二区| 日韩亚洲欧美成人一区| 免费国产亚洲视频| 日韩视频在线你懂得| 老司机精品视频一区二区三区| 日韩欧美国产午夜精品| 精品午夜久久福利影院| 精品国产乱码久久久久久久久| 经典一区二区三区| 国产午夜一区二区三区| 成人综合在线观看| 亚洲欧美一区二区不卡| 色婷婷av一区二区三区之一色屋| 亚洲同性同志一二三专区| 欧美羞羞免费网站| 五月综合激情网| 精品国产一区二区三区不卡 | 日本aⅴ亚洲精品中文乱码| 91精品国产一区二区三区 | 欧美视频一区二区三区在线观看| 一区二区三区欧美日韩| 91行情网站电视在线观看高清版| 亚洲第一在线综合网站| 91精品免费在线| 国产一区亚洲一区| 亚洲另类一区二区| 欧美高清hd18日本| 国产精品一区二区在线播放 | 成人av在线观| 国产亚洲欧美色| 色综合激情久久| 久久99久久精品| 国产精品黄色在线观看| 欧美日韩免费高清一区色橹橹| 日本成人在线网站| 国产色一区二区| 欧美体内she精高潮| 国产一区二区在线看| 亚洲免费观看在线视频| 日韩欧美电影在线| 99免费精品在线观看| 日韩va欧美va亚洲va久久| 国产农村妇女毛片精品久久麻豆| 在线观看www91| 国产激情一区二区三区| 亚洲一区二区在线免费看| 久久这里只精品最新地址| 色88888久久久久久影院野外| 久久99久久精品欧美| 一区二区三区免费观看| 欧美大片免费久久精品三p| 91丨porny丨在线| 极品少妇一区二区| 亚洲自拍偷拍欧美| 国产亚洲欧美一区在线观看| 欧美日韩精品欧美日韩精品一| 国产成人亚洲综合色影视| 亚洲国产欧美在线| 中文字幕精品三区| 欧美成人午夜电影| 9191成人精品久久| 色婷婷国产精品综合在线观看|