From a5e28530b5b092c287ff04db3b04e6a68267eeb6 Mon Sep 17 00:00:00 2001 From: jsdelfino Date: Sun, 27 Feb 2011 03:53:11 +0000 Subject: [PATCH] Refactor component palettes a bit and support autosave. git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1074983 13f79535-47bb-0310-9956-ffa450edef68 --- sca-cpp/trunk/etc/git-exclude | 2 + sca-cpp/trunk/modules/edit/Makefile.am | 4 +- .../trunk/modules/edit/htdocs/app/app.html | 60 ++++++++++++++--- .../modules/edit/htdocs/graph/graph.html | 60 +++++++++++++---- .../trunk/modules/edit/htdocs/graph/graph.js | 43 +++++++++--- .../trunk/modules/edit/htdocs/page/page.html | 67 ++++++++++++++++--- .../trunk/modules/edit/htdocs/page/page.js | 28 +++++++- .../{events => event}/palette.composite | 2 +- .../{lists => list}/palette.composite | 37 +--------- .../edit/palettes/search/palette.composite | 47 +++++++++++++ .../{sensors => sensor}/palette.composite | 27 +++++++- .../edit/palettes/social/palette.composite | 25 ------- .../edit/palettes/talk/palette.composite | 58 ++++++++++++++++ .../edit/palettes/transform/palette.composite | 61 +++++++++++++++++ .../{values => value}/palette.composite | 2 +- 15 files changed, 410 insertions(+), 113 deletions(-) rename sca-cpp/trunk/modules/edit/palettes/{events => event}/palette.composite (98%) rename sca-cpp/trunk/modules/edit/palettes/{lists => list}/palette.composite (70%) create mode 100644 sca-cpp/trunk/modules/edit/palettes/search/palette.composite rename sca-cpp/trunk/modules/edit/palettes/{sensors => sensor}/palette.composite (60%) create mode 100644 sca-cpp/trunk/modules/edit/palettes/talk/palette.composite create mode 100644 sca-cpp/trunk/modules/edit/palettes/transform/palette.composite rename sca-cpp/trunk/modules/edit/palettes/{values => value}/palette.composite (98%) diff --git a/sca-cpp/trunk/etc/git-exclude b/sca-cpp/trunk/etc/git-exclude index 77c26ac5f3..3de21fefe0 100644 --- a/sca-cpp/trunk/etc/git-exclude +++ b/sca-cpp/trunk/etc/git-exclude @@ -112,4 +112,6 @@ json-value value-json element-value value-element +modules/edit/apps/*/htdocs +modules/edit/apps/*/nuvem diff --git a/sca-cpp/trunk/modules/edit/Makefile.am b/sca-cpp/trunk/modules/edit/Makefile.am index 2007507817..68f4017e53 100644 --- a/sca-cpp/trunk/modules/edit/Makefile.am +++ b/sca-cpp/trunk/modules/edit/Makefile.am @@ -17,6 +17,6 @@ moddir = $(prefix)/modules/edit -nobase_dist_mod_DATA = htdocs/*.html htdocs/dash/*.html htdocs/app/*.html htdocs/graph/*.html htdocs/graph/*.js htdocs/page/*.html htdocs/page/*.js htdocs/login/*.html htdocs/logout/*.html -EXTRA_DIST = htdocs/*.html htdocs/dash/*.html htdocs/app/*.html htdocs/graph/*.html htdocs/graph/*.js htdocs/page/*.html htdocs/page/*.js htdocs/login/*.html htdocs/logout/*.html +nobase_dist_mod_DATA = htdocs/*.html htdocs/dash/*.html htdocs/app/*.html htdocs/graph/*.html htdocs/graph/*.js htdocs/page/*.html htdocs/page/*.js htdocs/login/*.html htdocs/logout/*.html palettes/*/palette.composite apps/*/app.composite apps/*/app.html +EXTRA_DIST = htdocs/*.html htdocs/dash/*.html htdocs/app/*.html htdocs/graph/*.html htdocs/graph/*.js htdocs/page/*.html htdocs/page/*.js htdocs/login/*.html htdocs/logout/*.html palettes/*/palette.composite apps/*/app.composite apps/*/app.html diff --git a/sca-cpp/trunk/modules/edit/htdocs/app/app.html b/sca-cpp/trunk/modules/edit/htdocs/app/app.html index 46de9d61c9..c4bc54a8d7 100644 --- a/sca-cpp/trunk/modules/edit/htdocs/app/app.html +++ b/sca-cpp/trunk/modules/edit/htdocs/app/app.html @@ -37,7 +37,7 @@ [atom] - + @@ -73,6 +73,12 @@ var dashboard = sca.reference(editWidget, "dashboard"); var appname = ui.queryParams()['app']; $('source').innerHTML = '[atom]'; +/** + * The current app entry and corresponding saved XML content. + */ +var appentry; +var savedappentryxml = ''; + /** * Default field values. */ @@ -86,25 +92,61 @@ var defdesc = 'Enter a short description of your app here'; */ function getapp(name) { dashboard.get(name, function(doc) { - var entry = doc != null? atom.readATOMEntryDocument(doc) : mklist('', name); - $('appTitle').value = car(entry) != ''? car(entry) : deftitle; + appentry = doc != null? atom.readATOMEntryDocument(doc) : mklist('', name); + $('appTitle').value = car(appentry) != ''? car(appentry) : deftitle; $('appCategory').value = defcategory; $('appUpdated').innerHTML = defdate; $('appDescription').innerHTML = defdesc; + savedappentryxml = car(atom.writeATOMEntry(appentry)); }); } /** - * Save an app. + * Handle save button click event. */ $('saveButton').onclick = function() { - var title = $('appTitle').value; - var app = mklist(title != deftitle && title != ''? title : appname, appname, mklist()); - var entry = atom.writeATOMEntry(app); - dashboard.put(appname, car(entry)); - return false; + return save(); }; +/** + * Save the current app. + */ +function save() { + $('saveButton').value = 'Saving'; + var title = $('appTitle').value; + appentry = mklist(title != deftitle && title != ''? title : appname, appname, mklist()); + savedappentryxml = car(atom.writeATOMEntry(appentry)); + dashboard.put(appname, savedappentryxml, function() { + if (savedappentryxml == car(atom.writeATOMEntry(appentry))) + $('saveButton').value = 'Saved'; + return true; + }); + return true; +} + +/** + * Handle a change event + */ +function onappchange() { + var title = $('appTitle').value; + appentry = mklist(title != deftitle && title != ''? title : appname, appname, mklist()); + if (savedappentryxml == car(atom.writeATOMEntry(appentry))) + return false; + $('saveButton').value = 'Save now'; + + // Autosave after 3 seconds + setTimeout(function() { + if (savedappentryxml == car(atom.writeATOMEntry(appentry))) + return false; + return save(); + }, 3000); + return true; +} + +$('appTitle').onchange = onappchange; +$('appCategory').onchange = onappchange; +$('appDescription').onchange = onappchange; + // Get the current app getapp(appname); diff --git a/sca-cpp/trunk/modules/edit/htdocs/graph/graph.html b/sca-cpp/trunk/modules/edit/htdocs/graph/graph.html index e03cc6038d..2a92a5d11e 100644 --- a/sca-cpp/trunk/modules/edit/htdocs/graph/graph.html +++ b/sca-cpp/trunk/modules/edit/htdocs/graph/graph.html @@ -44,7 +44,7 @@ [atom json] - + @@ -70,8 +70,9 @@ var appname = ui.queryParams()['app']; $('source').innerHTML = '[atom json]'; /** - * The current app composite. + * The current app composite and corresponding saved XML content. */ +var savedcomposxml = ''; var composite; /** @@ -100,7 +101,10 @@ function getapp(name, g) { ''; composite = readXML(mklist(x)); } - graph.edit(name, composite, graph.composite(composite, graph.mkpath().move(palcx,0)), g); + graph.edit(name, composite, graph.composite(composite, graph.mkpath().move(palcx,0)), oncomposchange, g); + + // Track the saved composite XML + savedcomposxml = car(writeXML(composite, false)); }); } @@ -134,18 +138,45 @@ function installpalette(name, pos, g, bg, palette, gpalettes) { } /** - * Save the current edited page. + * Handle save button click event. */ $('saveButton').onclick = function(e) { + return save(); +}; - // Update the page ATOM entry - var compxml = writeXML(composite, false); +/** + * Save the current composite. + */ +function save() { + $('saveButton').value = 'Saving'; + savedcomposxml = car(writeXML(composite, false)); var entry = '' + '' + appname + '' + appname + '' + - compxml + ''; + savedcomposxml + ''; apps.put(appname, entry, function() { + if (savedcomposxml == car(writeXML(composite, false))) + $('saveButton').value = 'Saved'; + return true; }); -}; + return true; +} + +/** + * Handle a composite change event + */ +function oncomposchange() { + if (savedcomposxml == car(writeXML(composite, false))) + return false; + $('saveButton').value = 'Save now'; + + // Autosave after 3 seconds + setTimeout(function() { + if (savedcomposxml == car(writeXML(composite, false))) + return false; + return save(); + }, 3000); + return true; +} // Create editor graph area var g = graph.mkgraph(graph.mkpath().move(0,40), $('compName'), $('propValue'), $('compValue')); @@ -153,17 +184,20 @@ var bg = graph.mkgroup(graph.mkpath()); // Install the palettes var gpalettes = new Array(); -var spalette = 'events'; +var spalette = 'event'; var pos = graph.mkpath(); -installpalette('events', pos.rmove(0,0), g, bg, spalette, gpalettes); -installpalette('values', pos.rmove(0,40), g, bg, spalette, gpalettes); +installpalette('event', pos.rmove(0,0), g, bg, spalette, gpalettes); +installpalette('value', pos.rmove(0,40), g, bg, spalette, gpalettes); installpalette('url', pos.rmove(0, 40), g, bg, spalette, gpalettes); -installpalette('lists', pos.rmove(0, 40), g, bg, spalette, gpalettes); +installpalette('list', pos.rmove(0, 40), g, bg, spalette, gpalettes); +installpalette('transform', pos.rmove(0, 40), g, bg, spalette, gpalettes); installpalette('text', pos.rmove(0, 40), g, bg, spalette, gpalettes); installpalette('logic', pos.rmove(0, 40), g, bg, spalette, gpalettes); installpalette('math', pos.rmove(0, 40), g, bg, spalette, gpalettes); +installpalette('talk', pos.rmove(0, 40), g, bg, spalette, gpalettes); installpalette('social', pos.rmove(0, 40), g, bg, spalette, gpalettes); -installpalette('sensors', pos.rmove(0, 40), g, bg, spalette, gpalettes); +installpalette('search', pos.rmove(0, 40), g, bg, spalette, gpalettes); +installpalette('sensor', pos.rmove(0, 40), g, bg, spalette, gpalettes); // Get and display the current app getapp(appname, g); diff --git a/sca-cpp/trunk/modules/edit/htdocs/graph/graph.js b/sca-cpp/trunk/modules/edit/htdocs/graph/graph.js index 7273dae1bf..5e1de60c65 100644 --- a/sca-cpp/trunk/modules/edit/htdocs/graph/graph.js +++ b/sca-cpp/trunk/modules/edit/htdocs/graph/graph.js @@ -58,7 +58,7 @@ var proxcy = 20; var buttoncx = 70; var buttoncy = 30; var curvsz = 6; -var tabsz = 3; +var tabsz = 2; /** * Base path class. @@ -236,6 +236,9 @@ if (ui.isIE()) { pvalue.value = ''; cvalue.innerHTML = ''; } + + // Trigger composite change event + vmlg.oncomposchange(); } // Forget current dragged component @@ -281,14 +284,17 @@ if (ui.isIE()) { return false; // Change component name and refactor references to it - var compos = scdl.composite(svg.compos); + var compos = scdl.composite(vmlg.compos); cname.value = graph.ucid(cname.value, compos); graph.selected.id = cname.value; - cvalue.innerHTML = graph.compvaluelink(svg.appname, graph.selected.id); + cvalue.innerHTML = graph.compvaluelink(vmlg.appname, graph.selected.id); setElement(compos, graph.renamecomp(graph.selected.comp, compos, cname.value)); // Refresh the composite - graph.refresh(svg); + graph.refresh(vmlg); + + // Trigger composite change event + vmlg.oncomposchange(); return false; }; @@ -301,7 +307,10 @@ if (ui.isIE()) { pvalue.value = graph.property(graph.selected.comp); // Refresh the composite - graph.refresh(svg); + graph.refresh(vmlg); + + // Trigger composite change event + vmlg.oncomposchange(); return false; }; @@ -391,7 +400,7 @@ if (ui.isIE()) { graph.comptitlewidth = function(comp) { var t = graph.title(comp); graph.comptitlewidthdiv.innerHTML = t; - var twidth = graph.comptitlewidthdiv.offsetWidth; + var twidth = graph.comptitlewidthdiv.offsetWidth + 4; graph.comptitlewidthdiv.innerHTML = ''; return twidth; }; @@ -412,7 +421,7 @@ if (ui.isIE()) { graph.proptitlewidth = function(comp) { var t = graph.property(comp); graph.proptitlewidthdiv.innerHTML = t; - var twidth = graph.proptitlewidthdiv.offsetWidth; + var twidth = graph.proptitlewidthdiv.offsetWidth + 4; graph.proptitlewidthdiv.innerHTML = ''; return twidth; }; @@ -714,6 +723,9 @@ if (ui.isIE()) { // Refresh the composite graph.refresh(svg); + + // Trigger composite change event + svg.oncomposchange(); return false; }; @@ -778,6 +790,9 @@ if (ui.isIE()) { // Refresh the composite graph.refresh(svg); + + // Trigger composite change event + svg.oncomposchange(); return false; }; @@ -791,6 +806,9 @@ if (ui.isIE()) { // Refresh the composite graph.refresh(svg); + + // Trigger composite change event + svg.oncomposchange(); return false; }; @@ -868,7 +886,7 @@ if (ui.isIE()) { graph.comptitlewidth = function(comp) { var title = graph.comptitle(comp); graph.titlewidthsvg.appendChild(title); - var width = title.getBBox().width; + var width = title.getBBox().width + 4; graph.titlewidthsvg.removeChild(title); return width; }; @@ -906,7 +924,7 @@ if (ui.isIE()) { graph.proptitlewidth = function(comp) { var title = graph.proptitle(comp); graph.titlewidthsvg.appendChild(title); - var width = title.getBBox().width; + var width = title.getBBox().width + 4; graph.titlewidthsvg.removeChild(title); return width; }; @@ -1200,6 +1218,8 @@ graph.compheight = function(comp, cassoc) { var height = Math.max(lsvcsh, rrefsh); if (!isNil(graph.brefs(comp))) height = Math.max(height, (tabsz * 10) + (tabsz * 4) + (tabsz * 2)); + if (graph.property(comp) != '') + height = Math.max(40, height); return height; }); }; @@ -1532,7 +1552,7 @@ graph.composite = function(compos, pos) { * Move the rendering cursor down below a component. */ function rendermove(comp, cassoc, pos) { - return pos.clone().rmove(0, graph.compclosureheight(comp, cassoc) + (tabsz * 2)); + return pos.clone().rmove(0, graph.compclosureheight(comp, cassoc) + Math.max((tabsz * 2), 8)); } if (isNil(svcs)) @@ -1803,11 +1823,12 @@ graph.refresh = function(g) { * Display and enable editing of a composite and the graphical * nodes that represent it. */ -graph.edit = function(appname, compos, nodes, g) { +graph.edit = function(appname, compos, nodes, onchange, g) { // Store the appname and composite in the graphical canvas g.appname = appname; g.compos = compos; + g.oncomposchange = onchange; // Display the composite nodes return graph.display(nodes, g); diff --git a/sca-cpp/trunk/modules/edit/htdocs/page/page.html b/sca-cpp/trunk/modules/edit/htdocs/page/page.html index e305058475..7ace732526 100644 --- a/sca-cpp/trunk/modules/edit/htdocs/page/page.html +++ b/sca-cpp/trunk/modules/edit/htdocs/page/page.html @@ -43,7 +43,7 @@ [atom json] - + @@ -57,7 +57,7 @@ -checkbox +checkbox link text @@ -91,6 +91,11 @@ function atompage(doc) { return cddr(item); } +/** + * Track the current page saved XHTML content. + */ +var savedpagexhtml = ''; + /** * Get and display an app page. */ @@ -105,10 +110,9 @@ function getpage(name, edit) { if (isNil(el)) { // Create a default empty page if necessary - buffer.innerHTML = '
'; + buffer.innerHTML = '
\n
\n'; } else { - var xhtml = writeStrings(writeXML(atompage(doc), false)); - buffer.innerHTML = xhtml; + buffer.innerHTML = writeStrings(writeXML(atompage(doc), false)); } // Append page nodes to editor @@ -117,18 +121,27 @@ function getpage(name, edit) { edit.appendChild(e); return page.cover(e); }, nodeList(buffer.childNodes[0].childNodes)); + + savedpagexhtml = pagexhtml(); }); } /** - * Save the current edited page. + * Handle save button click event. */ $('saveButton').onclick = function(e) { + return save(); +}; + +/** + * Return the current page XHTML content. + */ +function pagexhtml() { // Copy page DOM to hidden buffer var edit = $('page'); var buffer = $('buffer'); - buffer.innerHTML = '
' + buffer.innerHTML = '
\n
\n' var div = buffer.childNodes[0]; div.innerHTML = edit.innerHTML; @@ -153,17 +166,51 @@ $('saveButton').onclick = function(e) { var lxhtml = readXHTMLElement(div); var xhtml = writeStrings(writeXML(lxhtml, false)); + return xhtml; +} + +/** + * Save the current page. + */ +function save() { + $('saveButton').value = 'Saving'; + + // Get the current page XHTML content + savedpagexhtml = pagexhtml(); + // Update the page ATOM entry var entry = '' + '' + appname + '' + appname + '' + - xhtml + ''; + savedpagexhtml + ''; - pages.put(appname, entry, function(e) {}); + pages.put(appname, entry, function(e) { + if (savedpagexhtml == pagexhtml()) + $('saveButton').value = 'Saved'; + return true; + }); + return true; }; +/** + * Handle a page change event + */ +function onpagechange() { + if (savedpagexhtml == pagexhtml()) + return false; + $('saveButton').value = 'Save now'; + + // Autosave after 3 seconds + setTimeout(function() { + if (savedpagexhtml == pagexhtml()) + return false; + return save(); + }, 3000); + return true; +} + // Initialize the page editor var edit = $('page'); -page.edit(edit, $('widgetName'), $('widgetText')); +page.edit(edit, $('widgetName'), $('widgetText'), onpagechange); // Get and display the current app page getpage(appname, edit); diff --git a/sca-cpp/trunk/modules/edit/htdocs/page/page.js b/sca-cpp/trunk/modules/edit/htdocs/page/page.js index c1a2311fa2..6e886fb774 100644 --- a/sca-cpp/trunk/modules/edit/htdocs/page/page.js +++ b/sca-cpp/trunk/modules/edit/htdocs/page/page.js @@ -33,12 +33,15 @@ if (ui.isIE()) { /** * Init a page editor. IE-specific implementation. */ - page.edit = function(elem, wname, wtext) { + page.edit = function(elem, wname, wtext, onchange) { // Track element dragging and selection page.dragging = null; page.selected = null; + // Trigger page change events + page.onpagechange = onchange; + /** * Handle a mouse down event. */ @@ -103,6 +106,9 @@ if (ui.isIE()) { // Forget current dragged element page.dragging = null; elem.releaseCapture(); + + // Trigger page change event + page.onpagechange(); return false; }; @@ -142,6 +148,9 @@ if (ui.isIE()) { if (page.selected == null) return false; page.selected.id = wname.value; + + // Trigger page change event + page.onpagechange(); return false; }; @@ -149,6 +158,9 @@ if (ui.isIE()) { if (page.selected == null) return false; page.settext(page.selected, wtext.value); + + // Trigger page change event + page.onpagechange(); return false; }; @@ -164,12 +176,15 @@ if (ui.isIE()) { /** * Init a page editor. Generic implementation for all other browsers. */ - page.edit = function(elem, wname, wtext) { + page.edit = function(elem, wname, wtext, onchange) { // Track element dragging and selection page.dragging = null; page.selected = null; + // Trigger page change events + page.onpagechange = onchange; + /** * Handle a mouse down event. */ @@ -239,6 +254,9 @@ if (ui.isIE()) { // Forget dragged element page.dragging = null; + + // Trigger page change event + page.onpagechange(); return false; }; @@ -289,6 +307,9 @@ if (ui.isIE()) { if (page.selected == null) return false; page.selected.id = wname.value; + + // Trigger page change event + page.onpagechange(); return false; }; @@ -296,6 +317,9 @@ if (ui.isIE()) { if (page.selected == null) return false; page.settext(page.selected, wtext.value); + + // Trigger page change event + page.onpagechange(); return false; }; diff --git a/sca-cpp/trunk/modules/edit/palettes/events/palette.composite b/sca-cpp/trunk/modules/edit/palettes/event/palette.composite similarity index 98% rename from sca-cpp/trunk/modules/edit/palettes/events/palette.composite rename to sca-cpp/trunk/modules/edit/palettes/event/palette.composite index 7629315f60..6f55d30639 100644 --- a/sca-cpp/trunk/modules/edit/palettes/events/palette.composite +++ b/sca-cpp/trunk/modules/edit/palettes/event/palette.composite @@ -19,7 +19,7 @@ --> diff --git a/sca-cpp/trunk/modules/edit/palettes/lists/palette.composite b/sca-cpp/trunk/modules/edit/palettes/list/palette.composite similarity index 70% rename from sca-cpp/trunk/modules/edit/palettes/lists/palette.composite rename to sca-cpp/trunk/modules/edit/palettes/list/palette.composite index 89b5e6234a..8e31f0e8b5 100644 --- a/sca-cpp/trunk/modules/edit/palettes/lists/palette.composite +++ b/sca-cpp/trunk/modules/edit/palettes/list/palette.composite @@ -19,7 +19,7 @@ --> @@ -28,12 +28,8 @@ - - - - @@ -73,31 +69,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - @@ -112,10 +83,4 @@ - - - - - - diff --git a/sca-cpp/trunk/modules/edit/palettes/search/palette.composite b/sca-cpp/trunk/modules/edit/palettes/search/palette.composite new file mode 100644 index 0000000000..08c41ac5ec --- /dev/null +++ b/sca-cpp/trunk/modules/edit/palettes/search/palette.composite @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sca-cpp/trunk/modules/edit/palettes/sensors/palette.composite b/sca-cpp/trunk/modules/edit/palettes/sensor/palette.composite similarity index 60% rename from sca-cpp/trunk/modules/edit/palettes/sensors/palette.composite rename to sca-cpp/trunk/modules/edit/palettes/sensor/palette.composite index b3400e2634..755d111ae8 100644 --- a/sca-cpp/trunk/modules/edit/palettes/sensors/palette.composite +++ b/sca-cpp/trunk/modules/edit/palettes/sensor/palette.composite @@ -19,23 +19,44 @@ --> + + + - + - + + + + + + + + + + + + + + + + + + + diff --git a/sca-cpp/trunk/modules/edit/palettes/social/palette.composite b/sca-cpp/trunk/modules/edit/palettes/social/palette.composite index c0d24c2550..3fc3d4f162 100644 --- a/sca-cpp/trunk/modules/edit/palettes/social/palette.composite +++ b/sca-cpp/trunk/modules/edit/palettes/social/palette.composite @@ -30,9 +30,6 @@ - - - @@ -91,26 +88,4 @@ - - - - - - - - - - - - - - - - - - - - - - diff --git a/sca-cpp/trunk/modules/edit/palettes/talk/palette.composite b/sca-cpp/trunk/modules/edit/palettes/talk/palette.composite new file mode 100644 index 0000000000..c45262a786 --- /dev/null +++ b/sca-cpp/trunk/modules/edit/palettes/talk/palette.composite @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sca-cpp/trunk/modules/edit/palettes/transform/palette.composite b/sca-cpp/trunk/modules/edit/palettes/transform/palette.composite new file mode 100644 index 0000000000..24db398347 --- /dev/null +++ b/sca-cpp/trunk/modules/edit/palettes/transform/palette.composite @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sca-cpp/trunk/modules/edit/palettes/values/palette.composite b/sca-cpp/trunk/modules/edit/palettes/value/palette.composite similarity index 98% rename from sca-cpp/trunk/modules/edit/palettes/values/palette.composite rename to sca-cpp/trunk/modules/edit/palettes/value/palette.composite index ab881b45f9..abdb47e460 100644 --- a/sca-cpp/trunk/modules/edit/palettes/values/palette.composite +++ b/sca-cpp/trunk/modules/edit/palettes/value/palette.composite @@ -19,7 +19,7 @@ -->