aboutsummaryrefslogtreecommitdiff
path: root/js/document/models/html.js
blob: 0f88229d2a20dd05ee89af4c3295957127c361da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
/* <copyright>
This file contains proprietary software owned by Motorola Mobility, Inc.<br/>
No rights, expressed or implied, whatsoever to this software are provided by Motorola Mobility, Inc. hereunder.<br/>
(c) Copyright 2011 Motorola Mobility, Inc.  All Rights Reserved.
</copyright> */

////////////////////////////////////////////////////////////////////////
//
var Montage = 				require("montage/core/core").Montage,
    BaseDocumentModel = 	require("js/document/models/base").BaseDocumentModel,
    webGlDocumentHelper = 	require("js/document/helpers/webgl-helper").webGlDocumentHelper;
////////////////////////////////////////////////////////////////////////
//	
exports.HtmlDocumentModel = Montage.create(BaseDocumentModel, {
	////////////////////////////////////////////////////////////////////
	//
	hasTemplate: {
        value: false
    },
    ////////////////////////////////////////////////////////////////////
	//Called by the document immidiately after the model is created
    init: {
        value:function() {
        	//Creating instance of the webGL helper for this model
        	this.webGlHelper = webGlDocumentHelper.create();
		}           
    },
    ////////////////////////////////////////////////////////////////////
    //
    selectionContainer: {
        value: []
    },
	////////////////////////////////////////////////////////////////////
	//
    draw3DGrid: {
        value: false
    },
    ////////////////////////////////////////////////////////////////////
    //
    scrollLeft: {
        value: null
    },
    ////////////////////////////////////////////////////////////////////
    //
    scrollTop: {
        value: null
    },
    ////////////////////////////////////////////////////////////////////
    //
    userContentLeft: {
        value: null
    },
    ////////////////////////////////////////////////////////////////////
    //
    userContentTop: {
        value: null
    },
    ////////////////////////////////////////////////////////////////////
	//TODO: Convert to bindings
    documentRoot: {
        get: function() {return this.views.design._documentRoot;},
        set: function(value) {this.views.design._documentRoot = value;}
    },
    ////////////////////////////////////////////////////////////////////
	//TODO: Convert to bindings
	baseHref: {
		get: function() {return this.views.design._baseHref;},
        set: function(value) {this.views.design._baseHref = value;}
	},
    ////////////////////////////////////////////////////////////////////
	//
	webGlHelper: {
        value: null
    },
    ////////////////////////////////////////////////////////////////////
	//
    userComponents: {
        value: {}
    },
	////////////////////////////////////////////////////////////////////
	//Add a reference to a component instance to the userComponents hash using the element UUID
    setComponentInstance: {
        value: function(instance, el) {
            this.userComponents[el.uuid] = instance;
        }
    },
    ////////////////////////////////////////////////////////////////////
	//Returns the component instance obj from the element
    getComponentFromElement: {
        value: function(el) {
            if(el) {
                if(el.uuid) return this.userComponents[el.uuid];
            } else {
                return null;
            }
        }
    }
	////////////////////////////////////////////////////////////////////
	////////////////////////////////////////////////////////////////////
});
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////