Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Updates for html interaction with qgis - raster metadata revamp
  • Loading branch information
timlinux committed Nov 23, 2011
1 parent 0116951 commit d219534
Show file tree
Hide file tree
Showing 14 changed files with 629 additions and 117 deletions.
1 change: 1 addition & 0 deletions resources/CMakeLists.txt
Expand Up @@ -4,3 +4,4 @@ INSTALL(FILES srs.db qgis.db qgis_help.db symbology-ng-style.xml spatialite.db c
ADD_SUBDIRECTORY(context_help)
ADD_SUBDIRECTORY(js)
ADD_SUBDIRECTORY(html)
ADD_SUBDIRECTORY(css)
4 changes: 4 additions & 0 deletions resources/css/CMakeLists.txt
@@ -0,0 +1,4 @@
FILE(GLOB CSS_FILES *.*)

INSTALL(FILES ${CSS_FILES} DESTINATION ${QGIS_DATA_DIR}/resources/css)

36 changes: 36 additions & 0 deletions resources/css/ie.css
@@ -0,0 +1,36 @@
/* -----------------------------------------------------------------------
Blueprint CSS Framework 1.0
http://blueprintcss.org
* Copyright (c) 2007-Present. See LICENSE for more info.
* See README for instructions on how to use Blueprint.
* For credits and origins, see AUTHORS.
* This is a compressed file. See the sources in the 'src' directory.
----------------------------------------------------------------------- */

/* ie.css */
body {text-align:center;}
.container {text-align:left;}
* html .column, * html .span-1, * html .span-2, * html .span-3, * html .span-4, * html .span-5, * html .span-6, * html .span-7, * html .span-8, * html .span-9, * html .span-10, * html .span-11, * html .span-12, * html .span-13, * html .span-14, * html .span-15, * html .span-16, * html .span-17, * html .span-18, * html .span-19, * html .span-20, * html .span-21, * html .span-22, * html .span-23, * html .span-24 {display:inline;overflow-x:hidden;}
* html legend {margin:0px -8px 16px 0;padding:0;}
sup {vertical-align:text-top;}
sub {vertical-align:text-bottom;}
html>body p code {*white-space:normal;}
hr {margin:-8px auto 11px;}
img {-ms-interpolation-mode:bicubic;}
.clearfix, .container {display:inline-block;}
* html .clearfix, * html .container {height:1%;}
fieldset {padding-top:0;}
legend {margin-top:-0.2em;margin-bottom:1em;margin-left:-0.5em;}
textarea {overflow:auto;}
label {vertical-align:middle;position:relative;top:-0.25em;}
input.text, input.title, textarea {background-color:#fff;border:1px solid #bbb;}
input.text:focus, input.title:focus {border-color:#666;}
input.text, input.title, textarea, select {margin:0.5em 0;}
input.checkbox, input.radio {position:relative;top:.25em;}
form.inline div, form.inline p {vertical-align:middle;}
form.inline input.checkbox, form.inline input.radio, form.inline input.button, form.inline button {margin:0.5em 0;}
button, input.button {position:relative;top:0.25em;}
29 changes: 29 additions & 0 deletions resources/css/print.css
@@ -0,0 +1,29 @@
/* -----------------------------------------------------------------------
Blueprint CSS Framework 1.0
http://blueprintcss.org
* Copyright (c) 2007-Present. See LICENSE for more info.
* See README for instructions on how to use Blueprint.
* For credits and origins, see AUTHORS.
* This is a compressed file. See the sources in the 'src' directory.
----------------------------------------------------------------------- */

/* print.css */
body {line-height:1.5;font-family:"Helvetica Neue", Arial, Helvetica, sans-serif;color:#000;background:none;font-size:10pt;}
.container {background:none;}
hr {background:#ccc;color:#ccc;width:100%;height:2px;margin:2em 0;padding:0;border:none;}
hr.space {background:#fff;color:#fff;visibility:hidden;}
h1, h2, h3, h4, h5, h6 {font-family:"Helvetica Neue", Arial, "Lucida Grande", sans-serif;}
code {font:.9em "Courier New", Monaco, Courier, monospace;}
a img {border:none;}
p img.top {margin-top:0;}
blockquote {margin:1.5em;padding:1em;font-style:italic;font-size:.9em;}
.small {font-size:.9em;}
.large {font-size:1.1em;}
.quiet {color:#999;}
.hide {display:none;}
a:link, a:visited {background:transparent;font-weight:700;text-decoration:underline;}
a:link:after, a:visited:after {content:" (" attr(href) ")";font-size:90%;}
265 changes: 265 additions & 0 deletions resources/css/screen.css
@@ -0,0 +1,265 @@
/* -----------------------------------------------------------------------
Blueprint CSS Framework 1.0
http://blueprintcss.org
* Copyright (c) 2007-Present. See LICENSE for more info.
* See README for instructions on how to use Blueprint.
* For credits and origins, see AUTHORS.
* This is a compressed file. See the sources in the 'src' directory.
----------------------------------------------------------------------- */

/* reset.css */
html {margin:0;padding:0;border:0;}
body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, nav, section {margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;}
article, aside, dialog, figure, footer, header, hgroup, nav, section {display:block;}
body {line-height:1.5;background:white;}
table {border-collapse:separate;border-spacing:0;}
caption, th, td {text-align:left;font-weight:normal;float:none !important;}
table, th, td {vertical-align:middle;}
blockquote:before, blockquote:after, q:before, q:after {content:'';}
blockquote, q {quotes:"" "";}
a img {border:none;}
:focus {outline:0;}

/* typography.css */
html {font-size:100.01%;}
body {font-size:75%;color:#222;background:#fff;font-family:"Helvetica Neue", Arial, Helvetica, sans-serif;}
h1, h2, h3, h4, h5, h6 {font-weight:normal;color:#111;}
h1 {font-size:3em;line-height:1;margin-bottom:0.5em;}
h2 {font-size:2em;margin-bottom:0.75em;}
h3 {font-size:1.5em;line-height:1;margin-bottom:1em;}
h4 {font-size:1.2em;line-height:1.25;margin-bottom:1.25em;}
h5 {font-size:1em;font-weight:bold;margin-bottom:1.5em;}
h6 {font-size:1em;font-weight:bold;}
h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {margin:0;}
p {margin:0 0 1.5em;}
.left {float:left !important;}
p .left {margin:1.5em 1.5em 1.5em 0;padding:0;}
.right {float:right !important;}
p .right {margin:1.5em 0 1.5em 1.5em;padding:0;}
a:focus, a:hover {color:#09f;}
a {color:#06c;text-decoration:underline;}
blockquote {margin:1.5em;color:#666;font-style:italic;}
strong, dfn {font-weight:bold;}
em, dfn {font-style:italic;}
sup, sub {line-height:0;}
abbr, acronym {border-bottom:1px dotted #666;}
address {margin:0 0 1.5em;font-style:italic;}
del {color:#666;}
pre {margin:1.5em 0;white-space:pre;}
pre, code, tt {font:1em 'andale mono', 'lucida console', monospace;line-height:1.5;}
li ul, li ol {margin:0;}
ul, ol {margin:0 1.5em 1.5em 0;padding-left:1.5em;}
ul {list-style-type:disc;}
ol {list-style-type:decimal;}
dl {margin:0 0 1.5em 0;}
dl dt {font-weight:bold;}
dd {margin-left:1.5em;}
table {margin-bottom:1.4em;width:100%;}
th {font-weight:bold;}
thead th {background:#c3d9ff;}
th, td, caption {padding:4px 10px 4px 5px;}
tbody tr:nth-child(even) td, tbody tr.even td {background:#e5ecf9;}
tfoot {font-style:italic;}
caption {background:#eee;}
.small {font-size:.8em;margin-bottom:1.875em;line-height:1.875em;}
.large {font-size:1.2em;line-height:2.5em;margin-bottom:1.25em;}
.hide {display:none;}
.quiet {color:#666;}
.loud {color:#000;}
.highlight {background:#ff0;}
.added {background:#060;color:#fff;}
.removed {background:#900;color:#fff;}
.first {margin-left:0;padding-left:0;}
.last {margin-right:0;padding-right:0;}
.top {margin-top:0;padding-top:0;}
.bottom {margin-bottom:0;padding-bottom:0;}

/* forms.css */
label {font-weight:bold;}
fieldset {padding:0 1.4em 1.4em 1.4em;margin:0 0 1.5em 0;border:1px solid #ccc;}
legend {font-weight:bold;font-size:1.2em;margin-top:-0.2em;margin-bottom:1em;}
fieldset, #IE8#HACK {padding-top:1.4em;}
legend, #IE8#HACK {margin-top:0;margin-bottom:0;}
input[type=text], input[type=password], input.text, input.title, textarea {background-color:#fff;border:1px solid #bbb;}
input[type=text]:focus, input[type=password]:focus, input.text:focus, input.title:focus, textarea:focus {border-color:#666;}
select {background-color:#fff;border-width:1px;border-style:solid;}
input[type=text], input[type=password], input.text, input.title, textarea, select {margin:0.5em 0;}
input.text, input.title {width:300px;padding:5px;}
input.title {font-size:1.5em;}
textarea {width:390px;height:250px;padding:5px;}
form.inline {line-height:3;}
form.inline p {margin-bottom:0;}
.error, .alert, .notice, .success, .info {padding:0.8em;margin-bottom:1em;border:2px solid #ddd;}
.error, .alert {background:#fbe3e4;color:#8a1f11;border-color:#fbc2c4;}
.notice {background:#fff6bf;color:#514721;border-color:#ffd324;}
.success {background:#e6efc2;color:#264409;border-color:#c6d880;}
.info {background:#d5edf8;color:#205791;border-color:#92cae4;}
.error a, .alert a {color:#8a1f11;}
.notice a {color:#514721;}
.success a {color:#264409;}
.info a {color:#205791;}

/* grid.css */
.container {width:595px;margin:0 auto;}
.showgrid {background:url(src/grid.png);}
.column, .span-1, .span-2, .span-3, .span-4, .span-5, .span-6, .span-7, .span-8, .span-9, .span-10, .span-11, .span-12, .span-13, .span-14, .span-15, .span-16, .span-17, .span-18, .span-19, .span-20, .span-21, .span-22, .span-23, .span-24 {float:left;margin-right:5px;}
.last {margin-right:0;}
.span-1 {width:20px;}
.span-2 {width:45px;}
.span-3 {width:70px;}
.span-4 {width:95px;}
.span-5 {width:120px;}
.span-6 {width:145px;}
.span-7 {width:170px;}
.span-8 {width:195px;}
.span-9 {width:220px;}
.span-10 {width:245px;}
.span-11 {width:270px;}
.span-12 {width:295px;}
.span-13 {width:320px;}
.span-14 {width:345px;}
.span-15 {width:370px;}
.span-16 {width:395px;}
.span-17 {width:420px;}
.span-18 {width:445px;}
.span-19 {width:470px;}
.span-20 {width:495px;}
.span-21 {width:520px;}
.span-22 {width:545px;}
.span-23 {width:570px;}
.span-24 {width:595px;margin-right:0;}
input.span-1, textarea.span-1, input.span-2, textarea.span-2, input.span-3, textarea.span-3, input.span-4, textarea.span-4, input.span-5, textarea.span-5, input.span-6, textarea.span-6, input.span-7, textarea.span-7, input.span-8, textarea.span-8, input.span-9, textarea.span-9, input.span-10, textarea.span-10, input.span-11, textarea.span-11, input.span-12, textarea.span-12, input.span-13, textarea.span-13, input.span-14, textarea.span-14, input.span-15, textarea.span-15, input.span-16, textarea.span-16, input.span-17, textarea.span-17, input.span-18, textarea.span-18, input.span-19, textarea.span-19, input.span-20, textarea.span-20, input.span-21, textarea.span-21, input.span-22, textarea.span-22, input.span-23, textarea.span-23, input.span-24, textarea.span-24 {border-left-width:1px;border-right-width:1px;padding-left:5px;padding-right:5px;}
input.span-1, textarea.span-1 {width:8px;}
input.span-2, textarea.span-2 {width:33px;}
input.span-3, textarea.span-3 {width:58px;}
input.span-4, textarea.span-4 {width:83px;}
input.span-5, textarea.span-5 {width:108px;}
input.span-6, textarea.span-6 {width:133px;}
input.span-7, textarea.span-7 {width:158px;}
input.span-8, textarea.span-8 {width:183px;}
input.span-9, textarea.span-9 {width:208px;}
input.span-10, textarea.span-10 {width:233px;}
input.span-11, textarea.span-11 {width:258px;}
input.span-12, textarea.span-12 {width:283px;}
input.span-13, textarea.span-13 {width:308px;}
input.span-14, textarea.span-14 {width:333px;}
input.span-15, textarea.span-15 {width:358px;}
input.span-16, textarea.span-16 {width:383px;}
input.span-17, textarea.span-17 {width:408px;}
input.span-18, textarea.span-18 {width:433px;}
input.span-19, textarea.span-19 {width:458px;}
input.span-20, textarea.span-20 {width:483px;}
input.span-21, textarea.span-21 {width:508px;}
input.span-22, textarea.span-22 {width:533px;}
input.span-23, textarea.span-23 {width:558px;}
input.span-24, textarea.span-24 {width:583px;}
.append-1 {padding-right:25px;}
.append-2 {padding-right:50px;}
.append-3 {padding-right:75px;}
.append-4 {padding-right:100px;}
.append-5 {padding-right:125px;}
.append-6 {padding-right:150px;}
.append-7 {padding-right:175px;}
.append-8 {padding-right:200px;}
.append-9 {padding-right:225px;}
.append-10 {padding-right:250px;}
.append-11 {padding-right:275px;}
.append-12 {padding-right:300px;}
.append-13 {padding-right:325px;}
.append-14 {padding-right:350px;}
.append-15 {padding-right:375px;}
.append-16 {padding-right:400px;}
.append-17 {padding-right:425px;}
.append-18 {padding-right:450px;}
.append-19 {padding-right:475px;}
.append-20 {padding-right:500px;}
.append-21 {padding-right:525px;}
.append-22 {padding-right:550px;}
.append-23 {padding-right:575px;}
.prepend-1 {padding-left:25px;}
.prepend-2 {padding-left:50px;}
.prepend-3 {padding-left:75px;}
.prepend-4 {padding-left:100px;}
.prepend-5 {padding-left:125px;}
.prepend-6 {padding-left:150px;}
.prepend-7 {padding-left:175px;}
.prepend-8 {padding-left:200px;}
.prepend-9 {padding-left:225px;}
.prepend-10 {padding-left:250px;}
.prepend-11 {padding-left:275px;}
.prepend-12 {padding-left:300px;}
.prepend-13 {padding-left:325px;}
.prepend-14 {padding-left:350px;}
.prepend-15 {padding-left:375px;}
.prepend-16 {padding-left:400px;}
.prepend-17 {padding-left:425px;}
.prepend-18 {padding-left:450px;}
.prepend-19 {padding-left:475px;}
.prepend-20 {padding-left:500px;}
.prepend-21 {padding-left:525px;}
.prepend-22 {padding-left:550px;}
.prepend-23 {padding-left:575px;}
.border {padding-right:1px;margin-right:2px;border-right:1px solid #ddd;}
.colborder {padding-right:14px;margin-right:15px;border-right:1px solid #ddd;}
.pull-1 {margin-left:-25px;}
.pull-2 {margin-left:-50px;}
.pull-3 {margin-left:-75px;}
.pull-4 {margin-left:-100px;}
.pull-5 {margin-left:-125px;}
.pull-6 {margin-left:-150px;}
.pull-7 {margin-left:-175px;}
.pull-8 {margin-left:-200px;}
.pull-9 {margin-left:-225px;}
.pull-10 {margin-left:-250px;}
.pull-11 {margin-left:-275px;}
.pull-12 {margin-left:-300px;}
.pull-13 {margin-left:-325px;}
.pull-14 {margin-left:-350px;}
.pull-15 {margin-left:-375px;}
.pull-16 {margin-left:-400px;}
.pull-17 {margin-left:-425px;}
.pull-18 {margin-left:-450px;}
.pull-19 {margin-left:-475px;}
.pull-20 {margin-left:-500px;}
.pull-21 {margin-left:-525px;}
.pull-22 {margin-left:-550px;}
.pull-23 {margin-left:-575px;}
.pull-24 {margin-left:-600px;}
.pull-1, .pull-2, .pull-3, .pull-4, .pull-5, .pull-6, .pull-7, .pull-8, .pull-9, .pull-10, .pull-11, .pull-12, .pull-13, .pull-14, .pull-15, .pull-16, .pull-17, .pull-18, .pull-19, .pull-20, .pull-21, .pull-22, .pull-23, .pull-24 {float:left;position:relative;}
.push-1 {margin:0 -25px 1.5em 25px;}
.push-2 {margin:0 -50px 1.5em 50px;}
.push-3 {margin:0 -75px 1.5em 75px;}
.push-4 {margin:0 -100px 1.5em 100px;}
.push-5 {margin:0 -125px 1.5em 125px;}
.push-6 {margin:0 -150px 1.5em 150px;}
.push-7 {margin:0 -175px 1.5em 175px;}
.push-8 {margin:0 -200px 1.5em 200px;}
.push-9 {margin:0 -225px 1.5em 225px;}
.push-10 {margin:0 -250px 1.5em 250px;}
.push-11 {margin:0 -275px 1.5em 275px;}
.push-12 {margin:0 -300px 1.5em 300px;}
.push-13 {margin:0 -325px 1.5em 325px;}
.push-14 {margin:0 -350px 1.5em 350px;}
.push-15 {margin:0 -375px 1.5em 375px;}
.push-16 {margin:0 -400px 1.5em 400px;}
.push-17 {margin:0 -425px 1.5em 425px;}
.push-18 {margin:0 -450px 1.5em 450px;}
.push-19 {margin:0 -475px 1.5em 475px;}
.push-20 {margin:0 -500px 1.5em 500px;}
.push-21 {margin:0 -525px 1.5em 525px;}
.push-22 {margin:0 -550px 1.5em 550px;}
.push-23 {margin:0 -575px 1.5em 575px;}
.push-24 {margin:0 -600px 1.5em 600px;}
.push-1, .push-2, .push-3, .push-4, .push-5, .push-6, .push-7, .push-8, .push-9, .push-10, .push-11, .push-12, .push-13, .push-14, .push-15, .push-16, .push-17, .push-18, .push-19, .push-20, .push-21, .push-22, .push-23, .push-24 {float:left;position:relative;}
div.prepend-top, .prepend-top {margin-top:1.5em;}
div.append-bottom, .append-bottom {margin-bottom:1.5em;}
.box {padding:1.5em;margin-bottom:1.5em;background:#e5eCf9;}
hr {background:#ddd;color:#ddd;clear:both;float:none;width:100%;height:1px;margin:0 0 1.45em;border:none;}
hr.space {background:#fff;color:#fff;visibility:hidden;}
.clearfix:after, .container:after {content:"\0020";display:block;height:0;clear:both;visibility:hidden;overflow:hidden;}
.clearfix, .container {display:block;}
.clear {clear:both;}
48 changes: 48 additions & 0 deletions resources/html/qgsrasterlayer.html
@@ -0,0 +1,48 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<!-- custom blueprint see http://ianli.com/blueprinter/?cw=20&gw=5&cc=24 -->
<link rel="stylesheet" href="../css/screen.css" type="text/css" media="screen, projection" />
<link rel="stylesheet" href="../css/print.css" type="text/css" media="print" />
<script language="javascript" type="text/javascript" src="../js/jquery.js"></script>
<script language="javascript" type="text/javascript" src="../js/jquery.flot.js"></script>
<script language="javascript" type="text/javascript" src="../js/jquery.flot.navigate.js"></script>
<script language="javascript" type="text/javascript" src="../js/json.js"></script>
<script id="source" language="javascript" type="text/javascript">
//The raster layer properties dialog will pass an object 'mRasterLayer'
//to this javascript context which you can interrogate for all its metadata
function showJson()
{
if (typeof mRasterLayer === 'undefined')
{
$("#notes").html("mRasterLayer is undefined");
}
else
{
//for fun lets pickle the raster layer as a json object
$("#notes").html(JSON.stringify(mRasterLayer));
}
}
/** Load the metadata object passed into this page from c++ context using
wvMetadata->page()->mainFrame()->addToJavaScriptWindowObject( "mRasterLayer", mRasterLayer );
wvMetadata->page()->mainFrame()->evaluateJavaScript(QString("setMetadata()"));
*/
function setMetadata( )
{
$("#metadata").html( mRasterLayer["metadata"] );
}
</script>
</head>
<body>
<div class="container">
<h1>Metadata</h1>
<hr/>
<div id="metadata" class="span-24"></div>
</hr>
<div id="footer">Generated by Quantum GIS (http://qgis.org)</div>
<button onclick="showJson()" >Show JSON</button>
<div id="notes" class="span-24"></div>
</div>
</body>
</html>

0 comments on commit d219534

Please sign in to comment.