; --------------------------------------------------------------------------------------------; Copyright (c) Fantaisie Software. All rights reserved.; Dual licensed under the GPL and Fantaisie Software licenses.; See LICENSE and LICENSE-FANTAISIE in the project root for license information.; --------------------------------------------------------------------------------------------; Not for linux for now, because of WebKitGtk instabilitiesCompilerIf #CompileLinux = 0; Settings here are also in Global variables because they are needed elsewhereGlobal Backup_UseHelpToolF1Global HelpToolHomeUrl$Procedure Help_CreateFunction(*Entry.ToolsPanelEntry)ButtonImageGadget(#GADGET_HelpTool_Back, 0, 0, 0, 0, ImageID(#IMAGE_Help_Back))ButtonImageGadget(#GADGET_HelpTool_Forward, 0, 0, 0, 0, ImageID(#IMAGE_Help_Forward))ButtonImageGadget(#GADGET_HelpTool_Home, 0, 0, 0, 0, ImageID(#IMAGE_Help_Home))ButtonImageGadget(#GADGET_HelpTool_Help, 0, 0, 0, 0, ImageID(#IMAGE_Help_OpenHelp))GadgetToolTip(#GADGET_HelpTool_Back, Language("Help","Back"))GadgetToolTip(#GADGET_HelpTool_Forward, Language("Help","Forward"))GadgetToolTip(#GADGET_HelpTool_Home, Language("Help","Home"))GadgetToolTip(#GADGET_HelpTool_Help, Language("Help","OpenHelp"))CompilerIf #CompileWindowsHelpToolHomeUrl$ = "mk:@MSITStore:" + PureBasicPath$ + #ProductName$ + ".chm::/Reference/reference.html"CompilerElseSelect UCase(CurrentLanguage$)Case "FRANCAIS"HelpToolHomeUrl$ = "file://"+PureBasicPath$+"help/purebasic_french/reference/reference.html"Case "DEUTSCH"HelpToolHomeUrl$ = "file://"+PureBasicPath$+"help/purebasic_german/reference/reference.html"DefaultHelpToolHomeUrl$ = "file://"+PureBasicPath$+"help/purebasic/reference/reference.html"EndSelectCompilerEndIfWebGadget(#GADGET_HelpTool_Viewer, 0, 0, 0, 0, HelpToolHomeUrl$)HelpToolOpen = #TrueEndProcedureProcedure Help_DestroyFunction(*Entry.ToolsPanelEntry)HelpToolOpen = #FalseEndProcedureProcedure Help_ResizeHandler(*Entry.ToolsPanelEntry, PanelWidth, PanelHeight); All the buttons should have the same size, so only call it once;GetRequiredSize(#GADGET_HelpTool_Back, @Width.l, @Height.l)CompilerIf #CompileWindowsSpace = 5CompilerElseSpace = 8 ; looks better on Linux/OSX with some more spaceCompilerEndIfx = 5ResizeGadget(#GADGET_HelpTool_Back, x, 5, Width, Height): x + Width + SpaceResizeGadget(#GADGET_HelpTool_Forward, x, 5, Width, Height): x + Width + SpaceResizeGadget(#GADGET_HelpTool_Home, x, 5, Width, Height): x + Width + SpaceIf x > PanelWidth-5-WidthResizeGadget(#GADGET_HelpTool_Help, x, 5, Width, Height)ElseResizeGadget(#GADGET_HelpTool_Help, PanelWidth-5-Width, 5, Width, Height)EndIfResizeGadget(#GADGET_HelpTool_Viewer, 0, 10+Height, PanelWidth, PanelHeight-Height-10)EndProcedureProcedure Help_EventHandler(*Entry.ToolsPanelEntry, EventGadgetID)Select EventGadgetIDCase #GADGET_HelpTool_BackSetGadgetState(#GADGET_HelpTool_Viewer, #PB_Web_Back)Case #GADGET_HelpTool_ForwardSetGadgetState(#GADGET_HelpTool_Viewer, #PB_Web_Forward)Case #GADGET_HelpTool_HomeSetGadgetText(#GADGET_HelpTool_Viewer, HelpToolHomeUrl$)Case #GADGET_HelpTool_HelpCompilerIf #CompileWindowsPage$ = GetGadgetText(#GADGET_HelpTool_Viewer)Page$ = Right(Page,ドル Len(Page$)-(FindString(Page,ドル "::", 1)+1))If Left(Page,ドル 1) = "/"Page$ = Right(Page,ドル Len(Page$)-1)EndIfOpenHelp(PureBasicPath$ + #ProductName$ + ".chm", Page$)CompilerElseOpenHelpWindow()SetGadgetText(#GADGET_Help_Viewer, GetGadgetText(#GADGET_HelpTool_Viewer))CompilerEndIfEndSelectEndProcedureProcedure Help_PreferenceStart(*Entry.ToolsPanelEntry); Use the backup variable during the PReferences changingBackup_UseHelpToolF1 = UseHelpToolF1EndProcedureProcedure Help_PreferenceApply(*Entry.ToolsPanelEntry); put the backup variable backUseHelpToolF1 = Backup_UseHelpToolF1EndProcedureProcedure Help_PreferenceCreate(*Entry.ToolsPanelEntry)CheckBoxGadget(#GADGET_Preferences_UseHelpToolF1, 10, 10, 300, 25, Language("Help","OpenF1"))SetGadgetState(#GADGET_Preferences_UseHelpToolF1, Backup_UseHelpToolF1)GetRequiredSize(#GADGET_Preferences_UseHelpToolF1, @Width, @Height)ResizeGadget(#GADGET_Preferences_UseHelpToolF1, 10, 10, Width, Height)EndProcedureProcedure Help_PreferenceDestroy(*Entry.ToolsPanelEntry)Backup_UseHelpToolF1 = GetGadgetState(#GADGET_Preferences_UseHelpToolF1)EndProcedureProcedure Help_PreferenceEvents(*Entry.ToolsPanelEntry, EventGadgetID);; nothing to do here;EndProcedureProcedure Help_PreferenceChanged(*Entry.ToolsPanelEntry, IsConfigOpen)If IsConfigOpenIf UseHelpToolF1 <> GetGadgetState(#GADGET_Preferences_UseHelpToolF1)ProcedureReturn 1EndIfElseIf UseHelpToolF1 <> Backup_UseHelpToolF1ProcedureReturn 1EndIfEndIfProcedureReturn 0EndProcedure;- Initialisation code; This will make this Tool available to the editor;Help_VT.ToolsPanelFunctionsHelp_VT\CreateFunction = @Help_CreateFunction()Help_VT\DestroyFunction = @Help_DestroyFunction()Help_VT\ResizeHandler = @Help_ResizeHandler()Help_VT\EventHandler = @Help_EventHandler()Help_VT\PreferenceStart = @Help_PreferenceStart()Help_VT\PreferenceApply = @Help_PreferenceApply()Help_VT\PreferenceCreate = @Help_PreferenceCreate()Help_VT\PreferenceDestroy = @Help_PreferenceDestroy()Help_VT\PreferenceEvents = @Help_PreferenceEvents()Help_VT\PreferenceChanged = @Help_PreferenceChanged()AddElement(AvailablePanelTools())AvailablePanelTools()\FunctionsVT = @Help_VTAvailablePanelTools()\NeedPreferences = 0 ; the one setting is stored in the global sectionAvailablePanelTools()\NeedConfiguration = 1AvailablePanelTools()\PreferencesWidth = 320AvailablePanelTools()\PreferencesHeight = 80AvailablePanelTools()\NeedDestroyFunction = 1AvailablePanelTools()\ToolID$ = "HelpTool"AvailablePanelTools()\PanelTitle$ = "HelpToolShort"AvailablePanelTools()\ToolName$ = "HelpToolLong"CompilerEndIf
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。