From: <ken...@us...> - 2008-12-20 06:43:53
|
Revision: 2717 http://planeshift.svn.sourceforge.net/planeshift/?rev=2717&view=rev Author: kennygraunke Date: 2008-12-20 06:43:49 +0000 (Sat, 20 Dec 2008) Log Message: ----------- Switched to standard isalnum() instead of custom implementations. Modified Paths: -------------- trunk/src/common/paws/pawsscript.cpp trunk/src/common/paws/pawsscript.h Modified: trunk/src/common/paws/pawsscript.cpp =================================================================== --- trunk/src/common/paws/pawsscript.cpp 2008-12-19 17:57:41 UTC (rev 2716) +++ trunk/src/common/paws/pawsscript.cpp 2008-12-20 06:43:49 UTC (rev 2717) @@ -82,16 +82,6 @@ return true; } -bool pawsScript::IsAlpha(char c) -{ - return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z'); -} - -bool pawsScript::IsNumeric(char c) -{ - return c >= '0' && c <= '9'; -} - pawsWidget * pawsScript::FindWidget(pawsWidget * widget, const char * name) { // a better FindWidget that will go back up the parents to really try and find the thing @@ -147,7 +137,7 @@ } // alpha, numeric, and underscores don't break a token - if (IsAlpha(c) || IsNumeric(c) || c == '_') + if (isalnum(c) || c == '_') { currToken += c; continue; Modified: trunk/src/common/paws/pawsscript.h =================================================================== --- trunk/src/common/paws/pawsscript.h 2008-12-19 17:57:41 UTC (rev 2716) +++ trunk/src/common/paws/pawsscript.h 2008-12-20 06:43:49 UTC (rev 2717) @@ -57,8 +57,6 @@ csString scriptText; bool NextChar(const char * script, size_t & currIndex, char & c, char & n); - bool IsAlpha(char c); - bool IsNumeric(char c); bool Parse(const char * script); pawsWidget * FindWidget(pawsWidget * widget, const char * name); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2008-12-25 07:34:29
|
Revision: 2770 http://planeshift.svn.sourceforge.net/planeshift/?rev=2770&view=rev Author: mgist Date: 2008-12-25 07:34:26 +0000 (Thu, 25 Dec 2008) Log Message: ----------- - A few more pawsObjectView fixes. Modified Paths: -------------- trunk/src/common/paws/pawsobjectview.cpp trunk/src/common/paws/pawsobjectview.h Modified: trunk/src/common/paws/pawsobjectview.cpp =================================================================== --- trunk/src/common/paws/pawsobjectview.cpp 2008-12-24 19:05:27 UTC (rev 2769) +++ trunk/src/common/paws/pawsobjectview.cpp 2008-12-25 07:34:26 UTC (rev 2770) @@ -45,7 +45,6 @@ cameraMod = csVector3(0,0,0); charApp = NULL; - loadedMap = false; spinMouse = false; mouseControlled = false; doRotate = true; @@ -159,6 +158,7 @@ engine->SyncEngineListsNow(loader); stage = engine->FindSector( sector ); + stage->PrecacheDraw(); CS_ASSERT( stage ); col->Add( stage->QueryObject() ); if ( !stage ) @@ -175,6 +175,7 @@ { lightList->Add(stageLightList->Get(i)); } + meshSector->PrecacheDraw(); meshView = csPtr<iView> (new csView( engine, PawsManager::GetSingleton().GetGraphics3D() )); meshView->GetCamera()->SetSector(meshSector); @@ -189,7 +190,6 @@ view->SetRectangle(screenFrame.xmin, screenFrame.ymin, screenFrame.Width(), screenFrame.Height()); - loadedMap = true; return true; } @@ -222,8 +222,7 @@ if(wrapper) { - iSector* sector = loadedMap ? meshSector : stage; - mesh = engine->CreateMeshWrapper (wrapper, "PaperDoll", stage, csVector3(0,0,0) ); + mesh = engine->CreateMeshWrapper (wrapper, "PaperDoll", meshSector, csVector3(0,0,0) ); } } @@ -328,22 +327,19 @@ view->Draw(); - if ( loadedMap ) - { - og3d = meshView->GetContext(); + og3d = meshView->GetContext(); - meshView->SetContext(PawsManager::GetSingleton().GetGraphics3D()); + meshView->SetContext(PawsManager::GetSingleton().GetGraphics3D()); - meshView->SetRectangle(screenFrame.xmin, - PawsManager::GetSingleton().GetGraphics3D()->GetHeight() - screenFrame.ymax , - screenFrame.Width(), screenFrame.Height()); - meshView->GetPerspectiveCamera()->SetPerspectiveCenter((float)(screenFrame.xmin+(screenFrame.Width() >> 1))/graphics2D->GetWidth(), - 1-(float)(screenFrame.ymin+(screenFrame.Height() >> 1))/graphics2D->GetHeight()); + meshView->SetRectangle(screenFrame.xmin, + PawsManager::GetSingleton().GetGraphics3D()->GetHeight() - screenFrame.ymax , + screenFrame.Width(), screenFrame.Height()); + meshView->GetPerspectiveCamera()->SetPerspectiveCenter((float)(screenFrame.xmin+(screenFrame.Width() >> 1))/graphics2D->GetWidth(), + 1-(float)(screenFrame.ymin+(screenFrame.Height() >> 1))/graphics2D->GetHeight()); - meshView->GetCamera()->GetTransform().SetOrigin(cameraPosition); - meshView->GetCamera()->GetTransform().LookAt(lookingAt, csVector3(0, 1, 0)); - meshView->Draw(); - } + meshView->GetCamera()->GetTransform().SetOrigin(cameraPosition); + meshView->GetCamera()->GetTransform().LookAt(lookingAt, csVector3(0, 1, 0)); + meshView->Draw(); PawsManager::GetSingleton().GetGraphics3D()->BeginDraw( CSDRAW_2DGRAPHICS ); @@ -434,23 +430,20 @@ view->Draw(); - if ( loadedMap ) - { - og3d = meshView->GetContext(); + og3d = meshView->GetContext(); - meshView->SetContext(PawsManager::GetSingleton().GetGraphics3D()); + meshView->SetContext(PawsManager::GetSingleton().GetGraphics3D()); - meshView->SetRectangle(screenFrame.xmin, - PawsManager::GetSingleton().GetGraphics3D()->GetHeight() - screenFrame.ymax , - screenFrame.Width(), screenFrame.Height()); + meshView->SetRectangle(screenFrame.xmin, + PawsManager::GetSingleton().GetGraphics3D()->GetHeight() - screenFrame.ymax , + screenFrame.Width(), screenFrame.Height()); - meshView->GetPerspectiveCamera()->SetPerspectiveCenter((float)(screenFrame.xmin+(screenFrame.Width() >> 1))/graphics2D->GetWidth(), - 1-(float)(screenFrame.ymin+(screenFrame.Height() >> 1))/graphics2D->GetHeight()); + meshView->GetPerspectiveCamera()->SetPerspectiveCenter((float)(screenFrame.xmin+(screenFrame.Width() >> 1))/graphics2D->GetWidth(), + 1-(float)(screenFrame.ymin+(screenFrame.Height() >> 1))/graphics2D->GetHeight()); - meshView->GetCamera()->GetTransform().SetOrigin(camera); - meshView->GetCamera()->GetTransform().LookAt(objectPos - camera + cameraMod, csVector3(0, 1, 0)); - meshView->Draw(); - } + meshView->GetCamera()->GetTransform().SetOrigin(camera); + meshView->GetCamera()->GetTransform().LookAt(objectPos - camera + cameraMod, csVector3(0, 1, 0)); + meshView->Draw(); PawsManager::GetSingleton().GetGraphics3D()->BeginDraw( CSDRAW_2DGRAPHICS ); @@ -511,10 +504,10 @@ void pawsObjectView::Clear() { - iMeshWrapper* mesh = stage->GetMeshes()->FindByName("PaperDoll"); + iMeshWrapper* mesh = meshSector->GetMeshes()->FindByName("PaperDoll"); if(mesh) { - stage->GetMeshes()->Remove(mesh); + meshSector->GetMeshes()->Remove(mesh); col->Remove(mesh->QueryObject()); } } Modified: trunk/src/common/paws/pawsobjectview.h =================================================================== --- trunk/src/common/paws/pawsobjectview.h 2008-12-24 19:05:27 UTC (rev 2769) +++ trunk/src/common/paws/pawsobjectview.h 2008-12-25 07:34:26 UTC (rev 2770) @@ -156,8 +156,6 @@ int rotateTime; float rotateRadians; float camRotate; - - bool loadedMap; unsigned int ID; bool needToFilter; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <Ven...@us...> - 2009-01-20 05:49:00
|
Revision: 2912 http://planeshift.svn.sourceforge.net/planeshift/?rev=2912&view=rev Author: Vengeance2001 Date: 2009-01-20 05:48:56 +0000 (Tue, 20 Jan 2009) Log Message: ----------- Major upgrade to PAWS capabilities here. See history for full description. Modified Paths: -------------- trunk/src/common/paws/pawsframedrawable.cpp trunk/src/common/paws/pawsimagedrawable.cpp trunk/src/common/paws/pawsstyles.cpp trunk/src/common/paws/pawstexturemanager.cpp trunk/src/common/paws/pawswidget.cpp trunk/src/common/paws/pawswidget.h Modified: trunk/src/common/paws/pawsframedrawable.cpp =================================================================== --- trunk/src/common/paws/pawsframedrawable.cpp 2009-01-20 05:47:07 UTC (rev 2911) +++ trunk/src/common/paws/pawsframedrawable.cpp 2009-01-20 05:48:56 UTC (rev 2912) @@ -36,17 +36,8 @@ #include "pawsframedrawable.h" #include "pawsmanager.h" -void pawsFrameDrawable::LoadPiece(csRef<iDocumentNode> node, FRAME_DRAWABLE_PIECE piece) -{ - bool tiled = node->GetAttributeValueAsBool("tile"); - csRect textureRect; - textureRect.SetPos(node->GetAttributeValueAsInt("tx"), node->GetAttributeValueAsInt("ty")); - textureRect.SetSize(node->GetAttributeValueAsInt("tw"), node->GetAttributeValueAsInt("th")); - pieces[piece].drawable.AttachNew(new pawsImageDrawable(imageFileLocation, resourceName, tiled, textureRect, defaultAlphaValue, defaultTransparentColourRed, defaultTransparentColourGreen, defaultTransparentColourBlue)); - pieces[piece].offsetx = node->GetAttributeValueAsInt("offsetx"); - pieces[piece].offsety = node->GetAttributeValueAsInt("offsety"); -} + pawsFrameDrawable::pawsFrameDrawable(csRef<iDocumentNode> node) : scfImplementationType (this) { @@ -60,11 +51,11 @@ imageFileLocation = node->GetAttributeValue("file"); resourceName = node->GetAttributeValue("resource"); - const char * typeStr = node->GetAttributeValue("type"); + csString typeStr(node->GetAttributeValue("type")); type = FDT_FULL; - if (!strcmp(typeStr, "horizontal")) + if (typeStr == "horizontal") type = FDT_HORIZONTAL; - else if (!strcmp(typeStr, "vertical")) + else if (typeStr == "vertical") type = FDT_VERTICAL; csRef<iDocumentNodeIterator> iter = node->GetNodes(); @@ -111,11 +102,22 @@ } -const char * pawsFrameDrawable::GetName() const +const char *pawsFrameDrawable::GetName() const { return resourceName; } +void pawsFrameDrawable::LoadPiece(csRef<iDocumentNode> node, FRAME_DRAWABLE_PIECE piece) +{ + bool tiled = node->GetAttributeValueAsBool("tile"); + csRect textureRect; + textureRect.SetPos(node->GetAttributeValueAsInt("tx"), node->GetAttributeValueAsInt("ty")); + textureRect.SetSize(node->GetAttributeValueAsInt("tw"), node->GetAttributeValueAsInt("th")); + pieces[piece].drawable.AttachNew(new pawsImageDrawable(imageFileLocation, resourceName, tiled, textureRect, defaultAlphaValue, defaultTransparentColourRed, defaultTransparentColourGreen, defaultTransparentColourBlue)); + pieces[piece].offsetx = node->GetAttributeValueAsInt("offsetx"); + pieces[piece].offsety = node->GetAttributeValueAsInt("offsety"); +} + void pawsFrameDrawable::Draw(int x, int y, int alpha) { Draw(x, y, GetWidth(), GetHeight(), alpha); Modified: trunk/src/common/paws/pawsimagedrawable.cpp =================================================================== --- trunk/src/common/paws/pawsimagedrawable.cpp 2009-01-20 05:47:07 UTC (rev 2911) +++ trunk/src/common/paws/pawsimagedrawable.cpp 2009-01-20 05:48:56 UTC (rev 2912) @@ -162,9 +162,9 @@ this->tiled = tiled; textureRectangle = textureRect; defaultAlphaValue = alpha; - transR = defaultTransparentColourRed; - transG = defaultTransparentColourGreen; - transB = defaultTransparentColourBlue; + defaultTransparentColourRed = transR; + defaultTransparentColourGreen = transG; + defaultTransparentColourBlue = transB; PreparePixmap(); } Modified: trunk/src/common/paws/pawsstyles.cpp =================================================================== --- trunk/src/common/paws/pawsstyles.cpp 2009-01-20 05:47:07 UTC (rev 2911) +++ trunk/src/common/paws/pawsstyles.cpp 2009-01-20 05:48:56 UTC (rev 2912) @@ -116,6 +116,9 @@ void pawsStyles::ApplyStyle(const char * style, iDocumentNode * target) { + if (!style) + return; + iDocumentNode * styleXML = styles.Get(style, NULL); if (styleXML != NULL) ApplyStyle(styleXML, target); Modified: trunk/src/common/paws/pawstexturemanager.cpp =================================================================== --- trunk/src/common/paws/pawstexturemanager.cpp 2009-01-20 05:47:07 UTC (rev 2911) +++ trunk/src/common/paws/pawstexturemanager.cpp 2009-01-20 05:48:56 UTC (rev 2912) @@ -57,7 +57,8 @@ } bool pawsTextureManager::LoadImageList( const char* listName ) -{ +{ + printf("Texture Manager parsing %s\n", listName); csRef<iDataBuffer> buff = vfs->ReadFile( listName ); if ( !buff || !buff->GetSize() ) @@ -104,9 +105,11 @@ element = new pawsImageDrawable(node); else if (!strcmp(node->GetValue(), "frame")) element = new pawsFrameDrawable(node); - + else + Error2("Illegal node name in imagelist.xml: %s", node->GetValue() ); + if (element) - elementList.Put(element->GetName(), element); + AddPawsImage(element); } return true; @@ -124,6 +127,7 @@ void pawsTextureManager::AddPawsImage(iPawsImage * element) { + printf("Adding pawsImage called %s\n", element->GetName() ); elementList.Put(element->GetName(), element); } Modified: trunk/src/common/paws/pawswidget.cpp =================================================================== --- trunk/src/common/paws/pawswidget.cpp 2009-01-20 05:47:07 UTC (rev 2911) +++ trunk/src/common/paws/pawswidget.cpp 2009-01-20 05:48:56 UTC (rev 2912) @@ -279,9 +279,14 @@ */ atr = node->GetAttribute("style"); + if (atr) PawsManager::GetSingleton().ApplyStyle(atr->GetValue(), node); + else + PawsManager::GetSingleton().ApplyStyle(FindDefaultWidgetStyle(factory), node); + ReadDefaultWidgetStyles(node); + atr = node->GetAttribute("ignore"); if ( atr ) { @@ -2693,4 +2698,33 @@ Error2("pawsWidget::SetProperty(%s) failed\n", ptr); } +bool pawsWidget::ReadDefaultWidgetStyles( iDocumentNode *node ) +{ + csRef<iDocumentNodeIterator> defaults = node->GetNodes(); + while ( defaults->HasNext() ) + { + csRef<iDocumentNode> child = defaults->Next(); + if (!strcmp(child->GetValue(),"defaultstyle")) + { + defaultWidgetStyles.Put(child->GetAttributeValue("factory"),child->GetAttributeValue("style")); + } + } + return true; +} +const char *pawsWidget::FindDefaultWidgetStyle(const char *factoryName) +{ + static csString style; + + style = defaultWidgetStyles.Get(factoryName,csString("not found")); + if (style == "not found" && parent != NULL) + { + // walk up the chain of parents + return parent->FindDefaultWidgetStyle(factoryName); + } + if (style == "not found") + return NULL; + else + return style; +} + Modified: trunk/src/common/paws/pawswidget.h =================================================================== --- trunk/src/common/paws/pawswidget.h 2009-01-20 05:47:07 UTC (rev 2911) +++ trunk/src/common/paws/pawswidget.h 2009-01-20 05:48:56 UTC (rev 2912) @@ -326,6 +326,10 @@ pawsScript * scriptEvents[PW_SCRIPT_EVENT_COUNT]; + csHash<csString,csString> defaultWidgetStyles; + + bool ReadDefaultWidgetStyles(iDocumentNode *node); + public: pawsWidget(); @@ -1300,6 +1304,8 @@ void RemoveTitle(); + const char *FindDefaultWidgetStyle(const char *factoryName); + protected: /** This will check to see if the mouse is over the resize hot spot. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2009-02-24 14:05:50
|
Revision: 3108 http://planeshift.svn.sourceforge.net/planeshift/?rev=3108&view=rev Author: weltall2 Date: 2009-02-24 14:05:39 +0000 (Tue, 24 Feb 2009) Log Message: ----------- Fixed a wrong method definition, which was wrong with the new paws changes (on buttonreleased) fixing PS#2785 - [pawscrollbar] Keeps scrolling undefinitely even when not clicking Modified Paths: -------------- trunk/src/common/paws/pawscrollbar.cpp trunk/src/common/paws/pawscrollbar.h Modified: trunk/src/common/paws/pawscrollbar.cpp =================================================================== --- trunk/src/common/paws/pawscrollbar.cpp 2009-02-24 11:21:57 UTC (rev 3107) +++ trunk/src/common/paws/pawscrollbar.cpp 2009-02-24 14:05:39 UTC (rev 3108) @@ -511,7 +511,7 @@ return false; } -bool pawsScrollBar::OnButtonReleased( int button, pawsWidget* widget ) +bool pawsScrollBar::OnButtonReleased( int button, int keyModifier, pawsWidget* widget ) { mouseDown = false; return true; Modified: trunk/src/common/paws/pawscrollbar.h =================================================================== --- trunk/src/common/paws/pawscrollbar.h 2009-02-24 11:21:57 UTC (rev 3107) +++ trunk/src/common/paws/pawscrollbar.h 2009-02-24 14:05:39 UTC (rev 3108) @@ -49,7 +49,7 @@ */ virtual bool OnButtonPressed( int button, int keyModifier, pawsWidget* widget ); - virtual bool OnButtonReleased( int button, pawsWidget* widget ); + virtual bool OnButtonReleased( int button, int keyModifier, pawsWidget* widget ); /** Set the max value that this scroll bar should have. * @param value The max value that this bar can have. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ko...@us...> - 2009-03-10 20:05:44
|
Revision: 3171 http://planeshift.svn.sourceforge.net/planeshift/?rev=3171&view=rev Author: kougaro Date: 2009-03-10 20:05:36 +0000 (Tue, 10 Mar 2009) Log Message: ----------- Corrected a problem handling empty string in pawsMessageTextBox::SplitMessage Modified Paths: -------------- trunk/src/common/paws/pawstextbox.cpp trunk/src/common/paws/pawstextbox.h Modified: trunk/src/common/paws/pawstextbox.cpp =================================================================== --- trunk/src/common/paws/pawstextbox.cpp 2009-03-10 13:04:16 UTC (rev 3170) +++ trunk/src/common/paws/pawstextbox.cpp 2009-03-10 20:05:36 UTC (rev 3171) @@ -638,9 +638,9 @@ } -void pawsMessageTextBox::SplitMessage( const char* newText, int colour, int size ) +void pawsMessageTextBox::SplitMessage( csString newText, int colour, int size ) { - if ( newText != NULL ) + if ( !newText.IsEmpty()) { int maxWidth; int maxHeight; Modified: trunk/src/common/paws/pawstextbox.h =================================================================== --- trunk/src/common/paws/pawstextbox.h 2009-03-10 13:04:16 UTC (rev 3170) +++ trunk/src/common/paws/pawstextbox.h 2009-03-10 20:05:36 UTC (rev 3171) @@ -194,7 +194,7 @@ //void AdjustMessages(); - void SplitMessage( const char* text, int colour, int size ); + void SplitMessage( csString newText, int colour, int size ); /// Calculates value of the lineHeight attribute void CalcLineHeight(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ko...@us...> - 2009-03-11 03:49:23
|
Revision: 3175 http://planeshift.svn.sourceforge.net/planeshift/?rev=3175&view=rev Author: kougaro Date: 2009-03-11 03:49:13 +0000 (Wed, 11 Mar 2009) Log Message: ----------- Changed pawsMessageTextBox::SplitMessage again Modified Paths: -------------- trunk/src/common/paws/pawstextbox.cpp trunk/src/common/paws/pawstextbox.h Modified: trunk/src/common/paws/pawstextbox.cpp =================================================================== --- trunk/src/common/paws/pawstextbox.cpp 2009-03-10 20:47:34 UTC (rev 3174) +++ trunk/src/common/paws/pawstextbox.cpp 2009-03-11 03:49:13 UTC (rev 3175) @@ -638,9 +638,9 @@ } -void pawsMessageTextBox::SplitMessage( csString newText, int colour, int size ) +void pawsMessageTextBox::SplitMessage( const char* newText, int colour, int size ) { - if ( !newText.IsEmpty()) + if ( strlen(newText) > 0 ) { int maxWidth; int maxHeight; Modified: trunk/src/common/paws/pawstextbox.h =================================================================== --- trunk/src/common/paws/pawstextbox.h 2009-03-10 20:47:34 UTC (rev 3174) +++ trunk/src/common/paws/pawstextbox.h 2009-03-11 03:49:13 UTC (rev 3175) @@ -194,7 +194,7 @@ //void AdjustMessages(); - void SplitMessage( csString newText, int colour, int size ); + void SplitMessage( const char* newText, int colour, int size ); /// Calculates value of the lineHeight attribute void CalcLineHeight(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <Kha...@us...> - 2009-03-24 01:17:50
|
Revision: 3291 http://planeshift.svn.sourceforge.net/planeshift/?rev=3291&view=rev Author: KhakiLord Date: 2009-03-24 01:17:35 +0000 (Tue, 24 Mar 2009) Log Message: ----------- Removed some pointless string copying. Modified Paths: -------------- trunk/src/common/paws/pawstextbox.cpp trunk/src/common/paws/pawswidget.cpp Modified: trunk/src/common/paws/pawstextbox.cpp =================================================================== --- trunk/src/common/paws/pawstextbox.cpp 2009-03-23 09:10:07 UTC (rev 3290) +++ trunk/src/common/paws/pawstextbox.cpp 2009-03-24 01:17:35 UTC (rev 3291) @@ -668,10 +668,9 @@ /// If it can fit the entire string then return. if ( canDrawLength == (int)strlen( dummy ) ) { - csString temp( dummy ); MessageLine* msgLine = new MessageLine; msgLine->size = size; - msgLine->text = temp; + msgLine->text = dummy; msgLine->colour = colour; adjusted.Push( msgLine ); break; @@ -1205,8 +1204,7 @@ /// If it can fit the entire string then return. if ( canDrawLength == (int)strlen( dummy ) ) { - csString temp( dummy ); - lines.Push( temp ); + lines.Push( dummy ); break; } // We have to push in a new line to the lines bit. Modified: trunk/src/common/paws/pawswidget.cpp =================================================================== --- trunk/src/common/paws/pawswidget.cpp 2009-03-23 09:10:07 UTC (rev 3290) +++ trunk/src/common/paws/pawswidget.cpp 2009-03-24 01:17:35 UTC (rev 3291) @@ -958,8 +958,7 @@ if (!name) return NULL; - csString temp(name); - if ( this->name == temp ) + if ( this->name == name ) return this; for ( size_t z = 0; z < children.GetSize(); z++ ) @@ -973,7 +972,7 @@ if (this->name == "None") return NULL; if (complain) - Error3( "Could not locate widget %s in %s", name, this->name.GetData() ); + Error4( "Could not locate widget %s in %s (%s)", name, this->name.GetData(), this->GetFilename()); return NULL; } @@ -997,9 +996,8 @@ pawsWidget* pawsWidget::FindWidgetXMLBinding( const char* xmlbinding ) { - csString temp(xmlbinding); - if ( (this->xmlbinding == temp) || - (this->xmlbinding.IsEmpty() && name == temp )) + if ( (this->xmlbinding == xmlbinding) || + (this->xmlbinding.IsEmpty() && name == xmlbinding )) return this; for ( size_t z = 0; z < children.GetSize(); z++ ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2009-07-12 08:35:40
|
Revision: 3985 http://planeshift.svn.sourceforge.net/planeshift/?rev=3985&view=rev Author: mgist Date: 2009-07-12 08:35:30 +0000 (Sun, 12 Jul 2009) Log Message: ----------- - Fixed pawsGenericView. Modified Paths: -------------- trunk/src/common/paws/pawsgenericview.cpp trunk/src/common/paws/pawsgenericview.h Modified: trunk/src/common/paws/pawsgenericview.cpp =================================================================== --- trunk/src/common/paws/pawsgenericview.cpp 2009-07-12 03:42:34 UTC (rev 3984) +++ trunk/src/common/paws/pawsgenericview.cpp 2009-07-12 08:35:30 UTC (rev 3985) @@ -40,7 +40,7 @@ char newName[10]; sprintf(newName, "NAME%d\n", idName ); - collection = engine->CreateCollection(newName); + col = engine->CreateCollection(newName); loadedMap = false; } @@ -70,42 +70,41 @@ csRef<iEngine> engine = csQueryRegistry<iEngine > ( PawsManager::GetSingleton().GetObjectRegistry()); csRef<iThreadedLoader> loader = csQueryRegistry<iThreadedLoader> ( PawsManager::GetSingleton().GetObjectRegistry()); csRef<iVFS> VFS = csQueryRegistry<iVFS> ( PawsManager::GetSingleton().GetObjectRegistry()); - - mapName = map; - csString sectorName; + col = engine->CreateCollection(sector); + stage = engine->FindSector( sector ); - // Clear out the collection. - collection->ReleaseAllObjects(); - - // Now load the map into the selected region - VFS->ChDir (map); - VFS->SetSyncDir(VFS->GetCwd()); - engine->SetCacheManager(NULL); - csRef<iThreadReturn> itr = loader->LoadMapFile(map, "world", CS_LOADER_KEEP_WORLD, collection); - itr->Wait(); - if(!itr->WasSuccessful()) + if ( !stage ) { - return false; - } - engine->SyncEngineListsNow(loader); - VFS->ChDir (map); + csRef<iDocumentSystem> xml ( + csQueryRegistry<iDocumentSystem> (PawsManager::GetSingleton().GetObjectRegistry())); - if (sector) - sectorName = sector; - else if (engine->GetCameraPositions()->GetCount() > 0) - sectorName = engine->GetCameraPositions()->Get(0)->GetSector(); - else - return false; + csRef<iDocument> doc = xml->CreateDocument(); + csString filename = map; + filename.Append("/world"); + csRef<iDataBuffer> buf (VFS->ReadFile (filename, false)); + const char* error = doc->Parse(buf); + if(error) + { + printf("pawsObjectView world parse error: %s\n", error); + } - stage = engine->FindSector(sectorName); - CS_ASSERT( stage ); - collection->Add( stage->QueryObject() ); - if ( !stage ) + csRef<iDocumentNode> worldNode = doc->GetRoot()->GetNode("world"); + + // Now load the map into the selected region + csRef<iThreadReturn> itr = loader->LoadMapWait(map, worldNode, CS_LOADER_KEEP_WORLD, col); + if (!itr->WasSuccessful()) return false; + stage = engine->FindSector( sector ); + stage->PrecacheDraw(); + CS_ASSERT( stage ); + col->Add( stage->QueryObject() ); + if ( !stage ) + return false; + } + view = csPtr<iView> (new csView( engine, PawsManager::GetSingleton().GetGraphics3D() )); - if (engine->GetCameraPositions()->GetCount() > 0) { iCameraPosition * cp = engine->GetCameraPositions()->Get(0); @@ -119,35 +118,45 @@ view->GetCamera()->GetTransform().SetOrigin(csVector3(-33,1,-198)); view->GetCamera()->GetTransform().LookAt(csVector3(0,0,4), csVector3(0,1,0)); } - - view->SetRectangle(screenFrame.xmin, screenFrame.ymin, - screenFrame.Width(),screenFrame.Height()); - - loadedMap = true; - return true; + + view->SetRectangle(screenFrame.xmin, screenFrame.ymin, screenFrame.Width(), screenFrame.Height()); + + return true; } void pawsGenericView::Draw() { - graphics2D->SetClipRect( 0,0, graphics2D->GetWidth(), graphics2D->GetHeight()); - // tell CS to render the scene - if (!PawsManager::GetSingleton().GetGraphics3D()->BeginDraw(CSDRAW_3DGRAPHICS)) + if(screenFrame.xmin > graphics2D->GetWidth() || screenFrame.ymin > graphics2D->GetHeight() || + screenFrame.xmax < 0 || screenFrame.ymax < 0) + { + return; + } + + graphics2D->SetClipRect(0, 0, graphics2D->GetWidth(), graphics2D->GetHeight()); + if(!PawsManager::GetSingleton().GetGraphics3D()->BeginDraw(CSDRAW_3DGRAPHICS)) + { return; + } - view->SetRectangle( screenFrame.xmin, + if(!view) + { + return; + } + + iGraphics3D* og3d = view->GetContext(); + + view->SetContext(PawsManager::GetSingleton().GetGraphics3D()); + + view->SetRectangle(screenFrame.xmin, PawsManager::GetSingleton().GetGraphics3D()->GetHeight() - screenFrame.ymax , - screenFrame.Width(), - screenFrame.Height() ); + screenFrame.Width(), screenFrame.Height()); - view->GetPerspectiveCamera()->SetPerspectiveCenter( - screenFrame.xmin + (screenFrame.Width() >> 1), - PawsManager::GetSingleton().GetGraphics3D()->GetHeight() - screenFrame.Height() - - screenFrame.ymin + (screenFrame.Height() >> 1) ); - - view->GetPerspectiveCamera()->SetFOV( view->GetPerspectiveCamera()->GetFOV(), screenFrame.Width() ); - + view->GetPerspectiveCamera()->SetPerspectiveCenter((float)(screenFrame.xmin+(screenFrame.Width() >> 1))/graphics2D->GetWidth(), + 1-(float)(screenFrame.ymin+(screenFrame.Height() >> 1))/graphics2D->GetHeight()); view->Draw(); PawsManager::GetSingleton().GetGraphics3D()->BeginDraw( CSDRAW_2DGRAPHICS ); + + view->SetContext( og3d ); pawsWidget::Draw(); } Modified: trunk/src/common/paws/pawsgenericview.h =================================================================== --- trunk/src/common/paws/pawsgenericview.h 2009-07-12 03:42:34 UTC (rev 3984) +++ trunk/src/common/paws/pawsgenericview.h 2009-07-12 08:35:30 UTC (rev 3985) @@ -69,7 +69,7 @@ csRef<iSector> stage; csRef<iView> view; csRef<iEngine> engine; - csRef<iCollection> collection; + csRef<iCollection> col; csVector3 objectPos; static int idName; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <Ven...@us...> - 2009-07-20 18:54:53
|
Revision: 4087 http://planeshift.svn.sourceforge.net/planeshift/?rev=4087&view=rev Author: Vengeance2001 Date: 2009-07-20 18:54:35 +0000 (Mon, 20 Jul 2009) Log Message: ----------- Slight fixes to Xordan's blind fix. Cuts memory usage IN HALF in psclient! Much faster rendering as well, unless I'm imagining that. Modified Paths: -------------- trunk/src/common/paws/pawsimagedrawable.cpp trunk/src/common/paws/pawsimagedrawable.h trunk/src/common/paws/pawstexturemanager.cpp Modified: trunk/src/common/paws/pawsimagedrawable.cpp =================================================================== --- trunk/src/common/paws/pawsimagedrawable.cpp 2009-07-20 18:38:47 UTC (rev 4086) +++ trunk/src/common/paws/pawsimagedrawable.cpp 2009-07-20 18:54:35 UTC (rev 4087) @@ -54,8 +54,7 @@ { csRef<iVFS> vfs = csQueryRegistry<iVFS>(PawsManager::GetSingleton().GetObjectRegistry()); csRef<iImageIO> imageLoader = csQueryRegistry<iImageIO>(PawsManager::GetSingleton().GetObjectRegistry()); - graphics3D = PawsManager::GetSingleton().GetGraphics3D(); - csRef<iTextureManager> textureManager = graphics3D->GetTextureManager(); + csRef<iTextureManager> textureManager = PawsManager::GetSingleton().GetGraphics3D()->GetTextureManager(); int textureFormat = textureManager->GetTextureFormat(); @@ -200,7 +199,7 @@ alpha = defaultAlphaValue; int w = textureRectangle.Width(); int h = textureRectangle.Height(); - graphics3D->DrawPixmap(textureHandle, x, y, w, h, textureRectangle.xmin, textureRectangle.ymin, w, h, alpha); + PawsManager::GetSingleton().GetGraphics3D()->DrawPixmap(textureHandle, x, y, w, h, textureRectangle.xmin, textureRectangle.ymin, w, h, alpha); } void pawsImageDrawable::Draw(csRect rect, int alpha) @@ -224,7 +223,7 @@ newHeight = height; if (!tiled) - graphics3D->DrawPixmap(textureHandle, x, y, newWidth, newHeight, textureRectangle.xmin, textureRectangle.ymin, w, h, alpha); + PawsManager::GetSingleton().GetGraphics3D()->DrawPixmap(textureHandle, x, y, newWidth, newHeight, textureRectangle.xmin, textureRectangle.ymin, w, h, alpha); else { int left = x; @@ -237,7 +236,7 @@ { int dw = csMin<int>(w, right - x); int dh = csMin<int>(h, bottom - y); - graphics3D->DrawPixmap(textureHandle, x, y, dw, dh, textureRectangle.xmin, textureRectangle.ymin, dw, dh, alpha); + PawsManager::GetSingleton().GetGraphics3D()->DrawPixmap(textureHandle, x, y, dw, dh, textureRectangle.xmin, textureRectangle.ymin, dw, dh, alpha); } } } Modified: trunk/src/common/paws/pawsimagedrawable.h =================================================================== --- trunk/src/common/paws/pawsimagedrawable.h 2009-07-20 18:38:47 UTC (rev 4086) +++ trunk/src/common/paws/pawsimagedrawable.h 2009-07-20 18:54:35 UTC (rev 4087) @@ -54,8 +54,6 @@ */ csRef<iImage> image; - csRef<iGraphics3D> graphics3D; - bool PreparePixmap(); public: Modified: trunk/src/common/paws/pawstexturemanager.cpp =================================================================== --- trunk/src/common/paws/pawstexturemanager.cpp 2009-07-20 18:38:47 UTC (rev 4086) +++ trunk/src/common/paws/pawstexturemanager.cpp 2009-07-20 18:54:35 UTC (rev 4087) @@ -115,6 +115,7 @@ return true; } + void pawsTextureManager::Remove( const char* resource ) { elementList.DeleteAll(resource); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2009-07-30 12:22:15
|
Revision: 4157 http://planeshift.svn.sourceforge.net/planeshift/?rev=4157&view=rev Author: weltall2 Date: 2009-07-30 12:22:03 +0000 (Thu, 30 Jul 2009) Log Message: ----------- added support for image on demand loading Modified Paths: -------------- trunk/src/common/paws/pawsimagedrawable.cpp trunk/src/common/paws/pawsimagedrawable.h trunk/src/common/paws/pawstexturemanager.cpp trunk/src/common/paws/pawstexturemanager.h Modified: trunk/src/common/paws/pawsimagedrawable.cpp =================================================================== --- trunk/src/common/paws/pawsimagedrawable.cpp 2009-07-30 04:47:50 UTC (rev 4156) +++ trunk/src/common/paws/pawsimagedrawable.cpp 2009-07-30 12:22:03 UTC (rev 4157) @@ -184,6 +184,19 @@ PreparePixmap(); } +pawsImageDrawable::pawsImageDrawable(const char * file, const char * resource) + : scfImplementationType (this) +{ + imageFileLocation = file; + resourceName = file; + this->tiled = false; + defaultAlphaValue = 0; + defaultTransparentColourRed = -1; + defaultTransparentColourGreen = -1; + defaultTransparentColourBlue = -1; + PreparePixmap(); +} + pawsImageDrawable::~pawsImageDrawable() { } Modified: trunk/src/common/paws/pawsimagedrawable.h =================================================================== --- trunk/src/common/paws/pawsimagedrawable.h 2009-07-30 04:47:50 UTC (rev 4156) +++ trunk/src/common/paws/pawsimagedrawable.h 2009-07-30 12:22:03 UTC (rev 4157) @@ -59,6 +59,7 @@ public: pawsImageDrawable(csRef<iDocumentNode> node); pawsImageDrawable(const char * file, const char * resource, bool tiled, const csRect & textureRect, int alpha, int transR, int transG, int transB); + pawsImageDrawable(const char * file, const char * resource); virtual ~pawsImageDrawable(); Modified: trunk/src/common/paws/pawstexturemanager.cpp =================================================================== --- trunk/src/common/paws/pawstexturemanager.cpp 2009-07-30 04:47:50 UTC (rev 4156) +++ trunk/src/common/paws/pawstexturemanager.cpp 2009-07-30 12:22:03 UTC (rev 4157) @@ -115,6 +115,17 @@ return true; } +bool pawsTextureManager::AddImage(const char* resource) +{ + iPawsImage *element = NULL; + element = new pawsImageDrawable(resource, resource); + if(element) + { + AddPawsImage(element); + return true; + } + return false; +} void pawsTextureManager::Remove( const char* resource ) { Modified: trunk/src/common/paws/pawstexturemanager.h =================================================================== --- trunk/src/common/paws/pawstexturemanager.h 2009-07-30 04:47:50 UTC (rev 4156) +++ trunk/src/common/paws/pawstexturemanager.h 2009-07-30 12:22:03 UTC (rev 4157) @@ -83,6 +83,7 @@ void Remove( const char* name ); csPtr<iPawsImage> GetPawsImage(const char *name); + bool AddImage(const char* resource); void AddPawsImage(iPawsImage *element); public: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2009-09-01 14:50:21
|
Revision: 4302 http://planeshift.svn.sourceforge.net/planeshift/?rev=4302&view=rev Author: weltall2 Date: 2009-09-01 14:50:14 +0000 (Tue, 01 Sep 2009) Log Message: ----------- fixed issues with ordering Modified Paths: -------------- trunk/src/common/paws/pawslistbox.cpp trunk/src/common/paws/pawslistbox.h Modified: trunk/src/common/paws/pawslistbox.cpp =================================================================== --- trunk/src/common/paws/pawslistbox.cpp 2009-09-01 07:15:47 UTC (rev 4301) +++ trunk/src/common/paws/pawslistbox.cpp 2009-09-01 14:50:14 UTC (rev 4302) @@ -131,7 +131,7 @@ bool pawsListBox::Setup( iDocumentNode* node ) { - csString sortBy, sortOrder; + csString sortOrder; csRef<iDocumentNode> columnsNode = node->GetNode( "columns" ); @@ -197,11 +197,7 @@ if (usingTitleRow) CreateTitleRow(); - sortBy = node->GetAttributeValue("sortBy"); - if (sortBy.GetData() != NULL) - SetSortedColumn(atoi(sortBy.GetData())); - else - SetSortedColumn(0); + SetSortedColumn(node->GetAttributeValueAsInt("sortBy")); csString selectableAttr = node->GetAttributeValue("selectable"); selectable = selectableAttr != "0"; @@ -954,7 +950,7 @@ pawsWidget * title = GetColumnTitle(colNum); if (title == NULL) return; - + pawsWidget * arrow = new pawsWidget(); title->AddChild(arrow); arrow->SetRelativeFrame(title->ScreenFrame().Width()-arrowSize, 0, arrowSize, arrowSize); @@ -977,6 +973,20 @@ } } +void pawsListBox::CheckSortingArrow(int colNum, bool ascOrder) +{ + pawsWidget * title = GetColumnTitle(colNum); + if (title == NULL) + return; + + pawsWidget * arrow = title->FindWidget("SortingArrow"); + if(arrow == NULL) + { + CreateSortingArrow(colNum); + SetSortingArrow(colNum, ascOrder); + } +} + void pawsListBox::DeleteSortingArrow(int colNum) { pawsWidget * title = GetColumnTitle(colNum); @@ -1041,6 +1051,8 @@ delete [] sortedRows; + CheckSortingArrow(sortColNum, ascOrder); //check if the sorting arrow is there if not add it + Select(GetSelectedRow()); //allows select to handle the new position and update gfx correctly CalculateDrawPositions(); Modified: trunk/src/common/paws/pawslistbox.h =================================================================== --- trunk/src/common/paws/pawslistbox.h 2009-09-01 07:15:47 UTC (rev 4301) +++ trunk/src/common/paws/pawslistbox.h 2009-09-01 14:50:14 UTC (rev 4302) @@ -307,6 +307,7 @@ void CreateSortingArrow(int colNum); void SetSortingArrow(int colNum, bool ascOrder); + void CheckSortingArrow(int colNum, bool ascOrder); void DeleteSortingArrow(int colNum); pawsWidget * GetColumnTitle(int colNum); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2009-09-15 17:41:23
|
Revision: 4368 http://planeshift.svn.sourceforge.net/planeshift/?rev=4368&view=rev Author: weltall2 Date: 2009-09-15 17:41:14 +0000 (Tue, 15 Sep 2009) Log Message: ----------- fixed progress bar look & fell Modified Paths: -------------- trunk/src/common/paws/pawsprogressbar.cpp trunk/src/common/paws/pawswidget.cpp trunk/src/common/paws/pawswidget.h Modified: trunk/src/common/paws/pawsprogressbar.cpp =================================================================== --- trunk/src/common/paws/pawsprogressbar.cpp 2009-09-15 17:16:07 UTC (rev 4367) +++ trunk/src/common/paws/pawsprogressbar.cpp 2009-09-15 17:41:14 UTC (rev 4368) @@ -84,10 +84,12 @@ && parent->GetMaxAlpha() != parent->GetMinAlpha()) alpha = (int) (255 - (parent->GetMinAlpha() + (parent->GetMaxAlpha()-parent->GetMinAlpha()) * parent->GetFadeVal() * 0.010)); - pawsWidget::Draw(); + //pawsWidget::Draw(); + DrawBackground(); DrawProgressBar(screenFrame, PawsManager::GetSingleton().GetGraphics3D(), percent, start_r, start_g, start_b, diff_r, diff_g, diff_b, alpha); + DrawMask(); //pawsWidget::Draw(); } Modified: trunk/src/common/paws/pawswidget.cpp =================================================================== --- trunk/src/common/paws/pawswidget.cpp 2009-09-15 17:16:07 UTC (rev 4367) +++ trunk/src/common/paws/pawswidget.cpp 2009-09-15 17:41:14 UTC (rev 4368) @@ -1082,20 +1082,8 @@ } } -void pawsWidget::Draw() +void pawsWidget::DrawMask() { - // Setup our clipping rect so we know where we can draw - ClipToParent(true); - - // If we can't draw anywhere, then don't try. Our children can't be drawn either. - if (clipRect.IsEmpty()) - return; - - DrawBackground(); - - ClipToParent(false); - DrawChildren(); - // Draw the masking image int drawAlpha = -1; if (fade && parent && parent->GetMaxAlpha() >= 0 && bgImage && maskImage) @@ -1110,7 +1098,23 @@ graphics2D->SetClipRect( 0,0, graphics2D->GetWidth(), graphics2D->GetHeight()); maskImage->Draw(screenFrame.xmin, screenFrame.ymin, screenFrame.Width(), screenFrame.Height(), drawAlpha); } +} +void pawsWidget::Draw() +{ + // Setup our clipping rect so we know where we can draw + ClipToParent(true); + + // If we can't draw anywhere, then don't try. Our children can't be drawn either. + if (clipRect.IsEmpty()) + return; + + DrawBackground(); + + ClipToParent(false); + DrawChildren(); + DrawMask(); + if (titleBar) titleBar->Draw(); } Modified: trunk/src/common/paws/pawswidget.h =================================================================== --- trunk/src/common/paws/pawswidget.h 2009-09-15 17:16:07 UTC (rev 4367) +++ trunk/src/common/paws/pawswidget.h 2009-09-15 17:41:14 UTC (rev 4368) @@ -570,6 +570,11 @@ /** Draws all children marked visible. */ virtual void DrawChildren(); + + /** Draws the mask picture. + * @remark Uses focus status to apply appropriate fading. + */ + virtual void DrawMask(); /** Test widget to see if it is resizable. * @return isResizable Flag to set a widget resizable. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2009-09-19 23:47:53
|
Revision: 4450 http://planeshift.svn.sourceforge.net/planeshift/?rev=4450&view=rev Author: mgist Date: 2009-09-19 23:47:41 +0000 (Sat, 19 Sep 2009) Log Message: ----------- - Fixed draw order problem. Modified Paths: -------------- trunk/src/common/paws/pawsmanager.cpp trunk/src/common/paws/pawsmanager.h trunk/src/common/paws/pawswidget.h Modified: trunk/src/common/paws/pawsmanager.cpp =================================================================== --- trunk/src/common/paws/pawsmanager.cpp 2009-09-19 14:11:36 UTC (rev 4449) +++ trunk/src/common/paws/pawsmanager.cpp 2009-09-19 23:47:41 UTC (rev 4450) @@ -641,13 +641,13 @@ graphics3D->BeginDraw(CSDRAW_2DGRAPHICS); graphics3D->DrawPixmap(guiTexture, 0, 0, graphics3D->GetWidth(), graphics3D->GetHeight(), 0, 0, graphics3D->GetWidth(), graphics3D->GetHeight()); - } - // Draw all pawsobjectview next. - for(size_t i=0; i<objectViews.GetSize(); ++i) - { - if(objectViews[i]->IsVisible()) - objectViews[i]->Draw(); + // Draw all pawsobjectview next. + for(size_t i=0; i<objectViews.GetSize(); ++i) + { + if(objectViews[i]->IsVisible()) + objectViews[i]->Draw(); + } } // Now everything else. Modified: trunk/src/common/paws/pawsmanager.h =================================================================== --- trunk/src/common/paws/pawsmanager.h 2009-09-19 14:11:36 UTC (rev 4449) +++ trunk/src/common/paws/pawsmanager.h 2009-09-19 23:47:41 UTC (rev 4450) @@ -113,6 +113,8 @@ void UseR2T(bool r2t) { render2texture = r2t; } + bool UsingR2T() const { return render2texture; } + /// Loads a skin and loades unregistered resources bool LoadSkinDefinition(const char* zip); Modified: trunk/src/common/paws/pawswidget.h =================================================================== --- trunk/src/common/paws/pawswidget.h 2009-09-19 14:11:36 UTC (rev 4449) +++ trunk/src/common/paws/pawswidget.h 2009-09-19 23:47:41 UTC (rev 4450) @@ -590,7 +590,7 @@ */ virtual bool ParentDraw() const { - return parentDraw; + return parentDraw || !PawsManager::GetSingleton().UsingR2T(); } /** Test widget to see if it is resizable. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2009-10-02 09:28:49
|
Revision: 4602 http://planeshift.svn.sourceforge.net/planeshift/?rev=4602&view=rev Author: weltall2 Date: 2009-10-02 09:28:42 +0000 (Fri, 02 Oct 2009) Log Message: ----------- expanded pawscombo api and put the button to open it as default in the constructor Modified Paths: -------------- trunk/src/common/paws/pawscombo.cpp trunk/src/common/paws/pawscombo.h Modified: trunk/src/common/paws/pawscombo.cpp =================================================================== --- trunk/src/common/paws/pawscombo.cpp 2009-10-02 09:04:53 UTC (rev 4601) +++ trunk/src/common/paws/pawscombo.cpp 2009-10-02 09:28:42 UTC (rev 4602) @@ -37,6 +37,11 @@ rows = 0; rowHeight = 0; + + upButton = "Up Arrow"; + downButton = "Down Arrow"; + upButtonPressed = "Up Arrow Highlight"; + downButtonPressed = "Down Arrow Highlight"; } pawsComboBox::~pawsComboBox() Modified: trunk/src/common/paws/pawscombo.h =================================================================== --- trunk/src/common/paws/pawscombo.h 2009-10-02 09:04:53 UTC (rev 4601) +++ trunk/src/common/paws/pawscombo.h 2009-10-02 09:28:42 UTC (rev 4602) @@ -58,6 +58,10 @@ void SetNumRows(int numRows) { rows = numRows; } void SetRowHeight(int height) { rowHeight = height; } + void SetUpButtonImage(const char* name) { upButton = name; } + void SetUpDownButtonImage(const char* name) { downButton = name; } + void SetUpButtonPressedImage(const char* name) { upButtonPressed = name; } + void SetUpDownButtonPressedImage(const char* name) { downButtonPressed = name; } pawsListBoxRow* NewOption(); pawsListBoxRow* NewOption(const csString & text); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2009-10-24 20:02:17
|
Revision: 4685 http://planeshift.svn.sourceforge.net/planeshift/?rev=4685&view=rev Author: weltall2 Date: 2009-10-24 20:02:09 +0000 (Sat, 24 Oct 2009) Log Message: ----------- added resize support to pawsmultilinetextbox Modified Paths: -------------- trunk/src/common/paws/pawstextbox.cpp trunk/src/common/paws/pawstextbox.h Modified: trunk/src/common/paws/pawstextbox.cpp =================================================================== --- trunk/src/common/paws/pawstextbox.cpp 2009-10-24 18:54:52 UTC (rev 4684) +++ trunk/src/common/paws/pawstextbox.cpp 2009-10-24 20:02:09 UTC (rev 4685) @@ -1152,7 +1152,11 @@ return true; } - +void pawsMultiLineTextBox::Resize() +{ + pawsWidget::Resize(); + SetText( text ); +} void pawsMultiLineTextBox::OrganizeText( const char* newText ) { Modified: trunk/src/common/paws/pawstextbox.h =================================================================== --- trunk/src/common/paws/pawstextbox.h 2009-10-24 18:54:52 UTC (rev 4684) +++ trunk/src/common/paws/pawstextbox.h 2009-10-24 20:02:09 UTC (rev 4685) @@ -318,6 +318,7 @@ void SetText( const char* text ); const char* GetText(){return text;} + void Resize(); bool OnScroll( int direction, pawsScrollBar* widget ); virtual bool OnMouseDown( int button, int modifiers, int x, int y ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <Kha...@us...> - 2009-11-23 21:29:15
|
Revision: 4778 http://planeshift.svn.sourceforge.net/planeshift/?rev=4778&view=rev Author: Khakilord Date: 2009-11-23 21:29:05 +0000 (Mon, 23 Nov 2009) Log Message: ----------- Added basic hardware mouse cursor support for Linux and Mac, enabled via PlaneShift.GUI.BasicCursor Modified Paths: -------------- trunk/src/common/paws/pawsmouse.cpp trunk/src/common/paws/pawsmouse.h Modified: trunk/src/common/paws/pawsmouse.cpp =================================================================== --- trunk/src/common/paws/pawsmouse.cpp 2009-11-23 18:57:32 UTC (rev 4777) +++ trunk/src/common/paws/pawsmouse.cpp 2009-11-23 21:29:05 UTC (rev 4778) @@ -27,6 +27,7 @@ #include <igraphic/imageio.h> #include <iutil/vfs.h> #include <csutil/databuf.h> +#include <csutil/cfgmgr.h> #include "pawsmouse.h" #include "pawsmanager.h" @@ -49,6 +50,9 @@ crosshair = false; crosshairImage = PawsManager::GetSingleton().GetTextureManager()->GetPawsImage("Crosshair Mouse Pointer"); useOS = false; + csRef<iConfigManager> cfg = csQueryRegistry<iConfigManager> (PawsManager::GetSingleton().GetObjectRegistry()); + basicCursor = cfg->GetBool("PlaneShift.GUI.BasicCursor"); + } pawsMouse::~pawsMouse() @@ -66,6 +70,12 @@ void pawsMouse::ChangeImage( const char* imageName ) { + if(basicCursor) + { + graphics3D->GetDriver2D()->SetMouseCursor(csmcArrow); + useOS = true; + return; + } cursorImage = PawsManager::GetSingleton().GetTextureManager()->GetPawsImage(imageName); if (!cursorImage.IsValid()) { @@ -77,6 +87,12 @@ void pawsMouse::ChangeImage(csRef<iPawsImage> drawable) { + if(basicCursor) + { + graphics3D->GetDriver2D()->SetMouseCursor(csmcArrow); + useOS = true; + return; + } cursorImage = drawable; SetOSMouse(cursorImage); } @@ -122,14 +138,19 @@ void pawsMouse::Hide(bool h) { hidden = h; -#ifdef CS_PLATFORM_WIN32 - if (h) - graphics3D->GetDriver2D()->SetMouseCursor (csmcNone); - else - if (useOS) + if(useOS) + { + if (h) + graphics3D->GetDriver2D()->SetMouseCursor (csmcNone); + else { - csRGBcolor color(transparentR, transparentG, transparentB); - graphics3D->GetDriver2D()->SetMouseCursor (image, &color); + if(basicCursor) + graphics3D->GetDriver2D()->SetMouseCursor(csmcArrow); + else + { + csRGBcolor color(transparentR, transparentG, transparentB); + graphics3D->GetDriver2D()->SetMouseCursor (image, &color); + } } -#endif + } } Modified: trunk/src/common/paws/pawsmouse.h =================================================================== --- trunk/src/common/paws/pawsmouse.h 2009-11-23 18:57:32 UTC (rev 4777) +++ trunk/src/common/paws/pawsmouse.h 2009-11-23 21:29:05 UTC (rev 4778) @@ -91,6 +91,7 @@ bool hidden, crosshair; bool useOS; + bool basicCursor; int transparentR; int transparentG; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <Kha...@us...> - 2009-11-29 16:23:00
|
Revision: 4828 http://planeshift.svn.sourceforge.net/planeshift/?rev=4828&view=rev Author: Khakilord Date: 2009-11-29 16:22:53 +0000 (Sun, 29 Nov 2009) Log Message: ----------- Made ctrl-click Mac specific. Fixed ctrl-click in main window for Macs. Modified Paths: -------------- trunk/src/common/paws/pawswidget.cpp trunk/src/common/paws/psmousebinds.cpp Modified: trunk/src/common/paws/pawswidget.cpp =================================================================== --- trunk/src/common/paws/pawswidget.cpp 2009-11-29 15:03:29 UTC (rev 4827) +++ trunk/src/common/paws/pawswidget.cpp 2009-11-29 16:22:53 UTC (rev 4828) @@ -1515,7 +1515,11 @@ if ( !PawsManager::GetSingleton().GetDragDropWidget() ) { +#ifdef CS_PLATFORM_MACOSX if (button == csmbLeft && !(modifiers & CSMASK_CTRL)) +#else + if (button == csmbLeft) +#endif { if ( isResizable && showResize ) { @@ -1536,7 +1540,11 @@ return true; } } +#ifdef CS_PLATFORM_MACOSX else if ((button == csmbRight) || (button == csmbLeft && modifiers == CSMASK_CTRL)) +#else + else if ((button == csmbRight) +#endif { if (!contextMenu && !contextMenuFile.IsEmpty()) { Modified: trunk/src/common/paws/psmousebinds.cpp =================================================================== --- trunk/src/common/paws/psmousebinds.cpp 2009-11-29 15:03:29 UTC (rev 4827) +++ trunk/src/common/paws/psmousebinds.cpp 2009-11-29 16:22:53 UTC (rev 4828) @@ -386,7 +386,13 @@ { csMouseEventData event; if (GetBind(action, event)) + { +#ifdef CS_PLATFORM_MACOSX + if(event.Button == csmbRight && event.Modifiers == 0 && (button == csmbLeft && modifiers == CSMASK_CTRL )) + return true; +#endif return ((uint)button == event.Button && (uint)modifiers == event.Modifiers); + } return false; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2009-12-08 12:36:09
|
Revision: 4922 http://planeshift.svn.sourceforge.net/planeshift/?rev=4922&view=rev Author: weltall2 Date: 2009-12-08 12:35:57 +0000 (Tue, 08 Dec 2009) Log Message: ----------- fixed color not being restored correctly. Modified Paths: -------------- trunk/src/common/paws/pawsbutton.cpp trunk/src/common/paws/pawsbutton.h Modified: trunk/src/common/paws/pawsbutton.cpp =================================================================== --- trunk/src/common/paws/pawsbutton.cpp 2009-12-08 11:05:16 UTC (rev 4921) +++ trunk/src/common/paws/pawsbutton.cpp 2009-12-08 12:35:57 UTC (rev 4922) @@ -44,6 +44,7 @@ flashtype = FLASH_REGULAR; keybinding = 0; changeOnMouseOver = false; + originalFontColour = -1; } @@ -139,6 +140,8 @@ buttonLabel = PawsManager::GetSingleton().Translate(buttonLabelNode->GetAttributeValue("text")); } + originalFontColour = GetFontColour(); + return true; } @@ -449,7 +452,7 @@ { flash = 0; if (flashtype == FLASH_HIGHLIGHT) - SetColour(-1); + SetColour(originalFontColour); } if (!toggle) Modified: trunk/src/common/paws/pawsbutton.h =================================================================== --- trunk/src/common/paws/pawsbutton.h 2009-12-08 11:05:16 UTC (rev 4921) +++ trunk/src/common/paws/pawsbutton.h 2009-12-08 12:35:57 UTC (rev 4922) @@ -85,7 +85,7 @@ { flash = 0; if (flashtype == FLASH_HIGHLIGHT) - SetColour(-1); + SetColour(originalFontColour); } flashtype = type; } @@ -139,6 +139,9 @@ int upTextOffsetY; int downTextOffsetX; int downTextOffsetY; + + ///Used when restoring from highlight state + int originalFontColour; /// Whether or not to change image on mouse enter/exit. bool changeOnMouseOver; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2009-12-24 17:57:06
|
Revision: 5046 http://planeshift.svn.sourceforge.net/planeshift/?rev=5046&view=rev Author: weltall2 Date: 2009-12-24 17:56:57 +0000 (Thu, 24 Dec 2009) Log Message: ----------- fixed PS#3803 - Guild permissions levels seem to be mixed up. Modified Paths: -------------- trunk/src/common/paws/pawscombo.h trunk/src/common/paws/pawscombopromptwindow.cpp Modified: trunk/src/common/paws/pawscombo.h =================================================================== --- trunk/src/common/paws/pawscombo.h 2009-12-24 16:17:19 UTC (rev 5045) +++ trunk/src/common/paws/pawscombo.h 2009-12-24 17:56:57 UTC (rev 5046) @@ -21,6 +21,7 @@ #define PAWS_COMBO_BOX_HEADER #include "pawswidget.h" +#include "pawslistbox.h" class pawsButton; class pawsTextBox; @@ -62,6 +63,9 @@ void SetUpDownButtonImage(const char* name) { downButton = name; } void SetUpButtonPressedImage(const char* name) { upButtonPressed = name; } void SetUpDownButtonPressedImage(const char* name) { downButtonPressed = name; } + + ///sets if the list has to be sorted. NOTE: call before adding entries but after postsetup()!! + void SetSorted(bool sorting) { listChoice->SetSortedColumn(sorting? 0 : -1); } pawsListBoxRow* NewOption(); pawsListBoxRow* NewOption(const csString & text); Modified: trunk/src/common/paws/pawscombopromptwindow.cpp =================================================================== --- trunk/src/common/paws/pawscombopromptwindow.cpp 2009-12-24 16:17:19 UTC (rev 5045) +++ trunk/src/common/paws/pawscombopromptwindow.cpp 2009-12-24 17:56:57 UTC (rev 5046) @@ -49,6 +49,7 @@ combo->SetNumRows(6); combo->SetRowHeight(20); combo->PostSetup(); + combo->SetSorted(false); return true; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2009-12-29 16:15:28
|
Revision: 5098 http://planeshift.svn.sourceforge.net/planeshift/?rev=5098&view=rev Author: weltall2 Date: 2009-12-29 16:15:22 +0000 (Tue, 29 Dec 2009) Log Message: ----------- fixed PS#3738 - Word wrapping issue with own name when highlighted patch by Maru Modified Paths: -------------- trunk/src/common/paws/pawstextbox.cpp trunk/src/common/paws/pawstextbox.h Modified: trunk/src/common/paws/pawstextbox.cpp =================================================================== --- trunk/src/common/paws/pawstextbox.cpp 2009-12-29 15:36:55 UTC (rev 5097) +++ trunk/src/common/paws/pawstextbox.cpp 2009-12-29 16:15:22 UTC (rev 5098) @@ -738,64 +738,64 @@ } -void pawsMessageTextBox::SplitMessage( const char* newText, int colour, int size, MessageLine*& msgLine, int& x) +void pawsMessageTextBox::SplitMessage( const char* newText, int colour, int size, MessageLine*& msgLine, int& startPosition) { if(!newText) return; if(strlen(newText) == 0) { - if(x > 0) - return; - msgLine = new MessageLine; - msgLine->size = size; - msgLine->text = newText; - msgLine->colour = colour; - adjusted.Push( msgLine ); + if(startPosition > 0) + { + return; + } + msgLine = new MessageLine; + msgLine->size = size; + msgLine->text = newText; + msgLine->colour = colour; + adjusted.Push( msgLine ); } else if (newText[0] != '\0') - { - - char* dummy = new char[strlen( newText ) + 1]; - char* head = dummy; - - strcpy( dummy, newText ); + { + csString stringBuffer; + stringBuffer.Append(newText); - while ( dummy ) + while ( !stringBuffer.IsEmpty() ) { - int offSet = 20; + static const int INITOFFSET = 20; + int offSet = INITOFFSET; int width = -1; int height = -1; /// See how many characters can be drawn on a single line. - if (x != -1) + if (startPosition != -1) { - GetFont()->GetDimensions(dummy, width, height); - offSet += x; + GetFont()->GetDimensions(stringBuffer.GetData(), width, height); + offSet += startPosition; } - int canDrawLength = GetFont()->GetLength( dummy, screenFrame.Width()-offSet ); + int canDrawLength = GetFont()->GetLength( stringBuffer.GetData(), screenFrame.Width()-offSet ); CS_ASSERT_MSG("iFont->GetLength returned 0. Infinite loop detected.", canDrawLength != 0); /// If it can fit the entire string then return. - if ( canDrawLength == (int)strlen( dummy ) ) + if ( canDrawLength == stringBuffer.Length() ) { if(!msgLine) { msgLine = new MessageLine; msgLine->size = size; - msgLine->text = dummy; + msgLine->text = stringBuffer; msgLine->colour = colour; adjusted.Push( msgLine ); } - if(x != -1) + if(startPosition != -1) { MessageSegment seg; seg.size = size; - seg.text = dummy; + seg.text = stringBuffer; seg.colour = colour; - seg.x = x; + seg.x = startPosition; msgLine->text.Clear(); msgLine->segments.Push(seg); - x += width; + startPosition += width; } break; } @@ -805,44 +805,62 @@ // Find out the nearest white space to break the line. int index = canDrawLength; - while ( index > 0 && dummy[index] != ' ' ) + while ( index > 0 && stringBuffer.GetAt(index) != ' ' ) { index--; } if (index == 0) { - index = canDrawLength; + int firstSpace = stringBuffer.FindFirst(' '); + int widthNeeded = 0; + int heightDoNotCare = 0; + csString firstWord; + if( firstSpace <= 0 ) + { + firstWord.Append(stringBuffer); + } + else + { + firstWord.Append( stringBuffer, firstSpace); + } + + GetFont()->GetDimensions (firstWord.GetData(), widthNeeded, heightDoNotCare); + if(widthNeeded <= screenFrame.Width()-INITOFFSET) + { + index = 0; + } + else + { + index = canDrawLength; + } } - // Index now points to the whitespace line so we can break it here. - csString test; - test.Append( dummy, index ); - dummy+=index; + csString processedString; + processedString.Append( stringBuffer, index ); + stringBuffer.DeleteAt(0,index); if(!msgLine) { msgLine = new MessageLine; msgLine->size = size; - msgLine->text = test; + msgLine->text = processedString; msgLine->colour = colour; adjusted.Push( msgLine ); } - if(x != -1) + if(startPosition != -1) { MessageSegment seg; seg.size = size; - seg.text = test; + seg.text = processedString; seg.colour = colour; - seg.x = x; + seg.x = startPosition; msgLine->segments.Push(seg); - x = 0; + startPosition = 0; } // Next time use a new line! msgLine = NULL; } } - //ChangeFontSize(oldSize); - delete [] head; } } Modified: trunk/src/common/paws/pawstextbox.h =================================================================== --- trunk/src/common/paws/pawstextbox.h 2009-12-29 15:36:55 UTC (rev 5097) +++ trunk/src/common/paws/pawstextbox.h 2009-12-29 16:15:22 UTC (rev 5098) @@ -205,7 +205,7 @@ //void AdjustMessages(); - void SplitMessage( const char* newText, int colour, int size, MessageLine*& msgLine, int& offsetX ); + void SplitMessage( const char* newText, int colour, int size, MessageLine*& msgLine, int& startPosition ); /// Calculates value of the lineHeight attribute void CalcLineHeight(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2010-01-04 08:20:54
|
Revision: 5153 http://planeshift.svn.sourceforge.net/planeshift/?rev=5153&view=rev Author: weltall2 Date: 2010-01-04 08:20:47 +0000 (Mon, 04 Jan 2010) Log Message: ----------- additional improvements by maru to text splitting Modified Paths: -------------- trunk/src/common/paws/pawstextbox.cpp trunk/src/common/paws/pawstextbox.h Modified: trunk/src/common/paws/pawstextbox.cpp =================================================================== --- trunk/src/common/paws/pawstextbox.cpp 2010-01-04 07:42:30 UTC (rev 5152) +++ trunk/src/common/paws/pawstextbox.cpp 2010-01-04 08:20:47 UTC (rev 5153) @@ -741,14 +741,13 @@ void pawsMessageTextBox::SplitMessage(const char* newText, int colour, int size, MessageLine*& msgLine, int& startPosition) { - csString stringBuffer = newText; + csString stringBuffer(newText); if (stringBuffer.IsEmpty()) { return; } - static const int INITOFFSET = 20; while (!stringBuffer.IsEmpty()) { int offSet = INITOFFSET; @@ -768,75 +767,27 @@ { if (!msgLine) { - msgLine = new MessageLine; - msgLine->size = size; - msgLine->text = stringBuffer; - msgLine->colour = colour; - adjusted.Push(msgLine); + WriteMessageLine(msgLine,stringBuffer,colour); } - if (startPosition != -1) { - MessageSegment seg; - seg.size = size; - seg.text = stringBuffer; - seg.colour = colour; - seg.x = startPosition; - msgLine->text.Clear(); - msgLine->segments.Push(seg); + WriteMessageSegment(msgLine,stringBuffer,colour,startPosition); startPosition += width; } break; } - else // We have to push in a new line to the lines bit. + else { - // Find out the nearest white space to break the line. - int breakPoint = stringBuffer.FindLast(' ', canDrawLength - 1); - int spaceAfterBreak = stringBuffer.FindFirst(' ', breakPoint + 1); - csString wordAfterBreak; - int wordLength = spaceAfterBreak - breakPoint; - width = 0; - height = 0; - - if (spaceAfterBreak == -1) - { - stringBuffer.SubString(wordAfterBreak, breakPoint + 1); - } - else - { - stringBuffer.SubString(wordAfterBreak, breakPoint + 1, - wordLength); - } - - GetFont()->GetDimensions(wordAfterBreak.GetData(), width, height); - - csString processedString; - if (width <= screenFrame.Width() - INITOFFSET) - { - processedString.Append(stringBuffer, breakPoint + 1); - stringBuffer.DeleteAt(0, breakPoint + 1); - } - else - { - processedString.Append(stringBuffer, canDrawLength); - stringBuffer.DeleteAt(0, canDrawLength); - } + csString processedString = FindStringThatFits(stringBuffer, canDrawLength); + stringBuffer.DeleteAt(0, processedString.Length()); + if (!msgLine) { - msgLine = new MessageLine; - msgLine->size = size; - msgLine->text = processedString; - msgLine->colour = colour; - adjusted.Push(msgLine); + WriteMessageLine(msgLine,processedString,colour); } if (startPosition != -1) { - MessageSegment seg; - seg.size = size; - seg.text = processedString; - seg.colour = colour; - seg.x = startPosition; - msgLine->segments.Push(seg); + WriteMessageSegment(msgLine,processedString,colour,startPosition); startPosition = 0; } // Next time use a new line! @@ -845,6 +796,57 @@ } } +void pawsMessageTextBox::WriteMessageLine(MessageLine*& msgLine, csString text, int colour) +{ + msgLine = new MessageLine; + msgLine->size = text.Length(); + msgLine->text = text; + msgLine->colour = colour; + adjusted.Push(msgLine); +} + +void pawsMessageTextBox::WriteMessageSegment(MessageLine*& msgLine, csString text, int colour, int startPosition) +{ + MessageSegment seg; + seg.size = text.Length(); + seg.text = text; + seg.colour = colour; + seg.x = startPosition; + msgLine->segments.Push(seg); +} + +csString pawsMessageTextBox::FindStringThatFits(csString stringBuffer, int canDrawLength) +{ + int breakPoint = stringBuffer.FindLast(' ', canDrawLength - 1); + int spaceAfterBreak = stringBuffer.FindFirst(' ', breakPoint + 1); + int wordLength = spaceAfterBreak - breakPoint; + csString wordAfterBreak; + + if (spaceAfterBreak == -1) + { + stringBuffer.SubString(wordAfterBreak, breakPoint + 1); + } + else + { + stringBuffer.SubString(wordAfterBreak, breakPoint + 1, wordLength); + } + + int width = 0; + int height = 0; + GetFont()->GetDimensions(wordAfterBreak.GetData(), width, height); + + csString processedString; + if (width <= screenFrame.Width() - INITOFFSET) + { + processedString.Append(stringBuffer, breakPoint + 1); + } + else + { + processedString.Append(stringBuffer, canDrawLength); + } + return processedString; +} + bool pawsMessageTextBox::OnScroll( int direction, pawsScrollBar* widget ) { topLine = (int)widget->GetCurrentValue(); Modified: trunk/src/common/paws/pawstextbox.h =================================================================== --- trunk/src/common/paws/pawstextbox.h 2010-01-04 07:42:30 UTC (rev 5152) +++ trunk/src/common/paws/pawstextbox.h 2010-01-04 08:20:47 UTC (rev 5153) @@ -218,7 +218,12 @@ int topLine; pawsScrollBar* scrollBar; - + +private: + static const int INITOFFSET = 20; + void WriteMessageLine(MessageLine*& msgLine, csString text, int colour); + void WriteMessageSegment(MessageLine*& msgLine, csString text, int colour, int startPosition); + csString FindStringThatFits(csString stringBuffer, int canDrawLength); }; CREATE_PAWS_FACTORY( pawsMessageTextBox ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jo...@us...> - 2010-01-12 11:07:08
|
Revision: 5247 http://planeshift.svn.sourceforge.net/planeshift/?rev=5247&view=rev Author: jorrit Date: 2010-01-12 11:07:02 +0000 (Tue, 12 Jan 2010) Log Message: ----------- Added a simple api function to change the range of a spinbox dynamically. Modified Paths: -------------- trunk/src/common/paws/pawsspinbox.cpp trunk/src/common/paws/pawsspinbox.h Modified: trunk/src/common/paws/pawsspinbox.cpp =================================================================== --- trunk/src/common/paws/pawsspinbox.cpp 2010-01-12 10:29:33 UTC (rev 5246) +++ trunk/src/common/paws/pawsspinbox.cpp 2010-01-12 11:07:02 UTC (rev 5247) @@ -156,6 +156,12 @@ return true; } +void pawsSpinBox::SetRange (float Min, float Max, float Inc) +{ + min = Min; + max = Max; + inc = Inc; +} bool pawsSpinBox::OnButtonPressed( int mouseButton, int keyModifier, pawsWidget* widget ) { Modified: trunk/src/common/paws/pawsspinbox.h =================================================================== --- trunk/src/common/paws/pawsspinbox.h 2010-01-12 10:29:33 UTC (rev 5246) +++ trunk/src/common/paws/pawsspinbox.h 2010-01-12 11:07:02 UTC (rev 5247) @@ -56,6 +56,7 @@ virtual bool Setup( iDocumentNode* node ); virtual bool ManualSetup( csString& value, float Min, float Max, float Inc, csString& pos ); + virtual void SetRange (float Min, float Max, float Inc); virtual void SetValue(float value); virtual float GetValue(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <Kha...@us...> - 2010-01-28 04:20:02
|
Revision: 5397 http://planeshift.svn.sourceforge.net/planeshift/?rev=5397&view=rev Author: Khakilord Date: 2010-01-28 04:19:55 +0000 (Thu, 28 Jan 2010) Log Message: ----------- Removed a no-op macro for numpad keys. Modified Paths: -------------- trunk/src/common/paws/pawstextbox.cpp trunk/src/common/paws/pawstextwrap.cpp Modified: trunk/src/common/paws/pawstextbox.cpp =================================================================== --- trunk/src/common/paws/pawstextbox.cpp 2010-01-28 03:10:00 UTC (rev 5396) +++ trunk/src/common/paws/pawstextbox.cpp 2010-01-28 04:19:55 UTC (rev 5397) @@ -1176,9 +1176,6 @@ start=0; break; default: - // Don't treat numpad keys specially - CSKEY_PAD_TO_NORMAL(key); - if ( CSKEY_IS_SPECIAL(key)) break; Modified: trunk/src/common/paws/pawstextwrap.cpp =================================================================== --- trunk/src/common/paws/pawstextwrap.cpp 2010-01-28 03:10:00 UTC (rev 5396) +++ trunk/src/common/paws/pawstextwrap.cpp 2010-01-28 04:19:55 UTC (rev 5397) @@ -161,9 +161,6 @@ break; } default: - // Don't treat numpad keys specially - CSKEY_PAD_TO_NORMAL(key); - if ( CSKEY_IS_SPECIAL(key)) break; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <Kha...@us...> - 2010-01-28 11:56:15
|
Revision: 5398 http://planeshift.svn.sourceforge.net/planeshift/?rev=5398&view=rev Author: Khakilord Date: 2010-01-28 11:56:09 +0000 (Thu, 28 Jan 2010) Log Message: ----------- Fixed bug in rewinding code points. Modified Paths: -------------- trunk/src/common/paws/pawstextbox.cpp trunk/src/common/paws/pawstextbox.h Modified: trunk/src/common/paws/pawstextbox.cpp =================================================================== --- trunk/src/common/paws/pawstextbox.cpp 2010-01-28 04:19:55 UTC (rev 5397) +++ trunk/src/common/paws/pawstextbox.cpp 2010-01-28 11:56:09 UTC (rev 5398) @@ -346,7 +346,7 @@ return codePoints; } -const char* pawsTextBox::RewindCodePoints(const char* text, int start, int count) +int pawsTextBox::RewindCodePoints(const char* text, int start, int count) { const char* str = text + start; while(count > 0 && str > text) @@ -354,7 +354,7 @@ str -= csUnicodeTransform::UTF8Rewind((const utf8_char*) str, str - text); count--; } - return str; + return str - text; } const char* pawsTextBox::SkipCodePoints(const char* text, int start, int count) Modified: trunk/src/common/paws/pawstextbox.h =================================================================== --- trunk/src/common/paws/pawstextbox.h 2010-01-28 04:19:55 UTC (rev 5397) +++ trunk/src/common/paws/pawstextbox.h 2010-01-28 11:56:09 UTC (rev 5398) @@ -83,7 +83,7 @@ static int CountCodePoints(const char* text, int start = 0, int len = -1); // Utility function to rewind a UTF-8 string by a certain number of codepoints - static const char* RewindCodePoints(const char* text, int start, int count); + static int RewindCodePoints(const char* text, int start, int count); // Utility function to skip a UTF-8 string by a certain number of codepoints static const char* SkipCodePoints(const char* text, int start, int count); @@ -298,7 +298,7 @@ /// Position of first character that we display int start; - /// The position of the cursor blink + /// The position of the cursor blink (in code units not points) size_t cursorPosition; unsigned int cursorLine; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <Kha...@us...> - 2010-01-28 12:37:57
|
Revision: 5400 http://planeshift.svn.sourceforge.net/planeshift/?rev=5400&view=rev Author: Khakilord Date: 2010-01-28 12:37:48 +0000 (Thu, 28 Jan 2010) Log Message: ----------- Fixed bug in moving cursor to the left. Modified Paths: -------------- trunk/src/common/paws/pawstextbox.cpp trunk/src/common/paws/pawstextbox.h Modified: trunk/src/common/paws/pawstextbox.cpp =================================================================== --- trunk/src/common/paws/pawstextbox.cpp 2010-01-28 12:21:14 UTC (rev 5399) +++ trunk/src/common/paws/pawstextbox.cpp 2010-01-28 12:37:48 UTC (rev 5400) @@ -333,14 +333,13 @@ int pawsTextBox::CountCodePoints(const char* text, int start, int len) { int codePoints = 0; - const utf8_char* strStart = (const utf8_char*) text; - const utf8_char* str = (const utf8_char*) text; + const char* str = text; if(len == -1) len = strlen(text) - start; text += start; while(str < strStart + len) { - str += csUnicodeTransform::UTF8Skip(str, strStart + len - str); + str += csUnicodeTransform::UTF8Skip((const utf8_char*) str, text + len - str); codePoints++; } return codePoints; @@ -357,7 +356,7 @@ return str - text; } -const char* pawsTextBox::SkipCodePoints(const char* text, int start, int count) +int pawsTextBox::SkipCodePoints(const char* text, int start, int count) { const char* str = text + start; int len = strlen(text); @@ -366,7 +365,7 @@ str += csUnicodeTransform::UTF8Skip((const utf8_char*)str, text + len - str); count--; } - return str; + return str - text + start; } //---------------------------------------------------------------------------------------- @@ -1104,7 +1103,7 @@ break; if ( cursorPosition != (size_t)-1 ) { - if ( pawsTextBox::CountCodePoints(text, cursorPosition) - pawsTextBox::CountCodePoints(text, start) < 5 ) + if ( pawsTextBox::CountCodePoints(text, 0, cursorPosition) - pawsTextBox::CountCodePoints(text, 0, start) < 5 ) start = (int)pawsTextBox::RewindCodePoints(text, cursorPosition, 5); if ( start < 0 ) @@ -1130,7 +1129,7 @@ if ( cursorPosition > 0 ) { cursorPosition -= csUnicodeTransform::UTF8Rewind((const utf8_char*)text.GetData() + cursorPosition, cursorPosition); - if ( pawsTextBox::CountCodePoints(text, cursorPosition) - pawsTextBox::CountCodePoints(text, start) < 5 ) + if ( pawsTextBox::CountCodePoints(text, 0, cursorPosition) - pawsTextBox::CountCodePoints(text, 0, start) < 5 ) start = (int)pawsTextBox::RewindCodePoints(text, cursorPosition, 5); if ( start < 0 ) @@ -1154,7 +1153,7 @@ cursorPosition = text.Length(); if ( cursorPosition > 0 ) cursorPosition -= csUnicodeTransform::UTF8Rewind((const utf8_char*)text.GetData() + cursorPosition, cursorPosition); - if ( pawsTextBox::CountCodePoints(text, cursorPosition) - pawsTextBox::CountCodePoints(text, start) < 5 ) + if ( pawsTextBox::CountCodePoints(text, 0, cursorPosition) - pawsTextBox::CountCodePoints(text, 0, start) < 5 ) start = (int)pawsTextBox::RewindCodePoints(text, cursorPosition, 5); if ( start < 0 ) start = 0; Modified: trunk/src/common/paws/pawstextbox.h =================================================================== --- trunk/src/common/paws/pawstextbox.h 2010-01-28 12:21:14 UTC (rev 5399) +++ trunk/src/common/paws/pawstextbox.h 2010-01-28 12:37:48 UTC (rev 5400) @@ -86,7 +86,7 @@ static int RewindCodePoints(const char* text, int start, int count); // Utility function to skip a UTF-8 string by a certain number of codepoints - static const char* SkipCodePoints(const char* text, int start, int count); + static int SkipCodePoints(const char* text, int start, int count); protected: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |