mirror of
https://github.com/GraphiteEditor/Graphite.git
synced 2025-12-23 10:11:54 +00:00
Add camelcase rule, import Error type from JS and rename get_inner_color to inner. (#44)
* Add camelcase rule to .eslintrc.js * Import Error type from JS, rename crate::wrappers::Color::get_inner_color to crate::wrappers::Color::inner
This commit is contained in:
parent
0156813dec
commit
fe111a6684
6 changed files with 25 additions and 7 deletions
|
|
@ -19,5 +19,6 @@ module.exports = {
|
|||
"linebreak-style": ["error", "unix"],
|
||||
indent: ["error", "tab"],
|
||||
quotes: ["error", "double"],
|
||||
camelcase: ["error", { ignoreImports: true, ignoreDestructuring: true }]
|
||||
},
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
mod shims;
|
||||
pub mod utils;
|
||||
pub mod viewport;
|
||||
pub mod window;
|
||||
|
|
|
|||
10
client/web/wasm/src/shims.rs
Normal file
10
client/web/wasm/src/shims.rs
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
use wasm_bindgen::prelude::*;
|
||||
|
||||
#[wasm_bindgen]
|
||||
extern "C" {
|
||||
#[derive(Clone, Debug)]
|
||||
pub type Error;
|
||||
|
||||
#[wasm_bindgen(constructor)]
|
||||
pub fn new(msg: &str) -> Error;
|
||||
}
|
||||
|
|
@ -1,3 +1,4 @@
|
|||
use crate::shims::Error;
|
||||
use crate::wrappers::{translate_tool, Color};
|
||||
use graphite_editor_core::tools::ToolState;
|
||||
use wasm_bindgen::prelude::*;
|
||||
|
|
@ -8,10 +9,10 @@ pub static mut TOOL_STATE: ToolState = ToolState::default();
|
|||
#[wasm_bindgen]
|
||||
pub fn select_tool(tool: String) -> Result<(), JsValue> {
|
||||
let tool_state = unsafe { &mut TOOL_STATE };
|
||||
if let Some(tool) = translate_tool(tool.as_str()) {
|
||||
if let Some(tool) = translate_tool(&tool) {
|
||||
Ok(tool_state.select_tool(tool))
|
||||
} else {
|
||||
Err(JsValue::from(format!("Couldn't select {} because it was not recognized as a valid tool", tool)))
|
||||
Err(Error::new(&format!("Couldn't select {} because it was not recognized as a valid tool", tool)).into())
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -25,6 +26,6 @@ pub fn on_mouse_move(x: u32, y: u32) {
|
|||
#[wasm_bindgen]
|
||||
pub fn update_colors(primary_color: Color, secondary_color: Color) {
|
||||
let tool_state = unsafe { &mut TOOL_STATE };
|
||||
tool_state.set_primary_color(primary_color.get_inner_color());
|
||||
tool_state.set_secondary_color(secondary_color.get_inner_color());
|
||||
tool_state.set_primary_color(primary_color.inner());
|
||||
tool_state.set_secondary_color(secondary_color.inner());
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
use crate::shims::Error;
|
||||
use graphite_editor_core::tools::{SelectAppendMode, ToolType};
|
||||
use graphite_editor_core::Color as InnerColor;
|
||||
use wasm_bindgen::prelude::*;
|
||||
|
|
@ -8,13 +9,16 @@ pub struct Color(InnerColor);
|
|||
#[wasm_bindgen]
|
||||
impl Color {
|
||||
#[wasm_bindgen(constructor)]
|
||||
pub fn new(red: f32, green: f32, blue: f32, alpha: f32) -> Self {
|
||||
Self(InnerColor::from_rgbaf32(red, green, blue, alpha).unwrap_throw())
|
||||
pub fn new(red: f32, green: f32, blue: f32, alpha: f32) -> Result<Color, JsValue> {
|
||||
match InnerColor::from_rgbaf32(red, green, blue, alpha) {
|
||||
Ok(v) => Ok(Self(v)),
|
||||
Err(e) => Err(Error::new(&e.to_string()).into()),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl Color {
|
||||
pub fn get_inner_color(&self) -> InnerColor {
|
||||
pub fn inner(&self) -> InnerColor {
|
||||
self.0
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@ impl Color {
|
|||
}
|
||||
Ok(color)
|
||||
}
|
||||
|
||||
const fn from_unsafe(red: f32, green: f32, blue: f32) -> Color {
|
||||
Color { red, green, blue, alpha: 1. }
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue