dialog = gtk_file_chooser_dialog_new("Open PDF", GTK_WINDOW (winMain),
GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
- GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL);
+ GTK_STOCK_OPEN, GTK_RESPONSE_OK, NULL);
filt_all = gtk_file_filter_new();
gtk_file_filter_set_name(filt_all, "All files");
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(attach_opt), FALSE);
gtk_file_chooser_set_extra_widget(GTK_FILE_CHOOSER (dialog), attach_opt);
- if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_ACCEPT) {
+ if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_OK) {
gtk_widget_destroy(dialog);
return;
}
dialog = gtk_file_chooser_dialog_new("Open Journal", GTK_WINDOW (winMain),
GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
- GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL);
+ GTK_STOCK_OPEN, GTK_RESPONSE_OK, NULL);
filt_all = gtk_file_filter_new();
gtk_file_filter_set_name(filt_all, "All files");
gtk_file_chooser_add_filter(GTK_FILE_CHOOSER (dialog), filt_xoj);
gtk_file_chooser_add_filter(GTK_FILE_CHOOSER (dialog), filt_all);
- if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_ACCEPT) {
+ if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_OK) {
gtk_widget_destroy(dialog);
return;
}
dialog = gtk_file_chooser_dialog_new("Save Journal", GTK_WINDOW (winMain),
GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
- GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL);
+ GTK_STOCK_SAVE, GTK_RESPONSE_OK, NULL);
if (ui.filename!=NULL) {
gtk_file_chooser_set_filename(GTK_FILE_CHOOSER (dialog), ui.filename);
gtk_file_chooser_add_filter(GTK_FILE_CHOOSER (dialog), filt_all);
// somehow this doesn't seem to be set by default
- gtk_dialog_set_default_response(GTK_DIALOG(dialog), GTK_RESPONSE_ACCEPT);
+ gtk_dialog_set_default_response(GTK_DIALOG(dialog), GTK_RESPONSE_OK);
do {
- if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_ACCEPT) {
+ if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_OK) {
gtk_widget_destroy(dialog);
return;
}
dialog = gtk_file_chooser_dialog_new("Export to PDF", GTK_WINDOW (winMain),
GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
- GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL);
+ GTK_STOCK_SAVE, GTK_RESPONSE_OK, NULL);
if (ui.filename!=NULL) {
if (g_str_has_suffix(ui.filename, ".xoj")) {
gtk_file_filter_add_pattern(filt_pdf, "*.pdf");
gtk_file_chooser_add_filter(GTK_FILE_CHOOSER (dialog), filt_pdf);
gtk_file_chooser_add_filter(GTK_FILE_CHOOSER (dialog), filt_all);
- gtk_dialog_set_default_response(GTK_DIALOG(dialog), GTK_RESPONSE_ACCEPT);
+ gtk_dialog_set_default_response(GTK_DIALOG(dialog), GTK_RESPONSE_OK);
g_free(in_fn);
do {
- if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_ACCEPT) {
+ if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_OK) {
gtk_widget_destroy(dialog);
return;
}
gpointer user_data)
{
if (ui.zoom > MAX_ZOOM) return;
- ui.zoom *= 1.5;
+ ui.zoom *= ui.zoom_step_factor;
gnome_canvas_set_pixels_per_unit(canvas, ui.zoom);
rescale_bg_pixmaps();
}
gpointer user_data)
{
if (ui.zoom < MIN_ZOOM) return;
- ui.zoom /= 1.5;
+ ui.zoom /= ui.zoom_step_factor;
gnome_canvas_set_pixels_per_unit(canvas, ui.zoom);
rescale_bg_pixmaps();
}
#define STD_SIZE_LETTER_R 3
#define STD_SIZE_CUSTOM 4
-#define UNIT_CM 0
-#define UNIT_IN 1
-#define UNIT_PX 2
-#define UNIT_PT 3
-
-double unit_sizes[4] = {28.346, 72., 1/DEFAULT_ZOOM, 1.};
+double unit_sizes[4] = {28.346, 72., 72./DISPLAY_DPI_DEFAULT, 1.};
double std_widths[STD_SIZE_CUSTOM] = {595.27, 841.89, 612., 792.};
double std_heights[STD_SIZE_CUSTOM] = {841.89, 595.27, 792., 612.};
double std_units[STD_SIZE_CUSTOM] = {UNIT_CM, UNIT_CM, UNIT_IN, UNIT_IN};
papersize_dialog = create_papersizeDialog();
papersize_width = ui.cur_page->width;
papersize_height = ui.cur_page->height;
- papersize_unit = UNIT_CM;
+ papersize_unit = ui.default_unit;
+ unit_sizes[UNIT_PX] = 1./DEFAULT_ZOOM;
// if (ui.cur_page->bg->type == BG_PIXMAP) papersize_unit = UNIT_PX;
papersize_std = STD_SIZE_CUSTOM;
for (i=0;i<STD_SIZE_CUSTOM;i++)
dialog = gtk_file_chooser_dialog_new("Open Background", GTK_WINDOW (winMain),
GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
- GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL);
+ GTK_STOCK_OPEN, GTK_RESPONSE_OK, NULL);
filt_all = gtk_file_filter_new();
gtk_file_filter_set_name(filt_all, "All files");
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(attach_opt), FALSE);
gtk_file_chooser_set_extra_widget(GTK_FILE_CHOOSER (dialog), attach_opt);
- if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_ACCEPT) {
+ if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_OK) {
gtk_widget_destroy(dialog);
return;
}
on_optionsSavePreferences_activate (GtkMenuItem *menuitem,
gpointer user_data)
{
-
+ save_config_to_file();
}
// process the event
- if (ui.toolno[mapping] == TOOL_PEN || ui.toolno[mapping] == TOOL_HIGHLIGHTER ||
+ if (ui.toolno[mapping] == TOOL_HAND) {
+ ui.cur_item_type = ITEM_HAND;
+ get_pointer_coords((GdkEvent *)event, ui.hand_refpt);
+ }
+ else if (ui.toolno[mapping] == TOOL_PEN || ui.toolno[mapping] == TOOL_HIGHLIGHTER ||
(ui.toolno[mapping] == TOOL_ERASER && ui.cur_brush->tool_options == TOOLOPT_ERASER_WHITEOUT)) {
create_new_stroke((GdkEvent *)event);
}
else if (ui.cur_item_type == ITEM_MOVESEL || ui.cur_item_type == ITEM_MOVESEL_VERT) {
finalize_movesel();
}
+ else if (ui.cur_item_type == ITEM_HAND) {
+ ui.cur_item_type = ITEM_NONE;
+ }
switch_mapping(0);
return FALSE;
else if (ui.cur_item_type == ITEM_MOVESEL || ui.cur_item_type == ITEM_MOVESEL_VERT) {
continue_movesel((GdkEvent *)event);
}
+ else if (ui.cur_item_type == ITEM_HAND) {
+ do_hand((GdkEvent *)event);
+ }
return FALSE;
}
on_journalDefaultBackground_activate (GtkMenuItem *menuitem,
gpointer user_data)
{
+ struct Page *pg;
+ GList *pglist;
+
reset_selection();
- prepare_new_undo();
- undo->type = ITEM_NEW_BG_RESIZE;
- undo->page = ui.cur_page;
- undo->bg = ui.cur_page->bg;
- undo->val_x = ui.cur_page->width;
- undo->val_y = ui.cur_page->height;
- ui.cur_page->bg = (struct Background *)g_memdup(ui.default_page.bg, sizeof(struct Background));
- ui.cur_page->width = ui.default_page.width;
- ui.cur_page->height = ui.default_page.height;
- ui.cur_page->bg->canvas_item = undo->bg->canvas_item;
- undo->bg->canvas_item = NULL;
+ pg = ui.cur_page;
+ for (pglist = journal.pages; pglist!=NULL; pglist = pglist->next) {
+ if (ui.bg_apply_all_pages) pg = (struct Page *)pglist->data;
+ prepare_new_undo();
+ if (ui.bg_apply_all_pages) {
+ if (pglist->next!=NULL) undo->multiop |= MULTIOP_CONT_REDO;
+ if (pglist->prev!=NULL) undo->multiop |= MULTIOP_CONT_UNDO;
+ }
+ undo->type = ITEM_NEW_BG_RESIZE;
+ undo->page = pg;
+ undo->bg = pg->bg;
+ undo->val_x = pg->width;
+ undo->val_y = pg->height;
+ pg->bg = (struct Background *)g_memdup(ui.default_page.bg, sizeof(struct Background));
+ pg->width = ui.default_page.width;
+ pg->height = ui.default_page.height;
+ pg->bg->canvas_item = undo->bg->canvas_item;
+ undo->bg->canvas_item = NULL;
- make_page_clipbox(ui.cur_page);
- update_canvas_bg(ui.cur_page);
+ make_page_clipbox(pg);
+ update_canvas_bg(pg);
+ if (!ui.bg_apply_all_pages) break;
+ }
do_switch_page(ui.pageno, TRUE, TRUE);
}
{
int response;
double test_w, test_h;
+ GtkSpinButton *spinZoom;
zoom_dialog = create_zoomDialog();
zoom_percent = 100*ui.zoom / DEFAULT_ZOOM;
- gtk_spin_button_set_value(GTK_SPIN_BUTTON(g_object_get_data(
- G_OBJECT(zoom_dialog), "spinZoom")), zoom_percent);
+ spinZoom = GTK_SPIN_BUTTON(g_object_get_data(G_OBJECT(zoom_dialog), "spinZoom"));
+ gtk_spin_button_set_increments(spinZoom, ui.zoom_step_increment, 5*ui.zoom_step_increment);
+ gtk_spin_button_set_value(spinZoom, zoom_percent);
test_w = 100*(GTK_WIDGET(canvas))->allocation.width/ui.cur_page->width/DEFAULT_ZOOM;
test_h = 100*(GTK_WIDGET(canvas))->allocation.height/ui.cur_page->height/DEFAULT_ZOOM;
if (zoom_percent > 99.9 && zoom_percent < 100.1)
G_OBJECT(zoom_dialog), "spinZoom")), zoom_percent);
}
+
+void
+on_toolsHand_activate (GtkMenuItem *menuitem,
+ gpointer user_data)
+{
+ if (GTK_OBJECT_TYPE(menuitem) == GTK_TYPE_RADIO_MENU_ITEM) {
+ if (!gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM (menuitem)))
+ return;
+ } else {
+ if (!gtk_toggle_tool_button_get_active(GTK_TOGGLE_TOOL_BUTTON (menuitem)))
+ return;
+ }
+
+ if (ui.cur_mapping != 0) return;
+ if (ui.toolno[0] == TOOL_HAND) return;
+
+ reset_selection();
+ ui.toolno[0] = TOOL_HAND;
+ ui.ruler[0] = FALSE;
+ update_mapping_linkings(-1);
+ update_tool_buttons();
+ update_tool_menu();
+ update_color_menu();
+ update_cursor();
+}
+
+
+void
+on_button2Hand_activate (GtkMenuItem *menuitem,
+ gpointer user_data)
+{
+ process_mapping_activate(menuitem, 1, TOOL_HAND);
+}
+
+
+void
+on_button3Hand_activate (GtkMenuItem *menuitem,
+ gpointer user_data)
+{
+ process_mapping_activate(menuitem, 2, TOOL_HAND);
+}
+
+
+void
+on_optionsPrintRuling_activate (GtkMenuItem *menuitem,
+ gpointer user_data)
+{
+ ui.print_ruling = gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM (menuitem));
+}
+