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

📄 watchlistitempropertiesdialog.java

📁 EclipseTrader is a stock exchange analysis system, featuring shares pricing watch, intraday and hi
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
                    else                    {                        reset.setEnabled(false);                        popup.setEnabled(false);                        popup.setSelection(false);                        hilight.setEnabled(false);                        hilight.setSelection(false);                    }                    delete.setEnabled(table.getSelectionIndex() != -1);                    group.layout();                }            });            table.addMouseListener(new MouseAdapter() {                public void mouseDown(MouseEvent e)                {                    if (table.getItem(new Point(e.x, e.y)) == null)                    {                        table.deselectAll();                        ((StackLayout)group.getLayout()).topControl = null;                         group.layout();                        delete.setEnabled(false);                        reset.setEnabled(false);                        popup.setEnabled(false);                        popup.setSelection(false);                        hilight.setEnabled(false);                        hilight.setSelection(false);                    }                }            });            TableColumn column = new TableColumn(table, SWT.NONE);            column.setText("Description");            column = new TableColumn(table, SWT.NONE);            column.setText("Last");            Composite buttons = new Composite(content, SWT.NONE);            gridLayout = new GridLayout();            gridLayout.marginWidth = gridLayout.marginHeight = 0;            buttons.setLayout(gridLayout);            buttons.setLayoutData(new GridData(GridData.BEGINNING, GridData.FILL, false, false));                        ISharedImages images = PlatformUI.getWorkbench().getSharedImages();                        add = new Button(buttons, SWT.PUSH);            add.setImage(images.getImageDescriptor(ISharedImages.IMG_TOOL_NEW_WIZARD).createImage());            add.setToolTipText("Add new alert");            add.setEnabled(true);            add.addSelectionListener(new SelectionAdapter() {                public void widgetSelected(SelectionEvent e)                {                    NewAlertWizard wizard = new NewAlertWizard();                    Alert alert = wizard.open(watchlistItem);                    if (alert != null)                    {                        itemAdded(alert);                        for (int i = 0; i < table.getColumnCount(); i++)                            table.getColumn(i).pack();                    }                }            });                        delete = new Button(buttons, SWT.PUSH);            delete.setImage(images.getImageDescriptor(ISharedImages.IMG_TOOL_DELETE).createImage());            delete.setToolTipText("Delete selected alert");            delete.setEnabled(false);            delete.addSelectionListener(new SelectionAdapter() {                public void widgetSelected(SelectionEvent e)                {                    if (table.getSelectionIndex() != -1)                    {                        int index = table.getSelectionIndex();                        ((CTabFolder)table.getItem(index).getData("folder")).dispose();                        table.getItem(index).dispose();                    }                    ((StackLayout)group.getLayout()).topControl = null;                     group.layout();                    delete.setEnabled(false);                }            });            reset = new Button(buttons, SWT.PUSH);            reset.setImage(images.getImageDescriptor(ISharedImages.IMG_TOOL_UNDO).createImage());            reset.setToolTipText("Reset last seen");            reset.setEnabled(false);            reset.addSelectionListener(new SelectionAdapter() {                public void widgetSelected(SelectionEvent e)                {                    if (table.getSelectionIndex() != -1)                    {                        int index = table.getSelectionIndex();                        ((CTabFolder)table.getItem(index).getData("folder")).setData("last", null);                        table.getItem(index).setText(1, "");                    }                    reset.setEnabled(false);                }            });                        group = new Composite(content, SWT.NONE);            group.setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, true, 2, 1));            group.setLayout(new StackLayout());                        for (Iterator iter = watchlistItem.getAlerts().iterator(); iter.hasNext(); )            {                Alert alert = (Alert) iter.next();                itemAdded(alert);            }            popup = new Button(content, SWT.CHECK);            popup.setText("Pop-up a message");            popup.setLayoutData(new GridData(GridData.BEGINNING, GridData.BEGINNING, false, false, 2, 1));            popup.setEnabled(false);            popup.addSelectionListener(new SelectionAdapter() {                public void widgetSelected(SelectionEvent e)                {                    CTabFolder folder = (CTabFolder) ((StackLayout)group.getLayout()).topControl;                    folder.setData("popup", new Boolean(popup.getSelection()));                }            });            hilight = new Button(content, SWT.CHECK);            hilight.setText("Hilight watchlist row");            hilight.setLayoutData(new GridData(GridData.BEGINNING, GridData.BEGINNING, false, false, 2, 1));            hilight.setEnabled(false);            hilight.addSelectionListener(new SelectionAdapter() {                public void widgetSelected(SelectionEvent e)                {                    CTabFolder folder = (CTabFolder) ((StackLayout)group.getLayout()).topControl;                    folder.setData("hilight", new Boolean(hilight.getSelection()));                }            });            for (int i = 0; i < table.getColumnCount(); i++)                table.getColumn(i).pack();                        setValid(true);            return content;        }        /* (non-Javadoc)         * @see org.eclipse.jface.preference.PreferencePage#performOk()         */        public boolean performOk()        {            if (isValid())            {                watchlistItem.getAlerts().clear();                                Control[] childs = group.getChildren();                for (int i = 0; i < childs.length; i++)                {                    Map parameters = new HashMap();                    CTabItem[] items = ((CTabFolder)childs[i]).getItems();                    for (int p = 0; p < items.length; p++)                    {                        AlertPluginPreferencePage page = (AlertPluginPreferencePage)items[p].getData();                        page.performOk();                        parameters.putAll(page.getParameters());                    }                    Alert alert = (Alert)childs[i].getData();                    alert.setParameters(parameters);                    alert.setLastSeen((Date)((CTabFolder)table.getItem(i).getData("folder")).getData("last"));                    alert.setPopup(((Boolean)childs[i].getData("popup")).booleanValue());                    alert.setHilight(((Boolean)childs[i].getData("hilight")).booleanValue());                    ((AlertPlugin)alert.getData()).init(parameters);                    ((AlertPlugin)alert.getData()).setLastSeen(alert.getLastSeen());                    watchlistItem.getAlerts().add(alert);                    watchlistItem.setChanged();                }            }                        return super.performOk();        }                private void itemAdded(Alert alert)        {            AlertPlugin plugin = (AlertPlugin)alert.getData();            if (plugin == null)            {                plugin = TradingPlugin.createAlertPlugin(alert.getPluginId());                plugin.init(watchlistItem.getSecurity(), alert.getParameters());                alert.setData(plugin);            }            TableItem tableItem = new TableItem(table, SWT.NONE);            tableItem.setText(0, plugin.getDescription() + " (" + TradingPlugin.getAlertPluginName(alert.getPluginId()) + ")");            if (alert.getLastSeen() != null)                tableItem.setText(1, new SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(alert.getLastSeen()));            tableItem.setData(alert);                        CTabFolder folder = new CTabFolder(group, SWT.TOP|SWT.FLAT|SWT.BORDER);            folder.setMaximizeVisible(false);            folder.setMinimizeVisible(false);            folder.setSimple(PlatformUI.getPreferenceStore().getBoolean("SHOW_TRADITIONAL_STYLE_TABS"));            folder.setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, true, 2, 1));            folder.setData(alert);            folder.setData("last", plugin.getLastSeen());            folder.setData("popup", new Boolean(alert.isPopup()));            folder.setData("hilight", new Boolean(alert.isHilight()));            tableItem.setData("folder", folder);            IConfigurationElement[] pages = TradingPlugin.getAlertPluginPreferencePages(alert.getPluginId());            for (int i = 0; i < pages.length; i++)            {                CTabItem tabItem = new CTabItem(folder, SWT.NONE);                Composite itemContent = new Composite(folder, SWT.NONE);                itemContent.setLayout(new GridLayout());                tabItem.setControl(itemContent);                tabItem.setText(pages[i].getAttribute("name"));                if (pages[i].getAttribute("description") != null)                    tabItem.setToolTipText(pages[i].getAttribute("description"));                                try {                    AlertPluginPreferencePage page = (AlertPluginPreferencePage)pages[i].createExecutableExtension("class");                    page.init(watchlistItem.getSecurity(), alert.getParameters());                    Control control = page.createContents(itemContent);                    if (control instanceof Composite)                        ((Composite)control).setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, true));                    tabItem.setData(page);                } catch(Exception e) {                    e.printStackTrace();                }                                folder.setSelection(0);            }        }    }}

⌨️ 快捷键说明

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