예제 #1
0
/**************************************************************************
...
**************************************************************************/
void real_update_meswin_dialog(void)
{
  int i, num, num_not_visited = 0;
  struct message *pmsg;
  GtkListStore *store;
  GtkTreeIter it;

  store = meswin_store;
  g_return_if_fail(store != NULL);

  gtk_list_store_clear(store);
  num = get_num_messages();

  for (i = 0; i < num; i++) {
    pmsg = get_message(i);

    if (gui_gtk2_new_messages_go_to_top) {
      gtk_list_store_prepend(store, &it);
    } else {
      gtk_list_store_append(store, &it);
    }
    gtk_list_store_set(store, &it, 0, pmsg->descr, 2, i, -1);
    meswin_set_visited(&it, pmsg->visited);

    if (!pmsg->visited) {
      num_not_visited++;
    }
  }

  gui_dialog_set_response_sensitive(meswin_shell, CMD_GOTO, FALSE);
  gui_dialog_set_response_sensitive(meswin_shell, CMD_POPCITY, FALSE);

  if (num_not_visited > 0) {
    gui_dialog_alert(meswin_shell);
  }
}
예제 #2
0
static PyObject* python_get_num_messages(PyObject* self, PyObject* args) {
	if(PyArg_ParseTuple(args, "") == 0) return NULL;
	int retval = get_num_messages();
	return Py_BuildValue("i", retval);
}