⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dbdataview.java

📁 eclipse的hibernate插件,支持eclipse2.*版本
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		//viewer.getControl().setMenu(menu);		sqlText.setMenu(menu);	}			private void hookContextMenu() {		MenuManager menuMgr = new MenuManager("#PopupMenu");		menuMgr.setRemoveAllWhenShown(true);		menuMgr.addMenuListener(new IMenuListener() {			public void menuAboutToShow(IMenuManager manager) {				DBDataView.this.fillContextMenu(manager);			}		});		Menu menu = menuMgr.createContextMenu(viewer.getControl());		viewer.getControl().setMenu(menu);		getSite().registerContextMenu(menuMgr, viewer);	}	private void contributeToActionBars() {		IActionBars bars = getViewSite().getActionBars();		fillLocalPullDown(bars.getMenuManager());		fillLocalToolBar(bars.getToolBarManager());	}	/**下拉菜单*/	private void fillLocalPullDown(IMenuManager manager) {		manager.add(firstPageAction);		manager.add(prePageAction);		manager.add(nextPageAction);		manager.add(endPageAction);		manager.add(new Separator("Additions"));		manager.add(hideSqlTextAction);	}	private void fillContextMenu(IMenuManager manager) {		manager.add(firstPageAction);		manager.add(prePageAction);		manager.add(nextPageAction);		manager.add(endPageAction);		// Other plug-ins can contribute there actions here		manager.add(new Separator("Additions"));	}		private void fillLocalToolBar(IToolBarManager manager) {		manager.add(firstPageAction);		manager.add(prePageAction);		manager.add(nextPageAction);		manager.add(endPageAction);		manager.add(new Separator("Additions"));		manager.add(hideSqlTextAction);		manager.add(new Separator("Additions"));		//manager.add(exceteSqlAction);		//manager.add(new Separator("Additions"));			}		private void makeActions() {		//浏览第一页的事件		firstPageAction = new Action() {			public void run() {				pageList.setCurrentPage(1);				changeTableData();			}		};		firstPageAction.setText(res.getString("DatabaseView.FirstPage"));		firstPageAction.setToolTipText(res.getString("DatabaseView.FirstPage"));		firstPageAction.setImageDescriptor(PlatformUI.getWorkbench().getSharedImages().			getImageDescriptor(ISharedImages.IMG_OBJS_INFO_TSK));		//浏览上一页的事件		prePageAction = new Action() {			public void run() {				pageList.setCurrentPage(pageList.getCurrentPage()-1);				changeTableData();				//showMessage("Goto the next Page");			}		};		prePageAction.setText(res.getString("DatabaseView.PrePage"));		prePageAction.setToolTipText(res.getString("DatabaseView.PrePage"));		prePageAction.setImageDescriptor(PlatformUI.getWorkbench().getSharedImages().			getImageDescriptor(ISharedImages.IMG_OBJS_TASK_TSK));				//浏览下一页的事件					nextPageAction = new Action() {			public void run() {				pageList.setCurrentPage(pageList.getCurrentPage()+1);				changeTableData();			}		};		nextPageAction.setText(res.getString("DatabaseView.NextPage"));		nextPageAction.setToolTipText(res.getString("DatabaseView.NextPage"));		nextPageAction.setImageDescriptor(PlatformUI.getWorkbench().getSharedImages().			getImageDescriptor(ISharedImages.IMG_OBJS_TASK_TSK));					//浏览下一页的事件					endPageAction = new Action() {			public void run() {				pageList.setCurrentPage(pageList.getTotalPage());				changeTableData();			}		};		endPageAction.setText(res.getString("DatabaseView.EndPage"));		endPageAction.setToolTipText(res.getString("DatabaseView.EndPage"));		endPageAction.setImageDescriptor(PlatformUI.getWorkbench().getSharedImages().			getImageDescriptor(ISharedImages.IMG_OBJS_TASK_TSK));						//隐藏/显示输入筐的事件				hideSqlTextAction = new Action() {			public void run() {				//TO DO ddd				if(hideSqlText){					fullForm.setWeights(new int[] {20, 80});					hideSqlTextAction.setText(res.getString("DatabaseView.SQLText.Hide"));					hideSqlTextAction.setToolTipText(res.getString("DatabaseView.SQLText.Hide"));				}else{					fullForm.setWeights(new int[] {0, 80});					hideSqlTextAction.setText(res.getString("DatabaseView.SQLText.Show"));					hideSqlTextAction.setToolTipText(res.getString("DatabaseView.SQLText.Show"));				}				hideSqlText = !hideSqlText;			}		};		hideSqlText = false;		hideSqlTextAction.setText(res.getString("DatabaseView.SQLText.Hide"));		hideSqlTextAction.setToolTipText(res.getString("DatabaseView.SQLText.Hide"));		hideSqlTextAction.setImageDescriptor(PlatformUI.getWorkbench().getSharedImages().			getImageDescriptor(ISharedImages.IMG_OBJS_TASK_TSK));			//执行SQL语句的Action				exceteSqlAction = new Action() {			public void run() {				//TO DO 执行SQL语句的Action				executSQL();			}		};		exceteSqlAction.setText(res.getString("DatabaseView.SQL.Execute"));		exceteSqlAction.setToolTipText(res.getString("DatabaseView.SQL.Execute"));		exceteSqlAction.setImageDescriptor(PlatformUI.getWorkbench().getSharedImages().			getImageDescriptor(ISharedImages.IMG_OBJS_TASK_TSK));									//鼠标双击事件		doubleClickAction = new Action() {			public void run() {//				ISelection selection = viewer.getSelection();//				Object obj = ((IStructuredSelection)selection).getFirstElement();//				showMessage("Double-click detected on "+obj.toString());			}		};	}	private void hookDoubleClickAction() {		viewer.addDoubleClickListener(new IDoubleClickListener() {			public void doubleClick(DoubleClickEvent event) {				doubleClickAction.run();			}		});	}	private void showMessage(String message) {		MessageDialog.openInformation(			viewer.getControl().getShell(),			res.getString("DatabaseView.Title"),			message);	}	/**	 * Passing the focus request to the viewer's control.	 */	public void setFocus() {		viewer.getControl().setFocus();	}	/**	 * @return	 */	protected List getDataList() {		return dataList;	}	protected void executSQL(){		//TO DO executge SQL		//changDatas();			String sql = "";		if(!DealString.equalsIgnoreCase(sqlText.getText(),"")){			sql = DealString.trim(sqlText.getText());		}else{			MessageDialog.openError(this.parent.getShell(),res.getString("TanghanPlugin.ExecuteSQL.Error"),res.getString("TanghanPlugin.ExecuteSQL.MissSQL"));			return;		}				if(dbConn != null){			AbstractDealDatabaseInfo dealTable = AbstractDealDatabaseInfo.getInstance(ITanghanConstants.DEALDATABASEINFO,dbConn);			try{				SQLResult sqlRes = dealTable.executeSQL(sql);				switch(sqlRes.getResultType()){					case SQLResult.COUNT:						MessageDialog.openInformation(this.parent.getShell(),res.getString("TanghanPlugin.ExecuteSQL.Result"),sqlRes.getCount()+res.getString("TanghanPlugin.ExecuteSQL.UpdateCount"));						break;					case SQLResult.LIST:						changDatas(sqlRes.getList());												firstPageAction.setEnabled(false);						prePageAction.setEnabled(false);						nextPageAction.setEnabled(false);						endPageAction.setEnabled(false);												break;					default:						break;				}			}catch(TanghanException ex){				ErrorDialog.openError(this.parent.getShell(),res.getString("TanghanPlugin.ExecuteSQL.Error"),res.getString("TanghanPlugin.ExecuteSQL.Error"),									new Status(IStatus.ERROR,ITanghanConstants.PLUGIN_ID,IStatus.OK,ex.getCauseException().getMessage(),ex.getCauseException()));			}catch(Exception ex){				ErrorDialog.openError(this.parent.getShell(),res.getString("TanghanPlugin.ExecuteSQL.Error"),res.getString("TanghanPlugin.ExecuteSQL.Error"),								new Status(IStatus.ERROR,ITanghanConstants.PLUGIN_ID,IStatus.OK,ex.getMessage(),ex));			}			return;		}else{			MessageDialog.openError(this.parent.getShell(),res.getString("TanghanPlugin.ExecuteSQL.Error"),res.getString("TanghanPlugin.ExecuteSQL.MissConnectionInfo"));			return;					}					}	/**	 * @param list 新的列表数据	 */	protected void setDataList(List list) {		Assert.isNotNull(list);		dataList = list;		if(list.size()<2){			dataIndexs = EmptyDataIndexs;		}else{			dataIndexs = new Integer[dataList.size()-1];			for(int i=1;i<dataList.size();i++){				dataIndexs[i-1] = new Integer(i);			}		}	}	/**更新列表数据,并更新显示	 * @param list 新的列表数据	 * */	public void changDatas(List list){		setDataList(list);		clearDatas();		createColumns();		viewer.refresh();	}	/**更新列表数据,并更新显示	 * @param datas 新的列表数据	 * */	public void changDatas(String[][] datas){		int ll = datas[0].length;		int ww = datas.length;		ArrayList arrayls = new ArrayList(ll+1);					for (int w = 0; w < ll; w++) {			String[] strs = new String[ww];			for (int i = 0; i < ww; i++) {				strs[i] = DealString.trim(datas[i][w]);			}			arrayls.add(strs);		}		changDatas(arrayls);	}	/**修改当前连接信息*/	public void changeDBConnection(DBConnection connInfo){		Assert.isNotNull(connInfo);		this.setTitle(connInfo.getConnectionName());		dbConn = connInfo;		this.tableName = "";		clearDatas();			}	/**修改显示的数据*/	public void changeTableData(		DBConnection connInfo,		String tableName,		PageList pl) {			Assert.isNotNull(connInfo);			//Assert.isTrue(!DealString.equals(tableName,""));			changeDBConnection(connInfo);			this.tableName = tableName;			if (pl == null) {				//TO DO 添加分页显示的条件				//pl = new PageList(1, 11);				pl = TanghanPlugin.getDefault().getDefaultPageList();				pl.setCurrentPage(1);			} 			pageList = pl;			changeTableData();			/*			DealDatabaseInfo dealTable = DealDatabaseInfo.getInstance("standard",dbConn);			String[][] dataStrs = dealTable.getNotes(tableName, pageList); //1,20);			if (dataStrs == null)				return;			changDatas(dataStrs);			changActionStatus();*/	}	/**修改显示的数据*/	protected void changeTableData(){		Assert.isNotNull(dbConn);		AbstractDealDatabaseInfo dealTable = AbstractDealDatabaseInfo.getInstance(ITanghanConstants.DEALDATABASEINFO,dbConn);		String[][] dataStrs = dealTable.getNotes(tableName, pageList); //1,20);		if (dataStrs == null)			return;		changDatas(dataStrs);		changActionStatus();			}		private void changActionStatus(){		if(pageList!=null&&(!pageList.isShowAll())){			if(pageList.getCurrentPage()<2){				firstPageAction.setEnabled(false);				prePageAction.setEnabled(false);			}else{				firstPageAction.setEnabled(true);				prePageAction.setEnabled(true);			}			if(pageList.getCurrentPage()<pageList.getTotalPage()){				nextPageAction.setEnabled(true);				endPageAction.setEnabled(true);			}else{				nextPageAction.setEnabled(false);				endPageAction.setEnabled(false);			}					}else{			firstPageAction.setEnabled(false);			prePageAction.setEnabled(false);			nextPageAction.setEnabled(false);			endPageAction.setEnabled(false);		}	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -