Source Code/scribus

From Scribus Wiki
Revision as of 15:14, 19 January 2014 by Cbradney (talk | contribs)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.


Parent directory : Source_Code

The scribus directory contains the source code for Scribus, and plenty of subdirectories with important functionality held within. To name but a few of the important source files...

  • main.h/.cpp - Where the program starts running from. Its just a stub file that points to the main *nix or win32 main files
  • main_nix.h/.cpp
    • Creates the ScribusQApp class (where Qt starts to kick in)
    • Initiates the crash handler
    • Starts and initialises the ScribusQApp instance, and passes the command line to it for parsing
  • main_win32.h/.cpp
    • Creates the ScribusQApp class (where Qt starts to kick in) from the scribusapp.cpp file.
    • Initiates the crash handler
    • Starts and initialises the ScribusQApp instance, and passes the command line to it for parsing
  • scribusqapp.h/.cpp
    • Initialise the ScribusCore instance which is in scribuscore.cpp
    • Sets up the download manager
    • Parses the command line
    • Sets up the regional settings/languages and loads the GUI translations
  • scribuscore.h/.cpp
    • Starts the GUI (ScribusMainWindow class) which is in scribus.cpp
    • Sets up splash screen
    • Finds the fonts on the system
    • Initialises the default program values, key shortcuts
    • Loads the preferences
    • Initialises the colour management system
  • scribus.h/.cpp
    • A real monster of a file, which contains a lot of important GUI code for the main window, menus etc.
  • scribusview.h/.cpp
    • The view of the Scribus document is contained here and interfaces with the "canvas"
  • scribusdoc.h/.cpp
    • Contains most of the code around manipulation of a Scribus document, with many links into page items, etc
  • scribuswin.h/.cpp
    • The document window of the Scribus document is contained here and interfaces with the ScribusMainWindows and ScribusView instances.
  • pageitem.h/.cpp
    • The base code for all page items is contained here.
  • pageitem_*.h/.cpp
    • All of the different page item types have their own classes/files with the specific definitions and needs for the type of item they are.