You can entirely set up the printer there and start print jobs. This is an abstraction class of a printer driver. TODO : Discuss about PspSalPrinter implementation. As the name suggests it relies on features psprint module. Its implementation is located in vcl/unx/source/gdi/salprnpsp.cxx. PspSalPrinter means PostScript Print System Abstraction Layer Printer. Its header is located in vcl/inc/salprn.hxx This class is inherited by PspSalPrinter, WinSalPrinter, and of course by AquaSalPrinter (see AquaSalPrinter class). It is composed of virtual fonctions, and a dummy constructor. SalPrinter is a virtual class intended for managing print jobs. make the OS really draws) the lines and pixels on the screen or on the print device. After that VCL relies on its Graphic Context to really draws (i.e. This is not really important since we understand the main idea of how printing works.Ĥ. So, it asks VCL to draw pixels, lines, characters, etc on an OutputDevice.Īt this point, I don't know exactly where the OutputDevice is instancied (who decides that it would be a screen, an Aqua printer or a PostScript printer. The user application has now everything needed to print the document. Then, it returns them ot the user application.ģ. Svtools is responsible for asking to the user the requested information about printing options. Do do the real display of the dialog, it uses SalFrame's Show() method, which can be X11SalFrame, AquaSalFrame, etc.Ģ. This operation shows the dialog (using the Execute method from ModalDialog, which is in vcl) and sets the Printer Data correctly with the method setPrinterProps. To be a bit more precise, it creates a new instance of PrintDialog or of PrintDialogSetup, it associates a Printer instance to it, then, it calls the Execute method from PrintDialog or PrintSetupDialog. The user Application creates a print dialog or a print setup dialog. The OuputDevice is in fact our Printer.ġ. There is many holes in the stack but we get the idea. Instead, I have found a method PrintPages implemented in sw module. I did found the menubar, but not how the menu item was linked to the print operation. For this, I need to know where in sw the menubar is built. I will try to share the few thing I understood about the way Writer prints document.įirst I need to locate the print menu item in the sw module (sw stands for Star Writer). This part describes what can be found in the OOo APIs, how it is implemented and how it will be changed.
Mac os x apache vs code#
This will allow other platform developpers to use the same code to implement their native dialogs. Then, we will also need to implement low-level printing using OS API because, without that the user might not be able to use every setting available in the native dialog. The user wants to be able to print with the same way he does with its other natives applications.įor us, this means using a native printing dialog.
We only have to implement the native code. Tu sum up : we have a starting point to implement low-level printing support using the native API. However, we have only one Print Dialog and one Printer Setup dialog for all environments. This means that we have already a way to implement our printing support for Aqua without breaking as we have already environment plug-ins. There is also printing support implemented for Windows.
Mac os x apache vs mac os#
The final goal of this project is to have the native printing support on Mac OS X.Ĭurrently we simply have a generic printing support which works with X11.
Mac os x apache vs for mac os x#
5.1 Link for Mac OS X API documentation.3.2 Using Quartz Graphic Context to Print.1.1 What we have now and what we don't ?.D SERVER_CONFIG_FILE="/private/etc/apache2/nf" <<< Where httpd. D AP_TYPES_CONFIG_FILE="/private/etc/apache2/mime.types" D DEFAULT_SCOREBOARD="logs/apache_runtime_status" D DEFAULT_PIDLOG="/private/var/run/httpd.pid" D APR_HAVE_IPV6 (IPv4-mapped addresses enabled) # (look for this line `SERVER_CONFIG_FILE`, the last line here) If you don't know where is Apache's nf file: # Run this command to find where is nf # running httpd, as with most system services. # It is usually good practice to create a dedicated user and group for # User/Group: The name (or #number) of the user/group to run httpd as. # httpd as root initially and it will switch. PidFile: "/usr/local/var/run/httpd/httpd.pid"Īlso, to check and/or change, you can go to your nf file and look for the following part: # If you wish httpd to run as a different user or group, you must run Mutex default: dir="/usr/local/var/run/httpd/" mechanism=default Main ErrorLog: "/usr/local/var/log/httpd/error_log" You can check by running this command: $ sudo apachectl -D DUMP_RUN_CFG