Search in sources :

Example 16 with Composite

use of org.eclipse.swt.widgets.Composite in project GT by Tencent.

the class CPUView method createChartPanel.

/**
	 * 初始化jfreechart
	 * @param rootFrame
	 */
private void createChartPanel(Composite parent) {
    // 放置图表的容器对象
    chartComposite = new Composite(parent, SWT.NO_BACKGROUND | SWT.EMBEDDED);
    FormData formData = new FormData();
    formData.left = new FormAttachment(0, Constant.VIEW_MARGIN_WIDTH);
    formData.right = new FormAttachment(cpuViewer.getTable(), -Constant.VIEW_MARGIN_WIDTH);
    formData.top = new FormAttachment(0, Constant.VIEW_MARGIN_WIDTH);
    formData.bottom = new FormAttachment(100, -Constant.VIEW_MARGIN_WIDTH);
    chartComposite.setLayoutData(formData);
    // AWT的根容器
    Frame frame = SWT_AWT.new_Frame(chartComposite);
    // 据说加入这个Panel可以无闪烁
    Panel panel = new Panel(new BorderLayout()) {

        private static final long serialVersionUID = 1L;

        public void update(java.awt.Graphics g) {
            /* Do not erase the background */
            paint(g);
        }
    };
    frame.add(panel);
    JRootPane root = new JRootPane();
    panel.add(root);
    java.awt.Container contentPane = root.getContentPane();
    cpuRealTimeChart = new CPURealTimeChart();
    contentPane.add(cpuRealTimeChart);
}
Also used : FormData(org.eclipse.swt.layout.FormData) Panel(java.awt.Panel) Frame(java.awt.Frame) Composite(org.eclipse.swt.widgets.Composite) BorderLayout(java.awt.BorderLayout) JRootPane(javax.swing.JRootPane) FormAttachment(org.eclipse.swt.layout.FormAttachment) CPURealTimeChart(com.tencent.wstt.apt.chart.CPURealTimeChart)

Example 17 with Composite

use of org.eclipse.swt.widgets.Composite in project GT by Tencent.

the class SettingView method createSettingTabItem.

private void createSettingTabItem(TabFolder parent) {
    // 创建CPU标签页
    TabItem settingTabItem = new TabItem(parent, SWT.NONE);
    settingTabItem.setText("首选项");
    //CPU标签根容器
    Composite settingTabRoot = new Composite(parent, SWT.NONE);
    settingTabRoot.setLayout(new FormLayout());
    FormData monitorItemGroupFormData = new FormData();
    monitorItemGroupFormData.left = new FormAttachment(0, Constant.MARGIN_WIDTH);
    monitorItemGroupFormData.right = new FormAttachment(100, -Constant.MARGIN_WIDTH);
    monitorItemGroupFormData.top = new FormAttachment(settingTabRoot, Constant.MARGIN_WIDTH_NARROW);
    Group monitorGroup = new Group(settingTabRoot, SWT.NONE);
    monitorGroup.setText("监测项");
    monitorGroup.setLayoutData(monitorItemGroupFormData);
    monitorGroup.setLayout(new FormLayout());
    FormData cpuGroupFormData = new FormData();
    cpuGroupFormData.left = new FormAttachment(0, Constant.MARGIN_WIDTH);
    cpuGroupFormData.right = new FormAttachment(100, -Constant.MARGIN_WIDTH);
    cpuGroupFormData.top = new FormAttachment(monitorGroup, Constant.MARGIN_WIDTH_NARROW);
    Group cpuGroup = new Group(monitorGroup, SWT.NONE);
    cpuGroup.setLayoutData(cpuGroupFormData);
    cpuGroup.setLayout(new GridLayout(3, true));
    Label cpuLabel = new Label(cpuGroup, SWT.NONE);
    cpuLabel.setText("CPU");
    itemTestSwitch[Constant.CPU_INDEX] = new Button(cpuGroup, SWT.RADIO);
    itemTestSwitch[Constant.CPU_INDEX].setText("开");
    itemTestSwitch[Constant.CPU_INDEX].setSelection(false);
    itemTestSwitch[Constant.CPU_INDEX].addSelectionListener(new SelectionListener() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            APTState.getInstance().DealWithEventBefore(APTEventEnum.CONFIGRURE_OPER);
            APTState.getInstance().DealWithEventAfter(APTEventEnum.CONFIGRURE_OPER);
        }

        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
        // TODO Auto-generated method stub
        }
    });
    itemTestSwitchClose[Constant.CPU_INDEX] = new Button(cpuGroup, SWT.RADIO);
    itemTestSwitchClose[Constant.CPU_INDEX].setText("关");
    itemTestSwitchClose[Constant.CPU_INDEX].setSelection(true);
    FormData memGroupFormData = new FormData();
    memGroupFormData.left = new FormAttachment(0, Constant.MARGIN_WIDTH);
    memGroupFormData.right = new FormAttachment(100, -Constant.MARGIN_WIDTH);
    memGroupFormData.top = new FormAttachment(cpuGroup, Constant.MARGIN_WIDTH_NARROW);
    memGroupFormData.bottom = new FormAttachment(100, -Constant.MARGIN_WIDTH);
    Group memGroup = new Group(monitorGroup, SWT.NONE);
    memGroup.setLayoutData(memGroupFormData);
    memGroup.setLayout(new GridLayout(3, true));
    Label memLabel = new Label(memGroup, SWT.NONE);
    memLabel.setText("内存");
    itemTestSwitch[Constant.MEM_INDEX] = new Button(memGroup, SWT.RADIO);
    itemTestSwitch[Constant.MEM_INDEX].setText("开");
    itemTestSwitch[Constant.MEM_INDEX].setSelection(false);
    itemTestSwitch[Constant.MEM_INDEX].addSelectionListener(new SelectionListener() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            APTState.getInstance().DealWithEventBefore(APTEventEnum.CONFIGRURE_OPER);
            APTState.getInstance().DealWithEventAfter(APTEventEnum.CONFIGRURE_OPER);
        }

        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
        // TODO Auto-generated method stub
        }
    });
    itemTestSwitchClose[Constant.MEM_INDEX] = new Button(memGroup, SWT.RADIO);
    itemTestSwitchClose[Constant.MEM_INDEX].setText("关");
    itemTestSwitchClose[Constant.MEM_INDEX].setSelection(true);
    settingTabItem.setControl(settingTabRoot);
}
Also used : FormLayout(org.eclipse.swt.layout.FormLayout) FormData(org.eclipse.swt.layout.FormData) TabItem(org.eclipse.swt.widgets.TabItem) Group(org.eclipse.swt.widgets.Group) GridLayout(org.eclipse.swt.layout.GridLayout) Composite(org.eclipse.swt.widgets.Composite) Button(org.eclipse.swt.widgets.Button) Label(org.eclipse.swt.widgets.Label) SelectionEvent(org.eclipse.swt.events.SelectionEvent) FormAttachment(org.eclipse.swt.layout.FormAttachment) SelectionListener(org.eclipse.swt.events.SelectionListener)

Example 18 with Composite

use of org.eclipse.swt.widgets.Composite in project GT by Tencent.

the class SettingView method createMemTabItem.

/**
	 * 为了迎合兰姐的界面,要求改的好丑啊
	 * @param parent
	 */
private void createMemTabItem(TabFolder parent) {
    TabItem memTabItem = new TabItem(parent, SWT.NONE);
    memTabItem.setText("内存");
    Composite memTabRoot = new Composite(parent, SWT.NONE);
    memTabRoot.setLayout(new FormLayout());
    FormData testPeriodGroupFormData = new FormData();
    testPeriodGroupFormData.left = new FormAttachment(0, Constant.MARGIN_WIDTH);
    testPeriodGroupFormData.right = new FormAttachment(100, -Constant.MARGIN_WIDTH);
    testPeriodGroupFormData.top = new FormAttachment(memTabRoot, Constant.MARGIN_WIDTH_NARROW);
    Group periodGroup = new Group(memTabRoot, SWT.NONE);
    periodGroup.setLayoutData(testPeriodGroupFormData);
    periodGroup.setLayout(new FillLayout(SWT.HORIZONTAL));
    Label memLabel = new Label(periodGroup, SWT.NONE);
    memLabel.setText("采样间隔(ms)");
    itemTestPeriod[Constant.MEM_INDEX] = new Text(periodGroup, SWT.BORDER);
    itemTestPeriod[Constant.MEM_INDEX].setText("3000");
    itemTestPeriod[Constant.MEM_INDEX].addVerifyListener(new SWTNumberVerifyListener());
    itemTestPeriod[Constant.MEM_INDEX].addModifyListener(new ModifyListener() {

        @Override
        public void modifyText(ModifyEvent e) {
            APTState.getInstance().DealWithEventBefore(APTEventEnum.CONFIGRURE_OPER);
            APTState.getInstance().DealWithEventAfter(APTEventEnum.CONFIGRURE_OPER);
        }
    });
    FormData hprofDumpSwitchGroupFormData = new FormData();
    hprofDumpSwitchGroupFormData.left = new FormAttachment(0, Constant.MARGIN_WIDTH);
    hprofDumpSwitchGroupFormData.right = new FormAttachment(100, -Constant.MARGIN_WIDTH);
    hprofDumpSwitchGroupFormData.top = new FormAttachment(periodGroup, Constant.MARGIN_WIDTH_NARROW);
    Group hprofDumpSwitchGroup = new Group(memTabRoot, SWT.NONE);
    hprofDumpSwitchGroup.setLayoutData(hprofDumpSwitchGroupFormData);
    hprofDumpSwitchGroup.setLayout(new FillLayout(SWT.HORIZONTAL));
    Label hprofDumpLabel = new Label(hprofDumpSwitchGroup, SWT.NONE);
    hprofDumpLabel.setText("Dump Hprof");
    hprofDumpSwitch = new Combo(hprofDumpSwitchGroup, SWT.DROP_DOWN | SWT.READ_ONLY);
    hprofDumpSwitch.setItems(new String[] { "否", "是" });
    hprofDumpSwitch.select(0);
    hprofDumpSwitch.addModifyListener(new ModifyListener() {

        @Override
        public void modifyText(ModifyEvent e) {
        //				APTState.getInstance().DealWithEventBefore(APTEventEnum.CONFIGRURE_OPER);
        //				APTState.getInstance().DealWithEventAfter(APTEventEnum.CONFIGRURE_OPER);
        }
    });
    FormData hprofDumpThresholdGroupFormData = new FormData();
    hprofDumpThresholdGroupFormData.left = new FormAttachment(0, Constant.MARGIN_WIDTH);
    hprofDumpThresholdGroupFormData.right = new FormAttachment(100, -Constant.MARGIN_WIDTH);
    hprofDumpThresholdGroupFormData.top = new FormAttachment(hprofDumpSwitchGroup, Constant.MARGIN_WIDTH_NARROW);
    Group hrpofDumpThresholdGroup = new Group(memTabRoot, SWT.NONE);
    hrpofDumpThresholdGroup.setLayoutData(hprofDumpThresholdGroupFormData);
    hrpofDumpThresholdGroup.setLayout(new FillLayout(SWT.HORIZONTAL));
    Label hprofDumpThresholdLabel = new Label(hrpofDumpThresholdGroup, SWT.NONE);
    hprofDumpThresholdLabel.setText("Dump阈值(kB)");
    hprofDumpThreshold = new Text(hrpofDumpThresholdGroup, SWT.BORDER);
    hprofDumpThreshold.setText("30000");
    hprofDumpThreshold.addVerifyListener(new SWTNumberVerifyListener());
    hprofDumpThreshold.addModifyListener(new ModifyListener() {

        @Override
        public void modifyText(ModifyEvent e) {
            APTState.getInstance().DealWithEventBefore(APTEventEnum.CONFIGRURE_OPER);
            APTState.getInstance().DealWithEventAfter(APTEventEnum.CONFIGRURE_OPER);
        }
    });
    //Priv Dirty Group
    FormData privGroupFormData = new FormData();
    privGroupFormData.left = new FormAttachment(0, Constant.MARGIN_WIDTH);
    privGroupFormData.right = new FormAttachment(100, -Constant.MARGIN_WIDTH);
    privGroupFormData.top = new FormAttachment(hrpofDumpThresholdGroup, Constant.MARGIN_WIDTH_NARROW);
    Group privGroup = new Group(memTabRoot, SWT.NONE);
    privGroup.setText("Priv Dirty");
    privGroup.setLayoutData(privGroupFormData);
    privGroup.setLayout(new GridLayout(3, true));
    //PSS Group
    FormData pssGroupFormData = new FormData();
    pssGroupFormData.left = new FormAttachment(0, Constant.MARGIN_WIDTH);
    pssGroupFormData.right = new FormAttachment(100, -Constant.MARGIN_WIDTH);
    pssGroupFormData.top = new FormAttachment(privGroup, Constant.MARGIN_WIDTH_NARROW);
    Group pssGroup = new Group(memTabRoot, SWT.NONE);
    pssGroup.setText("PSS");
    pssGroup.setLayoutData(pssGroupFormData);
    pssGroup.setLayout(new GridLayout(3, true));
    //Heap Allocated Group
    FormData heapGroupFormData = new FormData();
    heapGroupFormData.left = new FormAttachment(0, Constant.MARGIN_WIDTH);
    heapGroupFormData.right = new FormAttachment(100, -Constant.MARGIN_WIDTH);
    heapGroupFormData.top = new FormAttachment(pssGroup, Constant.MARGIN_WIDTH_NARROW);
    Group heapGroup = new Group(memTabRoot, SWT.NONE);
    heapGroup.setText("Heap Allocated");
    heapGroup.setLayoutData(heapGroupFormData);
    heapGroup.setLayout(new GridLayout(3, true));
    //Heap Size Group
    FormData heapsizeGroupFormData = new FormData();
    heapsizeGroupFormData.left = new FormAttachment(0, Constant.MARGIN_WIDTH);
    heapsizeGroupFormData.right = new FormAttachment(100, -Constant.MARGIN_WIDTH);
    heapsizeGroupFormData.top = new FormAttachment(heapGroup, Constant.MARGIN_WIDTH_NARROW);
    Group heapsizeGroup = new Group(memTabRoot, SWT.NONE);
    heapsizeGroup.setText("Heap Size");
    heapsizeGroup.setLayoutData(heapsizeGroupFormData);
    heapsizeGroup.setLayout(new GridLayout(3, true));
    memStatCheckBtns = new Button[Constant.ALL_MEM_KIND_COUNT];
    for (int i = 0; i < Constant.ALL_MEM_KIND_COUNT; i++) {
        Group group = null;
        if (i < 3) {
            group = privGroup;
        } else if (i < 6) {
            group = pssGroup;
        } else if (i < 9) {
            group = heapGroup;
        } else {
            group = heapsizeGroup;
        }
        //final int index = i;
        memStatCheckBtns[i] = new Button(group, SWT.CHECK);
        memStatCheckBtns[i].setText(memStatCheckBtnTitles[i]);
        memStatCheckBtns[i].addSelectionListener(new SelectionListener() {

            @Override
            public void widgetSelected(SelectionEvent e) {
                if (isSupportCheckChangeOper) {
                    //APTConsoleFactory.getInstance().APTPrint("内存check更新");
                    GetCurCheckedStateUtil.update();
                }
            }

            @Override
            public void widgetDefaultSelected(SelectionEvent e) {
            }
        });
    }
    //memStatCheckBtns[Constant.PRIV_TOTAL_INDEX].setSelection(true);
    memStatCheckBtns[Constant.PSS_TOTAL_INDEX].setSelection(true);
    //memStatCheckBtns[Constant.HEAPALLOC_TOTAL_INDEX].setSelection(true);
    FormData labelFormData = new FormData();
    labelFormData.left = new FormAttachment(0, Constant.MARGIN_WIDTH);
    labelFormData.right = new FormAttachment(100, -Constant.MARGIN_WIDTH);
    labelFormData.bottom = new FormAttachment(100, -Constant.MARGIN_WIDTH);
    Label showLabel = new Label(memTabRoot, SWT.NONE);
    showLabel.setLayoutData(labelFormData);
    showLabel.setText("提示:测试过程中可动态调整曲线显示");
    showLabel.setForeground(new Color(parent.getDisplay(), 0, 64, 64));
    showLabel.setFont(new Font(parent.getDisplay(), "宋体", 10, SWT.BOLD));
    memTabItem.setControl(memTabRoot);
}
Also used : FormLayout(org.eclipse.swt.layout.FormLayout) FormData(org.eclipse.swt.layout.FormData) Group(org.eclipse.swt.widgets.Group) Composite(org.eclipse.swt.widgets.Composite) ModifyListener(org.eclipse.swt.events.ModifyListener) Color(org.eclipse.swt.graphics.Color) Label(org.eclipse.swt.widgets.Label) Text(org.eclipse.swt.widgets.Text) Combo(org.eclipse.swt.widgets.Combo) FillLayout(org.eclipse.swt.layout.FillLayout) Font(org.eclipse.swt.graphics.Font) TabItem(org.eclipse.swt.widgets.TabItem) ModifyEvent(org.eclipse.swt.events.ModifyEvent) GridLayout(org.eclipse.swt.layout.GridLayout) Button(org.eclipse.swt.widgets.Button) SelectionEvent(org.eclipse.swt.events.SelectionEvent) SWTNumberVerifyListener(com.tencent.wstt.apt.ui.custom.SWTNumberVerifyListener) FormAttachment(org.eclipse.swt.layout.FormAttachment) SelectionListener(org.eclipse.swt.events.SelectionListener)

Example 19 with Composite

use of org.eclipse.swt.widgets.Composite in project GT by Tencent.

the class MemoryView method createChartPanel.

/**
	 * 初始化jfreechart
	 * @param rootFrame
	 */
private void createChartPanel(Composite parent) {
    chartComposite = new Composite(parent, SWT.NO_BACKGROUND | SWT.EMBEDDED);
    FormData formData = new FormData();
    formData.left = new FormAttachment(0, Constant.VIEW_MARGIN_WIDTH);
    formData.right = new FormAttachment(viewer.getTable(), -Constant.VIEW_MARGIN_WIDTH);
    formData.top = new FormAttachment(0, Constant.VIEW_MARGIN_WIDTH);
    formData.bottom = new FormAttachment(100, -Constant.VIEW_MARGIN_WIDTH);
    chartComposite.setLayoutData(formData);
    Frame frame = SWT_AWT.new_Frame(chartComposite);
    // 据说加入这个Panel可以无闪烁
    Panel panel = new Panel(new BorderLayout()) {

        private static final long serialVersionUID = 1L;

        public void update(java.awt.Graphics g) {
            /* Do not erase the background */
            paint(g);
        }
    };
    frame.add(panel);
    JRootPane root = new JRootPane();
    panel.add(root);
    java.awt.Container contentPane = root.getContentPane();
    memRealTimeChart = new MemoryRealTimeChart();
    contentPane.add(memRealTimeChart);
}
Also used : FormData(org.eclipse.swt.layout.FormData) Panel(java.awt.Panel) Frame(java.awt.Frame) Composite(org.eclipse.swt.widgets.Composite) BorderLayout(java.awt.BorderLayout) JRootPane(javax.swing.JRootPane) FormAttachment(org.eclipse.swt.layout.FormAttachment) MemoryRealTimeChart(com.tencent.wstt.apt.chart.MemoryRealTimeChart)

Example 20 with Composite

use of org.eclipse.swt.widgets.Composite in project OpenGrok by OpenGrok.

the class EGrokPreferencePage method createFieldEditors.

@Override
protected void createFieldEditors() {
    addField(new StringFieldEditor(BASE_URL, "{OpenGrok base URL", getFieldEditorParent()));
    addField(new StringFieldEditor(USERNAME, "Username for Basic Authentication (optional)", getFieldEditorParent()));
    addField(new StringFieldEditor(PASSWORD, "Password for Basic Authentication (optional)", getFieldEditorParent()) {

        @Override
        protected void doFillIntoGrid(Composite parent, int numColumns) {
            super.doFillIntoGrid(parent, numColumns);
            getTextControl().setEchoChar('*');
        }
    });
    addField(new BooleanFieldEditor(FILTER_REGEX, "Filter with Regular Expressions", getFieldEditorParent()));
    addField(new BooleanFieldEditor(WORKSPACE_MATCHES, "Corelate matches with files in workspace (experimental)", getFieldEditorParent()));
}
Also used : StringFieldEditor(org.eclipse.jface.preference.StringFieldEditor) Composite(org.eclipse.swt.widgets.Composite) BooleanFieldEditor(org.eclipse.jface.preference.BooleanFieldEditor)

Aggregations

Composite (org.eclipse.swt.widgets.Composite)1543 GridData (org.eclipse.swt.layout.GridData)1136 GridLayout (org.eclipse.swt.layout.GridLayout)1098 Label (org.eclipse.swt.widgets.Label)594 SelectionEvent (org.eclipse.swt.events.SelectionEvent)495 Button (org.eclipse.swt.widgets.Button)492 SelectionAdapter (org.eclipse.swt.events.SelectionAdapter)421 Text (org.eclipse.swt.widgets.Text)373 Group (org.eclipse.swt.widgets.Group)233 ModifyListener (org.eclipse.swt.events.ModifyListener)152 ModifyEvent (org.eclipse.swt.events.ModifyEvent)149 Combo (org.eclipse.swt.widgets.Combo)135 FillLayout (org.eclipse.swt.layout.FillLayout)131 TableViewer (org.eclipse.jface.viewers.TableViewer)127 ScrolledComposite (org.eclipse.swt.custom.ScrolledComposite)114 Table (org.eclipse.swt.widgets.Table)112 Point (org.eclipse.swt.graphics.Point)104 SelectionListener (org.eclipse.swt.events.SelectionListener)90 Control (org.eclipse.swt.widgets.Control)88 FormData (org.eclipse.swt.layout.FormData)87