CLCDColorText::CLCDColorText(void) { m_nTextLength = 0; m_hFont = NULL; m_sText.erase(m_sText.begin(), m_sText.end()); SetForegroundColor(RGB(255, 0, 255)); m_bRecalcExtent = TRUE; SecureZeroMemory(&m_dtp, sizeof(DRAWTEXTPARAMS)); m_dtp.cbSize = sizeof(DRAWTEXTPARAMS); m_nTextFormat = m_nTextAlignment = (DT_LEFT | DT_NOPREFIX); m_nTextAlignment = DT_LEFT; SecureZeroMemory(&m_sizeVExtent, sizeof(m_sizeVExtent)); SecureZeroMemory(&m_sizeHExtent, sizeof(m_sizeHExtent)); SetBackgroundMode(TRANSPARENT, RGB(255,255,255)); //Default font LOGFONT lf; lf.lfCharSet = 0; lf.lfClipPrecision = 2; lf.lfEscapement = 0; lf.lfHeight = -32; lf.lfItalic = 0; lf.lfOrientation = 0; lf.lfOutPrecision = 3; lf.lfPitchAndFamily = 18; lf.lfQuality = 1; lf.lfStrikeOut = 0; lf.lfUnderline = 0; lf.lfWeight = 400; lf.lfWidth = 0; wsprintf(lf.lfFaceName, _T("Times New Roman") ); m_hFont = CreateFontIndirect(&lf); m_StartX = 0; m_LoopX = 0; m_ScrollRate = 0; m_PixelLength = 0; m_RunningTime = 0; m_ScrollBuffer = 20; m_JumpDistance = 0; m_bAutoScroll = true; }
void AnnotationAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("AnnotationAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("axes2D")) != 0) axes2D.SetFromNode(node); if((node = searchNode->GetNode("axes3D")) != 0) axes3D.SetFromNode(node); if((node = searchNode->GetNode("userInfoFlag")) != 0) SetUserInfoFlag(node->AsBool()); if((node = searchNode->GetNode("userInfoFont")) != 0) userInfoFont.SetFromNode(node); if((node = searchNode->GetNode("databaseInfoFlag")) != 0) SetDatabaseInfoFlag(node->AsBool()); if((node = searchNode->GetNode("timeInfoFlag")) != 0) SetTimeInfoFlag(node->AsBool()); if((node = searchNode->GetNode("databaseInfoFont")) != 0) databaseInfoFont.SetFromNode(node); if((node = searchNode->GetNode("databaseInfoExpansionMode")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 5) SetDatabaseInfoExpansionMode(PathExpansionMode(ival)); } else if(node->GetNodeType() == STRING_NODE) { PathExpansionMode value; if(PathExpansionMode_FromString(node->AsString(), value)) SetDatabaseInfoExpansionMode(value); } } if((node = searchNode->GetNode("databaseInfoTimeScale")) != 0) SetDatabaseInfoTimeScale(node->AsDouble()); if((node = searchNode->GetNode("databaseInfoTimeOffset")) != 0) SetDatabaseInfoTimeOffset(node->AsDouble()); if((node = searchNode->GetNode("legendInfoFlag")) != 0) SetLegendInfoFlag(node->AsBool()); if((node = searchNode->GetNode("backgroundColor")) != 0) backgroundColor.SetFromNode(node); if((node = searchNode->GetNode("foregroundColor")) != 0) foregroundColor.SetFromNode(node); if((node = searchNode->GetNode("gradientBackgroundStyle")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 5) SetGradientBackgroundStyle(GradientStyle(ival)); } else if(node->GetNodeType() == STRING_NODE) { GradientStyle value; if(GradientStyle_FromString(node->AsString(), value)) SetGradientBackgroundStyle(value); } } if((node = searchNode->GetNode("gradientColor1")) != 0) gradientColor1.SetFromNode(node); if((node = searchNode->GetNode("gradientColor2")) != 0) gradientColor2.SetFromNode(node); if((node = searchNode->GetNode("backgroundMode")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 4) SetBackgroundMode(BackgroundMode(ival)); } else if(node->GetNodeType() == STRING_NODE) { BackgroundMode value; if(BackgroundMode_FromString(node->AsString(), value)) SetBackgroundMode(value); } } if((node = searchNode->GetNode("backgroundImage")) != 0) SetBackgroundImage(node->AsString()); if((node = searchNode->GetNode("imageRepeatX")) != 0) SetImageRepeatX(node->AsInt()); if((node = searchNode->GetNode("imageRepeatY")) != 0) SetImageRepeatY(node->AsInt()); if((node = searchNode->GetNode("axesArray")) != 0) axesArray.SetFromNode(node); }