#include "surfacedialog.h"
+#include <gtk/gtk.h>
+
#include "debugging/debugging.h"
#include "warnings.h"
#include "iundo.h"
#include "iselection.h"
-#include <gtk/gtk.h>
#include <gdk/gdkkeysyms.h>
#include "signal/isignal.h"
float& m_f;
public:
GtkSpinButton* m_spin;
-GtkEntry* m_entry;
-Increment( float& f ) : m_f( f ), m_spin( 0 ), m_entry( 0 ){
+ui::Entry m_entry;
+Increment( float& f ) : m_f( f ), m_spin( 0 ), m_entry( ui::null ){
}
void cancel(){
entry_set_float( m_entry, m_f );
GtkCheckButton* m_contentFlags[32];
NonModalEntry m_valueEntry;
-GtkEntry* m_valueEntryWidget;
+ui::Entry m_valueEntryWidget{ui::null};
public:
WindowPositionTracker m_positionTracker;
WindowPositionTrackerImportStringCaller m_importPosition;
Increment m_hscaleIncrement;
Increment m_vscaleIncrement;
Increment m_rotateIncrement;
-GtkEntry* m_texture;
+ui::Entry m_texture{ui::null};
SurfaceInspector() :
m_textureEntry( ApplyShaderCaller( *this ), UpdateCaller( *this ) ),
void destroyWindow(){
Destroy();
}
-bool visible() const {
- return gtk_widget_get_visible( GetWidget() );
+bool visible() {
+ return GetWidget().visible();
}
void queueDraw(){
if ( visible() ) {
{
// replaced by only the vbox:
- ui::Widget vbox = ui::VBox( FALSE, 5 );
- gtk_widget_show( vbox );
- gtk_container_add( GTK_CONTAINER( window ), GTK_WIDGET( vbox ) );
+ auto vbox = ui::VBox( FALSE, 5 );
+ vbox.show();
+ window.add(vbox);
gtk_container_set_border_width( GTK_CONTAINER( vbox ), 5 );
{
- ui::Widget hbox2 = ui::HBox( FALSE, 5 );
- gtk_widget_show( hbox2 );
- gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( hbox2 ), FALSE, FALSE, 0 );
+ auto hbox2 = ui::HBox( FALSE, 5 );
+ hbox2.show();
+ vbox.pack_start( hbox2, FALSE, FALSE, 0 );
{
ui::Widget label = ui::Label( "Texture" );
- gtk_widget_show( label );
- gtk_box_pack_start( GTK_BOX( hbox2 ), label, FALSE, TRUE, 0 );
+ label.show();
+ hbox2.pack_start( label, FALSE, TRUE, 0 );
}
{
- GtkEntry* entry = ui::Entry();
- gtk_widget_show( GTK_WIDGET( entry ) );
- gtk_box_pack_start( GTK_BOX( hbox2 ), GTK_WIDGET( entry ), TRUE, TRUE, 0 );
+ auto entry = ui::Entry(ui::New);
+ entry.show();
+ hbox2.pack_start( entry, TRUE, TRUE, 0 );
m_texture = entry;
m_textureEntry.connect( entry );
GlobalTextureEntryCompletion::instance().connect( entry );
{
- ui::Widget table = ui::Table( 6, 4, FALSE );
- gtk_widget_show( table );
- gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( table ), FALSE, FALSE, 0 );
- gtk_table_set_row_spacings( GTK_TABLE( table ), 5 );
- gtk_table_set_col_spacings( GTK_TABLE( table ), 5 );
+ auto table = ui::Table(6, 4, FALSE);
+ table.show();
+ vbox.pack_start( table, FALSE, FALSE, 0 );
+ gtk_table_set_row_spacings(table, 5);
+ gtk_table_set_col_spacings(table, 5);
{
ui::Widget label = ui::Label( "Horizontal shift" );
- gtk_widget_show( label );
+ label.show();
gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
- gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 0, 1,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
+ table.attach(label, {0, 1, 0, 1}, {GTK_FILL, 0});
}
{
- GtkSpinButton* spin = ui::SpinButton( ui::Adjustment( 0, -8192, 8192, 2, 8, 0 ), 0, 2 );
+ auto spin = ui::SpinButton( ui::Adjustment( 0, -8192, 8192, 2, 8, 0 ), 0, 2 );
m_hshiftIncrement.m_spin = spin;
m_hshiftSpinner.connect( spin );
- gtk_widget_show( GTK_WIDGET( spin ) );
- gtk_table_attach( GTK_TABLE( table ), GTK_WIDGET( spin ), 1, 2, 0, 1,
- (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- gtk_widget_set_size_request( GTK_WIDGET( spin ), 60, -1 );
+ spin.show();
+ table.attach(spin, {1, 2, 0, 1}, {GTK_EXPAND | GTK_FILL, 0});
+ spin.dimensions(60, -1);
}
{
ui::Widget label = ui::Label( "Step" );
- gtk_widget_show( label );
+ label.show();
gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
- gtk_table_attach( GTK_TABLE( table ), label, 2, 3, 0, 1,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
+ table.attach(label, {2, 3, 0, 1}, {GTK_FILL, 0});
}
{
- GtkEntry* entry = ui::Entry();
- gtk_widget_show( GTK_WIDGET( entry ) );
- gtk_table_attach( GTK_TABLE( table ), GTK_WIDGET( entry ), 3, 4, 0, 1,
- (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- gtk_widget_set_size_request( GTK_WIDGET( entry ), 50, -1 );
+ auto entry = ui::Entry(ui::New);
+ entry.show();
+ table.attach(entry, {3, 4, 0, 1}, {GTK_EXPAND | GTK_FILL, 0});
+ entry.dimensions(50, -1);
m_hshiftIncrement.m_entry = entry;
m_hshiftEntry.connect( entry );
}
{
ui::Widget label = ui::Label( "Vertical shift" );
- gtk_widget_show( label );
+ label.show();
gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
- gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 1, 2,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
+ table.attach(label, {0, 1, 1, 2}, {GTK_FILL, 0});
}
{
- GtkSpinButton* spin = ui::SpinButton( ui::Adjustment( 0, -8192, 8192, 2, 8, 0 ), 0, 2 );
+ auto spin = ui::SpinButton( ui::Adjustment( 0, -8192, 8192, 2, 8, 0 ), 0, 2 );
m_vshiftIncrement.m_spin = spin;
m_vshiftSpinner.connect( spin );
- gtk_widget_show( GTK_WIDGET( spin ) );
- gtk_table_attach( GTK_TABLE( table ), GTK_WIDGET( spin ), 1, 2, 1, 2,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- gtk_widget_set_size_request( GTK_WIDGET( spin ), 60, -1 );
+ spin.show();
+ table.attach(spin, {1, 2, 1, 2}, {GTK_FILL, 0});
+ spin.dimensions(60, -1);
}
{
ui::Widget label = ui::Label( "Step" );
- gtk_widget_show( label );
+ label.show();
gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
- gtk_table_attach( GTK_TABLE( table ), label, 2, 3, 1, 2,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
+ table.attach(label, {2, 3, 1, 2}, {GTK_FILL, 0});
}
{
- GtkEntry* entry = ui::Entry();
- gtk_widget_show( GTK_WIDGET( entry ) );
- gtk_table_attach( GTK_TABLE( table ), GTK_WIDGET( entry ), 3, 4, 1, 2,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- gtk_widget_set_size_request( GTK_WIDGET( entry ), 50, -1 );
+ auto entry = ui::Entry(ui::New);
+ entry.show();
+ table.attach(entry, {3, 4, 1, 2}, {GTK_FILL, 0});
+ entry.dimensions(50, -1);
m_vshiftIncrement.m_entry = entry;
m_vshiftEntry.connect( entry );
}
{
ui::Widget label = ui::Label( "Horizontal stretch" );
- gtk_widget_show( label );
+ label.show();
gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
- gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 2, 3,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
+ table.attach(label, {0, 1, 2, 3}, {GTK_FILL, 0});
}
{
- GtkSpinButton* spin = ui::SpinButton( ui::Adjustment( 0, -8192, 8192, 2, 8, 0 ), 0, 5 );
+ auto spin = ui::SpinButton( ui::Adjustment( 0, -8192, 8192, 2, 8, 0 ), 0, 5 );
m_hscaleIncrement.m_spin = spin;
m_hscaleSpinner.connect( spin );
- gtk_widget_show( GTK_WIDGET( spin ) );
- gtk_table_attach( GTK_TABLE( table ), GTK_WIDGET( spin ), 1, 2, 2, 3,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- gtk_widget_set_size_request( GTK_WIDGET( spin ), 60, -1 );
+ spin.show();
+ table.attach(spin, {1, 2, 2, 3}, {GTK_FILL, 0});
+ spin.dimensions(60, -1);
}
{
ui::Widget label = ui::Label( "Step" );
- gtk_widget_show( label );
+ label.show();
gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
- gtk_table_attach( GTK_TABLE( table ), label, 2, 3, 2, 3,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 2, 3 );
+ table.attach(label, {2, 3, 2, 3}, {GTK_FILL, 0});
}
{
- GtkEntry* entry = ui::Entry();
- gtk_widget_show( GTK_WIDGET( entry ) );
- gtk_table_attach( GTK_TABLE( table ), GTK_WIDGET( entry ), 3, 4, 2, 3,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 2, 3 );
- gtk_widget_set_size_request( GTK_WIDGET( entry ), 50, -1 );
+ auto entry = ui::Entry(ui::New);
+ entry.show();
+ table.attach(entry, {3, 4, 2, 3}, {GTK_FILL, 0});
+ entry.dimensions(50, -1);
m_hscaleIncrement.m_entry = entry;
m_hscaleEntry.connect( entry );
}
{
ui::Widget label = ui::Label( "Vertical stretch" );
- gtk_widget_show( label );
+ label.show();
gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
- gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 3, 4,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
+ table.attach(label, {0, 1, 3, 4}, {GTK_FILL, 0});
}
{
- GtkSpinButton* spin = ui::SpinButton( ui::Adjustment( 0, -8192, 8192, 2, 8, 0 ), 0, 5 );
+ auto spin = ui::SpinButton( ui::Adjustment( 0, -8192, 8192, 2, 8, 0 ), 0, 5 );
m_vscaleIncrement.m_spin = spin;
m_vscaleSpinner.connect( spin );
- gtk_widget_show( GTK_WIDGET( spin ) );
- gtk_table_attach( GTK_TABLE( table ), GTK_WIDGET( spin ), 1, 2, 3, 4,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- gtk_widget_set_size_request( GTK_WIDGET( spin ), 60, -1 );
+ spin.show();
+ table.attach(spin, {1, 2, 3, 4}, {GTK_FILL, 0});
+ spin.dimensions(60, -1);
}
{
ui::Widget label = ui::Label( "Step" );
- gtk_widget_show( label );
+ label.show();
gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
- gtk_table_attach( GTK_TABLE( table ), label, 2, 3, 3, 4,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
+ table.attach(label, {2, 3, 3, 4}, {GTK_FILL, 0});
}
{
- GtkEntry* entry = ui::Entry();
- gtk_widget_show( GTK_WIDGET( entry ) );
- gtk_table_attach( GTK_TABLE( table ), GTK_WIDGET( entry ), 3, 4, 3, 4,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- gtk_widget_set_size_request( GTK_WIDGET( entry ), 50, -1 );
+ auto entry = ui::Entry(ui::New);
+ entry.show();
+ table.attach(entry, {3, 4, 3, 4}, {GTK_FILL, 0});
+ entry.dimensions(50, -1);
m_vscaleIncrement.m_entry = entry;
m_vscaleEntry.connect( entry );
}
{
ui::Widget label = ui::Label( "Rotate" );
- gtk_widget_show( label );
+ label.show();
gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
- gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 4, 5,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
+ table.attach(label, {0, 1, 4, 5}, {GTK_FILL, 0});
}
{
- GtkSpinButton* spin = ui::SpinButton( ui::Adjustment( 0, -8192, 8192, 2, 8, 0 ), 0, 2 );
+ auto spin = ui::SpinButton( ui::Adjustment( 0, -8192, 8192, 2, 8, 0 ), 0, 2 );
m_rotateIncrement.m_spin = spin;
m_rotateSpinner.connect( spin );
- gtk_widget_show( GTK_WIDGET( spin ) );
- gtk_table_attach( GTK_TABLE( table ), GTK_WIDGET( spin ), 1, 2, 4, 5,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- gtk_widget_set_size_request( GTK_WIDGET( spin ), 60, -1 );
+ spin.show();
+ table.attach(spin, {1, 2, 4, 5}, {GTK_FILL, 0});
+ spin.dimensions(60, -1);
gtk_spin_button_set_wrap( spin, TRUE );
}
{
ui::Widget label = ui::Label( "Step" );
- gtk_widget_show( label );
+ label.show();
gtk_misc_set_alignment( GTK_MISC( label ), 0, 0 );
- gtk_table_attach( GTK_TABLE( table ), label, 2, 3, 4, 5,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
+ table.attach(label, {2, 3, 4, 5}, {GTK_FILL, 0});
}
{
- GtkEntry* entry = ui::Entry();
- gtk_widget_show( GTK_WIDGET( entry ) );
- gtk_table_attach( GTK_TABLE( table ), GTK_WIDGET( entry ), 3, 4, 4, 5,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- gtk_widget_set_size_request( GTK_WIDGET( entry ), 50, -1 );
+ auto entry = ui::Entry(ui::New);
+ entry.show();
+ table.attach(entry, {3, 4, 4, 5}, {GTK_FILL, 0});
+ entry.dimensions(50, -1);
m_rotateIncrement.m_entry = entry;
m_rotateEntry.connect( entry );
}
{
// match grid button
ui::Widget button = ui::Button( "Match Grid" );
- gtk_widget_show( button );
- gtk_table_attach( GTK_TABLE( table ), button, 2, 4, 5, 6,
- (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- g_signal_connect( G_OBJECT( button ), "clicked", G_CALLBACK( OnBtnMatchGrid ), 0 );
+ button.show();
+ table.attach(button, {2, 4, 5, 6}, {GTK_EXPAND | GTK_FILL, 0});
+ button.connect( "clicked", G_CALLBACK( OnBtnMatchGrid ), 0 );
}
}
{
- ui::Widget frame = ui::Frame( "Texturing" );
- gtk_widget_show( frame );
- gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( frame ), FALSE, FALSE, 0 );
+ auto frame = ui::Frame( "Texturing" );
+ frame.show();
+ vbox.pack_start( frame, FALSE, FALSE, 0 );
{
- ui::Widget table = ui::Table( 4, 4, FALSE );
- gtk_widget_show( table );
- gtk_container_add( GTK_CONTAINER( frame ), table );
- gtk_table_set_row_spacings( GTK_TABLE( table ), 5 );
- gtk_table_set_col_spacings( GTK_TABLE( table ), 5 );
+ auto table = ui::Table(4, 4, FALSE);
+ table.show();
+ frame.add(table);
+ gtk_table_set_row_spacings(table, 5);
+ gtk_table_set_col_spacings(table, 5);
gtk_container_set_border_width( GTK_CONTAINER( table ), 5 );
{
ui::Widget label = ui::Label( "Brush" );
- gtk_widget_show( label );
- gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 0, 1,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
+ label.show();
+ table.attach(label, {0, 1, 0, 1}, {GTK_FILL, 0});
}
{
ui::Widget label = ui::Label( "Patch" );
- gtk_widget_show( label );
- gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 2, 3,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
+ label.show();
+ table.attach(label, {0, 1, 2, 3}, {GTK_FILL, 0});
}
{
ui::Widget label = ui::Label( "Width" );
- gtk_widget_show( label );
- gtk_table_attach( GTK_TABLE( table ), label, 2, 3, 0, 1,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
+ label.show();
+ table.attach(label, {2, 3, 0, 1}, {GTK_FILL, 0});
}
{
ui::Widget label = ui::Label( "Height" );
- gtk_widget_show( label );
- gtk_table_attach( GTK_TABLE( table ), label, 3, 4, 0, 1,
- (GtkAttachOptions) ( GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
+ label.show();
+ table.attach(label, {3, 4, 0, 1}, {GTK_FILL, 0});
}
{
ui::Widget button = ui::Button( "Axial" );
- gtk_widget_show( button );
- gtk_table_attach( GTK_TABLE( table ), button, 0, 1, 1, 2,
- (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- g_signal_connect( G_OBJECT( button ), "clicked",
+ button.show();
+ table.attach(button, {0, 1, 1, 2}, {GTK_EXPAND | GTK_FILL, 0});
+ button.connect( "clicked",
G_CALLBACK( OnBtnAxial ), 0 );
- gtk_widget_set_size_request( button, 60, -1 );
+ button.dimensions(60, -1);
}
{
ui::Widget button = ui::Button( "Fit" );
- gtk_widget_show( button );
- gtk_table_attach( GTK_TABLE( table ), button, 1, 2, 1, 2,
- (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- g_signal_connect( G_OBJECT( button ), "clicked",
+ button.show();
+ table.attach(button, {1, 2, 1, 2}, {GTK_EXPAND | GTK_FILL, 0});
+ button.connect( "clicked",
G_CALLBACK( OnBtnFaceFit ), 0 );
- gtk_widget_set_size_request( button, 60, -1 );
+ button.dimensions(60, -1);
}
{
ui::Widget button = ui::Button( "CAP" );
- gtk_widget_show( button );
- gtk_table_attach( GTK_TABLE( table ), button, 0, 1, 3, 4,
- (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- g_signal_connect( G_OBJECT( button ), "clicked",
+ button.show();
+ table.attach(button, {0, 1, 3, 4}, {GTK_EXPAND | GTK_FILL, 0});
+ button.connect( "clicked",
G_CALLBACK( OnBtnPatchdetails ), 0 );
- gtk_widget_set_size_request( button, 60, -1 );
+ button.dimensions(60, -1);
}
{
ui::Widget button = ui::Button( "Set..." );
- gtk_widget_show( button );
- gtk_table_attach( GTK_TABLE( table ), button, 1, 2, 3, 4,
- (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- g_signal_connect( G_OBJECT( button ), "clicked",
+ button.show();
+ table.attach(button, {1, 2, 3, 4}, {GTK_EXPAND | GTK_FILL, 0});
+ button.connect( "clicked",
G_CALLBACK( OnBtnPatchreset ), 0 );
- gtk_widget_set_size_request( button, 60, -1 );
+ button.dimensions(60, -1);
}
{
ui::Widget button = ui::Button( "Natural" );
- gtk_widget_show( button );
- gtk_table_attach( GTK_TABLE( table ), button, 2, 3, 3, 4,
- (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- g_signal_connect( G_OBJECT( button ), "clicked",
+ button.show();
+ table.attach(button, {2, 3, 3, 4}, {GTK_EXPAND | GTK_FILL, 0});
+ button.connect( "clicked",
G_CALLBACK( OnBtnPatchnatural ), 0 );
- gtk_widget_set_size_request( button, 60, -1 );
+ button.dimensions(60, -1);
}
{
ui::Widget button = ui::Button( "Fit" );
- gtk_widget_show( button );
- gtk_table_attach( GTK_TABLE( table ), button, 3, 4, 3, 4,
- (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- g_signal_connect( G_OBJECT( button ), "clicked",
+ button.show();
+ table.attach(button, {3, 4, 3, 4}, {GTK_EXPAND | GTK_FILL, 0});
+ button.connect( "clicked",
G_CALLBACK( OnBtnPatchFit ), 0 );
- gtk_widget_set_size_request( button, 60, -1 );
+ button.dimensions(60, -1);
}
{
- ui::Widget spin = ui::SpinButton( ui::Adjustment( 1, 0, 1 << 16, 1, 10, 0 ), 0, 6 );
- gtk_widget_show( spin );
- gtk_table_attach( GTK_TABLE( table ), spin, 2, 3, 1, 2,
- (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- gtk_widget_set_size_request( spin, 60, -1 );
+ auto spin = ui::SpinButton( ui::Adjustment( 1, 0, 1 << 16, 1, 10, 0 ), 0, 6 );
+ spin.show();
+ table.attach(spin, {2, 3, 1, 2}, {GTK_EXPAND | GTK_FILL, 0});
+ spin.dimensions(60, -1);
AddDialogData( *GTK_SPIN_BUTTON( spin ), m_fitHorizontal );
}
{
- ui::Widget spin = ui::SpinButton( ui::Adjustment( 1, 0, 1 << 16, 1, 10, 0 ), 0, 6 );
- gtk_widget_show( spin );
- gtk_table_attach( GTK_TABLE( table ), spin, 3, 4, 1, 2,
- (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
- (GtkAttachOptions) ( 0 ), 0, 0 );
- gtk_widget_set_size_request( spin, 60, -1 );
+ auto spin = ui::SpinButton( ui::Adjustment( 1, 0, 1 << 16, 1, 10, 0 ), 0, 6 );
+ spin.show();
+ table.attach(spin, {3, 4, 1, 2}, {GTK_EXPAND | GTK_FILL, 0});
+ spin.dimensions(60, -1);
AddDialogData( *GTK_SPIN_BUTTON( spin ), m_fitVertical );
}
}
}
if ( !string_empty( g_pGameDescription->getKeyValue( "si_flags" ) ) ) {
{
- GtkFrame* frame = ui::Frame( "Surface Flags" );
- gtk_widget_show( GTK_WIDGET( frame ) );
- gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( frame ), TRUE, TRUE, 0 );
+ auto frame = ui::Frame( "Surface Flags" );
+ frame.show();
+ vbox.pack_start( frame, TRUE, TRUE, 0 );
{
- GtkVBox* vbox3 = ui::VBox( FALSE, 4 );
+ auto vbox3 = ui::VBox( FALSE, 4 );
//gtk_container_set_border_width(GTK_CONTAINER(vbox3), 4);
- gtk_widget_show( GTK_WIDGET( vbox3 ) );
- gtk_container_add( GTK_CONTAINER( frame ), GTK_WIDGET( vbox3 ) );
+ vbox3.show();
+ frame.add(vbox3);
{
- GtkTable* table = ui::Table( 8, 4, FALSE );
- gtk_widget_show( GTK_WIDGET( table ) );
- gtk_box_pack_start( GTK_BOX( vbox3 ), GTK_WIDGET( table ), TRUE, TRUE, 0 );
+ auto table = ui::Table( 8, 4, FALSE );
+ table.show();
+ vbox3.pack_start( table, TRUE, TRUE, 0 );
gtk_table_set_row_spacings( table, 0 );
gtk_table_set_col_spacings( table, 0 );
GtkCheckButton** p = m_surfaceFlags;
- for ( int c = 0; c != 4; ++c )
+ for (unsigned int c = 0; c != 4; ++c)
{
- for ( int r = 0; r != 8; ++r )
+ for (unsigned int r = 0; r != 8; ++r)
{
- GtkCheckButton* check = ui::CheckButton( getSurfaceFlagName( c * 8 + r ) );
- gtk_widget_show( GTK_WIDGET( check ) );
- gtk_table_attach( table, GTK_WIDGET( check ), c, c + 1, r, r + 1,
- (GtkAttachOptions)( GTK_EXPAND | GTK_FILL ),
- (GtkAttachOptions)( 0 ), 0, 0 );
+ auto check = ui::CheckButton( getSurfaceFlagName( c * 8 + r ) );
+ check.show();
+ table.attach(check, {c, c + 1, r, r + 1}, {GTK_EXPAND | GTK_FILL, 0});
*p++ = check;
guint handler_id = togglebutton_connect_toggled( GTK_TOGGLE_BUTTON( check ), ApplyFlagsCaller( *this ) );
g_object_set_data( G_OBJECT( check ), "handler", gint_to_pointer( handler_id ) );
}
}
{
- GtkFrame* frame = ui::Frame( "Content Flags" );
- gtk_widget_show( GTK_WIDGET( frame ) );
- gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( frame ), TRUE, TRUE, 0 );
+ auto frame = ui::Frame( "Content Flags" );
+ frame.show();
+ vbox.pack_start( frame, TRUE, TRUE, 0 );
{
- GtkVBox* vbox3 = ui::VBox( FALSE, 4 );
+ auto vbox3 = ui::VBox( FALSE, 4 );
//gtk_container_set_border_width(GTK_CONTAINER(vbox3), 4);
- gtk_widget_show( GTK_WIDGET( vbox3 ) );
- gtk_container_add( GTK_CONTAINER( frame ), GTK_WIDGET( vbox3 ) );
+ vbox3.show();
+ frame.add(vbox3);
{
- GtkTable* table = ui::Table( 8, 4, FALSE );
- gtk_widget_show( GTK_WIDGET( table ) );
- gtk_box_pack_start( GTK_BOX( vbox3 ), GTK_WIDGET( table ), TRUE, TRUE, 0 );
+ auto table = ui::Table( 8, 4, FALSE );
+ table.show();
+ vbox3.pack_start( table, TRUE, TRUE, 0 );
gtk_table_set_row_spacings( table, 0 );
gtk_table_set_col_spacings( table, 0 );
GtkCheckButton** p = m_contentFlags;
- for ( int c = 0; c != 4; ++c )
+ for (unsigned int c = 0; c != 4; ++c)
{
- for ( int r = 0; r != 8; ++r )
+ for (unsigned int r = 0; r != 8; ++r)
{
- GtkCheckButton* check = ui::CheckButton( getContentFlagName( c * 8 + r ) );
- gtk_widget_show( GTK_WIDGET( check ) );
- gtk_table_attach( table, GTK_WIDGET( check ), c, c + 1, r, r + 1,
- (GtkAttachOptions)( GTK_EXPAND | GTK_FILL ),
- (GtkAttachOptions)( 0 ), 0, 0 );
+ auto check = ui::CheckButton( getContentFlagName( c * 8 + r ) );
+ check.show();
+ table.attach(check, {c, c + 1, r, r + 1}, {GTK_EXPAND | GTK_FILL, 0});
*p++ = check;
guint handler_id = togglebutton_connect_toggled( GTK_TOGGLE_BUTTON( check ), ApplyFlagsCaller( *this ) );
g_object_set_data( G_OBJECT( check ), "handler", gint_to_pointer( handler_id ) );
}
// not allowed to modify detail flag using Surface Inspector
- gtk_widget_set_sensitive( GTK_WIDGET( m_contentFlags[BRUSH_DETAIL_FLAG] ), FALSE );
+ gtk_widget_set_sensitive( ui::CheckButton(m_contentFlags[BRUSH_DETAIL_FLAG]), FALSE );
}
}
}
{
- GtkFrame* frame = ui::Frame( "Value" );
- gtk_widget_show( GTK_WIDGET( frame ) );
- gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( frame ), TRUE, TRUE, 0 );
+ auto frame = ui::Frame( "Value" );
+ frame.show();
+ vbox.pack_start( frame, TRUE, TRUE, 0 );
{
- GtkVBox* vbox3 = ui::VBox( FALSE, 4 );
+ auto vbox3 = ui::VBox( FALSE, 4 );
gtk_container_set_border_width( GTK_CONTAINER( vbox3 ), 4 );
- gtk_widget_show( GTK_WIDGET( vbox3 ) );
- gtk_container_add( GTK_CONTAINER( frame ), GTK_WIDGET( vbox3 ) );
+ vbox3.show();
+ frame.add(vbox3);
{
- GtkEntry* entry = ui::Entry();
- gtk_widget_show( GTK_WIDGET( entry ) );
- gtk_box_pack_start( GTK_BOX( vbox3 ), GTK_WIDGET( entry ), TRUE, TRUE, 0 );
+ auto entry = ui::Entry(ui::New);
+ entry.show();
+ vbox3.pack_start( entry, TRUE, TRUE, 0 );
m_valueEntryWidget = entry;
m_valueEntry.connect( entry );
}
if ( g_bp_globals.m_texdefTypeId == TEXDEFTYPEID_BRUSHPRIMITIVES ) {
// Shamus: Textool goodies...
ui::Widget frame = ui::Frame( "Textool" );
- gtk_widget_show( frame );
- gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( frame ), FALSE, FALSE, 0 );
+ frame.show();
+ vbox.pack_start( frame , FALSE, FALSE, 0 );
{
//Prolly should make this a member or global var, so the SI can draw on it...
TexTool::g_textoolWin = glwidget_new( FALSE );
gtk_widget_set_events( TexTool::g_textoolWin, GDK_DESTROY | GDK_EXPOSURE_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_POINTER_MOTION_MASK );
gtk_widget_set_can_focus( TexTool::g_textoolWin, true );
// <-- end stuff...
- gtk_widget_show( TexTool::g_textoolWin );
- gtk_widget_set_size_request( TexTool::g_textoolWin, -1, 240 ); //Yeah!
- gtk_container_add( GTK_CONTAINER( frame ), TexTool::g_textoolWin );
-
- g_signal_connect( G_OBJECT( TexTool::g_textoolWin ), "size_allocate", G_CALLBACK( TexTool::size_allocate ), NULL );
- g_signal_connect( G_OBJECT( TexTool::g_textoolWin ), "expose_event", G_CALLBACK( TexTool::expose ), NULL );
- g_signal_connect( G_OBJECT( TexTool::g_textoolWin ), "button_press_event", G_CALLBACK( TexTool::button_press ), NULL );
- g_signal_connect( G_OBJECT( TexTool::g_textoolWin ), "button_release_event", G_CALLBACK( TexTool::button_release ), NULL );
- g_signal_connect( G_OBJECT( TexTool::g_textoolWin ), "motion_notify_event", G_CALLBACK( TexTool::motion ), NULL );
+ TexTool::g_textoolWin.show();
+ TexTool::g_textoolWin.dimensions( -1, 240 ); //Yeah!
+ frame.add(TexTool::g_textoolWin);
+
+ TexTool::g_textoolWin.connect( "size_allocate", G_CALLBACK( TexTool::size_allocate ), NULL );
+ TexTool::g_textoolWin.connect( "expose_event", G_CALLBACK( TexTool::expose ), NULL );
+ TexTool::g_textoolWin.connect( "button_press_event", G_CALLBACK( TexTool::button_press ), NULL );
+ TexTool::g_textoolWin.connect( "button_release_event", G_CALLBACK( TexTool::button_release ), NULL );
+ TexTool::g_textoolWin.connect( "motion_notify_event", G_CALLBACK( TexTool::motion ), NULL );
}
{
ui::Widget hbox = ui::HBox( FALSE, 5 );
- gtk_widget_show( hbox );
- gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( hbox ), FALSE, FALSE, 0 );
+ hbox.show();
+ vbox.pack_start( hbox , FALSE, FALSE, 0 );
// Checkboxes go here... (Flip X/Y)
ui::Widget flipX = ui::CheckButton( "Flip X axis" );
ui::Widget flipY = ui::CheckButton( "Flip Y axis" );
- gtk_widget_show( flipX );
- gtk_widget_show( flipY );
- gtk_box_pack_start( GTK_BOX( hbox ), flipX, FALSE, FALSE, 0 );
- gtk_box_pack_start( GTK_BOX( hbox ), flipY, FALSE, FALSE, 0 );
+ flipX.show();
+ flipY.show();
+ hbox.pack_start( flipX, FALSE, FALSE, 0 );
+ hbox.pack_start( flipY, FALSE, FALSE, 0 );
//Instead of this, we probably need to create a vbox to put into the frame, then the
//window, then the hbox. !!! FIX !!!
-// gtk_container_add(GTK_CONTAINER(frame), hbox);
+// frame.add(hbox);
//Hmm. Do we really need g_object_set_data? Mebbe not... And we don't! :-)
-// g_object_set_data(G_OBJECT(flipX), "handler", gint_to_pointer(g_signal_connect(G_OBJECT(flipX), "toggled", G_CALLBACK(TexTool::flipX), 0)));
-// g_object_set_data(G_OBJECT(flipY), "handler", gint_to_pointer(g_signal_connect(G_OBJECT(flipY), "toggled", G_CALLBACK(TexTool::flipY), 0)));
+// g_object_set_data(G_OBJECT(flipX), "handler", gint_to_pointer(flipX.connect("toggled", G_CALLBACK(TexTool::flipX), 0)));
+// g_object_set_data(G_OBJECT(flipY), "handler", gint_to_pointer(flipY.connect("toggled", G_CALLBACK(TexTool::flipY), 0)));
//Instead, just do:
- g_signal_connect( G_OBJECT( flipX ), "toggled", G_CALLBACK( TexTool::flipX ), NULL );
- g_signal_connect( G_OBJECT( flipY ), "toggled", G_CALLBACK( TexTool::flipY ), NULL );
+ flipX.connect( "toggled", G_CALLBACK( TexTool::flipX ), NULL );
+ flipY.connect( "toggled", G_CALLBACK( TexTool::flipY ), NULL );
}
}
#endif
const char * name = SurfaceInspector_GetSelectedShader();
if ( shader_is_texture( name ) ) {
- gtk_entry_set_text( m_texture, shader_get_textureName( name ) );
+ m_texture.text(shader_get_textureName(name));
}
else
{
- gtk_entry_set_text( m_texture, "" );
+ m_texture.text("");
}
texdef_t shiftScaleRotate;