Guidance
指路人
g.yi.org
software / rapidq / Examples / Tools - IDE, Designer, Builder / FreeQ IDE src / inc ide / MainForm_Subs.inc

Register 
注册
Search 搜索
首页 
Home Home
Software
Upload

  


     SUB Splitter_Moved

      IF MainForm.Visible THEN
       MainForm.InheritOnShow      'weird bug fix
       re.Top = 0
       re.Left = 0
       IDE.RightSplitterPos = RightSplitter.Left '- RightSplitter.Width          'store for configuration
       IDE.LeftSplitterPos = LeftSplitter.Left

       IF LeftPanel.Visible THEN
        re.Width = CenterPanel.ClientWidth - RightSplitter.Width
       ELSE
        CenterPanel.Width = MainForm.ClientWidth
        re.Width = CenterPanel.ClientWidth  - RightSplitter.Width
       END IF

        'deal with height of edit control
       IF NOT!(BottomPanel.Visible) THEN
        CenterPanel.ClientHeight = MainForm.ClientHeight
        re.Height = CenterPanel.ClientHeight
       ELSE
        re.Height = CenterPanel.ClientHeight - BottomPanel.Height - BottomSplitter.Height
        BottomPanel.Top = BottomSplitter.Top + BottomSplitter.Height
        RichEditCompile.Width = BottomPanel.Width
        RichEditCompile.Height = BottomPanel.Height - 4
       END IF

       IF PanelSearch.Visible THEN
        PanelSearch.Width = RightPanel.Width
        SearchNextBut.Left = PanelSearch.Width - SearchNextBut.Width - 4
        SearchPrevBut.Left = SearchNextBut.Left - SearchPrevBut.Width - 4
        Poor.Width = SearchPrevBut.Left - 4
       END IF

       FindAllPanel.Width = RightPanel.ClientWidth - RightSplitter.Width
       SubFuncsPanel.Width = RightPanel.ClientWidth - RightSplitter.Width
       DEFINT i
       FOR i = 0 TO IDE_MAX_FILES
        SubFuncListView(i).Width = SubFuncsPanel.Width
        SubFuncListView(i).Height = SubFuncsPanel.Height
        SubFuncListView(i).Column(0).Width = SubFuncsPanel.Width
       NEXT i
      END IF


      STATIC AppInit AS INTEGER
      IF AppInit = FALSE THEN
       IF MainForm.Visible THEN
        IF IDE.AutoOpenLastProj THEN

         IF FILEEXISTS(TRIM$(mnuRecentProj0.CAPTION)) THEN
          MFE_LoadProject(TRIM$(mnuRecentProj0.CAPTION))
         ELSE
          SHOWMESSAGE "Project file: " + TRIM$(mnuRecentProj0.CAPTION) + " does not exist"
         END IF

        ELSE
         IF IDE.ShowWelcome THEN AppWizardForm.Show
        END IF

        AppInit = TRUE
       END IF
      END IF


     END SUB



     SUB MainFormResize
      Splitter_Moved                      'splitter positions are stored here
      IDE.MainFormLeft = MainForm.Left
      IDE.MainFormTop = MainForm.Top
      IDE.MainFormWidth = MainForm.Width
      IDE.MainFormHeight = MainForm.Height
      MainForm.DragZone.Right = MainForm.Width
      MainForm.DragZone.Bottom = MainForm.Height      'set drag zones!
     END SUB



     SUB MainFormOnDrag(Thefile AS STRING)
      MFE_Load(Thefile)
     END SUB





     SUB ShowYXPos
      MFE_UpdateSaveButton
      Stat.Panel(3).CAPTION = "row:" + STR$(re.WhereY) + " col:" + STR$(re.WhereX + 1)
      Stat.Panel(4).CAPTION = "Pos: " + STR$(re.SelStart) + "  Sel Len: " + STR$(re.SelLength)
     END SUB




     SUB MainForm_KeyDown(Key AS WORD, Shift AS INTEGER)         'this is for messaging when mainform has focus
'      CONST CtrlDown = 1
'      CONST ShiftDown = 256
      IF Key = 67 THEN IF (Shift = CtrlDown) THEN CopyClick : EXIT SUB       'ctrl-c key
      IF Key = 86 THEN IF (Shift = CtrlDown) THEN PasteClick : EXIT SUB      'ctrl-v key
      IF Key = 88 THEN IF (Shift = CtrlDown) THEN CutClick : EXIT SUB        'ctrl-x key
      IF Key = 65 THEN IF (Shift = CtrlDown) THEN SelectAllClick : EXIT SUB  'ctrl-a key
      IF Key = 89 THEN IF (Shift = CtrlDown) THEN RedoClick : EXIT SUB       'ctrl-y key
      IF Key = 90 THEN IF (Shift = CtrlDown) THEN UndoClick : EXIT SUB       'ctrl-z key

    'don't do this... will cause problems when QScintilla is focussed
    'DEFINT myKeyCode = OnKeyToKeyCode(Key, Shift)
    'IF IDE.MenuFuncPtr(myKeyCode) <> 0 THEN CALLFUNC IDE.MenuFuncPtr(myKeyCode)
     END SUB


     SUB MainRichEditKeyUp(Key AS WORD , Shift AS INTEGER)
      ShowYXPos
      MFE_GetCursor          'store position of cursor
'    IF IDE.HiLightTurnOFF = True THEN           'after error?
'        IDE.HiLightTurnOFF = False
'        IF IDE.ActiveLineBack <> -1 THEN re.ActiveLineColor(IDE.ActiveLineBack, 0) ELSE re.ActiveLineColor(IDE.BackGround, 0)
'    END IF
     END SUB




'process key presses from Scintilla,
'Key strokes with Ctrl + xx are passed to mainform and do not need to be processed here
'______________________________________________________________________________________
     SUB MainRichEditKeyDown(theKey AS WORD , Shift AS INTEGER)
      IF ((Shift AND 1) <> 1) AND (Shift <> 256) THEN                 'shift = 256, ctrl = 1, these are handled by Scintilla to default mainform accel keys
       DEFINT myKeyCode = OnKeyToKeyCode(theKey, Shift)
       IF IDE.MenuFuncPtr(myKeyCode) <> 0 THEN CALLFUNC IDE.MenuFuncPtr(myKeyCode)
      END IF

      IF IDE.AutoComplete THEN            'first handle autoComplete (Ctrl+.)
       IF (theKey = 190) AND (Shift = 1) THEN IDE_AutoCompleteWord
      END IF
     END SUB




     SUB MainRichEditMouseDown(Button% AS INTEGER , X% AS INTEGER , Y% AS INTEGER)
    'did we just highlight a line after sub search or compile error? Then turn it off
      IF IDE.HiLightTurnOFF = True THEN
       IDE.HiLightTurnOFF = False
       IF IDE.ActiveLineBack <> -1 THEN re.ActiveLineColor(IDE.ActiveLineBack, 0) ELSE re.ActiveLineColor(IDE.BackGround, 0)
      END IF

      IF Button% = 1 THEN                                        'Handle right button click
       IF (GetAsyncKeyState(VK_CONTROL) <> 0) AND (IDE.KeyWordLookUp.ItemCount > 0) THEN
        IDE_ShowQuickTip
       ELSE
    '        DEFINT x = Screen.MouseX :  IF x > Screen.Width - 500 THEN x = Screen.Width - 500   'too far to right
        DEFINT y = Screen.MOUSEY :  IF y > Screen.Height - 330 THEN y = Screen.Height - 330 'too far down
        RE_PopupMenu.Popup(Screen.MOUSEX, y)
       END IF
      END IF
     END SUB





     SUB MainRichEditMouseUp(Button% AS INTEGER , X% AS INTEGER , Y% AS INTEGER)       ', Shift% as integer)
      ShowYXPos
      MFE_GetCursor          'store position of cursor only on up (for selection)
     END SUB



     SUB RichEditCompile_MouseDown (Button%, X%, Y%, Shift%)
      IF Button% = 1 THEN                 'right mouse click
       IF Shift% <> 0 THEN
        DEFINT i
        DEFSTR TheErrLine, delimt$
        FOR i = 0 TO RichEditCompile.LineCount -1       '*****  parse for line with error  *****
         TheErrLine = RichEditCompile.Line(i)
         IF (LEFT$(TheErrLine, 5) = "Line ") AND (INSTR(TheErrLine, ": ") > 0) THEN
          TheErrLine = TheErrLine - "Line "
          IF INSTR(TheErrLine, Comma) THEN delimt$ = Comma ELSE delimt$ = ":"
          re.GotoLine(VAL(FIELD$(TheErrLine, delimt$, 1)) -1)
          re.ActiveLineColor(RGB(255,200,128), 0)
          IDE.HiLightTurnOFF = True               'toggle to turn off compile error line
         END IF
        NEXT i
'        ELSE
'            DIM OutputPopup AS QPOPUPMENU              'won't work in sub
'            DIM OutputPopup1 AS QMENUITEM
'                OutputPopup1.Caption = "Close"
'                OutputPopup1.OnClick = mnuViewBottomPanel_Click
'            OutputPopup.AddItems OutputPopup1
'            OutputPopup.Popup(Screen.MouseX, Screen.MouseY)
       END IF
      END IF
     END SUB



     SUB ProjFileList_Update
      ProjFileList.Mask = ProjFileListMaskEdit.Text
      ProjFileList.Directory = DirTree.Directory
      ProjFileList.Update
     END SUB



     SUB IDE_ShortCutToKeyStrokes(Sender AS QMENUITEM)
      DEFSTR sCommand = UCASE$(Sender.ShortCut)
      DEFINT isShift = INSTR(sCommand, "SHIFT")
      DEFINT isCtrl = INSTR(sCommand, "CTRL")
      DEFINT isAlt = INSTR(sCommand, "ALT")
      DEFINT strt = RINSTR(sCommand, "+")+1
      DEFSTR TheCode = TRIM$(MID$(sCommand, strt, LEN(sCommand) - strt+1))
      DEFINT theVKCode


      SELECT CASE TheCode
            ' VK_A thru VK_Z are the same as their ASCII equivalents: 'A' thru 'Z'
            ' VK_0 thru VK_9 are the same as their ASCII equivalents: '0' thru '9'
      CASE "0" TO "Z"              :   theVKCode = ASC(TheCode)
      CASE "F1" TO "F24"           :   theVKCode = VK_F1 + VAL(TheCode) - 1
      CASE "*"                     :   theVKCode = VK_MULTIPLY
      CASE "+"                     :   theVKCode = VK_ADD
      CASE "|"                     :   theVKCode = VK_SEPARATOR
      CASE "-"                     :   theVKCode = VK_SUBTRACT
      CASE "."                     :   theVKCode = VK_DECIMAL
      CASE "/"                     :   theVKCode = VK_DIVIDE
      CASE ELSE                    :   theVKCode = ""
      END SELECT

      IF (isCtrl AND GetAsyncKeyState(VK_CONTROL)) THEN        'ctrl-key down?
       keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0)       'set up
      END IF
      IF (isShift AND GetAsyncKeyState(VK_SHIFT)) THEN         'shift-key down?
       keybd_event(VK_SHIFT, 0, KEYEVENTF_KEYUP, 0)         'set up
      END IF
      IF (isAlt AND GetAsyncKeyState(VK_MENU)) THEN            'alt-key down?
       keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP, 0)          'set up
      END IF

      re.SetFocus                                              'activate scitilla control
      IF isCtrl THEN
       keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0)       'signal release of keys
       keybd_event(VK_CONTROL, 0, 0, 0)                     'press Ctrl
      END IF
      IF isShift THEN
       keybd_event(VK_SHIFT, 0, KEYEVENTF_KEYUP, 0)         'signal release of keys
       keybd_event(VK_SHIFT, 0, 0, 0)                       'press Ctrl
      END IF
      IF isAlt THEN
       keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP, 0)          'signal release of keys
       keybd_event(VK_MENU, 0, 0, 0)                        'press Ctrl
      END IF

      keybd_event(theVKCode, 0, 0, 0)                          'press Final Key

      IF isCtrl THEN keybd_event(VK_CONTROL, 0, &H02020202, 0) 'signal release of keys
      IF isShift THEN keybd_event(VK_SHIFT, 0, &H02020202, 0)  'signal release of keys
      IF isAlt THEN keybd_event(VK_MENU, 0, &H02020202, 0)     'signal release of keys
      DOEVENTS

     END SUB





     FUNCTION IDE_ManageMenu(Sender AS QMENUITEM) AS INTEGER
    'first store Caption, shortcut and visibility to global storage for stringGrid list
      IDE.MenuShortCutList = IDE.MenuShortCutList + Sender.CAPTION + ","_
       + Sender.ShortCut + "," _
       + STR$(Sender.Visible) + CRLF

      DEFSTR sCommand = UCASE$(Sender.ShortCut)
      DEFINT res = 0

    'for function pointers, put shift values in hi-order word
    'bits 0-7 = virtual key code pressed (0-255)
   ' (VK_CONTROL) = 1) (VK_SHIFT)= 256) (VK_MENU) =16)
      DEFINT isCtrl = ABS(INSTR(sCommand, "CTRL") > 0) * 256     'bit 8 (high) = Ctrl key is pressed (256)
      DEFINT isAlt = ABS(INSTR(sCommand, "ALT") > 0) * 512       'bit 9 (high) = Alt key is pressed  (512)
      DEFINT isShift = ABS(INSTR(sCommand, "SHIFT") > 0) * 1024  'bit 10 (high) = Shift key is pressed (1024)

      DEFINT strt = RINSTR(sCommand, "+") + 1
      sCommand = TRIM$(MID$(sCommand, strt, LEN(sCommand) - strt+1))

    'Do F1-F24 first!!
      IF (LEFT$(sCommand, 1) = "F") AND (LEN(sCommand) > 1) THEN
       res = 111 + VAL(RIGHT$(sCommand, 1))      '"F1 to F24
      ELSE
       SELECT CASE sCommand
       CASE "A" TO "z"                   'keep case correct here for ascii code, key = ascii
        res = ASC(sCommand)
       CASE "0" TO "9"                   'keep case correct here for ascii code, key = ascii
        res = ASC(sCommand)
       CASE ELSE
        IF sCommand = sQuot THEN
         res = 222
        ELSEIF sCommand = "]" THEN
         res = 221
        ELSEIF sCommand = "[" THEN
         res = 219
        ELSEIF sCommand = "\" THEN
         res = 220
        ELSEIF sCommand = "*" THEN
         res = 106
        ELSEIF sCommand = "+" THEN
         res = 107
        ELSEIF sCommand = "-" THEN
         res = 189       'numpad = 109
        ELSEIF sCommand = "=" THEN
         res = 187
        ELSEIF sCommand = "." THEN
         res = 190
        ELSEIF sCommand = "," THEN
         res = 188
        ELSEIF sCommand = ";" THEN
         res = 186
        ELSEIF sCommand = "/" THEN
         res = 119
        END IF
       END SELECT
      END IF
      RESULT = res OR isCtrl OR isAlt OR isShift             'shift result in hi-order word
     END FUNCTION







     FUNCTION OnKeyToKeyCode(Key AS WORD, Shift AS INTEGER) AS INTEGER
    'IF VK_CONTROL then shift = 1
    'IF VK_MENU (alt key) then shift = 16
    'IF VK_SHIFT then shift = 256

    'for function pointers, put shift values in hi-order word
      DEFINT HiWrd = (Shift AND 1) SHL 8              'bit 8 (high) = Ctrl key is pressed (256)
      HiWrd = HiWrd + (Shift AND 16) SHL 5            'bit 9 (high) = Alt key is pressed  (512)
      HiWrd = HiWrd + (Shift AND 256) SHL 2           'bit 10 (high) = Shift key is pressed (1024)
      RESULT = key + HiWrd                            'bits 0-7 = virtual key code pressed (0-255)

     END FUNCTION




     SUB ReadMenuShortcuts
      IDE_Conf_MenuGrid.Tag = False                                               'flag, we use default menus
      IF IDE.MenuShortCutFile <> "" THEN
       IF FILEEXISTS(IDE.MenuShortCutFile) THEN
        tmpList.Clear
        tmpList.LoadFromFile(IDE.MenuShortCutFile)                          'get custom list
        IDE.MenuShortCutList = tmpList.Text                                 'transfer to global storage, overwrites defaults
        IDE_Conf_MenuGrid.Tag = True                                        'flag, we must reset menus
       ELSE
        IDE.MenuShortCutFile = ""                                           'it doesn't exist so get rid of it
       END IF
      END IF
      gMem.Clear:    gMem.Position = 0                                            'transfer string to MemoryStream
      gMem.WriteBinStr(IDE.MenuShortCutList, LEN(IDE.MenuShortCutList))           'to populate StringGrid, .Loadfromfile will not work...
      gMem.Position = 0                                                           'important!
      IDE_Conf_MenuGrid.LoadFromStream(gMem, 1, 0, IDE_Conf_MenuGrid.RowCount)    'populate the stringGrid
      gMem.Clear:    gMem.Position = 0                                            'dealloc
     END SUB



'here we load each menu item with Caption, Shortcuts, and visible properties,  function pointers
     SUB SetMenuShortcuts
      IF IDE_Conf_MenuGrid.Tag THEN                                           'need to reset all properties
       WITH IDE_Conf_MenuGrid
        mnuNew.CAPTION = .Cell(0,1) :  mnuNew.ShortCut = .Cell(1,1)  :  mnuNew.Visible = .Cell(2, 1)
        mnuOpen.CAPTION = .Cell(0,2) :  mnuOpen.ShortCut = .Cell(1,2)  :  mnuOpen.Visible = .Cell(2, 2)
        mnuOpenFileFromWeb.CAPTION = .Cell(0,3) :  mnuOpenFileFromWeb.ShortCut = .Cell(1,3)  :  mnuOpenFileFromWeb.Visible = .Cell(2, 3)
        mnuSave.CAPTION = .Cell(0,4) :  mnuSave.ShortCut = .Cell(1,4)  :  mnuSave.Visible = .Cell(2, 4)
        mnuSaveAs.CAPTION = .Cell(0,5) :  mnuSaveAs.ShortCut = .Cell(1,5)  :  mnuSaveAs.Visible = .Cell(2, 5)
        mnuSaveAll.CAPTION = .Cell(0,6) :  mnuSaveAll.ShortCut = .Cell(1,6)  :  mnuSaveAll.Visible = .Cell(2, 6)
        mnuOpenProj.CAPTION = .Cell(0,7) :  mnuOpenProj.ShortCut = .Cell(1,7)  :  mnuOpenProj.Visible = .Cell(2, 7)
        mnuSaveProj.CAPTION = .Cell(0,8) :  mnuSaveProj.ShortCut = .Cell(1,8)  :  mnuSaveProj.Visible = .Cell(2, 8)
        mnuCloseProjFiles.CAPTION = .Cell(0,9) :  mnuCloseProjFiles.ShortCut = .Cell(1,9)  :  mnuCloseProjFiles.Visible = .Cell(2, 9)
        mnuClose.CAPTION = .Cell(0,10) :  mnuClose.ShortCut = .Cell(1,10)  :  mnuClose.Visible = .Cell(2, 10)
        mnuCloseAll.CAPTION = .Cell(0,11) :  mnuCloseAll.ShortCut = .Cell(1,11)  :  mnuCloseAll.Visible = .Cell(2, 11)
        PrintSetupMenu.CAPTION = .Cell(0,12) :  PrintSetupMenu.ShortCut = .Cell(1,12)  :  PrintSetupMenu.Visible = .Cell(2, 12)
        PrintMenu.CAPTION = .Cell(0,13) :  PrintMenu.ShortCut = .Cell(1,13)  :  PrintMenu.Visible = .Cell(2, 13)
        ExitMenu.CAPTION = .Cell(0,14) :  ExitMenu.ShortCut = .Cell(1,14)  :  ExitMenu.Visible = .Cell(2, 14)
        mnuViewModeSimple.CAPTION = .Cell(0,15) :  mnuViewModeSimple.ShortCut = .Cell(1,15)  :  mnuViewModeSimple.Visible = .Cell(2, 15)
        mnuViewModeNovice.CAPTION = .Cell(0,16) :  mnuViewModeNovice.ShortCut = .Cell(1,16)  :  mnuViewModeNovice.Visible = .Cell(2, 16)
        mnuViewModeIntermediate.CAPTION = .Cell(0,17) :  mnuViewModeIntermediate.ShortCut = .Cell(1,17)  :  mnuViewModeIntermediate.Visible = .Cell(2, 17)
        mnuViewModeExpert.CAPTION = .Cell(0,18) :  mnuViewModeExpert.ShortCut = .Cell(1,18)  :  mnuViewModeExpert.Visible = .Cell(2, 18)
        mnuViewLeftPanel.CAPTION = .Cell(0,19) :  mnuViewLeftPanel.ShortCut = .Cell(1,19)  :  mnuViewLeftPanel.Visible = .Cell(2, 19)
        mnuViewBottomPanel.CAPTION = .Cell(0,20) :  mnuViewBottomPanel.ShortCut = .Cell(1,20)  :  mnuViewBottomPanel.Visible = .Cell(2, 20)
        mnuViewRightPanel.CAPTION = .Cell(0,21) :  mnuViewRightPanel.ShortCut = .Cell(1,21)  :  mnuViewRightPanel.Visible = .Cell(2, 21)
        QuickSearchMnu.CAPTION = .Cell(0,22) :  QuickSearchMnu.ShortCut = .Cell(1,22)  :  QuickSearchMnu.Visible = .Cell(2, 22)
        mnuViewStatusBar.CAPTION = .Cell(0,23) :  mnuViewStatusBar.ShortCut = .Cell(1,23)  :  mnuViewStatusBar.Visible = .Cell(2, 23)
        mnuViewFormDesigner.CAPTION = .Cell(0,24) :  mnuViewFormDesigner.ShortCut = .Cell(1,24)  :  mnuViewFormDesigner.Visible = .Cell(2, 24)
        mnuViewTopPanel.CAPTION = .Cell(0,26) :  mnuViewTopPanel.ShortCut = .Cell(1,26)  :  mnuViewTopPanel.Visible = .Cell(2, 26)
        Mnu_SetLineNumbers.CAPTION = .Cell(0,27) :  Mnu_SetLineNumbers.ShortCut = .Cell(1,27)  :  Mnu_SetLineNumbers.Visible = .Cell(2, 27)
        Mnu_ViewIndentation.CAPTION = .Cell(0,28) :  Mnu_ViewIndentation.ShortCut = .Cell(1,28)  :  Mnu_ViewIndentation.Visible = .Cell(2, 28)
        Mnu_CodeFolding.CAPTION = .Cell(0,29) :  Mnu_CodeFolding.ShortCut = .Cell(1,29)  :  Mnu_CodeFolding.Visible = .Cell(2, 29)
        Mnu_CodeFoldingCollapseAll.CAPTION = .Cell(0,30) :  Mnu_CodeFoldingCollapseAll.ShortCut = .Cell(1,30)  :  Mnu_CodeFoldingCollapseAll.Visible = .Cell(2, 30)
        Mnu_CodeFoldingExpandAll.CAPTION = .Cell(0,31) :  Mnu_CodeFoldingExpandAll.ShortCut = .Cell(1,31)  :  Mnu_CodeFoldingExpandAll.Visible = .Cell(2, 31)
        Mnu_ViewLastTab.CAPTION = .Cell(0,32) :  Mnu_ViewLastTab.ShortCut = .Cell(1,32)  :  Mnu_ViewLastTab.Visible = .Cell(2, 32)
        mnuMagnifyFont.CAPTION = .Cell(0,33) :  mnuMagnifyFont.ShortCut = .Cell(1,33)  :  mnuMagnifyFont.Visible = .Cell(2, 33)
        mnuMinifyFont.CAPTION = .Cell(0,34) :  mnuMinifyFont.ShortCut = .Cell(1,34)  :  mnuMinifyFont.Visible = .Cell(2, 34)
        mnuDeleteBlankLines.CAPTION = .Cell(0,35) :  mnuDeleteBlankLines.ShortCut = .Cell(1,35)  :  mnuDeleteBlankLines.Visible = .Cell(2, 35)
        mnuTrimSpacesAtEnd.CAPTION = .Cell(0,36) :  mnuTrimSpacesAtEnd.ShortCut = .Cell(1,36)  :  mnuTrimSpacesAtEnd.Visible = .Cell(2, 36)
        mnuTabsToSpaces.CAPTION = .Cell(0,37) :  mnuTabsToSpaces.ShortCut = .Cell(1,37)  :  mnuTabsToSpaces.Visible = .Cell(2, 37)
        mnuSort.CAPTION = .Cell(0,38) :  mnuSort.ShortCut = .Cell(1,38)  :  mnuSort.Visible = .Cell(2, 38)
        mnuDateTime.CAPTION = .Cell(0,39) :  mnuDateTime.ShortCut = .Cell(1,39)  :  mnuDateTime.Visible = .Cell(2, 39)
        mnuInsertFile.CAPTION = .Cell(0,40) :  mnuInsertFile.ShortCut = .Cell(1,40)  :  mnuInsertFile.Visible = .Cell(2, 40)
        mnuTxtFind.CAPTION = .Cell(0,41) :  mnuTxtFind.ShortCut = .Cell(1,41)  :  mnuTxtFind.Visible = .Cell(2, 41)
        mnuFindinFiles.CAPTION = .Cell(0,42) :  mnuFindinFiles.ShortCut = .Cell(1,42)  :  mnuFindinFiles.Visible = .Cell(2, 42)
        mnuFindNext.CAPTION = .Cell(0,43) :  mnuFindNext.ShortCut = .Cell(1,43)  :  mnuFindNext.Visible = .Cell(2, 43)
        mnuFindPrev.CAPTION = .Cell(0,44) :  mnuFindPrev.ShortCut = .Cell(1,44)  :  mnuFindPrev.Visible = .Cell(2, 44)
        mnuReplace.CAPTION = .Cell(0,45) :  mnuReplace.ShortCut = .Cell(1,45)  :  mnuReplace.Visible = .Cell(2, 45)
        mnuReplaceinFiles.CAPTION = .Cell(0,46) :  mnuReplaceinFiles.ShortCut = .Cell(1,46)  :  mnuReplaceinFiles.Visible = .Cell(2, 46)
        mnuFindDeclare.CAPTION = .Cell(0,47) :  mnuFindDeclare.ShortCut = .Cell(1,47)  :  mnuFindDeclare.Visible = .Cell(2, 47)
        mnuGoToLine.CAPTION = .Cell(0,48) :  mnuGoToLine.ShortCut = .Cell(1,48)  :  mnuGoToLine.Visible = .Cell(2, 48)
        OptionsMenu.CAPTION = .Cell(0,49) :  OptionsMenu.ShortCut = .Cell(1,49)  :  OptionsMenu.Visible = .Cell(2, 49)
        Mnu_FontMenu.CAPTION = .Cell(0,50) :  Mnu_FontMenu.ShortCut = .Cell(1,50)  :  Mnu_FontMenu.Visible = .Cell(2, 50)
        Mnu_Hilight.CAPTION = .Cell(0,51) :  Mnu_Hilight.ShortCut = .Cell(1,51)  :  Mnu_Hilight.Visible = .Cell(2, 51)
        Mnu_WordWrap.CAPTION = .Cell(0,52) :  Mnu_WordWrap.ShortCut = .Cell(1,52)  :  Mnu_WordWrap.Visible = .Cell(2, 52)
        Mnu_AutoIndent.CAPTION = .Cell(0,53) :  Mnu_AutoIndent.ShortCut = .Cell(1,53)  :  Mnu_AutoIndent.Visible = .Cell(2, 53)
        Mnu_AutoComplete.CAPTION = .Cell(0,54) :  Mnu_AutoComplete.ShortCut = .Cell(1,54)  :  Mnu_AutoComplete.Visible = .Cell(2, 54)
        Mnu_CommentBlock.CAPTION = .Cell(0,55) :  Mnu_CommentBlock.ShortCut = .Cell(1,55)  :  Mnu_CommentBlock.Visible = .Cell(2, 55)
        Mnu_UnCommentBlock.CAPTION = .Cell(0,56) :  Mnu_UnCommentBlock.ShortCut = .Cell(1,56)  :  Mnu_UnCommentBlock.Visible = .Cell(2, 56)
        Mnu_Lowercase.CAPTION = .Cell(0,57) :  Mnu_Lowercase.ShortCut = .Cell(1,57)  :  Mnu_Lowercase.Visible = .Cell(2, 57)
        Mnu_Uppercase.CAPTION = .Cell(0,58) :  Mnu_Uppercase.ShortCut = .Cell(1,58)  :  Mnu_Uppercase.Visible = .Cell(2, 58)
        mnuRun.CAPTION = .Cell(0,59) :  mnuRun.ShortCut = .Cell(1,59)  :  mnuRun.Visible = .Cell(2, 59)
        mnuCompile.CAPTION = .Cell(0,60) :  mnuCompile.ShortCut = .Cell(1,60)  :  mnuCompile.Visible = .Cell(2, 60)
        mnuRunDebug.CAPTION = .Cell(0,61) :  mnuRunDebug.ShortCut = .Cell(1,61)  :  mnuRunDebug.Visible = .Cell(2, 61)
        IconsetMenu.CAPTION = .Cell(0,62) :  IconsetMenu.ShortCut = .Cell(1,62)  :  IconsetMenu.Visible = .Cell(2, 62)
        FBCompileMenu.CAPTION = .Cell(0,63) :  FBCompileMenu.ShortCut = .Cell(1,63)  :  FBCompileMenu.Visible = .Cell(2, 63)
        FBRunMenu.CAPTION = .Cell(0,64) :  FBRunMenu.ShortCut = .Cell(1,64)  :  FBRunMenu.Visible = .Cell(2, 64)
        FBDLLMenu.CAPTION = .Cell(0,65) :  FBDLLMenu.ShortCut = .Cell(1,65)  :  FBDLLMenu.Visible = .Cell(2, 65)
        mnuNViewBookMark.CAPTION = .Cell(0,66) :  mnuNViewBookMark.ShortCut = .Cell(1,66)  :  mnuNViewBookMark.Visible = .Cell(2, 66)
        mnuAddBookMark.CAPTION = .Cell(0,67) :  mnuAddBookMark.ShortCut = .Cell(1,67)  :  mnuAddBookMark.Visible = .Cell(2, 67)
        mnuDelBookMark.CAPTION = .Cell(0,68) :  mnuDelBookMark.ShortCut = .Cell(1,68)  :  mnuDelBookMark.Visible = .Cell(2, 68)
        mnuNextBookMark.CAPTION = .Cell(0,69) :  mnuNextBookMark.ShortCut = .Cell(1,69)  :  mnuNextBookMark.Visible = .Cell(2, 69)
        mnuPrevBookMark.CAPTION = .Cell(0,70) :  mnuPrevBookMark.ShortCut = .Cell(1,70)  :  mnuPrevBookMark.Visible = .Cell(2, 70)
        mnuGoToBookMark.CAPTION = .Cell(0,71) :  mnuGoToBookMark.ShortCut = .Cell(1,71)  :  mnuGoToBookMark.Visible = .Cell(2, 71)
        mnuExternApps.CAPTION = .Cell(0,72) :  mnuExternApps.ShortCut = .Cell(1,72)  :  mnuExternApps.Visible = .Cell(2, 72)
        mnuExternalApp1.CAPTION = .Cell(0,73) :  mnuExternalApp1.ShortCut = .Cell(1,73)  :  mnuExternalApp1.Visible = .Cell(2, 73)
        mnuExternalApp2.CAPTION = .Cell(0,74) :  mnuExternalApp2.ShortCut = .Cell(1,74)  :  mnuExternalApp2.Visible = .Cell(2, 74)
        mnuExternalApp3.CAPTION = .Cell(0,75) :  mnuExternalApp3.ShortCut = .Cell(1,75)  :  mnuExternalApp3.Visible = .Cell(2, 75)
        mnuExternalApp4.CAPTION = .Cell(0,76) :  mnuExternalApp4.ShortCut = .Cell(1,76)  :  mnuExternalApp4.Visible = .Cell(2, 76)
        mnuAutoDeclare.CAPTION = .Cell(0,77) :  mnuAutoDeclare.ShortCut = .Cell(1,77)  :  mnuAutoDeclare.Visible = .Cell(2, 77)
        mnuBeautifyCode.CAPTION = .Cell(0,78) :  mnuBeautifyCode.ShortCut = .Cell(1,78)  :  mnuBeautifyCode.Visible = .Cell(2, 78)
        mnuCommandLine.CAPTION = .Cell(0,79) :  mnuCommandLine.ShortCut = .Cell(1,79)  :  mnuCommandLine.Visible = .Cell(2, 79)
        mnuCalcExe.CAPTION = .Cell(0,80) :  mnuCalcExe.ShortCut = .Cell(1,80)  :  mnuCalcExe.Visible = .Cell(2, 80)
        mnuNConvter.CAPTION = .Cell(0,81) :  mnuNConvter.ShortCut = .Cell(1,81)  :  mnuNConvter.Visible = .Cell(2, 81)
        mnuCharMapExe.CAPTION = .Cell(0,82) :  mnuCharMapExe.ShortCut = .Cell(1,82)  :  mnuCharMapExe.Visible = .Cell(2, 82)
        mnuColorPicker.CAPTION = .Cell(0,83) :  mnuColorPicker.ShortCut = .Cell(1,83)  :  mnuColorPicker.Visible = .Cell(2, 83)
        mnuToolKey.CAPTION = .Cell(0,84) :  mnuToolKey.ShortCut = .Cell(1,84)  :  mnuToolKey.Visible = .Cell(2, 84)
        ContentHelpMenu.CAPTION = .Cell(0,85) :  ContentHelpMenu.ShortCut = .Cell(1,85)  :  ContentHelpMenu.Visible = .Cell(2, 85)
        ContentTopicHelpMenu.CAPTION = .Cell(0,86) :  ContentTopicHelpMenu.ShortCut = .Cell(1,86)  :  ContentTopicHelpMenu.Visible = .Cell(2, 86)
        Content2Menu.CAPTION = .Cell(0,87) :  Content2Menu.ShortCut = .Cell(1,87)  :  Content2Menu.Visible = .Cell(2, 87)
        WinHelpMenu.CAPTION = .Cell(0,88) :  WinHelpMenu.ShortCut = .Cell(1,88)  :  WinHelpMenu.Visible = .Cell(2, 88)
        mnuCloseMFE_Tab.CAPTION = .Cell(0,89) :  mnuCloseMFE_Tab.ShortCut = .Cell(1,89)  :  mnuCloseMFE_Tab.Visible = .Cell(2, 89)
       END WITH
      END IF

      BIND  IDE.MenuFuncPtr(mnuNew.Tag)  TO MFE_NewFile
      BIND  IDE.MenuFuncPtr(mnuOpen.Tag)  TO MFE_Open
      BIND  IDE.MenuFuncPtr(mnuOpenFileFromWeb.Tag)  TO mnuOpenFileFromWeb_Click
      BIND  IDE.MenuFuncPtr(mnuSave.Tag)  TO MFE_Save
      BIND  IDE.MenuFuncPtr(mnuSaveAs.Tag)  TO MFE_SaveAs
      BIND  IDE.MenuFuncPtr(mnuSaveAll.Tag)  TO MFE_SaveAll
      BIND  IDE.MenuFuncPtr(mnuOpenProj.Tag)  TO MFE_OpenProject
      BIND  IDE.MenuFuncPtr(mnuSaveProj.Tag)  TO MFE_SaveProject
      BIND  IDE.MenuFuncPtr(mnuCloseProjFiles.Tag)  TO MFE_CloseProjectFiles
      BIND  IDE.MenuFuncPtr(mnuClose.Tag)  TO MFE_Close
      BIND  IDE.MenuFuncPtr(mnuCloseAll.Tag)  TO MFE_CloseAll
      BIND  IDE.MenuFuncPtr(PrintSetupMenu.Tag)  TO pagesetupclick
      BIND  IDE.MenuFuncPtr(PrintMenu.Tag)  TO pageprintclick
      BIND  IDE.MenuFuncPtr(ExitMenu.Tag)  TO ExitClick
      BIND  IDE.MenuFuncPtr(mnuViewModeSimple.Tag)  TO mnuViewModeSimple_Click
      BIND  IDE.MenuFuncPtr(mnuViewModeNovice.Tag)  TO mnuViewModeNovice_Click
      BIND  IDE.MenuFuncPtr(mnuViewModeIntermediate.Tag)  TO mnuViewModeIntermediate_Click
      BIND  IDE.MenuFuncPtr(mnuViewModeExpert.Tag)  TO mnuViewModeExpert_Click
      BIND  IDE.MenuFuncPtr(mnuViewLeftPanel.Tag)  TO mnuViewLeftPanel_Click
      BIND  IDE.MenuFuncPtr(mnuViewBottomPanel.Tag)  TO mnuViewBottomPanel_Click
      BIND  IDE.MenuFuncPtr(mnuViewRightPanel.Tag)  TO mnuViewRightPanel_Click
      BIND  IDE.MenuFuncPtr(QuickSearchMnu.Tag)  TO VisibileQuickSearchClick
      BIND  IDE.MenuFuncPtr(mnuViewStatusBar.Tag)  TO mnuViewStatusBar_Click
      BIND  IDE.MenuFuncPtr(mnuViewFormDesigner.Tag)  TO mnuViewFormDesigner_Click
      BIND  IDE.MenuFuncPtr(mnuViewTopPanel.Tag)  TO mnuViewTopPanel_Click
      BIND  IDE.MenuFuncPtr(Mnu_SetLineNumbers.Tag)  TO Mnu_SetLineNumbersClick
      BIND  IDE.MenuFuncPtr(Mnu_ViewIndentation.Tag)  TO Mnu_ViewIndentationClick
      BIND  IDE.MenuFuncPtr(Mnu_CodeFolding.Tag)  TO Mnu_CodeFolding_Click
      BIND  IDE.MenuFuncPtr(Mnu_CodeFoldingCollapseAll.Tag)  TO Mnu_CodeFoldingCollapseAll_Click
      BIND  IDE.MenuFuncPtr(Mnu_CodeFoldingExpandAll.Tag)  TO Mnu_CodeFoldingExpandAll_Click
      BIND  IDE.MenuFuncPtr(Mnu_ViewLastTab.Tag)  TO Mnu_ViewLastTab_Click
      BIND  IDE.MenuFuncPtr(mnuMagnifyFont.Tag)  TO mnuMagnifyFont_Click
      BIND  IDE.MenuFuncPtr(mnuMinifyFont.Tag)  TO mnuMinifyFont_Click
      BIND  IDE.MenuFuncPtr(mnuDeleteBlankLines.Tag)  TO mnuRemoveBlankLines_Click
      BIND  IDE.MenuFuncPtr(mnuTrimSpacesAtEnd.Tag)  TO mnuTrimSpacesAtEnd_Click
      BIND  IDE.MenuFuncPtr(mnuTabsToSpaces.Tag)  TO mnuTabsToSpaces_Click
      BIND  IDE.MenuFuncPtr(mnuSort.Tag)  TO mnuSort_Click
      BIND  IDE.MenuFuncPtr(mnuDateTime.Tag)  TO mnuDateTime_Click
      BIND  IDE.MenuFuncPtr(mnuInsertFile.Tag)  TO mnuInsertFile_Click
      BIND  IDE.MenuFuncPtr(mnuTxtFind.Tag)  TO FindReplaceForm_Search
      BIND  IDE.MenuFuncPtr(mnuFindinFiles.Tag)  TO FindInFiles
      BIND  IDE.MenuFuncPtr(mnuFindNext.Tag)  TO FindReplaceForm_NextExecute
      BIND  IDE.MenuFuncPtr(mnuFindPrev.Tag)  TO FindReplaceForm_PrevExecute
      BIND  IDE.MenuFuncPtr(mnuReplace.Tag)  TO FindReplaceForm_Replace
      BIND  IDE.MenuFuncPtr(mnuReplaceinFiles.Tag)  TO ReplaceInFiles
      BIND  IDE.MenuFuncPtr(mnuGoToLine.Tag)  TO IDE_GotoLineNumber
      BIND  IDE.MenuFuncPtr(OptionsMenu.Tag)  TO IDE_Conf_Form_Show
      BIND  IDE.MenuFuncPtr(Mnu_FontMenu.Tag)  TO Mnu_FontMenuClick
      BIND  IDE.MenuFuncPtr(Mnu_Hilight.Tag)  TO Mnu_HilightClick
      BIND  IDE.MenuFuncPtr(Mnu_WordWrap.Tag)  TO Mnu_WordWrapClick
      BIND  IDE.MenuFuncPtr(Mnu_AutoIndent.Tag)  TO Mnu_AutoIndentClick
      BIND  IDE.MenuFuncPtr(Mnu_AutoComplete.Tag)  TO Mnu_AutoCompleteClick
      BIND  IDE.MenuFuncPtr(Mnu_CommentBlock.Tag)  TO mnuCommentBlockClick
      BIND  IDE.MenuFuncPtr(Mnu_UnCommentBlock.Tag)  TO mnuUnCommentBlockClick
      BIND  IDE.MenuFuncPtr(Mnu_Lowercase.Tag)  TO Mnu_LowercaseClick
      BIND  IDE.MenuFuncPtr(Mnu_Uppercase.Tag)  TO Mnu_UppercaseClick
      BIND  IDE.MenuFuncPtr(mnuRun.Tag)  TO RunClick
      BIND  IDE.MenuFuncPtr(mnuCompile.Tag)  TO CompileClick
      BIND  IDE.MenuFuncPtr(mnuRunDebug.Tag)  TO DebugCompileClick
      BIND  IDE.MenuFuncPtr(IconsetMenu.Tag)  TO IconsetClick
      BIND  IDE.MenuFuncPtr(FBCompileMenu.Tag)  TO FBCompileClick
      BIND  IDE.MenuFuncPtr(FBRunMenu.Tag)  TO FBRunClick
      BIND  IDE.MenuFuncPtr(FBDLLMenu.Tag)  TO FBDLLClick
      BIND  IDE.MenuFuncPtr(mnuNViewBookMark.Tag)  TO mnuNViewBookMark_Click
      BIND  IDE.MenuFuncPtr(mnuAddBookMark.Tag)  TO mnuAddBookMark_Click
      BIND  IDE.MenuFuncPtr(mnuDelBookMark.Tag)  TO mnuDelBookMark_Click
      BIND  IDE.MenuFuncPtr(mnuNextBookMark.Tag)  TO mnuNextBookMark_Click
      BIND  IDE.MenuFuncPtr(mnuPrevBookMark.Tag)  TO mnuPrevBookMark_Click
      BIND  IDE.MenuFuncPtr(mnuGoToBookMark.Tag)  TO mnuGoToBookMark_Click
      BIND  IDE.MenuFuncPtr(mnuExternApps.Tag)  TO IDE_Cong_ShowExternApp
      BIND  IDE.MenuFuncPtr(mnuExternalApp1.Tag)  TO mnuExternalApp1_Click
      BIND  IDE.MenuFuncPtr(mnuExternalApp2.Tag)  TO mnuExternalApp2_Click
      BIND  IDE.MenuFuncPtr(mnuExternalApp3.Tag)  TO mnuExternalApp3_Click
      BIND  IDE.MenuFuncPtr(mnuExternalApp4.Tag)  TO mnuExternalApp4_Click
      BIND  IDE.MenuFuncPtr(mnuAutoDeclare.Tag)  TO mnuAutoDeclare_Click
      BIND  IDE.MenuFuncPtr(mnuBeautifyCode.Tag)  TO mnuBeautifyCode_Click
      BIND  IDE.MenuFuncPtr(mnuMenuDesigner.Tag)  TO mnuMenuDesigner_Click
      BIND  IDE.MenuFuncPtr(mnuCommandLine.Tag)  TO mnuCommandLine_Click
      BIND  IDE.MenuFuncPtr(mnuCalcExe.Tag)  TO mnuCalcExe_Click
      BIND  IDE.MenuFuncPtr(mnuNConvter.Tag)  TO NConv_Show
      BIND  IDE.MenuFuncPtr(mnuCharMapExe.Tag)  TO mnuCharMapExe_Click
      BIND  IDE.MenuFuncPtr(mnuColorPicker.Tag)  TO mnuColorPicker_Click
      BIND  IDE.MenuFuncPtr(mnuToolKey.Tag)  TO mnuToolKey_Click
      BIND  IDE.MenuFuncPtr(ContentHelpMenu.Tag)  TO mnuHelpClick
      BIND  IDE.MenuFuncPtr(ContentTopicHelpMenu.Tag)  TO HelpOnTopicClick
      BIND  IDE.MenuFuncPtr(Content2Menu.Tag)  TO mnuHelp2Click
      BIND  IDE.MenuFuncPtr(WinHelpMenu.Tag)  TO mnuHelpWinClick
      BIND  IDE.MenuFuncPtr(mnuCloseMFE_Tab.Tag)  TO MFE_Close

      Mnu_RightJustify                            'weirdness, need to reset right justify
     END SUB

掌柜推荐
 
 
 
 
 
 
 
 
 
 
 
 
© Wed 2024-5-8  Guidance Laboratory Inc.
Email:webmaster1g.yi.org Hits:0 Last modified:2010-12-07 21:18:03