context menu 추가
This commit is contained in:
parent
97b2de382d
commit
f589ef74af
@ -54,6 +54,7 @@ import AdditionalColumnDelete from '@/components/canvas/modal/additionalfunction
|
|||||||
import AdditionalColumnEdit from '@/components/canvas/modal/additionalfunction/moduleadditional/AdditionalColumnEdit'
|
import AdditionalColumnEdit from '@/components/canvas/modal/additionalfunction/moduleadditional/AdditionalColumnEdit'
|
||||||
import AdditionalBundleDelete from '@/components/canvas/modal/additionalfunction/moduleadditional/AdditionalBundleDelete'
|
import AdditionalBundleDelete from '@/components/canvas/modal/additionalfunction/moduleadditional/AdditionalBundleDelete'
|
||||||
import AdditionalBundleEdit from '@/components/canvas/modal/additionalfunction/moduleadditional/AdditionalBundleEdit'
|
import AdditionalBundleEdit from '@/components/canvas/modal/additionalfunction/moduleadditional/AdditionalBundleEdit'
|
||||||
|
import CanvasContextMenu from '@/components/canvas/CanvasContextMenu'
|
||||||
|
|
||||||
export default function CanvasPage() {
|
export default function CanvasPage() {
|
||||||
const modalOption = useRecoilValue(modalState);
|
const modalOption = useRecoilValue(modalState);
|
||||||
@ -67,6 +68,9 @@ export default function CanvasPage() {
|
|||||||
<div className="canvas-content">
|
<div className="canvas-content">
|
||||||
<CanvasLayout menuValue={menuValue}/>
|
<CanvasLayout menuValue={menuValue}/>
|
||||||
</div>
|
</div>
|
||||||
|
{/* 우클릭 context menu */}
|
||||||
|
<CanvasContextMenu/>
|
||||||
|
|
||||||
{/* 패널 배치 집계 */}
|
{/* 패널 배치 집계 */}
|
||||||
{/* <Penal01/> */}
|
{/* <Penal01/> */}
|
||||||
{/* <Penal02/> */}
|
{/* <Penal02/> */}
|
||||||
@ -169,7 +173,7 @@ export default function CanvasPage() {
|
|||||||
{/* <AdditionalColumnDelete/> */}
|
{/* <AdditionalColumnDelete/> */}
|
||||||
{/* <AdditionalColumnEdit/> */}
|
{/* <AdditionalColumnEdit/> */}
|
||||||
{/* <AdditionalBundleDelete/> */}
|
{/* <AdditionalBundleDelete/> */}
|
||||||
<AdditionalBundleEdit/>
|
{/* <AdditionalBundleEdit/> */}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
22
src/components/canvas/CanvasContextMenu.jsx
Normal file
22
src/components/canvas/CanvasContextMenu.jsx
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
export default function CanvasContextMenu() {
|
||||||
|
return(
|
||||||
|
<div className="context-menu-wrap" style={{position: 'absolute', top: '200px', left: '200px'}}>
|
||||||
|
<ul>
|
||||||
|
<li>屋根材の配置</li>
|
||||||
|
<li>屋根材の削除</li>
|
||||||
|
<li>材全体を削除</li>
|
||||||
|
<li>選択∙移動</li>
|
||||||
|
<li>外壁の削除</li>
|
||||||
|
</ul>
|
||||||
|
<ul>
|
||||||
|
<li>サイズ変更</li>
|
||||||
|
<li>補助線移動(M)</li>
|
||||||
|
<li>補助線のコピー(C)</li>
|
||||||
|
<li>補助線削除(D)</li>
|
||||||
|
<li>線垂直二等分線</li>
|
||||||
|
<li>補助線切削</li>
|
||||||
|
<li>補助線全体を削除</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
}
|
||||||
106
src/styles/_canvasside.scss
Normal file
106
src/styles/_canvasside.scss
Normal file
@ -0,0 +1,106 @@
|
|||||||
|
// 패널 배치 집계
|
||||||
|
.penal-wrap{
|
||||||
|
position: fixed;
|
||||||
|
top: 200px;
|
||||||
|
left: 50px;
|
||||||
|
z-index: 999999;
|
||||||
|
width: 237px;
|
||||||
|
height: 40px;
|
||||||
|
line-height: 40px;
|
||||||
|
background-color: #fff;
|
||||||
|
border: 1px solid #DFDFDF;
|
||||||
|
padding: 0 34px 0 10px;
|
||||||
|
border-radius: 2px;
|
||||||
|
box-shadow: 0px 7px 14px 0px rgba(0, 0, 0, 0.05);
|
||||||
|
cursor: pointer;
|
||||||
|
&::before{
|
||||||
|
content: '';
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
right: 12px;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
width: 10px;
|
||||||
|
height: 6px;
|
||||||
|
background: url(../../public/static/images/canvas/penal_arr.svg)no-repeat center;
|
||||||
|
background-size: cover;
|
||||||
|
}
|
||||||
|
h2{
|
||||||
|
font-size: 12px;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #3D3D3D;
|
||||||
|
}
|
||||||
|
.penal-table-wrap{
|
||||||
|
display: none;
|
||||||
|
position: absolute;
|
||||||
|
top: 100%;
|
||||||
|
left: -1px;
|
||||||
|
min-width: calc(100% + 2px);
|
||||||
|
background-color: #3D3D3D;
|
||||||
|
border: 1px solid #3D3D3D;
|
||||||
|
padding: 20px;
|
||||||
|
.penal-table{
|
||||||
|
table-layout: fixed;
|
||||||
|
border-collapse: collapse;
|
||||||
|
thead{
|
||||||
|
th{
|
||||||
|
text-align: center;
|
||||||
|
background-color:rgba(255, 255, 255, 0.05);
|
||||||
|
font-size: 12px;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #fff;
|
||||||
|
border: 1px solid #505050;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
tbody{
|
||||||
|
td{
|
||||||
|
font-size: 12px;
|
||||||
|
color: #fff;
|
||||||
|
font-weight: 400;
|
||||||
|
text-align: center;
|
||||||
|
padding: 0 10px;
|
||||||
|
border: 1px solid #505050;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&.act{
|
||||||
|
border: 1px solid #3D3D3D;
|
||||||
|
background-color: #3D3D3D;
|
||||||
|
h2{
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
&::before{
|
||||||
|
background: url(../../public/static/images/canvas/penal_arr_white.svg)no-repeat center;
|
||||||
|
}
|
||||||
|
.penal-table-wrap{
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// context menu
|
||||||
|
.context-menu-wrap{
|
||||||
|
min-width: 238px;
|
||||||
|
border-radius: 4px;
|
||||||
|
border: 1px solid #E9E9E9;
|
||||||
|
background: #FFF;
|
||||||
|
box-shadow: 0px 6px 14px 0px rgba(0, 0, 0, 0.05);
|
||||||
|
ul{
|
||||||
|
padding: 17px 0;
|
||||||
|
border-bottom: 1px solid #E9E9E9;
|
||||||
|
&:last-child{
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
li{
|
||||||
|
padding: 4px 30px;
|
||||||
|
cursor: pointer;
|
||||||
|
font-size: 12px;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #101010;
|
||||||
|
&:hover{
|
||||||
|
color: #fff;
|
||||||
|
background-color: #0D99FF;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -850,83 +850,3 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 패널 배치 집계
|
|
||||||
|
|
||||||
.penal-wrap{
|
|
||||||
position: fixed;
|
|
||||||
top: 200px;
|
|
||||||
left: 50px;
|
|
||||||
z-index: 999999;
|
|
||||||
width: 237px;
|
|
||||||
height: 40px;
|
|
||||||
line-height: 40px;
|
|
||||||
background-color: #fff;
|
|
||||||
border: 1px solid #DFDFDF;
|
|
||||||
padding: 0 34px 0 10px;
|
|
||||||
border-radius: 2px;
|
|
||||||
box-shadow: 0px 7px 14px 0px rgba(0, 0, 0, 0.05);
|
|
||||||
cursor: pointer;
|
|
||||||
&::before{
|
|
||||||
content: '';
|
|
||||||
position: absolute;
|
|
||||||
top: 50%;
|
|
||||||
right: 12px;
|
|
||||||
transform: translateY(-50%);
|
|
||||||
width: 10px;
|
|
||||||
height: 6px;
|
|
||||||
background: url(../../public/static/images/canvas/penal_arr.svg)no-repeat center;
|
|
||||||
background-size: cover;
|
|
||||||
}
|
|
||||||
h2{
|
|
||||||
font-size: 12px;
|
|
||||||
font-weight: 500;
|
|
||||||
color: #3D3D3D;
|
|
||||||
}
|
|
||||||
.penal-table-wrap{
|
|
||||||
display: none;
|
|
||||||
position: absolute;
|
|
||||||
top: 100%;
|
|
||||||
left: -1px;
|
|
||||||
min-width: calc(100% + 2px);
|
|
||||||
background-color: #3D3D3D;
|
|
||||||
border: 1px solid #3D3D3D;
|
|
||||||
padding: 20px;
|
|
||||||
.penal-table{
|
|
||||||
table-layout: fixed;
|
|
||||||
border-collapse: collapse;
|
|
||||||
thead{
|
|
||||||
th{
|
|
||||||
text-align: center;
|
|
||||||
background-color:rgba(255, 255, 255, 0.05);
|
|
||||||
font-size: 12px;
|
|
||||||
font-weight: 500;
|
|
||||||
color: #fff;
|
|
||||||
border: 1px solid #505050;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
tbody{
|
|
||||||
td{
|
|
||||||
font-size: 12px;
|
|
||||||
color: #fff;
|
|
||||||
font-weight: 400;
|
|
||||||
text-align: center;
|
|
||||||
padding: 0 10px;
|
|
||||||
border: 1px solid #505050;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
&.act{
|
|
||||||
border: 1px solid #3D3D3D;
|
|
||||||
background-color: #3D3D3D;
|
|
||||||
h2{
|
|
||||||
color: #fff;
|
|
||||||
}
|
|
||||||
&::before{
|
|
||||||
background: url(../../public/static/images/canvas/penal_arr_white.svg)no-repeat center;
|
|
||||||
}
|
|
||||||
.penal-table-wrap{
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,3 +1,4 @@
|
|||||||
@import '_contents.scss';
|
@import '_contents.scss';
|
||||||
@import '_modal.scss';
|
@import '_modal.scss';
|
||||||
@import '_table.scss';
|
@import '_table.scss';
|
||||||
|
@import '_canvasside.scss';
|
||||||
Loading…
x
Reference in New Issue
Block a user