?? icadentproptabs.cpp
字號:
} else { //Retrieving data from the dialog
DDX_CBIndex(pDX,ATTD_JUSTIFY,iTxtCurSel);
ent_SelChange();
if(ent_DlgItems[i].DXFCode==72) {
ent_DlgItems[i].CheckBit=iJust72;
}else if(ent_DlgItems[i].DXFCode==74) {
ent_DlgItems[i].CheckBit=iJust74;
}
}
}
}
}
ent_ATTDEF_TAB::ent_ATTDEF_TAB():CDialog(ENT_ATTDEF_TAB) {
ent_Pick1=ent_Pick2=0;
}
//////////////////////////////////////////////////////////////////////////////
// ATTRIB ****************************************************************
//////////////////////////////////////////////////////////////////////////////
BEGIN_MESSAGE_MAP(ent_ATTRIB_TAB,CDialog)
ON_NOTIFY(UDN_DELTAPOS,UPDN_ATTR_SPX,OnSpinAttrSpx)
ON_NOTIFY(UDN_DELTAPOS,UPDN_ATTR_SPY,OnSpinAttrSpy)
ON_NOTIFY(UDN_DELTAPOS,UPDN_ATTR_SPZ,OnSpinAttrSpz)
ON_NOTIFY(UDN_DELTAPOS,UPDN_ATTR_APX,OnSpinAttrApx)
ON_NOTIFY(UDN_DELTAPOS,UPDN_ATTR_APY,OnSpinAttrApy)
ON_NOTIFY(UDN_DELTAPOS,UPDN_ATTR_APZ,OnSpinAttrApz)
ON_NOTIFY(UDN_DELTAPOS,UPDN_ATTR_HEIGHT,OnSpinAttrHth)
ON_NOTIFY(UDN_DELTAPOS,UPDN_ATTR_ROTATE,OnSpinAttrRot)
ON_NOTIFY(UDN_DELTAPOS,UPDN_ATTR_THICK,OnSpinAttrTck)
ON_NOTIFY(UDN_DELTAPOS,UPDN_ATTR_SCALE,OnSpinAttrScl)
ON_NOTIFY(UDN_DELTAPOS,UPDN_ATTR_OBLIQUE,OnSpinAttrObl)
ON_BN_CLICKED(ATTR_PICK1,ent_OnPick1)
ON_BN_CLICKED(ATTR_PICK2,ent_OnPick2)
ON_CBN_SELCHANGE(ATTR_JUSTIFY,OnSelChange)
ON_CBN_SELCHANGE(ATTR_STYLE,OnStyleChange)
ON_WM_HELPINFO()
END_MESSAGE_MAP()
BOOL ent_ATTRIB_TAB::OnHelpInfo(HELPINFO *pHel){
CommandRefHelp( m_hWnd, HLP_ENTPROP);
return(true);
}
void ent_ATTRIB_TAB::OnOK(){
HWND hParentWnd;
ent_bHitEnter=true;
hParentWnd=::GetParent(m_hWnd);
::SendMessage(hParentWnd,WM_CLOSE,0,0);
}
void ent_ATTRIB_TAB::OnCancel(){
HWND hParentWnd;
ent_bHitEnter=false;
hParentWnd=::GetParent(m_hWnd);
::SendMessage(hParentWnd,WM_CLOSE,0,0);
}
void ent_ATTRIB_TAB::OnSpinAttrSpx(NMHDR *pNotifyStruct,LRESULT *result) {
NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNotifyStruct;
ent_SpinMasterReal(::GetDlgItem(m_hWnd,ATTR_SPX),pNMUpDown->iDelta);
UpdateData(TRUE);
*result=0;
}
void ent_ATTRIB_TAB::OnSpinAttrSpy(NMHDR *pNotifyStruct,LRESULT *result) {
NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNotifyStruct;
ent_SpinMasterReal(::GetDlgItem(m_hWnd,ATTR_SPY),pNMUpDown->iDelta);
UpdateData(TRUE);
*result=0;
}
void ent_ATTRIB_TAB::OnSpinAttrSpz(NMHDR *pNotifyStruct,LRESULT *result) {
NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNotifyStruct;
ent_SpinMasterReal(::GetDlgItem(m_hWnd,ATTR_SPZ),pNMUpDown->iDelta);
UpdateData(TRUE);
*result=0;
}
void ent_ATTRIB_TAB::OnSpinAttrApx(NMHDR *pNotifyStruct,LRESULT *result) {
NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNotifyStruct;
ent_SpinMasterReal(::GetDlgItem(m_hWnd,ATTR_APX),pNMUpDown->iDelta);
UpdateData(TRUE);
*result=0;
}
void ent_ATTRIB_TAB::OnSpinAttrApy(NMHDR *pNotifyStruct,LRESULT *result) {
NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNotifyStruct;
ent_SpinMasterReal(::GetDlgItem(m_hWnd,ATTR_APY),pNMUpDown->iDelta);
UpdateData(TRUE);
*result=0;
}
void ent_ATTRIB_TAB::OnSpinAttrApz(NMHDR *pNotifyStruct,LRESULT *result) {
NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNotifyStruct;
ent_SpinMasterReal(::GetDlgItem(m_hWnd,ATTR_APZ),pNMUpDown->iDelta);
UpdateData(TRUE);
*result=0;
}
void ent_ATTRIB_TAB::OnSpinAttrHth(NMHDR *pNotifyStruct,LRESULT *result) {
NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNotifyStruct;
ent_SpinMasterReal(::GetDlgItem(m_hWnd,ATTR_HEIGHT),pNMUpDown->iDelta);
UpdateData(TRUE);
*result=0;
}
void ent_ATTRIB_TAB::OnSpinAttrRot(NMHDR *pNotifyStruct,LRESULT *result) {
NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNotifyStruct;
ent_SpinMasterAngle(::GetDlgItem(m_hWnd,ATTR_ROTATE),pNMUpDown->iDelta);
UpdateData(TRUE);
*result=0;
}
void ent_ATTRIB_TAB::OnSpinAttrTck(NMHDR *pNotifyStruct,LRESULT *result) {
NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNotifyStruct;
ent_SpinMasterReal(::GetDlgItem(m_hWnd,ATTR_THICK),pNMUpDown->iDelta);
UpdateData(TRUE);
*result=0;
}
void ent_ATTRIB_TAB::OnSpinAttrScl(NMHDR *pNotifyStruct,LRESULT *result) {
NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNotifyStruct;
//Modified Cybage SBD 04/03/2002 DD/MM/YYYY
//Reason : Fix for Bug No. 77983 from Bugzilla
//ent_SpinMasterReal(::GetDlgItem(m_hWnd,ATTR_SCALE),pNMUpDown->iDelta);
ent_SpinMasterReal(::GetDlgItem(m_hWnd,ATTR_SCALE),pNMUpDown->iDelta,2);
UpdateData(TRUE);
*result=0;
}
void ent_ATTRIB_TAB::OnSpinAttrObl(NMHDR *pNotifyStruct,LRESULT *result) {
NM_UPDOWN* pNMUpDown = (NM_UPDOWN*)pNotifyStruct;
ent_SpinMasterAngle(::GetDlgItem(m_hWnd,ATTR_OBLIQUE),pNMUpDown->iDelta);
UpdateData(TRUE);
*result=0;
}
BOOL ent_ATTRIB_TAB::OnInitDialog() {
FillCombo();
ent_StyleChoice();
CDialog::OnInitDialog();
// Bugzilla No. 76186; 11/11/2002 [
//Current selection is "Varies"...So add into ComboBox now
if ( iTxtCurSel == 15)
{
CComboBox *pCombo = NULL;
if (NULL != (pCombo = (CComboBox *) GetDlgItem(ATTR_JUSTIFY)))
{
int index = pCombo->AddString(ResourceString(IDC_ICADENTPROP_VARIES_18, "Varies" ));
pCombo->SetCurSel(index);
}
}
// Bugzilla No. 76186; 11/11/2002 ]
OnSelChange();
return(TRUE);
}
void ent_ATTRIB_TAB::FillCombo()
{
CComboBox *pCombo = NULL;
if (NULL == (pCombo = (CComboBox *) GetDlgItem(ATTR_JUSTIFY)))
return;
pCombo->ResetContent();
CString comboOption;
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_1);
pCombo->AddString(comboOption);
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_2);
pCombo->AddString(comboOption);
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_3);
pCombo->AddString(comboOption);
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_4);
pCombo->AddString(comboOption);
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_5);
pCombo->AddString(comboOption);
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_6);
pCombo->AddString(comboOption);
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_7);
pCombo->AddString(comboOption);
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_8);
pCombo->AddString(comboOption);
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_9);
pCombo->AddString(comboOption);
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_10);
pCombo->AddString(comboOption);
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_11);
pCombo->AddString(comboOption);
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_12);
pCombo->AddString(comboOption);
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_13);
pCombo->AddString(comboOption);
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_14);
pCombo->AddString(comboOption);
comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_15);
pCombo->AddString(comboOption);
// Bugzilla No. 76186; 11/11/2002
// Add "Varies only if necessary"
//comboOption.LoadString(IDC_COMBO_ATTD_JUSTIFY_16);
//pCombo->AddString(comboOption);
}
void ent_ATTRIB_TAB::ent_OnPick1() {
HWND hWnd;
hWnd=::GetParent(m_hWnd);
ent_Pick1=1;
::SendMessage(hWnd,WM_CLOSE,ATTR_PICK1,0);
}
void ent_ATTRIB_TAB::ent_OnPick2() {
HWND hWnd;
hWnd=::GetParent(m_hWnd);
ent_Pick2=1;
::SendMessage(hWnd,WM_CLOSE,ATTR_PICK2,0);
}
void ent_ATTRIB_TAB::ent_Yes10(){
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_SPX),TRUE);
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_SPY),TRUE);
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_SPZ),TRUE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_SPX),TRUE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_SPY),TRUE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_SPZ),TRUE);
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_PICK1),TRUE);
}
void ent_ATTRIB_TAB::ent_No10(){
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_SPX),FALSE);
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_SPY),FALSE);
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_SPZ),FALSE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_SPX),FALSE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_SPY),FALSE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_SPZ),FALSE);
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_PICK1),FALSE);
}
void ent_ATTRIB_TAB::ent_Yes11(){
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_APX),TRUE);
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_APY),TRUE);
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_APZ),TRUE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_APX),TRUE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_APY),TRUE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_APZ),TRUE);
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_PICK2),TRUE);
}
void ent_ATTRIB_TAB::ent_No11(){
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_APX),FALSE);
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_APY),FALSE);
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_APZ),FALSE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_APX),FALSE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_APY),FALSE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_APZ),FALSE);
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_PICK2),FALSE);
}
void ent_ATTRIB_TAB::ent_Yes40(){
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_HEIGHT),TRUE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_HEIGHT),TRUE);
}
void ent_ATTRIB_TAB::ent_No40(){
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_HEIGHT),FALSE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_HEIGHT),FALSE);
}
void ent_ATTRIB_TAB::ent_Yes50(){
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_ROTATE),TRUE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_ROTATE),TRUE);
}
void ent_ATTRIB_TAB::ent_No50(){
::EnableWindow(::GetDlgItem(m_hWnd,ATTR_ROTATE),FALSE);
::EnableWindow(::GetDlgItem(m_hWnd,UPDN_ATTR_ROTATE),FALSE);
}
//Grey out the correct field.
void ent_ATTRIB_TAB::OnSelChange() {
UpdateData(TRUE);
if((iJust72&1 && iJust74&1) || iJust72&8 || iJust72&32){
ent_Yes10();
}else{
ent_No10();
}
if(iJust72&1 && iJust74&1){
ent_No11();
}else{
ent_Yes11();
}
if(iJust72&8){
ent_No40();
}else{
ent_Yes40();
}
if(iJust72&8 || iJust72&32){
ent_No50();
}else{
ent_Yes50();
}
}
//Set current selection
void ent_ATTRIB_TAB::ent_SetSel() {
switch(iJust72) {
case 1:
switch(iJust74) {
case 1:
iTxtCurSel=0;
break;
case 2:
iTxtCurSel=1;
break;
case 4:
iTxtCurSel=2;
break;
case 8:
iTxtCurSel=3;
break;
default:
iTxtCurSel=15;
break;
}
break;
case 2:
switch(iJust74) {
case 1:
iTxtCurSel=4;
break;
case 2:
iTxtCurSel=5;
break;
case 4:
iTxtCurSel=6;
break;
case 8:
iTxtCurSel=7;
break;
default:
iTxtCurSel=15;
break;
}
break;
case 4:
switch(iJust74) {
case 1:
iTxtCurSel=8;
break;
case 2:
iTxtCurSel=9;
break;
case 4:
iTxtCurSel=10;
break;
case 8:
iTxtCurSel=11;
break;
default:
iTxtCurSel=15;
break;
}
break;
case 8:
iTxtCurSel=12;
break;
case 16:
iTxtCurSel=13;
break;
case 32:
iTxtCurSel=14;
break;
default:
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -