Revamp webui
This commit is contained in:
parent
0403048e7b
commit
e3641381a1
2
Cargo.lock
generated
2
Cargo.lock
generated
@ -635,6 +635,7 @@ dependencies = [
|
|||||||
"env_logger",
|
"env_logger",
|
||||||
"futures",
|
"futures",
|
||||||
"log",
|
"log",
|
||||||
|
"mime",
|
||||||
"rocket",
|
"rocket",
|
||||||
"ructe",
|
"ructe",
|
||||||
"serde",
|
"serde",
|
||||||
@ -1165,6 +1166,7 @@ dependencies = [
|
|||||||
"bytecount",
|
"bytecount",
|
||||||
"itertools",
|
"itertools",
|
||||||
"md5",
|
"md5",
|
||||||
|
"mime",
|
||||||
"nom",
|
"nom",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@ serde_json = "1"
|
|||||||
futures = "0.3"
|
futures = "0.3"
|
||||||
strum_macros = "0.24"
|
strum_macros = "0.24"
|
||||||
strum = { version = "0.24", features = ["derive"] }
|
strum = { version = "0.24", features = ["derive"] }
|
||||||
|
mime = "0.3"
|
||||||
|
|
||||||
[build-dependencies]
|
[build-dependencies]
|
||||||
ructe = "0.14"
|
ructe = {version = "0.14", features = ["mime03"]}
|
||||||
|
44
src/main.rs
44
src/main.rs
@ -16,18 +16,18 @@ use tokio::time;
|
|||||||
|
|
||||||
type AppResult<T> = Result<T, Box<dyn std::error::Error + Send + Sync>>;
|
type AppResult<T> = Result<T, Box<dyn std::error::Error + Send + Sync>>;
|
||||||
|
|
||||||
struct Options {
|
// struct Options {
|
||||||
// device: DeviceType,
|
// // device: DeviceType,
|
||||||
}
|
// }
|
||||||
|
|
||||||
#[tokio::main]
|
#[tokio::main]
|
||||||
async fn main() -> AppResult<()> {
|
async fn main() -> AppResult<()> {
|
||||||
env_logger::Builder::from_env(Env::default().default_filter_or("info")).init();
|
env_logger::Builder::from_env(Env::default().default_filter_or("info")).init();
|
||||||
info!("Starting ir remote");
|
info!("Starting ir remote");
|
||||||
|
|
||||||
let options = Arc::new(Options {
|
// let options = Arc::new(Options {
|
||||||
// device: DeviceType::Samsung,
|
// // device: DeviceType::Samsung,
|
||||||
});
|
// });
|
||||||
|
|
||||||
let (outbound_serial_tx, outbound_serial_rx) = channel(100);
|
let (outbound_serial_tx, outbound_serial_rx) = channel(100);
|
||||||
let (inbound_serial_tx, inbound_serial_rx) = channel(100);
|
let (inbound_serial_tx, inbound_serial_rx) = channel(100);
|
||||||
@ -37,6 +37,8 @@ async fn main() -> AppResult<()> {
|
|||||||
serial_agent::serialport_agent(inbound_serial_tx, outbound_serial_rx).await
|
serial_agent::serialport_agent(inbound_serial_tx, outbound_serial_rx).await
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// TODO: Consume inbound_serial_rx, otherwise it will fill up and eventually be dropped
|
||||||
|
|
||||||
// let (agent_shutdown_tx, agent_handle): (Sender<()>, JoinHandle<AppResult<()>>) = {
|
// let (agent_shutdown_tx, agent_handle): (Sender<()>, JoinHandle<AppResult<()>>) = {
|
||||||
// let (shutdown_tx, shutdown_rx) = channel(1);
|
// let (shutdown_tx, shutdown_rx) = channel(1);
|
||||||
// (
|
// (
|
||||||
@ -48,29 +50,6 @@ async fn main() -> AppResult<()> {
|
|||||||
// )
|
// )
|
||||||
// };
|
// };
|
||||||
|
|
||||||
// info!("Starting debugging");
|
|
||||||
// let debugging_handle: JoinHandle<AppResult<()>> = {
|
|
||||||
// let outbound_serial_tx = outbound_serial_tx.clone();
|
|
||||||
|
|
||||||
// tokio::task::spawn(async move {
|
|
||||||
// info!("In debugging handle");
|
|
||||||
// time::sleep(Duration::from_secs(10)).await;
|
|
||||||
// info!("Done waiting");
|
|
||||||
|
|
||||||
// let msg = format!(
|
|
||||||
// "{},{},{}\n",
|
|
||||||
// options.device.device_code(),
|
|
||||||
// options.device.function_code(&Function::Power),
|
|
||||||
// 3
|
|
||||||
// );
|
|
||||||
|
|
||||||
// outbound_serial_tx.send(msg).await?;
|
|
||||||
|
|
||||||
// info!("Done with debugging handle");
|
|
||||||
// Ok(())
|
|
||||||
// })
|
|
||||||
// };
|
|
||||||
|
|
||||||
info!("Starting webui");
|
info!("Starting webui");
|
||||||
let webui_handle: rocket::Shutdown = webui::launch(webui::Settings {
|
let webui_handle: rocket::Shutdown = webui::launch(webui::Settings {
|
||||||
outbound_serial_tx: outbound_serial_tx.clone(),
|
outbound_serial_tx: outbound_serial_tx.clone(),
|
||||||
@ -78,9 +57,9 @@ async fn main() -> AppResult<()> {
|
|||||||
.await?;
|
.await?;
|
||||||
|
|
||||||
tokio::select!(
|
tokio::select!(
|
||||||
r = agent_handle => {
|
// r = agent_handle => {
|
||||||
error!("Agent handle ended: {r:?}");
|
// error!("Agent handle ended: {r:?}");
|
||||||
}
|
// }
|
||||||
r = webui_handle => {
|
r = webui_handle => {
|
||||||
// agent_shutdown_tx.send(()).await?;
|
// agent_shutdown_tx.send(()).await?;
|
||||||
error!("Webserver handle ended: {r:?}");
|
error!("Webserver handle ended: {r:?}");
|
||||||
@ -97,5 +76,6 @@ async fn main() -> AppResult<()> {
|
|||||||
// }),
|
// }),
|
||||||
// );
|
// );
|
||||||
|
|
||||||
|
// TODO: Graceful exit
|
||||||
panic!("Ending program");
|
panic!("Ending program");
|
||||||
}
|
}
|
||||||
|
26
src/webui.rs
26
src/webui.rs
@ -7,16 +7,22 @@ use log::error;
|
|||||||
use log::info;
|
use log::info;
|
||||||
use log::warn;
|
use log::warn;
|
||||||
use rocket::form::Form;
|
use rocket::form::Form;
|
||||||
|
use rocket::fs::relative;
|
||||||
|
use rocket::fs::FileServer;
|
||||||
use rocket::get;
|
use rocket::get;
|
||||||
use rocket::launch;
|
use rocket::launch;
|
||||||
use rocket::post;
|
use rocket::post;
|
||||||
use rocket::response::Flash;
|
use rocket::response::Flash;
|
||||||
use rocket::response::Redirect;
|
use rocket::response::Redirect;
|
||||||
|
use rocket::response::Responder;
|
||||||
use rocket::routes;
|
use rocket::routes;
|
||||||
use rocket::uri;
|
use rocket::uri;
|
||||||
use rocket::FromForm;
|
use rocket::FromForm;
|
||||||
|
use rocket::Response;
|
||||||
use rocket::State;
|
use rocket::State;
|
||||||
|
use template_responder::StaticResponder;
|
||||||
use template_responder::TemplateResponder;
|
use template_responder::TemplateResponder;
|
||||||
|
use templates::statics::StaticFile;
|
||||||
use tokio::sync::mpsc::Sender;
|
use tokio::sync::mpsc::Sender;
|
||||||
|
|
||||||
pub struct Settings {
|
pub struct Settings {
|
||||||
@ -27,9 +33,6 @@ struct WebuiState {
|
|||||||
outbound_serial_tx: Sender<String>,
|
outbound_serial_tx: Sender<String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
// Static files
|
|
||||||
// use templates::statics::StaticFile;
|
|
||||||
|
|
||||||
#[derive(FromForm, Debug)]
|
#[derive(FromForm, Debug)]
|
||||||
struct FunctionForm {
|
struct FunctionForm {
|
||||||
function: Function,
|
function: Function,
|
||||||
@ -111,17 +114,20 @@ async fn index() -> Result<TemplateResponder, std::io::Error> {
|
|||||||
Ok(TemplateResponder::from(buf))
|
Ok(TemplateResponder::from(buf))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[get("/static/<name>")]
|
||||||
|
async fn static_get(name: &str) -> impl Responder + '_ {
|
||||||
|
Some(StaticResponder(StaticFile::get(name)?))
|
||||||
|
}
|
||||||
|
|
||||||
pub async fn launch(settings: Settings) -> AppResult<rocket::Shutdown> {
|
pub async fn launch(settings: Settings) -> AppResult<rocket::Shutdown> {
|
||||||
let state = WebuiState {
|
let state = WebuiState {
|
||||||
outbound_serial_tx: settings.outbound_serial_tx,
|
outbound_serial_tx: settings.outbound_serial_tx,
|
||||||
};
|
};
|
||||||
let rocket = rocket::build()
|
let rocket = rocket::build()
|
||||||
// let _rocket = rocket::build()
|
.mount(
|
||||||
// .mount("/", routes![index, function, power])
|
"/",
|
||||||
// .manage(state)
|
routes![index, static_get, function_get, function_post, power],
|
||||||
// .launch()
|
)
|
||||||
// .await?;
|
|
||||||
.mount("/", routes![index, function_get, function_post, power])
|
|
||||||
.manage(state)
|
.manage(state)
|
||||||
.ignite()
|
.ignite()
|
||||||
.await?;
|
.await?;
|
||||||
@ -130,6 +136,4 @@ pub async fn launch(settings: Settings) -> AppResult<rocket::Shutdown> {
|
|||||||
tokio::task::spawn(rocket.launch());
|
tokio::task::spawn(rocket.launch());
|
||||||
|
|
||||||
Ok(shutdown_handle)
|
Ok(shutdown_handle)
|
||||||
|
|
||||||
// Ok(())
|
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,8 @@
|
|||||||
use rocket::{http::ContentType, response::Responder, Request, Response};
|
use super::templates::statics::StaticFile;
|
||||||
|
use rocket::http::Header;
|
||||||
|
use rocket::{http::ContentType, response, response::Responder, Request, Response};
|
||||||
use std::io::Cursor;
|
use std::io::Cursor;
|
||||||
|
use log::info;
|
||||||
|
|
||||||
pub struct TemplateResponder(pub Vec<u8>);
|
pub struct TemplateResponder(pub Vec<u8>);
|
||||||
|
|
||||||
@ -18,3 +21,16 @@ impl<'r> Responder<'r, 'static> for TemplateResponder {
|
|||||||
.ok()
|
.ok()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub struct StaticResponder<'o>(pub &'o StaticFile);
|
||||||
|
|
||||||
|
#[rocket::async_trait]
|
||||||
|
impl<'r, 'o: 'r> Responder<'r, 'o> for StaticResponder<'o> {
|
||||||
|
fn respond_to(self, _: &'r Request<'_>) -> response::Result<'o> {
|
||||||
|
info!("Mime type: {:?}", self.0.mime.type_().as_str());
|
||||||
|
Response::build()
|
||||||
|
.header(Header::new("Content-Type", self.0.mime.type_().as_str()))
|
||||||
|
.sized_body(self.0.content.len(), Cursor::new(self.0.content))
|
||||||
|
.ok()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -1007,49 +1007,49 @@ kl+J8KhFCNZFmyirVvZisdfPLEpgomBYkopyNgQ+rv8A/9k=
|
|||||||
y="989.05127" />
|
y="989.05127" />
|
||||||
</g>
|
</g>
|
||||||
<g inkscape:groupmode="layer" inkscape:label="Image" id="g70">
|
<g inkscape:groupmode="layer" inkscape:label="Image" id="g70">
|
||||||
<a xlink:href="function?function=AddSubtract"><path id="rect464" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 285.83203 L 30.033203 285.83203 L 30.033203 343.02148 L 110.61719 343.02148 L 110.61719 285.83203 z " onclick="minus" /></a>
|
<a xlink:href="/function?function=AddSubtract"><path id="rect464" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 285.83203 L 30.033203 285.83203 L 30.033203 343.02148 L 110.61719 343.02148 L 110.61719 285.83203 z " /></a>
|
||||||
<a xlink:href="function?function=Button7"><path id="path1492" style="fill:rgba(0,0,0,0);stroke:none;" d="M 30.033203 228.64062 L 30.033203 285.83203 L 110.61719 285.83203 L 110.61719 228.64062 L 30.033203 228.64062 z " onclick="7" /></a>
|
<a xlink:href="/function?function=Button7"><path id="path1492" style="fill:rgba(0,0,0,0);stroke:none;" d="M 30.033203 228.64062 L 30.033203 285.83203 L 110.61719 285.83203 L 110.61719 228.64062 L 30.033203 228.64062 z " /></a>
|
||||||
<a xlink:href="function?function=Button4"><path id="path1483" style="fill:rgba(0,0,0,0);stroke:none;" d="M 30.033203 171.44922 L 30.033203 228.64062 L 110.61719 228.64062 L 110.61719 171.44922 L 30.033203 171.44922 z " onclick="4" /></a>
|
<a xlink:href="/function?function=Button4"><path id="path1483" style="fill:rgba(0,0,0,0);stroke:none;" d="M 30.033203 171.44922 L 30.033203 228.64062 L 110.61719 228.64062 L 110.61719 171.44922 L 30.033203 171.44922 z " /></a>
|
||||||
<a xlink:href="function?function=Button1"><path id="path1480" style="fill:rgba(0,0,0,0);stroke:none;" d="M 30.033203 114.25977 L 30.033203 171.44922 L 110.61719 171.44922 L 110.61719 114.25977 L 30.033203 114.25977 z " onclick="1" /></a>
|
<a xlink:href="/function?function=Button1"><path id="path1480" style="fill:rgba(0,0,0,0);stroke:none;" d="M 30.033203 114.25977 L 30.033203 171.44922 L 110.61719 171.44922 L 110.61719 114.25977 L 30.033203 114.25977 z " /></a>
|
||||||
<a xlink:href="function?function=Button0"><path id="path997" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 285.83203 L 110.61719 285.83203 L 110.61719 343.02148 L 191.20117 343.02148 L 191.20117 285.83203 z " onclick="0" /></a>
|
<a xlink:href="/function?function=Button0"><path id="path997" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 285.83203 L 110.61719 285.83203 L 110.61719 343.02148 L 191.20117 343.02148 L 191.20117 285.83203 z " /></a>
|
||||||
<a xlink:href="function?function=Button8"><path id="path1495" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 228.64062 L 110.61719 285.83203 L 191.20117 285.83203 L 191.20117 228.64062 L 110.61719 228.64062 z " onclick="8" /></a>
|
<a xlink:href="/function?function=Button8"><path id="path1495" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 228.64062 L 110.61719 285.83203 L 191.20117 285.83203 L 191.20117 228.64062 L 110.61719 228.64062 z " /></a>
|
||||||
<a xlink:href="function?function=Button5"><path id="path1489" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 171.44922 L 110.61719 228.64062 L 191.20117 228.64062 L 191.20117 171.44922 L 110.61719 171.44922 z " onclick="5" /></a>
|
<a xlink:href="/function?function=Button5"><path id="path1489" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 171.44922 L 110.61719 228.64062 L 191.20117 228.64062 L 191.20117 171.44922 L 110.61719 171.44922 z " /></a>
|
||||||
<a xlink:href="function?function=Button2"><path id="path1477" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 114.25977 L 110.61719 171.44922 L 191.20117 171.44922 L 191.20117 114.25977 L 110.61719 114.25977 z " onclick="2" /></a>
|
<a xlink:href="/function?function=Button2"><path id="path1477" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 114.25977 L 110.61719 171.44922 L 191.20117 171.44922 L 191.20117 114.25977 L 110.61719 114.25977 z " /></a>
|
||||||
<a xlink:href="function?function=Last"><path id="path994" style="fill:rgba(0,0,0,0);stroke:none;" d="M 271.78516 285.83203 L 191.20117 285.83203 L 191.20117 343.02148 L 271.78516 343.02148 L 271.78516 285.83203 z " onclick="prech" /></a>
|
<a xlink:href="/function?function=Last"><path id="path994" style="fill:rgba(0,0,0,0);stroke:none;" d="M 271.78516 285.83203 L 191.20117 285.83203 L 191.20117 343.02148 L 271.78516 343.02148 L 271.78516 285.83203 z " /></a>
|
||||||
<a xlink:href="function?function=Button9"><path id="path1498" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 228.64062 L 191.20117 285.83203 L 271.78516 285.83203 L 271.78516 228.64062 L 191.20117 228.64062 z " onclick="9" /></a>
|
<a xlink:href="/function?function=Button9"><path id="path1498" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 228.64062 L 191.20117 285.83203 L 271.78516 285.83203 L 271.78516 228.64062 L 191.20117 228.64062 z " /></a>
|
||||||
<a xlink:href="function?function=Button6"><path id="path1486" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 171.44922 L 191.20117 228.64062 L 271.78516 228.64062 L 271.78516 171.44922 L 191.20117 171.44922 z " onclick="6" /></a>
|
<a xlink:href="/function?function=Button6"><path id="path1486" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 171.44922 L 191.20117 228.64062 L 271.78516 228.64062 L 271.78516 171.44922 L 191.20117 171.44922 z " /></a>
|
||||||
<a xlink:href="function?function=Button3"><path id="path1474" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 114.25977 L 191.20117 171.44922 L 271.78516 171.44922 L 271.78516 114.25977 L 191.20117 114.25977 z " onclick="3" /></a>
|
<a xlink:href="/function?function=Button3"><path id="path1474" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 114.25977 L 191.20117 171.44922 L 271.78516 171.44922 L 271.78516 114.25977 L 191.20117 114.25977 z " /></a>
|
||||||
<a xlink:href="function?function=InputSource"><path id="path1501" style="fill:rgba(0,0,0,0);stroke:none;" d="m 189.20117,43.019996 v 65.239774 h 80.58399 V 43.019996 Z" onclick="source" /></a>
|
<a xlink:href="/function?function=InputSource"><path id="path1501" style="fill:rgba(0,0,0,0);stroke:none;" d="m 189.20117,43.019996 v 65.239774 h 80.58399 V 43.019996 Z" /></a>
|
||||||
<a xlink:href="function?function=Power"><path id="path1503" style="fill:rgba(0,0,0,0);stroke:none;" d="m 34.0332,36.135788 v 76.123982 h 80.58399 V 36.135788 Z" onclick="power" /></a>
|
<a xlink:href="/function?function=Power"><path id="path1503" style="fill:rgba(0,0,0,0);stroke:none;" d="m 34.0332,36.135788 v 76.123982 h 80.58399 V 36.135788 Z" /></a>
|
||||||
<a xlink:href="function?function=Mute"><path id="path1505" style="fill:rgba(0,0,0,0);stroke:none;" d="m 188.06799,345.97684 h -71.90271 v 80.58111 h 71.90271 z" onclick="mute" /></a>
|
<a xlink:href="/function?function=Mute"><path id="path1505" style="fill:rgba(0,0,0,0);stroke:none;" d="m 188.06799,345.97684 h -71.90271 v 80.58111 h 71.90271 z" /></a>
|
||||||
<a xlink:href="function?function=ChannelList"><path id="path1507" style="fill:rgba(0,0,0,0);stroke:none;" d="m 187.07236,430.38414 h -65.84819 v 70.95271 h 65.84819 z" onclick="channellist" /></a>
|
<a xlink:href="/function?function=ChannelList"><path id="path1507" style="fill:rgba(0,0,0,0);stroke:none;" d="m 187.07236,430.38414 h -65.84819 v 70.95271 h 65.84819 z" /></a>
|
||||||
<a xlink:href="function?function=ChannelDown"><path id="path1509" style="fill:rgba(0,0,0,0);stroke:none;" d="M 273.67188 436.94336 L 189.32422 436.94336 L 189.32422 517.69336 L 273.67188 517.69336 L 273.67188 436.94336 z " onclick="channeldown" /></a>
|
<a xlink:href="/function?function=ChannelDown"><path id="path1509" style="fill:rgba(0,0,0,0);stroke:none;" d="M 273.67188 436.94336 L 189.32422 436.94336 L 189.32422 517.69336 L 273.67188 517.69336 L 273.67188 436.94336 z " /></a>
|
||||||
<a xlink:href="function?function=ChannelUp"><path id="path3698" style="fill:rgba(0,0,0,0);stroke:none;" d="M 189.32422 347.51172 L 189.32422 436.94336 L 273.67188 436.94336 L 273.67188 347.51172 L 189.32422 347.51172 z " onclick="channelup" /></a>
|
<a xlink:href="/function?function=ChannelUp"><path id="path3698" style="fill:rgba(0,0,0,0);stroke:none;" d="M 189.32422 347.51172 L 189.32422 436.94336 L 273.67188 436.94336 L 273.67188 347.51172 L 189.32422 347.51172 z " /></a>
|
||||||
<a xlink:href="function?function=VolumeDown"><path id="path1511" style="fill:rgba(0,0,0,0);stroke:none;" d="M 115.93164 436.94336 L 28.308594 436.94336 L 28.308594 518.10352 L 115.93164 518.10352 L 115.93164 436.94336 z " onclick="volumedown" /></a>
|
<a xlink:href="/function?function=VolumeDown"><path id="path1511" style="fill:rgba(0,0,0,0);stroke:none;" d="M 115.93164 436.94336 L 28.308594 436.94336 L 28.308594 518.10352 L 115.93164 518.10352 L 115.93164 436.94336 z " /></a>
|
||||||
<a xlink:href="function?function=VolumeUp"><path id="path3695" style="fill:rgba(0,0,0,0);stroke:none;" d="M 28.308594 347.92383 L 28.308594 436.94336 L 115.93164 436.94336 L 115.93164 347.92383 L 28.308594 347.92383 z " onclick="volumeup" /></a>
|
<a xlink:href="/function?function=VolumeUp"><path id="path3695" style="fill:rgba(0,0,0,0);stroke:none;" d="M 28.308594 347.92383 L 28.308594 436.94336 L 115.93164 436.94336 L 115.93164 347.92383 L 28.308594 347.92383 z " /></a>
|
||||||
<a xlink:href="function?function=SmartHub"><path id="path1513" style="fill:rgba(0,0,0,0);stroke:none;" d="m 183.07236,513.22443 h -65.84819 v 70.95271 h 65.84819 z" onclick="smarthub" /></a>
|
<a xlink:href="/function?function=SmartHub"><path id="path1513" style="fill:rgba(0,0,0,0);stroke:none;" d="m 183.07236,513.22443 h -65.84819 v 70.95271 h 65.84819 z" /></a>
|
||||||
<a xlink:href="function?function=Guide"><path id="path1515" style="fill:rgba(0,0,0,0);stroke:none;" d="m 267.44021,523.24455 h -79.35424 v 64.46748 h 79.35424 z" onclick="guide" /></a>
|
<a xlink:href="/function?function=Guide"><path id="path1515" style="fill:rgba(0,0,0,0);stroke:none;" d="m 267.44021,523.24455 h -79.35424 v 64.46748 h 79.35424 z" /></a>
|
||||||
<a xlink:href="function?function=Menu"><path id="path1517" style="fill:rgba(0,0,0,0);stroke:none;" d="M 113.82824,523.24455 H 34.474003 v 64.46748 h 79.354237 z" onclick="menu" /></a>
|
<a xlink:href="/function?function=Menu"><path id="path1517" style="fill:rgba(0,0,0,0);stroke:none;" d="M 113.82824,523.24455 H 34.474003 v 64.46748 h 79.354237 z" /></a>
|
||||||
<a xlink:href="function?function=Tools"><path id="path1519" style="fill:rgba(0,0,0,0);stroke:none;" d="M 113.82824,587.71203 H 34.474003 v 64.46748 h 79.354237 z" onclick="tools" /></a>
|
<a xlink:href="/function?function=Tools"><path id="path1519" style="fill:rgba(0,0,0,0);stroke:none;" d="M 113.82824,587.71203 H 34.474003 v 64.46748 h 79.354237 z" /></a>
|
||||||
<a xlink:href="function?function=Info"><path id="path1521" style="fill:rgba(0,0,0,0);stroke:none;" d="m 267.44021,587.71203 h -79.35424 v 64.46748 h 79.35424 z" onclick="info" /></a>
|
<a xlink:href="/function?function=Info"><path id="path1521" style="fill:rgba(0,0,0,0);stroke:none;" d="m 267.44021,587.71203 h -79.35424 v 64.46748 h 79.35424 z" /></a>
|
||||||
<a xlink:href="function?function=CursorUp"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1545" width="74.184525" height="71.952538" x="113.86485" y="587.74866" onclick="up" /></a>
|
<a xlink:href="/function?function=CursorUp"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1545" width="74.184525" height="71.952538" x="113.86485" y="587.74866" /></a>
|
||||||
<a xlink:href="function?function=CursorDown"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1627" width="74.184525" height="71.952538" x="113.17372" y="725.35107" onclick="down" /></a>
|
<a xlink:href="/function?function=CursorDown"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1627" width="74.184525" height="71.952538" x="113.17372" y="725.35107" /></a>
|
||||||
<a xlink:href="function?function=CursorRight"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1629" width="81.755196" height="71.884422" x="188.08344" y="659.73523" onclick="right" /></a>
|
<a xlink:href="/function?function=CursorRight"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1629" width="81.755196" height="71.884422" x="188.08344" y="659.73523" /></a>
|
||||||
<a xlink:href="function?function=CursorLeft"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1631" width="85.428856" height="71.852524" x="28.386009" y="659.75116" onclick="left" /></a>
|
<a xlink:href="/function?function=CursorLeft"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1631" width="85.428856" height="71.852524" x="28.386009" y="659.75116" /></a>
|
||||||
<a xlink:href="function?function=Exit"><path id="path1633" style="fill:rgba(0,0,0,0);stroke:none;" d="m 269.83862,731.61963 h -79.35424 v 64.46748 h 79.35424 z" onclick="exit" /></a>
|
<a xlink:href="/function?function=Exit"><path id="path1633" style="fill:rgba(0,0,0,0);stroke:none;" d="m 269.83862,731.61963 h -79.35424 v 64.46748 h 79.35424 z" /></a>
|
||||||
<a xlink:href="function?function=Return"><path id="path1635" style="fill:rgba(0,0,0,0);stroke:none;" d="M 113.81487,731.6037 H 34.460625 v 64.46748 h 79.354245 z" onclick="return" /></a>
|
<a xlink:href="/function?function=Return"><path id="path1635" style="fill:rgba(0,0,0,0);stroke:none;" d="M 113.81487,731.6037 H 34.460625 v 64.46748 h 79.354245 z" /></a>
|
||||||
<a xlink:href="function?function=Rewind"><path id="rect1659" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 898.05859 L 33.228516 898.05859 L 33.228516 949.05273 L 92.380859 949.05273 L 92.380859 898.05859 z " onclick="rewind" /></a>
|
<a xlink:href="/function?function=Rewind"><path id="rect1659" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 898.05859 L 33.228516 898.05859 L 33.228516 949.05273 L 92.380859 949.05273 L 92.380859 898.05859 z " /></a>
|
||||||
<a xlink:href="function?function=Play"><path id="path2351" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 898.05859 L 92.380859 949.05273 L 151.5332 949.05273 L 151.5332 898.05859 L 92.380859 898.05859 z " onclick="play" /></a>
|
<a xlink:href="/function?function=Play"><path id="path2351" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 898.05859 L 92.380859 949.05273 L 151.5332 949.05273 L 151.5332 898.05859 L 92.380859 898.05859 z " /></a>
|
||||||
<a xlink:href="function?function=Pause"><path id="path2348" style="fill:rgba(0,0,0,0);stroke:none;" d="M 151.5332 898.05859 L 151.5332 949.05273 L 210.68555 949.05273 L 210.68555 898.05859 L 151.5332 898.05859 z " onclick="pause" /></a>
|
<a xlink:href="/function?function=Pause"><path id="path2348" style="fill:rgba(0,0,0,0);stroke:none;" d="M 151.5332 898.05859 L 151.5332 949.05273 L 210.68555 949.05273 L 210.68555 898.05859 L 151.5332 898.05859 z " /></a>
|
||||||
<a xlink:href="function?function=Fastforward"><path id="path2345" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 898.05859 L 210.68555 949.05273 L 269.83789 949.05273 L 269.83789 898.05859 L 210.68555 898.05859 z " onclick="fastforward" /></a>
|
<a xlink:href="/function?function=Fastforward"><path id="path2345" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 898.05859 L 210.68555 949.05273 L 269.83789 949.05273 L 269.83789 898.05859 L 210.68555 898.05859 z " /></a>
|
||||||
<a xlink:href="function?function=EManual"><path id="path2324" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 847.06445 L 33.228516 847.06445 L 33.228516 898.05859 L 92.380859 898.05859 L 92.380859 847.06445 z " onclick="EManual" /></a>
|
<a xlink:href="/function?function=EManual"><path id="path2324" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 847.06445 L 33.228516 847.06445 L 33.228516 898.05859 L 92.380859 898.05859 L 92.380859 847.06445 z " /></a>
|
||||||
<a xlink:href="function?function=Sports"><path id="path2336" style="fill:rgba(0,0,0,0);stroke:none;" d="M 151.5332 847.06445 L 92.380859 847.06445 L 92.380859 898.05859 L 151.5332 898.05859 L 151.5332 847.06445 z " onclick="sports" /></a>
|
<a xlink:href="/function?function=Sports"><path id="path2336" style="fill:rgba(0,0,0,0);stroke:none;" d="M 151.5332 847.06445 L 92.380859 847.06445 L 92.380859 898.05859 L 151.5332 898.05859 L 151.5332 847.06445 z " /></a>
|
||||||
<a xlink:href="function?function=CC"><path id="path2339" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 847.06445 L 151.5332 847.06445 L 151.5332 898.05859 L 210.68555 898.05859 L 210.68555 847.06445 z " onclick="CC" /></a>
|
<a xlink:href="/function?function=CC"><path id="path2339" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 847.06445 L 151.5332 847.06445 L 151.5332 898.05859 L 210.68555 898.05859 L 210.68555 847.06445 z " /></a>
|
||||||
<a xlink:href="function?function=Stop"><path id="path2342" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 847.06445 L 210.68555 898.05859 L 269.83789 898.05859 L 269.83789 847.06445 L 210.68555 847.06445 z " onclick="stop" /></a>
|
<a xlink:href="/function?function=Stop"><path id="path2342" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 847.06445 L 210.68555 898.05859 L 269.83789 898.05859 L 269.83789 847.06445 L 210.68555 847.06445 z " /></a>
|
||||||
<a xlink:href="function?function=A"><path id="path2321" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 796.08789 L 33.228516 796.08789 L 33.228516 847.06445 L 92.380859 847.06445 L 92.380859 796.08789 z " onclick="a" /></a>
|
<a xlink:href="/function?function=A"><path id="path2321" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 796.08789 L 33.228516 796.08789 L 33.228516 847.06445 L 92.380859 847.06445 L 92.380859 796.08789 z " /></a>
|
||||||
<a xlink:href="function?function=B"><path id="path2327" style="fill:rgba(0,0,0,0);stroke:none;" d="M 151.5332 796.08789 L 92.380859 796.08789 L 92.380859 847.06445 L 151.5332 847.06445 L 151.5332 796.08789 z " onclick="b" /></a>
|
<a xlink:href="/function?function=B"><path id="path2327" style="fill:rgba(0,0,0,0);stroke:none;" d="M 151.5332 796.08789 L 92.380859 796.08789 L 92.380859 847.06445 L 151.5332 847.06445 L 151.5332 796.08789 z " /></a>
|
||||||
<a xlink:href="function?function=C"><path id="path2330" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 796.08789 L 151.5332 796.08789 L 151.5332 847.06445 L 210.68555 847.06445 L 210.68555 796.08789 z " onclick="c" /></a>
|
<a xlink:href="/function?function=C"><path id="path2330" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 796.08789 L 151.5332 796.08789 L 151.5332 847.06445 L 210.68555 847.06445 L 210.68555 796.08789 z " /></a>
|
||||||
<a xlink:href="function?function=D"><path id="path2333" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 796.08789 L 210.68555 847.06445 L 269.83789 847.06445 L 269.83789 796.08789 L 210.68555 796.08789 z " onclick="d" /></a>
|
<a xlink:href="/function?function=D"><path id="path2333" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 796.08789 L 210.68555 847.06445 L 269.83789 847.06445 L 269.83789 796.08789 L 210.68555 796.08789 z " /></a>
|
||||||
<a xlink:href="function?function=Enter"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect3842" width="73.543381" height="65.599915" x="113.81487" y="659.75116" onclick="enter" /></a>
|
<a xlink:href="/function?function=Enter"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect3842" width="73.543381" height="65.599915" x="113.81487" y="659.75116" /></a>
|
||||||
</g>
|
</g>
|
||||||
</svg>
|
</svg>
|
||||||
|
Before Width: | Height: | Size: 83 KiB After Width: | Height: | Size: 82 KiB |
@ -8,14 +8,13 @@
|
|||||||
<head>
|
<head>
|
||||||
<title>Unknown Title</title>
|
<title>Unknown Title</title>
|
||||||
|
|
||||||
<link rel="stylesheet" href="/static/@tacit_css_min_css.name"/>
|
<!-- <link rel="stylesheet" href="/static/@tacit_css_min_css.name"/> -->
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
||||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
|
||||||
|
|
||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
@ -1026,54 +1025,59 @@ kl+J8KhFCNZFmyirVvZisdfPLEpgomBYkopyNgQ+rv8A/9k=
|
|||||||
y="989.05127" />
|
y="989.05127" />
|
||||||
</g>
|
</g>
|
||||||
<g inkscape:groupmode="layer" inkscape:label="Image" id="g70">
|
<g inkscape:groupmode="layer" inkscape:label="Image" id="g70">
|
||||||
<a xlink:href="function?function=AddSubtract"><path id="rect464" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 285.83203 L 30.033203 285.83203 L 30.033203 343.02148 L 110.61719 343.02148 L 110.61719 285.83203 z " onclick="minus" /></a>
|
<a xlink:href="function?function=AddSubtract"><path id="rect464" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 285.83203 L 30.033203 285.83203 L 30.033203 343.02148 L 110.61719 343.02148 L 110.61719 285.83203 z " /></a>
|
||||||
<a xlink:href="function?function=Button7"><path id="path1492" style="fill:rgba(0,0,0,0);stroke:none;" d="M 30.033203 228.64062 L 30.033203 285.83203 L 110.61719 285.83203 L 110.61719 228.64062 L 30.033203 228.64062 z " onclick="7" /></a>
|
<a xlink:href="function?function=Button7"><path id="path1492" style="fill:rgba(0,0,0,0);stroke:none;" d="M 30.033203 228.64062 L 30.033203 285.83203 L 110.61719 285.83203 L 110.61719 228.64062 L 30.033203 228.64062 z " /></a>
|
||||||
<a xlink:href="function?function=Button4"><path id="path1483" style="fill:rgba(0,0,0,0);stroke:none;" d="M 30.033203 171.44922 L 30.033203 228.64062 L 110.61719 228.64062 L 110.61719 171.44922 L 30.033203 171.44922 z " onclick="4" /></a>
|
<a xlink:href="function?function=Button4"><path id="path1483" style="fill:rgba(0,0,0,0);stroke:none;" d="M 30.033203 171.44922 L 30.033203 228.64062 L 110.61719 228.64062 L 110.61719 171.44922 L 30.033203 171.44922 z " /></a>
|
||||||
<a xlink:href="function?function=Button1"><path id="path1480" style="fill:rgba(0,0,0,0);stroke:none;" d="M 30.033203 114.25977 L 30.033203 171.44922 L 110.61719 171.44922 L 110.61719 114.25977 L 30.033203 114.25977 z " onclick="1" /></a>
|
<a xlink:href="function?function=Button1"><path id="path1480" style="fill:rgba(0,0,0,0);stroke:none;" d="M 30.033203 114.25977 L 30.033203 171.44922 L 110.61719 171.44922 L 110.61719 114.25977 L 30.033203 114.25977 z " /></a>
|
||||||
<a xlink:href="function?function=Button0"><path id="path997" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 285.83203 L 110.61719 285.83203 L 110.61719 343.02148 L 191.20117 343.02148 L 191.20117 285.83203 z " onclick="0" /></a>
|
<a xlink:href="function?function=Button0"><path id="path997" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 285.83203 L 110.61719 285.83203 L 110.61719 343.02148 L 191.20117 343.02148 L 191.20117 285.83203 z " /></a>
|
||||||
<a xlink:href="function?function=Button8"><path id="path1495" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 228.64062 L 110.61719 285.83203 L 191.20117 285.83203 L 191.20117 228.64062 L 110.61719 228.64062 z " onclick="8" /></a>
|
<a xlink:href="function?function=Button8"><path id="path1495" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 228.64062 L 110.61719 285.83203 L 191.20117 285.83203 L 191.20117 228.64062 L 110.61719 228.64062 z " /></a>
|
||||||
<a xlink:href="function?function=Button5"><path id="path1489" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 171.44922 L 110.61719 228.64062 L 191.20117 228.64062 L 191.20117 171.44922 L 110.61719 171.44922 z " onclick="5" /></a>
|
<a xlink:href="function?function=Button5"><path id="path1489" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 171.44922 L 110.61719 228.64062 L 191.20117 228.64062 L 191.20117 171.44922 L 110.61719 171.44922 z " /></a>
|
||||||
<a xlink:href="function?function=Button2"><path id="path1477" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 114.25977 L 110.61719 171.44922 L 191.20117 171.44922 L 191.20117 114.25977 L 110.61719 114.25977 z " onclick="2" /></a>
|
<a xlink:href="function?function=Button2"><path id="path1477" style="fill:rgba(0,0,0,0);stroke:none;" d="M 110.61719 114.25977 L 110.61719 171.44922 L 191.20117 171.44922 L 191.20117 114.25977 L 110.61719 114.25977 z " /></a>
|
||||||
<a xlink:href="function?function=Last"><path id="path994" style="fill:rgba(0,0,0,0);stroke:none;" d="M 271.78516 285.83203 L 191.20117 285.83203 L 191.20117 343.02148 L 271.78516 343.02148 L 271.78516 285.83203 z " onclick="prech" /></a>
|
<a xlink:href="function?function=Last"><path id="path994" style="fill:rgba(0,0,0,0);stroke:none;" d="M 271.78516 285.83203 L 191.20117 285.83203 L 191.20117 343.02148 L 271.78516 343.02148 L 271.78516 285.83203 z " /></a>
|
||||||
<a xlink:href="function?function=Button9"><path id="path1498" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 228.64062 L 191.20117 285.83203 L 271.78516 285.83203 L 271.78516 228.64062 L 191.20117 228.64062 z " onclick="9" /></a>
|
<a xlink:href="function?function=Button9"><path id="path1498" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 228.64062 L 191.20117 285.83203 L 271.78516 285.83203 L 271.78516 228.64062 L 191.20117 228.64062 z " /></a>
|
||||||
<a xlink:href="function?function=Button6"><path id="path1486" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 171.44922 L 191.20117 228.64062 L 271.78516 228.64062 L 271.78516 171.44922 L 191.20117 171.44922 z " onclick="6" /></a>
|
<a xlink:href="function?function=Button6"><path id="path1486" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 171.44922 L 191.20117 228.64062 L 271.78516 228.64062 L 271.78516 171.44922 L 191.20117 171.44922 z " /></a>
|
||||||
<a xlink:href="function?function=Button3"><path id="path1474" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 114.25977 L 191.20117 171.44922 L 271.78516 171.44922 L 271.78516 114.25977 L 191.20117 114.25977 z " onclick="3" /></a>
|
<a xlink:href="function?function=Button3"><path id="path1474" style="fill:rgba(0,0,0,0);stroke:none;" d="M 191.20117 114.25977 L 191.20117 171.44922 L 271.78516 171.44922 L 271.78516 114.25977 L 191.20117 114.25977 z " /></a>
|
||||||
<a xlink:href="function?function=InputSource"><path id="path1501" style="fill:rgba(0,0,0,0);stroke:none;" d="m 189.20117,43.019996 v 65.239774 h 80.58399 V 43.019996 Z" onclick="source" /></a>
|
<a xlink:href="function?function=InputSource"><path id="path1501" style="fill:rgba(0,0,0,0);stroke:none;" d="m 189.20117,43.019996 v 65.239774 h 80.58399 V 43.019996 Z" /></a>
|
||||||
<a xlink:href="function?function=Power"><path id="path1503" style="fill:rgba(0,0,0,0);stroke:none;" d="m 34.0332,36.135788 v 76.123982 h 80.58399 V 36.135788 Z" onclick="power" /></a>
|
<a xlink:href="function?function=Power"><path id="path1503" style="fill:rgba(0,0,0,0);stroke:none;" d="m 34.0332,36.135788 v 76.123982 h 80.58399 V 36.135788 Z" /></a>
|
||||||
<a xlink:href="function?function=Mute"><path id="path1505" style="fill:rgba(0,0,0,0);stroke:none;" d="m 188.06799,345.97684 h -71.90271 v 80.58111 h 71.90271 z" onclick="mute" /></a>
|
<a xlink:href="function?function=Mute"><path id="path1505" style="fill:rgba(0,0,0,0);stroke:none;" d="m 188.06799,345.97684 h -71.90271 v 80.58111 h 71.90271 z" /></a>
|
||||||
<a xlink:href="function?function=ChannelList"><path id="path1507" style="fill:rgba(0,0,0,0);stroke:none;" d="m 187.07236,430.38414 h -65.84819 v 70.95271 h 65.84819 z" onclick="channellist" /></a>
|
<a xlink:href="function?function=ChannelList"><path id="path1507" style="fill:rgba(0,0,0,0);stroke:none;" d="m 187.07236,430.38414 h -65.84819 v 70.95271 h 65.84819 z" /></a>
|
||||||
<a xlink:href="function?function=ChannelDown"><path id="path1509" style="fill:rgba(0,0,0,0);stroke:none;" d="M 273.67188 436.94336 L 189.32422 436.94336 L 189.32422 517.69336 L 273.67188 517.69336 L 273.67188 436.94336 z " onclick="channeldown" /></a>
|
<a xlink:href="function?function=ChannelDown"><path id="path1509" style="fill:rgba(0,0,0,0);stroke:none;" d="M 273.67188 436.94336 L 189.32422 436.94336 L 189.32422 517.69336 L 273.67188 517.69336 L 273.67188 436.94336 z " /></a>
|
||||||
<a xlink:href="function?function=ChannelUp"><path id="path3698" style="fill:rgba(0,0,0,0);stroke:none;" d="M 189.32422 347.51172 L 189.32422 436.94336 L 273.67188 436.94336 L 273.67188 347.51172 L 189.32422 347.51172 z " onclick="channelup" /></a>
|
<a xlink:href="function?function=ChannelUp"><path id="path3698" style="fill:rgba(0,0,0,0);stroke:none;" d="M 189.32422 347.51172 L 189.32422 436.94336 L 273.67188 436.94336 L 273.67188 347.51172 L 189.32422 347.51172 z " /></a>
|
||||||
<a xlink:href="function?function=VolumeDown"><path id="path1511" style="fill:rgba(0,0,0,0);stroke:none;" d="M 115.93164 436.94336 L 28.308594 436.94336 L 28.308594 518.10352 L 115.93164 518.10352 L 115.93164 436.94336 z " onclick="volumedown" /></a>
|
<a xlink:href="function?function=VolumeDown"><path id="path1511" style="fill:rgba(0,0,0,0);stroke:none;" d="M 115.93164 436.94336 L 28.308594 436.94336 L 28.308594 518.10352 L 115.93164 518.10352 L 115.93164 436.94336 z " /></a>
|
||||||
<a xlink:href="function?function=VolumeUp"><path id="path3695" style="fill:rgba(0,0,0,0);stroke:none;" d="M 28.308594 347.92383 L 28.308594 436.94336 L 115.93164 436.94336 L 115.93164 347.92383 L 28.308594 347.92383 z " onclick="volumeup" /></a>
|
<a xlink:href="function?function=VolumeUp"><path id="path3695" style="fill:rgba(0,0,0,0);stroke:none;" d="M 28.308594 347.92383 L 28.308594 436.94336 L 115.93164 436.94336 L 115.93164 347.92383 L 28.308594 347.92383 z " /></a>
|
||||||
<a xlink:href="function?function=SmartHub"><path id="path1513" style="fill:rgba(0,0,0,0);stroke:none;" d="m 183.07236,513.22443 h -65.84819 v 70.95271 h 65.84819 z" onclick="smarthub" /></a>
|
<a xlink:href="function?function=SmartHub"><path id="path1513" style="fill:rgba(0,0,0,0);stroke:none;" d="m 183.07236,513.22443 h -65.84819 v 70.95271 h 65.84819 z" /></a>
|
||||||
<a xlink:href="function?function=Guide"><path id="path1515" style="fill:rgba(0,0,0,0);stroke:none;" d="m 267.44021,523.24455 h -79.35424 v 64.46748 h 79.35424 z" onclick="guide" /></a>
|
<a xlink:href="function?function=Guide"><path id="path1515" style="fill:rgba(0,0,0,0);stroke:none;" d="m 267.44021,523.24455 h -79.35424 v 64.46748 h 79.35424 z" /></a>
|
||||||
<a xlink:href="function?function=Menu"><path id="path1517" style="fill:rgba(0,0,0,0);stroke:none;" d="M 113.82824,523.24455 H 34.474003 v 64.46748 h 79.354237 z" onclick="menu" /></a>
|
<a xlink:href="function?function=Menu"><path id="path1517" style="fill:rgba(0,0,0,0);stroke:none;" d="M 113.82824,523.24455 H 34.474003 v 64.46748 h 79.354237 z" /></a>
|
||||||
<a xlink:href="function?function=Tools"><path id="path1519" style="fill:rgba(0,0,0,0);stroke:none;" d="M 113.82824,587.71203 H 34.474003 v 64.46748 h 79.354237 z" onclick="tools" /></a>
|
<a xlink:href="function?function=Tools"><path id="path1519" style="fill:rgba(0,0,0,0);stroke:none;" d="M 113.82824,587.71203 H 34.474003 v 64.46748 h 79.354237 z" /></a>
|
||||||
<a xlink:href="function?function=Info"><path id="path1521" style="fill:rgba(0,0,0,0);stroke:none;" d="m 267.44021,587.71203 h -79.35424 v 64.46748 h 79.35424 z" onclick="info" /></a>
|
<a xlink:href="function?function=Info"><path id="path1521" style="fill:rgba(0,0,0,0);stroke:none;" d="m 267.44021,587.71203 h -79.35424 v 64.46748 h 79.35424 z" /></a>
|
||||||
<a xlink:href="function?function=CursorUp"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1545" width="74.184525" height="71.952538" x="113.86485" y="587.74866" onclick="up" /></a>
|
<a xlink:href="function?function=CursorUp"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1545" width="74.184525" height="71.952538" x="113.86485" y="587.74866" /></a>
|
||||||
<a xlink:href="function?function=CursorDown"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1627" width="74.184525" height="71.952538" x="113.17372" y="725.35107" onclick="down" /></a>
|
<a xlink:href="function?function=CursorDown"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1627" width="74.184525" height="71.952538" x="113.17372" y="725.35107" /></a>
|
||||||
<a xlink:href="function?function=CursorRight"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1629" width="81.755196" height="71.884422" x="188.08344" y="659.73523" onclick="right" /></a>
|
<a xlink:href="function?function=CursorRight"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1629" width="81.755196" height="71.884422" x="188.08344" y="659.73523" /></a>
|
||||||
<a xlink:href="function?function=CursorLeft"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1631" width="85.428856" height="71.852524" x="28.386009" y="659.75116" onclick="left" /></a>
|
<a xlink:href="function?function=CursorLeft"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect1631" width="85.428856" height="71.852524" x="28.386009" y="659.75116" /></a>
|
||||||
<a xlink:href="function?function=Exit"><path id="path1633" style="fill:rgba(0,0,0,0);stroke:none;" d="m 269.83862,731.61963 h -79.35424 v 64.46748 h 79.35424 z" onclick="exit" /></a>
|
<a xlink:href="function?function=Exit"><path id="path1633" style="fill:rgba(0,0,0,0);stroke:none;" d="m 269.83862,731.61963 h -79.35424 v 64.46748 h 79.35424 z" /></a>
|
||||||
<a xlink:href="function?function=Return"><path id="path1635" style="fill:rgba(0,0,0,0);stroke:none;" d="M 113.81487,731.6037 H 34.460625 v 64.46748 h 79.354245 z" onclick="return" /></a>
|
<a xlink:href="function?function=Return"><path id="path1635" style="fill:rgba(0,0,0,0);stroke:none;" d="M 113.81487,731.6037 H 34.460625 v 64.46748 h 79.354245 z" /></a>
|
||||||
<a xlink:href="function?function=Rewind"><path id="rect1659" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 898.05859 L 33.228516 898.05859 L 33.228516 949.05273 L 92.380859 949.05273 L 92.380859 898.05859 z " onclick="rewind" /></a>
|
<a xlink:href="function?function=Rewind"><path id="rect1659" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 898.05859 L 33.228516 898.05859 L 33.228516 949.05273 L 92.380859 949.05273 L 92.380859 898.05859 z " /></a>
|
||||||
<a xlink:href="function?function=Play"><path id="path2351" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 898.05859 L 92.380859 949.05273 L 151.5332 949.05273 L 151.5332 898.05859 L 92.380859 898.05859 z " onclick="play" /></a>
|
<a xlink:href="function?function=Play"><path id="path2351" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 898.05859 L 92.380859 949.05273 L 151.5332 949.05273 L 151.5332 898.05859 L 92.380859 898.05859 z " /></a>
|
||||||
<a xlink:href="function?function=Pause"><path id="path2348" style="fill:rgba(0,0,0,0);stroke:none;" d="M 151.5332 898.05859 L 151.5332 949.05273 L 210.68555 949.05273 L 210.68555 898.05859 L 151.5332 898.05859 z " onclick="pause" /></a>
|
<a xlink:href="function?function=Pause"><path id="path2348" style="fill:rgba(0,0,0,0);stroke:none;" d="M 151.5332 898.05859 L 151.5332 949.05273 L 210.68555 949.05273 L 210.68555 898.05859 L 151.5332 898.05859 z " /></a>
|
||||||
<a xlink:href="function?function=Fastforward"><path id="path2345" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 898.05859 L 210.68555 949.05273 L 269.83789 949.05273 L 269.83789 898.05859 L 210.68555 898.05859 z " onclick="fastforward" /></a>
|
<a xlink:href="function?function=Fastforward"><path id="path2345" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 898.05859 L 210.68555 949.05273 L 269.83789 949.05273 L 269.83789 898.05859 L 210.68555 898.05859 z " /></a>
|
||||||
<a xlink:href="function?function=EManual"><path id="path2324" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 847.06445 L 33.228516 847.06445 L 33.228516 898.05859 L 92.380859 898.05859 L 92.380859 847.06445 z " onclick="EManual" /></a>
|
<a xlink:href="function?function=EManual"><path id="path2324" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 847.06445 L 33.228516 847.06445 L 33.228516 898.05859 L 92.380859 898.05859 L 92.380859 847.06445 z " /></a>
|
||||||
<a xlink:href="function?function=Sports"><path id="path2336" style="fill:rgba(0,0,0,0);stroke:none;" d="M 151.5332 847.06445 L 92.380859 847.06445 L 92.380859 898.05859 L 151.5332 898.05859 L 151.5332 847.06445 z " onclick="sports" /></a>
|
<a xlink:href="function?function=Sports"><path id="path2336" style="fill:rgba(0,0,0,0);stroke:none;" d="M 151.5332 847.06445 L 92.380859 847.06445 L 92.380859 898.05859 L 151.5332 898.05859 L 151.5332 847.06445 z " /></a>
|
||||||
<a xlink:href="function?function=CC"><path id="path2339" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 847.06445 L 151.5332 847.06445 L 151.5332 898.05859 L 210.68555 898.05859 L 210.68555 847.06445 z " onclick="CC" /></a>
|
<a xlink:href="function?function=CC"><path id="path2339" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 847.06445 L 151.5332 847.06445 L 151.5332 898.05859 L 210.68555 898.05859 L 210.68555 847.06445 z " /></a>
|
||||||
<a xlink:href="function?function=Stop"><path id="path2342" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 847.06445 L 210.68555 898.05859 L 269.83789 898.05859 L 269.83789 847.06445 L 210.68555 847.06445 z " onclick="stop" /></a>
|
<a xlink:href="function?function=Stop"><path id="path2342" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 847.06445 L 210.68555 898.05859 L 269.83789 898.05859 L 269.83789 847.06445 L 210.68555 847.06445 z " /></a>
|
||||||
<a xlink:href="function?function=A"><path id="path2321" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 796.08789 L 33.228516 796.08789 L 33.228516 847.06445 L 92.380859 847.06445 L 92.380859 796.08789 z " onclick="a" /></a>
|
<a xlink:href="function?function=A"><path id="path2321" style="fill:rgba(0,0,0,0);stroke:none;" d="M 92.380859 796.08789 L 33.228516 796.08789 L 33.228516 847.06445 L 92.380859 847.06445 L 92.380859 796.08789 z " /></a>
|
||||||
<a xlink:href="function?function=B"><path id="path2327" style="fill:rgba(0,0,0,0);stroke:none;" d="M 151.5332 796.08789 L 92.380859 796.08789 L 92.380859 847.06445 L 151.5332 847.06445 L 151.5332 796.08789 z " onclick="b" /></a>
|
<a xlink:href="function?function=B"><path id="path2327" style="fill:rgba(0,0,0,0);stroke:none;" d="M 151.5332 796.08789 L 92.380859 796.08789 L 92.380859 847.06445 L 151.5332 847.06445 L 151.5332 796.08789 z " /></a>
|
||||||
<a xlink:href="function?function=C"><path id="path2330" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 796.08789 L 151.5332 796.08789 L 151.5332 847.06445 L 210.68555 847.06445 L 210.68555 796.08789 z " onclick="c" /></a>
|
<a xlink:href="function?function=C"><path id="path2330" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 796.08789 L 151.5332 796.08789 L 151.5332 847.06445 L 210.68555 847.06445 L 210.68555 796.08789 z " /></a>
|
||||||
<a xlink:href="function?function=D"><path id="path2333" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 796.08789 L 210.68555 847.06445 L 269.83789 847.06445 L 269.83789 796.08789 L 210.68555 796.08789 z " onclick="d" /></a>
|
<a xlink:href="function?function=D"><path id="path2333" style="fill:rgba(0,0,0,0);stroke:none;" d="M 210.68555 796.08789 L 210.68555 847.06445 L 269.83789 847.06445 L 269.83789 796.08789 L 210.68555 796.08789 z " /></a>
|
||||||
<a xlink:href="function?function=Enter"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect3842" width="73.543381" height="65.599915" x="113.81487" y="659.75116" onclick="enter" /></a>
|
<a xlink:href="function?function=Enter"><rect style="fill:rgba(0,0,0,0);stroke:none;" id="rect3842" width="73.543381" height="65.599915" x="113.81487" y="659.75116" /></a>
|
||||||
</g>
|
</g>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<object data="/static/@remote2_svg.name">
|
||||||
|
</object>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!--
|
||||||
<form method="POST" action="/function">
|
<form method="POST" action="/function">
|
||||||
<select name="function">
|
<select name="function">
|
||||||
@for function in Function::iter() {
|
@for function in Function::iter() {
|
||||||
@ -1082,5 +1086,6 @@ kl+J8KhFCNZFmyirVvZisdfPLEpgomBYkopyNgQ+rv8A/9k=
|
|||||||
</select>
|
</select>
|
||||||
<button>Submit</button>
|
<button>Submit</button>
|
||||||
</form>
|
</form>
|
||||||
|
-->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
Loading…
Reference in New Issue
Block a user