Branding/es: Difference between revisions

From FreeCAD Documentation
m (Created page with 'This article describes the '''Branding''' of FreeCAD. Branding means to start your own application on base of FreeCAD. That can be only your own executable or splash screen till …')
 
(Updating to match new version of source page)
 
(31 intermediate revisions by 5 users not shown)
Line 1: Line 1:
<languages/>
This article describes the '''Branding''' of FreeCAD. Branding means to start your own application on base of FreeCAD. That can be only your own executable or splash screen till a complete reworked program. On base of the flexible architecture of FreeCAD it's easy to use it as base for your own special purpose program.


{{Docnav
=== General ===
|[[Continuous_Integration|Continuous Integration]]
Most of the branding is done in the '''MainCmd.cpp'' or ''MainGui.cpp'''. These Projects generate the executable files of FreeCAD. To make your own Brand just copy the Main or MainGui projets and give the executable an own name, e.g. FooApp.exe.
|[[Localisation|Localisation]]
The most important settings for a new look can be made in one place in the main() function. Here is the code section that controls the branding:
}}


{{TOCright}}
<code cpp>

int main( int argc, char ** argv )
==Overview==
{

// Name and Version of the Application
<div class="mw-translate-fuzzy">
App::Application::Config()["ExeName"] = "FooApp.exe";
Este artículo describe el '''Marcado''' de FreeCAD. Marcado significa comenzar tu propia aplicación basada en FreeCAD. Esto puede ser sólo tu propio ejecutable o [[Splash screen/es|pantalla de bienvenida]] pantalla de bienvenida hasta un programa completo adaptado. En base a la arquitectura flexible de FreeCAD es sencillo de utilizar como base para tus propios programas de propósito especial.
App::Application::Config()["ExeVersion"] = "0.7";
</div>

// set the banner (for loging and console)
== Warning ==
App::Application::Config()["ConsoleBanner"] = sBanner;

App::Application::Config()["AppIcon"] = "FCIcon";
Although FreeCAD is offered to you free of charge, and the FreeCAD community is happy to see other applications emerging, that are based on FreeCAD, we have on the other hand seen a lot of unfair use of the information contained on this page by people who simply rebranded FreeCAD into a closed-source application to make profit from it.
App::Application::Config()["SplashPicture"] = "FooAppSplasher";

App::Application::Config()["StartWorkbench"] = "Part design";
Although the [[License|LGPL license]] allows to use the FreeCAD source code in closed-source applications, it also gives strict rules to do so, and does not allow simply taking FreeCAD, renaming it and stripping it of its license.
App::Application::Config()["HiddenDockWindow"] = "Property editor";

App::Application::Config()["SplashAlignment" ] = "Bottom|Left";
Would you be interested in using FreeCAD in a closed-source application, be sure to check thoroughly the implications of the LGPL license, and, even better, contact any FreeCAD developer, administrator or moderator before doing so.
App::Application::Config()["SplashTextColor" ] = "#000000"; // black

== General ==
// Inits the Application

App::Application::Config()["RunMode"] = "Gui";
<div class="mw-translate-fuzzy">
App::Application::init(argc,argv);
=== General ===
La mayoría del marcado se realiza en '''MainCmd.cpp'' o ''MainGui.cpp'''. Estos proyectos generan los archivos ejecutables de FreeCAD. Para crear tu propia Marca simplemente copia los proyectos Main o MainGui y dale al ejecutable un nombre diferente, e.g. FooApp.exe.
Gui::BitmapFactory().addXPM("FooAppSplasher", ( const char** ) splash_screen);
La configuración más importante para una nueva apariencia puede realizarse en una lugar de la función main(). Aquí está la sección de código que controla el marcado:
</div>
Gui::Application::initApplication();
Gui::Application::runApplication();
App::Application::destruct();
return 0;
}
</code>
The first Config entry defines the program name. This is not the executable name, which can be changed by renaming or by compiler settings, but the name that is displayed in the task bar on windows or in the program list on Unix systems.


<!-- WARNING Do not modify the <syntaxhighligh> tag because of "{}" or pipe characters "|" included in the source code of the macro -->
The next lines define the Config entries of your FooApp Application. A description of the Config and its entries you find in [[Start up and Configuration]].
<syntaxhighlight lang="C">
int main( int argc, char ** argv )
{
// Name and Version of the Application
App::Application::Config()["ExeName"] = "FooApp";
App::Application::Config()["ExeVersion"] = "0.7";


// set the banner (for loging and console)
=== Images ===
App::Application::Config()["CopyrightInfo"] = sBanner;
All image resources are compiled into FreeCAD. This reduces delayed loading and keeps the installation compact. The images are included in XPM-Format which is basically a text format that uses C-syntax. You can basically draw this images with a text editor, but it is more comfortable to create the images with your favorite graphics program and convert it later to XPM format.
App::Application::Config()["AppIcon"] = "FooAppIcon";
App::Application::Config()["SplashScreen"] = "FooAppSplasher";
App::Application::Config()["StartWorkbench"] = "Part design";
App::Application::Config()["HiddenDockWindow"] = "Property editor";
App::Application::Config()["SplashAlignment" ] = "Bottom|Left";
App::Application::Config()["SplashTextColor" ] = "#000000"; // black


// Inits the Application
The GNU image program [http://gimp.org/ Gimp] can save XPM file.
App::Application::Config()["RunMode"] = "Gui";
App::Application::init(argc,argv);


Gui::BitmapFactory().addXPM("FooAppSplasher", ( const char** ) splash_screen);
For conversion you can use the ''[[ImageConv]]'' tool which is included with freecad. You can find it under


Gui::Application::initApplication();
/trunk/src/Tools/ImageTools/ImageConv
Gui::Application::runApplication();
App::Application::destruct();


return 0;
It can not only convert images but also automatically update the ''BmpFactoryIcons.cpp'' file, where the images are registered. The typical usage is as simple like the following example:
}
</syntaxhighlight>


La primera entrada de Config define el nombre del programa. Este no es el nombre del ejecutable, el cual puede cambiarse renombrándolo o por la configuración del compilador, sino el nombre que es mostrado en la barra de tareas en Windows o en la lista de programas en los sistemas Unix.
ImageConv -i InputImage.png -o OutputImage.xpm


Las siguientes líneas definen las entradas de Config de tu aplicación FooApp. Una descripción de Config y sus entradas se encuentra en [[Start up and Configuration/es|Inicio y Configuración]].
This converts the file ''InputImage.png'' in XPM-format and writes the result to file ''OutputImage.xpm''.


== Images ==
The line:
Gui::BitmapFactory().addXPM("FooAppSplasher", ( const char** ) splash_screen);


Image resources are compiled into FreeCAD using [http://qt-project.org/doc/qt-4.8/resources.html Qt's resource system]. Therefore you have to write a {{FileName|.qrc}} file, an XML-based file format that lists image files on the disk but also any other kind of resource files. To load the compiled resources inside the application you have to add a line
in the main() then include the image in the BitmapFactory of FreeCAD.


{{Code|code=
==== Icons ====
Q_INIT_RESOURCE(FooApp);
The main application icon ''FCIcon'' that appears in window titles and other places is defined in
}}


into the main() function. Alternatively, if you have an image in XPM format you can directly include it into your {{FileName|main.cpp}} and add the following line to register it:
/trunk/src/Gui/Icons/images.cpp


{{Code|code=
and starts with the line
Gui::BitmapFactory().addXPM("FooAppSplasher", ( const char** ) splash_screen);
}}


== Branding XML ==
<nowiki>static const char *FCIcon[]={</nowiki>


In FreeCAD there is also a method supported without writing a customized main() function. For this method you must write a file name called {{FileName|branding.xml}} and put it into the installation directory of FreeCAD. Here is an example with all supported tags:
Replace it with your favourite icon, recompile freecad and the next step to create your own brand is done. There are many other icons in this file that you might change to your gusto.


<!-- WARNING Do not modify the <syntaxhighligh> tag because of "{}" or pipe characters "|" included in the source code of the macro -->
If you need to add new icons, you have to register it in
<syntaxhighlight lang="XML">
/trunk/src/Gui/Icons/BmpFactoryIcons.cpp
<?xml version="1.0" encoding="utf-8"?>
so that you can access from FreeCAD.
<Branding>
<Application>FooApp</Application>
<WindowTitle>Foo App in title bar</WindowTitle>
<BuildVersionMajor>1</BuildVersionMajor>
<BuildVersionMinor>0</BuildVersionMinor>
<BuildRevision>1234</BuildRevision>
<BuildRevisionDate>2014/1/1</BuildRevisionDate>
<CopyrightInfo>(c) My copyright</CopyrightInfo>
<MaintainerUrl>Foo App URL</MaintainerUrl>
<ProgramLogo>Path to logo (appears in bottom right corner)</ProgramLogo>
<WindowIcon>Path to icon file</WindowIcon>
<ProgramIcons>Path to program icons</ProgramIcons>
<SplashScreen>splashscreen.png</SplashScreen>
<SplashAlignment>Bottom|Left</SplashAlignment>
<SplashTextColor>#ffffff</SplashTextColor>
<SplashInfoColor>#c8c8c8</SplashInfoColor>
<StartWorkbench>PartDesignWorkbench</StartWorkbench>
</Branding>
</syntaxhighlight>


All listed tags are optional.
==== Background Image ====
The background image appears, when no document window is open. Like the splash screen it is defined in ''developers.h'' in the section starting with:
static const char* const background[]={
You should choose a low contrast image for the background. Otherwise it might irritate the user.


{{docnav|Testing|Localisation}}


<div class="mw-translate-fuzzy">
{{languages | {{se|Branding/se}} {{ru|Branding/ru}} }}
{{docnav/es|Testing/es|Localisation/es}}
</div>


{{Userdocnavi{{#translation:}}}}
[[Category:Developer Documentation]]
[[Category:Developer Documentation{{#translation:}}]]

Latest revision as of 09:46, 12 January 2022

Overview

Este artículo describe el Marcado de FreeCAD. Marcado significa comenzar tu propia aplicación basada en FreeCAD. Esto puede ser sólo tu propio ejecutable o pantalla de bienvenida pantalla de bienvenida hasta un programa completo adaptado. En base a la arquitectura flexible de FreeCAD es sencillo de utilizar como base para tus propios programas de propósito especial.

Warning

Although FreeCAD is offered to you free of charge, and the FreeCAD community is happy to see other applications emerging, that are based on FreeCAD, we have on the other hand seen a lot of unfair use of the information contained on this page by people who simply rebranded FreeCAD into a closed-source application to make profit from it.

Although the LGPL license allows to use the FreeCAD source code in closed-source applications, it also gives strict rules to do so, and does not allow simply taking FreeCAD, renaming it and stripping it of its license.

Would you be interested in using FreeCAD in a closed-source application, be sure to check thoroughly the implications of the LGPL license, and, even better, contact any FreeCAD developer, administrator or moderator before doing so.

General

General

La mayoría del marcado se realiza en MainCmd.cpp o MainGui.cpp. Estos proyectos generan los archivos ejecutables de FreeCAD. Para crear tu propia Marca simplemente copia los proyectos Main o MainGui y dale al ejecutable un nombre diferente, e.g. FooApp.exe. La configuración más importante para una nueva apariencia puede realizarse en una lugar de la función main(). Aquí está la sección de código que controla el marcado:

int main( int argc, char ** argv )
{
    // Name and Version of the Application
    App::Application::Config()["ExeName"] = "FooApp";
    App::Application::Config()["ExeVersion"] = "0.7";

    // set the banner (for loging and console)
    App::Application::Config()["CopyrightInfo"] = sBanner;
    App::Application::Config()["AppIcon"] = "FooAppIcon";
    App::Application::Config()["SplashScreen"] = "FooAppSplasher";
    App::Application::Config()["StartWorkbench"] = "Part design";
    App::Application::Config()["HiddenDockWindow"] = "Property editor";
    App::Application::Config()["SplashAlignment" ] = "Bottom|Left";
    App::Application::Config()["SplashTextColor" ] = "#000000"; // black

    // Inits the Application 
    App::Application::Config()["RunMode"] = "Gui";
    App::Application::init(argc,argv);

    Gui::BitmapFactory().addXPM("FooAppSplasher", ( const char** ) splash_screen);

    Gui::Application::initApplication();
    Gui::Application::runApplication();
    App::Application::destruct();

    return 0;
}

La primera entrada de Config define el nombre del programa. Este no es el nombre del ejecutable, el cual puede cambiarse renombrándolo o por la configuración del compilador, sino el nombre que es mostrado en la barra de tareas en Windows o en la lista de programas en los sistemas Unix.

Las siguientes líneas definen las entradas de Config de tu aplicación FooApp. Una descripción de Config y sus entradas se encuentra en Inicio y Configuración.

Images

Image resources are compiled into FreeCAD using Qt's resource system. Therefore you have to write a .qrc file, an XML-based file format that lists image files on the disk but also any other kind of resource files. To load the compiled resources inside the application you have to add a line

Q_INIT_RESOURCE(FooApp);

into the main() function. Alternatively, if you have an image in XPM format you can directly include it into your main.cpp and add the following line to register it:

Gui::BitmapFactory().addXPM("FooAppSplasher", ( const char** ) splash_screen);

Branding XML

In FreeCAD there is also a method supported without writing a customized main() function. For this method you must write a file name called branding.xml and put it into the installation directory of FreeCAD. Here is an example with all supported tags:

<?xml version="1.0" encoding="utf-8"?>
<Branding>
    <Application>FooApp</Application>
    <WindowTitle>Foo App in title bar</WindowTitle>
    <BuildVersionMajor>1</BuildVersionMajor>
    <BuildVersionMinor>0</BuildVersionMinor>
    <BuildRevision>1234</BuildRevision>
    <BuildRevisionDate>2014/1/1</BuildRevisionDate>
    <CopyrightInfo>(c) My copyright</CopyrightInfo>
    <MaintainerUrl>Foo App URL</MaintainerUrl>
    <ProgramLogo>Path to logo (appears in bottom right corner)</ProgramLogo>
    <WindowIcon>Path to icon file</WindowIcon>
    <ProgramIcons>Path to program icons</ProgramIcons>
    <SplashScreen>splashscreen.png</SplashScreen>
    <SplashAlignment>Bottom|Left</SplashAlignment>
    <SplashTextColor>#ffffff</SplashTextColor>
    <SplashInfoColor>#c8c8c8</SplashInfoColor>
    <StartWorkbench>PartDesignWorkbench</StartWorkbench>
</Branding>

All listed tags are optional.


Testing/es
Localisation/es