use of com.tencent.wstt.apt.ui.custom.SWTNumberVerifyListener 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);
}
use of com.tencent.wstt.apt.ui.custom.SWTNumberVerifyListener in project GT by Tencent.
the class SettingView method createCPUTabItem.
private void createCPUTabItem(TabFolder parent) {
TabItem cpuTabItem = new TabItem(parent, SWT.NONE);
cpuTabItem.setText("CPU");
Composite cpuTabRoot = new Composite(parent, SWT.NONE);
cpuTabRoot.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(cpuTabRoot, Constant.MARGIN_WIDTH_NARROW);
Group periodGroup = new Group(cpuTabRoot, SWT.NONE);
periodGroup.setLayoutData(testPeriodGroupFormData);
periodGroup.setLayout(new FillLayout(SWT.HORIZONTAL));
Label cpuLabel = new Label(periodGroup, SWT.NONE);
cpuLabel.setText("采样间隔(ms)");
itemTestPeriod[Constant.CPU_INDEX] = new Text(periodGroup, SWT.BORDER);
itemTestPeriod[Constant.CPU_INDEX].setText("3000");
itemTestPeriod[Constant.CPU_INDEX].addVerifyListener(new SWTNumberVerifyListener());
itemTestPeriod[Constant.CPU_INDEX].addModifyListener(new ModifyListener() {
@Override
public void modifyText(ModifyEvent e) {
APTState.getInstance().DealWithEventBefore(APTEventEnum.CONFIGRURE_OPER);
APTState.getInstance().DealWithEventAfter(APTEventEnum.CONFIGRURE_OPER);
}
});
//CPU使用率测试方法设置
FormData cpuSwitchGroupFormData = new FormData();
cpuSwitchGroupFormData.left = new FormAttachment(0, Constant.MARGIN_WIDTH);
cpuSwitchGroupFormData.right = new FormAttachment(100, -Constant.MARGIN_WIDTH);
cpuSwitchGroupFormData.top = new FormAttachment(periodGroup, Constant.MARGIN_WIDTH_NARROW);
Group testMethodGroup = new Group(cpuTabRoot, SWT.NONE);
testMethodGroup.setLayoutData(cpuSwitchGroupFormData);
testMethodGroup.setLayout(new FillLayout(SWT.HORIZONTAL));
Label cpuTestMethodLabel = new Label(testMethodGroup, SWT.NONE);
cpuTestMethodLabel.setText("数据源");
cpuTestMethod = new Combo(testMethodGroup, SWT.DROP_DOWN | SWT.READ_ONLY);
cpuTestMethod.setItems(Constant.CPU_TESTMETHOD_TITLES);
cpuTestMethod.select(0);
cpuTestMethod.addModifyListener(new ModifyListener() {
@Override
public void modifyText(ModifyEvent e) {
APTState.getInstance().DealWithEventBefore(APTEventEnum.CONFIGRURE_OPER);
APTState.getInstance().DealWithEventAfter(APTEventEnum.CONFIGRURE_OPER);
}
});
FormData jiffiesGroupFormData = new FormData();
jiffiesGroupFormData.left = new FormAttachment(0, Constant.MARGIN_WIDTH);
jiffiesGroupFormData.right = new FormAttachment(100, -Constant.MARGIN_WIDTH);
jiffiesGroupFormData.top = new FormAttachment(testMethodGroup, Constant.MARGIN_WIDTH_NARROW);
Group jiffiesGroup = new Group(cpuTabRoot, SWT.NONE);
jiffiesGroup.setLayoutData(jiffiesGroupFormData);
jiffiesGroup.setLayout(new FillLayout(SWT.HORIZONTAL));
Label jiffiesLabel = new Label(jiffiesGroup, SWT.NONE);
jiffiesLabel.setText("获取jiffies值");
jiffiesSwitch = new Combo(jiffiesGroup, SWT.DROP_DOWN | SWT.READ_ONLY);
jiffiesSwitch.setItems(new String[] { "否", "是" });
jiffiesSwitch.select(0);
jiffiesSwitch.addModifyListener(new ModifyListener() {
@Override
public void modifyText(ModifyEvent e) {
APTState.getInstance().DealWithEventBefore(APTEventEnum.CONFIGRURE_OPER);
APTState.getInstance().DealWithEventAfter(APTEventEnum.CONFIGRURE_OPER);
}
});
cpuTabItem.setControl(cpuTabRoot);
}
Aggregations