TITLE("Introduction to U++")
TOPIC_TEXT(
"[ $$0,0#00000000000000000000000000000000:Default][=b133;*R5 $$1,2#50732784410233463530219518343157:Heading1][a17;*@(170.42.0) "
"$$2,3#48345324464242285505540720043115:Heading2][2 $$3,3#42410412485283044863419059360682:Body1][{_}%EN-US "
"[s0; &][s1; Introduction to U`+`+&][s0; &][s0; &][s2; Welcome to U`+`+.&][s3; U`+`+ "
"is both an application framework (class library for Win32 and Linux) as well as a "
"c")
TOPIC_TEXT(
"omplete development tool including RAD GUI designer, source editor, image editor, "
"code documenting tool, and C`+`+ project builder.  It also provides a powerful `\"C`-like`\" "
"scripting language (ESC) enabling you to provide end user extensibility and customization "
"of your own applications, as well as extend TheIDE (the U`+`+ IDE)&][s3; &][s3; This "
"topic describes the key concepts of U`+`+ to help yo")
TOPIC_TEXT(
"u get started as quickly as possible.  If you want to try out U`+`+ before reading "
"any further, you can build and run the HelloWorld example and read the HelloWorld "
"tutorial [@(255.42.0) here (fix)].&][s0; &][s0; &][s2;_ TheIDE&][s3;@(226.42.0) [@0 "
"Before you can run TheIDE, you must first choose the package and assembly you wish "
"to work with using the `\"Select`-main`-package`\" dialog.  After an a")
TOPIC_TEXT(
"ssembly and package have been selected, the package is opened in TheIDE.  The package "
"that has been opened is referred to as the ][*@0 main package][@0  and its name is "
"shown in the title bar of the U`+`+ application window.  The uppermost pane at the "
"left hand side of TheIDE shows the name of the main package followed by a list of "
"the packages used by the main package.  The lower left`-hand pane ")
TOPIC_TEXT(
"lists the source files belonging to the package whose name is highlighted in the "
"upper pane.  To select a different main package, the `\"Set main package`\" option "
"from the File menu is used.  For more detail on using TheIDE, ][^topic`:`/`/ide`/app`/Intro`_TheIDE`$en`-us^@0 "
"see this].&][s0; &][s0; &][s2; Packages, assemblies and nests&][s3; Packages are "
"centric to U`+`+.  An executable application i")
TOPIC_TEXT(
"s built from a package.  A package can also build into a dynamic link library, a "
"static library, or a set of object files.  A package can be used by other packages. "
" A package corresponds to a single directory whose name is the name of the package. "
" TheIDE itself is a package and you can rebuild it from within TheIDE if you wish!&][s3; "
"&][s3; An assembly can be thought of as a collection of packag")
TOPIC_TEXT(
"es but it is actually just a set of paths which determine where U`+`+ looks for "
"the packages and source files needed when building one of the assembly packages. "
" The paths defined by the assembly are stored in an assembly definition file which "
"has a .var extension and is stored in the U`+`+ root installation directory.  A package "
"can `\"appear`\" in multiple assemblies.&][s3; &][s3;^topic`:`/`/ide`/")
TOPIC_TEXT(
"app`/ConfiguringPackagesAssemblies`$en`-us^ [^^ U`+`+ requires that packages be "
"organized into nests.  A nest is actually just a directory containing a set of package "
"directories, folders or files.  An assembly defines an ordered list of nests (paths) "
"and the packages contained in those nests form the packages of the assembly.  For "
"more detail on packages and assemblies see ][^topic`:`/`/ide`/app`")
TOPIC_TEXT(
"/PackagesAssembliesAndNests`$en`-us^ `\"Packages, Assemblies and Nests`\" ][^^ and. "
"]`\"Creating and Configuring Assemblies and Packages`\"&][s0;_@(28.85.0) &][s0;_@(28.85.0) "
"&][s2; RAD GUI designer&][s0; &][s0; &][s0; &][s2; The ESC macro language&][s0; &][s0; "
"&][s2; The help system.&][s3; U`+`+ documentation is created with Topic`+`+.&][s3; "
"&][s3; &][s0; &][s2; U`+`+ License&][s3; The U`+`+ license ")
TOPIC_TEXT(
"is BSD, allowing almost unrestricted use of the product and its source&][s3; code. "
" Full C`+`+ source code is provided for both theIDE and the class framework,&][s3; "
"ensuring both the future of U`+`+ and the ability to support and extend your &][s3; "
"own applications.&][s0; &][s0; ]")
