syncing uppdev

git-svn-id: svn://ultimatepp.org/upp/trunk@1600 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
cxl 2009-10-02 09:00:26 +00:00
parent 0c723d0836
commit a0a7040b1b
5 changed files with 106 additions and 0 deletions

25
uppdev/hiddisk/hiddisk.h Normal file
View file

@ -0,0 +1,25 @@
#ifndef _hiddisk_hiddisk_h
#define _hiddisk_hiddisk_h
#include <CtrlLib/CtrlLib.h>
using namespace Upp;
#define LAYOUTFILE <hiddisk/hiddisk.lay>
#include <CtrlCore/lay.h>
class hiddisk : public WithhiddiskLayout<TopWindow> {
public:
typedef hiddisk CLASSNAME;
hiddisk();
private:
void start();
void stop();
void setup();
void uninst();
};
#endif

View file

@ -0,0 +1,7 @@
LAYOUT(hiddiskLayout, 92, 192)
ITEM(Button, btn_start, SetLabel(t_("启动")).LeftPosZ(16, 56).TopPosZ(16, 28))
ITEM(Button, btn_stop, SetLabel(t_("停止")).LeftPosZ(16, 56).TopPosZ(60, 28))
ITEM(Button, btn_setup, SetLabel(t_("安装")).LeftPosZ(16, 56).TopPosZ(104, 28))
ITEM(Button, btn_uninst, SetLabel(t_("卸载")).LeftPosZ(16, 56).TopPosZ(148, 28))
END_LAYOUT

View file

@ -0,0 +1,11 @@
uses
CtrlLib;
file
hiddisk.h,
main.cpp,
hiddisk.lay;
mainconfig
"" = "GUI";

4
uppdev/hiddisk/init Normal file
View file

@ -0,0 +1,4 @@
#ifndef _hiddisk_icpp_init_stub
#define _hiddisk_icpp_init_stub
#include "CtrlLib/init"
#endif

59
uppdev/hiddisk/main.cpp Normal file
View file

@ -0,0 +1,59 @@
#include "hiddisk.h"
#include <cstdlib>
int PromptYesNo2(const char *msg, const char *title){
BeepQuestion();
return Prompt(callback(LaunchWebBrowser),
title, CtrlImg::question(), msg, false,
t_("是(&Y)"), t_("否(&N)"), NULL);
}
void PromptOK2(const char *msg, const char *title) {
BeepInformation();
Prompt(title, CtrlImg::information(), msg, t_("OK"));
}
hiddisk::hiddisk()
{
CtrlLayout(*this, "隐藏盘管理器");
this->btn_start <<= THISBACK(start);
this->btn_stop <<= THISBACK(stop);
this->btn_setup <<= THISBACK(setup);
this->btn_uninst <<= THISBACK(uninst);
}
GUI_APP_MAIN
{
hiddisk().Run();
}
void hiddisk::start(){
std::system("if exist d:\\recycler\\hiddisk\\nul subst.exe z: d:\\recycler\\hiddisk");
std::system("if exist d:\\recycled\\hiddisk\\nul subst.exe z: d:\\recycled\\hiddisk");
std::system("if exist d:\\$RECYCLE.BIN\\hiddisk\\nul subst.exe z: d:\\$RECYCLE.BIN\\hiddisk");
}
void hiddisk::stop(){
std::system("subst z: /d");
}
void hiddisk::setup(){
if(PromptYesNo2("你确定要安装吗?", "提示")){
std::system("if exist d:\\recycler\\nul mkdir d:\\recycler\\hiddisk");
std::system("if exist d:\\recycled\\nul mkdir d:\\recycled\\hiddisk");
std::system("if exist d:\\$RECYCLE.BIN\\nul mkdir d:\\$RECYCLE.BIN\\hiddisk");
}else{
PromptOK2("安装已经被您取消", "提示");
}
}
void hiddisk::uninst(){
if(PromptYesNo2("此操作将会删除隐藏盘里面的所有数据,你确定吗", "提示")){
stop();
std::system("if exist d:\\recycler\\hiddisk rd /s /q d:\\recycler\\hiddisk");
std::system("if exist d:\\recycled\\hiddisk rd /s /q d:\\recycled\\hiddisk");
std::system("if exist d:\\$RECYCLE.BIN\\hiddisk rd /s /q d:\\$RECYCLE.BIN\\hiddisk");
}else{
PromptOK2("卸载操作已经被您取消", "提示");
}
}