overlay_me 0.12.1 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG.md +4 -0
- data/Gemfile.lock +1 -1
- data/README.md +6 -4
- data/javascripts/basics.js.coffee +6 -2
- data/javascripts/lib/underscore.js +409 -157
- data/javascripts/menu.js.coffee +2 -1
- data/javascripts/mixins/hideable.js.coffee +17 -4
- data/javascripts/mixins/storable.js.coffee +4 -0
- data/javascripts/overlays/image.js.coffee +7 -5
- data/javascripts/overlays/images_container.js.coffee +52 -13
- data/javascripts/overlays/images_directory.js.coffee +46 -0
- data/javascripts/overlays/images_mngt_div.js.coffee +0 -27
- data/javascripts/overlays.js.coffee +40 -2
- data/lib/overlay_me/version.rb +2 -2
- data/lib/overlay_me.rb +1 -1
- data/overlay_me.css +85 -40
- data/overlay_me.js +699 -246
- data/stylesheets/overlay_me.css.scss +47 -7
- data/vendor/assets/javascripts/overlay_me/overlay_me.min.js +54 -28
- metadata +7 -9
- data/demo_page.html +0 -33
data/javascripts/menu.js.coffee
CHANGED
@@ -35,4 +35,5 @@ class OverlayMe.MenuClass extends OverlayMe.Draggable
|
|
35
35
|
|
36
36
|
|
37
37
|
# create only 1 menu
|
38
|
-
|
38
|
+
if OverlayMe.mustLoad() # dont do it anytime
|
39
|
+
OverlayMe.menu = new OverlayMe.MenuClass() unless OverlayMe.menu_box
|
@@ -1,13 +1,26 @@
|
|
1
1
|
OverlayMe.Mixin.Hideable = {
|
2
2
|
|
3
3
|
isDisplayed: ->
|
4
|
-
|
4
|
+
element = @el || this
|
5
|
+
return $o(element).css('display') != 'none'
|
5
6
|
|
6
7
|
toggleDisplay: (default_display_type='block') ->
|
7
8
|
if @isDisplayed()
|
8
|
-
|
9
|
+
@hide()
|
9
10
|
else
|
10
|
-
|
11
|
-
@saveCss()
|
11
|
+
@show(default_display_type)
|
12
12
|
|
13
|
+
show: (default_display_type='block') ->
|
14
|
+
element = @el || this
|
15
|
+
$o(element).css { display: default_display_type }
|
16
|
+
@saveState()
|
17
|
+
|
18
|
+
hide: ->
|
19
|
+
element = @el || this
|
20
|
+
$o(element).css { display: 'none' }
|
21
|
+
@saveState()
|
22
|
+
|
23
|
+
saveState: ->
|
24
|
+
element = @el || this
|
25
|
+
@saveCss(element) if @saveCss
|
13
26
|
}
|
@@ -1,16 +1,20 @@
|
|
1
1
|
OverlayMe.Mixin.Storable = {
|
2
2
|
|
3
3
|
loadCss: (element=@el, default_css) ->
|
4
|
+
return unless @id
|
4
5
|
if ( cssData = localStorage.getItem(@id) )
|
5
6
|
$o(element).css(JSON.parse(cssData))
|
7
|
+
# console.log 'load: ', @id, cssData
|
6
8
|
else
|
7
9
|
$o(element).css(default_css) unless default_css == undefined
|
8
10
|
|
9
11
|
saveCss: (element=@el) ->
|
12
|
+
return unless @id
|
10
13
|
@css_attributes_to_save = ['top', 'left', 'display', 'opacity'] unless @css_attributes_to_save
|
11
14
|
cssData = {}
|
12
15
|
for css_attribute in @css_attributes_to_save
|
13
16
|
cssData[css_attribute] = $o(element).css(css_attribute)
|
17
|
+
# console.log 'save: ', @id, JSON.stringify(cssData)
|
14
18
|
localStorage.setItem(@id, JSON.stringify(cssData))
|
15
19
|
|
16
20
|
}
|
@@ -6,17 +6,18 @@ class OverlayMe.Overlays.Image extends Backbone.View
|
|
6
6
|
tagName: 'div'
|
7
7
|
className: 'overlay-image-block'
|
8
8
|
|
9
|
-
initialize: (image_src, options
|
9
|
+
initialize: (image_src, options) ->
|
10
|
+
$o.extend { destroyable: false }, options
|
10
11
|
@image_src = image_src
|
11
12
|
@image_id = OverlayMe.Overlays.urlToId(image_src)
|
12
13
|
$o(@el).attr 'data-img-id', @image_id
|
13
14
|
|
14
|
-
|
15
|
+
images_container = new OverlayMe.Overlays.ImagesContainer({ parent_path: options.parent_path })
|
15
16
|
|
16
17
|
@default_css = $o.extend {display: 'none', opacity: 0.5}, options.default_css
|
17
18
|
|
18
|
-
unless $o("##{@image_id}",
|
19
|
-
$o(
|
19
|
+
unless $o("##{@image_id}", images_container.el).length > 0
|
20
|
+
$o(images_container.el).append @image()
|
20
21
|
|
21
22
|
$o(@el).append @checkbox()
|
22
23
|
$o(@el).append @label()
|
@@ -25,7 +26,8 @@ class OverlayMe.Overlays.Image extends Backbone.View
|
|
25
26
|
slider_block.appendChild @make 'label', {}, 'Opacity'
|
26
27
|
slider_block.appendChild @slider()
|
27
28
|
$o(@el).append @delButton() if options.destroyable
|
28
|
-
$o(@el).bind 'click', (
|
29
|
+
$o(@el).bind 'click', (e) =>
|
30
|
+
e.stopPropagation()
|
29
31
|
@flickCheckbox()
|
30
32
|
$o(@el).bind 'mouseover', (event) =>
|
31
33
|
$o(@image.el).addClass 'highlight'
|
@@ -1,22 +1,61 @@
|
|
1
1
|
#= require 'mixins/storable'
|
2
2
|
#= require 'mixins/hideable'
|
3
3
|
|
4
|
-
class OverlayMe.Overlays.
|
4
|
+
class OverlayMe.Overlays.ContainerItself extends Backbone.View
|
5
5
|
|
6
|
-
|
6
|
+
tagName: 'div'
|
7
7
|
css_attributes_to_save: ['display']
|
8
8
|
|
9
|
-
initialize: ->
|
10
|
-
|
11
|
-
if container.length < 1 # happen only if the container div doesn't already exist
|
12
|
-
container = @make 'div', { id: 'overlay_me_images_container' }
|
13
|
-
$o('body').append container
|
14
|
-
@el = container
|
9
|
+
initialize: (attributes, options) ->
|
10
|
+
super(attributes, options)
|
15
11
|
@loadCss()
|
16
|
-
$o(window).bind
|
17
|
-
|
12
|
+
$o(window).bind "overlay_me:toggle_#{@id}_display", (event, options) =>
|
13
|
+
if options
|
14
|
+
if options.show then @show() else @hide()
|
15
|
+
else
|
16
|
+
@toggleDisplay()
|
17
|
+
|
18
|
+
_.extend OverlayMe.Overlays.ContainerItself.prototype, OverlayMe.Mixin.Storable
|
19
|
+
_.extend OverlayMe.Overlays.ContainerItself.prototype, OverlayMe.Mixin.Hideable
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
class OverlayMe.Overlays.ImagesContainer extends Backbone.View
|
25
|
+
|
26
|
+
initialize: (options) ->
|
27
|
+
# the master image_container will be referenced publicly
|
28
|
+
unless OverlayMe.images_container
|
29
|
+
OverlayMe.images_container = new OverlayMe.Overlays.ContainerItself id:'overlay_me_images_container'
|
30
|
+
$o('body').append OverlayMe.images_container.el
|
31
|
+
|
32
|
+
# if it's a local file, we build its eventual multi-directories structure
|
33
|
+
if options.parent_path
|
34
|
+
container = @subDirContainer(options.parent_path)
|
35
|
+
# either, the default main container is the one returned
|
36
|
+
else
|
37
|
+
container = OverlayMe.images_container
|
38
|
+
|
39
|
+
# I know, it's ugly but I just want the proper DOM element, Backbone Object or not
|
40
|
+
@el = container.el || container
|
41
|
+
|
42
|
+
|
43
|
+
subDirContainer: (path, done_bits=[]) ->
|
44
|
+
path_bits = _.difference(path.split('/'), _.union(done_bits, ''))
|
45
|
+
the_dir = path_bits.slice(0, 1).toString()
|
46
|
+
if done_bits.length > 0
|
47
|
+
sub_container_parent_post_string = done_bits.join(' ').replace(/\ ?(\w+)/g, ' #$1_container')
|
48
|
+
else
|
49
|
+
sub_container_parent_post_string = ''
|
18
50
|
|
19
|
-
|
20
|
-
|
21
|
-
|
51
|
+
sub_container = $o("#overlay_me_images_container #{sub_container_parent_post_string} ##{the_dir+'_container'}")
|
52
|
+
if sub_container.length < 1 # if the sub_container div doesn't already exist
|
53
|
+
sub_container = new OverlayMe.Overlays.ContainerItself id: the_dir+'_container'
|
54
|
+
$o("#overlay_me_images_container #{sub_container_parent_post_string}").append sub_container.el
|
22
55
|
|
56
|
+
if path_bits.length > 1
|
57
|
+
done_bits.push the_dir
|
58
|
+
return @subDirContainer path, done_bits
|
59
|
+
else
|
60
|
+
return sub_container
|
61
|
+
|
@@ -0,0 +1,46 @@
|
|
1
|
+
#= require 'mixins/hideable'
|
2
|
+
|
3
|
+
class OverlayMe.Overlays.ImagesDirectory extends Backbone.View
|
4
|
+
|
5
|
+
tagName: 'div'
|
6
|
+
className: 'images_dir'
|
7
|
+
|
8
|
+
initialize: (dirname) ->
|
9
|
+
@dirname = dirname
|
10
|
+
@contentBlock = @make 'div', { id: @dirname, class: 'sub-block' }
|
11
|
+
_.extend @contentBlock, OverlayMe.Mixin.Hideable
|
12
|
+
_.extend @contentBlock, OverlayMe.Mixin.Storable
|
13
|
+
@contentBlock.css_attributes_to_save = ['display']
|
14
|
+
@contentBlock.loadCss(@contentBlock)
|
15
|
+
$o(@el).append @checkbox()
|
16
|
+
$o(@el).append @label()
|
17
|
+
$o(@el).append @contentBlock
|
18
|
+
$o(@el).bind 'click', (e) =>
|
19
|
+
e.stopPropagation()
|
20
|
+
@checkbox.click()
|
21
|
+
|
22
|
+
checkbox: ->
|
23
|
+
@checkbox = @make 'input', { type: "checkbox" }
|
24
|
+
if @contentBlock.isDisplayed()
|
25
|
+
@checkbox.checked = true
|
26
|
+
$o(@checkbox).bind 'click', (e) =>
|
27
|
+
e.stopPropagation()
|
28
|
+
@flickVisibility()
|
29
|
+
@checkbox
|
30
|
+
|
31
|
+
flickVisibility: ->
|
32
|
+
if @checkbox.checked
|
33
|
+
@contentBlock.show()
|
34
|
+
else
|
35
|
+
@contentBlock.hide()
|
36
|
+
$o(window).trigger "overlay_me:toggle_#{@dirname}_container_display", { show: @checkbox.checked }
|
37
|
+
|
38
|
+
label: ->
|
39
|
+
@label = @make 'label', {}, '/'+@dirname+'/'
|
40
|
+
|
41
|
+
append: (block) ->
|
42
|
+
@contentBlock.appendChild block
|
43
|
+
|
44
|
+
render: ->
|
45
|
+
this.el
|
46
|
+
|
@@ -5,15 +5,6 @@ class OverlayMe.Overlays.ImagesManagementDiv extends Backbone.View
|
|
5
5
|
|
6
6
|
initialize: ->
|
7
7
|
$o(@el).append @make 'legend', {}, 'Overlaying images'
|
8
|
-
@controlBlock = @make 'div', { class: 'controls' }
|
9
|
-
$o(@el).append @controlBlock
|
10
|
-
|
11
|
-
@controlBlock.appendChild @checkAllbox()
|
12
|
-
check_all_label = @make 'label', {}, 'All/None'
|
13
|
-
$o(check_all_label).bind 'click', =>
|
14
|
-
$o(@checkAllBox).trigger 'click'
|
15
|
-
@controlBlock.appendChild check_all_label
|
16
|
-
|
17
8
|
@overlaysListBlock = @make 'div', { class: 'overlays-list' }
|
18
9
|
$o(@el).append @overlaysListBlock
|
19
10
|
|
@@ -43,24 +34,6 @@ class OverlayMe.Overlays.ImagesManagementDiv extends Backbone.View
|
|
43
34
|
OverlayMe.dyn_manager.addImage @image_url_input.value
|
44
35
|
@image_url_input.value = ''
|
45
36
|
|
46
|
-
checkAllbox: ->
|
47
|
-
@checkAllBox = @make 'input', { type: "checkbox", class: 'check-all' }
|
48
|
-
$o(@checkAllBox).bind 'change', (event) =>
|
49
|
-
@checkAll()
|
50
|
-
@checkAllBox
|
51
|
-
|
52
|
-
checkAll: ->
|
53
|
-
checkbox_state = @checkAllBox.checked
|
54
|
-
for checkbox in $o('.overlay-image-block input[type=checkbox]')
|
55
|
-
if checkbox.checked != checkbox_state
|
56
|
-
$o(checkbox).trigger 'click'
|
57
|
-
@saveState()
|
58
|
-
|
59
|
-
# adding some retention (or not)
|
60
|
-
saveState: ->
|
61
|
-
# localStorage.setItem(@id, JSON.stringify({
|
62
|
-
# }))
|
63
|
-
|
64
37
|
render: ->
|
65
38
|
this.el
|
66
39
|
|
@@ -2,6 +2,7 @@
|
|
2
2
|
#= require 'menu_item'
|
3
3
|
#= require 'overlays/init'
|
4
4
|
#= require 'overlays/image'
|
5
|
+
#= require 'overlays/images_directory'
|
5
6
|
#= require 'overlays/dynamic_images_mngmt'
|
6
7
|
#= require 'overlays/content_div_mngmt'
|
7
8
|
#= require 'overlays/images_mngt_div'
|
@@ -42,8 +43,45 @@ if OverlayMe.mustLoad()
|
|
42
43
|
if data.length == 0 # in case all is empty (default for newcomers)
|
43
44
|
OverlayMe.loadDefaultImage()
|
44
45
|
else
|
45
|
-
|
46
|
-
OverlayMe.images_management_div.append new OverlayMe.Overlays.Image(img_path).render()
|
46
|
+
buildTree data
|
47
47
|
error: ->
|
48
48
|
OverlayMe.loadDefaultImage()
|
49
49
|
|
50
|
+
files_tree = {}
|
51
|
+
buildTree = (data) ->
|
52
|
+
$o.each data, (index, img_path) ->
|
53
|
+
bits = img_path.split('/')
|
54
|
+
position = files_tree
|
55
|
+
parent_path = '/'
|
56
|
+
while bits.length > 0
|
57
|
+
bit = bits[0]
|
58
|
+
bits = bits.slice(1)
|
59
|
+
continue if bit == ""
|
60
|
+
parent_path += bit + '/'
|
61
|
+
if position[bit] == undefined
|
62
|
+
if bits.length > 0
|
63
|
+
position[bit] = { parent_path: parent_path }
|
64
|
+
else
|
65
|
+
position['files'] = [] if position['files'] == undefined
|
66
|
+
position['files'].push bit
|
67
|
+
position = position[bit]
|
68
|
+
files_tree = shiftTofiles(files_tree)
|
69
|
+
displayTree(OverlayMe.images_management_div, files_tree)
|
70
|
+
|
71
|
+
shiftTofiles = (tree) ->
|
72
|
+
return tree if tree.files
|
73
|
+
keys = Object.keys(tree)
|
74
|
+
return tree if keys.length > 2 # parent_path + sub_dir
|
75
|
+
keys = _.without(keys, 'parent_path')
|
76
|
+
shiftTofiles(tree[keys[0]])
|
77
|
+
|
78
|
+
displayTree = (parent, tree) ->
|
79
|
+
for dir in Object.keys(tree)
|
80
|
+
continue if dir == 'files' || dir == 'parent_path'
|
81
|
+
sub_dir = new OverlayMe.Overlays.ImagesDirectory(dir)
|
82
|
+
parent.append sub_dir.render()
|
83
|
+
displayTree(sub_dir, tree[dir])
|
84
|
+
if tree.files
|
85
|
+
for img in tree.files
|
86
|
+
parent.append new OverlayMe.Overlays.Image(tree.parent_path+img, { parent_path: tree.parent_path }).render()
|
87
|
+
|
data/lib/overlay_me/version.rb
CHANGED
data/lib/overlay_me.rb
CHANGED
@@ -7,7 +7,7 @@ module OverlayMe
|
|
7
7
|
class App
|
8
8
|
def self.call(env)
|
9
9
|
Dir.chdir OverlayMe.root_dir if Dir[OverlayMe.root_dir]
|
10
|
-
images_urls = Dir[ OverlayMe.overlays_directory + '
|
10
|
+
images_urls = Dir[ OverlayMe.overlays_directory + '/**/*.*' ].map{|path| '/'+path}
|
11
11
|
[200, {"Content-Type" => "text/html"}, images_urls.to_json]
|
12
12
|
end
|
13
13
|
end
|
data/overlay_me.css
CHANGED
@@ -50,14 +50,14 @@ button {
|
|
50
50
|
vertical-align: baseline;
|
51
51
|
}
|
52
52
|
|
53
|
-
/* line
|
53
|
+
/* line 52, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
54
54
|
.menu-item {
|
55
55
|
text-align: left;
|
56
56
|
background-color: #CCC;
|
57
57
|
border: 1px solid rgba(255, 255, 255, 0.2);
|
58
58
|
width: 200px;
|
59
59
|
}
|
60
|
-
/* line
|
60
|
+
/* line 57, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
61
61
|
.menu-item a.collaps-button {
|
62
62
|
cursor: pointer;
|
63
63
|
position: absolute;
|
@@ -68,16 +68,16 @@ button {
|
|
68
68
|
border: none;
|
69
69
|
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAAJCAYAAADpeqZqAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIlJREFUeNpivHDhQujz589TmZiYvjMQAP/+/eOQkZGZyfD//38ZIL77nzhwG4ilQJpA2BiIPxHQ8BGIDUHqYZpAOIWApiSYWmRNIDfPxaYaKD4bWR2KJiDmA+KzaHrOQMVxagJhfSD+ALXhA5TPQEgTCCcD8V+gpmRs8rg0MQI1eANpJmzyAAEGAKD/bax/HrzbAAAAAElFTkSuQmCC) no-repeat center 3px;
|
70
70
|
}
|
71
|
-
/* line
|
71
|
+
/* line 66, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
72
72
|
.menu-item a.collaps-button span {
|
73
73
|
display: none;
|
74
74
|
color: yellow;
|
75
75
|
}
|
76
|
-
/* line
|
76
|
+
/* line 69, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
77
77
|
.menu-item a.collaps-button span:hover {
|
78
78
|
color: yellow;
|
79
79
|
}
|
80
|
-
/* line
|
80
|
+
/* line 74, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
81
81
|
.menu-item label.title {
|
82
82
|
padding-left: 20px;
|
83
83
|
color: white;
|
@@ -87,21 +87,21 @@ button {
|
|
87
87
|
font-size: 14px;
|
88
88
|
background: none;
|
89
89
|
}
|
90
|
-
/* line
|
90
|
+
/* line 84, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
91
91
|
.menu-item.collapsed .item-content {
|
92
92
|
display: none;
|
93
93
|
}
|
94
|
-
/* line
|
94
|
+
/* line 85, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
95
95
|
.menu-item.collapsed a.collaps-button {
|
96
96
|
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAANCAYAAAB7AEQGAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAKtJREFUeNpiuHz5ctD///+lgJgBF2Z68uRJOgMDw0EgNmTAAZiA4AeQVgHiA0CchFUREpsPiOcCjZ8NZWNVBAaMjIwpQGofEOvjVAQFxkATDwJxMkgNCy7HAk3kB1KzgApf4DIJBD4CcRpQ8TZcJp2D+vQiVjcBjZ8HpBxhCtAVfQbiVKDxIMd+QtbI8u/fP04gfQ+Iw4D4LDa7WSQlJUGBdxyIn+DyAUCAAQDxsEXD9kreLQAAAABJRU5ErkJggg==) no-repeat center top;
|
97
97
|
}
|
98
98
|
|
99
|
-
/* line
|
99
|
+
/* line 93, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
100
100
|
#overlay_panel .content-mgnt-block {
|
101
101
|
position: relative;
|
102
102
|
line-height: 10px;
|
103
103
|
}
|
104
|
-
/* line
|
104
|
+
/* line 96, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
105
105
|
#overlay_panel .content-mgnt-block .unicorns {
|
106
106
|
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAklJREFUeNqEks1u00AQx3d27V3HdezY+SBpkKBFoBZxQEKIOwfegBs3rtwoPABvw3sgceKAuFWtUBBSaT6ctvHXer2zOElTVaoKI/2lWWl/O//ZGZi8jgSPxFv3JX93+CJvfJ4/09++vzH6S/SVH59+IohH5JagxBilC4zNHHigSLvtTCPRnLYxtB4b29ojGglBc1PG1PAyLfUxzszIX7B86MwLP/iVkS566DWeEgo+gfrWdV1VJoZgpUdqon84p1a+wxI1CA+l3Z+yqu89N5a9v65EVgK8TOpgH/edZS6JAZ97/AkfKjF3pTpRkUrlfQFnoGlaHNc2F0sAzPIFWIl9WMEGTYUZJfyB12ED2l9UE6bkDAcoy+0QznXJ8nIEBosNuIb3xLoBNIlRhNlc7Ho9dDA6l1OC8gKGUGEnhAyBFmpSu8zqf9jAzqZ/RIUxFDR0G2LQ6ueIwUzGFIuE95livS4p2RaUVQYas/p+xQ4eiavPqO2nKPUcCrvlCR50uqlirXGeiUWeua4uva6vebNDwHIJErq2fW0Mdfcxpjqmqe37Nnd73US64Ummt8a5bCpZhh5UrZanfS9gBw/5tcorGSz1TJ/rCTljoomOGDTLsh+NUz8Ypdz/ndBwlpFeIdn7Hevm9miD9QNxdVGNSQzGSR3ao6Duekm23fqT3Al/Ju3waAEnr1xyayxnymhgNcU9Z7sx5LtWA+6bquxXaeLr5J+wMZebRQwDiwW2x0O7I1y7ZxOrS+X/4Y0DXJ0pANhgM4sKRv4KMACD6UDbVgTzkgAAAABJRU5ErkJggg==) no-repeat center center;
|
107
107
|
width: 15px;
|
@@ -110,12 +110,12 @@ button {
|
|
110
110
|
right: 0;
|
111
111
|
top: 6px;
|
112
112
|
}
|
113
|
-
/* line
|
113
|
+
/* line 107, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
114
114
|
#overlay_panel label {
|
115
115
|
margin: 0;
|
116
116
|
font-size: 14px;
|
117
117
|
}
|
118
|
-
/* line
|
118
|
+
/* line 112, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
119
119
|
#overlay_panel .content-mgnt-block, #overlay_panel #images_mgnt {
|
120
120
|
text-align: left;
|
121
121
|
padding: 3px 4px;
|
@@ -127,52 +127,63 @@ button {
|
|
127
127
|
-o-border-radius: 5px;
|
128
128
|
border-radius: 5px;
|
129
129
|
}
|
130
|
-
/* line
|
130
|
+
/* line 119, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
131
131
|
#overlay_panel .content-mgnt-block legend, #overlay_panel #images_mgnt legend {
|
132
132
|
font-size: 10px;
|
133
133
|
padding: 0 3px;
|
134
134
|
margin-left: 10px;
|
135
135
|
}
|
136
|
-
/* line
|
136
|
+
/* line 126, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
137
137
|
#overlay_panel .slider-block {
|
138
138
|
display: block;
|
139
139
|
}
|
140
|
-
/* line
|
140
|
+
/* line 128, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
141
141
|
#overlay_panel .slider-block label {
|
142
|
-
font-size:
|
142
|
+
font-size: 60%;
|
143
143
|
margin: 0 5px 0 0;
|
144
144
|
vertical-align: top;
|
145
145
|
}
|
146
|
-
/* line
|
146
|
+
/* line 133, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
147
147
|
#overlay_panel .slider-block input[type=range] {
|
148
148
|
margin: 0;
|
149
|
+
height: 14px;
|
150
|
+
width: 120px;
|
149
151
|
}
|
150
|
-
/* line
|
152
|
+
/* line 140, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
151
153
|
#overlay_panel #images_mgnt {
|
152
154
|
width: 186px;
|
153
155
|
}
|
154
|
-
/* line
|
156
|
+
/* line 144, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
155
157
|
#overlay_panel #images_mgnt .controls {
|
156
|
-
padding-bottom:
|
158
|
+
padding-bottom: 2px;
|
157
159
|
}
|
158
|
-
/* line
|
160
|
+
/* line 146, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
159
161
|
#overlay_panel #images_mgnt .controls label {
|
160
162
|
margin-right: 5px;
|
161
163
|
}
|
162
|
-
/* line
|
164
|
+
/* line 151, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
165
|
+
#overlay_panel #images_mgnt .overlay-image-block, #overlay_panel #images_mgnt .images_dir {
|
166
|
+
border: 1px solid rgba(255, 255, 255, 0.2);
|
167
|
+
border-right: none;
|
168
|
+
border-left: none;
|
169
|
+
padding-top: 2px;
|
170
|
+
}
|
171
|
+
/* line 156, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
172
|
+
#overlay_panel #images_mgnt .overlay-image-block:first-child, #overlay_panel #images_mgnt .images_dir:first-child {
|
173
|
+
border-top: none;
|
174
|
+
padding-top: 0;
|
175
|
+
}
|
176
|
+
/* line 162, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
163
177
|
#overlay_panel #images_mgnt .overlay-image-block {
|
164
178
|
text-align: left;
|
165
179
|
position: relative;
|
166
180
|
width: 186px;
|
167
|
-
border: 1px solid rgba(255, 255, 255, 0.2);
|
168
|
-
border-right: none;
|
169
|
-
border-left: none;
|
170
181
|
}
|
171
|
-
/* line
|
182
|
+
/* line 166, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
172
183
|
#overlay_panel #images_mgnt .overlay-image-block.hovered {
|
173
184
|
background-color: rgba(255, 255, 0, 0.5);
|
174
185
|
}
|
175
|
-
/* line
|
186
|
+
/* line 169, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
176
187
|
#overlay_panel #images_mgnt .overlay-image-block .del-button {
|
177
188
|
position: absolute;
|
178
189
|
right: 0;
|
@@ -187,73 +198,107 @@ button {
|
|
187
198
|
font-weight: bold;
|
188
199
|
padding: 0 3px;
|
189
200
|
}
|
190
|
-
/* line
|
201
|
+
/* line 185, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
202
|
+
#overlay_panel #images_mgnt .images_dir {
|
203
|
+
line-height: 18px;
|
204
|
+
}
|
205
|
+
/* line 187, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
206
|
+
#overlay_panel #images_mgnt .images_dir .sub-block {
|
207
|
+
border-left: 2px white solid;
|
208
|
+
padding-left: 2px;
|
209
|
+
margin-left: 5px;
|
210
|
+
}
|
211
|
+
/* line 192, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
212
|
+
#overlay_panel #images_mgnt .images_dir > input[type=checkbox] {
|
213
|
+
-webkit-appearance: none;
|
214
|
+
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAANCAYAAAB7AEQGAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAKtJREFUeNpiuHz5ctD///+lgJgBF2Z68uRJOgMDw0EgNmTAAZiA4AeQVgHiA0CchFUREpsPiOcCjZ8NZWNVBAaMjIwpQGofEOvjVAQFxkATDwJxMkgNCy7HAk3kB1KzgApf4DIJBD4CcRpQ8TZcJp2D+vQiVjcBjZ8HpBxhCtAVfQbiVKDxIMd+QtbI8u/fP04gfQ+Iw4D4LDa7WSQlJUGBdxyIn+DyAUCAAQDxsEXD9kreLQAAAABJRU5ErkJggg==) no-repeat center center;
|
215
|
+
display: inline-block;
|
216
|
+
width: 13px;
|
217
|
+
height: 13px;
|
218
|
+
}
|
219
|
+
/* line 198, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
220
|
+
#overlay_panel #images_mgnt .images_dir > input[type=checkbox]:checked {
|
221
|
+
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAAJCAYAAADpeqZqAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIlJREFUeNpivHDhQujz589TmZiYvjMQAP/+/eOQkZGZyfD//38ZIL77nzhwG4ilQJpA2BiIPxHQ8BGIDUHqYZpAOIWApiSYWmRNIDfPxaYaKD4bWR2KJiDmA+KzaHrOQMVxagJhfSD+ALXhA5TPQEgTCCcD8V+gpmRs8rg0MQI1eANpJmzyAAEGAKD/bax/HrzbAAAAAElFTkSuQmCC) no-repeat center center;
|
222
|
+
width: 13px;
|
223
|
+
height: 13px;
|
224
|
+
margin: -2px 5px 0 0;
|
225
|
+
}
|
226
|
+
/* line 207, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
227
|
+
#overlay_panel #images_mgnt .dynamic-adds {
|
228
|
+
padding-top: 4px;
|
229
|
+
}
|
230
|
+
/* line 209, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
191
231
|
#overlay_panel #images_mgnt .dynamic-adds label {
|
192
232
|
font-size: 75%;
|
193
233
|
}
|
194
|
-
/* line
|
234
|
+
/* line 212, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
195
235
|
#overlay_panel #images_mgnt .dynamic-adds input {
|
196
236
|
width: 95px;
|
197
237
|
font-size: 10px;
|
238
|
+
margin-left: 2px;
|
198
239
|
}
|
199
|
-
/* line
|
240
|
+
/* line 217, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
241
|
+
#overlay_panel #images_mgnt .dynamic-adds button {
|
242
|
+
font-size: 10px;
|
243
|
+
}
|
244
|
+
/* line 223, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
200
245
|
#overlay_panel input[type=checkbox], #overlay_panel label, #overlay_panel #contentSlider, #overlay_panel .zindex-switch {
|
201
246
|
display: inline;
|
202
247
|
}
|
203
|
-
/* line
|
248
|
+
/* line 227, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
204
249
|
#overlay_panel input[type=checkbox] {
|
205
250
|
vertical-align: middle;
|
206
251
|
margin: -3px 5px 0 0;
|
207
252
|
}
|
208
253
|
|
209
|
-
/* line
|
254
|
+
/* line 234, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
210
255
|
#overlay_me_images_container {
|
211
256
|
position: absolute;
|
212
257
|
z-index: 4;
|
213
258
|
top: 0;
|
214
259
|
left: 0;
|
215
260
|
}
|
216
|
-
/* line
|
261
|
+
/* line 239, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
217
262
|
#overlay_me_images_container div {
|
218
263
|
position: absolute;
|
219
264
|
}
|
220
|
-
/* line
|
265
|
+
/* line 241, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
221
266
|
#overlay_me_images_container div.highlight {
|
222
267
|
border: 2px solid red;
|
223
268
|
margin-top: -2px;
|
224
269
|
margin-left: -2px;
|
225
270
|
}
|
226
|
-
/* line
|
271
|
+
/* line 246, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
227
272
|
#overlay_me_images_container div:hover {
|
228
273
|
cursor: move;
|
229
274
|
}
|
230
|
-
/* line
|
275
|
+
/* line 250, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
231
276
|
#overlay_me_images_container img {
|
232
277
|
position: absolute;
|
233
278
|
top: 0;
|
234
279
|
left: 0;
|
235
280
|
}
|
236
281
|
|
237
|
-
/* line
|
282
|
+
/* line 258, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
238
283
|
#overlay_me_menu.collapsed .drag-me, #overlay_me_menu.collapsed .menu-item {
|
239
284
|
width: 25px;
|
240
285
|
}
|
241
|
-
/* line
|
286
|
+
/* line 261, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
242
287
|
#overlay_me_menu.collapsed .drag-me {
|
243
288
|
height: 10px;
|
244
289
|
overflow: hidden;
|
245
290
|
}
|
246
|
-
/* line
|
291
|
+
/* line 265, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
247
292
|
#overlay_me_menu.collapsed button {
|
248
293
|
height: 10px;
|
249
294
|
overflow: hidden;
|
250
295
|
}
|
251
|
-
/* line
|
296
|
+
/* line 269, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
252
297
|
#overlay_me_menu.collapsed .overlay-image-block {
|
253
298
|
height: 14px;
|
254
299
|
margin-top: 3px;
|
255
300
|
}
|
256
|
-
/* line
|
301
|
+
/* line 273, /Users/ffmini/Programming/overlay_me/stylesheets/overlay_me.css.scss */
|
257
302
|
#overlay_me_menu.collapsed .overlay-image-block label, #overlay_me_menu.collapsed #content_div_management_block, #overlay_me_menu.collapsed .controls, #overlay_me_menu.collapsed input[type=range], #overlay_me_menu.collapsed #overlay_panel #contentSlider, #overlay_me_menu.collapsed legend, #overlay_me_menu.collapsed .dynamic-adds, #overlay_me_menu.collapsed .unicorns, #overlay_me_menu.collapsed button.reset, #overlay_me_menu.collapsed button.hide, #overlay_me_menu.collapsed button.del-button {
|
258
303
|
display: none;
|
259
304
|
}
|