Skip to content
This repository has been archived by the owner on Dec 28, 2024. It is now read-only.

Commit

Permalink
updates to generalized type handling
Browse files Browse the repository at this point in the history
  • Loading branch information
delza committed Dec 31, 2011
1 parent b7e195b commit e489a94
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 6 deletions.
14 changes: 8 additions & 6 deletions scripts/blocks.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,7 @@ $.extend($.fn,{
return this.closest('.wrapper').long_name();
},
block_type: function(){
if (this.is('.trigger')) return 'trigger';
if (this.is('.value')) return this.data('type');
return 'unknown';
return this.data('type');
},
parent_block: function(){
var p = this.closest('.wrapper').parent();
Expand Down Expand Up @@ -133,9 +131,10 @@ function Block(options){
if (opts['type']){
block.addClass(opts['type']);
wrapper.addClass('value').addClass(opts['type']);
wrapper.data('type', opts['type']);
}
if(opts.containers > 0){
wrapper.addClass('containerBlock'); //This might not be necicary
wrapper.addClass('containerBlock'); //This might not be necessary
}
if(opts.containers > 1){
wrapper.data('subContainerLabels', opts['subContainerLabels']);
Expand All @@ -154,10 +153,12 @@ function Block(options){
}
if (opts.trigger){
wrapper.addClass('trigger');
wrapper.data('type', 'trigger');
block.append('<b class="trigger"></b>');
}else if(opts.flap){
block.append('<b class="flap"></b>');
wrapper.addClass('step');
wrapper.data('type', 'step');
}

wrapper.data('containers', opts.containers);
Expand Down Expand Up @@ -250,8 +251,9 @@ function Label(value){
value = value.replace(/\[boolean\]/g, '<span class="value boolean socket" data-type="boolean"><select><option>true</option><option>false</option></select></span>');
value = value.replace(/(?:\[choice\:)(\w+)(?:\:)(\w+)(?:\])/g, choice_func);
value = value.replace(/(?:\[choice\:)(\w+)(?:\])/g, choice_func);
value = value.replace(/\[(\w+):(-?\d*\.?.+)\]/g, '<span class="value $1 socket" data-type="$1"><input type="$1" value="$2"></span>');
value = value.replace(/\[(\w+)\]/g, '<span class="value $1 socket" data-type="$1"><input type="$1"></span>');
// match selector [^\[\]:] should match any character except '[', ']', and ':'
value = value.replace(/\[([^\[\]\:]+):([^\[\]:]+)\]/g, '<span class="value $1 socket" data-type="$1"><input type="$1" value="$2"></span>');
value = value.replace(/\[([^\[\]:]+)\]/g, '<span class="value $1 socket" data-type="$1"><input type="$1"></span>');
return value;
}

2 changes: 2 additions & 0 deletions scripts/drag.js
Original file line number Diff line number Diff line change
Expand Up @@ -78,8 +78,10 @@
}

function get_potential_drop_targets(){
console.log('drag target: %s', drag_target.block_type());
switch(drag_target.block_type()){
case 'step': return step_targets();
case 'container': return step_targets();
case 'number': return socket_targets2('any,number');
case 'array': return socket_targets2('any,array');
case 'object': return socket_targets2('any,object');
Expand Down

0 comments on commit e489a94

Please sign in to comment.