/**************************************************************************************************************************** Licensed Materials - Property of IBM BI and PM: QFW © Copyright IBM Corp. 2005, 2010 US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. *****************************************************************************************************************************/ D_QanPreferencies.F_Dialog_OnBeforeVisible = function() { this.m_nQanProivderListView = G_ResManager.F_GetResource( 'qanProviders' ); this.M_oInst.m_cboProviders = new C_ListView( this.F_GetDlgItem( "cboProviders" ), this.f_getProviderListView(this.m_nQanProivderListView.ownerDocument), this ); this.M_oInst.m_cboColorSchemes = new C_ListView( this.F_GetDlgItem( "cboColorSchemes" ), this.f_getColorSchemesListView(this.m_nQanProivderListView.ownerDocument), this ); this.M_oInst.m_cboProviders.F_SelectByValue( "QFS" ); this.F_GetDlgItem("chkMainMethodsOnly").checked = ( G_QanApp.F_GetLoggingView().nHLdisplay == "none" ); this.F_GetDlgItem("chkShowTimestamp").checked = ( G_QanApp.F_GetLoggingView().timeStamp == "inline" ); }; D_QanPreferencies.F_OnOK = function() { var v_bMainMethodsOnly = this.F_GetDlgItem("chkMainMethodsOnly").checked; G_QanApp.F_GetLoggingView().nHLdisplay = (v_bMainMethodsOnly)? "none": "block"; var v_bShowTimestamp = this.F_GetDlgItem("chkShowTimestamp").checked; G_QanApp.F_GetLoggingView().timeStamp = (v_bShowTimestamp)? "inline": "none"; G_QanApp.F_GetLoggingView().nHLtimeStamp = (v_bShowTimestamp)? "inline": "none"; var v_aProviders = G_QanApp.F_GetLoggingView().providersList; var v_aViewColorSchemes = G_QanApp.F_GetLoggingView().highlightList; var v_nlListItems = this.m_nProvidersListView.selectNodes( 'listItems/listItem' ); for( var i = 0; i < v_nlListItems.length; ++i ) { var v_sProviderColorScheme = v_nlListItems[i].getAttribute( "colorScheme" ); v_aViewColorSchemes[i] = (v_sProviderColorScheme && v_sProviderColorScheme != v_aColorSchemes[0][0])? v_sProviderColorScheme: "none"; } G_QanApp.F_GetLoggingView().savePreferences(G_QanApp.F_GetLoggingView().document); G_QanApp.F_GetLoggingView().applyPreferences(G_QanApp.F_GetLoggingView().document); // set properties this.M_fnSuper_OnOK(); }; var v_aColorSchemes = [ [ "<clear>", [] ], [ "red", [ "#ffcccc", "#ff9999", "#ff0000", "#cc0000" ] ], [ "orange", [ "#ffcccc", "#ffcc99", "#ff6600", "#cc3300" ] ], [ "yellow", [ "#ffffcc", "#ffff99", "#ffcc00", "#cc9900" ] ], [ "green", [ "#ccffcc", "#99ff99", "#00cc00", "#009900" ] ], [ "cyan", [ "#ccffff", "#99ffff", "#009999", "#006666" ] ], [ "purple", [ "#ffccff", "#cc99ff", "#660099", "#330066" ] ], [ "pink", [ "#ffccff", "#ff99cc", "#cc0099", "#990066" ] ], [ "grey", [ "#cccccc", "#999999", "#666666", "#333333" ] ], [ "blue", [ "#ccccff", "#9999ff", "#0033cc", "#003399" ] ] ]; D_QanPreferencies.f_getColorSchemesListView = function( v_document ) { if( this.m_nColorSchemesListView ) return this.m_nColorSchemesListView; var d = v_document; var v_nListView = d.createElement( "listView" ); v_nListView.setAttribute( "allowCtrlDeselect", "false" ); v_nListView.setAttribute( "hotTracking", "false" ); var v_nListItems = v_nListView.appendChild( d.createElement( "listItems" ) ); for( var iColor = 0; iColor < v_aColorSchemes.length; ++iColor ) { var v_nListItem = v_nListItems.appendChild( d.createElement( "listItem" ) ); v_nListItem.setAttribute( "value", v_aColorSchemes[iColor][0] ); var v_sHtml = ""; var v_aColors = v_aColorSchemes[iColor][1]; for( var i = 0; i < v_aColors.length; ++i ) v_sHtml += ''; v_sHtml += '' + v_aColorSchemes[iColor][0] + ''; v_nListItem.setAttribute( "html", v_sHtml ); } this.m_nColorSchemesListView = v_nListView; return v_nListView; } D_QanPreferencies.f_getProviderListView = function( v_document ) { if( this.m_nProvidersListView ) return this.m_nProvidersListView; var d = v_document; var v_aProviders = G_QanApp.F_GetLoggingView().providersList; var v_aColorScheme = G_QanApp.F_GetLoggingView().highlightList; var v_nListView = d.createElement( "listView" ); v_nListView.setAttribute( "allowCtrlDeselect", "false" ); v_nListView.setAttribute( "hotTracking", "false" ); var v_nListItems = v_nListView.appendChild( d.createElement( "listItems" ) ); for( var iProvider = 0; iProvider < v_aProviders.length; ++iProvider ) { var v_nListItem = v_nListItems.appendChild( d.createElement( "listItem" ) ); var v_aColorSchemeInfo = this.f_findColorSchemeInfo( v_aColorScheme[iProvider] ); var v_sProviderName = v_aProviders[iProvider].replace(/\./, ""); v_nListItem.setAttribute( "value", v_sProviderName ); v_nListItem.setAttribute( "colorScheme", v_aColorSchemeInfo? v_aColorSchemeInfo[0]: v_aColorSchemes[0][0] ); D_QanPreferencies.f_setProviderItemListHtml( v_nListItem ); } this.m_nProvidersListView = v_nListView; return v_nListView; } D_QanPreferencies.f_setProviderItemListHtml = function( nListItem ) { var v_sProviderName = nListItem.getAttribute( "value" ); var v_sColorScheme = nListItem.getAttribute( "colorScheme" ); var v_aColorSchemeInfo = this.f_findColorSchemeInfo( v_sColorScheme ); var v_sFontColor = (v_aColorSchemeInfo && v_aColorSchemeInfo[1][3])? v_aColorSchemeInfo[1][3]: ""; var v_sHtml = '' + v_sProviderName + ''; nListItem.setAttribute( "html", v_sHtml ); } D_QanPreferencies.f_findColorSchemeInfo = function( sColorSchemeName ) { for( var i = 0; i < v_aColorSchemes.length; ++i ) if( v_aColorSchemes[i][0] == sColorSchemeName ) return v_aColorSchemes[i]; } D_QanPreferencies.F_ListView_OnItemClick = function( v_oListView, v_nListItem, v_iMouseButton ) { if( v_oListView == this.M_oInst.m_cboProviders ) this.f_updateColorSchemeList( v_nListItem ); else this.f_updateColorSchemeOfActiveProvider( v_nListItem ); } D_QanPreferencies.f_updateColorSchemeList = function( nActiveProviderListItem ) { var v_sCurrentColorScheme = nActiveProviderListItem.getAttribute( "colorScheme" ); this.M_oInst.m_cboColorSchemes.F_SelectByValue( v_sCurrentColorScheme? v_sCurrentColorScheme: v_aColorSchemes[0][0] ); } D_QanPreferencies.f_updateColorSchemeOfActiveProvider = function( nActiveColorScheme ) { var v_sCurrentColorScheme = nActiveColorScheme.getAttribute( "value" ); var v_nSelectedProviderItem = this.M_oInst.m_cboProviders.F_GetSelectedListItem(); v_nSelectedProviderItem.setAttribute( "colorScheme", v_sCurrentColorScheme ); this.f_setProviderItemListHtml( v_nSelectedProviderItem ); this.M_oInst.m_cboProviders.F_Draw(); }