NEW: homepage and UserManual
Change-Id: Iecdb4d0151a0cf76614548aee69e525ad7e1fe68 (cherry picked from commit 4c7403683b334e42d8676a933012e2133cd1ce7f)
This commit is contained in:
parent
3b021d4443
commit
f44a0b88d9
|
@ -78,7 +78,10 @@ var LangText={
|
|||
"t83":"2, Close all open Bambu Studio",
|
||||
"t84":"3, Delete all files under the plug-in directory",
|
||||
"t85":"4, Reopen Bambu studio and install the plug-in again",
|
||||
"t86":"Close"
|
||||
"t86":"Close",
|
||||
"t87":"User manual",
|
||||
"t88":"clear",
|
||||
"t89":"show in explorer"
|
||||
},
|
||||
"zh_CN":{
|
||||
"t1":"欢迎使用Bambu Studio",
|
||||
|
@ -159,7 +162,10 @@ var LangText={
|
|||
"t83":"2, 关闭所有Bambu Studio",
|
||||
"t84":"3, 删除插件所在目录下的所有文件",
|
||||
"t85":"4, 重新启动Bambu Studio并尝试安装插件",
|
||||
"t86":"关闭"
|
||||
"t86":"关闭",
|
||||
"t87":"使用引导",
|
||||
"t88":"清除",
|
||||
"t89":"打开文件所在路径"
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -33,6 +33,12 @@ html, body {
|
|||
text-decoration:underline;
|
||||
}
|
||||
|
||||
/*------------------*/
|
||||
#DebugText
|
||||
{
|
||||
height:30px;
|
||||
}
|
||||
|
||||
/*------------------*/
|
||||
body
|
||||
{
|
||||
|
@ -208,6 +214,7 @@ body
|
|||
padding: 0px 40px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
#MenuArea
|
||||
|
@ -274,9 +281,31 @@ body
|
|||
flex-direction: column;
|
||||
}
|
||||
|
||||
#RecentTitleBlock
|
||||
{
|
||||
display:flex;
|
||||
align-items: center;
|
||||
padding: 6px;
|
||||
border-bottom: 1px solid #D9D9D9;
|
||||
}
|
||||
|
||||
#RecentClearAllBtn
|
||||
{
|
||||
border: 1px solid #C4C4C4;
|
||||
padding: 0px 10px;
|
||||
border-radius: 6px;
|
||||
line-height: 26px;
|
||||
height: 26px;
|
||||
margin-left: 20px;
|
||||
cursor: pointer;
|
||||
background-color: #00AE42;
|
||||
color: #fff;
|
||||
display: inline;
|
||||
}
|
||||
|
||||
#RecentTitle
|
||||
{
|
||||
border-bottom: 1px solid #D9D9D9;
|
||||
|
||||
}
|
||||
|
||||
#FileList
|
||||
|
@ -331,6 +360,68 @@ body
|
|||
color: #A8A8A8;
|
||||
}
|
||||
|
||||
#recnet_context_menu
|
||||
{
|
||||
position: absolute;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px;
|
||||
min-width: 100px;
|
||||
top: 800px;
|
||||
border: 1px solid #C5C5C5;
|
||||
border-radius: 6px;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.CT_Item
|
||||
{
|
||||
line-height:30px;
|
||||
padding: 0px 10px;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.CT_Item:hover
|
||||
{
|
||||
background-color: #E9E9E9;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
|
||||
.CT_Icon
|
||||
{
|
||||
margin-right: 6px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
}
|
||||
|
||||
.CT_Delete
|
||||
{
|
||||
background: url("../img/delete.png");
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.CT_Explore
|
||||
{
|
||||
background: url("../img/folder.png");
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
|
||||
.CT_Seperate
|
||||
{
|
||||
border-bottom:1px solid #C5C5C5;
|
||||
}
|
||||
|
||||
.CT_Text
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/*--------Mall------*/
|
||||
#MallBoard
|
||||
{
|
||||
|
@ -363,4 +454,59 @@ body
|
|||
width: 100%;
|
||||
height: 95%;
|
||||
border: 1px solid #D9D9D9;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*---------Wiki----------*/
|
||||
#WikiGuideBigBoard
|
||||
{
|
||||
display:none;
|
||||
}
|
||||
|
||||
|
||||
#WikiGuideBoard
|
||||
{
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
align-content: flex-start;
|
||||
overflow-y: auto;
|
||||
padding: 50px;
|
||||
}
|
||||
|
||||
.GuideBlock
|
||||
{
|
||||
width: 320px;
|
||||
margin: 0px;
|
||||
margin: 0px 12px 30px 12px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.UG_IMG
|
||||
{
|
||||
width: 320px;
|
||||
height: 200px;
|
||||
}
|
||||
|
||||
.UG_IMG img
|
||||
{
|
||||
width: 320px;
|
||||
height: 200px;
|
||||
}
|
||||
|
||||
.UG_TITLE
|
||||
{
|
||||
font-size: 16px;
|
||||
line-height: 20px;
|
||||
width: 320px;
|
||||
margin-top: 6px;
|
||||
}
|
||||
|
||||
.UG_DESC
|
||||
{
|
||||
width: 320px;
|
||||
line-height: 18px;
|
||||
color: #C4C4C4;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 3.9 KiB |
Binary file not shown.
After Width: | Height: | Size: 2.7 KiB |
Binary file not shown.
After Width: | Height: | Size: 460 KiB |
Binary file not shown.
After Width: | Height: | Size: 341 KiB |
Binary file not shown.
After Width: | Height: | Size: 514 KiB |
|
@ -10,7 +10,7 @@
|
|||
<script type="text/javascript" src="../data/text.js"></script>
|
||||
<script type="text/javascript" src="js/json2.js"></script>
|
||||
<script type="text/javascript" src="js/globalapi.js"></script>
|
||||
<script type="text/javascript" src="js/home.js"></script>
|
||||
<script type="text/javascript" src="js/home.js"></script>
|
||||
</head>
|
||||
<body onLoad="OnInit()">
|
||||
<div id="LeftBoard">
|
||||
|
@ -39,8 +39,11 @@
|
|||
<div class="BtnIcon "><img class="LeftIcon" src="img/i2.png" /></div>
|
||||
<div class="trans" tid="t28">recent</div>
|
||||
</div>
|
||||
<div menu="wikiguide" class="BtnItem" onClick="GotoMenu('wikiguide')">
|
||||
<div class="BtnIcon "><img class="LeftIcon" src="img/i1.png" /></div>
|
||||
<div class="trans" tid="t87">UserGuide</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="RightBoard">
|
||||
|
@ -63,16 +66,21 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div id="DebugText"></div>
|
||||
|
||||
<div id="RecentFileArea">
|
||||
<div id="RecentTitle" class="Content-Title trans" tid="t35">recent open</div>
|
||||
<div id="RecentTitleBlock">
|
||||
<div id="RecentTitle" class="Content-Title trans" tid="t35">recent open</div>
|
||||
<div id="RecentClearAllBtn" class="trans" tid="t12" onClick="OnDeleteAllRecentFiles()">Clear all</div>
|
||||
</div>
|
||||
<div id="FileList">
|
||||
<!-- <div class="FileItem" onClick="OnOpenRecentFile('aaaa')">
|
||||
<!-- <div class="FileItem" onClick="OnOpenRecentFile('aaaa')" fpath='d:\model\11.3mf'>
|
||||
<a class="FileTip" title="d:\model\11.3mf"></a>
|
||||
<div class="FileImg"><img src="img/b.jpg"/></div>
|
||||
<a>abcd12334.3mf</a>
|
||||
<div class="FileDate">2021/12/27 09:22</div>
|
||||
</div>
|
||||
<div class="FileItem">
|
||||
<div class="FileItem" fpath='d:\model\22.3mf'>
|
||||
<a class="FileTip" title="d:\model\11.3mf"></a>
|
||||
<div class="FileImg"><img src="img/b.jpg"/></div>
|
||||
<a>abcd12334.3mf</a>
|
||||
|
@ -131,11 +139,89 @@
|
|||
<div class="FileImg"><img src="img/b.jpg"/></div>
|
||||
<a>abcd12334.3mf</a>
|
||||
<div class="FileDate">2021/12/27 09:22</div>
|
||||
</div>-->
|
||||
</div> -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="height: 14px;"></div>
|
||||
|
||||
<div id="recnet_context_menu">
|
||||
<div class="CT_Item" onClick="OnDeleteRecentFile()">
|
||||
<div class="CT_Icon CT_Delete"></div>
|
||||
<div class="CT_Text trans" tid="t88">clear</div>
|
||||
</div>
|
||||
<div class="CT_Item " onClick="OnExploreRecentFile()" >
|
||||
<div class="CT_Icon CT_Explore"></div>
|
||||
<div class="CT_Text trans" tid="t89">open in explorer </div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div id="WikiGuideBigBoard" board="wikiguide">
|
||||
<div id="WikiGuideBoard" >
|
||||
<div class="GuideBlock" onClick="OpenWikiUrl('https://www.bambulab.com')">
|
||||
<div class="UG_IMG"><img src="img/wiki.png" /></div>
|
||||
<div class="UG_TITLE trans" tid="wk1">Wiki Title XXXXXXX XXXXXX XXXXX XXXXX XXXXXX</div>
|
||||
<div class="UG_DESC trans" tid="wk2">This is a long long long long long longlong long long long long longlong long long long long longlong long long long long longlong long long long long long text</div>
|
||||
</div>
|
||||
<div class="GuideBlock" onClick="OpenWikiUrl('https://www.bambulab.com')">
|
||||
<div class="UG_IMG"><img src="img/wiki2.png" /></div>
|
||||
<div class="UG_TITLE trans" tid="wk1">Wiki Title XXXXXXX XXXXXX XXXXX XXXXX XXXXXX</div>
|
||||
<div class="UG_DESC trans" tid="wk2">This is a long long long long long longlong long long long long longlong long long long long longlong long long long long longlong long long long long long text</div>
|
||||
</div>
|
||||
<div class="GuideBlock" onClick="OpenWikiUrl('https://www.bambulab.com')">
|
||||
<div class="UG_IMG"><img src="img/wiki3.png" /></div>
|
||||
<div class="UG_TITLE trans" tid="wk1">Wiki Title XXXXXXX XXXXXX XXXXX XXXXX XXXXXX</div>
|
||||
<div class="UG_DESC trans" tid="wk2">This is a long long long long long longlong long long long long longlong long long long long longlong long long long long longlong long long long long long text</div>
|
||||
</div>
|
||||
<div class="GuideBlock" onClick="OpenWikiUrl('https://www.bambulab.com')">
|
||||
<div class="UG_IMG"><img src="img/wiki3.png" /></div>
|
||||
<div class="UG_TITLE trans" tid="wk1">Wiki Title XXXXXXX XXXXXX XXXXX XXXXX XXXXXX</div>
|
||||
<div class="UG_DESC trans" tid="wk2">This is a long long long long long longlong long long long long longlong long long long long longlong long long long long longlong long long long long long text</div>
|
||||
</div>
|
||||
<div class="GuideBlock" onClick="OpenWikiUrl('https://www.bambulab.com')">
|
||||
<div class="UG_IMG"><img src="img/wiki.png" /></div>
|
||||
<div class="UG_TITLE trans" tid="wk1">Wiki Title XXXXXXX XXXXXX XXXXX XXXXX XXXXXX</div>
|
||||
<div class="UG_DESC trans" tid="wk2">This is a long long long long long longlong long long long long longlong long long long long longlong long long long long longlong long long long long long text</div>
|
||||
</div>
|
||||
<div class="GuideBlock" onClick="OpenWikiUrl('https://www.bambulab.com')">
|
||||
<div class="UG_IMG"><img src="img/wiki3.png" /></div>
|
||||
<div class="UG_TITLE trans" tid="wk1">Wiki Title XXXXXXX XXXXXX XXXXX XXXXX XXXXXX</div>
|
||||
<div class="UG_DESC trans" tid="wk2">This is a long long long long long longlong long long long long longlong long long long long longlong long long long long longlong long long long long long text</div>
|
||||
</div>
|
||||
<div class="GuideBlock" onClick="OpenWikiUrl('https://www.bambulab.com')">
|
||||
<div class="UG_IMG"><img src="img/wiki2.png" /></div>
|
||||
<div class="UG_TITLE trans" tid="wk1">Wiki Title XXXXXXX XXXXXX XXXXX XXXXX XXXXXX</div>
|
||||
<div class="UG_DESC trans" tid="wk2">This is a long long long long long longlong long long long long longlong long long long long longlong long long long long longlong long long long long long text</div>
|
||||
</div>
|
||||
<div class="GuideBlock" onClick="OpenWikiUrl('https://www.bambulab.com')">
|
||||
<div class="UG_IMG"><img src="img/wiki.png" /></div>
|
||||
<div class="UG_TITLE trans" tid="wk1">Wiki Title XXXXXXX XXXXXX XXXXX XXXXX XXXXXX</div>
|
||||
<div class="UG_DESC trans" tid="wk2">This is a long long long long long longlong long long long long longlong long long long long longlong long long long long longlong long long long long long text</div>
|
||||
</div>
|
||||
<div class="GuideBlock" onClick="OpenWikiUrl('https://www.bambulab.com')">
|
||||
<div class="UG_IMG"><img src="img/wiki2.png" /></div>
|
||||
<div class="UG_TITLE trans" tid="wk1">Wiki Title XXXXXXX XXXXXX XXXXX XXXXX XXXXXX</div>
|
||||
<div class="UG_DESC trans" tid="wk2">This is a long long long long long longlong long long long long longlong long long long long longlong long long long long longlong long long long long long text</div>
|
||||
</div>
|
||||
<div class="GuideBlock" onClick="OpenWikiUrl('https://www.bambulab.com')">
|
||||
<div class="UG_IMG"><img src="img/wiki.png" /></div>
|
||||
<div class="UG_TITLE trans" tid="wk1">Wiki Title XXXXXXX XXXXXX XXXXX XXXXX XXXXXX</div>
|
||||
<div class="UG_DESC trans" tid="wk2">This is a long long long long long longlong long long long long longlong long long long long longlong long long long long longlong long long long long long text</div>
|
||||
</div>
|
||||
<div class="GuideBlock" onClick="OpenWikiUrl('https://www.bambulab.com')">
|
||||
<div class="UG_IMG"><img src="img/wiki2.png" /></div>
|
||||
<div class="UG_TITLE trans" tid="wk1">Wiki Title XXXXXXX XXXXXX XXXXX XXXXX XXXXXX</div>
|
||||
<div class="UG_DESC trans" tid="wk2">This is a long long long long long longlong long long long long longlong long long long long longlong long long long long longlong long long long long long text</div>
|
||||
</div>
|
||||
<div class="GuideBlock" onClick="OpenWikiUrl('https://www.bambulab.com')">
|
||||
<div class="UG_IMG"><img src="img/wiki3.png" /></div>
|
||||
<div class="UG_TITLE trans" tid="wk1">Wiki Title XXXXXXX XXXXXX XXXXX XXXXX XXXXXX</div>
|
||||
<div class="UG_DESC trans" tid="wk2">This is a long long long long long longlong long long long long longlong long long long long longlong long long long long longlong long long long long long text</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
|
|
@ -14,6 +14,68 @@ function OnInit()
|
|||
SendMsg_GetRecentFile();
|
||||
}
|
||||
|
||||
//------最佳打开文件的右键菜单功能----------
|
||||
var RightBtnFilePath='';
|
||||
|
||||
var MousePosX=0;
|
||||
var MousePosY=0;
|
||||
|
||||
function Set_RecentFile_MouseRightBtn_Event()
|
||||
{
|
||||
$(".FileItem").mousedown(
|
||||
function(e)
|
||||
{
|
||||
//FilePath
|
||||
RightBtnFilePath=$(this).attr('fpath');
|
||||
|
||||
if(e.which == 3){
|
||||
//鼠标点击了右键+$(this).attr('ff') );
|
||||
ShowRecnetFileContextMenu();
|
||||
}else if(e.which == 2){
|
||||
//鼠标点击了中键
|
||||
}else if(e.which == 1){
|
||||
//鼠标点击了左键
|
||||
OnOpenRecentFile( encodeURI(RightBtnFilePath) );
|
||||
}
|
||||
});
|
||||
|
||||
$(document).bind("contextmenu",function(e){
|
||||
//在这里书写代码,构建个性右键化菜单
|
||||
return false;
|
||||
});
|
||||
|
||||
$(document).mousemove( function(e){
|
||||
MousePosX=e.pageX;
|
||||
MousePosY=e.pageY;
|
||||
|
||||
let ContextMenuWidth=$('#recnet_context_menu').width();
|
||||
let ContextMenuHeight=$('#recnet_context_menu').height();
|
||||
|
||||
let DocumentWidth=$(document).width();
|
||||
let DocumentHeight=$(document).height();
|
||||
|
||||
//$("#DebugText").text( ContextMenuWidth+' - '+ContextMenuHeight+'<br/>'+
|
||||
// DocumentWidth+' - '+DocumentHeight+'<br/>'+
|
||||
// MousePosX+' - '+MousePosY +'<br/>' );
|
||||
} );
|
||||
|
||||
|
||||
$(document).click( function(){
|
||||
var e = e || window.event;
|
||||
var elem = e.target || e.srcElement;
|
||||
while (elem) {
|
||||
if (elem.id && elem.id == 'recnet_context_menu') {
|
||||
return;
|
||||
}
|
||||
elem = elem.parentNode;
|
||||
}
|
||||
|
||||
$("#recnet_context_menu").hide();
|
||||
} );
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
function HandleStudio( pVal )
|
||||
{
|
||||
|
@ -123,7 +185,7 @@ function ShowRecentFileList( pList )
|
|||
//let index=sPath.lastIndexOf('\\')>0?sPath.lastIndexOf('\\'):sPath.lastIndexOf('\/');
|
||||
//let sShortName=sPath.substring(index+1,sPath.length);
|
||||
|
||||
let TmpHtml='<div class="FileItem" onClick="OnOpenRecentFile(\''+ encodeURI(sPath)+'\')" >'+
|
||||
let TmpHtml='<div class="FileItem" fpath="'+sPath+'" >'+
|
||||
'<a class="FileTip" title="'+sPath+'"></a>'+
|
||||
'<div class="FileImg" ><img src="'+sImg+'" onerror="this.onerror=null;this.src=\'img/d.png\';" alt="No Image" /></div>'+
|
||||
'<a>'+sName+'</a>'+
|
||||
|
@ -134,10 +196,33 @@ function ShowRecentFileList( pList )
|
|||
}
|
||||
|
||||
$("#FileList").html(strHtml);
|
||||
|
||||
Set_RecentFile_MouseRightBtn_Event();
|
||||
UpdateRecentClearBtnDisplay();
|
||||
}
|
||||
|
||||
function ShowRecnetFileContextMenu()
|
||||
{
|
||||
$('#recnet_context_menu').show();
|
||||
|
||||
let ContextMenuWidth=$('#recnet_context_menu').width();
|
||||
let ContextMenuHeight=$('#recnet_context_menu').height();
|
||||
|
||||
let DocumentWidth=$(document).width();
|
||||
let DocumentHeight=$(document).height();
|
||||
|
||||
/*-------MX Message------*/
|
||||
let RealX=MousePosX;
|
||||
let RealY=MousePosY;
|
||||
|
||||
if( MousePosX + ContextMenuWidth >DocumentWidth )
|
||||
RealX=MousePosX-ContextMenuWidth;
|
||||
if( MousePosY+ContextMenuHeight>DocumentHeight )
|
||||
RealY=MousePosY-ContextMenuHeight;
|
||||
|
||||
$("#recnet_context_menu").offset({top: RealY, left:RealX});
|
||||
}
|
||||
|
||||
/*-------RecentFile MX Message------*/
|
||||
function SendMsg_GetLoginInfo()
|
||||
{
|
||||
var tSend={};
|
||||
|
@ -197,6 +282,69 @@ function OnOpenRecentFile( strPath )
|
|||
SendWXMessage( JSON.stringify(tSend) );
|
||||
}
|
||||
|
||||
function OnDeleteRecentFile( )
|
||||
{
|
||||
var tSend={};
|
||||
tSend['sequence_id']=Math.round(new Date() / 1000);
|
||||
tSend['command']="homepage_delete_recentfile";
|
||||
tSend['data']={};
|
||||
tSend['data']['path']=decodeURI(RightBtnFilePath);
|
||||
|
||||
SendWXMessage( JSON.stringify(tSend) );
|
||||
|
||||
$("#recnet_context_menu").hide();
|
||||
|
||||
let AllFile=$(".FileItem");
|
||||
let nFile=AllFile.length;
|
||||
for(let p=0;p<nFile;p++)
|
||||
{
|
||||
let pp=AllFile[p].getAttribute("fpath");
|
||||
if(pp==RightBtnFilePath)
|
||||
$(AllFile[p]).remove();
|
||||
}
|
||||
|
||||
UpdateRecentClearBtnDisplay();
|
||||
}
|
||||
|
||||
function OnDeleteAllRecentFiles()
|
||||
{
|
||||
var tSend={};
|
||||
tSend['sequence_id']=Math.round(new Date() / 1000);
|
||||
tSend['command']="homepage_delete_all_recentfile";
|
||||
|
||||
SendWXMessage( JSON.stringify(tSend) );
|
||||
|
||||
$('#FileList').html('');
|
||||
|
||||
UpdateRecentClearBtnDisplay();
|
||||
}
|
||||
|
||||
function UpdateRecentClearBtnDisplay()
|
||||
{
|
||||
let AllFile=$(".FileItem");
|
||||
let nFile=AllFile.length;
|
||||
if( nFile>0 )
|
||||
$("#RecentClearAllBtn").show();
|
||||
else
|
||||
$("#RecentClearAllBtn").hide();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
function OnExploreRecentFile( )
|
||||
{
|
||||
var tSend={};
|
||||
tSend['sequence_id']=Math.round(new Date() / 1000);
|
||||
tSend['command']="homepage_explore_recentfile";
|
||||
tSend['data']={};
|
||||
tSend['data']['path']=decodeURI(RightBtnFilePath);
|
||||
|
||||
SendWXMessage( JSON.stringify(tSend) );
|
||||
|
||||
$("#recnet_context_menu").hide();
|
||||
}
|
||||
|
||||
function OnLogOut()
|
||||
{
|
||||
var tSend={};
|
||||
|
@ -227,4 +375,20 @@ function OutputKey(keyCode, isCtrlDown, isShiftDown, isCmdDown) {
|
|||
|
||||
SendWXMessage(JSON.stringify(tSend));
|
||||
}
|
||||
|
||||
//-------------User Manual------------
|
||||
|
||||
function OpenWikiUrl( strUrl )
|
||||
{
|
||||
var tSend={};
|
||||
tSend['sequence_id']=Math.round(new Date() / 1000);
|
||||
tSend['command']="userguide_wiki_open";
|
||||
tSend['data']={};
|
||||
tSend['data']['url']=strUrl;
|
||||
|
||||
SendWXMessage( JSON.stringify(tSend) );
|
||||
}
|
||||
|
||||
|
||||
//---------------Global-----------------
|
||||
window.postMessage = HandleStudio;
|
||||
|
|
|
@ -3002,6 +3002,31 @@ std::string GUI_App::handle_web_request(std::string cmd)
|
|||
this->request_open_project(path.value());
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (command_str.compare("homepage_delete_recentfile") == 0) {
|
||||
if (root.get_child_optional("data") != boost::none) {
|
||||
pt::ptree data_node = root.get_child("data");
|
||||
boost::optional<std::string> path = data_node.get_optional<std::string>("path");
|
||||
if (path.has_value()) {
|
||||
this->request_remove_project(path.value());
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (command_str.compare("homepage_delete_all_recentfile") == 0) {
|
||||
this->request_remove_project("");
|
||||
}
|
||||
else if (command_str.compare("homepage_explore_recentfile") == 0) {
|
||||
if (root.get_child_optional("data") != boost::none) {
|
||||
pt::ptree data_node = root.get_child("data");
|
||||
boost::optional<std::string> path = data_node.get_optional<std::string>("path");
|
||||
if (path.has_value())
|
||||
{
|
||||
boost::filesystem::path NowFile(path.value());
|
||||
|
||||
std::string FolderPath = NowFile.parent_path().make_preferred().string();
|
||||
desktop_open_any_folder(FolderPath);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (command_str.compare("homepage_open_hotspot") == 0) {
|
||||
if (root.get_child_optional("data") != boost::none) {
|
||||
|
@ -3036,7 +3061,17 @@ std::string GUI_App::handle_web_request(std::string cmd)
|
|||
e.SetEventObject(mainframe);
|
||||
wxPostEvent(mainframe, e);
|
||||
}
|
||||
}
|
||||
else if (command_str.compare("userguide_wiki_open") == 0) {
|
||||
if (root.get_child_optional("data") != boost::none) {
|
||||
pt::ptree data_node = root.get_child("data");
|
||||
boost::optional<std::string> path = data_node.get_optional<std::string>("url");
|
||||
if (path.has_value()) {
|
||||
wxLaunchDefaultBrowser(path.value());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
catch (...) {
|
||||
|
@ -3111,6 +3146,11 @@ void GUI_App::request_open_project(std::string project_id)
|
|||
CallAfter([this, project_id] { mainframe->open_recent_project(-1, wxString::FromUTF8(project_id)); });
|
||||
}
|
||||
|
||||
void GUI_App::request_remove_project(std::string project_id)
|
||||
{
|
||||
mainframe->remove_recent_project(-1, wxString::FromUTF8(project_id));
|
||||
}
|
||||
|
||||
void GUI_App::handle_http_error(unsigned int status, std::string body)
|
||||
{
|
||||
// tips body size must less than 1024
|
||||
|
|
|
@ -372,6 +372,7 @@ public:
|
|||
void download_project(std::string project_id);
|
||||
void request_project_download(std::string project_id);
|
||||
void request_open_project(std::string project_id);
|
||||
void request_remove_project(std::string project_id);
|
||||
|
||||
void handle_http_error(unsigned int status, std::string body);
|
||||
void on_http_error(wxCommandEvent &evt);
|
||||
|
|
|
@ -2611,6 +2611,28 @@ void MainFrame::open_recent_project(size_t file_id, wxString const & filename)
|
|||
}
|
||||
}
|
||||
|
||||
void MainFrame::remove_recent_project(size_t file_id, wxString const &filename)
|
||||
{
|
||||
if (file_id == size_t(-1)) {
|
||||
if (filename.IsEmpty())
|
||||
while (m_recent_projects.GetCount() > 0)
|
||||
m_recent_projects.RemoveFileFromHistory(0);
|
||||
else
|
||||
file_id = m_recent_projects.FindFileInHistory(filename);
|
||||
}
|
||||
if (file_id != size_t(-1))
|
||||
m_recent_projects.RemoveFileFromHistory(file_id);
|
||||
std::vector<std::string> recent_projects;
|
||||
size_t count = m_recent_projects.GetCount();
|
||||
for (size_t i = 0; i < count; ++i)
|
||||
{
|
||||
recent_projects.push_back(into_u8(m_recent_projects.GetHistoryFile(i)));
|
||||
}
|
||||
wxGetApp().app_config->set_recent_projects(recent_projects);
|
||||
wxGetApp().app_config->save();
|
||||
m_webview->SendRecentList("");
|
||||
}
|
||||
|
||||
void MainFrame::load_url(wxString url)
|
||||
{
|
||||
BOOST_LOG_TRIVIAL(trace) << "load_url:" << url;
|
||||
|
|
|
@ -296,6 +296,7 @@ public:
|
|||
void add_to_recent_projects(const wxString& filename);
|
||||
void get_recent_projects(boost::property_tree::wptree & tree);
|
||||
void open_recent_project(size_t file_id, wxString const & filename);
|
||||
void remove_recent_project(size_t file_id, wxString const &filename);
|
||||
|
||||
void technology_changed();
|
||||
|
||||
|
|
Loading…
Reference in New Issue