diff options
| -rw-r--r-- | .cproject | 291 | ||||
| -rw-r--r-- | .project | 4 | ||||
| -rw-r--r-- | Documentation/SwiftenDevelopersGuide/Swiften Developers Guide.xml | 45 | 
3 files changed, 331 insertions, 9 deletions
| @@ -2327,6 +2327,297 @@  				</scannerConfigBuildInfo>  			</storageModule>  		</cconfiguration> +		<cconfiguration id="0.980756260.1834106966.226646757.1415775202.1294021552"> +			<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="0.980756260.1834106966.226646757.1415775202.1294021552" moduleId="org.eclipse.cdt.core.settings" name="Swiften Developers' Guide"> +				<externalSettings/> +				<extensions> +					<extension id="org.eclipse.cdt.core.MachO64" point="org.eclipse.cdt.core.BinaryParser"/> +					<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/> +					<extension id="org.eclipse.cdt.core.PE" point="org.eclipse.cdt.core.BinaryParser"/> +					<extension id="org.eclipse.cdt.core.GNU_ELF" point="org.eclipse.cdt.core.BinaryParser"/> +					<extension id="org.eclipse.cdt.core.VCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +					<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +					<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/> +					<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +					<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +					<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +					<extension id="be.el_tramo.ecppunit.CPPUnitErrorParser" point="org.eclipse.cdt.core.ErrorParser"/> +				</extensions> +			</storageModule> +			<storageModule moduleId="cdtBuildSystem" version="4.0.0"> +				<configuration artifactName="${ProjName}" buildProperties="" description="" errorParsers="org.eclipse.cdt.core.VCErrorParser;org.eclipse.cdt.core.GmakeErrorParser;org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser;be.el_tramo.ecppunit.CPPUnitErrorParser" id="0.980756260.1834106966.226646757.1415775202.1294021552" name="Swiften Developers' Guide" parent="org.eclipse.cdt.build.core.prefbase.cfg"> +					<folderInfo id="0.980756260.1834106966.226646757.1415775202.1294021552." name="/" resourcePath=""> +						<toolChain errorParsers="" id="org.eclipse.cdt.build.core.prefbase.toolchain.800286859" name="No ToolChain" resourceTypeBasedDiscovery="false" superClass="org.eclipse.cdt.build.core.prefbase.toolchain"> +							<targetPlatform binaryParser="org.eclipse.cdt.core.MachO64;org.eclipse.cdt.core.ELF;org.eclipse.cdt.core.PE;org.eclipse.cdt.core.GNU_ELF" id="org.eclipse.cdt.build.core.prefbase.toolchain.800286859.1007345188" name=""/> +							<builder arguments="${ProjDirPath}/3rdParty/SCons/scons.py" autoBuildTarget="doc=1 Documentation/SwiftenDevelopersGuide" buildPath="" cleanBuildTarget="-c" command="python" enableAutoBuild="true" errorParsers="org.eclipse.cdt.core.GmakeErrorParser;org.eclipse.cdt.core.CWDLocator" id="org.eclipse.cdt.build.core.settings.default.builder.373382074" incrementalBuildTarget="doc=1 Documentation/SwiftenDevelopersGuide" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="Gnu Make Builder" superClass="org.eclipse.cdt.build.core.settings.default.builder"/> +							<tool errorParsers="org.eclipse.cdt.core.VCErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser" id="org.eclipse.cdt.build.core.settings.holder.libs.2060888270" name="holder for library settings" superClass="org.eclipse.cdt.build.core.settings.holder.libs"/> +							<tool errorParsers="org.eclipse.cdt.core.VCErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser" id="org.eclipse.cdt.build.core.settings.holder.600739278" name="Assembly" superClass="org.eclipse.cdt.build.core.settings.holder"> +								<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.1458328705" languageId="org.eclipse.cdt.core.assembly" languageName="Assembly" sourceContentType="org.eclipse.cdt.core.asmSource" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/> +							</tool> +							<tool errorParsers="org.eclipse.cdt.core.VCErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser" id="org.eclipse.cdt.build.core.settings.holder.832992733" name="GNU C++" superClass="org.eclipse.cdt.build.core.settings.holder"> +								<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.272293269" languageId="org.eclipse.cdt.core.g++" languageName="GNU C++" sourceContentType="org.eclipse.cdt.core.cxxSource,org.eclipse.cdt.core.cxxHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/> +							</tool> +							<tool errorParsers="org.eclipse.cdt.core.VCErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser" id="org.eclipse.cdt.build.core.settings.holder.831026084" name="GNU C" superClass="org.eclipse.cdt.build.core.settings.holder"> +								<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.170495811" languageId="org.eclipse.cdt.core.gcc" languageName="GNU C" sourceContentType="org.eclipse.cdt.core.cSource,org.eclipse.cdt.core.cHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/> +							</tool> +						</toolChain> +					</folderInfo> +				</configuration> +			</storageModule> +			<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> +			<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/> +			<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/> +			<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/> +			<storageModule moduleId="scannerConfiguration"> +				<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/> +				<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +					<buildOutputProvider> +						<openAction enabled="true" filePath=""/> +						<parser enabled="true"/> +					</buildOutputProvider> +					<scannerInfoProvider id="specsFile"> +						<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +						<parser enabled="true"/> +					</scannerInfoProvider> +				</profile> +				<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +					<buildOutputProvider> +						<openAction enabled="true" filePath=""/> +						<parser enabled="true"/> +					</buildOutputProvider> +					<scannerInfoProvider id="makefileGenerator"> +						<runAction arguments="-E -P -v -dD" command="" useDefault="true"/> +						<parser enabled="true"/> +					</scannerInfoProvider> +				</profile> +				<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +					<buildOutputProvider> +						<openAction enabled="true" filePath=""/> +						<parser enabled="true"/> +					</buildOutputProvider> +					<scannerInfoProvider id="specsFile"> +						<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +						<parser enabled="true"/> +					</scannerInfoProvider> +				</profile> +				<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +					<buildOutputProvider> +						<openAction enabled="true" filePath=""/> +						<parser enabled="true"/> +					</buildOutputProvider> +					<scannerInfoProvider id="specsFile"> +						<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +						<parser enabled="true"/> +					</scannerInfoProvider> +				</profile> +				<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +					<buildOutputProvider> +						<openAction enabled="true" filePath=""/> +						<parser enabled="true"/> +					</buildOutputProvider> +					<scannerInfoProvider id="specsFile"> +						<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +						<parser enabled="true"/> +					</scannerInfoProvider> +				</profile> +				<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +					<buildOutputProvider> +						<openAction enabled="true" filePath=""/> +						<parser enabled="true"/> +					</buildOutputProvider> +					<scannerInfoProvider id="specsFile"> +						<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/${specs_file}"'" command="sh" useDefault="true"/> +						<parser enabled="true"/> +					</scannerInfoProvider> +				</profile> +				<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +					<buildOutputProvider> +						<openAction enabled="true" filePath=""/> +						<parser enabled="true"/> +					</buildOutputProvider> +					<scannerInfoProvider id="specsFile"> +						<runAction arguments="-c 'g++ -E -P -v -dD "${plugin_state_location}/specs.cpp"'" command="sh" useDefault="true"/> +						<parser enabled="true"/> +					</scannerInfoProvider> +				</profile> +				<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +					<buildOutputProvider> +						<openAction enabled="true" filePath=""/> +						<parser enabled="true"/> +					</buildOutputProvider> +					<scannerInfoProvider id="specsFile"> +						<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/specs.c"'" command="sh" useDefault="true"/> +						<parser enabled="true"/> +					</scannerInfoProvider> +				</profile> +				<scannerConfigBuildInfo instanceId="0.980756260.1834106966.1269306596"> +					<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/> +					<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="specsFile"> +							<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +					<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="makefileGenerator"> +							<runAction arguments="-E -P -v -dD" command="" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +					<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="specsFile"> +							<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +					<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="specsFile"> +							<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +					<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="specsFile"> +							<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +					<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="specsFile"> +							<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/${specs_file}"'" command="sh" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +					<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="specsFile"> +							<runAction arguments="-c 'g++ -E -P -v -dD "${plugin_state_location}/specs.cpp"'" command="sh" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +					<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="specsFile"> +							<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/specs.c"'" command="sh" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +				</scannerConfigBuildInfo> +				<scannerConfigBuildInfo instanceId="0.980756260"> +					<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/> +					<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="specsFile"> +							<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +					<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="makefileGenerator"> +							<runAction arguments="-E -P -v -dD" command="" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +					<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="specsFile"> +							<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +					<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="specsFile"> +							<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +					<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="specsFile"> +							<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +					<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="specsFile"> +							<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/${specs_file}"'" command="sh" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +					<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="specsFile"> +							<runAction arguments="-c 'g++ -E -P -v -dD "${plugin_state_location}/specs.cpp"'" command="sh" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +					<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC"> +						<buildOutputProvider> +							<openAction enabled="true" filePath=""/> +							<parser enabled="true"/> +						</buildOutputProvider> +						<scannerInfoProvider id="specsFile"> +							<runAction arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/specs.c"'" command="sh" useDefault="true"/> +							<parser enabled="true"/> +						</scannerInfoProvider> +					</profile> +				</scannerConfigBuildInfo> +			</storageModule> +		</cconfiguration>  	</storageModule>  	<storageModule moduleId="cdtBuildSystem" version="4.0.0">  		<project id="swift.null.189117846" name="swift"/> @@ -18,7 +18,7 @@  				</dictionary>  				<dictionary>  					<key>org.eclipse.cdt.make.core.autoBuildTarget</key> -					<value>check=1 QA</value> +					<value>doc=1 Documentation/SwiftenDevelopersGuide</value>  				</dictionary>  				<dictionary>  					<key>org.eclipse.cdt.make.core.buildArguments</key> @@ -54,7 +54,7 @@  				</dictionary>  				<dictionary>  					<key>org.eclipse.cdt.make.core.fullBuildTarget</key> -					<value>check=1 QA</value> +					<value>doc=1 Documentation/SwiftenDevelopersGuide</value>  				</dictionary>  				<dictionary>  					<key>org.eclipse.cdt.make.core.stopOnError</key> diff --git a/Documentation/SwiftenDevelopersGuide/Swiften Developers Guide.xml b/Documentation/SwiftenDevelopersGuide/Swiften Developers Guide.xml index ab1b796..52af24e 100644 --- a/Documentation/SwiftenDevelopersGuide/Swiften Developers Guide.xml +++ b/Documentation/SwiftenDevelopersGuide/Swiften Developers Guide.xml @@ -24,8 +24,7 @@          <emphasis>Bind</emphasis>, <emphasis>Optional</emphasis>, and           <emphasis>Smart Pointers</emphasis>. We          introduce the basic usage of these libraries in our API throughout -        this manual. For detailed documentation, we refer to the Boost -        website. +        this manual. For detailed documentation, we refer to the <ulink url="http://boost.org">Boost</ulink> website.        </para>      </section>    </chapter> @@ -72,9 +71,19 @@          so we use Swiften's own <literal>SimpleEventLoop</literal>. This          class is used by simply instantiating it at the beginning of the          application, and calling <literal>run()</literal> after everything -        is set up, which will go into an infinite loop. Apart from constructing -        and (if necessary) starting the event loop, you will probably have -        no other contact with it in the rest of the application. +        is set up, which will go into an infinite loop. Apart from constructing, +        passing, and (if necessary) starting the event loop, you will probably  +        have no other contact with it in the rest of the application. +      </para> + +      <para> +        Another prerequisite of Swiften's classes is an implementation of  +        network interaction, provided through the +        <literal>NetworkFactories</literal> class. Swiften comes with a +        Boost-based network implementation, implemented in +        <literal>BoostNetworkFactories</literal>. As with the event loop, +        you probably will have no need to interact with this class apart +        from constructing it.        </para>        <para> @@ -91,7 +100,18 @@      <sect1>        <title>Building EchoBot</title> -      <remark>TODO: Explain linking against the static library.</remark> +      <para> +        To build your application, you will need to set up your build  +        environment to use the correct include and library paths for +        Swiften, and link against the Swiften library. This depends +        on both the compiler you are using, and the flags you used to build  +        Swiften. To get the list of compiler options, Swiften comes with +        a program <literal>swiften-config</literal> (located in  +        <literal>Swiften/Config</literal> in the Swiften tree). Calling this +        with the <literal>--libs</literal> option will return the list of link flags,  +        whereas calling it with the <literal>--cflags</literal> option will return the +        list of C(++) compiler flags. +      </para>      </sect1>      <sect1> @@ -291,7 +311,18 @@      <sect1>        <title>Using Swiften's convenience classes</title> -      <remark>TODO</remark> +      <para> +      	Swiften comes with flavors of the Client class: <literal>CoreClient</literal>, which  +      	implements only the basics of connecting to the XMPP server, without any built-in  +      	responders. If you want to build a client from scratch, this class is probably your +      	preferred Swiften interface. However, most users of Swiften will not want to bother with +      	explicitly instantiating responders to basic functionality such as software version +      	information etc., and will want to have the convenience of built-in responders and  +      	utility classes. In this case, you can use the <literal>Client</literal> class (a +      	subclass of <literal>CoreClient</literal>, which +      	implements most of the common XMPP client functionality, including roster and subscription +      	management, VCards, Avatars, Service Discovery, Multi-User Chats, ... +      </para>      </sect1>    </chapter> | 
 Swift
 Swift