Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Extra libraries, Code snippets, applications etc. » U++ users applications in progress and useful code snippets, including reference examples! » array vs. array's items.id sorting/searching
Re: array vs. array's items.id sorting/searching [message #26688 is a reply to message #26680] Wed, 19 May 2010 13:12 Go to previous messageGo to previous message
fudadmin is currently offline  fudadmin
Messages: 1321
Registered: November 2005
Location: Kaunas, Lithuania
Ultimate Contributor
Administrator
For my own GridCtrl class I have written a code that copies/pastes only unique column values (useful for databases...). Something like this:
//Grid1.h
VectorMap<String, int>& Unique();  //Value might be better?  

//Grid1.cpp
VectorMap<String, int>& Grid1::Unique()
{
	static  VectorMap<String, int> x;
	return x;
}

void Grid1::PumpInCol()  
{
	int col=GetSelCol();

	Unique().Clear();
	for (int r=0; r< GetRowCount(); r++)
		Unique().GetAdd(AsString(Get(r,col)), 0)++;
	
	SelectCells(col,col,-1,-1);
}

void Grid1::PumpOutCol()
{
	Clear();

	Vector<int> order = UPP::GetSortOrder( Unique().GetKeys() );
	for(int i = 0; i < order.GetCount(); i++)
	{
		Add();
		String mylist = Unique().GetKey(order[i]);
//		SetLast(0, i+1);		
		SetLast(1,  atoi(mylist));
//		SetLast(2, Unique()[order[i]]); // 0 everywhere
//		SetLast(1, AsString(Unique()[i]));
		SetLast(2, mylist.GetCount());	
}


void Grid1::PumpOutColM()
{
	for(int i = 0; i < Unique().GetCount(); i++)
	{
		Add();
		SetLast(0, i+1);		
		SetLast(1, Unique().GetKey(i));
		SetLast(2, Unique()[i]);		
	}
	
}




Maybe it would give you some ideas.
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Just one instance of application running (SingleApp)
Next Topic: Fix for examples/CodeMetric
Goto Forum:
  


Current Time: Mon Apr 28 19:30:22 CEST 2025

Total time taken to generate the page: 0.03942 seconds