Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 24383 Details for
Bug 102081
Abandon the combo box of preferenceDialog
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
A patch for 102081
102081Combo_0706.txt (text/plain), 22.93 KB, created by
shujie liao
on 2005-07-06 10:55:15 EDT
(
hide
)
Description:
A patch for 102081
Filename:
MIME Type:
Creator:
shujie liao
Created:
2005-07-06 10:55:15 EDT
Size:
22.93 KB
patch
obsolete
>Index: FilteredComboTree.java >=================================================================== >RCS file: FilteredComboTree.java >diff -N FilteredComboTree.java >--- FilteredComboTree.java 9 Jun 2005 19:30:24 -0000 1.12 >+++ /dev/null 1 Jan 1970 00:00:00 -0000 >@@ -1,210 +0,0 @@ >-/******************************************************************************* >- * Copyright (c) 2005 IBM Corporation and others. >- * All rights reserved. This program and the accompanying materials >- * are made available under the terms of the Eclipse Public License v1.0 >- * which accompanies this distribution, and is available at >- * http://www.eclipse.org/legal/epl-v10.html >- * >- * Contributors: >- * IBM Corporation - initial API and implementation >- *******************************************************************************/ >-package org.eclipse.ui.internal.dialogs; >- >-import org.eclipse.jface.dialogs.IDialogSettings; >-import org.eclipse.swt.SWT; >-import org.eclipse.swt.events.DisposeEvent; >-import org.eclipse.swt.events.DisposeListener; >-import org.eclipse.swt.events.FocusAdapter; >-import org.eclipse.swt.events.FocusEvent; >-import org.eclipse.swt.events.SelectionAdapter; >-import org.eclipse.swt.events.SelectionEvent; >-import org.eclipse.swt.events.TraverseEvent; >-import org.eclipse.swt.events.TraverseListener; >-import org.eclipse.swt.graphics.Point; >-import org.eclipse.swt.widgets.Combo; >-import org.eclipse.swt.widgets.Composite; >-import org.eclipse.swt.widgets.Control; >-import org.eclipse.swt.widgets.Display; >-import org.eclipse.ui.internal.WorkbenchPlugin; >- >-/** >- * The FilteredComboTree is a filtered tree that uses an >- * editable combo rather than just a text. >- */ >-public class FilteredComboTree extends FilteredTree { >- >- private Combo filterCombo; >- >- private static final String SEARCHHISTORY = "search"; //$NON-NLS-1$ >- >- //Set a number limitation of items to be saved in combo >- private static final int maxNumItems = 20; >- /** >- * Create a new instance of the receiver. >- * @param parent >- * @param treeStyle >- */ >- public FilteredComboTree(Composite parent, int treeStyle) { >- super(parent, treeStyle); >- } >- >- /** >- * Create a new instance of the receiver with a supplied filter. >- * @param parent >- * @param treeStyle >- * @param filter >- */ >- public FilteredComboTree(Composite parent, int treeStyle, PatternItemFilter filter) { >- super(parent, treeStyle, filter); >- } >- >- /* (non-Javadoc) >- * @see org.eclipse.ui.internal.dialogs.FilteredTree#createFilterControl(org.eclipse.swt.widgets.Composite) >- */ >- protected void createFilterControl(Composite parent) { >- filterCombo = new Combo(parent, SWT.DROP_DOWN | SWT.BORDER); >- filterCombo.setFont(parent.getFont()); >- getPreferenceSearchHistory(); >- filterCombo.addTraverseListener( new TraverseListener () { >- public void keyTraversed(TraverseEvent e) { >- if (e.detail == SWT.TRAVERSE_RETURN) { >- e.doit = false; >- if (getViewer().getTree().getItemCount() == 0) { >- Display.getCurrent().beep(); >- setFilterText(""); //$NON-NLS-1$ >- } else { >- getViewer().getTree().setFocus(); >- } >- } >- } >- }); >- filterCombo.addFocusListener(new FocusAdapter(){ >- /* (non-Javadoc) >- * @see org.eclipse.swt.events.FocusAdapter#focusLost(org.eclipse.swt.events.FocusEvent) >- */ >- public void focusLost(FocusEvent e) { >- String [] textValues = filterCombo.getItems(); >- String newText = filterCombo.getText(); >- >- if((newText.equals(""))||(newText .equals(initialText)))//$NON-NLS-1$ >- return; >- >- for (int i = 0; i < textValues.length; i++) { >- if(textValues[i].equals(newText)) >- return; >- } >- >- if(textValues.length >= maxNumItems) >- //Discard the oldest search to get space for new search >- filterCombo.remove(maxNumItems-1); >- >- filterCombo.add(newText,0); >- } >- }); >- filterCombo.addSelectionListener(new SelectionAdapter(){ >- /* (non-Javadoc) >- * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent) >- */ >- public void widgetSelected(SelectionEvent e) { >- textChanged(); >- } >- }); >- >- filterCombo.addDisposeListener(new DisposeListener() { >- >- /* (non-Javadoc) >- * @see org.eclipse.swt.events.DisposeListener#widgetDisposed(org.eclipse.swt.events.DisposeEvent) >- */ >- public void widgetDisposed(DisposeEvent e) { >- saveDialogSettings(); >- } >- }); >- >- filterCombo.getAccessible().addAccessibleListener(getAccessibleListener()); >- >- } >- >- /* (non-Javadoc) >- * @see org.eclipse.ui.internal.dialogs.FilteredTree#getFilterControl() >- */ >- public Control getFilterControl() { >- return filterCombo; >- } >- >- /* (non-Javadoc) >- * @see org.eclipse.ui.internal.dialogs.FilteredTree#getFilterControlText() >- */ >- protected String getFilterControlText() { >- return filterCombo.getText(); >- } >- >- /* (non-Javadoc) >- * @see org.eclipse.ui.internal.dialogs.FilteredTree#setFilterText(java.lang.String) >- */ >- protected void setFilterText(String string) { >- filterCombo.setText(string); >- selectAll(); >- } >- >- protected void selectAll() { >- filterCombo.setSelection(new Point(0,filterCombo.getText().length())); >- } >- >- /** >- * Get the combo box used by the receiver. >- * @return Combo >- */ >- public Combo getFilterCombo() { >- return filterCombo; >- } >- >- /* (non-Javadoc) >- * @see org.eclipse.ui.internal.dialogs.FilteredTree#getFilterText() >- */ >- protected String getFilterText() { >- return filterCombo.getText(); >- } >- >- /** >- * Return a dialog setting section for this dialog >- */ >- private IDialogSettings getDialogSettings() { >- IDialogSettings settings = WorkbenchPlugin.getDefault() >- .getDialogSettings(); >- IDialogSettings thisSettings = settings >- .getSection(getClass().getName()); >- if (thisSettings == null) >- thisSettings = settings.addNewSection(getClass().getName()); >- return thisSettings; >- } >- >- >- /** >- * Get the preferences search history for this eclipse's start, >- * Note that this history will not be cleared until this eclipse closes >- * >- */ >- public void getPreferenceSearchHistory(){ >- IDialogSettings settings = getDialogSettings(); >- String[] search = settings.getArray(SEARCHHISTORY); //$NON-NLS-1$ >- >- if(search == null) >- return; >- >- for(int i = 0; i < search.length;i++){ >- filterCombo.add(search[i]); >- } >- >- } >- >- /** >- * Saves the search history. >- */ >- private void saveDialogSettings() { >- IDialogSettings settings =getDialogSettings(); >- >- //If the settings contains the same key, the previous value will be replaced by new one >- settings.put(SEARCHHISTORY,filterCombo.getItems()); >- >- } >-} >Index: FilteredPreferenceDialog.java >=================================================================== >RCS file: /home/eclipse/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/FilteredPreferenceDialog.java,v >retrieving revision 1.65 >diff -u -r1.65 FilteredPreferenceDialog.java >--- FilteredPreferenceDialog.java 9 Jun 2005 21:02:04 -0000 1.65 >+++ FilteredPreferenceDialog.java 6 Jul 2005 14:49:01 -0000 >@@ -57,7 +57,7 @@ > */ > public abstract class FilteredPreferenceDialog extends PreferenceDialog implements IWorkbenchPreferenceContainer{ > >- protected FilteredComboTree filteredTree; >+ protected FilteredTextTree filteredTree; > > private Object pageData; > >@@ -110,7 +110,7 @@ > protected TreeViewer createTreeViewer(Composite parent) { > PatternItemFilter filter = new PatternItemFilter(true); > int styleBits = SWT.SINGLE | SWT.H_SCROLL; >- filteredTree = new FilteredComboTree(parent, styleBits, filter); >+ filteredTree = new FilteredTextTree(parent, styleBits, filter); > GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true); > gd.horizontalIndent = IDialogConstants.HORIZONTAL_MARGIN; > filteredTree.setBackground(parent.getDisplay().getSystemColor(SWT.COLOR_LIST_BACKGROUND)); >@@ -123,8 +123,8 @@ > > //if the tree has only one or zero pages, make the combo area disable > if(hasAtMostOnePage(tree)){ >- filteredTree.getFilterCombo().setEnabled(false); >- filteredTree.getFilterCombo().setSelection(new Point(0,0)); >+ filteredTree.getFilterControl().setEnabled(false); >+ filteredTree.getFilterControl().setSelection(new Point(0,0)); > } > > >Index: FilteredTree.java >=================================================================== >RCS file: /home/eclipse/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/FilteredTree.java,v >retrieving revision 1.27 >diff -u -r1.27 FilteredTree.java >--- FilteredTree.java 24 May 2005 18:08:37 -0000 1.27 >+++ FilteredTree.java 6 Jul 2005 14:49:01 -0000 >@@ -28,14 +28,10 @@ > import org.eclipse.swt.events.DisposeListener; > import org.eclipse.swt.events.FocusEvent; > import org.eclipse.swt.events.FocusListener; >-import org.eclipse.swt.events.KeyAdapter; >-import org.eclipse.swt.events.KeyEvent; > import org.eclipse.swt.graphics.Color; > import org.eclipse.swt.layout.GridData; > import org.eclipse.swt.layout.GridLayout; >-import org.eclipse.swt.widgets.Combo; > import org.eclipse.swt.widgets.Composite; >-import org.eclipse.swt.widgets.Control; > import org.eclipse.swt.widgets.Text; > import org.eclipse.swt.widgets.ToolBar; > import org.eclipse.ui.PlatformUI; >@@ -52,11 +48,11 @@ > */ > public class FilteredTree extends Composite { > >- private Text filterText; >- >+ protected Text filterText; >+ > private ToolBarManager filterToolBar; > >- private TreeViewer treeViewer; >+ protected TreeViewer treeViewer; > > private Composite filterParent; > >@@ -133,25 +129,7 @@ > | GridData.GRAB_HORIZONTAL)); > > createFilterControl(filterParent); >- getFilterControl().addKeyListener(new KeyAdapter() { >- >- /* >- * (non-Javadoc) >- * >- * @see org.eclipse.swt.events.KeyAdapter#keyReleased(org.eclipse.swt.events.KeyEvent) >- */ >- public void keyReleased(KeyEvent e) { >- // on a CR we want to transfer focus to the list >- if(e.keyCode == SWT.ARROW_DOWN){ >- >- if (!(getFilterControl() instanceof Combo)) { >- treeViewer.getTree().setFocus(); >- } >- } else >- textChanged(); >- } >- }); >- >+ > GridData data = new GridData(GridData.FILL_HORIZONTAL > | GridData.GRAB_HORIZONTAL); > getFilterControl().setLayoutData(data); >@@ -347,7 +325,7 @@ > * > * @return the text field > */ >- public Control getFilterControl() { >+ public Text getFilterControl() { > return filterText; > } > >Index: PreferenceBoldLabelProvider.java >=================================================================== >RCS file: /home/eclipse/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PreferenceBoldLabelProvider.java,v >retrieving revision 1.2 >diff -u -r1.2 PreferenceBoldLabelProvider.java >--- PreferenceBoldLabelProvider.java 29 Apr 2005 15:51:12 -0000 1.2 >+++ PreferenceBoldLabelProvider.java 6 Jul 2005 14:49:01 -0000 >@@ -14,9 +14,9 @@ > implements IFontProvider { > > >- private FilteredComboTree comboTree; >+ private FilteredTextTree comboTree; > >- PreferenceBoldLabelProvider(FilteredComboTree comboTree) { >+ PreferenceBoldLabelProvider(FilteredTextTree comboTree) { > this.comboTree = comboTree; > } > /** >Index: FilteredTextTree.java >=================================================================== >RCS file: FilteredTextTree.java >diff -N FilteredTextTree.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ FilteredTextTree.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,319 @@ >+/******************************************************************************* >+ * Copyright (c) 2005 IBM Corporation and others. >+ * All rights reserved. This program and the accompanying materials >+ * are made available under the terms of the Eclipse Public License v1.0 >+ * which accompanies this distribution, and is available at >+ * http://www.eclipse.org/legal/epl-v10.html >+ * >+ * Contributors: >+ * IBM Corporation - initial API and implementation >+ *******************************************************************************/ >+package org.eclipse.ui.internal.dialogs; >+ >+import java.util.ArrayList; >+import java.util.List; >+ >+import org.eclipse.jface.dialogs.IDialogSettings; >+import org.eclipse.swt.SWT; >+import org.eclipse.swt.events.ControlAdapter; >+import org.eclipse.swt.events.ControlEvent; >+import org.eclipse.swt.events.DisposeEvent; >+import org.eclipse.swt.events.DisposeListener; >+import org.eclipse.swt.events.FocusAdapter; >+import org.eclipse.swt.events.FocusEvent; >+import org.eclipse.swt.events.KeyAdapter; >+import org.eclipse.swt.events.KeyEvent; >+import org.eclipse.swt.events.SelectionAdapter; >+import org.eclipse.swt.events.SelectionEvent; >+import org.eclipse.swt.events.TraverseEvent; >+import org.eclipse.swt.events.TraverseListener; >+import org.eclipse.swt.graphics.Point; >+import org.eclipse.swt.graphics.Rectangle; >+import org.eclipse.swt.layout.GridData; >+import org.eclipse.swt.layout.GridLayout; >+import org.eclipse.swt.widgets.Composite; >+import org.eclipse.swt.widgets.Display; >+import org.eclipse.swt.widgets.Event; >+import org.eclipse.swt.widgets.Listener; >+import org.eclipse.swt.widgets.Shell; >+import org.eclipse.swt.widgets.Table; >+import org.eclipse.swt.widgets.TableItem; >+import org.eclipse.swt.widgets.Text; >+import org.eclipse.ui.internal.WorkbenchPlugin; >+ >+/** >+ * The FilteredTextTree is a filtered tree that uses an >+ * editable text. >+ */ >+public class FilteredTextTree extends FilteredTree { >+ //A list contains all strings in search history >+ private List searchHistory; >+ >+ private static final String SEARCHHISTORY = "search"; //$NON-NLS-1$ >+ >+ //A table which contains only strings begin with typed strings >+ private Table currentSeachTable; >+ /** >+ * Create a new instance of the receiver. >+ * @param parent >+ * @param treeStyle >+ */ >+ public FilteredTextTree(Composite parent, int treeStyle) { >+ super(parent, treeStyle); >+ } >+ >+ /** >+ * Create a new instance of the receiver with a supplied filter. >+ * @param parent >+ * @param treeStyle >+ * @param filter >+ */ >+ public FilteredTextTree(Composite parent, int treeStyle, PatternItemFilter filter) { >+ super(parent, treeStyle, filter); >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.ui.internal.dialogs.FilteredTree#createFilterControl(org.eclipse.swt.widgets.Composite) >+ */ >+ protected void createFilterControl(final Composite parent) { >+ filterText = new Text(parent, SWT.DROP_DOWN | SWT.BORDER); >+ filterText.setFont(parent.getFont()); >+ searchHistory = getPreferenceSearchHistory(); >+ >+ final Shell shell = new Shell (parent.getShell(), SWT.NO_TRIM ); >+ shell.setBackground(parent.getDisplay().getSystemColor(SWT.COLOR_WHITE)); >+ GridLayout shellGL = new GridLayout(); >+ shellGL.marginHeight = 0; >+ shellGL.marginWidth = 0; >+ shell.setLayout(shellGL); >+ shell.setLayoutData (new GridData((GridData.FILL_BOTH | GridData.GRAB_HORIZONTAL))); >+ >+ currentSeachTable = new Table(shell, SWT.SINGLE |SWT.BORDER); >+ currentSeachTable.setLayoutData(new GridData((GridData.FILL_BOTH | GridData.GRAB_HORIZONTAL))); >+ >+ filterText.addTraverseListener( new TraverseListener () { >+ public void keyTraversed(TraverseEvent e) { >+ if (e.detail == SWT.TRAVERSE_RETURN) { >+ e.doit = false; >+ shell.setVisible(false); >+ if (getViewer().getTree().getItemCount() == 0) { >+ Display.getCurrent().beep(); >+ setFilterText(""); //$NON-NLS-1$ >+ } else { >+ getViewer().getTree().setFocus(); >+ } >+ } >+ } >+ }); >+ >+ filterText.addKeyListener(new KeyAdapter() { >+ /* >+ * (non-Javadoc) >+ * >+ * @see org.eclipse.swt.events.KeyAdapter#keyReleased(org.eclipse.swt.events.KeyEvent) >+ */ >+ public void keyReleased(KeyEvent e) { >+ >+ if(e.keyCode == SWT.ARROW_DOWN){ >+ if(currentSeachTable.isVisible()){ >+ //Make selection at popup table >+ if(currentSeachTable.getSelectionCount()< 1) >+ currentSeachTable.setSelection(0); >+ currentSeachTable.setFocus(); >+ } >+ else >+ //Make selection be on the left tree >+ treeViewer.getTree().setFocus(); >+ } >+ else{ >+ if(e.character == '\r') >+ return; >+ >+ textChanged(); >+ List result = new ArrayList(); >+ result = reduceSearch(searchHistory,filterText.getText()); >+ upDateTable(currentSeachTable,result); >+ >+ if(currentSeachTable.getItemCount()> 0){ >+ Rectangle textBounds = filterText.getBounds(); >+ Point point = getDisplay().map(parent, null, textBounds.x, textBounds.y); >+ int space = currentSeachTable.getItemHeight(); >+ shell.setBounds(point.x, point.y + textBounds.height,textBounds.width, >+ currentSeachTable.getItemHeight()*currentSeachTable.getItemCount()+ space); >+ >+ if(shell.isDisposed()) >+ shell.open (); >+ >+ if(!shell.getVisible()){ >+ shell.setVisible(true); >+ filterText.setFocus(); >+ } >+ >+ }else >+ shell.setVisible(false); >+ } >+ >+ } >+ }); >+ >+ >+ filterText.addFocusListener(new FocusAdapter(){ >+ /* (non-Javadoc) >+ * @see org.eclipse.swt.events.FocusAdapter#focusLost(org.eclipse.swt.events.FocusEvent) >+ */ >+ public void focusLost(FocusEvent e) { >+ >+ String newText = filterText.getText(); >+ Object[] textValues = searchHistory.toArray(); >+ >+ if((newText.equals(""))||(newText .equals(initialText)))//$NON-NLS-1$ >+ return; >+ >+ for (int i = 0; i < textValues.length; i++) { >+ if(((String)textValues[i]).equals(newText)) >+ return; >+ } >+ searchHistory.add(newText); >+ } >+ }); >+ >+ >+ parent.getDisplay().addFilter(SWT.MouseDown , new Listener(){ >+ /* (non-Javadoc) >+ * @see org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt.widgets.Events) >+ */ >+ public void handleEvent(Event event) { >+ if(!shell.isDisposed()) >+ shell.setVisible(false); >+ }}); >+ >+ getShell().addControlListener(new ControlAdapter(){ >+ /* (non-Javadoc) >+ * @see org.eclipse.swt.events.ControlListener#controlMoved(org.eclipse.swt.events.ControlEvent) >+ */ >+ public void controlMoved(ControlEvent e) { >+ shell.setVisible(false); >+ } >+ }); >+ >+ currentSeachTable.addSelectionListener(new SelectionAdapter(){ >+ /* (non-Javadoc) >+ * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent) >+ */ >+ public void widgetSelected(SelectionEvent e) { >+ >+ setFilterText(currentSeachTable.getSelection()[0].getText()); >+ textChanged(); >+ } >+ >+ public void widgetDefaultSelected(SelectionEvent e) { >+ shell.setVisible(false); >+ } >+ }); >+ >+ filterText.addDisposeListener(new DisposeListener() { >+ /* >+ (non-Javadoc) >+ * @see org.eclipse.swt.events.DisposeListener#widgetDisposed(org.eclipse.swt.events.DisposeEvent) >+ */ >+ public void widgetDisposed(DisposeEvent e) { >+ saveDialogSettings(); >+ } >+ }); >+ >+ filterText.getAccessible().addAccessibleListener(getAccessibleListener()); >+ >+ } >+ >+ /** >+ * Find all items which start with typyed words >+ * list the list contains all strings of the search history >+ * @param wordsEntered >+ * @return a list in which all strings start from the typed letter(s) >+ */ >+ public List reduceSearch(List list,String wordsEntered){ >+ List result = new ArrayList(); >+ if(list == null) return result; >+ for(int i = 0; i<list.size();i++){ >+ if(filterText.getText()== "") //$NON-NLS-1$ >+ return result; >+ else if(((String)list.get(i)).startsWith(wordsEntered)) >+ result.add(list.get(i)); >+ } >+ >+ return result; >+ } >+ >+ >+ /**Copy all elements from a list to a table >+ * @param table >+ * @param list >+ */ >+ public void upDateTable(Table table, List list){ >+ table.removeAll(); >+ if(list.size()>0){ >+ TableItem newItem ; >+ for(int i=0;i<list.size();i++){ >+ newItem = new TableItem(table, SWT.NULL, i); >+ newItem.setText((String)list.get(i)); >+ >+ } >+ } >+ >+ } >+ >+ /** >+ * Return a dialog setting section for this dialog >+ * @return IDialogSettings >+ */ >+ private IDialogSettings getDialogSettings() { >+ IDialogSettings settings = WorkbenchPlugin.getDefault() >+ .getDialogSettings(); >+ IDialogSettings thisSettings = settings >+ .getSection(getClass().getName()); >+ if (thisSettings == null) >+ thisSettings = settings.addNewSection(getClass().getName()); >+ >+ return thisSettings; >+ } >+ >+ >+ /** >+ * Get the preferences search history for this eclipse's start, >+ * Note that this history will not be cleared until this eclipse closes >+ * @return a list >+ */ >+ public List getPreferenceSearchHistory(){ >+ >+ List searchList = new ArrayList(); >+ IDialogSettings settings = getDialogSettings(); >+ String[] search = settings.getArray(SEARCHHISTORY); //$NON-NLS-1$ >+ >+ if(search != null){ >+ for(int i = 0; i < search.length;i++) >+ searchList.add(search[i]); >+ } >+ return searchList; >+ >+ } >+ >+ /** >+ * Saves the search history. >+ */ >+ private void saveDialogSettings() { >+ IDialogSettings settings =getDialogSettings(); >+ >+ //If the settings contains the same key, the previous value will be replaced by new one >+ String []result = new String[searchHistory.size()]; >+ listToArray(searchHistory,result); >+ settings.put(SEARCHHISTORY, result); >+ >+ } >+ >+ private void listToArray(List list,String[] string){ >+ int size = list.size(); >+ for(int i=0;i<size;i++) >+ string[i]=(String)list.get(i); >+ } >+ >+}
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 102081
:
24326
|
24383
|
24783
|
25296
|
25430
|
25584
|
27648
|
27653
|
27838
|
27868
|
27957
|
27967
|
27979
|
28401
|
28603