📄 mainfrm.cpp
字号:
// MainFrm.cpp : implementation of the CMainFrame class
//
#include "stdafx.h"
#include "VisualJava.h"
#include "MainFrm.h"
#include "FileOpenDlgEx.h"
#include "NewFolderDlg.h"
#include "editcmd.h"
#include "registry.h"
#include "editreg.h"
#include "filesup.h"
#include "wm.h"
#include "WorkSpace.h"
#include "ToolRunner.h"
#include "UndoRedoDlg.h"
#include "SAPrefsDialog.h"
#include "FileViewTree.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
// Registered window message posted when user changes text in edit box
const UINT wm_MsgInform = RegisterWindowMessage("CC667211-7dE9-40c5-809A-cDA48E401414");
const UINT BGFSOFT_MSG_DROPDOWN = ::RegisterWindowMessage(_T("21F298B6-E144-4ac6-AEA2-AFBA0FC91401"));
/////////////////////////////////////////////////////////////////////////////
// CMainFrame
//CList<CMainDockBar*,CMainDockBar*> CMainFrame::m_DockingWindows;
IMPLEMENT_DYNAMIC(CMainFrame, CBaseFrameWnd)
#define CONTROL_BARS _T("Control Bars");
const int iMaxUserToolbars = 10;
const UINT uiFirstUserToolBarId = AFX_IDW_CONTROLBAR_FIRST + 40;
const UINT uiLastUserToolBarId = uiFirstUserToolBarId + iMaxUserToolbars - 1;
const UINT id_uiwizBarId = uiFirstUserToolBarId;
const UINT id_uiBuildbar = uiFirstUserToolBarId+1;
const UINT CTRL_BAR_WORKDPACE = uiFirstUserToolBarId+2;
const UINT CTRL_BAR_OUTPUT = uiFirstUserToolBarId+3;
BEGIN_MESSAGE_MAP(CMainFrame, CBaseFrameWnd)
//{{AFX_MSG_MAP(CMainFrame)
//}}AFX_MSG_MAP
ON_COMMAND(ID_SDK_SYSTEM, OnSdkSystem)
ON_UPDATE_COMMAND_UI(ID_SDK_SYSTEM, OnUpdateSdkSystem)
ON_COMMAND(ID_BUILD_START_DEBUG_GO, OnBuildStartDebugGo)
ON_UPDATE_COMMAND_UI(ID_BUILD_START_DEBUG_GO, OnUpdateBuildStartDebugGo)
ON_WM_INITMENUPOPUP()
ON_REGISTERED_MESSAGE(BGFSOFT_MSG_DROPDOWN,OnDropDown)
ON_REGISTERED_MESSAGE(wm_MsgInform, OnBroadCastMsg)
ON_WM_CREATE()
ON_WM_CLOSE()
ON_COMMAND(ID_GO, OnGo)
ON_UPDATE_COMMAND_UI(ID_GO, OnUpdateGo)
ON_COMMAND(ID_RUN, OnRun)
ON_UPDATE_COMMAND_UI(ID_RUN, OnUpdateRun)
ON_COMMAND(ID_STOPBUILD, OnStopBuild)
ON_UPDATE_COMMAND_UI(ID_STOPBUILD, OnUpdateStopBuild)
ON_COMMAND(ID_BUILD, OnBuild)
ON_UPDATE_COMMAND_UI(ID_BUILD, OnUpdateBuild)
ON_WM_MDIACTIVATE()
ON_COMMAND(ID_SEARCH, OnSearch)
ON_UPDATE_COMMAND_UI(ID_SEARCH, OnUpdateSearch)
ON_COMMAND(ID_WINDOW_LIST, OnWindowList)
ON_UPDATE_COMMAND_UI(ID_WINDOW_LIST, OnUpdateWindowList)
ON_COMMAND(ID_FIND_IN_FILE, OnFindInFile)
ON_UPDATE_COMMAND_UI(ID_FIND_IN_FILE, OnUpdateFindInFile)
ON_COMMAND(ID_WIZARDBAR_MENU, OnWizBarMenu)
ON_UPDATE_COMMAND_UI(ID_WIZARDBAR_MENU, OnUpdateWizBarMenu)
ON_COMMAND(ID_VIEW_OUTPUT, OnViewOutput)
ON_UPDATE_COMMAND_UI(ID_VIEW_OUTPUT, OnUpdateViewOutput)
ON_COMMAND(ID_VIEW_WORKSPACE, OnViewWorkspace)
ON_UPDATE_COMMAND_UI(ID_VIEW_WORKSPACE, OnUpdateViewWorkspace)
ON_UPDATE_COMMAND_UI(ID_WINDOW_PREVIOUS, OnUpdateWindowPrevious)
ON_COMMAND(ID_WINDOW_NEXT, OnWindowNext)
ON_UPDATE_COMMAND_UI(ID_WINDOW_NEXT, OnUpdateWindowNext)
ON_COMMAND(ID_WINDOW_FILES, OnWindowFiles)
ON_UPDATE_COMMAND_UI(ID_WINDOW_FILES, OnUpdateWindowFiles)
ON_COMMAND(ID_WINDOW_DOCKING_VIEW, OnWindowDockingView)
ON_UPDATE_COMMAND_UI(ID_WINDOW_DOCKING_VIEW, OnUpdateWindowDockingView)
ON_COMMAND(ID_WINDOW_CLOSE_ALL, OnWindowCloseAll)
ON_UPDATE_COMMAND_UI(ID_WINDOW_CLOSE_ALL, OnUpdateWindowCloseAll)
ON_COMMAND(ID_WINDOW_CLOSE, OnWindowClose)
ON_UPDATE_COMMAND_UI(ID_WINDOW_CLOSE, OnUpdateWindowClose)
ON_COMMAND(ID_WINDOW_CASCADE, OnWindowCascade)
ON_UPDATE_COMMAND_UI(ID_WINDOW_CASCADE, OnUpdateWindowCascade)
ON_COMMAND(ID_VIEW_REFRESH, OnViewRefresh)
ON_UPDATE_COMMAND_UI(ID_VIEW_REFRESH, OnUpdateViewRefresh)
ON_COMMAND(ID_VIEW_PROPERTIES, OnViewProperties)
ON_UPDATE_COMMAND_UI(ID_VIEW_PROPERTIES, OnUpdateViewProperties)
ON_COMMAND(ID_VIEW_FULLSCREEN, OnViewFullscreen)
ON_UPDATE_COMMAND_UI(ID_VIEW_FULLSCREEN, OnUpdateViewFullscreen)
ON_COMMAND(ID_EDIT_FIND_IN_FILES, OnEditFindInFile)
ON_UPDATE_COMMAND_UI(ID_EDIT_FIND_IN_FILES, OnUpdateEditFindInFile)
ON_COMMAND(ID_FILE_SAVE_ALL, OnFileSaveAll)
ON_UPDATE_COMMAND_UI(ID_FILE_SAVE_ALL, OnUpdateFileSaveAll)
ON_UPDATE_COMMAND_UI(ID_CLASS_BROWSER, OnUpdateWizBarClass)
ON_UPDATE_COMMAND_UI(ID_FUNCTION_BROWSER, OnUpdateWizBarFunct)
ON_COMMAND(ID_FILE_OPENWORKSPACE, OnFileOpenworkspace)
ON_UPDATE_COMMAND_UI(ID_FILE_OPENWORKSPACE, OnUpdateFileOpenworkspace)
ON_COMMAND(ID_FILE_SAVEWORKSPACE, OnFileSaveworkspace)
ON_UPDATE_COMMAND_UI(ID_FILE_SAVEWORKSPACE, OnUpdateFileSaveworkspace)
ON_COMMAND(ID_FILE_CLOSEWORKSPACE, OnFileCloseworkspace)
ON_UPDATE_COMMAND_UI(ID_FILE_CLOSEWORKSPACE, OnUpdateFileCloseworkspace)
ON_COMMAND(ID_EDIT_GOTO, OnEditGoto)
ON_UPDATE_COMMAND_UI(ID_EDIT_GOTO, OnUpdateEditGoto)
ON_COMMAND(ID_WORKSPC_ADD_NEW_PROJECT, OnWorkspcAddNewProject)
ON_UPDATE_COMMAND_UI(ID_WORKSPC_ADD_NEW_PROJECT, OnUpdateWorkspcAddNewProject)
ON_COMMAND(ID_WORKSPC_DOCKING_VIEW, OnWorkspcDockingView)
ON_UPDATE_COMMAND_UI(ID_WORKSPC_DOCKING_VIEW, OnUpdateWorkspcDockingView)
ON_COMMAND(ID_WORKSPC_HIDE, OnWorkspcHide)
ON_UPDATE_COMMAND_UI(ID_WORKSPC_HIDE, OnUpdateWorkspcHide)
ON_COMMAND(ID_WORKSPC_INSERT_PROJ_INTO, OnWorkspcInsertProjInto)
ON_UPDATE_COMMAND_UI(ID_WORKSPC_INSERT_PROJ_INTO, OnUpdateWorkspcInsertProjInto)
ON_COMMAND(ID_WORKSPC_PROP, OnWorkspcProp)
ON_UPDATE_COMMAND_UI(ID_WORKSPC_PROP, OnUpdateWorkspcProp)
ON_COMMAND(ID_PROJECT_BUILD, OnProjectBuild)
ON_UPDATE_COMMAND_UI(ID_PROJECT_BUILD, OnUpdateProjectBuild)
ON_COMMAND(ID_PROJECT_BUILD_SEL, OnProjectBuildSel)
ON_UPDATE_COMMAND_UI(ID_PROJECT_BUILD_SEL, OnUpdateProjectBuildSel)
ON_COMMAND(ID_PROJECT_CLEAN, OnProjectClean)
ON_UPDATE_COMMAND_UI(ID_PROJECT_CLEAN, OnUpdateProjectClean)
ON_COMMAND(ID_PROJECT_DEPENDENCIES, OnProjectDependencies)
ON_UPDATE_COMMAND_UI(ID_PROJECT_DEPENDENCIES, OnUpdateProjectDependencies)
ON_COMMAND(ID_PROJECT_DOCKING_VIEW, OnProjectDockingView)
ON_UPDATE_COMMAND_UI(ID_PROJECT_DOCKING_VIEW, OnUpdateProjectDockingView)
ON_COMMAND(ID_PROJECT_EXPORT_MAKEFILE, OnProjectExportMakefile)
ON_UPDATE_COMMAND_UI(ID_PROJECT_EXPORT_MAKEFILE, OnUpdateProjectExportMakefile)
ON_COMMAND(ID_PROJECT_HIDE, OnProjectHide)
ON_UPDATE_COMMAND_UI(ID_PROJECT_HIDE, OnUpdateProjectHide)
ON_COMMAND(ID_PROJECT_INSERT_PROJECT_INTO_WORKSPACE, OnProjectInsertProjectIntoWorkspace)
ON_UPDATE_COMMAND_UI(ID_PROJECT_INSERT_PROJECT_INTO_WORKSPACE, OnUpdateProjectInsertProjectIntoWorkspace)
ON_COMMAND(ID_PROJECT_NEW_FOLDER, OnProjectNewFolder)
ON_UPDATE_COMMAND_UI(ID_PROJECT_NEW_FOLDER, OnUpdateProjectNewFolder)
ON_COMMAND(ID_PROJECT_PROP, OnProjectProp)
ON_UPDATE_COMMAND_UI(ID_PROJECT_PROP, OnUpdateProjectProp)
ON_COMMAND(ID_PROJECT_SET_AS_ACTIVE, OnProjectSetAsActive)
ON_UPDATE_COMMAND_UI(ID_PROJECT_SET_AS_ACTIVE, OnUpdateProjectSetAsActive)
ON_COMMAND(ID_PROJECT_SETTINGS, OnProjectSettings)
ON_UPDATE_COMMAND_UI(ID_PROJECT_SETTINGS, OnUpdateProjectSettings)
ON_COMMAND(ID_PROJECT_UNLOAD, OnProjectUnload)
ON_UPDATE_COMMAND_UI(ID_PROJECT_UNLOAD, OnUpdateProjectUnload)
ON_COMMAND(ID_FOLDER_NEW, OnFolderNew)
ON_UPDATE_COMMAND_UI(ID_FOLDER_NEW, OnUpdateFolderNew)
ON_COMMAND(ID_FOLDER_HIDE, OnFolderHide)
ON_UPDATE_COMMAND_UI(ID_FOLDER_HIDE, OnUpdateFolderHide)
ON_COMMAND(ID_FOLDER_DOCKING_VIEW, OnFolderDockingView)
ON_UPDATE_COMMAND_UI(ID_FOLDER_DOCKING_VIEW, OnUpdateFolderDockingView)
ON_COMMAND(ID_FOLDER_ADD_FILES, OnFolderAddFiles)
ON_UPDATE_COMMAND_UI(ID_FOLDER_ADD_FILES, OnUpdateFolderAddFiles)
ON_COMMAND(ID_FOLDER_PROP, OnFolderProp)
ON_UPDATE_COMMAND_UI(ID_FOLDER_PROP, OnUpdateFolderProp)
ON_COMMAND(ID_FOLDER_SETTINGS, OnFolderSettings)
ON_UPDATE_COMMAND_UI(ID_FOLDER_SETTINGS, OnUpdateFolderSettings)
ON_COMMAND(ID_FILE_OPENEX, OnFileOpenex)
ON_UPDATE_COMMAND_UI(ID_FILE_OPENEX, OnUpdateFileOpenex)
ON_COMMAND(ID_FILE_PROP, OnFileProp)
ON_UPDATE_COMMAND_UI(ID_FILE_PROP, OnUpdateFileProp)
ON_COMMAND(ID_FILE_SETTINGS, OnFileSettings)
ON_UPDATE_COMMAND_UI(ID_FILE_SETTINGS, OnUpdateFileSettings)
ON_COMMAND(ID_TOOL_OPTIONS, OnToolOptions)
ON_WM_LBUTTONDOWN()
ON_COMMAND(ID_WIZBAR_MENU,OnWizBarMenu)
ON_UPDATE_COMMAND_UI(ID_WIZBAR_MENU,OnUpdateWizBarMenu)
ON_COMMAND(ID_FILE_OPENWORKSPACE, OnFileOpenworkspace)
ON_UPDATE_COMMAND_UI(ID_FILE_OPENWORKSPACE, OnUpdateFileOpenworkspace)
ON_WM_SETFOCUS()
//ON_CBN_SELCHANGE(ID_CLASS_BROWSER, OnSelchangeClass)
//ON_CBN_SELCHANGE(ID_FUNCTION_BROWSER, OnSelchangeFunction)
/*
ON_COMMAND(ID_VIEW_CUSTOMIZE, OnViewCustomize)
ON_REGISTERED_MESSAGE(BCGM_RESETTOOLBAR, OnToolbarReset)
ON_REGISTERED_MESSAGE(BCGM_TOOLBARMENU, OnToolbarContextMenu)
ON_REGISTERED_MESSAGE(BCGM_CUSTOMIZEHELP, OnHelpCustomizeToolbars)
*/
END_MESSAGE_MAP()
static UINT indicators[] =
{
ID_SEPARATOR, // status line indicator
//ID_EDIT_INDICATOR_POSITION,
//ID_EDIT_INDICATOR_COL,
//ID_INDICATOR_OVR,
//ID_EDIT_INDICATOR_READ,
//ID_EDIT_INDICATOR_CRLF,
ID_INDICATOR_CAPS,
ID_INDICATOR_NUM,
ID_INDICATOR_SCRL,
ID_INDICATOR_TIME
};
static UINT indicators1[] =
{
ID_SEPARATOR, // status line indicator
ID_EDIT_INDICATOR_POSITION,
ID_INDICATOR_OVR,
ID_EDIT_INDICATOR_READ,
ID_EDIT_INDICATOR_CRLF,
ID_INDICATOR_CAPS,
ID_INDICATOR_NUM,
ID_INDICATOR_SCRL,
ID_INDICATOR_TIME
};
static CBCGToolbarComboBoxButton *pClassWz = NULL;
static CBCGToolbarComboBoxButton *pFuncWz = NULL;
/////////////////////////////////////////////////////////////////////////////
// CMainFrame construction/destruction
CMainFrame::CMainFrame()
{
}
CMainFrame::~CMainFrame()
{
m_ilCCimages.DeleteImageList();
}
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CBaseFrameWnd::OnCreate(lpCreateStruct) == -1)
return -1;
CCustomizableComboBox::m_pComboBoxRuntimeClass = RUNTIME_CLASS(CWizBarComboBox);
//--------------------------
// Load toolbar user images:
//--------------------------
if (!m_BarImages.Load (IDB_USERIMGS))
{
MessageBox ("Can't find 'IDB_COMPILEBAR' file");
TRACE0("Failed to load user images\n");
return -1; // fail to create
}
CBCGToolBar::SetUserImages (&m_BarImages);
CBCGToolBar::EnableQuickCustomization ();
if (!m_wndMenuBar.Create (this))
{
TRACE0("Failed to create menubar\n");
return -1; // fail to create
}
m_wndMenuBar.SetBarStyle(m_wndMenuBar.GetBarStyle() | CBRS_SIZE_DYNAMIC);
if (!m_wndToolBar.CreateEx(this/*, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC*/) ||
!m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}
//CString strMainToolbarTitle;
//strMainToolbarTitle.LoadString (IDS_MAIN_TOOLBAR);
//m_wndToolBar.SetWindowText (strMainToolbarTitle);
m_wndToolBar.SetBarStyle(m_wndToolBar.GetBarStyle() |
CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC|CBRS_BORDER_LEFT|CBRS_GRIPPER);
int index = m_wndToolBar.CommandToIndex(ID_SEP);
m_wndToolBar.RemoveButton(index);
m_wndToolBar.InsertSeparator(1);
index = m_wndToolBar.CommandToIndex(ID_SEP1);
m_wndToolBar.RemoveButton(index);
m_wndToolBar.InsertSeparator(5);
index = m_wndToolBar.CommandToIndex(ID_SEP2);
m_wndToolBar.RemoveButton(index);
m_wndToolBar.InsertSeparator(9);
index = m_wndToolBar.CommandToIndex(ID_SEP3);
m_wndToolBar.RemoveButton(index);
m_wndToolBar.InsertSeparator(12);
index = m_wndToolBar.CommandToIndex(ID_SEP4);
m_wndToolBar.RemoveButton(index);
m_wndToolBar.InsertSeparator(16);
index = m_wndToolBar.CommandToIndex(ID_COMBO_FIND);
m_wndToolBar.RemoveButton(index);
//insert find in file combobox
m_wndToolBar.InsertButton(CBCGToolbarComboBoxButton(ID_COMBO_FIND,-1,CBS_DROPDOWN|CBS_SORT),18);
index = m_wndToolBar.CommandToIndex(ID_SEP5);
m_wndToolBar.RemoveButton(index);
m_wndToolBar.InsertSeparator(19);
m_wndToolBar.SetWindowText("Standard");
m_wndUndoRedo.m_pMainFrame = this;
m_wndUndoRedo.Create(IDD_UNDO_REDO,this);
index = m_wndToolBar.CommandToIndex(ID_EDIT_UNDO);
int iImage = m_wndToolBar.GetDefaultImage(ID_EDIT_UNDO);
m_wndToolBar.RemoveButton(index);
m_wndToolBar.InsertButton(CBCGToolbarMenuButton
(ID_EDIT_UNDO,&m_wndUndoRedo,iImage),index);
index = m_wndToolBar.CommandToIndex(ID_EDIT_REDO);
iImage = m_wndToolBar.GetDefaultImage(ID_EDIT_REDO);
m_wndToolBar.RemoveButton(index);
m_wndToolBar.InsertButton(CBCGToolbarMenuButton
(ID_EDIT_REDO,&m_wndUndoRedo,iImage),index);
if (!m_wndStatusBar.Create(this) ||
!m_wndStatusBar.SetIndicators(indicators,sizeof(indicators)/sizeof(UINT)))
{
TRACE0("Failed to create status bar\n");
return -1; // fail to create
}
m_bActivated = FALSE;
// TODO: Delete these three lines if you don't want the toolbar to
// be dockable
m_wndMenuBar.EnableDocking(CBRS_ALIGN_ANY);
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndMenuBar);
DockControlBar(&m_wndToolBar);
/************************************************************
* compile bar *
************************************************************/
if (!m_wndBuildBar.Create(this,
WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_HIDE_INPLACE,
id_uiBuildbar))
{
TRACE0("Failed to create user toolbar\n");
return -1; // fail to create
}
m_wndBuildBar.SetWindowText("Build MiniBar");
m_wndBuildBar.SetBarStyle(m_wndBuildBar.GetBarStyle()|
CBRS_TOOLTIPS | CBRS_FLYBY |CBRS_BORDER_LEFT|CBRS_GRIPPER| CBRS_SIZE_DYNAMIC);
m_wndBuildBar.InsertButton(CBCGToolbarButton(ID_BUILD,0,"",TRUE));
m_wndBuildBar.InsertButton(CBCGToolbarButton(ID_STOPBUILD,2,"",TRUE));
CMenu menu;
menu.LoadMenu(IDR_JAVASDK_TOOL_MENU);
CMenu* pPopupMenu = menu.GetSubMenu (0);
VERIFY(pPopupMenu != NULL);
m_wndBuildBar.InsertButton(CBCGToolbarMenuButton
(ID_RUN,pPopupMenu->Detach(),3,"",TRUE/*,TRUE*/));
menu.Detach();
m_wndBuildBar.InsertButton(CBCGToolbarButton(ID_GO,4,"",TRUE));
m_wndBuildBar.InsertButton(CBCGToolbarButton(ID_INSERT_BREAKPOINT,5,"",TRUE));
m_wndBuildBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndBuildBar);
/************************************************************
* browsing bars *
************************************************************/
//create class and function browser
if (!m_wndWizardBar.Create(this,
WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_HIDE_INPLACE,
id_uiwizBarId))
{
TRACE0("Failed to create user toolbar\n");
return -1; // fail to create
}
m_wndWizardBar.SetWindowText("WizardBar");
m_wndWizardBar.InsertButton(CBCGToolbarComboBoxButton(ID_CLASS_BROWSER,-1,
CBS_DROPDOWN/*|CBS_SORT| CBS_HASSTRINGS | CBS_OWNERDRAWFIXED*/));
m_wndWizardBar.InsertButton(CBCGToolbarComboBoxButton(ID_FUNCTION_BROWSER,-1,
CBS_DROPDOWNLIST|CBS_SORT| CBS_HASSTRINGS | CBS_OWNERDRAWFIXED));
pClassWz = (CBCGToolbarComboBoxButton*)m_wndWizardBar.GetButton(0);
pFuncWz = (CBCGToolbarComboBoxButton*)m_wndWizardBar.GetButton(1);
CWorkSpaceBar::m_pwndWizbarClass = (CWizBarComboBox*)pClassWz->GetComboBox();
CWorkSpaceBar::m_pwndWizbarMethod = (CWizBarComboBox*)pFuncWz->GetComboBox();
m_wizbarImg.Create(IDB_WIZBMP,16,1,RGB(255,0,0));
CWizBarComboBox* pMethodComboBox = (CWizBarComboBox*)pFuncWz->GetComboBox();
pMethodComboBox->SetImageList(&m_wizbarImg);
menu;
menu.LoadMenu(IDR_WIZBAR_ACTIVE);
pPopupMenu = menu.GetSubMenu (0);
VERIFY (pPopupMenu != NULL);
m_wndWizardBar.InsertButton(CBCGToolbarMenuButton
(ID_WIZBAR_MENU,pPopupMenu->Detach(),6, "", TRUE));
m_wndWizardBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndWizardBar);
{
CRect rect (40, 40, 330, 440);
m_wndWorkspaceBar.CreateBar (_T ("Workspace"), rect, /*SCBS_FULLDRAG|*/SCBS_GRIPPER|SCBS_SHOWEDGES,
ABS_DOCKLEFT|ABS_VISIBLE, CTRL_BAR_WORKDPACE, this);
m_wndWorkspaceBar.SetBarStyle (m_wndWorkspaceBar.GetBarStyle() | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC);
}
{
CRect rect (40, 40, 440, 190);
m_wndOutputBar.CreateBar (_T ("Output"), rect, /*SCBS_FULLDRAG|*/SCBS_GRIPPER|
SCBS_SHOWEDGES, ABS_DOCKBOTTOM|ABS_VISIBLE, CTRL_BAR_OUTPUT, this);
m_wndOutputBar.SetBarStyle (m_wndOutputBar.GetBarStyle() | CBRS_TOOLTIPS |
CBRS_FLYBY | CBRS_SIZE_DYNAMIC);
}
////////////////////////////Code Completion ListCtrl///////////////////////////////
#define ID_CCLISTCTRL 0x70697070
CRect rcRect(0,0,100,100);
//WS_CHILD|LVS_ICON|LVS_SINGLESEL|LVS_SHOWSELALWAYS|LVS_AUTOARRANGE|LVS_ALIGNTOP
const DWORD dwStyle = WS_BORDER|WS_VSCROLL|WS_CHILD|LBS_HASSTRINGS|LBS_OWNERDRAWVARIABLE;
m_wndCodeCompletionList.Create(dwStyle,rcRect,this,ID_CCLISTCTRL);
m_ilCCimages.Create(16,16,ILC_COLOR24|ILC_MASK,7,2);
CBitmap bm;
bm.LoadBitmap(IDB_CLASSIMG);
m_ilCCimages.Add(&bm,RGB(255,0,0));
m_wndCodeCompletionList.SetImageList(&m_ilCCimages);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -