Ich frage mich eigentlich wie aufdringlich man eigentlich noch seien kann:

Aufdringlich

Ich will echt nicht wissen, wie oft ich schon Safari deselektiert habe, um es nicht zu installieren. Es taucht trotzdem immer wieder auf.

Ich mag das Iphone wirklich gerne, OS X ist auch ein tolles OS, sehr flott, da kann sich Vista wirklich mal eine Scheibe von abschneiden. Aber können die nicht einfach mal ihren Safari für sich behalten. Den braucht eh kein Mensch...

Genauso diese sinnlosen Google/Yahoo Toolbars... - DAS IST SPAMM.

Jeder gute Browser hat eine Suche bereits integriert, oder bietet Plugins dafür an, um diese zu erweitern.

Genauso ätzend finde ich die ganze Adobe-Suite mittlerweile. Das ganze Zeug ist einfach von sinnfreien Funktion überladen, die eh niemand wirklich braucht. Wie lange es alleine dauert, mit Adobe Acrobat Reader ein PDF zu öffnen um es nur zu lesen!!! Da ist selbst Word schneller mit docx-Source Files.

Das ist auch einer der Gründe, warum ich Adobe's Acrobat komplett vom Rechner verbannt habe. Foxit PDF Reader ist um längen schneller und robuster und längst nicht so überladen.

Sorry dass ich mich in diesem Beitrag nur über fremde Software aufrege, aber das musste endlich mal gesagt sein. Ich glaube auch, einigen Leuten geht es hier ähnlich. Danke! ;)

Keep it fast & simple.


 
Categories: Dies und Das

Da sitzt man grade und entwickelt an der Next-Gen Game-Engine, bastelt sich ein Tool zur automatische Verwaltung und Code-Generierung von Netzwerkpaketen, und wird dann wieder von so Kleinigkeiten ausgebremst, ala ListBox. ...

Man stelle sich vor, man hat ein eigene Klasse mit überschriebener ToString()-Methode, die man als Items zu einer ListBox hinzufügen möchte. - Die ToString()-Methode ist also überschrieben um den Namen, der später in der ListBox für das jeweilige Item auftaucht, zu ändern.

So in etwa wie die Klasse TestObjekt:

   1: public class TestObjekt
   2: {
   3:     public string Name;
   4:     public string Vorname;
   5:  
   6:     public override string ToString()
   7:     {
   8:         return Vorname + " " + Nachname;
   9:     }
  10: }

Sollte man später jetzt aber ein Item der Liste ändern wollen, wie z.B. den Vornamen, dann wird der Text des Items in der Listbox nicht aktualisiert.

Refresh() hilft leider (zum Glück) nicht.

Zeit mal etwas aus der neuen C# 3.0 Trick-Kiste auszuprobieren:

C#3.0 Extension Methods

Man erstellt sich einfach eine statische, nicht generische Klasse, und baut eine Extension Method, die das gewünschte leistet:

   1: public static class ListBoxExtension
   2: {
   3:     public static void RefreshItem(this ListBox listbox, int index)
   4:     {
   5:         if (listbox.Items.Count <= index) return;
   6:         if (listbox.Items[index] == null) return;
   7:  
   8:         // Selektion der Listbox merken:
   9:         int selection = listbox.SelectedIndex;
  10:  
  11:         // Item einfach erneut einfügen und danach das alte löschen.
  12:         // Beim Einfügen ruft die ListBox nämlich ToString() auf.
  13:         listbox.Items.Insert(index, listbox.Items[index]);
  14:         listbox.Items.RemoveAt(index + 1);
  15:  
  16:         // Verlorengegangene Selektion wiederherstellen:
  17:         listbox.SelectedIndex = selection;
  18:     }
  19: }

Danach kann man die neue Methode in jeder ListBox wie folgt nutzen:

   1: // Selektiertes Item aktualisieren:
   2: myList.RefreshItem(myList.SelectedIndex);

Falls Probleme auftreten, oder jemand eine bessere Lösung hat lasst es mich wissen! ;)

Btw: Extension Methods haben den Vorteil, wenn man mal einen Fehler in der Programmierung gemacht hat, kann man diesen später an einer zentralen Stelle ganz leicht ausbügeln. Ging mir hierbei jedenfalls so ;)

 

Grüße,

Euer Resharper Padawan


 
Categories: .NET | C#

Galaxy? Nein nicht ganz, aber dafür gar nicht so weit weg, nämlich in Frankreich beim Imagine Cup 2008 Finale.

PICT0433

Imagine Cup 2008 Finals

Ja wir haben es geschafft! Unser Projekt "Imagine Earth" hat uns bis jetzt zum Finale nach Paris gebracht.

Ich werde versuchen alle bisherigen Ereignisse hier ein wenig festzuhalten, sofern ich dazu kommen, denn wir stehen hier seit der Ankunft unter Strom! ;)

 

Die Anreise nach Paris (Donnerstag 3.7.08)

Los ging es für uns morgens um 6:20 von Bahnhof in Braunschweig in Richtung Hannover Flughafen. Dort angekommen haben wir in aller Ruhe eingecheckt, um dann entspannt bei Marché (sehr lecker, kann ich nur weiter empfehlen) zu frühstücken.

Als es dann zum Flug Check-In ging, hat einer von uns, Jochen Isensee, unser Designer, erst mal sein Notebook 20 Minuten abgeben müssen für eine ordentlich deutsche Bomben und Sprengstoff Kontrolle. - Ja ganz toll ...

Nachdem der Laptop dann als "sicher" eingestuft worden ist gab es 5 Minuten später eine Ansage von Air France, dass der Flieger gecancelt wurde.

- Da steht man extra früh auf, und dann sowas.. :)

Naja ein Glück haben wir einen Gutschein für das Mövenpick bekommen und konnten dann ganz entspannt dort im Cafe arbeiten, bis der nächste Flieger ging. Mit so einem kleinen Flugzeug bin ich allerdings noch nie geflogen (von einem Sportflugzeug mal abgesehen). Von einem Fenster zum anderen, oder 2 und 1 Sitz breiter Flieger (30 Sitzplätze..)IMG_0314

In Paris angekommen wurden wir gleich nach dem Koffer-Holen (zum Glück ist nichts verloren gegangen) abgeholt und zum Shuttle-Bus gebracht.

Nachdem wir dann ungefähr 4 mal im Kreis gefahren sind, dazu muss man den Flughafen von Paris kennen, ging es ab zum Hotel...

 

Welcome Dinner im Hôtel de Ville (Donnerstag, 3.7.08)

Nachdem wir unsere Sachen in den Zimmer abgeladen haben, ging es auch schon weiter zum Welcome Dinner.

Ich war wirklich beeindruckt, was Microsoft da wieder für eine Location ausgesucht hat, ich dachte zu erst an einen langen Tisch in einem langweiligen Raum wo es Essen gibt, aber als ich das gesehen, war ich wirklich baff.

Ich habe ein paar Fotos/Videos gemacht, das müsst ihr selbst sehen:

IMG_0322 IMG_0316  IMG_0318 

Eine Pause muss sein! Das würde auch meinen Chef Lars freuen! ;)

IMG_0317 IMG_0321

IMG_0315

 

Es gibt ein nettes Interview zum dem Abend mit Joe Wilson:


Nach der Party war für uns der Tag noch lange nicht zu Ende, denn wir haben uns Joe Wilsons Ratschlag zu Herzen genommen und noch bis um 4 Uhr morgens gearbeitet.

Wie es am Freitag weiter ging, versuche ich euch heute Abend zu bloggen. Ich verrate nur mal schon vorweg, unsere Präsentation, ein Strom-Ausfall im ganzen Hotel, und noch viel mehr lustige Dinge...

Grüße aus Frankreich,

Euer Florian


 
Categories: Game Development | XNA

July 4, 2008
@ 10:12 AM

Um euch mal einen Eindruck zu geben wie so ein Stand "Booth" auf dem Imagine Cup, zeige ich hier mal den Aufbau von unserem...

PICT0403

Standard mäßig hing in der Mitte ein Monitor an der Wand, den wir aber abbauen mussten, um unsere Panorame-Poster Szene auf den sehr begrenzten Platz doch noch komplett aufbauen zu können:

PICT0404

Hier links das Team S.I.S.S - Monkeys in Space Suits. beim Aufbau und zusätzlichen Problemen mit der XBOX-Live Internetverbindung. Es mussten noch extra Ports für die Firewall geöffnet werden.

PICT0405

Hier sieht man unseren Lieblings ADE von Microsoft Deutschland, Henrike Röse links im Bild, die immer noch etwas skeptisch darüber ist, ob bei uns alles glatt läuft. Dank ihrer Hilfe ist es uns aber gelungen, also so aufzubauen, wie es geplant war.

 PICT0406
Martin ist ein geborenes Bastel-Kind...
PICT0407
Bis auf den Bildschirm und die fehlenden Lautsprecher ist es jetzt alles klar soweit.

PICT0418

Hier mal ein Foto vom fertigen Stand, allerdings hat uns das Poster ganze rechts doch noch Probleme gemacht und ist abgefallen, und wir konnten es nur weiter oben wieder befestigen mit Hilfe von Team S.I.S.S. 

Lange konnten wir  aber nicht präsentieren, denn wir mussten noch an dem Vortrag für die Präsentation vor den Judges arbeiten.

PICT0402


 
Categories: Game Development | XNA