Example #1
0
void CreaTexts()
{

 //Step1
 hwT0 = addLabel("Copy/paste script source here,  or open a js/html file", 10,50,WINW3,30);
 hwSrcEdit = addMLEdit(ID_SRCEDIT,10, 80, WINW2, 450);
 hwTp0 = addLabel("", 400,50,100,30);

 //Step2
 hwT1 = addLabel("Set options for javascript minifier:", 10,50,WINW3,30);
 hwM0 = addCheckBox("remove redundant spaces and tabs", 10,90,WINW3,30, TRUE);
 hwM1 = addCheckBox("reduce linebreaks", 10,120,WINW3,30, TRUE);
 hwM2 = addCheckBox("remove comments", 10,150,WINW3,30, TRUE);
 hwM3 = addCheckBox("some other", 10,180,WINW3,30, TRUE);
 BtMinfy  = addButton(ID_MINFY, "Minify", 10,220,100,30);

 //Step3
 hwT2 = addLabel("Minified result:", 10,50,WINW3,30);
 hwMResEdit = addMLEdit(ID_MRESEDIT,10, 80, WINW2, 450);
 hwTp1 = addLabel("", 400,50,100,30);

 //Step4
 hwT3 = addLabel("Set options for javascript obfuscator:", 10,50,WINW3,30);
 hwO0 = addCheckBox("functions", 10,90,WINW3,30, TRUE);
 hwO1 = addCheckBox("variables", 10,120,WINW3,30, TRUE);
 hwTa = addLabel("minimal length of keywords", 56,164,WINW3,30);
 hwO2 = addCheckBox("also in html", 10,200,WINW3,30, FALSE);
 hwO3 = addCheckBox("all keywords", 10,230,WINW3,30, FALSE);
 hwOLen = addInputField("3", 10,160,40, FontSize+8  );
 BtPrepKw  = addButton(ID_PREOKW, "Prepare keywords", 10,270,180,30);
 
 //Step5
 hwT4 = addLabel("Clear/edit the \"new\" generated name, then obfuscate.", 10,50,WINW3,30);
 hwTb = addLabel("", 400,50,WINW3,100);
 hwKwGrid = addGrid(ID_KWDGRID,10, 100, WINW2, 450);
 CreateColumn(hwKwGrid,0,"new", 50);
 CreateColumn(hwKwGrid,1,"keyword", 220);
 CreateColumn(hwKwGrid,2,"cnt", 60);
 CreateColumn(hwKwGrid,3,"description", 430);
 BtObfsc  = addButton(ID_OBFSC, "Obfuscate", 600,50,140,30);
 
 //Step6
 hwT5 = addLabel("Obfuscated result:", 10,50,WINW3,30);
 hwOResEdit = addMLEdit(ID_ORESEDIT,10, 80, WINW2, 450);
 hwTp2 = addLabel("", 400,50,100,30);
  
 PostMessage(hwnd, WM_NOTIFY, 0, 0);        // display and hide
}
void HoIModDesigner::CreateColumn( QTreeWidgetItem* parent, const HoI3Token& token ) const
{
	QList<HoI3Token>::ConstIterator iter;
	for( iter = token.m_Tokens.constBegin(); iter != token.m_Tokens.constEnd(); iter++ )
	{
		QStringList newData;
		newData << iter->m_Name << iter->m_Value;
		QTreeWidgetItem *newItem = new QTreeWidgetItem( parent, newData );
		CreateColumn( newItem, (*iter) );
	}
}
Example #3
0
void idCVarSystemLocal::ListByFlags( const idCmdArgs &args, cvarFlags_t flags ) {
	int i, argNum;
	idStr match, indent, string;
	const idInternalCVar *cvar;
	idList<const idInternalCVar *>cvarList;

	enum {
		SHOW_VALUE,
		SHOW_DESCRIPTION,
		SHOW_TYPE,
		SHOW_FLAGS
	} show;

	argNum = 1;
	show = SHOW_VALUE;

	if ( idStr::Icmp( args.Argv( argNum ), "-" ) == 0 || idStr::Icmp( args.Argv( argNum ), "/" ) == 0 ) {
		if ( idStr::Icmp( args.Argv( argNum + 1 ), "help" ) == 0 || idStr::Icmp( args.Argv( argNum + 1 ), "?" ) == 0 ) {
			argNum = 3;
			show = SHOW_DESCRIPTION;
		} else if ( idStr::Icmp( args.Argv( argNum + 1 ), "type" ) == 0 || idStr::Icmp( args.Argv( argNum + 1 ), "range" ) == 0 ) {
			argNum = 3;
			show = SHOW_TYPE;
		} else if ( idStr::Icmp( args.Argv( argNum + 1 ), "flags" ) == 0 ) {
			argNum = 3;
			show = SHOW_FLAGS;
		}
	}

	if ( args.Argc() > argNum ) {
		match = args.Args( argNum, -1 );
		match.Replace( " ", "" );
	} else {
		match = "";
	}

	for ( i = 0; i < localCVarSystem.cvars.Num(); i++ ) {
		cvar = localCVarSystem.cvars[i];

		if ( !( cvar->GetFlags() & flags ) ) {
			continue;
		}

		if ( match.Length() && !cvar->nameString.Filter( match, false ) ) {
			continue;
		}

		cvarList.Append( cvar );
	}

	cvarList.Sort();

	switch( show ) {
		case SHOW_VALUE: {
			for ( i = 0; i < cvarList.Num(); i++ ) {
				cvar = cvarList[i];
				common->Printf( FORMAT_STRING S_COLOR_WHITE "\"%s\"\n", cvar->nameString.c_str(), cvar->valueString.c_str() );
			}
			break;
		}
		case SHOW_DESCRIPTION: {
			indent.Fill( ' ', NUM_NAME_CHARS );
			indent.Insert( "\n", 0 );

			for ( i = 0; i < cvarList.Num(); i++ ) {
				cvar = cvarList[i];
				common->Printf( FORMAT_STRING S_COLOR_WHITE "%s\n", cvar->nameString.c_str(), CreateColumn( cvar->GetDescription(), NUM_DESCRIPTION_CHARS, indent, string ) );
			}
			break;
		}
		case SHOW_TYPE: {
			for ( i = 0; i < cvarList.Num(); i++ ) {
				cvar = cvarList[i];
				if ( cvar->GetFlags() & CVAR_BOOL ) {
					common->Printf( FORMAT_STRING S_COLOR_CYAN "bool\n", cvar->GetName() );
				} else if ( cvar->GetFlags() & CVAR_INTEGER ) {
					if ( cvar->GetMinValue() < cvar->GetMaxValue() ) {
						common->Printf( FORMAT_STRING S_COLOR_GREEN "int " S_COLOR_WHITE "[%d, %d]\n", cvar->GetName(), (int) cvar->GetMinValue(), (int) cvar->GetMaxValue() );
					} else {
						common->Printf( FORMAT_STRING S_COLOR_GREEN "int\n", cvar->GetName() );
					}
				} else if ( cvar->GetFlags() & CVAR_FLOAT ) {
					if ( cvar->GetMinValue() < cvar->GetMaxValue() ) {
						common->Printf( FORMAT_STRING S_COLOR_RED "float " S_COLOR_WHITE "[%s, %s]\n", cvar->GetName(), idStr( cvar->GetMinValue() ).c_str(), idStr( cvar->GetMaxValue() ).c_str() );
					} else {
						common->Printf( FORMAT_STRING S_COLOR_RED "float\n", cvar->GetName() );
					}
				} else if ( cvar->GetValueStrings() ) {
					common->Printf( FORMAT_STRING S_COLOR_WHITE "string " S_COLOR_WHITE "[", cvar->GetName() );
					for ( int j = 0; cvar->GetValueStrings()[j] != NULL; j++ ) {
						if ( j ) {
							common->Printf( S_COLOR_WHITE ", %s", cvar->GetValueStrings()[j] );
						} else {
							common->Printf( S_COLOR_WHITE "%s", cvar->GetValueStrings()[j] );
						}
					}
					common->Printf( S_COLOR_WHITE "]\n" );
				} else {
					common->Printf( FORMAT_STRING S_COLOR_WHITE "string\n", cvar->GetName() );
				}
			}
			break;
		}
		case SHOW_FLAGS: {
			for ( i = 0; i < cvarList.Num(); i++ ) {
				cvar = cvarList[i];
				common->Printf( FORMAT_STRING, cvar->GetName() );
				string = "";
				if ( cvar->GetFlags() & CVAR_BOOL ) {
					string += S_COLOR_CYAN "B ";
				} else if ( cvar->GetFlags() & CVAR_INTEGER ) {
					string += S_COLOR_GREEN "I ";
				} else if ( cvar->GetFlags() & CVAR_FLOAT ) {
					string += S_COLOR_RED "F ";
				} else {
					string += S_COLOR_WHITE "S ";
				}
				if ( cvar->GetFlags() & CVAR_SYSTEM ) {
					string += S_COLOR_WHITE "SYS  ";
				} else if ( cvar->GetFlags() & CVAR_RENDERER ) {
					string += S_COLOR_WHITE "RNDR ";
				} else if ( cvar->GetFlags() & CVAR_SOUND ) {
					string += S_COLOR_WHITE "SND  ";
				} else if ( cvar->GetFlags() & CVAR_GUI ) {
					string += S_COLOR_WHITE "GUI  ";
				} else if ( cvar->GetFlags() & CVAR_GAME ) {
					string += S_COLOR_WHITE "GAME ";
				} else if ( cvar->GetFlags() & CVAR_TOOL ) {
					string += S_COLOR_WHITE "TOOL ";
				} else {
					string += S_COLOR_WHITE "     ";
				}
				string += ( cvar->GetFlags() & CVAR_USERINFO ) ?	"UI "	: "   ";
				string += ( cvar->GetFlags() & CVAR_SERVERINFO ) ?	"SI "	: "   ";
				string += ( cvar->GetFlags() & CVAR_STATIC ) ?		"ST "	: "   ";
				string += ( cvar->GetFlags() & CVAR_CHEAT ) ?		"CH "	: "   ";
				string += ( cvar->GetFlags() & CVAR_INIT ) ?		"IN "	: "   ";
				string += ( cvar->GetFlags() & CVAR_ROM ) ?			"RO "	: "   ";
				string += ( cvar->GetFlags() & CVAR_ARCHIVE ) ?		"AR "	: "   ";
				string += ( cvar->GetFlags() & CVAR_MODIFIED ) ?	"MO "	: "   ";
				string += "\n";
				common->Printf( string );
			}
			break;
		}
	}

	common->Printf( "\n%i cvars listed\n\n", cvarList.Num() );
	common->Printf(	"listCvar [search string]          = list cvar values\n"
				"listCvar -help [search string]    = list cvar descriptions\n"
				"listCvar -type [search string]    = list cvar types\n"
				"listCvar -flags [search string]   = list cvar flags\n" );
}
Example #4
0
//---------------------------- PUBLIC           -----------------------------//
wxUpgradeUI::wxUpgradeUI(wxWindow* parent, const GamePtr &game)
: wxBaseUI<wxPanel>(parent, sMinSizeUpgrade)
{
	SetMinSize(sMinSizeUpgrade);
	SetBackgroundColour(SKIN.Element(shBackground));

	Controller::get().AddReceiver(shEventCityUpgrade, 
		&wxUpgradeUI::OnCityUpgrade, this);
	Controller::get().AddReceiver(shEventPlayerReorder, 
		&wxUpgradeUI::OnPlayerReorder, this);
	Controller::get().AddReceiver(shEventTabUpgrades,
		&wxUpgradeUI::OnTabUpgrades, this);

	wxInt32 players = game->numPlayers();

	mTrade.resize(players, 0);
	mPolitics.resize(players, 0);
	mScience.resize(players, 0);

	// Create all of the bitmap images to hold everything.
	wxBoxSizer* sizer = new wxBoxSizer(wxHORIZONTAL);

	// Create the four vertical column sizers for player colors and the three
	// types of upgrades.
	wxBoxSizer* color = new wxBoxSizer(wxVERTICAL);
	wxBoxSizer* vert1 = new wxBoxSizer(wxVERTICAL);
	wxBoxSizer* vert2 = new wxBoxSizer(wxVERTICAL);
	wxBoxSizer* vert3 = new wxBoxSizer(wxVERTICAL);

	wxInt32 spacerY = 140;
	spacerY -= (players * 20);
	spacerY /= (players + 1);

	float ratio = static_cast<float>(players) / 6.0f;

	spacerY *= static_cast<wxInt32>(ratio);
	wxInt32 spacerX = static_cast<wxInt32>(20 * ratio);

	// Color column.
	color->AddStretchSpacer(30);
	color->AddStretchSpacer(spacerY);

	sBitmaps.resize(players);

	for(wxInt32 i = 0; i < players; ++i)
	{
		sBitmaps[i] = new wxPlayerCenteredBitmap(this,
			sDefaultPlayerSize, sDefaultPlayerSize, 
			game->playerGame(i).color());
		color->Add(sBitmaps[i], 20, wxEXPAND);
		color->AddStretchSpacer(spacerY);
	}
	
	// The three card images.
	wxImageCenteredBitmap* trade = new wxImageCenteredBitmap(this, 
		wxSize(20, 30),	wxSize(16, 22), shCards, shTradeCard);
	wxImageCenteredBitmap* politics = new wxImageCenteredBitmap(this, 
		wxSize(20, 30),	wxSize(16, 22), shCards, shPoliticsCard);
	wxImageCenteredBitmap* science = new wxImageCenteredBitmap(this, 
		wxSize(20, 30),	wxSize(16, 22), shCards, shScienceCard);

	// Columns.
	vert1->Add(trade, 30, wxEXPAND);
	vert2->Add(politics, 30, wxEXPAND);
	vert3->Add(science, 30, wxEXPAND);
	
	CreateColumn(this, shTradeLevel, game, vert1, spacerY, mTrade);
	CreateColumn(this, shPoliticsLevel, game, vert2, spacerY, mPolitics);
	CreateColumn(this, shScienceLevel, game, vert3, spacerY, mScience);

	sizer->Add(color, 25, wxEXPAND);
	sizer->AddStretchSpacer(spacerX);
	sizer->Add(vert1, 20, wxEXPAND);
	sizer->AddStretchSpacer(spacerX);
	sizer->Add(vert2, 20, wxEXPAND);
	sizer->AddStretchSpacer(spacerX);
	sizer->Add(vert3, 20, wxEXPAND);
	sizer->AddStretchSpacer(spacerX);
	
	SetSizer(sizer);
}
void FPropertyTable::AddColumn( const TSharedRef< FPropertyPath >& PropertyPath )
{
	AddColumn( CreateColumn( PropertyPath ) );
}
void FPropertyTable::AddColumn( const TWeakObjectPtr< UProperty >& Property )
{
	AddColumn( CreateColumn( Property ) );
}
void FPropertyTable::UpdateColumns()
{
	if( Orientation == EPropertyTableOrientation::AlignPropertiesInColumns)
	{
		TMultiMap< UProperty*, TSharedRef< IPropertyTableColumn > > ColumnsMap;
		for (int ColumnIdx = 0; ColumnIdx < Columns.Num(); ++ColumnIdx)
		{
			TSharedRef< IDataSource > DataSource = Columns[ColumnIdx]->GetDataSource();
			TSharedPtr< FPropertyPath > PropertyPath = DataSource->AsPropertyPath();
			if( PropertyPath.IsValid() && PropertyPath->GetNumProperties() > 0 )
			{
				ColumnsMap.Add(PropertyPath->GetRootProperty().Property.Get(), Columns[ColumnIdx]);
			}
		}

		Columns.Empty();

		if ( ShowRowHeader )
		{
			TSharedRef< IPropertyTableColumn > NewColumn = MakeShareable( new FPropertyTableRowHeaderColumn( SharedThis( this ) ) );
			Columns.Add( NewColumn );
		}

		if ( ShowObjectName )
		{
			TSharedRef< IPropertyTableColumn > NewColumn = MakeShareable( new FPropertyTableObjectNameColumn( SharedThis( this ) ) );
			NewColumn->SetFrozen( true );
			Columns.Add( NewColumn );
		}

		TArray< TWeakObjectPtr< UStruct > > UniqueTypes;
		TArray< int > TypeCounter;

		for( auto ObjectIter = SourceObjects.CreateConstIterator(); ObjectIter; ++ObjectIter )
		{
			auto Object = *ObjectIter;

			if( !Object.IsValid() )
			{
				continue;
			}

			const TSharedRef< FObjectPropertyNode > RootObjectNode = GetObjectPropertyNode( Object );

			TWeakObjectPtr< UStruct > Type;
			if ( RootPath->GetNumProperties() == 0 )
			{
				Type = RootObjectNode->GetObjectBaseClass();
			}
			else
			{
				const TSharedPtr< FPropertyNode > PropertyNode = FPropertyNode::FindPropertyNodeByPath( RootPath, RootObjectNode );

				if ( !PropertyNode.IsValid() )
				{
					continue;
				}

				const TWeakObjectPtr< UProperty > Property = PropertyNode->GetProperty();

				if ( !Property.IsValid() || !Property->IsA( UStructProperty::StaticClass() ) )
				{
					continue;
				}

				UStructProperty* StructProperty = Cast< UStructProperty >( Property.Get() );
				Type = StructProperty->Struct;
			}

			if ( !Type.IsValid() )
			{
				continue;
			}

			int FoundIndex = -1;
			if ( UniqueTypes.Find( Type, /*OUT*/FoundIndex ) )
			{
				TypeCounter[ FoundIndex ] = TypeCounter[ FoundIndex ] + 1;
				continue;
			}

			UniqueTypes.Add( Type );
			TypeCounter.Add( 1 );
		}

		if ( UniqueTypes.Num() > 0 )
		{
			int HighestCountIndex = 0;
			int HighestCount = 0;
			for (int Index = 0; Index < TypeCounter.Num(); Index++)
			{
				if ( TypeCounter[Index] > HighestCount )
				{
					HighestCountIndex = Index;
					HighestCount = TypeCounter[Index];
				}
			}

			TWeakObjectPtr< UStruct > PrimaryType = UniqueTypes[ HighestCountIndex ];

			for (TFieldIterator<UProperty> PropertyIter( PrimaryType.Get(), EFieldIteratorFlags::IncludeSuper); PropertyIter; ++PropertyIter)
			{
				TWeakObjectPtr< UProperty > Property = *PropertyIter;

				if ( PropertyIter->HasAnyPropertyFlags(CPF_AssetRegistrySearchable) )
				{
					TArray< TSharedRef< IPropertyTableColumn > > MapResults;

					ColumnsMap.MultiFind(Property.Get(), MapResults);
					if(MapResults.Num() > 0)
					{
						for (int MapIdx = 0; MapIdx < MapResults.Num(); ++MapIdx)
						{
							Columns.Add(MapResults[MapIdx]);
						}
					}
					else
					{
						TSharedRef< IPropertyTableColumn > NewColumn = CreateColumn( Property );
						Columns.Add( NewColumn );
					}
				}
			}
		}
	}
	else
	{
		Columns.Empty();

		if( SourceObjects.Num() > 0 )
		{
			UClass* ObjectClass = SourceObjects[0]->GetClass();
			TSharedRef< IPropertyTableColumn > HeadingColumn = MakeShareable( new FPropertyTablePropertyNameColumn( SharedThis( this ) ) );

			Columns.Add( HeadingColumn );

			for( auto ObjectIter = SourceObjects.CreateConstIterator(); ObjectIter; ++ObjectIter )
			{
				auto Object = *ObjectIter;

				if( Object.IsValid() )
				{
					const TSharedRef< FObjectPropertyNode > ObjectNode = GetObjectPropertyNode( Object );
					const TSharedPtr< FPropertyNode > PropertyNode = FPropertyNode::FindPropertyNodeByPath( RootPath, ObjectNode );

					UProperty* Property = PropertyNode->GetProperty();
					if ( Property != NULL && Property->IsA( UArrayProperty::StaticClass() ) )
					{
						for (int ChildIdx = 0; ChildIdx < PropertyNode->GetNumChildNodes(); ChildIdx++)
						{
							TSharedPtr< FPropertyNode > ChildNode = PropertyNode->GetChildNode( ChildIdx );
							FPropertyInfo Extension;
							Extension.Property = ChildNode->GetProperty();
							Extension.ArrayIndex = ChildNode->GetArrayIndex();
							TSharedRef< FPropertyPath > Path = FPropertyPath::CreateEmpty()->ExtendPath( Extension );
							TSharedRef< IPropertyTableColumn > NewColumn = MakeShareable( new FPropertyTableColumn( SharedThis( this ), Object, Path ) );
							Columns.Add( NewColumn );
						}
					}
					else if (  Property != NULL )
					{
						TSharedRef< IPropertyTableColumn > NewColumn = MakeShareable( new FPropertyTableColumn( SharedThis( this ), Object ) );
						Columns.Add( NewColumn );
					}
				}

			}
		}
	}

	ColumnsChanged.Broadcast();
}
void FPropertyTable::AddColumn( const TWeakObjectPtr< UObject >& Object )
{
	AddColumn( CreateColumn( Object ) );
}