Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
SystemToolbar.cpp
Package: solidgraph_sources.zip [view]
Upload User: kairuinn
Upload Date: 2009-02-07
Package Size: 2922k
Code Size: 10k
Category:
Graph program
Development Platform:
Visual C++
- // SystemToolbar.cpp : implementation file
- //
- #include "stdafx.h"
- #include "..//Solidgraph.h"
- #include "SystemToolbar.h"
- #include ".systemtoolbar.h"
- // CSystemToolbar
- IMPLEMENT_DYNAMIC(CSystemToolbar, CEGToolBar)
- CSystemToolbar::CSystemToolbar()
- {
- }
- CSystemToolbar::~CSystemToolbar()
- {
- }
- BEGIN_MESSAGE_MAP(CSystemToolbar, CEGToolBar)
- ON_WM_CTLCOLOR()
- END_MESSAGE_MAP()
- void CSystemToolbar::LoadControls()
- {
- //SetButtonInfo(10, ID_SLOI, TBBS_SEPARATOR, 100);
- CRect rect;
- /*GetItemRect(10, &rect);
- rect.top = 1;
- rect.bottom = rect.top + 200;
- rect.right = rect.left+100;
- if (!m_LayersComboBox.Create(
- CBS_DROPDOWNLIST|WS_VISIBLE|WS_TABSTOP|WS_VSCROLL,
- rect, this, ID_SLOI))
- {
- TRACE("Failed to create combo-boxn");
- return;
- }*/
- SetButtonInfo(4, ID_TOCHN1, TBBS_SEPARATOR, 50);
- GetItemRect(4, &rect);
- rect.right = rect.left+50;
- rect.top = 1;
- if (!m_empty_static.Create(" ",WS_VISIBLE,rect, this))
- {
- TRACE("Failed to create staticn");
- return;
- }
- rect.top = 5;
- CString prSt;
- prSt.LoadString(IDS_PRECISION_STRING);
- if (!m_Precision_label.Create(prSt,WS_VISIBLE|WS_TABSTOP,rect, this,ID_TOCHN1))
- {
- TRACE("Failed to create staticn");
- return;
- }
- SetButtonInfo(5, ID_TOCHN2, TBBS_SEPARATOR, 100);
- GetItemRect(5, &rect);
- rect.top = 1;
- rect.bottom = rect.top + 200;
- rect.right = rect.left+100;
- if (!m_PrecisionComboBox.Create(
- CBS_DROPDOWNLIST|WS_VISIBLE|WS_TABSTOP|WS_VSCROLL,
- rect, this, ID_TOCHN2))
- {
- TRACE("Failed to create combo-boxn");
- return;
- }
- CString precStr;
- for (int i=0;i<PREC_COUNT;i++)
- {
- precStr.Format("%.3f",precisions[i]);
- m_PrecisionComboBox.AddString(precStr);
- }
- SetButtonInfo(7, ID_CVET, TBBS_SEPARATOR, 100);
- GetItemRect(7, &rect);
- unsigned int ComboH = rect.Height()-6;
- rect.top = 1;
- rect.bottom = rect.top + 200;
- rect.right = rect.left+100;
- if (!m_ColorComboBox.Create(CBS_DROPDOWNLIST|CBS_OWNERDRAWFIXED|WS_VISIBLE|WS_TABSTOP|WS_VSCROLL,
- rect, this, ID_CVET))
- {
- TRACE("Failed to create combo-boxn");
- return;
- }
- m_ColorComboBox.SetItemHeight(-1,ComboH);
- m_ColorComboBox.InitializeDefaultColors();
- SetButtonInfo(9, ID_TOLZHINA, TBBS_SEPARATOR, 100);
- GetItemRect(9, &rect);
- rect.top = 1;
- rect.bottom = rect.top + 200;
- rect.right = rect.left+100;
- if (!m_line_thicknessComboBox.Create(CBS_DROPDOWNLIST|CBS_OWNERDRAWFIXED|WS_VISIBLE|WS_TABSTOP|WS_VSCROLL,
- rect, this, ID_TOLZHINA))
- {
- TRACE("Failed to create combo-boxn");
- return;
- }
- m_line_thicknessComboBox.SetItemHeight(-1,ComboH);
- SetButtonInfo(11, ID_TIPLINII, TBBS_SEPARATOR, 100);
- GetItemRect(11, &rect);
- rect.top = 1;
- rect.bottom = rect.top + 200;
- rect.right = rect.left+100;
- if (!m_line_typeComboBox.Create(CBS_DROPDOWNLIST|CBS_OWNERDRAWFIXED|WS_VISIBLE|WS_TABSTOP|WS_VSCROLL,
- rect, this, ID_TIPLINII))
- {
- TRACE("Failed to create combo-boxn");
- return;
- }
- m_line_typeComboBox.SetItemHeight(-1,ComboH);
- SetButtonInfo(14, ID_ATT_FONTS, TBBS_SEPARATOR, 100);
- GetItemRect(14, &rect);
- rect.top = 1;
- rect.bottom = rect.top + 200;
- rect.right = rect.left+100;
- if (!m_Fonts_ComboBox.Create(CBS_DROPDOWNLIST|WS_VISIBLE|WS_TABSTOP|WS_VSCROLL,
- rect, this, ID_ATT_FONTS))
- {
- TRACE("Failed to create combo-boxn");
- return;
- }
- m_Fonts_ComboBox.SetItemHeight(-1,ComboH);
- }
- void CSystemToolbar::SetView(CSolidgraphView* v)
- {
- ASSERT(v);
- m_view = v;
- /*m_LayersComboBox.ResetContent();
- CString labl;
- labl.LoadString(IDS_LAYER_LABEL);
- CString curLbl;
- unsigned char lCnt = sgGetScene()->GetLayersCount();
- for (unsigned char i=0;i<lCnt;i++)
- {
- curLbl.Format(" %i",i);
- m_LayersComboBox.AddString(labl+curLbl);
- }
- m_LayersComboBox.SetCurSel(0);*/
- if (global_3D_document)
- {
- SCENE_SETUPS tmpCV;
- global_3D_document->GetSceneSetups(tmpCV);
- //m_LayersComboBox.SetCurSel(tmpCV.CurrentLayer);
- m_PrecisionComboBox.SetCurSel(tmpCV.CurrentPrecision);
- m_ColorComboBox.SetCurSel(tmpCV.CurrentColor);
- m_line_thicknessComboBox.SetCurSel(tmpCV.CurrentLineThickness);
- m_line_typeComboBox.SetCurSel(tmpCV.CurrentLineType);
- }
- else
- {
- ASSERT(0);
- //m_LayersComboBox.SetCurSel(0);
- m_PrecisionComboBox.SetCurSel(0);
- m_ColorComboBox.SetCurSel(0);
- m_line_thicknessComboBox.SetCurSel(0);
- m_line_typeComboBox.SetCurSel(0);
- }
- }
- void CSystemToolbar::UpdateSystemToolbar()
- {
- ASSERT(m_view);
- /*m_LayersComboBox.ResetContent();
- CString labl;
- labl.LoadString(IDS_LAYER_LABEL);
- CString curLbl;
- unsigned char lCnt = sgGetScene()->GetLayersCount();
- for (unsigned char i=0;i<lCnt;i++)
- {
- curLbl.Format(" %i",i);
- m_LayersComboBox.AddString(labl+curLbl);
- }*/
- SCENE_SETUPS tmpCV;
- if (global_3D_document)
- global_3D_document->GetSceneSetups(tmpCV);
- //m_LayersComboBox.SetCurSel(tmpCV.CurrentLayer);
- //m_view->GetDocument()->SetCurLayer(tmpCV.CurrentLayer);
- m_Fonts_ComboBox.ResetContent();
- /*
- Only in register version
- */
- }
- HBRUSH CSystemToolbar::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
- {
- HBRUSH hbr = CEGToolBar::OnCtlColor(pDC, pWnd, nCtlColor);
- //if(pWnd->GetDlgCtrlID() == ID_TOCHN1)
- if (pWnd->GetRuntimeClass()==RUNTIME_CLASS(CStatic))
- {
- pDC->SetBkMode(TRANSPARENT);
- LOGBRUSH lb;
- lb.lbStyle = BS_NULL;
- lb.lbColor = RGB(255, 0, 255);
- lb.lbHatch = HS_HORIZONTAL | HS_VERTICAL;
- hbr = CreateBrushIndirect(&lb);
- }
- // TODO: Return a different brush if the default is not desired
- return hbr;
- }
- #define CONTROLS_FONT_HEIGHT 12
- #define CONTROLS_FONT_WEIDTH FW_NORMAL
- #define CONTROLS_FONT _T("MS Shell Dlg")
- BEGIN_MESSAGE_MAP(CMyComboBox, CComboBox)
- ON_WM_CREATE()
- END_MESSAGE_MAP()
- int CMyComboBox::OnCreate(LPCREATESTRUCT lpCreateStruct)
- {
- if (CComboBox::OnCreate(lpCreateStruct) == -1)
- return -1;
- if( !CreateFont(CONTROLS_FONT_HEIGHT, CONTROLS_FONT_WEIDTH, CONTROLS_FONT) )
- {
- TRACE0("Failed to create font for combo boxn");
- return -1; // fail to create
- }
- return 0;
- }
- BOOL CMyComboBox::CreateFont(LONG lfHeight, LONG lfWeight, LPCTSTR lpszFaceName)
- {
- // Create a font for the combobox
- LOGFONT logFont;
- memset(&logFont, 0, sizeof(logFont));
- if (!::GetSystemMetrics(SM_DBCSENABLED))
- {
- // Since design guide says toolbars are fixed height so is the font.
- logFont.lfHeight = lfHeight;
- logFont.lfWeight = lfWeight;
- CString strDefaultFont = lpszFaceName;
- lstrcpy(logFont.lfFaceName, strDefaultFont);
- if (!m_font.CreateFontIndirect(&logFont))
- {
- TRACE("Could Not create font for combon");
- return FALSE;
- }
- }
- else
- {
- m_font.Attach(::GetStockObject(SYSTEM_FONT));
- }
- SetFont(&m_font);
- return TRUE;
- }
- BEGIN_MESSAGE_MAP(CLayersComboBox, CMyComboBox)
- ON_CONTROL_REFLECT(CBN_SELCHANGE, OnCbnSelchange)
- END_MESSAGE_MAP()
- void CLayersComboBox::OnCbnSelchange()
- {
- SCENE_SETUPS tmpSS;
- global_3D_document->GetSceneSetups(tmpSS);
- tmpSS.CurrentLayer = GetCurSel();
- global_3D_document->SetSceneSetups(tmpSS);
- }
- BEGIN_MESSAGE_MAP(CPrecisionComboBox, CMyComboBox)
- ON_CONTROL_REFLECT(CBN_SELCHANGE, OnCbnSelchange)
- END_MESSAGE_MAP()
- void CPrecisionComboBox::OnCbnSelchange()
- {
- SCENE_SETUPS tmpSS;
- global_3D_document->GetSceneSetups(tmpSS);
- tmpSS.CurrentPrecision = GetCurSel();
- global_3D_document->SetSceneSetups(tmpSS);
- }
- BEGIN_MESSAGE_MAP(CPrecisionStatic, CStatic)
- ON_WM_CREATE()
- // ON_WM_ERASEBKGND()
- END_MESSAGE_MAP()
- int CPrecisionStatic::OnCreate(LPCREATESTRUCT lpCreateStruct)
- {
- if (CStatic::OnCreate(lpCreateStruct) == -1)
- return -1;
- if( !CreateFont(CONTROLS_FONT_HEIGHT, CONTROLS_FONT_WEIDTH, CONTROLS_FONT) )
- {
- TRACE0("Failed to create font for combo boxn");
- return -1; // fail to create
- }
- return 0;
- }
- BOOL CPrecisionStatic::CreateFont(LONG lfHeight, LONG lfWeight, LPCTSTR lpszFaceName)
- {
- // Create a font for the combobox
- LOGFONT logFont;
- memset(&logFont, 0, sizeof(logFont));
- if (!::GetSystemMetrics(SM_DBCSENABLED))
- {
- // Since design guide says toolbars are fixed height so is the font.
- logFont.lfHeight = lfHeight;
- logFont.lfWeight = lfWeight;
- CString strDefaultFont = lpszFaceName;
- lstrcpy(logFont.lfFaceName, strDefaultFont);
- if (!m_font.CreateFontIndirect(&logFont))
- {
- TRACE("Could Not create font for combon");
- return FALSE;
- }
- }
- else
- {
- m_font.Attach(::GetStockObject(SYSTEM_FONT));
- }
- SetFont(&m_font);
- return TRUE;
- }
- BEGIN_MESSAGE_MAP(CColorComboBox, CColorPickerCB)
- ON_CONTROL_REFLECT(CBN_SELCHANGE, OnCbnSelchange)
- END_MESSAGE_MAP()
- void CColorComboBox::OnCbnSelchange()
- {
- SCENE_SETUPS tmpSS;
- global_3D_document->GetSceneSetups(tmpSS);
- tmpSS.CurrentColor = GetCurSel();
- global_3D_document->SetSceneSetups(tmpSS);
- }
- BEGIN_MESSAGE_MAP(CLineThicknessComboBox, CLineThiknessCombo)
- ON_CONTROL_REFLECT(CBN_SELCHANGE, OnCbnSelchange)
- END_MESSAGE_MAP()
- void CLineThicknessComboBox::OnCbnSelchange()
- {
- SCENE_SETUPS tmpSS;
- global_3D_document->GetSceneSetups(tmpSS);
- tmpSS.CurrentLineThickness = GetCurSel();
- global_3D_document->SetSceneSetups(tmpSS);
- }
- BEGIN_MESSAGE_MAP(CLineTypeComboBox, CLineStyleCombo)
- ON_CONTROL_REFLECT(CBN_SELCHANGE, OnCbnSelchange)
- END_MESSAGE_MAP()
- void CLineTypeComboBox::OnCbnSelchange()
- {
- SCENE_SETUPS tmpSS;
- global_3D_document->GetSceneSetups(tmpSS);
- tmpSS.CurrentLineType = GetCurSel();
- global_3D_document->SetSceneSetups(tmpSS);
- }
- BEGIN_MESSAGE_MAP(CFontsComboBox, CMyComboBox)
- ON_CONTROL_REFLECT(CBN_SELCHANGE, OnCbnSelchange)
- END_MESSAGE_MAP()
- void CFontsComboBox::OnCbnSelchange()
- {
- /*
- Only in register version
- */
- }