Branding

From FreeCAD Documentation
Revision as of 16:22, 7 December 2013 by Renatorivo (talk | contribs) (page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Denna artikel diskuterar Branding av FreeCAD. Branding innebär att du gör din egen applikation med FreeCAD som bas. Det kan sträcka sig från att bara ha en egen startfil eller uppstartsbild till ett helt och hållet omarbetat program. På basis FreeCAD's flexibla arkitektur så är det lätt att använda den som bas för dina egna program för speciella ändmål.


Allmänt

Den mesta brandingen görs i MainCmd.cpp or MainGui.cpp. Dessa Projekt genererar FreeCAD's körbara filer. För att göra din egen variant så behöver du bara kopiera Main eller MainGui projekten och ge den körbara filen ett eget namn, d.v.s. FooApp.exe.

De viktigaste inställningarna för ett nytt utseende kan göras på en plats i main() funktionen. Här är den kodsektion som kontrollerar branding:

int main( int argc, char ** argv )
{
  // Applikationens Namn och Version
  App::Application::Config()["ExeName"] = "FooApp.exe";
  App::Application::Config()["ExeVersion"] = "0.7";

  // sätt bannern (för loggning och konsol)
  App::Application::Config()["ConsoleBanner"] = sBanner;
  App::Application::Config()["AppIcon"] = "FCIcon";
  App::Application::Config()["SplashPicture"] = "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

  // Initierar Applikationen 
  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;
}

Den första Config punkten definierar programmets namn. Detta är inte det körbara namnet, vilket kan ändras genom att döpa om eller genom inställningar i kompilatorn, utan det namn som visas i windows programrad eller i programlistan på Unixsystem.

Efterföljande rader definierar Config punkterna för din FooApp Applikation. En beskrivning av Config och dess punkter hittar du i Uppstart och Konfiguration.


Bilder

Alla bildresurser är inkompilerade i FreeCAD. Detta reducerar fördröjd laddning och håller installationen kompakt. Bilderna är inkluderade i XPM-Format vilket är ett textformat som använder C-syntax. Du kan egentligen rita dessa bilder med en textredigerare, men det är smidigare att skapa bilderna i ditt favorit grafikprogram och sedan konvertera dem till XPM format.

GNU bildprogrammet Gimp kan spara XPM filer.

För konvertering kan du använda ImageConv verktyget som är inkluderat med freecad. Du kan hitta det under

/trunk/src/Tools/ImageTools/ImageConv


Det kan inte bara konvertera bilder utan även automatiskt uppdatera BmpFactoryIcons.cpp filen, där bilderna är registrerade. Typiskt bruk är så enkelt som i följande exempel:

ImageConv -i InputImage.png -o OutputImage.xpm


Detta konverterar filen InputImage.png till XPM-format och skriver resultatet till fil OutputImage.xpm.

Raden:

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


i main() inkluderar sedan bilden i FreeCAD's BitmapFactory.


Ikoner

Huvudapplikationsikonen FCIcon som syns i fönstertitlar och på andra platser är definierade i

/trunk/src/Gui/Icons/images.cpp


och startar med raden

static const char *FCIcon[]={


Byt ut den mot din favoritikon, kompilera om freecad och nästa steg att skapa din egen variant är gjord. Det finns många andra ikoner i denna fil som du kan ändra om du vill.

Om du behöver lägga till nya ikoner, så måste du registrera den i

/trunk/src/Gui/Icons/BmpFactoryIcons.cpp

så att du kan komma åt den från FreeCAD.


Bakgrundsbild

Bakgrundsbilden syns när inget dokumentfönster är öppet. Liksom uppstartsbilden så är den definierad i developers.h i avsnittet som startar med:

static const char* const background[]={

Du ska välja en lågkontrast bild till bakgrunden. Annars kan det irritera användaren.


Testing/sv
Localisation/sv
Available translations of this page: