mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-05-16 14:16:09 -06:00
65 lines
1 KiB
C++
65 lines
1 KiB
C++
#ifndef _PyConsoleCtrl_PyConsoleCtrl_h
|
|
#define _PyConsoleCtrl_PyConsoleCtrl_h
|
|
|
|
#include <PyCon/PyCon.h>
|
|
|
|
#include <CtrlLib/CtrlLib.h>
|
|
using namespace Upp;
|
|
|
|
#define LAYOUTFILE <PyConsoleCtrl/PyConsoleCtrl.lay>
|
|
#include <CtrlCore/lay.h>
|
|
|
|
class CmdDocEdit : public DocEdit
|
|
{
|
|
public:
|
|
typedef CmdDocEdit CLASSNAME;
|
|
typedef DocEdit D;
|
|
|
|
CmdDocEdit()
|
|
{
|
|
ProcessEnter().ProcessTab();
|
|
}
|
|
|
|
virtual bool Key(dword key, int count)
|
|
{
|
|
bool b = true;
|
|
if(key == K_CTRL_ENTER)
|
|
WhenCmdDone();
|
|
else b = D::Key(key, count);
|
|
return b;
|
|
}
|
|
|
|
Callback WhenCmdDone;
|
|
};
|
|
|
|
class PyConsoleCtrl : public WithPyConsoleCtrlLay<ParentCtrl>
|
|
{
|
|
public:
|
|
typedef PyConsoleCtrl CLASSNAME;
|
|
PyConsoleCtrl();
|
|
|
|
void LoadDlg();
|
|
void SaveDlg();
|
|
void Clear();
|
|
void Exec();
|
|
void Inc();
|
|
void Dec();
|
|
|
|
void ClearLog() { log.Clear(); }
|
|
void SaveLog() { log.Save(); }
|
|
|
|
LoggerCtrl log;
|
|
CmdDocEdit cmd;
|
|
SpinButtons sb;
|
|
|
|
protected:
|
|
void ShowHistory(int i);
|
|
void Dirtify();
|
|
|
|
FileSel fs;
|
|
Array<String> ac;
|
|
int idx;
|
|
};
|
|
|
|
#endif
|
|
|