From 8365db47a08586d5480d43ea2121f8e97a176199 Mon Sep 17 00:00:00 2001 From: "royqh1979@gmail.com" Date: Thu, 24 Feb 2022 23:31:48 +0800 Subject: [PATCH] - enhancement: git - pull / push / fetch --- NEWS.md | 1 + RedPandaIDE/icons.qrc | 2 - RedPandaIDE/images/demos/dark.png | Bin 0 -> 48038 bytes RedPandaIDE/images/demos/light.png | Bin 0 -> 47836 bytes RedPandaIDE/mainwindow.cpp | 89 ++++++++++++++++ RedPandaIDE/mainwindow.h | 6 ++ RedPandaIDE/mainwindow.ui | 18 ++++ RedPandaIDE/vcs/gitmanager.cpp | 67 ++++++++++++ RedPandaIDE/vcs/gitmanager.h | 15 +++ RedPandaIDE/vcs/gitremotedialog.cpp | 27 ++++- RedPandaIDE/vcs/gitremotedialog.h | 4 + windows/redpanda-git-askpass/main.c | 78 ++++++++++++++ .../redpanda-git-askpass.dev | 98 ++++++++++++++++++ .../redpanda-git-askpass.ico | Bin 0 -> 766 bytes .../redpanda-git-askpass_private.h | 23 ++++ .../redpanda-git-askpass_private.rc | 6 ++ .../redpanda-git-askpass_private.res | Bin 0 -> 1272 bytes windows/redpanda-git-askpass/resource.h | 7 ++ windows/redpanda-git-askpass/resource.rc | 24 +++++ 19 files changed, 461 insertions(+), 4 deletions(-) create mode 100644 RedPandaIDE/images/demos/dark.png create mode 100644 RedPandaIDE/images/demos/light.png create mode 100644 windows/redpanda-git-askpass/main.c create mode 100644 windows/redpanda-git-askpass/redpanda-git-askpass.dev create mode 100644 windows/redpanda-git-askpass/redpanda-git-askpass.ico create mode 100644 windows/redpanda-git-askpass/redpanda-git-askpass_private.h create mode 100644 windows/redpanda-git-askpass/redpanda-git-askpass_private.rc create mode 100644 windows/redpanda-git-askpass/redpanda-git-askpass_private.res create mode 100644 windows/redpanda-git-askpass/resource.h create mode 100644 windows/redpanda-git-askpass/resource.rc diff --git a/NEWS.md b/NEWS.md index 0fec4332..f160bd88 100644 --- a/NEWS.md +++ b/NEWS.md @@ -9,6 +9,7 @@ Red Panda C++ Version 0.14.4 - enhancement: git - remotes - enhancement: rename "open folder" to "choose working folder" - enhancement: let user choose app theme when first run + - enhancement: git - pull / push / fetch Red Panda C++ Version 0.14.3 - fix: wrong code completion font size, when screen dpi changed diff --git a/RedPandaIDE/icons.qrc b/RedPandaIDE/icons.qrc index 8080f3dd..678cb5e7 100644 --- a/RedPandaIDE/icons.qrc +++ b/RedPandaIDE/icons.qrc @@ -111,8 +111,6 @@ images/demos/dark.png - images/demos/dark-zh_CN.png images/demos/light.png - images/demos/light-zh_CN.png diff --git a/RedPandaIDE/images/demos/dark.png b/RedPandaIDE/images/demos/dark.png new file mode 100644 index 0000000000000000000000000000000000000000..78a7cbbe4824249545cf9203e9a0b7f1c1fd6d08 GIT binary patch literal 48038 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 We8p^WaXkq5k`VbUTq>yd{r>>!b_+fL literal 0 HcmV?d00001 diff --git a/RedPandaIDE/images/demos/light.png b/RedPandaIDE/images/demos/light.png new file mode 100644 index 0000000000000000000000000000000000000000..ad8643614822c5297599118f39d7a25c604868c7 GIT binary patch literal 47836 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 literal 0 HcmV?d00001 diff --git a/RedPandaIDE/mainwindow.cpp b/RedPandaIDE/mainwindow.cpp index 1ce94f4a..07ddef7d 100644 --- a/RedPandaIDE/mainwindow.cpp +++ b/RedPandaIDE/mainwindow.cpp @@ -6943,3 +6943,92 @@ void MainWindow::on_actionGit_Remotes_triggered() dialog.exec(); } + +void MainWindow::on_actionGit_Fetch_triggered() +{ + QString folder; + if (ui->treeFiles->isVisible()) { + folder = pSettings->environment().currentFolder(); + } else if (ui->projectView->isVisible() && mProject) { + folder = mProject->folder(); + } + if (folder.isEmpty()) + return; + GitManager manager; + QString output; + if (!manager.fetch(folder,output)) { + InfoMessageBox infoBox; + infoBox.showMessage(output); + } +} + + +void MainWindow::on_actionGit_Pull_triggered() +{ + QString folder; + if (ui->treeFiles->isVisible()) { + folder = pSettings->environment().currentFolder(); + } else if (ui->projectView->isVisible() && mProject) { + folder = mProject->folder(); + } + if (folder.isEmpty()) + return; + GitManager manager; + QString branch; + if (!manager.hasRepository(folder,branch)) + return; + QString remote = manager.getBranchRemote(folder,branch); + QString output; + if (remote.isEmpty()) { + GitRemoteDialog dialog(folder); + QString remote = dialog.chooseRemote(); + if (remote.trimmed().isEmpty()) + return; + if (!manager.setBranchUpstream(folder,branch,remote,output)) { + InfoMessageBox infoBox; + infoBox.showMessage(output); + return; + } + } + manager.pull(folder,output); + if (!output.isEmpty()) { + InfoMessageBox infoBox; + infoBox.showMessage(output); + } +} + + +void MainWindow::on_actionGit_Push_triggered() +{ + QString folder; + if (ui->treeFiles->isVisible()) { + folder = pSettings->environment().currentFolder(); + } else if (ui->projectView->isVisible() && mProject) { + folder = mProject->folder(); + } + if (folder.isEmpty()) + return; + GitManager manager; + QString branch; + if (!manager.hasRepository(folder,branch)) + return; + QString remote = manager.getBranchRemote(folder,branch); + QString output; + if (remote.isEmpty()) { + GitRemoteDialog dialog(folder); + QString remote = dialog.chooseRemote(); + if (remote.trimmed().isEmpty()) + return; + manager.push(folder,remote,branch,output); + if (!output.isEmpty()) { + InfoMessageBox infoBox; + infoBox.showMessage(output); + } + } else { + if (!output.isEmpty()) { + InfoMessageBox infoBox; + infoBox.showMessage(output); + } + } +} + diff --git a/RedPandaIDE/mainwindow.h b/RedPandaIDE/mainwindow.h index 8b69daa9..fb20b1f7 100644 --- a/RedPandaIDE/mainwindow.h +++ b/RedPandaIDE/mainwindow.h @@ -598,6 +598,12 @@ private slots: void on_actionGit_Remotes_triggered(); + void on_actionGit_Fetch_triggered(); + + void on_actionGit_Pull_triggered(); + + void on_actionGit_Push_triggered(); + private: Ui::MainWindow *ui; EditorList *mEditorList; diff --git a/RedPandaIDE/mainwindow.ui b/RedPandaIDE/mainwindow.ui index 6ee74f29..5ad7ef02 100644 --- a/RedPandaIDE/mainwindow.ui +++ b/RedPandaIDE/mainwindow.ui @@ -1603,6 +1603,9 @@ + + + @@ -2821,6 +2824,21 @@ Remotes... + + + Fetch + + + + + Pull + + + + + Push + + diff --git a/RedPandaIDE/vcs/gitmanager.cpp b/RedPandaIDE/vcs/gitmanager.cpp index 5417831a..9aac1143 100644 --- a/RedPandaIDE/vcs/gitmanager.cpp +++ b/RedPandaIDE/vcs/gitmanager.cpp @@ -284,6 +284,73 @@ QString GitManager::getRemoteURL(const QString &folder, const QString &name) return runGit(folder,args).trimmed(); } +QString GitManager::getBranchRemote(const QString &folder, const QString &branch) +{ + QStringList args; + args.append("config"); + args.append("--get"); + args.append(QString("branch.%1.remote").arg(branch)); + return runGit(folder,args).trimmed(); +} + +QString GitManager::getBranchMerge(const QString &folder, const QString &branch) +{ + QStringList args; + args.append("config"); + args.append("--get"); + args.append(QString("branch.%1.merge").arg(branch)); + return runGit(folder,args).trimmed(); +} + +bool GitManager::setBranchUpstream( + const QString &folder, + const QString &branch, + const QString &remoteName, + QString& output) +{ + QStringList args; + args.append("branch"); + args.append(QString("--set-upstream-to=%1/%2").arg(remoteName,branch)); + args.append(branch); + output = runGit(folder,args).trimmed(); + return !output.startsWith("error") && !output.startsWith("fatal"); +} + +bool GitManager::fetch(const QString &folder, QString &output) +{ + QStringList args; + args.append("fetch"); + output = runGit(folder,args).trimmed(); + return !output.startsWith("error") && !output.startsWith("fatal"); +} + +bool GitManager::pull(const QString &folder, QString &output) +{ + QStringList args; + args.append("pull"); + output = runGit(folder,args).trimmed(); + return !output.startsWith("error") && !output.startsWith("fatal"); +} + +bool GitManager::push(const QString &folder, QString &output) +{ + QStringList args; + args.append("push"); + output = runGit(folder,args).trimmed(); + return !output.startsWith("error") && !output.startsWith("fatal"); +} + +bool GitManager::push(const QString &folder, const QString &remoteName, const QString &branch, QString &output) +{ + QStringList args; + args.append("push"); + args.append("--set-upstream"); + args.append(remoteName); + args.append(branch); + output = runGit(folder,args).trimmed(); + return !output.startsWith("error") && !output.startsWith("fatal"); +} + QStringList GitManager::listBranches(const QString &folder, int ¤t) { QStringList args; diff --git a/RedPandaIDE/vcs/gitmanager.h b/RedPandaIDE/vcs/gitmanager.h index d836e5a3..70e6dca2 100644 --- a/RedPandaIDE/vcs/gitmanager.h +++ b/RedPandaIDE/vcs/gitmanager.h @@ -50,6 +50,21 @@ public: bool setRemoteURL(const QString& folder, const QString& name, const QString& newURL, QString& output); QString getRemoteURL(const QString& folder, const QString& name); + QString getBranchRemote(const QString& folder, const QString& branch); + QString getBranchMerge(const QString& folder, const QString& branch); + bool setBranchUpstream(const QString& folder, + const QString& branch, + const QString& remoteName, + QString &output); + + bool fetch(const QString& folder, QString& output); + bool pull(const QString& folder, QString& output); + bool push(const QString& folder, QString& output); + bool push(const QString& folder, + const QString& remoteName, + const QString& branch, + QString& output); + QStringList listBranches(const QString& folder, int& current); bool switchToBranch(const QString& folder, const QString& branch, bool create, diff --git a/RedPandaIDE/vcs/gitremotedialog.cpp b/RedPandaIDE/vcs/gitremotedialog.cpp index 10464b36..4540d8fe 100644 --- a/RedPandaIDE/vcs/gitremotedialog.cpp +++ b/RedPandaIDE/vcs/gitremotedialog.cpp @@ -7,7 +7,8 @@ GitRemoteDialog::GitRemoteDialog(const QString& folder, QWidget *parent) : QDialog(parent), ui(new Ui::GitRemoteDialog), - mFolder(folder) + mFolder(folder), + mChooseMode(false) { ui->setupUi(this); GitManager manager; @@ -29,6 +30,18 @@ GitRemoteDialog::~GitRemoteDialog() delete ui; } +QString GitRemoteDialog::chooseRemote() +{ + mChooseMode = true; + ui->btnClose->setText(tr("Ok")); + + if (exec()==QDialog::Accepted) { + if (ui->lstRemotes->selectedItems().count()>0) + return ui->lstRemotes->selectedItems()[0]->text(); + } + return ""; +} + void GitRemoteDialog::updateIcons() { ui->btnAdd->setIcon(pIconsManager->getIcon(IconsManager::ACTION_MISC_ADD)); @@ -81,9 +94,13 @@ void GitRemoteDialog::on_btnAdd_clicked() ui->pnlProcess->setVisible(true); ui->btnProcess->setText(tr("Add")); ui->btnRemove->setEnabled(false); + if (ui->lstRemotes->count()==0) { + ui->txtName->setText("origin"); + ui->txtURL->setFocus(); + } else + ui->txtName->setFocus(); } - void GitRemoteDialog::on_btnRemove_clicked() { if (ui->lstRemotes->selectedItems().count()>0) { @@ -164,3 +181,9 @@ void GitRemoteDialog::on_txtURL_textChanged(const QString & /*arg1*/) checkDetails(); } + +void GitRemoteDialog::on_btnClose_clicked() +{ + accept(); +} + diff --git a/RedPandaIDE/vcs/gitremotedialog.h b/RedPandaIDE/vcs/gitremotedialog.h index 1eafcd0f..b21f18e3 100644 --- a/RedPandaIDE/vcs/gitremotedialog.h +++ b/RedPandaIDE/vcs/gitremotedialog.h @@ -14,6 +14,7 @@ class GitRemoteDialog : public QDialog public: explicit GitRemoteDialog(const QString& folder, QWidget *parent = nullptr); ~GitRemoteDialog(); + QString chooseRemote(); private slots: void updateIcons(); @@ -30,10 +31,13 @@ private slots: void on_txtURL_textChanged(const QString &arg1); + void on_btnClose_clicked(); + private: Ui::GitRemoteDialog *ui; QString mFolder; QStringList mRemotes; + bool mChooseMode; }; #endif // GITREMOTEDIALOG_H diff --git a/windows/redpanda-git-askpass/main.c b/windows/redpanda-git-askpass/main.c new file mode 100644 index 00000000..aa53a301 --- /dev/null +++ b/windows/redpanda-git-askpass/main.c @@ -0,0 +1,78 @@ +#include +#include +#include "resource.h" +#include + +HINSTANCE hInst; + +LRESULT MainDlgProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam); + +LRESULT TxtPasswordWndProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam); + +WNDPROC lpfnTxtPasswordWndProc=NULL; +HWND hMainDlg = NULL; +HWND hwndTxtPassword = NULL; + +int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { + MSG msg; + + + hMainDlg = CreateDialog(hInstance, (LPCTSTR)IDD_MAIN_DIALOG, 0,(DLGPROC)MainDlgProc); + ShowWindow(hMainDlg, nCmdShow); + hwndTxtPassword = GetDlgItem(hMainDlg,ID_TXT_PASSWORD); + lpfnTxtPasswordWndProc = (WNDPROC) SetWindowLongPtr(hwndTxtPassword, GWLP_WNDPROC, (LONG_PTR)TxtPasswordWndProc); + HWND hwndTxtPrompt = GetDlgItem(hMainDlg,ID_TXT_PROMPT); + Static_SetText(hwndTxtPrompt, lpCmdLine); + while (GetMessage(&msg, NULL, 0, 0)) { + TranslateMessage(&msg); + DispatchMessage(&msg); + } + return 0; +} + +//In Subclass Proc +LRESULT CALLBACK TxtPasswordWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) +{ + switch(msg) { + case WM_KEYDOWN: + if (wParam==VK_RETURN) { + char s[500+1]; + Edit_GetText(hwndTxtPassword,s,500); + printf(s); + DestroyWindow(hMainDlg); + return TRUE; + } + break; + + } + + return CallWindowProc(lpfnTxtPasswordWndProc, hwnd, msg, wParam, lParam); +} + +LRESULT MainDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { + switch (message) { + case WM_INITDIALOG : + return TRUE ; + case WM_COMMAND : + switch (LOWORD (wParam)) { + case IDOK : + case IDCANCEL : + DestroyWindow(hDlg); + return TRUE ; + } + break ; + case WM_KEYUP: + printf("%d\n",wParam); + if (wParam == VK_RETURN) { + DestroyWindow(hDlg); + } + break; + case WM_CLOSE: + DestroyWindow(hDlg); + return TRUE; + case WM_DESTROY: + PostQuitMessage(0); + return TRUE; + }; + return FALSE;//返回FALSE给缺省对话框函数DefDlgProc(),表示没有处理本消息 +} diff --git a/windows/redpanda-git-askpass/redpanda-git-askpass.dev b/windows/redpanda-git-askpass/redpanda-git-askpass.dev new file mode 100644 index 00000000..0ed9325a --- /dev/null +++ b/windows/redpanda-git-askpass/redpanda-git-askpass.dev @@ -0,0 +1,98 @@ +[Project] +filename = redpanda-git-askpass.dev +name = redpanda-git-askpass +UnitCount = 3 +Type = 0 +Ver = 3 +ObjFiles = +Includes = +Libs = +PrivateResource = redpanda-git-askpass_private.rc +ResourceIncludes = +MakeIncludes = +Compiler = +CppCompiler = +Linker = +IsCpp = 1 +Icon = redpanda-git-askpass.ico +ExeOutput = +ObjectOutput = +LogOutput = +LogOutputEnabled = 0 +OverrideOutput = 0 +OverrideOutputName = +HostApplication = +UseCustomMakefile = 0 +CustomMakefile = +UsePrecompiledHeader = 0 +PrecompiledHeader = +CommandLine = +Folders = +IncludeVersionInfo = 0 +SupportXPThemes = 0 +CompilerSet = 0 +CompilerSetType = 0 +CompilerSettings = 000000a000000000000010001 +StaticLink = 1 +AddCharset = 1 +Encoding = AUTO +ModelType = 0 +UseUTF8 = 0 + + +[Unit1] +FileName = main.c +CompileCpp = 1 +Folder = +Compile = 1 +Link = 1 +Priority = 1000 +OverrideBuildCmd = 0 +BuildCmd = +DetectEncoding = 1 +FileEncoding = AUTO + + +[Unit2] +FileName = resource.rc +Folder = Resources +Compile = 1 +Link = 1 +Priority = 1000 +OverrideBuildCmd = 0 +BuildCmd = +DetectEncoding = 1 +FileEncoding = AUTO + + +[Unit3] +FileName = resource.h +CompileCpp = 1 +Folder = +Compile = 1 +Link = 1 +Priority = 1000 +OverrideBuildCmd = 0 +BuildCmd = +DetectEncoding = 1 +FileEncoding = AUTO + + +[VersionInfo] +Major = 1 +Minor = 0 +Release = 0 +Build = 0 +LanguageID = 1033 +CharsetID = 1252 +CompanyName = +FileVersion = +FileDescription = Developed using the Red Panda C++ IDE +InternalName = +LegalCopyright = +LegalTrademarks = +OriginalFilename = +ProductName = +ProductVersion = +AutoIncBuildNr = 0 +SyncProduct = 1 diff --git a/windows/redpanda-git-askpass/redpanda-git-askpass.ico b/windows/redpanda-git-askpass/redpanda-git-askpass.ico new file mode 100644 index 0000000000000000000000000000000000000000..94551655313deeeb2ef369973a2f74d8b3dda9d1 GIT binary patch literal 766 zcmdr}xeb6Y3_K76P*JC347Q3p(uJ`y0D~|BojC&qmXIirC^+Z*o$@FKDq09FeS@V2 zIsiQx$bq!JAyK{aqbBM6!@M ZpKbASl=%T~$LGJ>S8vb0+wX5s-2ja_Vk`gv literal 0 HcmV?d00001 diff --git a/windows/redpanda-git-askpass/redpanda-git-askpass_private.h b/windows/redpanda-git-askpass/redpanda-git-askpass_private.h new file mode 100644 index 00000000..041b1ce4 --- /dev/null +++ b/windows/redpanda-git-askpass/redpanda-git-askpass_private.h @@ -0,0 +1,23 @@ +/* THIS FILE WILL BE OVERWRITTEN BY Red Panda C++ */ +/* DO NOT EDIT ! */ + +#ifndef redpanda-git-askpass_private_rc +#define redpanda-git-askpass_private_rc + +/* VERSION DEFINITIONS */ +#define VER_STRING "1.0.0.0" +#define VER_MAJOR 1 +#define VER_MINOR 0 +#define VER_RELEASE 0 +#define VER_BUILD 0 +#define COMPANY_NAME "" +#define FILE_VERSION "" +#define FILE_DESCRIPTION "Developed using the Red Panda C++ IDE" +#define INTERNAL_NAME "" +#define LEGAL_COPYRIGHT "" +#define LEGAL_TRADEMARKS "" +#define ORIGINAL_FILENAME "" +#define PRODUCT_NAME "" +#define PRODUCT_VERSION "" + +#endif /*redpanda-git-askpass_private_rc*/ diff --git a/windows/redpanda-git-askpass/redpanda-git-askpass_private.rc b/windows/redpanda-git-askpass/redpanda-git-askpass_private.rc new file mode 100644 index 00000000..7c7dbc06 --- /dev/null +++ b/windows/redpanda-git-askpass/redpanda-git-askpass_private.rc @@ -0,0 +1,6 @@ +/* THIS FILE WILL BE OVERWRITTEN BY Red Panda C++ */ +/* DO NOT EDIT! */ + +#include "resource.rc" + +A ICON "redpanda-git-askpass.ico" diff --git a/windows/redpanda-git-askpass/redpanda-git-askpass_private.res b/windows/redpanda-git-askpass/redpanda-git-askpass_private.res new file mode 100644 index 0000000000000000000000000000000000000000..d140298c725bd3867b86bbbb02608d3ea3c70dee GIT binary patch literal 1272 zcmds1Axy(S6n&*5Ab^m7LRF#&5`pLvEC~q)OU58e2rOHZ)$N90lLU=Gf=3`L5QvG% z$pwW(;*R(KHCr#)f>?s!wg3P3|9{u^uDzb!1`vFd0LMz$X*3%Ztvc6ZZ=dvyQ4rE% z>}J9z2(`Wqm_-&(7}pqkj1!HpK<^VzsY^E#=OI9qd3}a{;A!0)Ua5VYp&wBnpsb_5 z=sy>fsvB}*_mdQL&Udqrb8d)eF)e^w3{x1-askFYfib!O;z^NZ86yd-p0HLJjfa%P z{V~#>k2W8ofbVu8A^mrG%SW1aQ(Cv1ms7vpO8dWH-q+_Zx1Y^>?P=rvJ6PLae!ml) z`?O!Mr-Keq!znItjSJ>0IAmTygL#v7j)Z&Tn2Iar!m8}mSXUg0U*hqMRg@pBy`dtZ xI?<~*kwGWdZQ%(Uh^gziR_^8B5k>2|`()<^TF>%sh{2eR#;o`^6Mcvh{SUddlkxxn literal 0 HcmV?d00001 diff --git a/windows/redpanda-git-askpass/resource.h b/windows/redpanda-git-askpass/resource.h new file mode 100644 index 00000000..78fad4ab --- /dev/null +++ b/windows/redpanda-git-askpass/resource.h @@ -0,0 +1,7 @@ +#ifndef IDC_STATIC +#define IDC_STATIC (-1) +#endif + +#define IDD_MAIN_DIALOG 101 +#define ID_TXT_PASSWORD 40000 +#define ID_TXT_PROMPT 40001 diff --git a/windows/redpanda-git-askpass/resource.rc b/windows/redpanda-git-askpass/resource.rc new file mode 100644 index 00000000..a694bfb7 --- /dev/null +++ b/windows/redpanda-git-askpass/resource.rc @@ -0,0 +1,24 @@ +// Generated by ResEdit 1.6.5 +// Copyright (C) 2006-2015 +// http://www.resedit.net + +#include +#include +#include +#include "resource.h" + + + + +// +// Dialog resources +// +LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL +IDD_MAIN_DIALOG DIALOG 0, 0, 180, 56 +STYLE DS_3DLOOK | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_CAPTION | WS_VISIBLE | WS_POPUP | WS_SYSMENU +CAPTION "Dialog" +FONT 12, "Microsoft Sans Serif" +{ + LTEXT "Static", ID_TXT_PROMPT, 7, 7, 169, 13, SS_LEFT, WS_EX_LEFT + EDITTEXT ID_TXT_PASSWORD, 7, 26, 168, 19, ES_AUTOHSCROLL, WS_EX_LEFT +}