4 * LICENSE: This source file is licensed under the terms of the GNU General Public License.
\r
6 * @package Magic3 Framework
\r
7 * @author 平田直毅(Naoki Hirata) <naoki@aplo.co.jp>
\r
8 * @copyright Copyright 2006-2010 Magic3 Project.
\r
9 * @license http://www.gnu.org/copyleft/gpl.html GPL License
\r
10 * @version SVN: $Id: marquee.js 3742 2010-10-27 02:28:44Z fishbone $
\r
11 * @link http://www.magic3.org
\r
13 var editorObj = window.parent.InnerDialogLoaded();
\r
14 var FCK = editorObj.FCK ;
\r
15 var FCKLang = editorObj.FCKLang ;
\r
16 var FCKConfig = editorObj.FCKConfig ;
\r
17 var FCKTools = editorObj.FCKTools ;
\r
19 function Import(aSrc) {
\r
20 document.write('<scr'+'ipt type="text/javascript" src="' + aSrc + '"></sc' + 'ript>');
\r
22 Import(FCKConfig.FullBasePath + 'dialog/common/fck_dialog_common.js');
\r
25 var marqueeObj = FCK.Selection.GetSelectedElement();
\r
26 /*if (!marqueeObj || marqueeObj.tagName != 'MARQUEE')
\r
28 marqueeObj = FCK.Selection.GetParentElement() ;
\r
29 if (!marqueeObj || marqueeObj.tagName != 'MARQUEE') marqueeObj = null ;
\r
35 editorObj.FCKLanguageManager.TranslatePage(document);
\r
38 CreateBasicColorTable();
\r
45 window.parent.SetOkButton(true);
\r
46 window.parent.SetAutoSize(true);
\r
49 function CreateColorTable()
\r
51 // Get the target table.
\r
52 var oTable = document.getElementById('ColorTable');
\r
54 // Create the base colors array.
\r
55 var aColors = ['00','33','66','99','cc','ff'];
\r
57 // This function combines two ranges of three values from the color array into a row.
\r
58 function AppendColorRow( rangeA, rangeB )
\r
60 for ( var i = rangeA; i < rangeA + 3; i++ )
\r
62 var oRow = oTable.insertRow(-1);
\r
64 for ( var j = rangeB; j < rangeB + 3; j++ )
\r
66 for ( var n = 0; n < 6; n++ )
\r
68 AppendColorCell( oRow, '#' + aColors[j] + aColors[n] + aColors[i] );
\r
74 // This function create a single color cell in the color table.
\r
75 function AppendColorCell( targetRow, color )
\r
77 var oCell = targetRow.insertCell(-1);
\r
78 oCell.className = 'ColorCell';
\r
79 oCell.bgColor = color;
\r
81 oCell.onmouseover = function()
\r
83 document.getElementById('hicolor').style.backgroundColor = this.bgColor;
\r
84 document.getElementById('hicolortext').innerHTML = this.bgColor;
\r
87 oCell.onclick = function()
\r
89 document.getElementById('selhicolor').style.backgroundColor = this.bgColor;
\r
90 document.getElementById('txtBgcolor').value = this.bgColor;
\r
94 AppendColorRow( 0, 0 );
\r
95 AppendColorRow( 3, 0 );
\r
96 AppendColorRow( 0, 3 );
\r
97 AppendColorRow( 3, 3 );
\r
100 function CreateBasicColorTable()
\r
102 var oTable = document.getElementById('BasicColorTable') ;
\r
103 var aColors = ['#000000', '#333333', '#666666', '#999999', '#cccccc', '#ffffff',
\r
104 '#ff0000', '#00ff00', '#0000ff', '#ffff00', '#00ffff', '#ff00ff'] ;
\r
105 for (var i = 0 ; i < 12 ; i++ )
\r
107 var oRow = oTable.insertRow(-1) ;
\r
108 AppendColorCell(oRow, aColors[i] );
\r
110 // This function create a single color cell in the color table.
\r
111 function AppendColorCell( targetRow, color )
\r
113 var oCell = targetRow.insertCell(-1);
\r
114 oCell.className = 'ColorCell';
\r
115 oCell.bgColor = color;
\r
117 oCell.onmouseover = function()
\r
119 document.getElementById('hicolor').style.backgroundColor = this.bgColor;
\r
120 document.getElementById('hicolortext').innerHTML = this.bgColor;
\r
123 oCell.onclick = function()
\r
125 document.getElementById('selhicolor').style.backgroundColor = this.bgColor;
\r
126 document.getElementById('txtBgcolor').value = this.bgColor;
\r
133 document.getElementById('selhicolor').style.backgroundColor = '';
\r
134 document.getElementById('txtBgcolor').value = '';
\r
137 function ClearActual()
\r
139 document.getElementById('hicolor').style.backgroundColor = '';
\r
140 document.getElementById('hicolortext').innerHTML = ' ';
\r
143 function UpdateColor()
\r
145 try { document.getElementById('selhicolor').style.backgroundColor = document.getElementById('txtBgcolor').value; }
\r
146 catch (e) { Clear(); }
\r
152 SetAttribute(marqueeObj, 'style', '');
\r
153 if (GetE('cmbDirection').value != '') SetAttribute(marqueeObj, '-wap-marquee-dir', GetE('cmbDirection').value);
\r
154 if (GetE('cmbBehavior').value != '') SetAttribute(marqueeObj, '-wap-marquee-style', GetE('cmbBehavior').value);
\r
155 if (GetE('txtBgcolor').value != '') SetAttribute(marqueeObj, 'background-color', GetE('txtBgcolor').value);
\r
156 if (GetE('txtLoop').value && GetE('txtLoop').value.match(/^\d{1,2}$/)) SetAttribute(marqueeObj, '-wap-marquee-loop', GetE('txtLoop').value);
\r
158 var styleDef = FCK.Commands.LoadedCommands.Marquee2.styleDef ;
\r
159 if (GetE('cmbDirection').value != '') styleDef.Styles['-wap-marquee-dir'] = GetE('cmbDirection').value;
\r
160 if (GetE('cmbBehavior').value != '') styleDef.Styles['-wap-marquee-style'] = GetE('cmbBehavior').value;
\r
161 if (GetE('txtBgcolor').value != '') styleDef.Styles['background-color'] = GetE('txtBgcolor').value;
\r
162 if (GetE('txtLoop').value && GetE('txtLoop').value.match(/^\d{1,2}$/)) styleDef.Styles['-wap-marquee-loop'] = GetE('txtLoop').value;
\r
165 FCK.Commands.LoadedCommands.Marquee2.ApplyStyle();
\r
170 function LoadSelection()
\r
172 if (!marqueeObj) return;
\r
174 GetE('cmbDirection').value = GetAttribute(marqueeObj, '-wap-marquee-dir', '');
\r
175 GetE('cmbBehavior').value = GetAttribute(marqueeObj, '-wap-marquee-style', '');
\r
176 GetE('txtLoop').value = GetAttribute(marqueeObj, '-wap-marquee-loop', '' );
\r
177 GetE('txtBgcolor').value = marqueeObj.getAttribute('background-color');
\r