fbcontentpane.js
来自「proe5.0野火版下载(中文版免费下载)」· JavaScript 代码 · 共 1,698 行 · 第 1/4 页
JS
1,698 行
// --------------------------------------------------------------------------// I quickly built a set of buttons images at 30x30 gif format// from images in the spec. These images are not perfect and will need// to be cleaned up. Particularly are not an exact color match to// the ProE equivalent icons. If the images are updated, care needs to be // taken that they are all the same size for rollover to work correctly.// Some of the images pasted from the spec were 28x28 and some were 30x30.// I sized everything up to 30x30 for the moment.// Standard image - images used on mouseout eventvar pvxResetImage = 'fbcp_pvx_reset_but.gif'var pvxWireframeImage = 'fbcp_pvx_wireframe_but.gif';var pvxHiddenLineImage = 'fbcp_pvx_hidden_but.gif';var pvxNoHiddenLineImage = 'fbcp_pvx_nohidden_but.gif';var pvxShadedImage = 'fbcp_pvx_shaded_but.gif';var pvxNextSheetImage = 'fbcp_pvx_nextsheet_but.gif';var pvxPrevSheetImage = 'fbcp_pvx_prevsheet_but.gif';var pvxOpenFileImage = 'fbcp_openfile.gif';// Images used on mouseover event - rollover imagesvar pvxResetImageRollover = 'fbcp_pvx_reset_but_rl.gif'var pvxWireframeImageRollover = 'fbcp_pvx_wireframe_but_rl.gif';var pvxHiddenLineImageRollover = 'fbcp_pvx_hidden_but_rl.gif';var pvxNoHiddenLineImageRollover = 'fbcp_pvx_nohidden_but_rl.gif';var pvxShadedImageRollover = 'fbcp_pvx_shaded_but_rl.gif';var pvxNextSheetImageRollover = 'fbcp_pvx_nextsheet_but_rl.gif';var pvxPrevSheetImageRollover = 'fbcp_pvx_prevsheet_but_rl.gif';var pvxOpenFileImageRollover = 'fbcp_openfile_btn.gif';var pvxResetImagePressed = 'fbcp_pvx_reset_but_pr.gif'var pvxWireframeImagePressed = 'fbcp_pvx_wireframe_but_pr.gif';var pvxHiddenLineImagePressed = 'fbcp_pvx_hidden_but_pr.gif';var pvxNoHiddenLineImagePressed = 'fbcp_pvx_nohidden_but_pr.gif';var pvxShadedImagePressed = 'fbcp_pvx_shaded_but_pr.gif';var pvxNextSheetImagePressed = 'fbcp_pvx_nextsheet_but_pr.gif';var pvxPrevSheetImagePressed = 'fbcp_pvx_prevsheet_but_pr.gif';var pvxOpenFileImagePressed = 'fbcp_openfile_btn.gif';// Default tool tip object if an I18N version is not available// A I18N version of tooltips obejcts will be generate into the// page by the server processor with the name pbxButtonsI18NToolTips// It assume the lines to reset to I18N values is called after var definition// in the page.var pbxButtonsI18NToolTips = new Object();function msgId_get(id){ var tooltip = document.getElementById(id); // On I.E. the text is at the second child if (navigator.userAgent.indexOf('MSIE') != -1) return tooltip.childNodes[2].nodeValue; else return tooltip.childNodes[0].nodeValue; }function PVXTooolTipsInit(){ pbxButtonsI18NToolTips.PVXReset = msgId_get("PVXToolTipsReset"); pbxButtonsI18NToolTips.PVXWireframe = msgId_get("PVXToolTipsWireframe"); pbxButtonsI18NToolTips.PVXHiddenLine = msgId_get("PVXToolTipsHiddenLine"); pbxButtonsI18NToolTips.PVXNoHiddenLine = msgId_get("PVXToolTipsNoHiddenLine"); pbxButtonsI18NToolTips.PVXShading = msgId_get("PVXToolTipsShading"); pbxButtonsI18NToolTips.PVXNextSheet = msgId_get("PVXToolTipsNextSheet"); pbxButtonsI18NToolTips.PVXPrevSheet = msgId_get("PVXToolTipsPrevSheet"); pbxButtonsI18NToolTips.openinproe = msgId_get("PVXToolTipsOpenInProe");}var gPVXFlags = new Object();gPVXFlags.tooltiptag = "TITLE";function addPVXButtons(osfilepath){ // See if the PBX button element exists var pvxbuttons = document.getElementById('pvxButtons'); if ( pvxbuttons != null ) { var buttons = '<table border="0" cellpadding="0" cellspacing="0" width=100%> <tr>'; if ( useSheetControls(osfilepath) ) { buttons += generateDrawingPVXButtons(); } else { buttons += generatePVXButtons(); } buttons += '</tr></table >'; pvxbuttons.innerHTML = buttons; }}// Function to generate pvx buttons to page for assembly, part, ... objects// for the html CAD Document details pagefunction generatePVXButtons() { var buttons = ""; buttons += '<td>'; buttons += generatePVXButton('PVXReset', 'javascript:resetPVX()', pvxResetImage, pvxResetImageRollover, pvxResetImagePressed, pbxButtonsI18NToolTips['PVXReset']); buttons += '</td></tr>'; buttons += '<tr><td>'; buttons += generatePVXButton('PVXWireframe', 'javascript:setWireframe()', pvxWireframeImage, pvxWireframeImageRollover, pvxWireframeImagePressed, pbxButtonsI18NToolTips['PVXWireframe']); buttons += '</td></tr>'; buttons += '<tr><td>'; buttons += generatePVXButton('PVXHiddenLine', 'javascript:setHidden()', pvxHiddenLineImage, pvxHiddenLineImageRollover, pvxHiddenLineImagePressed, pbxButtonsI18NToolTips['PVXHiddenLine']); buttons += '</td></tr>'; buttons += '<tr><td>'; buttons += generatePVXButton('PVXNoHiddenLine', 'javascript:setNoHidden()', pvxNoHiddenLineImage, pvxNoHiddenLineImageRollover, pvxNoHiddenLineImagePressed, pbxButtonsI18NToolTips['PVXNoHiddenLine']); buttons += '</td></tr>'; buttons += '<tr><td>'; buttons += generatePVXButton('PVXShading', 'javascript:setShaded()', pvxShadedImage, pvxShadedImageRollover, pvxShadedImagePressed, pbxButtonsI18NToolTips['PVXShading']); buttons += '</td></tr>'; buttons += '<tr><td>'; buttons += generatePVXButton('openinproe', 'javascript:openInProe()', pvxOpenFileImage, pvxOpenFileImageRollover, pvxOpenFileImagePressed, pbxButtonsI18NToolTips['openinproe']); buttons += '</td>'; return buttons;}// Function to generate pvx buttons to page for drawings, layouts, ... objects// for the html details pagefunction generateDrawingPVXButtons() { var buttons = ""; buttons += '<td>'; buttons += generatePVXButton('PVXReset', 'javascript:resetPVX()', pvxResetImage, pvxResetImageRollover, pvxResetImagePressed, pbxButtonsI18NToolTips['PVXReset']); buttons += '</td></tr>'; buttons += '<tr><td>'; buttons += generateSheetField(); buttons += '</td></tr>'; buttons += '<tr><td>'; buttons += generatePVXButton('PVXNextSheet', 'javascript:sheetUp()', pvxNextSheetImage, pvxNextSheetImageRollover, pvxNextSheetImagePressed, pbxButtonsI18NToolTips['PVXNextSheet']); buttons += '</td></tr>'; buttons += '<tr><td>'; buttons += generatePVXButton('PVXPrevSheet', 'javascript:sheetDn()', pvxPrevSheetImage, pvxPrevSheetImageRollover, pvxPrevSheetImagePressed,pbxButtonsI18NToolTips['PVXPrevSheet']);buttons += '</td></tr>'; buttons += '<tr><td>'; buttons += generatePVXButton('openinproe', 'javascript:openInProe()', pvxOpenFileImage, pvxOpenFileImageRollover, pvxOpenFileImagePressed, pbxButtonsI18NToolTips['openinproe']); buttons += '</td>'; return buttons;}// Generate the html for a specific buttonfunction generatePVXButton(id, href, image, rolloverimage, pressedimage, tooltip) { // If not a supported browser return without generating buttons // An id is need to support trail file long term as well // as to generate the element name of the image for rollover support var button = ""; button = '<td ><a '; if ( id != null ) { button += 'id="'; button += id ; button += '" '; } // If the href equals null return an empty string for button if ( href == null ) { return ""; } button += 'href="'; button += href; button += '"'; // Without an id, no rollover image support will work since we use the id // to generate the name of the image consistently if ( id != null) { button += ' onmouseover="document.' + id + 'image' + ".src='" + head_data.baseImgDir + rolloverimage + "';" + '" '; button += ' onmouseout="document.' + id + 'image' + ".src='" + head_data.baseImgDir + image + "';" + '" '; // Initially this was not behaving as expected so it is commented out. // I assumed it is my incorrect use of the event that is the problem //button += ' onclick="document.' + id + 'image' + ".src='" + pressedimage + "';" + '" '; } button += '>'; if ( image != null ) { button += '<img '; if ( id != null ) { button += 'name="' + id + 'image' + '" '; } button += ' width=30 height=30 src="'; button += head_data.baseImgDir + image; button += '" '; // This section needs to be browser dependent if ( tooltip != null ) { button += gPVXFlags.tooltiptag + '="'; button += tooltip; button += '" '; } button += ' border="0">'; } // Close anchor and table cell button += '</a></td>'; return button;}function generateSheetField() { // Get starting sheet number var field = '<td>'; field += '<input value=1 disabled id="sheetnumber" type=text size=4 style="width: 95%"> </input>'; field += '</td>'; return field;}// Determine which set of buttons to generate in the page// based on the kind of ProE object. function useSheetControls(osfilepath) { if ( osfilepath.indexOf(".drw" ) > 0 || osfilepath.indexOf(".lay" ) > 0 || osfilepath.indexOf(".frm" ) > 0 || osfilepath.indexOf(".rep" ) > 0 || osfilepath.indexOf(".dgm" ) > 0 || osfilepath.indexOf(".dft" ) > 0 || osfilepath.indexOf(".tbl" ) > 0 ) return true; return false;}// Wrapper functions for PVX.function resetPVX(){ try { var pvxObj = document.getElementById('pvx_id'); if (pvxObj != null) pvxObj.refit(); }catch(e){ dbg_error_crash ('Error: failed doing pvx operation', 'resetPVX'); }}function setOrtho() { document.PVXForm.PVX.setViewMode(0);}function setPersp() { document.PVXForm.PVX.setViewMode(1);}function setWireframe() { try { var pvxObj = document.getElementById('pvx_id'); if (pvxObj != null) pvxObj.setRenderStyle(0); }catch(e){ dbg_error_crash ('Error: failed doing pvx operation', 'setWireframe'); }}function setHidden(){ try { var pvxObj = document.getElementById('pvx_id'); if (pvxObj != null) pvxObj.setRenderStyle(1); }catch(e){ dbg_error_crash ('Error: failed doing pvx operation', 'setHidden'); }}function setNoHidden() { try { var pvxObj = document.getElementById('pvx_id'); if (pvxObj != null) pvxObj.setRenderStyle(2); }catch(e){ dbg_error_crash ('Error: failed doing pvx operation', 'setNoHidden'); }}function setShaded(){try { var pvxObj = document.getElementById('pvx_id'); if (pvxObj != null) pvxObj.setRenderStyle(3); }catch(e){ dbg_error_crash ('Error: failed doing pvx operation', 'setShaded'); }}function openInProe() { if (s_selectedFile) activateFile(s_selectedFile);}function sheetUp() { try { var pvxObj = document.getElementById('pvx_id'); if (pvxObj != null) { var numSheets = pvxObj.getNumberSheets(); if ( numSheets > 1 ) { var field = document.getElementById("sheetnumber"); sheet = pvxObj.getCurrentSheet(); sheet = sheet + 1; if(sheet > numSheets) sheet = 1; pvxObj.setCurrentSheet(sheet); if ( field != null ) field.value = sheet; } } }catch(e){ dbg_error_crash ('Error: failed doing pvx operation', 'sheetUp'); }}function sheetDn() { try { var pvxObj = document.getElementById('pvx_id'); if (pvxObj != null) { var numSheets = pvxObj.getNumberSheets(); if ( numSheets > 1 ) { var field = document.getElementById("sheetnumber"); var sheet = pvxObj.getCurrentSheet(); sheet = sheet - 1; if(sheet < 1) sheet = numSheets; pvxObj.setCurrentSheet(sheet); if ( field != null ) field.value = sheet; } } }catch(e){ dbg_error_crash ('Error: failed doing pvx operation', 'sheetDn'); }}function About() { try { var pvxObj = document.getElementById('pvx_id'); if (pvxObj != null) pvxObj.AboutBox(); }catch(e){ dbg_error_crash ('Error: failed doing pvx operation', 'About'); }}function pvxTrailFile(line){ var pvxObj = document.getElementById('pvx_id'); if (pvxObj != null) { pvxObj.readTrailLine(line); }}// This removes the sync button for trail replay// so it will wait in the second time for pvx signal - onPVXDoneLoading.function removePVXDone(){ var pvxsync = document.getElementById('PVXSync'); pvxsync.innerHTML = '';}// This function is called when pvx is done loading and rendering.// This is used for trail playback to assure that the pvx had done loading before continuingfunction onPVXDoneLoading( inp ){ ProECommandVoid("Wait For ID:PVXDone"); var pvxsync = document.getElementById('PVXSync'); pvxsync.innerHTML = '<div id="PVXDone"> </div>';}function pvxSelection( input ){ var pos = input.lastIndexOf("/"); if (pos > 0 ) var shortName = input.substr(pos+1); else return; for (var i=0; i<row_data.length; i++) { if (row_data[i].filename == shortName) { // simulate a selection of that element. var cell = document.getElementById(row_data[i].id); if ( cell ) { s_UserClick = false; cell.click(); } break; } }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?