📄 wxpychemshell.py
字号:
#Boa:Frame:wxPyChemShell
"""
A GUI application for chemometric analysis
Includes:
-Storage and management of experimental data
-Partial least squares regression (PLS1)
-Principal components analysis
-Discriminant analysis
-Cluster analysis
-Feature or variable selection by genetic algorithm search
$Id: wxPyChemShell.py Copyright (C) 2005 Roger Jarvis
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
"""
# Hack to find out where the docs are installed
import pychem
import string, scipy, wx, os, copy, genetic, fileIO, sys, dircache
#whereami for binary dists etc
whereami = pychem.__path__[0]
#whereami for stand alone dist
whereami = string.split(pychem.__path__[0],'\\library.zip\\pychem')[0]
import tempfile
from config import Preferences
import wxImportDialog, wxImportConfirmDialog, wxExportDialog, wxPlotFrame
import wxImportMetaDataDialog, wxPlotPropertiesDialog, wxClassStructureWarningDialog
from wx import *
from wxPython.wx import *
from wxPython.lib.bcrtl.user.StaticTextCtrl import *
from wxPython.stc import *
from wxPython.gizmos import *
from StaticTextCtrl import *
from wxPython.lib.buttons import *
from wxPython.lib.anchors import LayoutAnchors
from wxPython.grid import *
from pychemlib.process import *
from genetic import *
from FitFun import *
import wxPyPlot
from wxPyPlot import PlotCanvas
from Pycluster import *
from pychemlib.chemometrics import *
from pychemlib.chemometrics import _index
from pychemlib.chemometrics import _put
from pychemlib.chemometrics import _sample
from pychemlib.chemometrics import __min__
from pychemlib.chemometrics import __max__
def create(parent):
return wxPyChemShell(parent)
[wxID_WXPYCHEMSHELL, wxID_WXPYCHEMSHELLBTNADDCLASS,
wxID_WXPYCHEMSHELLBTNADDMASK, wxID_WXPYCHEMSHELLBTNADDNAME,
wxID_WXPYCHEMSHELLBTNBROWSEWOKDIR, wxID_WXPYCHEMSHELLBTNCAPTURESNAPSHOT,
wxID_WXPYCHEMSHELLBTNCREATENEWPROJECT, wxID_WXPYCHEMSHELLBTNDELETEPROJECT,
wxID_WXPYCHEMSHELLBTNDELETESNAPSHOT, wxID_WXPYCHEMSHELLBTNEDITPROJDESC,
wxID_WXPYCHEMSHELLBTNEDITSNAPSHOTDESC, wxID_WXPYCHEMSHELLBTNEXPDFA,
wxID_WXPYCHEMSHELLBTNEXPORTCLUSTER, wxID_WXPYCHEMSHELLBTNEXPORTGADFA,
wxID_WXPYCHEMSHELLBTNEXPORTGADPLS, wxID_WXPYCHEMSHELLBTNEXPORTGAPLS,
wxID_WXPYCHEMSHELLBTNEXPORTPCARESULTS, wxID_WXPYCHEMSHELLBTNEXPPLS,
wxID_WXPYCHEMSHELLBTNGOGADFA, wxID_WXPYCHEMSHELLBTNGOPCA,
wxID_WXPYCHEMSHELLBTNGOTOGADPLS, wxID_WXPYCHEMSHELLBTNGOTOGAPLS,
wxID_WXPYCHEMSHELLBTNIMPORTMETADATA, wxID_WXPYCHEMSHELLBTNLOADSNAPSHOT,
wxID_WXPYCHEMSHELLBTNPCASWITCHDFA, wxID_WXPYCHEMSHELLBTNPLOTRAW,
wxID_WXPYCHEMSHELLBTNPLSCRUN, wxID_WXPYCHEMSHELLBTNRENAMEPROJECT,
wxID_WXPYCHEMSHELLBTNRENAMESNAPSHOT, wxID_WXPYCHEMSHELLBTNRUNCLUSTERING,
wxID_WXPYCHEMSHELLBTNRUNDFA, wxID_WXPYCHEMSHELLBTNRUNFULLDFA,
wxID_WXPYCHEMSHELLBTNRUNFULLPLS, wxID_WXPYCHEMSHELLBTNRUNGAPLS,
wxID_WXPYCHEMSHELLBTNRUNPCA, wxID_WXPYCHEMSHELLBTNSPECTRADELETE,
wxID_WXPYCHEMSHELLBTNSPECTRADOWN, wxID_WXPYCHEMSHELLBTNSPECTRARESET,
wxID_WXPYCHEMSHELLBTNSPECTRAUP, wxID_WXPYCHEMSHELLBTNUPDATEEXPMANCHOICES,
wxID_WXPYCHEMSHELLBTNUPDATEPROJDESC, wxID_WXPYCHEMSHELLBTNUPDATESNAPSHOTDESC,
wxID_WXPYCHEMSHELLCBAVLINK, wxID_WXPYCHEMSHELLCBCENTLINK,
wxID_WXPYCHEMSHELLCBDFAMAXGEN, wxID_WXPYCHEMSHELLCBDFAMUT,
wxID_WXPYCHEMSHELLCBDFAREPUNTIL, wxID_WXPYCHEMSHELLCBDFASAVEPC,
wxID_WXPYCHEMSHELLCBDFAXOVER, wxID_WXPYCHEMSHELLCBDFAXVAL,
wxID_WXPYCHEMSHELLCBGENERATEMASK, wxID_WXPYCHEMSHELLCBMAXLINK,
wxID_WXPYCHEMSHELLCBPLS1, wxID_WXPYCHEMSHELLCBPLS2, wxID_WXPYCHEMSHELLCBPLS3,
wxID_WXPYCHEMSHELLCBPLS4, wxID_WXPYCHEMSHELLCBPLS5,
wxID_WXPYCHEMSHELLCBPLSCMAXGEN, wxID_WXPYCHEMSHELLCBPLSCMUT,
wxID_WXPYCHEMSHELLCBPLSCREPUNTIL, wxID_WXPYCHEMSHELLCBPLSCSAVEPER,
wxID_WXPYCHEMSHELLCBPLSCXOVER, wxID_WXPYCHEMSHELLCBSINGLELINK,
wxID_WXPYCHEMSHELLCBUSECLASS, wxID_WXPYCHEMSHELLCHSELECTCLASS,
wxID_WXPYCHEMSHELLCHSELECTNAMES, wxID_WXPYCHEMSHELLCHVALIDATION,
wxID_WXPYCHEMSHELLCHXUNITS, wxID_WXPYCHEMSHELLCHYUNITS,
wxID_WXPYCHEMSHELLGRDNAMES, wxID_WXPYCHEMSHELLLBSPECTRA1,
wxID_WXPYCHEMSHELLLBSPECTRA2, wxID_WXPYCHEMSHELLNBDFAMODPLOT,
wxID_WXPYCHEMSHELLNBMAIN, wxID_WXPYCHEMSHELLNBPLS1,
wxID_WXPYCHEMSHELLNBPLSCMODEL, wxID_WXPYCHEMSHELLPLCCLUSTER,
wxID_WXPYCHEMSHELLPLCDFA1V2, wxID_WXPYCHEMSHELLPLCDFAEIGS,
wxID_WXPYCHEMSHELLPLCDFAEIGS, wxID_WXPYCHEMSHELLPLCDFAFREQPLOT,
wxID_WXPYCHEMSHELLPLCDFAGRPDISTPLOT, wxID_WXPYCHEMSHELLPLCDFALOADING,
wxID_WXPYCHEMSHELLPLCDFALOADSV, wxID_WXPYCHEMSHELLPLCDFAOPTPLOT,
wxID_WXPYCHEMSHELLPLCDFAPERVAR, wxID_WXPYCHEMSHELLPLCDFASCORES,
wxID_WXPYCHEMSHELLPLCPCALOAD, wxID_WXPYCHEMSHELLPLCPCALOADSV,
wxID_WXPYCHEMSHELLPLCPCASCORE, wxID_WXPYCHEMSHELLPLCPCEIGS,
wxID_WXPYCHEMSHELLPLCPCVAR, wxID_WXPYCHEMSHELLPLCPLS1,
wxID_WXPYCHEMSHELLPLCPLS2, wxID_WXPYCHEMSHELLPLCPLS3,
wxID_WXPYCHEMSHELLPLCPLS4, wxID_WXPYCHEMSHELLPLCPLS5,
wxID_WXPYCHEMSHELLPLCPLSCERRPLOT, wxID_WXPYCHEMSHELLPLCPLSCFREQPLOT,
wxID_WXPYCHEMSHELLPLCPLSCMODPLOT, wxID_WXPYCHEMSHELLPLCPLSCOPTPLOT,
wxID_WXPYCHEMSHELLPLCPLSCVARPLOT, wxID_WXPYCHEMSHELLPLCPLSERROR,
wxID_WXPYCHEMSHELLPLCPLSHETERO, wxID_WXPYCHEMSHELLPLCPLSLOADING,
wxID_WXPYCHEMSHELLPLCPLSMODEL, wxID_WXPYCHEMSHELLPLCSPECTRARAW,
wxID_WXPYCHEMSHELLPLDFA, wxID_WXPYCHEMSHELLPLFULLDFA,
wxID_WXPYCHEMSHELLPLPCA, wxID_WXPYCHEMSHELLPLPLS, wxID_WXPYCHEMSHELLPLPLSC,
wxID_WXPYCHEMSHELLPLSPECTRA, wxID_WXPYCHEMSHELLRBABSCORR,
wxID_WXPYCHEMSHELLRBABSUNCENTCORR, wxID_WXPYCHEMSHELLRBCITYBLOCK,
wxID_WXPYCHEMSHELLRBCORRELATION, wxID_WXPYCHEMSHELLRBDFAPROCDATA,
wxID_WXPYCHEMSHELLRBDFARAWDATA, wxID_WXPYCHEMSHELLRBDFAUSEPCSCORES,
wxID_WXPYCHEMSHELLRBEUCLIDEAN, wxID_WXPYCHEMSHELLRBGADFAPROC,
wxID_WXPYCHEMSHELLRBGADFARAW, wxID_WXPYCHEMSHELLRBGADPLSPROC,
wxID_WXPYCHEMSHELLRBGADPLSRAW, wxID_WXPYCHEMSHELLRBGAPLSCPROC,
wxID_WXPYCHEMSHELLRBGAPLSCRAW, wxID_WXPYCHEMSHELLRBHARMONICEUC,
wxID_WXPYCHEMSHELLRBHCLUSTER, wxID_WXPYCHEMSHELLRBKENDALLS,
wxID_WXPYCHEMSHELLRBKMEANS, wxID_WXPYCHEMSHELLRBKMEDIAN,
wxID_WXPYCHEMSHELLRBKMEDOIDS, wxID_WXPYCHEMSHELLRBPCACORRMAT,
wxID_WXPYCHEMSHELLRBPCACOVARMAT, wxID_WXPYCHEMSHELLRBPCANIPALS,
wxID_WXPYCHEMSHELLRBPCASVD, wxID_WXPYCHEMSHELLRBPCAUSEPROC,
wxID_WXPYCHEMSHELLRBPCAUSERAW, wxID_WXPYCHEMSHELLRBPLOTALL,
wxID_WXPYCHEMSHELLRBPLOTCOLOURS, wxID_WXPYCHEMSHELLRBPLOTNAME,
wxID_WXPYCHEMSHELLRBPLOTPROCESSED, wxID_WXPYCHEMSHELLRBPLOTRAW,
wxID_WXPYCHEMSHELLRBPLOTSINGLE, wxID_WXPYCHEMSHELLRBPLOTTYPICAL,
wxID_WXPYCHEMSHELLRBPLSUSEPROC, wxID_WXPYCHEMSHELLRBPLSUSERAW,
wxID_WXPYCHEMSHELLRBSPEARMANS, wxID_WXPYCHEMSHELLRBUNCENTREDCORR,
wxID_WXPYCHEMSHELLRBUSEDFSCORES, wxID_WXPYCHEMSHELLRBUSEPCSCORES,
wxID_WXPYCHEMSHELLRBUSEPROC, wxID_WXPYCHEMSHELLRBUSERAW,
wxID_WXPYCHEMSHELLSASHWINDOW1, wxID_WXPYCHEMSHELLSASHWINDOW10,
wxID_WXPYCHEMSHELLSASHWINDOW11, wxID_WXPYCHEMSHELLSASHWINDOW12,
wxID_WXPYCHEMSHELLSASHWINDOW13, wxID_WXPYCHEMSHELLSASHWINDOW14,
wxID_WXPYCHEMSHELLSASHWINDOW15, wxID_WXPYCHEMSHELLSASHWINDOW2,
wxID_WXPYCHEMSHELLSASHWINDOW3, wxID_WXPYCHEMSHELLSASHWINDOW4,
wxID_WXPYCHEMSHELLSASHWINDOW5, wxID_WXPYCHEMSHELLSASHWINDOW6,
wxID_WXPYCHEMSHELLSASHWINDOW7, wxID_WXPYCHEMSHELLSASHWINDOW8,
wxID_WXPYCHEMSHELLSASHWINDOW9, wxID_WXPYCHEMSHELLSBDFAPARAMS,
wxID_WXPYCHEMSHELLSBDFARESULTS, wxID_WXPYCHEMSHELLSBPLSCRESULTS,
wxID_WXPYCHEMSHELLSPCGENMASK, wxID_WXPYCHEMSHELLSPCPLOTSPECTRA,
wxID_WXPYCHEMSHELLSPNDFABILOAD1, wxID_WXPYCHEMSHELLSPNDFABILOAD2,
wxID_WXPYCHEMSHELLSPNDFADFS, wxID_WXPYCHEMSHELLSPNDFALOAD1,
wxID_WXPYCHEMSHELLSPNDFAPCS, wxID_WXPYCHEMSHELLSPNDFASCORE1,
wxID_WXPYCHEMSHELLSPNDFASCORE2, wxID_WXPYCHEMSHELLSPNGADFA2DFROM,
wxID_WXPYCHEMSHELLSPNGADFA2DTO, wxID_WXPYCHEMSHELLSPNNOPASS,
wxID_WXPYCHEMSHELLSPNPCABILOAD1, wxID_WXPYCHEMSHELLSPNPCABILOAD2,
wxID_WXPYCHEMSHELLSPNPCLOAD1, wxID_WXPYCHEMSHELLSPNPCSCORE1,
wxID_WXPYCHEMSHELLSPNPCSCORES2, wxID_WXPYCHEMSHELLSPNPLSFACTOR,
wxID_WXPYCHEMSHELLSPNPLSMAXFAC, wxID_WXPYCHEMSHELLSTATICBOX1,
wxID_WXPYCHEMSHELLSTATICBOX2, wxID_WXPYCHEMSHELLSTATICBOX3,
wxID_WXPYCHEMSHELLSTATICBOX4, wxID_WXPYCHEMSHELLSTATICBOX5,
wxID_WXPYCHEMSHELLSTATICBOX6, wxID_WXPYCHEMSHELLSTATICBOX7,
wxID_WXPYCHEMSHELLSTATICBOX8, wxID_WXPYCHEMSHELLSTATICBOX9,
wxID_WXPYCHEMSHELLSTATICTEXT1, wxID_WXPYCHEMSHELLSTATICTEXT10,
wxID_WXPYCHEMSHELLSTATICTEXT11, wxID_WXPYCHEMSHELLSTATICTEXT12,
wxID_WXPYCHEMSHELLSTATICTEXT13, wxID_WXPYCHEMSHELLSTATICTEXT14,
wxID_WXPYCHEMSHELLSTATICTEXT15, wxID_WXPYCHEMSHELLSTATICTEXT16,
wxID_WXPYCHEMSHELLSTATICTEXT17, wxID_WXPYCHEMSHELLSTATICTEXT18,
wxID_WXPYCHEMSHELLSTATICTEXT19, wxID_WXPYCHEMSHELLSTATICTEXT2,
wxID_WXPYCHEMSHELLSTATICTEXT20, wxID_WXPYCHEMSHELLSTATICTEXT21,
wxID_WXPYCHEMSHELLSTATICTEXT22, wxID_WXPYCHEMSHELLSTATICTEXT23,
wxID_WXPYCHEMSHELLSTATICTEXT24, wxID_WXPYCHEMSHELLSTATICTEXT25,
wxID_WXPYCHEMSHELLSTATICTEXT26, wxID_WXPYCHEMSHELLSTATICTEXT27,
wxID_WXPYCHEMSHELLSTATICTEXT28, wxID_WXPYCHEMSHELLSTATICTEXT3,
wxID_WXPYCHEMSHELLSTATICTEXT4, wxID_WXPYCHEMSHELLSTATICTEXT5,
wxID_WXPYCHEMSHELLSTATICTEXT6, wxID_WXPYCHEMSHELLSTATICTEXT7,
wxID_WXPYCHEMSHELLSTATICTEXT8, wxID_WXPYCHEMSHELLSTATICTEXT9,
wxID_WXPYCHEMSHELLSTBALGORITHMS, wxID_WXPYCHEMSHELLSTBDISTANCE,
wxID_WXPYCHEMSHELLSTBMAIN, wxID_WXPYCHEMSHELLSTBSELECTX,
wxID_WXPYCHEMSHELLSTCBROWSEPROJECTFILE, wxID_WXPYCHEMSHELLSTCPROJECTDESC,
wxID_WXPYCHEMSHELLSTCRANGEFROM, wxID_WXPYCHEMSHELLSTCRANGETO,
wxID_WXPYCHEMSHELLSTCSNAPSHOTDESC, wxID_WXPYCHEMSHELLSTDFA6,
wxID_WXPYCHEMSHELLSTDFA7, wxID_WXPYCHEMSHELLSTDFAINSRATE,
wxID_WXPYCHEMSHELLSTDFAMAXDFS, wxID_WXPYCHEMSHELLSTDFAMAXGEN,
wxID_WXPYCHEMSHELLSTDFAMUTRATE, wxID_WXPYCHEMSHELLSTDFANOINDS,
wxID_WXPYCHEMSHELLSTDFANORUNS, wxID_WXPYCHEMSHELLSTDFAREPUNTIL,
wxID_WXPYCHEMSHELLSTDFASAVEPC, wxID_WXPYCHEMSHELLSTDFAVARSFROM,
wxID_WXPYCHEMSHELLSTDFAVARSTO, wxID_WXPYCHEMSHELLSTDFAXOVERRATE,
wxID_WXPYCHEMSHELLSTGADFA1, wxID_WXPYCHEMSHELLSTGADFA2,
wxID_WXPYCHEMSHELLSTNOPASS, wxID_WXPYCHEMSHELLSTPCA1,
wxID_WXPYCHEMSHELLSTPCA2, wxID_WXPYCHEMSHELLSTPCA3, wxID_WXPYCHEMSHELLSTPCA5,
wxID_WXPYCHEMSHELLSTPCA6, wxID_WXPYCHEMSHELLSTPLS1,
wxID_WXPYCHEMSHELLSTPLS12, wxID_WXPYCHEMSHELLSTPLS13,
wxID_WXPYCHEMSHELLSTPLS2, wxID_WXPYCHEMSHELLSTPLS4, wxID_WXPYCHEMSHELLSTPLS5,
wxID_WXPYCHEMSHELLSTPLS6, wxID_WXPYCHEMSHELLSTPLS7, wxID_WXPYCHEMSHELLSTPLS8,
wxID_WXPYCHEMSHELLSTPLS9, wxID_WXPYCHEMSHELLSTPLSCINSRATE,
wxID_WXPYCHEMSHELLSTPLSCMAXFAC, wxID_WXPYCHEMSHELLSTPLSCMAXGEN,
wxID_WXPYCHEMSHELLSTPLSCMUTRATE, wxID_WXPYCHEMSHELLSTPLSCNOINDS,
wxID_WXPYCHEMSHELLSTPLSCNORUNS, wxID_WXPYCHEMSHELLSTPLSCREPUNTIL,
wxID_WXPYCHEMSHELLSTPLSCSAVEPER, wxID_WXPYCHEMSHELLSTPLSCVARFROM,
wxID_WXPYCHEMSHELLSTPLSCVARTO, wxID_WXPYCHEMSHELLSTPLSCXOVERRATE,
wxID_WXPYCHEMSHELLSTPLSFAC, wxID_WXPYCHEMSHELLSTSPECTRA2,
wxID_WXPYCHEMSHELLSTUSE, wxID_WXPYCHEMSHELLSWDFAFREQPLOT,
wxID_WXPYCHEMSHELLSWDFAGRPDISTPLOT, wxID_WXPYCHEMSHELLSWDFAMODPLOT,
wxID_WXPYCHEMSHELLSWDFAOPTPLOT, wxID_WXPYCHEMSHELLSWDFAPARAMS,
wxID_WXPYCHEMSHELLSWFULLPCA1, wxID_WXPYCHEMSHELLSWFULLPCA2,
wxID_WXPYCHEMSHELLSWNAMES, wxID_WXPYCHEMSHELLSWPCA3,
wxID_WXPYCHEMSHELLSWPCAEIGS, wxID_WXPYCHEMSHELLSWPCALOADSV,
wxID_WXPYCHEMSHELLSWPLS2, wxID_WXPYCHEMSHELLSWPLS3, wxID_WXPYCHEMSHELLSWPLS4,
wxID_WXPYCHEMSHELLSWPLS5, wxID_WXPYCHEMSHELLSWPLSCFREQPLOT,
wxID_WXPYCHEMSHELLSWPLSCMODPLOT, wxID_WXPYCHEMSHELLSWPLSCOPTPLOT,
wxID_WXPYCHEMSHELLSWPLSCPARAMS, wxID_WXPYCHEMSHELLSWPLSCVARPLOT,
wxID_WXPYCHEMSHELLSWSPECTRA1, wxID_WXPYCHEMSHELLSWSPECTRA2,
wxID_WXPYCHEMSHELLSWSPECTRAPROCMEAN, wxID_WXPYCHEMSHELLSWSPECTRARAW,
wxID_WXPYCHEMSHELLTBMAIN, wxID_WXPYCHEMSHELLTCCLUSTER,
wxID_WXPYCHEMSHELLTCPCANUM, wxID_WXPYCHEMSHELLTRCPROJECTSNAPSHOT,
wxID_WXPYCHEMSHELLTREDFARESULTS, wxID_WXPYCHEMSHELLTREPLS1,
wxID_WXPYCHEMSHELLTREPLSCRESULTS, wxID_WXPYCHEMSHELLTXTGADPLSLSR,
wxID_WXPYCHEMSHELLTXTGAPLSCLSR, wxID_WXPYCHEMSHELLTXTPLSSTATS,
wxID_WXPYCHEMSHELLWDCLUSTER, wxID_WXPYCHEMSHELLWDGADFAPLOT,
wxID_WXPYCHEMSHELLWDNBPLS, wxID_WXPYCHEMSHELLWDNBPROPS,
wxID_WXPYCHEMSHELLWDNBSNAPSHOTS,
] = map(lambda _init_ctrls: wxNewId(), range(321))
[wxID_WXPYCHEMSHELLMNUFILEITEMS1, wxID_WXPYCHEMSHELLMNUFILEITEMS3,
] = map(lambda _init_coll_mnuFile_Items: wxNewId(), range(2))
[wxID_WXPYCHEMSHELLMNUPOPUPMENUITEMS0, wxID_WXPYCHEMSHELLMNUPOPUPMENUITEMS1,
wxID_WXPYCHEMSHELLMNUPOPUPMENUITEMS2, wxID_WXPYCHEMSHELLMNUPOPUPMENUITEMS3,
wxID_WXPYCHEMSHELLMNUPOPUPMENUITEMS4,
] = map(lambda _init_coll_mnuPopUpMenu_Items: wxNewId(), range(5))
[wxID_WXPYCHEMSHELLMNUGRIDCOPYITEMS0, wxID_WXPYCHEMSHELLMNUGRIDCOPYITEMS1,
wxID_WXPYCHEMSHELLMNUGRIDCOPYITEMS2, wxID_WXPYCHEMSHELLMNUGRIDCOPYITEMS3,
] = map(lambda _init_coll_mnuGridCopy_Items: wxNewId(), range(4))
[wxID_WXPYCHEMSHELLMNUGRIDCOLSITEMS0, wxID_WXPYCHEMSHELLMNUGRIDCOLSITEMS1,
] = map(lambda _init_coll_mnuGridCols_Items: wxNewId(), range(2))
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -