[Scummvm-cvs-logs] CVS: web/docs conventions.xml,NONE,1.1 todo.xml,NONE,1.1

Jeremy Newman laxdragon at users.sourceforge.net
Wed Jul 17 17:10:08 CEST 2002


Update of /cvsroot/scummvm/web/docs
In directory usw-pr-cvs1:/tmp/cvs-serv16030/docs

Added Files:
	conventions.xml todo.xml 
Log Message:
- added documentation section to the website
- added painelf's docs


--- NEW FILE: conventions.xml ---
<NAME>ScummVM code formatting conventions</NAME>
<DESC>This page describes the coding style we use in ScummVM.</DESC>
<BODY>
		<style>
			ul {
				padding-bottom: 10px;
			}
			h2 {
				margin-bottom: 0px;
			}
			h3 {
				margin-bottom: 0px;
			}
		</style>

		<h1>ScummVM code formatting conventions</h1>
		
		<h2>1. Use common sense</h2>
		These here conventions are only highlighting a few things that are so unimportant that it becomes an issue of aesthetics, not common sense.
		
		<h2>2. Hugging braces</h2>
		<pre>
		if (int i = 0; i < t; i++) {
			[...]
		} else {
			[...]
		}
		
		class Dummy() {
			[...]
		}
		</pre>
		
		Did you see the {}'s on that baby?
		
		<h2>3. Two-space tab indents</h2>
		Says it all, really.
		
		<h2>4. Whitespaces</h2>

		<ol style="list-style: none;">
			<li><h3>Conventional operators surrounded by a space character</h3>
				<pre>
	a = (b + c) * d;
				</pre>
		
			<li><h3>C++ reserved words followed by a white space</h3>
				<pre>
	while (true) {
				</pre>
			
			<li><h3>Commas followed by a white space</h3>
				<pre>
	someFunction(a, b, c);
	int d, e;
				</pre>
		
			<li><h3>Semicolons followed by a space character, if there is more on line</h3>
				<pre>
	for (int a = 0; b++; c < d)
	doSomething(e); doSomething(f);	// This is probably bad style anyway
				</pre>
			
			<li><h3>When declaring class inheritance and in a ? construct, colons should be surrounded by white space</h3>
				<pre>
	class BusWheel : public RubberInflatable {
	(isNight) ? colorMeDark() : colorMeBright();
				</pre>
		</ol>

		<h2>5. Switch / Case constructs</h2>
		<pre>
	switch (cmd) {
	case kSaveCmd:
		Save();
		break;
	case kLoadCmd:
	case kPlayCmd:
		Close();
		break;
	default:
		Dialog::handleCommand(sender, cmd, data);
	}
		</pre>


		<h2>6. Naming</h2>
		<ol style="list-style: none;">
			<li><h3>Constants</h3><br>
			Basically, you have to choices:
			<pre>
	kSomeKludgyConstantName		// notice k prefix
			</pre>
			or
			<pre>
	SOME_KLUDGY_CONSTANT_NAME
			</pre>
			
			<li><h3>Classes</h3><br>
			Mixed case starting with upper case
			<pre>
	class MeClass() {
			</pre>
			
			<li><h3>Class members</h3><br>
			_ prefixed and in mixed case (Yo! no underscore seperators), starting with lowercase.
			<pre>
	char *_someVariableName;
			</pre>

			<li><h3>Class methods</h3><br>
			mixed case, starting with lowercase.
			<pre>
	void thisIsMyFancyMethod();
			</pre>
		</ol>
		
</BODY>

--- NEW FILE: todo.xml ---
<NAME>ScummVM current areas of focus</NAME>
<DESC>This page is the current TODO list for ScummVM.</DESC>
<BODY>
		<style>
			h2 {
				margin-bottom: 0px;
			}
			h3 {
				margin-bottom: 0px;
			}

			ul {
				padding-bottom: 10px;
			}
		</style>

		<h1>ScummVM current areas of focus</h1>
		
		<h2>Introduction</h2>
		If you want to dig in, this is the place to find out what we're currently working on (or hoping somebody will pick it up for us, you never know). This is the stuff where you might make the most useful contribution, right now.
		
		<h2>Upcoming milestones</h2>
		0.3.0: Possibly new license, supported games near bug free

		<h2>Areas</h2>
		<ul>
			<li><h3>General</h3>
			<ul>
				<li>Change internal screens to 16bit (current 8bit)
				<ul>
					<li>This is needed for in ScummV7 (The DIG and Full Throttle)
					<li>.. and also makes a cameo appearance in alphablended dialogs
				</ul>
			</ul>
			<li><h3>New GUI</h3>
			<ul>
				<li>This isn't really important, but anyway.
				<li>Todo
				<ul>
					<li>Editable list widget
					<li>Implement old dialogs. Ouch. Biggie. Currently only test dialog exists (press F7)
				</ul>
				
				<li>Ask: Fingolfin, Endy, painelf
			</ul>
			<li><h3>The DIG</h3>
			<ul>
				<li>Both graphical and logic problems
				<li>From <a href="http://scummvm.sourceforge.net/compatibility.php?details=dig">http://scummvm.sourceforge.net/compatibility.php?details=dig</a>
				<ul>
					<li>Game crashes at various points, due to
					<ul>
						<li>vertical scrolling
						<li>unsupported features
					</ul>
					<li>Walkscript misbehaves (currently bypassed in CVS)
					<li>No in-game music
					<li>Some animations play incorrectly
				</ul>
				<li>Ask: Yazoo, Endy
			</ul>
			<li><h3>Monkey1VGA</h3>
			<ul>
				<li>Mainly graphical problems
				<ul>
					<li>Bugs: <a href="http://sourceforge.net/tracker/index.php?func=detail&aid=556444&group_id=37116&atid=418820" title="MI1: German sz ligature">#556444</a>
				</ul>
				<li>Ask: MadMoose
			</ul>
			<li><h3>Zak256</h3>
			<ul>
				<li>Logic problems
				<ul>
					<li>Bugs: <a href="http://sourceforge.net/tracker/index.php?func=detail&aid=555647&group_id=37116&atid=418820" title="ZAK256: airoplain's restroom door">#555647</a>, <a href="http://sourceforge.net/tracker/index.php?func=detail&aid=566724&group_id=37116&atid=418820" title="ZAK256: Broken Fuse on mars">#566724</a>
				</ul>
				<li>Random Number Generator doesn't work (<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=555651&group_id=37116&atid=418820" title="ZAK256: missing markings">#555651</a>)
				<li>No music or sound effects (Endy can help you get effects done)
				<li>Ask: Endy
			</ul>
			<li><h3>Full Throttle</h3>
			<ul>
				<li>Doesn't handle virtual rooms/resources properly
				<li>From <a href="http://scummvm.sourceforge.net/compatibility.php?details=ft">http://scummvm.sourceforge.net/compatibility.php?details=ft</a>
				<ul>
					<li>Game crashes at various points, due to missing SCUMM opcodes
					<li>Some palette glitches during movie playback
					<li>Some in-game music not working
					<li>Some animations play incorrectly
				</ul>
				<li>Ask: Yazoo, khalek
			</ul>
		</ul>
</BODY>




More information about the Scummvm-git-logs mailing list