return TRUE;
}
-static int init_framedata(void)
+static int init_framedata(int reset)
{
struct lbx_imginfo info;
GtkSpinButton *spin;
return 0;
}
+void set_palette_data(GtkComboBox *combo)
+{
+ GtkTreeIter iter;
+ gpointer lbx;
+ guint index;
+ LBXfile *f;
+
+ if (!gtk_combo_box_get_active_iter(combo, &iter))
+ return;
+
+ gtk_tree_model_get(GTK_TREE_MODEL(archives), &iter,
+ 1, &lbx,
+ 2, &index,
+ -1);
+
+ f = lbx_file_open(lbx, index);
+ if (f) {
+ if (lbximg_loadpalette(f, &lbx_arch_fops, palette_external))
+ memset(palette_external, 0, sizeof palette_external);
+ lbx_file_close(f);
+ }
+
+ init_framedata(0);
+}
+
void set_image_data(GtkComboBox *combo)
{
GtkTreeIter iter;
lbximg_close(image);
}
- if (init_framedata() == -1) {
+ if (init_framedata(1) == -1) {
puts("crap");
lbximg_close(image);
}
gtk_tree_view_set_model(tree, GTK_TREE_MODEL(archives));
gtk_tree_view_append_column(tree, column);
+ combo = GTK_COMBO_BOX(gtk_builder_get_object(builder, "palettechooser"));
+ gtk_combo_box_set_model(combo, GTK_TREE_MODEL(archives));
+ gtk_combo_box_entry_set_text_column(GTK_COMBO_BOX_ENTRY(combo), 0);
+
combo = GTK_COMBO_BOX(gtk_builder_get_object(builder, "imagechooser"));
gtk_combo_box_set_model(combo, GTK_TREE_MODEL(archives));
gtk_combo_box_entry_set_text_column(GTK_COMBO_BOX_ENTRY(combo), 0);
interface_init();
gtk_builder_connect_signals(builder, window);
- g_timeout_add(33, timeout, NULL);
+ g_timeout_add(10, timeout, NULL);
gtk_widget_show_all(window);
gtk_main();
}
<child>
<object class="GtkHBox" id="hbox1">
<property name="visible">True</property>
+ <child>
+ <object class="GtkLabel" id="label3">
+ <property name="visible">True</property>
+ <property name="xalign">1</property>
+ <property name="xpad">4</property>
+ <property name="label" translatable="yes">Palette:</property>
+ </object>
+ <packing>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkComboBoxEntry" id="palettechooser">
+ <property name="visible">True</property>
+ <signal name="changed" handler="set_palette_data"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
<child>
<object class="GtkLabel" id="label1">
<property name="visible">True</property>
</object>
<packing>
<property name="expand">False</property>
- <property name="position">0</property>
+ <property name="position">2</property>
</packing>
</child>
<child>
<packing>
<property name="expand">False</property>
<property name="padding">3</property>
- <property name="position">1</property>
+ <property name="position">3</property>
</packing>
</child>
<child>
<property name="label" translatable="yes">Frame:</property>
</object>
<packing>
- <property name="position">2</property>
+ <property name="position">4</property>
</packing>
</child>
<child>
</object>
<packing>
<property name="expand">False</property>
- <property name="position">3</property>
+ <property name="position">5</property>
</packing>
</child>
<child>
<packing>
<property name="expand">False</property>
<property name="padding">3</property>
- <property name="position">4</property>
+ <property name="position">6</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
+ <property name="padding">3</property>
<property name="position">0</property>
</packing>
</child>
<object class="GtkViewport" id="viewport">
<property name="visible">True</property>
<property name="resize_mode">queue</property>
- <property name="shadow_type">etched-in</property>
<child>
- <object class="GtkDrawingArea" id="canvas">
+ <object class="GtkAlignment" id="alignment1">
<property name="visible">True</property>
- <signal name="expose_event" handler="canvas_expose"/>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
+ <child>
+ <object class="GtkDrawingArea" id="canvas">
+ <property name="visible">True</property>
+ <signal name="expose_event" handler="canvas_expose"/>
+ </object>
+ </child>
</object>
</child>
</object>