Difference between revisions of "Branding/es"

From FreeCAD Documentation
Jump to: navigation, search
m
(Updating to match new version of source page)
Line 1: Line 1:
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.
+
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|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.
  
 
=== 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.  
+
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 projects and give the executable an own name, 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:
+
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:
  
<code cpp>
+
<syntaxhighlight>
 
  int main( int argc, char ** argv )
 
  int main( int argc, char ** argv )
 
  {
 
  {
 
   // Name and Version of the Application
 
   // Name and Version of the Application
   App::Application::Config()["ExeName"] = "FooApp.exe";
+
   App::Application::Config()["ExeName"] = "FooApp";
 
   App::Application::Config()["ExeVersion"] = "0.7";
 
   App::Application::Config()["ExeVersion"] = "0.7";
 
   
 
   
 
   // set the banner (for loging and console)
 
   // set the banner (for loging and console)
   App::Application::Config()["ConsoleBanner"] = sBanner;
+
   App::Application::Config()["CopyrightInfo"] = sBanner;
   App::Application::Config()["AppIcon"] = "FCIcon";
+
   App::Application::Config()["AppIcon"] = "FooAppIcon";
   App::Application::Config()["SplashPicture"] = "FooAppSplasher";
+
   App::Application::Config()["SplashScreen"] = "FooAppSplasher";
 
   App::Application::Config()["StartWorkbench"] = "Part design";
 
   App::Application::Config()["StartWorkbench"] = "Part design";
 
   App::Application::Config()["HiddenDockWindow"] = "Property editor";
 
   App::Application::Config()["HiddenDockWindow"] = "Property editor";
Line 33: Line 33:
 
   return 0;
 
   return 0;
 
  }
 
  }
</code>
+
</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.
+
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.
  
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]].
+
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]].
  
=== Imagenes ===
+
=== Images ===
Todos los recursos de imágenes están compilados en FreeCAD. Esto reduce el tiempo de carga y mantiene la instalación compacta. Las imágenes están incluidas en formato XPM el cual es básicamente un formato de texto que utiliza sintaxis de C. Puedes dibujar estas imágenes con un editor de texto, pero es más confortable crear las imágenes con tu aplicación de gráficos preferida y convertirlas después a formato XPM.
+
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 .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
 
+
<syntaxhighlight>
El programa de imágenes de GNU [http://gimp.org/ Gimp] puede guardar archivos XPM.
+
  Q_INIT_RESOURCE(FooApp);
 
+
</syntaxhighlight>
Para la conversión puedes utilizar la herramienta ''[[ImageConv/es|ImageConv]]'' que está incluida en FreeCAD. Puedes encontrarla en
+
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:
 
+
<syntaxhighlight>
/trunk/src/Tools/ImageTools/ImageConv
 
 
 
No sólo convierte imágenes sino que también actualiza automáticamente el archivo ''BmpFactoryIcons.cpp'', donde están registradas las imágenes. El uso habitual es tan simple como en el siguiente ejemplo:
 
 
 
  ImageConv -i InputImage.png -o OutputImage.xpm
 
 
 
Esto convierte el archivo ''InputImage.png'' en formato XPM y escribe el resultado al archivo ''OutputImage.xpm''.
 
 
 
La línea:
 
 
 
  Gui::BitmapFactory().addXPM("FooAppSplasher", ( const char** ) splash_screen);
 
  Gui::BitmapFactory().addXPM("FooAppSplasher", ( const char** ) splash_screen);
 +
</syntaxhighlight>
 +
=== 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:
 +
<syntaxhighlight>
 +
<?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>
 +
</syntaxhighlight>
 +
All of the listed tags are optional.
  
en la función main() entonces incluye la imagen en el BitmapFactory de FreeCAD.
+
{{docnav|Testing|Localisation}}
 
 
==== Iconos ====
 
La principal aplicación de los iconos ''FCIcon'' que aparecen en las ventanas de títulos y otros lugares está definida en
 
 
 
/trunk/src/Gui/Icons/images.cpp
 
 
 
y comienza con la línea
 
 
 
<nowiki>static const char *FCIcon[]={</nowiki>
 
 
 
Puedes reemplazarla con tus iconos preferidos, recompilar FreeCAD y el siguiente paso para crear tu propia Marca está terminado. Existen muchos otros iconos en este archivo que podrías cambiar a tu gusto.
 
 
 
Si necesitas añadir nuevos iconos, tienes que registrarlos en
 
/trunk/src/Gui/Icons/BmpFactoryIcons.cpp
 
así podrás acceder a ellos desde FreeCAD.
 
 
 
==== Imagen de fondo ====
 
La imagen de fondo aparece, cuando no está abierto ninguna ventana de documento. Al igual que la [[Splash screen/es|imagen de bienvenida]] está definida en ''developers.h'' en la sección que comienza con:
 
static const char* const background[]={
 
Deberías seleccionar una imagen de bajo contraste para el fondo. De otro modo puede molestar al usuario.
 
 
 
{{docnav/es|Testing/es|Localisation/es}}
 
 
 
{{languages/es | {{en|Branding}} {{de|Branding/de}} {{fr|Branding/fr}} {{it|Branding/it}} {{jp|Branding/jp}} {{ru|Branding/ru}} {{se|Branding/se}} }}
 
  
[[Category:Developer Documentation/es]]
+
[[Category:Developer Documentation]]
 +
{{clear}}
 +
<languages/>

Revision as of 20:56, 14 October 2014

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.

General

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 projects and give the executable an own name, e.g. FooApp.exe. 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:

 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;
 }

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.

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.

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 of the listed tags are optional.

Other languages:
čeština • ‎Deutsch • ‎English • ‎español • ‎français • ‎italiano • ‎polski • ‎română • ‎русский • ‎svenska • ‎Türkçe