Révision 3689

TXM/trunk/bundles/org.txm.rcp/src/main/java/org/txm/rcp/editors/TableKeyListener.java (revision 3689)
121 121
	 */
122 122
	public static void copyLinesToClipboard(TableViewer[] viewers) {
123 123
		
124
		if (viewers == null) return;
125
		if (viewers.length == 0) return;
126
		
124 127
		StringBuffer str = new StringBuffer();
125 128
		
126
		for (int l = 0; l < viewers[0].getTable().getSelection().length; l++) {
129
//		for (int l = 0; l < viewers[0].getTable().getSelection().length; l++) {
130
//			TableColumn col = viewers[0].getTable().getColumn(l);
131
//			if (l > 0) str.append("\t"); //$NON-NLS-1$
132
//			str.append(col.getText());
133
//		}
134
//		str.append("\n");
135
		
136
		int nWritten = 0;
137
		for (TableViewer viewer : viewers) {
127 138
			
139
			TableColumn[] cols = viewer.getTable().getColumns();
140
			for (int i = 0; i < cols.length; i++) {
141
				if (cols[i].getText().length() == 0) continue; // skip columns without name
142
				if (nWritten > 0) str.append("\t"); //$NON-NLS-1$
143
				str.append(cols[i].getText());
144
				nWritten++;
145
			}
146
		}
147
		str.append("\n");
148
		
149
		
150
		for (int l = 0; l < viewers[0].getTable().getSelection().length; l++) { // for each line
151
			
128 152
			if (l > 0) str.append("\n"); //$NON-NLS-1$
153
			nWritten = 0;
129 154
			
130
			for (TableViewer viewer : viewers) {
155
			for (TableViewer viewer : viewers) { // append the content of the viewers
131 156
				
132 157
				TableColumn[] cols = viewer.getTable().getColumns();
158
				
133 159
				TableItem[] items = viewer.getTable().getSelection();
134 160
				TableItem item = items[l];
135 161
				
136 162
				for (int i = 0; i < cols.length; i++) {
137
					
138
					if (cols[i].getText().trim().length() > 0) {
163
					if (cols[i].getText().trim().length() > 0) { // skip columns without name
139 164
						
140
						if (i > 0) str.append("\t"); //$NON-NLS-1$
165
						if (nWritten > 0) str.append("\t"); //$NON-NLS-1$
141 166
						str.append(item.getText(i));
167
						nWritten++;
142 168
					}
143 169
				}
144 170
			}
......
146 172
		
147 173
		String strr = str.toString();
148 174
		org.txm.rcp.utils.IOClipboard.write(strr);
149
		System.out.println(TXMCoreMessages.bind(TXMUIMessages.copiedLinesColon, strr));
175
		System.out.println(TXMCoreMessages.bind(TXMUIMessages.copiedLinesColonP0, strr));
150 176
	}
151 177
}

Formats disponibles : Unified diff