⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wxformbuilder.jam

📁 Boost provides free peer-reviewed portable C++ source libraries. We emphasize libraries that work
💻 JAM
字号:
################################################################################## Copyright (c) 2007-2008 Dario Senic, Jurko Gospodnetic.## Use, modification and distribution is subject to the Boost Software# License Version 1.0. (See accompanying file LICENSE_1_0.txt or# http://www.boost.org/LICENSE_1_0.txt)###################################################################################################################################################################   Boost Build wxFormBuilder generator tool module.##   wxFormBuilder is a GUI designer tool for the wxWidgets library. It can then# generate C++ sources modeling the designed GUI using the wxWidgets library# APIs.##   This module defines a wxFormBuilder project file type and rules needed to# generate C++ source files from those projects. With it you can simply list# wxFormBuilder projects as sources for some target and Boost Build will# automatically convert them to C++ sources and process from there.##   The wxFormBuilder executable location may be provided as a parameter when# configuring this toolset. Otherwise the default wxFormBuilder.exe executable# name is used located in the folder pointed to by the WXFORMBUILDER environment# variable.##   Current limitations:##   * Works only on Windows.#   * Works only when run via Boost Jam using the native Windows cmd.exe command#     interpreter, i.e. the default native Windows Boost Jam build.#   * Used wxFormBuilder projects need to have their output file names defined#     consistently with target names assumed by this build script. This means#     that their target names must use the prefix 'wxFormBuilderGenerated_' and#     have no output folder defined where the base name is equal to the .fpb#     project file's name.################################################################################################################################################################### Implementation note:##   Avoiding the limitation on the generated target file names can be done but# would require depending on external tools to copy the wxFormBuilder project to# a temp location and then modify it in-place to set its target file names. On# the other hand wxFormBuilder is expected to add command-line options for# choosing the target file names from the command line which will allow us to# remove this limitation in a much cleaner way.#                                                    (23.08.2008.) (Jurko)#################################################################################import generators ;import os         ;import path       ;import toolset    ;import type       ;################################################################################## wxFormBuilder.generate()# ------------------------##   Action for processing WX_FORM_BUILDER_PROJECT types.################################################################################### Implementation notes:##   wxFormBuilder generated CPP and H files need to be moved to the location# where the Boost Build target system expects them so that the generated CPP# file can be included into the compile process and that the clean rule# succesfully deletes both CPP and H files. We expect wxFormBuilder to generate# files in the same location where the provided WX_FORM_BUILDER_PROJECT file is# located.#                                                    (15.05.2007.) (Dario)#################################################################################actions generate{    start "" /wait "$(EXECUTABLE)" /g "$(2)"    move "$(1[1]:BSR=$(2:P))" "$(1[1]:P)"    move "$(1[2]:BSR=$(2:P))" "$(1[2]:P)"}################################################################################## wxFormBuilder.init()# --------------------##   Main toolset initialization rule called via the toolset.using rule.#################################################################################rule init ( executable ? ){    if $(.initialized)    {        if $(.debug-configuration)        {            ECHO notice: [wxFormBuilder-cfg] Repeated initialization request                (executable \"$(executable:E="")\") detected and ignored. ;        }    }    else    {        local environmentVariable = WXFORMBUILDER ;        if $(.debug-configuration)        {            ECHO notice: [wxFormBuilder-cfg] Configuring wxFormBuilder... ;        }        # Deduce the path to the used wxFormBuilder executable.        if ! $(executable)        {            executable = "wxFormBuilder.exe" ;            local executable-path = [ os.environ $(environmentVariable) ] ;            if $(executable-path)-is-not-empty            {                executable = [ path.root $(executable) $(executable-path) ] ;            }            else if $(.debug-configuration)            {                ECHO notice: [wxFormBuilder-cfg] No wxFormBuilder path                    configured either explicitly or using the                    $(environmentVariable) environment variable. ;                ECHO notice: [wxFormBuilder-cfg] To avoid complications please                    update your configuration to includes a correct path to the                    wxFormBuilder executable. ;                ECHO notice: [wxFormBuilder-cfg] wxFormBuilder executable will                    be searched for on the system path. ;            }        }        if $(.debug-configuration)        {            ECHO notice: [wxFormBuilder-cfg] Will use wxFormBuilder executable                \"$(executable)\". ;        }        # Now we are sure we have everything we need to initialize this toolset.        .initialized = true ;        # Store the path to the used wxFormBuilder executable.        .executable = $(executable) ;        # Type registration.        type.register WX_FORM_BUILDER_PROJECT : fbp ;        # Parameters to be forwarded to the action rule.        toolset.flags wxFormBuilder.generate EXECUTABLE : $(.executable) ;        # Generator definition and registration.        generators.register-standard wxFormBuilder.generate :            WX_FORM_BUILDER_PROJECT : CPP(wxFormBuilderGenerated_%)            H(wxFormBuilderGenerated_%) ;    }}################################################################################## wxFormBuilder.is-initialized()# ------------------------------##   Returns whether this toolset has been initialized.#################################################################################rule is-initialized ( ){    return $(.initialized) ;}##################################################################################   Startup code executed when loading this module.################################################################################## Global variables for this module..executable = ;.initialized = ;if [ MATCH (--debug-configuration) : [ modules.peek : ARGV ] ]{    .debug-configuration = true ;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -