1/*
2 * FCKeditor - The text editor for Internet - http://www.fckeditor.net
3 * Copyright (C) 2003-2007 Frederico Caldeira Knabben
4 *
5 * == BEGIN LICENSE ==
6 *
7 * Licensed under the terms of any of the following licenses at your
8 * choice:
9 *
10 *  - GNU General Public License Version 2 or later (the "GPL")
11 *    http://www.gnu.org/licenses/gpl.html
12 *
13 *  - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
14 *    http://www.gnu.org/licenses/lgpl.html
15 *
16 *  - Mozilla Public License Version 1.1 or later (the "MPL")
17 *    http://www.mozilla.org/MPL/MPL-1.1.html
18 *
19 * == END LICENSE ==
20 *
21 * FCKStyleDef Class: represents a single style definition.
22 */
23
24var FCKStyleDef = function( name, element )
25{
26	this.Name = name ;
27	this.Element = element.toUpperCase() ;
28	this.IsObjectElement = FCKRegexLib.ObjectElements.test( this.Element ) ;
29	this.Attributes = new Object() ;
30}
31
32FCKStyleDef.prototype.AddAttribute = function( name, value )
33{
34	this.Attributes[ name ] = value ;
35}
36
37FCKStyleDef.prototype.GetOpenerTag = function()
38{
39	var s = '<' + this.Element ;
40
41	for ( var a in this.Attributes )
42		s += ' ' + a + '="' + this.Attributes[a] + '"' ;
43
44	return s + '>' ;
45}
46
47FCKStyleDef.prototype.GetCloserTag = function()
48{
49	return '</' + this.Element + '>' ;
50}
51
52
53FCKStyleDef.prototype.RemoveFromSelection = function()
54{
55	if ( FCKSelection.GetType() == 'Control' )
56		this._RemoveMe( FCK.ToolbarSet.CurrentInstance.Selection.GetSelectedElement() ) ;
57	else
58		this._RemoveMe( FCK.ToolbarSet.CurrentInstance.Selection.GetParentElement() ) ;
59}