diff --git a/design/dide/Word/Coarse arithmetics/$alu.svg b/design/dide/Word/Coarse arithmetics/$alu.svg
index 6de187b..0b000ce 100644
--- a/design/dide/Word/Coarse arithmetics/$alu.svg
+++ b/design/dide/Word/Coarse arithmetics/$alu.svg
@@ -26,7 +26,7 @@
-
+
diff --git a/design/dide/Word/Coarse arithmetics/$fa.svg b/design/dide/Word/Coarse arithmetics/$fa.svg
index a7415b3..8830711 100644
--- a/design/dide/Word/Coarse arithmetics/$fa.svg
+++ b/design/dide/Word/Coarse arithmetics/$fa.svg
@@ -31,7 +31,7 @@
-
+
\ No newline at end of file
diff --git a/design/dide/Word/Finite state machines/$fsm.svg b/design/dide/Word/Finite state machines/$fsm.svg
index aa3f0f8..f808df6 100644
--- a/design/dide/Word/Finite state machines/$fsm.svg
+++ b/design/dide/Word/Finite state machines/$fsm.svg
@@ -14,7 +14,7 @@
-
+
diff --git a/design/dide/Word/Memories/$mem.svg b/design/dide/Word/Memories/$mem.svg
index 09f7cf4..7b4636a 100644
--- a/design/dide/Word/Memories/$mem.svg
+++ b/design/dide/Word/Memories/$mem.svg
@@ -22,6 +22,6 @@
-
+
\ No newline at end of file
diff --git a/design/dide/Word/Memories/$mem_v2.svg b/design/dide/Word/Memories/$mem_v2.svg
index f841a2b..3d9292e 100644
--- a/design/dide/Word/Memories/$mem_v2.svg
+++ b/design/dide/Word/Memories/$mem_v2.svg
@@ -20,7 +20,7 @@
-
+
diff --git a/design/dide/Word/Memories/$memrd.svg b/design/dide/Word/Memories/$memrd.svg
index 82ab2d8..9f2a526 100644
--- a/design/dide/Word/Memories/$memrd.svg
+++ b/design/dide/Word/Memories/$memrd.svg
@@ -14,6 +14,6 @@
-
+
\ No newline at end of file
diff --git a/design/dide/Word/Memories/$memrd_v2.svg b/design/dide/Word/Memories/$memrd_v2.svg
index d8d8b12..fa6dca2 100644
--- a/design/dide/Word/Memories/$memrd_v2.svg
+++ b/design/dide/Word/Memories/$memrd_v2.svg
@@ -18,6 +18,6 @@
-
+
\ No newline at end of file
diff --git a/design/dide/Word/Memories/$memwr.svg b/design/dide/Word/Memories/$memwr.svg
index 4255823..3414097 100644
--- a/design/dide/Word/Memories/$memwr.svg
+++ b/design/dide/Word/Memories/$memwr.svg
@@ -14,6 +14,6 @@
-
+
\ No newline at end of file
diff --git a/design/dide/Word/Memories/$memwr_v2.svg b/design/dide/Word/Memories/$memwr_v2.svg
index 7b94aaf..a720cd2 100644
--- a/design/dide/Word/Memories/$memwr_v2.svg
+++ b/design/dide/Word/Memories/$memwr_v2.svg
@@ -18,6 +18,6 @@
-
+
\ No newline at end of file
diff --git a/design/dide/Word/Registers/$adff.svg b/design/dide/Word/Registers/$adff.svg
index 79130a7..12a87c0 100644
--- a/design/dide/Word/Registers/$adff.svg
+++ b/design/dide/Word/Registers/$adff.svg
@@ -15,17 +15,17 @@
-
-
-
-
+
+
+
+
-
+
diff --git a/design/dide/Word/Registers/$adffe.svg b/design/dide/Word/Registers/$adffe.svg
index 877b3dc..28893b3 100644
--- a/design/dide/Word/Registers/$adffe.svg
+++ b/design/dide/Word/Registers/$adffe.svg
@@ -15,21 +15,21 @@
-
-
-
-
+
+
+
+
-
+
-
+
-
+
\ No newline at end of file
diff --git a/design/dide/Word/Registers/$adlatch.svg b/design/dide/Word/Registers/$adlatch.svg
index 02d8aef..e41e872 100644
--- a/design/dide/Word/Registers/$adlatch.svg
+++ b/design/dide/Word/Registers/$adlatch.svg
@@ -34,15 +34,15 @@
-
-
-
+
+
+
-
-
+
+
-
+
\ No newline at end of file
diff --git a/design/dide/Word/Registers/$aldff.svg b/design/dide/Word/Registers/$aldff.svg
index aef3329..3699185 100644
--- a/design/dide/Word/Registers/$aldff.svg
+++ b/design/dide/Word/Registers/$aldff.svg
@@ -17,10 +17,10 @@
-
-
-
-
+
+
+
+
@@ -28,7 +28,7 @@
-
-
+
+
\ No newline at end of file
diff --git a/design/dide/Word/Registers/$aldffe.svg b/design/dide/Word/Registers/$aldffe.svg
index bf30ef9..3863442 100644
--- a/design/dide/Word/Registers/$aldffe.svg
+++ b/design/dide/Word/Registers/$aldffe.svg
@@ -38,10 +38,10 @@
-
-
-
-
+
+
+
+
@@ -49,11 +49,11 @@
-
+
-
-
+
+
\ No newline at end of file
diff --git a/design/dide/Word/Registers/$dff.svg b/design/dide/Word/Registers/$dff.svg
index 539387e..1b4c54e 100644
--- a/design/dide/Word/Registers/$dff.svg
+++ b/design/dide/Word/Registers/$dff.svg
@@ -40,13 +40,13 @@
-
-
-
+
+
+
-
+
@@ -64,13 +64,13 @@
-
-
-
+
+
+
-
+
diff --git a/design/dide/Word/Registers/$dffe.svg b/design/dide/Word/Registers/$dffe.svg
index ae9c645..6573443 100644
--- a/design/dide/Word/Registers/$dffe.svg
+++ b/design/dide/Word/Registers/$dffe.svg
@@ -15,10 +15,10 @@
-
-
-
-
+
+
+
+
@@ -27,6 +27,6 @@
-
+
\ No newline at end of file
diff --git a/design/dide/Word/Registers/$dffsr.svg b/design/dide/Word/Registers/$dffsr.svg
index 823be04..56e35ec 100644
--- a/design/dide/Word/Registers/$dffsr.svg
+++ b/design/dide/Word/Registers/$dffsr.svg
@@ -15,10 +15,10 @@
-
-
-
-
+
+
+
+
@@ -26,8 +26,8 @@
-
-
+
+
diff --git a/design/dide/Word/Registers/$dffsre.svg b/design/dide/Word/Registers/$dffsre.svg
index bbf5f14..e21d7e5 100644
--- a/design/dide/Word/Registers/$dffsre.svg
+++ b/design/dide/Word/Registers/$dffsre.svg
@@ -38,21 +38,21 @@
-
-
-
-
+
+
+
+
-
+
-
-
+
+
diff --git a/design/dide/Word/Registers/$dlatch.svg b/design/dide/Word/Registers/$dlatch.svg
index 4d78866..7d6d3db 100644
--- a/design/dide/Word/Registers/$dlatch.svg
+++ b/design/dide/Word/Registers/$dlatch.svg
@@ -14,12 +14,12 @@
-
-
-
+
+
+
-
+
\ No newline at end of file
diff --git a/design/dide/Word/Registers/$dlatchsr.svg b/design/dide/Word/Registers/$dlatchsr.svg
index 9150aa4..bd42a5f 100644
--- a/design/dide/Word/Registers/$dlatchsr.svg
+++ b/design/dide/Word/Registers/$dlatchsr.svg
@@ -15,14 +15,14 @@
-
-
-
-
+
+
+
+
-
-
+
+
diff --git a/design/dide/Word/Registers/$sdff.svg b/design/dide/Word/Registers/$sdff.svg
index 70036df..d65f840 100644
--- a/design/dide/Word/Registers/$sdff.svg
+++ b/design/dide/Word/Registers/$sdff.svg
@@ -15,19 +15,19 @@
-
-
-
-
+
+
+
+
-
+
-
+
\ No newline at end of file
diff --git a/design/dide/Word/Registers/$sdffce.svg b/design/dide/Word/Registers/$sdffce.svg
index c5fda74..8904853 100644
--- a/design/dide/Word/Registers/$sdffce.svg
+++ b/design/dide/Word/Registers/$sdffce.svg
@@ -15,21 +15,21 @@
-
-
-
-
+
+
+
+
-
+
-
+
-
+
\ No newline at end of file
diff --git a/design/dide/Word/Registers/$sdffe.svg b/design/dide/Word/Registers/$sdffe.svg
index d5b4b8a..d24e618 100644
--- a/design/dide/Word/Registers/$sdffe.svg
+++ b/design/dide/Word/Registers/$sdffe.svg
@@ -15,21 +15,21 @@
-
-
-
-
+
+
+
+
-
+
-
+
-
+
\ No newline at end of file
diff --git a/design/dide/Word/Registers/$sr.svg b/design/dide/Word/Registers/$sr.svg
index d37842f..b5caad8 100644
--- a/design/dide/Word/Registers/$sr.svg
+++ b/design/dide/Word/Registers/$sr.svg
@@ -28,12 +28,12 @@
-
-
+
+
-
+
-
+
\ No newline at end of file
diff --git a/public/dide.skin b/public/dide.skin
index 4a3212a..7b2d4fc 100644
Binary files a/public/dide.skin and b/public/dide.skin differ
diff --git a/public/test.skin b/public/test.skin
new file mode 100644
index 0000000..2f56e96
Binary files /dev/null and b/public/test.skin differ
diff --git a/src/components/setting/color.js b/src/components/setting/color.js
index 1e02009..81c8bf6 100644
--- a/src/components/setting/color.js
+++ b/src/components/setting/color.js
@@ -1,7 +1,7 @@
import { reactive } from 'vue';
import i18n from '@/i18n';
-import { parseColor } from '@/hook/color';
+import { increaseBrightness, parseColor } from '@/hook/color';
import { globalSetting } from '@/hook/global';
const { t, locale } = i18n.global;
@@ -148,7 +148,10 @@ export function onCellColorChange(colorString) {
const index = colorManager.currentGerneralIndex;
const item = colorManager.generals[index];
const borderColor = `rgb(${r}, ${g}, ${b})`;
- const fillColor = `rgb(${r}, ${g}, ${b})`;
+
+ const { ir, ig, ib } = increaseBrightness({ r, g, b }, 10);
+ const fillColor = `rgb(${ir}, ${ig}, ${ib})`;
+
const rootStyles = getComputedStyle(document.documentElement);
document.documentElement.style.setProperty(`--${item.type}-color`, borderColor);
document.documentElement.style.setProperty(`--${item.type}-fill-color`, fillColor);
diff --git a/src/hook/render/constant.js b/src/hook/render/constant.js
index 81087ce..83100bd 100644
--- a/src/hook/render/constant.js
+++ b/src/hook/render/constant.js
@@ -29,14 +29,23 @@ export class ConstantRender {
* @description 将 elknode 关于 port 的数据添加为 d3 数据项目
* @param {ElkNode} node
*/
- addAsD3DataItem(node) {
+ addAsD3DataItem(node) {
+ let renderString = parseInt(node.name, 2);
+ if (isNaN(renderString)) {
+ if (node.name.toString().startsWith('x')) {
+ renderString = `${node.name.toString().length}{1'bx}`;
+ } else {
+ renderString = node.name.toString();
+ }
+ }
+
this.data.push({
id: node.id,
x: node.x,
y: node.y,
width: node.width,
height: node.height,
- text: node.name,
+ text: renderString,
rx: 3,
ry: 3
});
diff --git a/src/hook/render/layout.js b/src/hook/render/layout.js
index f04123a..a1f3288 100644
--- a/src/hook/render/layout.js
+++ b/src/hook/render/layout.js
@@ -218,10 +218,18 @@ export class Module {
// 常数
// 如果是常数,需要先创建代表常数的节点,常数一定是器件的输入,而非输出
-
// 估算常量的宽度
- const binary = parseInt(wireId, 2);
- const constantWidth = 12 * 0.6 * wireId.toString().length + 10;
+ let renderString = parseInt(wireId, 2);
+ if (isNaN(renderString)) {
+ if (wireId.toString().startsWith('x')) {
+ renderString = `${wireId.toString().length}{1'bx}`;
+ } else {
+ renderString = wireId.toString();
+ }
+ }
+
+ const constantWidth = Math.max(12 * 0.6 * renderString.toString().length + 10, LAYOUT_CONSTANT.CONSTANT_WIDTH);
+ console.log(constantWidth);
const constantConnection = {
id: dotConnect(id, '0'),